diff --git a/config/crater.php b/config/crater.php index 2d2c54ca7..75373f9c3 100644 --- a/config/crater.php +++ b/config/crater.php @@ -68,6 +68,8 @@ ["code" => "sv", "name" => "Svenska"], ["code" => "sk", "name" => "Slovak"], ["code" => "vi", "name" => "Tiếng Việt"], + ["code" => "el", "name" => "Greek"], + ["code" => "hr", "name" => "Crotian"], ], /* diff --git a/public/build/assets/AccountSetting.d3009f2e.js b/public/build/assets/AccountSetting.3c63f5fd.js similarity index 93% rename from public/build/assets/AccountSetting.d3009f2e.js rename to public/build/assets/AccountSetting.3c63f5fd.js index d03b5ea1f..5a82960c1 100644 --- a/public/build/assets/AccountSetting.d3009f2e.js +++ b/public/build/assets/AccountSetting.3c63f5fd.js @@ -1 +1 @@ -var L=Object.defineProperty,R=Object.defineProperties;var P=Object.getOwnPropertyDescriptors;var V=Object.getOwnPropertySymbols;var T=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable;var b=(u,s,i)=>s in u?L(u,s,{enumerable:!0,configurable:!0,writable:!0,value:i}):u[s]=i,U=(u,s)=>{for(var i in s||(s={}))T.call(s,i)&&b(u,i,s[i]);if(V)for(var i of V(s))z.call(s,i)&&b(u,i,s[i]);return u},S=(u,s)=>R(u,P(s));import{J as E,B,k as I,L as v,M as y,Q as J,N as Q,P as H,a0 as K,T as O,r as m,o as C,e as W,f as r,w as d,u as e,x as X,l as Y,m as Z,j as x,i as ee,t as ae,U as se,h as te}from"./vendor.01d0adc5.js";import{e as ne,d as oe,b as re}from"./main.75722495.js";const le=["onSubmit"],ie=te("span",null,null,-1),pe={setup(u){const s=ne(),i=oe(),M=re(),{t:g}=E();let p=B(!1),w=B(null),f=B([]);s.currentUser.avatar&&f.value.push({image:s.currentUser.avatar});const F=I(()=>({name:{required:v.withMessage(g("validation.required"),y)},email:{required:v.withMessage(g("validation.required"),y),email:v.withMessage(g("validation.email_incorrect"),J)},password:{minLength:v.withMessage(g("validation.password_length",{count:8}),Q(8))},confirm_password:{sameAsPassword:v.withMessage(g("validation.password_incorrect"),H(t.password))}})),t=K({name:s.currentUser.name,email:s.currentUser.email,language:s.currentUserSettings.language||M.selectedCompanySettings.language,password:"",confirm_password:""}),o=O(F,I(()=>t));function q(l,a){w.value=a}function k(){w.value=null}async function N(){if(o.value.$touch(),o.value.$invalid)return!0;p.value=!0;let l={name:t.name,email:t.email};try{if(t.password!=null&&t.password!==void 0&&t.password!==""&&(l=S(U({},l),{password:t.password})),s.currentUserSettings.language!==t.language&&await s.updateUserSettings({settings:{language:t.language}}),(await s.updateCurrentUser(l)).data.data){if(p.value=!1,w.value){let $=new FormData;$.append("admin_avatar",w.value),await s.uploadAvatar($)}t.password="",t.confirm_password=""}}catch{return p.value=!1,!0}}return(l,a)=>{const $=m("BaseFileUploader"),c=m("BaseInputGroup"),_=m("BaseInput"),G=m("BaseMultiselect"),D=m("BaseInputGrid"),h=m("BaseIcon"),j=m("BaseButton"),A=m("BaseSettingCard");return C(),W("form",{class:"relative",onSubmit:se(N,["prevent"])},[r(A,{title:l.$t("settings.account_settings.account_settings"),description:l.$t("settings.account_settings.section_description")},{default:d(()=>[r(D,null,{default:d(()=>[r(c,{label:l.$tc("settings.account_settings.profile_picture")},{default:d(()=>[r($,{modelValue:e(f),"onUpdate:modelValue":a[0]||(a[0]=n=>X(f)?f.value=n:f=n),avatar:!0,accept:"image/*",onChange:q,onRemove:k},null,8,["modelValue"])]),_:1},8,["label"]),ie,r(c,{label:l.$tc("settings.account_settings.name"),error:e(o).name.$error&&e(o).name.$errors[0].$message,required:""},{default:d(()=>[r(_,{modelValue:e(t).name,"onUpdate:modelValue":a[1]||(a[1]=n=>e(t).name=n),invalid:e(o).name.$error,onInput:a[2]||(a[2]=n=>e(o).name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(c,{label:l.$tc("settings.account_settings.email"),error:e(o).email.$error&&e(o).email.$errors[0].$message,required:""},{default:d(()=>[r(_,{modelValue:e(t).email,"onUpdate:modelValue":a[3]||(a[3]=n=>e(t).email=n),invalid:e(o).email.$error,onInput:a[4]||(a[4]=n=>e(o).email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(c,{error:e(o).password.$error&&e(o).password.$errors[0].$message,label:l.$tc("settings.account_settings.password")},{default:d(()=>[r(_,{modelValue:e(t).password,"onUpdate:modelValue":a[5]||(a[5]=n=>e(t).password=n),type:"password",onInput:a[6]||(a[6]=n=>e(o).password.$touch())},null,8,["modelValue"])]),_:1},8,["error","label"]),r(c,{label:l.$tc("settings.account_settings.confirm_password"),error:e(o).confirm_password.$error&&e(o).confirm_password.$errors[0].$message},{default:d(()=>[r(_,{modelValue:e(t).confirm_password,"onUpdate:modelValue":a[7]||(a[7]=n=>e(t).confirm_password=n),type:"password",onInput:a[8]||(a[8]=n=>e(o).confirm_password.$touch())},null,8,["modelValue"])]),_:1},8,["label","error"]),r(c,{label:l.$tc("settings.language")},{default:d(()=>[r(G,{modelValue:e(t).language,"onUpdate:modelValue":a[9]||(a[9]=n=>e(t).language=n),options:e(i).config.languages,label:"name","value-prop":"code","track-by":"code","open-direction":"top"},null,8,["modelValue","options"])]),_:1},8,["label"])]),_:1}),r(j,{loading:e(p),disabled:e(p),class:"mt-6"},{left:d(n=>[e(p)?x("",!0):(C(),Y(h,{key:0,name:"SaveIcon",class:Z(n.class)},null,8,["class"]))]),default:d(()=>[ee(" "+ae(l.$tc("settings.company_info.save")),1)]),_:1},8,["loading","disabled"])]),_:1},8,["title","description"])],40,le)}}};export{pe as default}; +var L=Object.defineProperty,R=Object.defineProperties;var P=Object.getOwnPropertyDescriptors;var b=Object.getOwnPropertySymbols;var T=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable;var V=(u,s,i)=>s in u?L(u,s,{enumerable:!0,configurable:!0,writable:!0,value:i}):u[s]=i,U=(u,s)=>{for(var i in s||(s={}))T.call(s,i)&&V(u,i,s[i]);if(b)for(var i of b(s))z.call(s,i)&&V(u,i,s[i]);return u},S=(u,s)=>R(u,P(s));import{J as E,B,k as I,L as v,M as y,Q as J,N as Q,P as H,a0 as K,T as O,r as m,o as C,e as W,f as r,w as d,u as e,x as X,l as Y,m as Z,j as x,i as ee,t as ae,U as se,h as te}from"./vendor.01d0adc5.js";import{e as ne,d as oe,b as re}from"./main.24f7a84b.js";const le=["onSubmit"],ie=te("span",null,null,-1),pe={setup(u){const s=ne(),i=oe(),M=re(),{t:g}=E();let p=B(!1),w=B(null),f=B([]);s.currentUser.avatar&&f.value.push({image:s.currentUser.avatar});const F=I(()=>({name:{required:v.withMessage(g("validation.required"),y)},email:{required:v.withMessage(g("validation.required"),y),email:v.withMessage(g("validation.email_incorrect"),J)},password:{minLength:v.withMessage(g("validation.password_length",{count:8}),Q(8))},confirm_password:{sameAsPassword:v.withMessage(g("validation.password_incorrect"),H(t.password))}})),t=K({name:s.currentUser.name,email:s.currentUser.email,language:s.currentUserSettings.language||M.selectedCompanySettings.language,password:"",confirm_password:""}),o=O(F,I(()=>t));function q(l,a){w.value=a}function k(){w.value=null}async function N(){if(o.value.$touch(),o.value.$invalid)return!0;p.value=!0;let l={name:t.name,email:t.email};try{if(t.password!=null&&t.password!==void 0&&t.password!==""&&(l=S(U({},l),{password:t.password})),s.currentUserSettings.language!==t.language&&await s.updateUserSettings({settings:{language:t.language}}),(await s.updateCurrentUser(l)).data.data){if(p.value=!1,w.value){let $=new FormData;$.append("admin_avatar",w.value),await s.uploadAvatar($)}t.password="",t.confirm_password=""}}catch{return p.value=!1,!0}}return(l,a)=>{const $=m("BaseFileUploader"),c=m("BaseInputGroup"),_=m("BaseInput"),G=m("BaseMultiselect"),D=m("BaseInputGrid"),h=m("BaseIcon"),j=m("BaseButton"),A=m("BaseSettingCard");return C(),W("form",{class:"relative",onSubmit:se(N,["prevent"])},[r(A,{title:l.$t("settings.account_settings.account_settings"),description:l.$t("settings.account_settings.section_description")},{default:d(()=>[r(D,null,{default:d(()=>[r(c,{label:l.$tc("settings.account_settings.profile_picture")},{default:d(()=>[r($,{modelValue:e(f),"onUpdate:modelValue":a[0]||(a[0]=n=>X(f)?f.value=n:f=n),avatar:!0,accept:"image/*",onChange:q,onRemove:k},null,8,["modelValue"])]),_:1},8,["label"]),ie,r(c,{label:l.$tc("settings.account_settings.name"),error:e(o).name.$error&&e(o).name.$errors[0].$message,required:""},{default:d(()=>[r(_,{modelValue:e(t).name,"onUpdate:modelValue":a[1]||(a[1]=n=>e(t).name=n),invalid:e(o).name.$error,onInput:a[2]||(a[2]=n=>e(o).name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(c,{label:l.$tc("settings.account_settings.email"),error:e(o).email.$error&&e(o).email.$errors[0].$message,required:""},{default:d(()=>[r(_,{modelValue:e(t).email,"onUpdate:modelValue":a[3]||(a[3]=n=>e(t).email=n),invalid:e(o).email.$error,onInput:a[4]||(a[4]=n=>e(o).email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(c,{error:e(o).password.$error&&e(o).password.$errors[0].$message,label:l.$tc("settings.account_settings.password")},{default:d(()=>[r(_,{modelValue:e(t).password,"onUpdate:modelValue":a[5]||(a[5]=n=>e(t).password=n),type:"password",onInput:a[6]||(a[6]=n=>e(o).password.$touch())},null,8,["modelValue"])]),_:1},8,["error","label"]),r(c,{label:l.$tc("settings.account_settings.confirm_password"),error:e(o).confirm_password.$error&&e(o).confirm_password.$errors[0].$message},{default:d(()=>[r(_,{modelValue:e(t).confirm_password,"onUpdate:modelValue":a[7]||(a[7]=n=>e(t).confirm_password=n),type:"password",onInput:a[8]||(a[8]=n=>e(o).confirm_password.$touch())},null,8,["modelValue"])]),_:1},8,["label","error"]),r(c,{label:l.$tc("settings.language")},{default:d(()=>[r(G,{modelValue:e(t).language,"onUpdate:modelValue":a[9]||(a[9]=n=>e(t).language=n),options:e(i).config.languages,label:"name","value-prop":"code","track-by":"code","open-direction":"top"},null,8,["modelValue","options"])]),_:1},8,["label"])]),_:1}),r(j,{loading:e(p),disabled:e(p),class:"mt-6"},{left:d(n=>[e(p)?x("",!0):(C(),Y(h,{key:0,name:"SaveIcon",class:Z(n.class)},null,8,["class"]))]),default:d(()=>[ee(" "+ae(l.$tc("settings.company_info.save")),1)]),_:1},8,["loading","disabled"])]),_:1},8,["title","description"])],40,le)}}};export{pe as default}; diff --git a/public/build/assets/AddressInformation.908aefd5.js b/public/build/assets/AddressInformation.71bff022.js similarity index 98% rename from public/build/assets/AddressInformation.908aefd5.js rename to public/build/assets/AddressInformation.71bff022.js index 2925fea20..c6edab60c 100644 --- a/public/build/assets/AddressInformation.908aefd5.js +++ b/public/build/assets/AddressInformation.71bff022.js @@ -1 +1 @@ -import{G as C,J as z,B as I,r as m,o as b,e as y,f as o,w as r,h as d,t as p,u as e,m as h,i as F,j as v,l as S,U as j}from"./vendor.01d0adc5.js";import{a as k,u as w}from"./global.08b6a984.js";import"./auth.4644c288.js";import"./main.75722495.js";const D=["onSubmit"],G={class:"mb-6"},N={class:"font-bold text-left"},A={class:"mt-2 text-sm leading-snug text-left text-gray-500",style:{"max-width":"680px"}},T={class:"grid grid-cols-5 gap-4 mb-8"},E={class:"col-span-5 text-lg font-semibold text-left lg:col-span-1"},J={class:"grid col-span-5 lg:col-span-4 gap-y-6 gap-x-4 md:grid-cols-6"},R={class:"md:col-span-3"},q={class:"flex items-center justify-start mb-6 md:justify-end md:mb-0"},H={class:"p-1"},K={class:"grid grid-cols-5 gap-4 mb-8"},L={class:"col-span-5 text-lg font-semibold text-left lg:col-span-1"},O={key:0,class:"grid col-span-5 lg:col-span-4 gap-y-6 gap-x-4 md:grid-cols-6"},P={class:"md:col-span-3"},Q={class:"flex items-center justify-end"},se={setup(W){const s=k();C();const{tm:$,t:X}=z(),g=w();let u=I(!1);g.fetchCountries();function B(){u.value=!0;let a=s.userForm;s.updateCurrentUser({data:a,message:$("customers.address_updated_message")}).then(t=>{u.value=!1}).catch(t=>{u.value=!1})}return(a,t)=>{const i=m("BaseInput"),n=m("BaseInputGroup"),f=m("BaseMultiselect"),c=m("BaseTextarea"),U=m("BaseDivider"),_=m("BaseIcon"),V=m("BaseButton"),M=m("BaseCard");return b(),y("form",{class:"relative h-full mt-4",onSubmit:j(B,["prevent"])},[o(M,null,{default:r(()=>[d("div",G,[d("h6",N,p(a.$t("settings.menu_title.address_information")),1),d("p",A,p(a.$t("settings.address_information.section_description")),1)]),d("div",T,[d("h6",E,p(a.$t("customers.billing_address")),1),d("div",J,[o(n,{label:a.$t("customers.name"),class:"w-full md:col-span-3"},{default:r(()=>[o(i,{modelValue:e(s).userForm.billing.name,"onUpdate:modelValue":t[0]||(t[0]=l=>e(s).userForm.billing.name=l),modelModifiers:{trim:!0},type:"text",class:"w-full",name:"address_name"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.country"),class:"md:col-span-3"},{default:r(()=>[o(f,{modelValue:e(s).userForm.billing.country_id,"onUpdate:modelValue":t[1]||(t[1]=l=>e(s).userForm.billing.country_id=l),"value-prop":"id",label:"name","track-by":"name","resolve-on-load":"",searchable:"",options:e(g).countries,placeholder:a.$t("general.select_country"),class:"w-full"},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.state"),class:"md:col-span-3"},{default:r(()=>[o(i,{modelValue:e(s).userForm.billing.state,"onUpdate:modelValue":t[2]||(t[2]=l=>e(s).userForm.billing.state=l),name:"billing.state",type:"text"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.city"),class:"md:col-span-3"},{default:r(()=>[o(i,{modelValue:e(s).userForm.billing.city,"onUpdate:modelValue":t[3]||(t[3]=l=>e(s).userForm.billing.city=l),name:"billing.city",type:"text"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.address"),class:"md:col-span-3"},{default:r(()=>[o(c,{modelValue:e(s).userForm.billing.address_street_1,"onUpdate:modelValue":t[4]||(t[4]=l=>e(s).userForm.billing.address_street_1=l),modelModifiers:{trim:!0},placeholder:a.$t("general.street_1"),type:"text",name:"billing_street1","container-class":"mt-3"},null,8,["modelValue","placeholder"]),o(c,{modelValue:e(s).userForm.billing.address_street_2,"onUpdate:modelValue":t[5]||(t[5]=l=>e(s).userForm.billing.address_street_2=l),modelModifiers:{trim:!0},placeholder:a.$t("general.street_2"),type:"text",class:"mt-3",name:"billing_street2","container-class":"mt-3"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),d("div",R,[o(n,{label:a.$t("customers.phone"),class:"text-left"},{default:r(()=>[o(i,{modelValue:e(s).userForm.billing.phone,"onUpdate:modelValue":t[6]||(t[6]=l=>e(s).userForm.billing.phone=l),modelModifiers:{trim:!0},type:"text",name:"phone"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.zip_code"),class:"mt-2 text-left"},{default:r(()=>[o(i,{modelValue:e(s).userForm.billing.zip,"onUpdate:modelValue":t[7]||(t[7]=l=>e(s).userForm.billing.zip=l),modelModifiers:{trim:!0},type:"text",name:"zip"},null,8,["modelValue"])]),_:1},8,["label"])])])]),o(U,{class:"mb-5 md:mb-8"}),d("div",q,[d("div",H,[o(V,{ref:(l,x)=>{x.sameAddress=l},type:"button",onClick:t[8]||(t[8]=l=>e(s).copyAddress(!0))},{left:r(l=>[o(_,{name:"DocumentDuplicateIcon",class:h(l.class)},null,8,["class"])]),default:r(()=>[F(" "+p(a.$t("customers.copy_billing_address")),1)]),_:1},512)])]),d("div",K,[d("h6",L,p(a.$t("customers.shipping_address")),1),e(s).userForm.shipping?(b(),y("div",O,[o(n,{label:a.$t("customers.name"),class:"md:col-span-3"},{default:r(()=>[o(i,{modelValue:e(s).userForm.shipping.name,"onUpdate:modelValue":t[9]||(t[9]=l=>e(s).userForm.shipping.name=l),modelModifiers:{trim:!0},type:"text",name:"address_name"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.country"),class:"md:col-span-3"},{default:r(()=>[o(f,{modelValue:e(s).userForm.shipping.country_id,"onUpdate:modelValue":t[10]||(t[10]=l=>e(s).userForm.shipping.country_id=l),"value-prop":"id",label:"name","track-by":"name","resolve-on-load":"",searchable:"",options:e(g).countries,placeholder:a.$t("general.select_country"),class:"w-full"},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.state"),class:"md:col-span-3"},{default:r(()=>[o(i,{modelValue:e(s).userForm.shipping.state,"onUpdate:modelValue":t[11]||(t[11]=l=>e(s).userForm.shipping.state=l),name:"shipping.state",type:"text"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.city"),class:"md:col-span-3"},{default:r(()=>[o(i,{modelValue:e(s).userForm.shipping.city,"onUpdate:modelValue":t[12]||(t[12]=l=>e(s).userForm.shipping.city=l),name:"shipping.city",type:"text"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.address"),class:"md:col-span-3"},{default:r(()=>[o(c,{modelValue:e(s).userForm.shipping.address_street_1,"onUpdate:modelValue":t[13]||(t[13]=l=>e(s).userForm.shipping.address_street_1=l),modelModifiers:{trim:!0},type:"text",placeholder:a.$t("general.street_1"),name:"shipping_street1"},null,8,["modelValue","placeholder"]),o(c,{modelValue:e(s).userForm.shipping.address_street_2,"onUpdate:modelValue":t[14]||(t[14]=l=>e(s).userForm.shipping.address_street_2=l),modelModifiers:{trim:!0},type:"text",placeholder:a.$t("general.street_2"),name:"shipping_street2",class:"mt-3"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),d("div",P,[o(n,{label:a.$t("customers.phone"),class:"text-left"},{default:r(()=>[o(i,{modelValue:e(s).userForm.shipping.phone,"onUpdate:modelValue":t[15]||(t[15]=l=>e(s).userForm.shipping.phone=l),modelModifiers:{trim:!0},type:"text",name:"phone"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.zip_code"),class:"mt-2 text-left"},{default:r(()=>[o(i,{modelValue:e(s).userForm.shipping.zip,"onUpdate:modelValue":t[16]||(t[16]=l=>e(s).userForm.shipping.zip=l),modelModifiers:{trim:!0},type:"text",name:"zip"},null,8,["modelValue"])]),_:1},8,["label"])])])):v("",!0)]),d("div",Q,[o(V,{loading:e(u),disabled:e(u)},{left:r(l=>[e(u)?v("",!0):(b(),S(_,{key:0,name:"SaveIcon",class:h(l.class)},null,8,["class"]))]),default:r(()=>[F(" "+p(a.$t("general.save")),1)]),_:1},8,["loading","disabled"])])]),_:1})],40,D)}}};export{se as default}; +import{G as C,J as z,B as I,r as m,o as b,e as y,f as o,w as r,h as d,t as p,u as e,m as h,i as F,j as v,l as S,U as j}from"./vendor.01d0adc5.js";import{a as k,u as w}from"./global.ab8f317c.js";import"./auth.0e030165.js";import"./main.24f7a84b.js";const D=["onSubmit"],G={class:"mb-6"},N={class:"font-bold text-left"},A={class:"mt-2 text-sm leading-snug text-left text-gray-500",style:{"max-width":"680px"}},T={class:"grid grid-cols-5 gap-4 mb-8"},E={class:"col-span-5 text-lg font-semibold text-left lg:col-span-1"},J={class:"grid col-span-5 lg:col-span-4 gap-y-6 gap-x-4 md:grid-cols-6"},R={class:"md:col-span-3"},q={class:"flex items-center justify-start mb-6 md:justify-end md:mb-0"},H={class:"p-1"},K={class:"grid grid-cols-5 gap-4 mb-8"},L={class:"col-span-5 text-lg font-semibold text-left lg:col-span-1"},O={key:0,class:"grid col-span-5 lg:col-span-4 gap-y-6 gap-x-4 md:grid-cols-6"},P={class:"md:col-span-3"},Q={class:"flex items-center justify-end"},se={setup(W){const s=k();C();const{tm:$,t:X}=z(),g=w();let u=I(!1);g.fetchCountries();function B(){u.value=!0;let a=s.userForm;s.updateCurrentUser({data:a,message:$("customers.address_updated_message")}).then(t=>{u.value=!1}).catch(t=>{u.value=!1})}return(a,t)=>{const i=m("BaseInput"),n=m("BaseInputGroup"),f=m("BaseMultiselect"),c=m("BaseTextarea"),U=m("BaseDivider"),_=m("BaseIcon"),V=m("BaseButton"),M=m("BaseCard");return b(),y("form",{class:"relative h-full mt-4",onSubmit:j(B,["prevent"])},[o(M,null,{default:r(()=>[d("div",G,[d("h6",N,p(a.$t("settings.menu_title.address_information")),1),d("p",A,p(a.$t("settings.address_information.section_description")),1)]),d("div",T,[d("h6",E,p(a.$t("customers.billing_address")),1),d("div",J,[o(n,{label:a.$t("customers.name"),class:"w-full md:col-span-3"},{default:r(()=>[o(i,{modelValue:e(s).userForm.billing.name,"onUpdate:modelValue":t[0]||(t[0]=l=>e(s).userForm.billing.name=l),modelModifiers:{trim:!0},type:"text",class:"w-full",name:"address_name"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.country"),class:"md:col-span-3"},{default:r(()=>[o(f,{modelValue:e(s).userForm.billing.country_id,"onUpdate:modelValue":t[1]||(t[1]=l=>e(s).userForm.billing.country_id=l),"value-prop":"id",label:"name","track-by":"name","resolve-on-load":"",searchable:"",options:e(g).countries,placeholder:a.$t("general.select_country"),class:"w-full"},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.state"),class:"md:col-span-3"},{default:r(()=>[o(i,{modelValue:e(s).userForm.billing.state,"onUpdate:modelValue":t[2]||(t[2]=l=>e(s).userForm.billing.state=l),name:"billing.state",type:"text"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.city"),class:"md:col-span-3"},{default:r(()=>[o(i,{modelValue:e(s).userForm.billing.city,"onUpdate:modelValue":t[3]||(t[3]=l=>e(s).userForm.billing.city=l),name:"billing.city",type:"text"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.address"),class:"md:col-span-3"},{default:r(()=>[o(c,{modelValue:e(s).userForm.billing.address_street_1,"onUpdate:modelValue":t[4]||(t[4]=l=>e(s).userForm.billing.address_street_1=l),modelModifiers:{trim:!0},placeholder:a.$t("general.street_1"),type:"text",name:"billing_street1","container-class":"mt-3"},null,8,["modelValue","placeholder"]),o(c,{modelValue:e(s).userForm.billing.address_street_2,"onUpdate:modelValue":t[5]||(t[5]=l=>e(s).userForm.billing.address_street_2=l),modelModifiers:{trim:!0},placeholder:a.$t("general.street_2"),type:"text",class:"mt-3",name:"billing_street2","container-class":"mt-3"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),d("div",R,[o(n,{label:a.$t("customers.phone"),class:"text-left"},{default:r(()=>[o(i,{modelValue:e(s).userForm.billing.phone,"onUpdate:modelValue":t[6]||(t[6]=l=>e(s).userForm.billing.phone=l),modelModifiers:{trim:!0},type:"text",name:"phone"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.zip_code"),class:"mt-2 text-left"},{default:r(()=>[o(i,{modelValue:e(s).userForm.billing.zip,"onUpdate:modelValue":t[7]||(t[7]=l=>e(s).userForm.billing.zip=l),modelModifiers:{trim:!0},type:"text",name:"zip"},null,8,["modelValue"])]),_:1},8,["label"])])])]),o(U,{class:"mb-5 md:mb-8"}),d("div",q,[d("div",H,[o(V,{ref:(l,x)=>{x.sameAddress=l},type:"button",onClick:t[8]||(t[8]=l=>e(s).copyAddress(!0))},{left:r(l=>[o(_,{name:"DocumentDuplicateIcon",class:h(l.class)},null,8,["class"])]),default:r(()=>[F(" "+p(a.$t("customers.copy_billing_address")),1)]),_:1},512)])]),d("div",K,[d("h6",L,p(a.$t("customers.shipping_address")),1),e(s).userForm.shipping?(b(),y("div",O,[o(n,{label:a.$t("customers.name"),class:"md:col-span-3"},{default:r(()=>[o(i,{modelValue:e(s).userForm.shipping.name,"onUpdate:modelValue":t[9]||(t[9]=l=>e(s).userForm.shipping.name=l),modelModifiers:{trim:!0},type:"text",name:"address_name"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.country"),class:"md:col-span-3"},{default:r(()=>[o(f,{modelValue:e(s).userForm.shipping.country_id,"onUpdate:modelValue":t[10]||(t[10]=l=>e(s).userForm.shipping.country_id=l),"value-prop":"id",label:"name","track-by":"name","resolve-on-load":"",searchable:"",options:e(g).countries,placeholder:a.$t("general.select_country"),class:"w-full"},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.state"),class:"md:col-span-3"},{default:r(()=>[o(i,{modelValue:e(s).userForm.shipping.state,"onUpdate:modelValue":t[11]||(t[11]=l=>e(s).userForm.shipping.state=l),name:"shipping.state",type:"text"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.city"),class:"md:col-span-3"},{default:r(()=>[o(i,{modelValue:e(s).userForm.shipping.city,"onUpdate:modelValue":t[12]||(t[12]=l=>e(s).userForm.shipping.city=l),name:"shipping.city",type:"text"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.address"),class:"md:col-span-3"},{default:r(()=>[o(c,{modelValue:e(s).userForm.shipping.address_street_1,"onUpdate:modelValue":t[13]||(t[13]=l=>e(s).userForm.shipping.address_street_1=l),modelModifiers:{trim:!0},type:"text",placeholder:a.$t("general.street_1"),name:"shipping_street1"},null,8,["modelValue","placeholder"]),o(c,{modelValue:e(s).userForm.shipping.address_street_2,"onUpdate:modelValue":t[14]||(t[14]=l=>e(s).userForm.shipping.address_street_2=l),modelModifiers:{trim:!0},type:"text",placeholder:a.$t("general.street_2"),name:"shipping_street2",class:"mt-3"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),d("div",P,[o(n,{label:a.$t("customers.phone"),class:"text-left"},{default:r(()=>[o(i,{modelValue:e(s).userForm.shipping.phone,"onUpdate:modelValue":t[15]||(t[15]=l=>e(s).userForm.shipping.phone=l),modelModifiers:{trim:!0},type:"text",name:"phone"},null,8,["modelValue"])]),_:1},8,["label"]),o(n,{label:a.$t("customers.zip_code"),class:"mt-2 text-left"},{default:r(()=>[o(i,{modelValue:e(s).userForm.shipping.zip,"onUpdate:modelValue":t[16]||(t[16]=l=>e(s).userForm.shipping.zip=l),modelModifiers:{trim:!0},type:"text",name:"zip"},null,8,["modelValue"])]),_:1},8,["label"])])])):v("",!0)]),d("div",Q,[o(V,{loading:e(u),disabled:e(u)},{left:r(l=>[e(u)?v("",!0):(b(),S(_,{key:0,name:"SaveIcon",class:h(l.class)},null,8,["class"]))]),default:r(()=>[F(" "+p(a.$t("general.save")),1)]),_:1},8,["loading","disabled"])])]),_:1})],40,D)}}};export{se as default}; diff --git a/public/build/assets/BackupSetting.f5a6fab0.js b/public/build/assets/BackupSetting.e1ea237b.js similarity index 98% rename from public/build/assets/BackupSetting.f5a6fab0.js rename to public/build/assets/BackupSetting.e1ea237b.js index 1fc2e3a10..13a5ab396 100644 --- a/public/build/assets/BackupSetting.f5a6fab0.js +++ b/public/build/assets/BackupSetting.e1ea237b.js @@ -1 +1 @@ -var te=Object.defineProperty,ae=Object.defineProperties;var se=Object.getOwnPropertyDescriptors;var U=Object.getOwnPropertySymbols;var oe=Object.prototype.hasOwnProperty,ne=Object.prototype.propertyIsEnumerable;var F=(u,t,l)=>t in u?te(u,t,{enumerable:!0,configurable:!0,writable:!0,value:l}):u[t]=l,q=(u,t)=>{for(var l in t||(t={}))oe.call(t,l)&&F(u,l,t[l]);if(U)for(var l of U(t))ne.call(t,l)&&F(u,l,t[l]);return u},G=(u,t)=>ae(u,se(t));import{a as x,d as le,B as w,a0 as E,J as O,k as D,L as R,M as A,T as ce,r as d,o as L,l as H,w as i,h as $,i as S,t as C,u as o,f as n,m as J,j as ie,U as re,e as de,F as ue}from"./vendor.01d0adc5.js";import{h as P,u as X,c as K,j as pe}from"./main.75722495.js";import{u as Q}from"./disk.518ebc4b.js";const W=(u=!1)=>{const t=u?window.pinia.defineStore:le,{global:l}=window.i18n;return t({id:"backup",state:()=>({backups:[],currentBackupData:{option:"full",selected_disk:null}}),actions:{fetchBackups(b){return new Promise((c,s)=>{x.get("/api/v1/backups",{params:b}).then(e=>{this.backups=e.data.data,c(e)}).catch(e=>{P(e),s(e)})})},createBackup(b){return new Promise((c,s)=>{x.post("/api/v1/backups",b).then(e=>{X().showNotification({type:"success",message:l.t("settings.backup.created_message")}),c(e)}).catch(e=>{P(e),s(e)})})},removeBackup(b){return new Promise((c,s)=>{x.delete(`/api/v1/backups/${b.disk}`,{params:b}).then(e=>{X().showNotification({type:"success",message:l.t("settings.backup.deleted_message")}),c(e)}).catch(e=>{P(e),s(e)})})}}})()},ke={class:"flex justify-between w-full"},me=["onSubmit"],fe={class:"p-6"},_e={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},be={setup(u){w(null),w(!1);let t=w(!1),l=w(!1);const b=E(["full","only-db","only-files"]),c=W(),s=K(),e=Q(),{t:f}=O(),_=D(()=>s.active&&s.componentName==="BackupModal"),M=D(()=>e.disks.map(r=>G(q({},r),{name:r.name+" \u2014 ["+r.driver+"]"}))),V=D(()=>({currentBackupData:{option:{required:R.withMessage(f("validation.required"),A)},selected_disk:{required:R.withMessage(f("validation.required"),A)}}})),g=ce(V,D(()=>c));async function N(){if(g.value.currentBackupData.$touch(),g.value.currentBackupData.$invalid)return!0;let r={option:c.currentBackupData.option,file_disk_id:c.currentBackupData.selected_disk.id};try{t.value=!0,(await c.createBackup(r)).data&&(t.value=!1,s.refreshData&&s.refreshData(),s.closeModal())}catch{t.value=!1}}async function j(){l.value=!0;let r=await e.fetchDisks({limit:"all"});c.currentBackupData.selected_disk=r.data.data[0],l.value=!1}function I(){s.closeModal(),setTimeout(()=>{g.value.$reset(),c.$reset()})}return(r,h)=>{const a=d("BaseIcon"),p=d("BaseMultiselect"),m=d("BaseInputGroup"),k=d("BaseInputGrid"),y=d("BaseButton"),T=d("BaseModal");return L(),H(T,{show:o(_),onClose:I,onOpen:j},{header:i(()=>[$("div",ke,[S(C(o(s).title)+" ",1),n(a,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:I})])]),default:i(()=>[$("form",{onSubmit:re(N,["prevent"])},[$("div",fe,[n(k,{layout:"one-column"},{default:i(()=>[n(m,{label:r.$t("settings.backup.select_backup_type"),error:o(g).currentBackupData.option.$error&&o(g).currentBackupData.option.$errors[0].$message,horizontal:"",required:"",class:"py-2"},{default:i(()=>[n(p,{modelValue:o(c).currentBackupData.option,"onUpdate:modelValue":h[0]||(h[0]=v=>o(c).currentBackupData.option=v),options:o(b),"can-deselect":!1,placeholder:r.$t("settings.backup.select_backup_type"),searchable:""},null,8,["modelValue","options","placeholder"])]),_:1},8,["label","error"]),n(m,{label:r.$t("settings.disk.select_disk"),error:o(g).currentBackupData.selected_disk.$error&&o(g).currentBackupData.selected_disk.$errors[0].$message,horizontal:"",required:"",class:"py-2"},{default:i(()=>[n(p,{modelValue:o(c).currentBackupData.selected_disk,"onUpdate:modelValue":h[1]||(h[1]=v=>o(c).currentBackupData.selected_disk=v),"content-loading":o(l),options:o(M),searchable:!0,"allow-empty":!1,label:"name","value-prop":"id",placeholder:r.$t("settings.disk.select_disk"),"track-by":"id",object:""},null,8,["modelValue","content-loading","options","placeholder"])]),_:1},8,["label","error"])]),_:1})]),$("div",_e,[n(y,{class:"mr-3",variant:"primary-outline",type:"button",onClick:I},{default:i(()=>[S(C(r.$t("general.cancel")),1)]),_:1}),n(y,{loading:o(t),disabled:o(t),variant:"primary",type:"submit"},{left:i(v=>[o(t)?ie("",!0):(L(),H(a,{key:0,name:"SaveIcon",class:J(v.class)},null,8,["class"]))]),default:i(()=>[S(" "+C(r.$t("general.create")),1)]),_:1},8,["loading","disabled"])])],40,me)]),_:1},8,["show"])}}},ge={class:"grid my-14 md:grid-cols-3"},Be={class:"inline-block"},De={setup(u){const t=pe(),l=W(),b=K(),c=Q(),{t:s}=O(),e=E({selected_disk:{driver:"local"}}),f=w("");let _=w(!0);const M=D(()=>[{key:"path",label:s("settings.backup.path"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"created_at",label:s("settings.backup.created_at"),tdClass:"font-medium text-gray-900"},{key:"size",label:s("settings.backup.size"),tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]),V=D(()=>c.disks.map(a=>G(q({},a),{name:a.name+" \u2014 ["+a.driver+"]"})));j();function g(a){t.openDialog({title:s("general.are_you_sure"),message:s("settings.backup.backup_confirm_delete"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async p=>{if(p){let m={disk:e.selected_disk.driver,file_disk_id:e.selected_disk.id,path:a.path},k=await l.removeBackup(m);if(k.data.success||k.data.backup)return f.value&&f.value.refresh(),!0}})}function N(){setTimeout(()=>{f.value.refresh()},100)}async function j(){_.value=!0;let a=await c.fetchDisks({limit:"all"});a.data.error,e.selected_disk=a.data.data.find(p=>p.set_as_default==0),_.value=!1}async function I({page:a,filter:p,sort:m}){let k={disk:e.selected_disk.driver,filed_disk_id:e.selected_disk.id};_.value=!0;let y=await l.fetchBackups(k);return _.value=!1,{data:y.data.backups,pagination:{totalPages:1,currentPage:1}}}async function r(){b.openModal({title:s("settings.backup.create_backup"),componentName:"BackupModal",refreshData:f.value&&f.value.refresh,size:"sm"})}async function h(a){_.value=!0,window.axios({method:"GET",url:"/api/v1/download-backup",responseType:"blob",params:{disk:e.selected_disk.driver,file_disk_id:e.selected_disk.id,path:a.path}}).then(p=>{const m=window.URL.createObjectURL(new Blob([p.data])),k=document.createElement("a");k.href=m,k.setAttribute("download",a.path.split("/")[1]),document.body.appendChild(k),k.click(),_.value=!1}).catch(p=>{_.value=!1})}return(a,p)=>{const m=d("BaseIcon"),k=d("BaseButton"),y=d("BaseMultiselect"),T=d("BaseInputGroup"),v=d("BaseDropdownItem"),Y=d("BaseDropdown"),Z=d("BaseTable"),ee=d("BaseSettingCard");return L(),de(ue,null,[n(be),n(ee,{title:a.$tc("settings.backup.title",1),description:a.$t("settings.backup.description")},{action:i(()=>[n(k,{variant:"primary-outline",onClick:r},{left:i(B=>[n(m,{class:J(B.class),name:"PlusIcon"},null,8,["class"])]),default:i(()=>[S(" "+C(a.$t("settings.backup.new_backup")),1)]),_:1})]),default:i(()=>[$("div",ge,[n(T,{label:a.$t("settings.disk.select_disk"),"content-loading":o(_)},{default:i(()=>[n(y,{modelValue:o(e).selected_disk,"onUpdate:modelValue":p[0]||(p[0]=B=>o(e).selected_disk=B),"content-loading":o(_),options:o(V),"track-by":"id",placeholder:a.$t("settings.disk.select_disk"),label:"name",searchable:!0,object:"",class:"w-full","value-prop":"id",onSelect:N},null,8,["modelValue","content-loading","options","placeholder"])]),_:1},8,["label","content-loading"])]),n(Z,{ref:(B,z)=>{z.table=B,f.value=B},class:"mt-10","show-filter":!1,data:I,columns:o(M)},{"cell-actions":i(({row:B})=>[n(Y,null,{activator:i(()=>[$("div",Be,[n(m,{name:"DotsHorizontalIcon",class:"text-gray-500"})])]),default:i(()=>[n(v,{onClick:z=>h(B.data)},{default:i(()=>[n(m,{name:"CloudDownloadIcon",class:"mr-3 text-gray-600"}),S(" "+C(a.$t("general.download")),1)]),_:2},1032,["onClick"]),n(v,{onClick:z=>g(B.data)},{default:i(()=>[n(m,{name:"TrashIcon",class:"mr-3 text-gray-600"}),S(" "+C(a.$t("general.delete")),1)]),_:2},1032,["onClick"])]),_:2},1024)]),_:1},8,["columns"])]),_:1},8,["title","description"])],64)}}};export{De as default}; +var te=Object.defineProperty,ae=Object.defineProperties;var se=Object.getOwnPropertyDescriptors;var U=Object.getOwnPropertySymbols;var oe=Object.prototype.hasOwnProperty,ne=Object.prototype.propertyIsEnumerable;var F=(u,t,l)=>t in u?te(u,t,{enumerable:!0,configurable:!0,writable:!0,value:l}):u[t]=l,q=(u,t)=>{for(var l in t||(t={}))oe.call(t,l)&&F(u,l,t[l]);if(U)for(var l of U(t))ne.call(t,l)&&F(u,l,t[l]);return u},G=(u,t)=>ae(u,se(t));import{a as x,d as le,B as w,a0 as E,J as O,k as D,L as R,M as A,T as ce,r as d,o as L,l as H,w as i,h as $,i as S,t as C,u as o,f as n,m as J,j as ie,U as re,e as de,F as ue}from"./vendor.01d0adc5.js";import{h as P,u as X,c as K,j as pe}from"./main.24f7a84b.js";import{u as Q}from"./disk.62fb5cf1.js";const W=(u=!1)=>{const t=u?window.pinia.defineStore:le,{global:l}=window.i18n;return t({id:"backup",state:()=>({backups:[],currentBackupData:{option:"full",selected_disk:null}}),actions:{fetchBackups(b){return new Promise((c,s)=>{x.get("/api/v1/backups",{params:b}).then(e=>{this.backups=e.data.data,c(e)}).catch(e=>{P(e),s(e)})})},createBackup(b){return new Promise((c,s)=>{x.post("/api/v1/backups",b).then(e=>{X().showNotification({type:"success",message:l.t("settings.backup.created_message")}),c(e)}).catch(e=>{P(e),s(e)})})},removeBackup(b){return new Promise((c,s)=>{x.delete(`/api/v1/backups/${b.disk}`,{params:b}).then(e=>{X().showNotification({type:"success",message:l.t("settings.backup.deleted_message")}),c(e)}).catch(e=>{P(e),s(e)})})}}})()},ke={class:"flex justify-between w-full"},me=["onSubmit"],fe={class:"p-6"},_e={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},be={setup(u){w(null),w(!1);let t=w(!1),l=w(!1);const b=E(["full","only-db","only-files"]),c=W(),s=K(),e=Q(),{t:f}=O(),_=D(()=>s.active&&s.componentName==="BackupModal"),M=D(()=>e.disks.map(r=>G(q({},r),{name:r.name+" \u2014 ["+r.driver+"]"}))),V=D(()=>({currentBackupData:{option:{required:R.withMessage(f("validation.required"),A)},selected_disk:{required:R.withMessage(f("validation.required"),A)}}})),g=ce(V,D(()=>c));async function N(){if(g.value.currentBackupData.$touch(),g.value.currentBackupData.$invalid)return!0;let r={option:c.currentBackupData.option,file_disk_id:c.currentBackupData.selected_disk.id};try{t.value=!0,(await c.createBackup(r)).data&&(t.value=!1,s.refreshData&&s.refreshData(),s.closeModal())}catch{t.value=!1}}async function j(){l.value=!0;let r=await e.fetchDisks({limit:"all"});c.currentBackupData.selected_disk=r.data.data[0],l.value=!1}function I(){s.closeModal(),setTimeout(()=>{g.value.$reset(),c.$reset()})}return(r,h)=>{const a=d("BaseIcon"),p=d("BaseMultiselect"),m=d("BaseInputGroup"),k=d("BaseInputGrid"),y=d("BaseButton"),T=d("BaseModal");return L(),H(T,{show:o(_),onClose:I,onOpen:j},{header:i(()=>[$("div",ke,[S(C(o(s).title)+" ",1),n(a,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:I})])]),default:i(()=>[$("form",{onSubmit:re(N,["prevent"])},[$("div",fe,[n(k,{layout:"one-column"},{default:i(()=>[n(m,{label:r.$t("settings.backup.select_backup_type"),error:o(g).currentBackupData.option.$error&&o(g).currentBackupData.option.$errors[0].$message,horizontal:"",required:"",class:"py-2"},{default:i(()=>[n(p,{modelValue:o(c).currentBackupData.option,"onUpdate:modelValue":h[0]||(h[0]=v=>o(c).currentBackupData.option=v),options:o(b),"can-deselect":!1,placeholder:r.$t("settings.backup.select_backup_type"),searchable:""},null,8,["modelValue","options","placeholder"])]),_:1},8,["label","error"]),n(m,{label:r.$t("settings.disk.select_disk"),error:o(g).currentBackupData.selected_disk.$error&&o(g).currentBackupData.selected_disk.$errors[0].$message,horizontal:"",required:"",class:"py-2"},{default:i(()=>[n(p,{modelValue:o(c).currentBackupData.selected_disk,"onUpdate:modelValue":h[1]||(h[1]=v=>o(c).currentBackupData.selected_disk=v),"content-loading":o(l),options:o(M),searchable:!0,"allow-empty":!1,label:"name","value-prop":"id",placeholder:r.$t("settings.disk.select_disk"),"track-by":"id",object:""},null,8,["modelValue","content-loading","options","placeholder"])]),_:1},8,["label","error"])]),_:1})]),$("div",_e,[n(y,{class:"mr-3",variant:"primary-outline",type:"button",onClick:I},{default:i(()=>[S(C(r.$t("general.cancel")),1)]),_:1}),n(y,{loading:o(t),disabled:o(t),variant:"primary",type:"submit"},{left:i(v=>[o(t)?ie("",!0):(L(),H(a,{key:0,name:"SaveIcon",class:J(v.class)},null,8,["class"]))]),default:i(()=>[S(" "+C(r.$t("general.create")),1)]),_:1},8,["loading","disabled"])])],40,me)]),_:1},8,["show"])}}},ge={class:"grid my-14 md:grid-cols-3"},Be={class:"inline-block"},De={setup(u){const t=pe(),l=W(),b=K(),c=Q(),{t:s}=O(),e=E({selected_disk:{driver:"local"}}),f=w("");let _=w(!0);const M=D(()=>[{key:"path",label:s("settings.backup.path"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"created_at",label:s("settings.backup.created_at"),tdClass:"font-medium text-gray-900"},{key:"size",label:s("settings.backup.size"),tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]),V=D(()=>c.disks.map(a=>G(q({},a),{name:a.name+" \u2014 ["+a.driver+"]"})));j();function g(a){t.openDialog({title:s("general.are_you_sure"),message:s("settings.backup.backup_confirm_delete"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async p=>{if(p){let m={disk:e.selected_disk.driver,file_disk_id:e.selected_disk.id,path:a.path},k=await l.removeBackup(m);if(k.data.success||k.data.backup)return f.value&&f.value.refresh(),!0}})}function N(){setTimeout(()=>{f.value.refresh()},100)}async function j(){_.value=!0;let a=await c.fetchDisks({limit:"all"});a.data.error,e.selected_disk=a.data.data.find(p=>p.set_as_default==0),_.value=!1}async function I({page:a,filter:p,sort:m}){let k={disk:e.selected_disk.driver,filed_disk_id:e.selected_disk.id};_.value=!0;let y=await l.fetchBackups(k);return _.value=!1,{data:y.data.backups,pagination:{totalPages:1,currentPage:1}}}async function r(){b.openModal({title:s("settings.backup.create_backup"),componentName:"BackupModal",refreshData:f.value&&f.value.refresh,size:"sm"})}async function h(a){_.value=!0,window.axios({method:"GET",url:"/api/v1/download-backup",responseType:"blob",params:{disk:e.selected_disk.driver,file_disk_id:e.selected_disk.id,path:a.path}}).then(p=>{const m=window.URL.createObjectURL(new Blob([p.data])),k=document.createElement("a");k.href=m,k.setAttribute("download",a.path.split("/")[1]),document.body.appendChild(k),k.click(),_.value=!1}).catch(p=>{_.value=!1})}return(a,p)=>{const m=d("BaseIcon"),k=d("BaseButton"),y=d("BaseMultiselect"),T=d("BaseInputGroup"),v=d("BaseDropdownItem"),Y=d("BaseDropdown"),Z=d("BaseTable"),ee=d("BaseSettingCard");return L(),de(ue,null,[n(be),n(ee,{title:a.$tc("settings.backup.title",1),description:a.$t("settings.backup.description")},{action:i(()=>[n(k,{variant:"primary-outline",onClick:r},{left:i(B=>[n(m,{class:J(B.class),name:"PlusIcon"},null,8,["class"])]),default:i(()=>[S(" "+C(a.$t("settings.backup.new_backup")),1)]),_:1})]),default:i(()=>[$("div",ge,[n(T,{label:a.$t("settings.disk.select_disk"),"content-loading":o(_)},{default:i(()=>[n(y,{modelValue:o(e).selected_disk,"onUpdate:modelValue":p[0]||(p[0]=B=>o(e).selected_disk=B),"content-loading":o(_),options:o(V),"track-by":"id",placeholder:a.$t("settings.disk.select_disk"),label:"name",searchable:!0,object:"",class:"w-full","value-prop":"id",onSelect:N},null,8,["modelValue","content-loading","options","placeholder"])]),_:1},8,["label","content-loading"])]),n(Z,{ref:(B,z)=>{z.table=B,f.value=B},class:"mt-10","show-filter":!1,data:I,columns:o(M)},{"cell-actions":i(({row:B})=>[n(Y,null,{activator:i(()=>[$("div",Be,[n(m,{name:"DotsHorizontalIcon",class:"text-gray-500"})])]),default:i(()=>[n(v,{onClick:z=>h(B.data)},{default:i(()=>[n(m,{name:"CloudDownloadIcon",class:"mr-3 text-gray-600"}),S(" "+C(a.$t("general.download")),1)]),_:2},1032,["onClick"]),n(v,{onClick:z=>g(B.data)},{default:i(()=>[n(m,{name:"TrashIcon",class:"mr-3 text-gray-600"}),S(" "+C(a.$t("general.delete")),1)]),_:2},1032,["onClick"])]),_:2},1024)]),_:1},8,["columns"])]),_:1},8,["title","description"])],64)}}};export{De as default}; diff --git a/public/build/assets/BaseEditor.d94e3dc1.js b/public/build/assets/BaseEditor.464a133b.js similarity index 99% rename from public/build/assets/BaseEditor.d94e3dc1.js rename to public/build/assets/BaseEditor.464a133b.js index fe72f3ae9..38b823142 100644 --- a/public/build/assets/BaseEditor.d94e3dc1.js +++ b/public/build/assets/BaseEditor.464a133b.js @@ -1,4 +1,4 @@ -var nc=Object.defineProperty,oc=Object.defineProperties;var ic=Object.getOwnPropertyDescriptors;var Mr=Object.getOwnPropertySymbols;var Ko=Object.prototype.hasOwnProperty,$o=Object.prototype.propertyIsEnumerable;var Uo=(e,t,r)=>t in e?nc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,S=(e,t)=>{for(var r in t||(t={}))Ko.call(t,r)&&Uo(e,r,t[r]);if(Mr)for(var r of Mr(t))$o.call(t,r)&&Uo(e,r,t[r]);return e},wt=(e,t)=>oc(e,ic(t));var Go=(e,t)=>{var r={};for(var n in e)Ko.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&Mr)for(var n of Mr(e))t.indexOf(n)<0&&$o.call(e,n)&&(r[n]=e[n]);return r};import{bf as sc,a8 as ac,bg as $e,B as Cr,D as sn,b1 as xr,E as ye,bh as cc,a7 as lc,be as uc,u as fc,al as pc,a0 as dc,bi as hc,bj as mc,o as kt,e as Tt,h as _,ai as vc,bk as gc,C as yc,aS as bc,r as ut,l as kc,w as an,f as q,m as V,j as Sc}from"./vendor.01d0adc5.js";import{_ as Dt}from"./main.75722495.js";function ft(e){this.content=e}ft.prototype={constructor:ft,find:function(e){for(var t=0;t>1}};ft.from=function(e){if(e instanceof ft)return e;var t=[];if(e)for(var r in e)t.push(r,e[r]);return new ft(t)};var Yo=ft;function Xo(e,t,r){for(var n=0;;n++){if(n==e.childCount||n==t.childCount)return e.childCount==t.childCount?null:r;var o=e.child(n),i=t.child(n);if(o==i){r+=o.nodeSize;continue}if(!o.sameMarkup(i))return r;if(o.isText&&o.text!=i.text){for(var s=0;o.text[s]==i.text[s];s++)r++;return r}if(o.content.size||i.content.size){var a=Xo(o.content,i.content,r+1);if(a!=null)return a}r+=o.nodeSize}}function Qo(e,t,r,n){for(var o=e.childCount,i=t.childCount;;){if(o==0||i==0)return o==i?null:{a:r,b:n};var s=e.child(--o),a=t.child(--i),c=s.nodeSize;if(s==a){r-=c,n-=c;continue}if(!s.sameMarkup(a))return{a:r,b:n};if(s.isText&&s.text!=a.text){for(var l=0,u=Math.min(s.text.length,a.text.length);lt&&n(c,o+a,i,s)!==!1&&c.content.size){var u=a+1;c.nodesBetween(Math.max(0,t-u),Math.min(c.content.size,r-u),n,o+u)}a=l}};k.prototype.descendants=function(t){this.nodesBetween(0,this.size,t)};k.prototype.textBetween=function(t,r,n,o){var i="",s=!0;return this.nodesBetween(t,r,function(a,c){a.isText?(i+=a.text.slice(Math.max(t,c)-c,r-c),s=!n):a.isLeaf&&o?(i+=o,s=!n):!s&&a.isBlock&&(i+=n,s=!0)},0),i};k.prototype.append=function(t){if(!t.size)return this;if(!this.size)return t;var r=this.lastChild,n=t.firstChild,o=this.content.slice(),i=0;for(r.isText&&r.sameMarkup(n)&&(o[o.length-1]=r.withText(r.text+n.text),i=1);it)for(var i=0,s=0;st&&((sr)&&(a.isText?a=a.cut(Math.max(0,t-s),Math.min(a.text.length,r-s)):a=a.cut(Math.max(0,t-s-1),Math.min(a.content.size,r-s-1))),n.push(a),o+=a.nodeSize),s=c}return new k(n,o)};k.prototype.cutByIndex=function(t,r){return t==r?k.empty:t==0&&r==this.content.length?this:new k(this.content.slice(t,r))};k.prototype.replaceChild=function(t,r){var n=this.content[t];if(n==r)return this;var o=this.content.slice(),i=this.size+r.nodeSize-n.nodeSize;return o[t]=r,new k(o,i)};k.prototype.addToStart=function(t){return new k([t].concat(this.content),this.size+t.nodeSize)};k.prototype.addToEnd=function(t){return new k(this.content.concat(t),this.size+t.nodeSize)};k.prototype.eq=function(t){if(this.content.length!=t.content.length)return!1;for(var r=0;rthis.size||t<0)throw new RangeError("Position "+t+" outside of fragment ("+this+")");for(var n=0,o=0;;n++){var i=this.child(n),s=o+i.nodeSize;if(s>=t)return s==t||r>0?wr(n+1,s):wr(n,o);o=s}};k.prototype.toString=function(){return"<"+this.toStringInner()+">"};k.prototype.toStringInner=function(){return this.content.join(", ")};k.prototype.toJSON=function(){return this.content.length?this.content.map(function(t){return t.toJSON()}):null};k.fromJSON=function(t,r){if(!r)return k.empty;if(!Array.isArray(r))throw new RangeError("Invalid input for Fragment.fromJSON");return new k(r.map(t.nodeFromJSON))};k.fromArray=function(t){if(!t.length)return k.empty;for(var r,n=0,o=0;othis.type.rank&&(r||(r=t.slice(0,o)),r.push(this),n=!0),r&&r.push(i)}}return r||(r=t.slice()),n||r.push(this),r};R.prototype.removeFromSet=function(t){for(var r=0;r0&&(t.openStart=this.openStart),this.openEnd>0&&(t.openEnd=this.openEnd),t};O.fromJSON=function(t,r){if(!r)return O.empty;var n=r.openStart||0,o=r.openEnd||0;if(typeof n!="number"||typeof o!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new O(k.fromJSON(t,r.content),n,o)};O.maxOpen=function(t,r){r===void 0&&(r=!0);for(var n=0,o=0,i=t.firstChild;i&&!i.isLeaf&&(r||!i.type.spec.isolating);i=i.firstChild)n++;for(var s=t.lastChild;s&&!s.isLeaf&&(r||!s.type.spec.isolating);s=s.lastChild)o++;return new O(t,n,o)};Object.defineProperties(O.prototype,Zo);function ti(e,t,r){var n=e.findIndex(t),o=n.index,i=n.offset,s=e.maybeChild(o),a=e.findIndex(r),c=a.index,l=a.offset;if(i==t||s.isText){if(l!=r&&!e.child(c).isText)throw new RangeError("Removing non-flat range");return e.cut(0,t).append(e.cut(r))}if(o!=c)throw new RangeError("Removing non-flat range");return e.replaceChild(o,s.copy(ti(s.content,t-i-1,r-i-1)))}function ei(e,t,r,n){var o=e.findIndex(t),i=o.index,s=o.offset,a=e.maybeChild(i);if(s==t||a.isText)return n&&!n.canReplace(i,i,r)?null:e.cut(0,t).append(r).append(e.cut(t));var c=ei(a.content,t-s-1,r);return c&&e.replaceChild(i,a.copy(c))}O.empty=new O(k.empty,0,0);function Mc(e,t,r){if(r.openStart>e.depth)throw new Jt("Inserted content deeper than insertion position");if(e.depth-r.openStart!=t.depth-r.openEnd)throw new Jt("Inconsistent open depths");return ri(e,t,r,0)}function ri(e,t,r,n){var o=e.index(n),i=e.node(n);if(o==t.index(n)&&n=0&&e.isText&&e.sameMarkup(t[r])?t[r]=e.withText(t[r].text+e.text):t.push(e)}function Ue(e,t,r,n){var o=(t||e).node(r),i=0,s=t?t.index(r):o.childCount;e&&(i=e.index(r),e.depth>r?i++:e.textOffset&&(be(e.nodeAfter,n),i++));for(var a=i;ao&&ln(e,t,o+1),s=n.depth>o&&ln(r,n,o+1),a=[];return Ue(null,e,o,a),i&&s&&t.index(o)==r.index(o)?(ni(i,s),be(ke(i,oi(e,t,r,n,o+1)),a)):(i&&be(ke(i,Ar(e,t,o+1)),a),Ue(t,r,o,a),s&&be(ke(s,Ar(r,n,o+1)),a)),Ue(n,null,o,a),new k(a)}function Ar(e,t,r){var n=[];if(Ue(null,e,r,n),e.depth>r){var o=ln(e,t,r+1);be(ke(o,Ar(e,t,r+1)),n)}return Ue(t,null,r,n),new k(n)}function Cc(e,t){for(var r=t.depth-e.openStart,n=t.node(r),o=n.copy(e.content),i=r-1;i>=0;i--)o=t.node(i).copy(k.from(o));return{start:o.resolveNoCache(e.openStart+r),end:o.resolveNoCache(o.content.size-e.openEnd-r)}}var K=function(t,r,n){this.pos=t,this.path=r,this.depth=r.length/3-1,this.parentOffset=n},De={parent:{configurable:!0},doc:{configurable:!0},textOffset:{configurable:!0},nodeAfter:{configurable:!0},nodeBefore:{configurable:!0}};K.prototype.resolveDepth=function(t){return t==null?this.depth:t<0?this.depth+t:t};De.parent.get=function(){return this.node(this.depth)};De.doc.get=function(){return this.node(0)};K.prototype.node=function(t){return this.path[this.resolveDepth(t)*3]};K.prototype.index=function(t){return this.path[this.resolveDepth(t)*3+1]};K.prototype.indexAfter=function(t){return t=this.resolveDepth(t),this.index(t)+(t==this.depth&&!this.textOffset?0:1)};K.prototype.start=function(t){return t=this.resolveDepth(t),t==0?0:this.path[t*3-1]+1};K.prototype.end=function(t){return t=this.resolveDepth(t),this.start(t)+this.node(t).content.size};K.prototype.before=function(t){if(t=this.resolveDepth(t),!t)throw new RangeError("There is no position before the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]};K.prototype.after=function(t){if(t=this.resolveDepth(t),!t)throw new RangeError("There is no position after the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]+this.path[t*3].nodeSize};De.textOffset.get=function(){return this.pos-this.path[this.path.length-1]};De.nodeAfter.get=function(){var e=this.parent,t=this.index(this.depth);if(t==e.childCount)return null;var r=this.pos-this.path[this.path.length-1],n=e.child(t);return r?e.child(t).cut(r):n};De.nodeBefore.get=function(){var e=this.index(this.depth),t=this.pos-this.path[this.path.length-1];return t?this.parent.child(e).cut(0,t):e==0?null:this.parent.child(e-1)};K.prototype.posAtIndex=function(t,r){r=this.resolveDepth(r);for(var n=this.path[r*3],o=r==0?0:this.path[r*3-1]+1,i=0;i0;r--)if(this.start(r)<=t&&this.end(r)>=t)return r;return 0};K.prototype.blockRange=function(t,r){if(t===void 0&&(t=this),t.pos=0;n--)if(t.pos<=this.end(n)&&(!r||r(this.node(n))))return new Ge(this,t,n)};K.prototype.sameParent=function(t){return this.pos-this.parentOffset==t.pos-t.parentOffset};K.prototype.max=function(t){return t.pos>this.pos?t:this};K.prototype.min=function(t){return t.pos=0&&r<=t.content.size))throw new RangeError("Position "+r+" out of range");for(var n=[],o=0,i=r,s=t;;){var a=s.content.findIndex(i),c=a.index,l=a.offset,u=i-l;if(n.push(s,c,o+l),!u||(s=s.child(c),s.isText))break;i=u-1,o+=l+1}return new K(r,n,i)};K.resolveCached=function(t,r){for(var n=0;nt&&this.nodesBetween(t,r,function(i){return n.isInSet(i.marks)&&(o=!0),!o}),o};At.isBlock.get=function(){return this.type.isBlock};At.isTextblock.get=function(){return this.type.isTextblock};At.inlineContent.get=function(){return this.type.inlineContent};At.isInline.get=function(){return this.type.isInline};At.isText.get=function(){return this.type.isText};At.isLeaf.get=function(){return this.type.isLeaf};At.isAtom.get=function(){return this.type.isAtom};P.prototype.toString=function(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);var t=this.type.name;return this.content.size&&(t+="("+this.content.toStringInner()+")"),ii(this.marks,t)};P.prototype.contentMatchAt=function(t){var r=this.type.contentMatch.matchFragment(this.content,0,t);if(!r)throw new Error("Called contentMatchAt on a node with invalid content");return r};P.prototype.canReplace=function(t,r,n,o,i){n===void 0&&(n=k.empty),o===void 0&&(o=0),i===void 0&&(i=n.childCount);var s=this.contentMatchAt(t).matchFragment(n,o,i),a=s&&s.matchFragment(this.content,r);if(!a||!a.validEnd)return!1;for(var c=o;c=0;r--)t=e[r].type.name+"("+t+")";return t}var pt=function(t){this.validEnd=t,this.next=[],this.wrapCache=[]},_r={inlineContent:{configurable:!0},defaultType:{configurable:!0},edgeCount:{configurable:!0}};pt.parse=function(t,r){var n=new Nr(t,r);if(n.next==null)return pt.empty;var o=ai(n);n.next&&n.err("Unexpected trailing text");var i=Ic(Dc(o));return Rc(i,n),i};pt.prototype.matchType=function(t){for(var r=0;r>1};pt.prototype.edge=function(t){var r=t<<1;if(r>=this.next.length)throw new RangeError("There's no "+t+"th edge in this content match");return{type:this.next[r],next:this.next[r+1]}};pt.prototype.toString=function(){var t=[];function r(n){t.push(n);for(var o=1;o"+t.indexOf(n.next[s+1]);return i}).join(` +var nc=Object.defineProperty,oc=Object.defineProperties;var ic=Object.getOwnPropertyDescriptors;var Mr=Object.getOwnPropertySymbols;var Ko=Object.prototype.hasOwnProperty,$o=Object.prototype.propertyIsEnumerable;var Uo=(e,t,r)=>t in e?nc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,S=(e,t)=>{for(var r in t||(t={}))Ko.call(t,r)&&Uo(e,r,t[r]);if(Mr)for(var r of Mr(t))$o.call(t,r)&&Uo(e,r,t[r]);return e},wt=(e,t)=>oc(e,ic(t));var Go=(e,t)=>{var r={};for(var n in e)Ko.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&Mr)for(var n of Mr(e))t.indexOf(n)<0&&$o.call(e,n)&&(r[n]=e[n]);return r};import{bf as sc,a8 as ac,bg as $e,B as Cr,D as sn,b1 as xr,E as ye,bh as cc,a7 as lc,be as uc,u as fc,al as pc,a0 as dc,bi as hc,bj as mc,o as kt,e as Tt,h as _,ai as vc,bk as gc,C as yc,aS as bc,r as ut,l as kc,w as an,f as q,m as V,j as Sc}from"./vendor.01d0adc5.js";import{_ as Dt}from"./main.24f7a84b.js";function ft(e){this.content=e}ft.prototype={constructor:ft,find:function(e){for(var t=0;t>1}};ft.from=function(e){if(e instanceof ft)return e;var t=[];if(e)for(var r in e)t.push(r,e[r]);return new ft(t)};var Yo=ft;function Xo(e,t,r){for(var n=0;;n++){if(n==e.childCount||n==t.childCount)return e.childCount==t.childCount?null:r;var o=e.child(n),i=t.child(n);if(o==i){r+=o.nodeSize;continue}if(!o.sameMarkup(i))return r;if(o.isText&&o.text!=i.text){for(var s=0;o.text[s]==i.text[s];s++)r++;return r}if(o.content.size||i.content.size){var a=Xo(o.content,i.content,r+1);if(a!=null)return a}r+=o.nodeSize}}function Qo(e,t,r,n){for(var o=e.childCount,i=t.childCount;;){if(o==0||i==0)return o==i?null:{a:r,b:n};var s=e.child(--o),a=t.child(--i),c=s.nodeSize;if(s==a){r-=c,n-=c;continue}if(!s.sameMarkup(a))return{a:r,b:n};if(s.isText&&s.text!=a.text){for(var l=0,u=Math.min(s.text.length,a.text.length);lt&&n(c,o+a,i,s)!==!1&&c.content.size){var u=a+1;c.nodesBetween(Math.max(0,t-u),Math.min(c.content.size,r-u),n,o+u)}a=l}};k.prototype.descendants=function(t){this.nodesBetween(0,this.size,t)};k.prototype.textBetween=function(t,r,n,o){var i="",s=!0;return this.nodesBetween(t,r,function(a,c){a.isText?(i+=a.text.slice(Math.max(t,c)-c,r-c),s=!n):a.isLeaf&&o?(i+=o,s=!n):!s&&a.isBlock&&(i+=n,s=!0)},0),i};k.prototype.append=function(t){if(!t.size)return this;if(!this.size)return t;var r=this.lastChild,n=t.firstChild,o=this.content.slice(),i=0;for(r.isText&&r.sameMarkup(n)&&(o[o.length-1]=r.withText(r.text+n.text),i=1);it)for(var i=0,s=0;st&&((sr)&&(a.isText?a=a.cut(Math.max(0,t-s),Math.min(a.text.length,r-s)):a=a.cut(Math.max(0,t-s-1),Math.min(a.content.size,r-s-1))),n.push(a),o+=a.nodeSize),s=c}return new k(n,o)};k.prototype.cutByIndex=function(t,r){return t==r?k.empty:t==0&&r==this.content.length?this:new k(this.content.slice(t,r))};k.prototype.replaceChild=function(t,r){var n=this.content[t];if(n==r)return this;var o=this.content.slice(),i=this.size+r.nodeSize-n.nodeSize;return o[t]=r,new k(o,i)};k.prototype.addToStart=function(t){return new k([t].concat(this.content),this.size+t.nodeSize)};k.prototype.addToEnd=function(t){return new k(this.content.concat(t),this.size+t.nodeSize)};k.prototype.eq=function(t){if(this.content.length!=t.content.length)return!1;for(var r=0;rthis.size||t<0)throw new RangeError("Position "+t+" outside of fragment ("+this+")");for(var n=0,o=0;;n++){var i=this.child(n),s=o+i.nodeSize;if(s>=t)return s==t||r>0?wr(n+1,s):wr(n,o);o=s}};k.prototype.toString=function(){return"<"+this.toStringInner()+">"};k.prototype.toStringInner=function(){return this.content.join(", ")};k.prototype.toJSON=function(){return this.content.length?this.content.map(function(t){return t.toJSON()}):null};k.fromJSON=function(t,r){if(!r)return k.empty;if(!Array.isArray(r))throw new RangeError("Invalid input for Fragment.fromJSON");return new k(r.map(t.nodeFromJSON))};k.fromArray=function(t){if(!t.length)return k.empty;for(var r,n=0,o=0;othis.type.rank&&(r||(r=t.slice(0,o)),r.push(this),n=!0),r&&r.push(i)}}return r||(r=t.slice()),n||r.push(this),r};R.prototype.removeFromSet=function(t){for(var r=0;r0&&(t.openStart=this.openStart),this.openEnd>0&&(t.openEnd=this.openEnd),t};O.fromJSON=function(t,r){if(!r)return O.empty;var n=r.openStart||0,o=r.openEnd||0;if(typeof n!="number"||typeof o!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new O(k.fromJSON(t,r.content),n,o)};O.maxOpen=function(t,r){r===void 0&&(r=!0);for(var n=0,o=0,i=t.firstChild;i&&!i.isLeaf&&(r||!i.type.spec.isolating);i=i.firstChild)n++;for(var s=t.lastChild;s&&!s.isLeaf&&(r||!s.type.spec.isolating);s=s.lastChild)o++;return new O(t,n,o)};Object.defineProperties(O.prototype,Zo);function ti(e,t,r){var n=e.findIndex(t),o=n.index,i=n.offset,s=e.maybeChild(o),a=e.findIndex(r),c=a.index,l=a.offset;if(i==t||s.isText){if(l!=r&&!e.child(c).isText)throw new RangeError("Removing non-flat range");return e.cut(0,t).append(e.cut(r))}if(o!=c)throw new RangeError("Removing non-flat range");return e.replaceChild(o,s.copy(ti(s.content,t-i-1,r-i-1)))}function ei(e,t,r,n){var o=e.findIndex(t),i=o.index,s=o.offset,a=e.maybeChild(i);if(s==t||a.isText)return n&&!n.canReplace(i,i,r)?null:e.cut(0,t).append(r).append(e.cut(t));var c=ei(a.content,t-s-1,r);return c&&e.replaceChild(i,a.copy(c))}O.empty=new O(k.empty,0,0);function Mc(e,t,r){if(r.openStart>e.depth)throw new Jt("Inserted content deeper than insertion position");if(e.depth-r.openStart!=t.depth-r.openEnd)throw new Jt("Inconsistent open depths");return ri(e,t,r,0)}function ri(e,t,r,n){var o=e.index(n),i=e.node(n);if(o==t.index(n)&&n=0&&e.isText&&e.sameMarkup(t[r])?t[r]=e.withText(t[r].text+e.text):t.push(e)}function Ue(e,t,r,n){var o=(t||e).node(r),i=0,s=t?t.index(r):o.childCount;e&&(i=e.index(r),e.depth>r?i++:e.textOffset&&(be(e.nodeAfter,n),i++));for(var a=i;ao&&ln(e,t,o+1),s=n.depth>o&&ln(r,n,o+1),a=[];return Ue(null,e,o,a),i&&s&&t.index(o)==r.index(o)?(ni(i,s),be(ke(i,oi(e,t,r,n,o+1)),a)):(i&&be(ke(i,Ar(e,t,o+1)),a),Ue(t,r,o,a),s&&be(ke(s,Ar(r,n,o+1)),a)),Ue(n,null,o,a),new k(a)}function Ar(e,t,r){var n=[];if(Ue(null,e,r,n),e.depth>r){var o=ln(e,t,r+1);be(ke(o,Ar(e,t,r+1)),n)}return Ue(t,null,r,n),new k(n)}function Cc(e,t){for(var r=t.depth-e.openStart,n=t.node(r),o=n.copy(e.content),i=r-1;i>=0;i--)o=t.node(i).copy(k.from(o));return{start:o.resolveNoCache(e.openStart+r),end:o.resolveNoCache(o.content.size-e.openEnd-r)}}var K=function(t,r,n){this.pos=t,this.path=r,this.depth=r.length/3-1,this.parentOffset=n},De={parent:{configurable:!0},doc:{configurable:!0},textOffset:{configurable:!0},nodeAfter:{configurable:!0},nodeBefore:{configurable:!0}};K.prototype.resolveDepth=function(t){return t==null?this.depth:t<0?this.depth+t:t};De.parent.get=function(){return this.node(this.depth)};De.doc.get=function(){return this.node(0)};K.prototype.node=function(t){return this.path[this.resolveDepth(t)*3]};K.prototype.index=function(t){return this.path[this.resolveDepth(t)*3+1]};K.prototype.indexAfter=function(t){return t=this.resolveDepth(t),this.index(t)+(t==this.depth&&!this.textOffset?0:1)};K.prototype.start=function(t){return t=this.resolveDepth(t),t==0?0:this.path[t*3-1]+1};K.prototype.end=function(t){return t=this.resolveDepth(t),this.start(t)+this.node(t).content.size};K.prototype.before=function(t){if(t=this.resolveDepth(t),!t)throw new RangeError("There is no position before the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]};K.prototype.after=function(t){if(t=this.resolveDepth(t),!t)throw new RangeError("There is no position after the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]+this.path[t*3].nodeSize};De.textOffset.get=function(){return this.pos-this.path[this.path.length-1]};De.nodeAfter.get=function(){var e=this.parent,t=this.index(this.depth);if(t==e.childCount)return null;var r=this.pos-this.path[this.path.length-1],n=e.child(t);return r?e.child(t).cut(r):n};De.nodeBefore.get=function(){var e=this.index(this.depth),t=this.pos-this.path[this.path.length-1];return t?this.parent.child(e).cut(0,t):e==0?null:this.parent.child(e-1)};K.prototype.posAtIndex=function(t,r){r=this.resolveDepth(r);for(var n=this.path[r*3],o=r==0?0:this.path[r*3-1]+1,i=0;i0;r--)if(this.start(r)<=t&&this.end(r)>=t)return r;return 0};K.prototype.blockRange=function(t,r){if(t===void 0&&(t=this),t.pos=0;n--)if(t.pos<=this.end(n)&&(!r||r(this.node(n))))return new Ge(this,t,n)};K.prototype.sameParent=function(t){return this.pos-this.parentOffset==t.pos-t.parentOffset};K.prototype.max=function(t){return t.pos>this.pos?t:this};K.prototype.min=function(t){return t.pos=0&&r<=t.content.size))throw new RangeError("Position "+r+" out of range");for(var n=[],o=0,i=r,s=t;;){var a=s.content.findIndex(i),c=a.index,l=a.offset,u=i-l;if(n.push(s,c,o+l),!u||(s=s.child(c),s.isText))break;i=u-1,o+=l+1}return new K(r,n,i)};K.resolveCached=function(t,r){for(var n=0;nt&&this.nodesBetween(t,r,function(i){return n.isInSet(i.marks)&&(o=!0),!o}),o};At.isBlock.get=function(){return this.type.isBlock};At.isTextblock.get=function(){return this.type.isTextblock};At.inlineContent.get=function(){return this.type.inlineContent};At.isInline.get=function(){return this.type.isInline};At.isText.get=function(){return this.type.isText};At.isLeaf.get=function(){return this.type.isLeaf};At.isAtom.get=function(){return this.type.isAtom};P.prototype.toString=function(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);var t=this.type.name;return this.content.size&&(t+="("+this.content.toStringInner()+")"),ii(this.marks,t)};P.prototype.contentMatchAt=function(t){var r=this.type.contentMatch.matchFragment(this.content,0,t);if(!r)throw new Error("Called contentMatchAt on a node with invalid content");return r};P.prototype.canReplace=function(t,r,n,o,i){n===void 0&&(n=k.empty),o===void 0&&(o=0),i===void 0&&(i=n.childCount);var s=this.contentMatchAt(t).matchFragment(n,o,i),a=s&&s.matchFragment(this.content,r);if(!a||!a.validEnd)return!1;for(var c=o;c=0;r--)t=e[r].type.name+"("+t+")";return t}var pt=function(t){this.validEnd=t,this.next=[],this.wrapCache=[]},_r={inlineContent:{configurable:!0},defaultType:{configurable:!0},edgeCount:{configurable:!0}};pt.parse=function(t,r){var n=new Nr(t,r);if(n.next==null)return pt.empty;var o=ai(n);n.next&&n.err("Unexpected trailing text");var i=Ic(Dc(o));return Rc(i,n),i};pt.prototype.matchType=function(t){for(var r=0;r>1};pt.prototype.edge=function(t){var r=t<<1;if(r>=this.next.length)throw new RangeError("There's no "+t+"th edge in this content match");return{type:this.next[r],next:this.next[r+1]}};pt.prototype.toString=function(){var t=[];function r(n){t.push(n);for(var o=1;o"+t.indexOf(n.next[s+1]);return i}).join(` `)};Object.defineProperties(pt.prototype,_r);pt.empty=new pt(!0);var Nr=function(t,r){this.string=t,this.nodeTypes=r,this.inline=null,this.pos=0,this.tokens=t.split(/\s*(?=\b|\W|$)/),this.tokens[this.tokens.length-1]==""&&this.tokens.pop(),this.tokens[0]==""&&this.tokens.shift()},si={next:{configurable:!0}};si.next.get=function(){return this.tokens[this.pos]};Nr.prototype.eat=function(t){return this.next==t&&(this.pos++||!0)};Nr.prototype.err=function(t){throw new SyntaxError(t+" (in content expression '"+this.string+"')")};Object.defineProperties(Nr.prototype,si);function ai(e){var t=[];do t.push(Tc(e));while(e.eat("|"));return t.length==1?t[0]:{type:"choice",exprs:t}}function Tc(e){var t=[];do t.push(Ac(e));while(e.next&&e.next!=")"&&e.next!="|");return t.length==1?t[0]:{type:"seq",exprs:t}}function Ac(e){for(var t=Ec(e);;)if(e.eat("+"))t={type:"plus",expr:t};else if(e.eat("*"))t={type:"star",expr:t};else if(e.eat("?"))t={type:"opt",expr:t};else if(e.eat("{"))t=_c(e,t);else break;return t}function ci(e){/\D/.test(e.next)&&e.err("Expected number, got '"+e.next+"'");var t=Number(e.next);return e.pos++,t}function _c(e,t){var r=ci(e),n=r;return e.eat(",")&&(e.next!="}"?n=ci(e):n=-1),e.eat("}")||e.err("Unclosed braced range"),{type:"range",min:r,max:n,expr:t}}function Nc(e,t){var r=e.nodeTypes,n=r[t];if(n)return[n];var o=[];for(var i in r){var s=r[i];s.groups.indexOf(t)>-1&&o.push(s)}return o.length==0&&e.err("No node type or group '"+t+"' found"),o}function Ec(e){if(e.eat("(")){var t=ai(e);return e.eat(")")||e.err("Missing closing paren"),t}else if(/\W/.test(e.next))e.err("Unexpected token '"+e.next+"'");else{var r=Nc(e,e.next).map(function(n){return e.inline==null?e.inline=n.isInline:e.inline!=n.isInline&&e.err("Mixing inline and block content"),{type:"name",value:n}});return e.pos++,r.length==1?r[0]:{type:"choice",exprs:r}}}function Dc(e){var t=[[]];return o(i(e,0),r()),t;function r(){return t.push([])-1}function n(s,a,c){var l={term:c,to:a};return t[s].push(l),l}function o(s,a){s.forEach(function(c){return c.to=a})}function i(s,a){if(s.type=="choice")return s.exprs.reduce(function(M,y){return M.concat(i(y,a))},[]);if(s.type=="seq")for(var c=0;;c++){var l=i(s.exprs[c],a);if(c==s.exprs.length-1)return l;o(l,a=r())}else if(s.type=="star"){var u=r();return n(a,u),o(i(s.expr,u),u),[n(u)]}else if(s.type=="plus"){var f=r();return o(i(s.expr,a),f),o(i(s.expr,f),f),[n(f)]}else{if(s.type=="opt")return[n(a)].concat(i(s.expr,a));if(s.type=="range"){for(var p=a,d=0;d-1&&o[p+1];ui(e,f).forEach(function(h){d||o.push(u,d=[]),d.indexOf(h)==-1&&d.push(h)})}})});for(var i=t[n.join(",")]=new pt(n.indexOf(e.length-1)>-1),s=0;s-1};gt.prototype.allowsMarks=function(t){if(this.markSet==null)return!0;for(var r=0;r-1};var Se=function(t){this.spec={};for(var r in t)this.spec[r]=t[r];this.spec.nodes=Yo.from(t.nodes),this.spec.marks=Yo.from(t.marks),this.nodes=gt.compile(this.spec.nodes,this),this.marks=ie.compile(this.spec.marks,this);var n=Object.create(null);for(var o in this.nodes){if(o in this.marks)throw new RangeError(o+" can not be both a node and a mark");var i=this.nodes[o],s=i.spec.content||"",a=i.spec.marks;i.contentMatch=n[s]||(n[s]=pt.parse(s,this.nodes)),i.inlineContent=i.contentMatch.inlineContent,i.markSet=a=="_"?null:a?vi(this,a.split(" ")):a==""||!i.inlineContent?[]:null}for(var c in this.marks){var l=this.marks[c],u=l.spec.excludes;l.excluded=u==null?[l]:u==""?[]:vi(this,u.split(" "))}this.nodeFromJSON=this.nodeFromJSON.bind(this),this.markFromJSON=this.markFromJSON.bind(this),this.topNodeType=this.nodes[this.spec.topNode||"doc"],this.cached=Object.create(null),this.cached.wrappings=Object.create(null)};Se.prototype.node=function(t,r,n,o){if(typeof t=="string")t=this.nodeType(t);else if(t instanceof gt){if(t.schema!=this)throw new RangeError("Node type from different schema used ("+t.name+")")}else throw new RangeError("Invalid node type: "+t);return t.createChecked(r,n,o)};Se.prototype.text=function(t,r){var n=this.nodes.text;return new wc(n,n.defaultAttrs,t,R.setFrom(r))};Se.prototype.mark=function(t,r){return typeof t=="string"&&(t=this.marks[t]),t.create(r)};Se.prototype.nodeFromJSON=function(t){return P.fromJSON(this,t)};Se.prototype.markFromJSON=function(t){return R.fromJSON(this,t)};Se.prototype.nodeType=function(t){var r=this.nodes[t];if(!r)throw new RangeError("Unknown node type: "+t);return r};function vi(e,t){for(var r=[],n=0;n-1)&&r.push(s=c)}if(!s)throw new SyntaxError("Unknown mark type: '"+t[n]+"'")}return r}var Lt=function(t,r){var n=this;this.schema=t,this.rules=r,this.tags=[],this.styles=[],r.forEach(function(o){o.tag?n.tags.push(o):o.style&&n.styles.push(o)}),this.normalizeLists=!this.tags.some(function(o){if(!/^(ul|ol)\b/.test(o.tag)||!o.node)return!1;var i=t.nodes[o.node];return i.contentMatch.matchType(i)})};Lt.prototype.parse=function(t,r){r===void 0&&(r={});var n=new J(this,r,!1);return n.addAll(t,null,r.from,r.to),n.finish()};Lt.prototype.parseSlice=function(t,r){r===void 0&&(r={});var n=new J(this,r,!0);return n.addAll(t,null,r.from,r.to),O.maxOpen(n.finish())};Lt.prototype.matchTag=function(t,r,n){for(var o=n?this.tags.indexOf(n)+1:0;ot.length&&(s.style.charCodeAt(t.length)!=61||s.style.slice(t.length+1)!=r))){if(s.getAttrs){var a=s.getAttrs(r);if(a===!1)continue;s.attrs=a}return s}}};Lt.schemaRules=function(t){var r=[];function n(c){for(var l=c.priority==null?50:c.priority,u=0;u=0;r--)if(t.eq(this.stashMarks[r]))return this.stashMarks.splice(r,1)[0]};Zt.prototype.applyPending=function(t){for(var r=0,n=this.pendingMarks;r=0;o--){var i=this.nodes[o],s=i.findWrapping(t);if(s&&(!r||r.length>s.length)&&(r=s,n=i,!s.length)||i.solid)break}if(!r)return!1;this.sync(n);for(var a=0;athis.open){for(;r>this.open;r--)this.nodes[r-1].content.push(this.nodes[r].finish(t));this.nodes.length=this.open+1}};J.prototype.finish=function(){return this.open=0,this.closeExtra(this.isOpen),this.nodes[0].finish(this.isOpen||this.options.topOpen)};J.prototype.sync=function(t){for(var r=this.open;r>=0;r--)if(this.nodes[r]==t){this.open=r;return}};mn.currentPos.get=function(){this.closeExtra();for(var e=0,t=this.open;t>=0;t--){for(var r=this.nodes[t].content,n=r.length-1;n>=0;n--)e+=r[n].nodeSize;t&&e++}return e};J.prototype.findAtPoint=function(t,r){if(this.find)for(var n=0;n-1)return t.split(/\s*\|\s*/).some(this.matchesContext,this);var n=t.split("/"),o=this.options.context,i=!this.isOpen&&(!o||o.parent.type==this.nodes[0].type),s=-(o?o.depth+1:0)+(i?0:1),a=function(c,l){for(;c>=0;c--){var u=n[c];if(u==""){if(c==n.length-1||c==0)continue;for(;l>=s;l--)if(a(c-1,l))return!0;return!1}else{var f=l>0||l==0&&i?r.nodes[l].type:o&&l>=s?o.node(l-s).type:null;if(!f||f.name!=u&&f.groups.indexOf(u)==-1)return!1;l--}}return!0};return a(n.length-1,this.open)};J.prototype.textblockFromContext=function(){var t=this.options.context;if(t)for(var r=t.depth;r>=0;r--){var n=t.node(r).contentMatchAt(t.indexAfter(r)).defaultType;if(n&&n.isTextblock&&n.defaultAttrs)return n}for(var o in this.parser.schema.nodes){var i=this.parser.schema.nodes[o];if(i.isTextblock&&i.defaultAttrs)return i}};J.prototype.addPendingMark=function(t){var r=Vc(t,this.top.pendingMarks);r&&this.top.stashMarks.push(r),this.top.pendingMarks=t.addToSet(this.top.pendingMarks)};J.prototype.removePendingMark=function(t,r){for(var n=this.open;n>=0;n--){var o=this.nodes[n],i=o.pendingMarks.lastIndexOf(t);if(i>-1)o.pendingMarks=t.removeFromSet(o.pendingMarks);else{o.activeMarks=t.removeFromSet(o.activeMarks);var s=o.popFromStashMark(t);s&&o.type&&o.type.allowsMarkType(s.type)&&(o.activeMarks=s.addToSet(o.activeMarks))}if(o==r)break}};Object.defineProperties(J.prototype,mn);function Bc(e){for(var t=e.firstChild,r=null;t;t=t.nextSibling){var n=t.nodeType==1?t.nodeName.toLowerCase():null;n&&gi.hasOwnProperty(n)&&r?(r.appendChild(t),t=r):n=="li"?r=t:n&&(r=null)}}function zc(e,t){return(e.matches||e.msMatchesSelector||e.webkitMatchesSelector||e.mozMatchesSelector).call(e,t)}function Lc(e){for(var t=/\s*([\w-]+)\s*:\s*([^;]+)/g,r,n=[];r=t.exec(e);)n.push(r[1],r[2].trim());return n}function bi(e){var t={};for(var r in e)t[r]=e[r];return t}function Fc(e,t){var r=t.schema.nodes,n=function(s){var a=r[s];if(!!a.allowsMarkType(e)){var c=[],l=function(u){c.push(u);for(var f=0;f=0;o--){var i=this.serializeMark(t.marks[o],t.isInline,r);i&&((i.contentDOM||i.dom).appendChild(n),n=i.dom)}return n};nt.prototype.serializeMark=function(t,r,n){n===void 0&&(n={});var o=this.marks[t.type.name];return o&&nt.renderSpec(vn(n),o(t,r))};nt.renderSpec=function(t,r,n){if(n===void 0&&(n=null),typeof r=="string")return{dom:t.createTextNode(r)};if(r.nodeType!=null)return{dom:r};if(r.dom&&r.dom.nodeType!=null)return r;var o=r[0],i=o.indexOf(" ");i>0&&(n=o.slice(0,i),o=o.slice(i+1));var s=null,a=n?t.createElementNS(n,o):t.createElement(o),c=r[1],l=1;if(c&&typeof c=="object"&&c.nodeType==null&&!Array.isArray(c)){l=2;for(var u in c)if(c[u]!=null){var f=u.indexOf(" ");f>0?a.setAttributeNS(u.slice(0,f),u.slice(f+1),c[u]):a.setAttribute(u,c[u])}}for(var p=l;pl)throw new RangeError("Content hole must be the only child of its parent node");return{dom:a,contentDOM:a}}else{var h=nt.renderSpec(t,d,n),v=h.dom,g=h.contentDOM;if(a.appendChild(v),g){if(s)throw new RangeError("Multiple content holes");s=g}}}return{dom:a,contentDOM:s}};nt.fromSchema=function(t){return t.cached.domSerializer||(t.cached.domSerializer=new nt(this.nodesFromSchema(t),this.marksFromSchema(t)))};nt.nodesFromSchema=function(t){var r=ki(t.nodes);return r.text||(r.text=function(n){return n.text}),r};nt.marksFromSchema=function(t){return ki(t.marks)};function ki(e){var t={};for(var r in e){var n=e[r].spec.toDOM;n&&(t[r]=n)}return t}function vn(e){return e.document||window.document}var Si=65535,Mi=Math.pow(2,16);function Hc(e,t){return e+t*Mi}function Ci(e){return e&Si}function jc(e){return(e-(e&Si))/Mi}var gn=function(t,r,n){r===void 0&&(r=!1),n===void 0&&(n=null),this.pos=t,this.deleted=r,this.recover=n},ot=function(t,r){r===void 0&&(r=!1),this.ranges=t,this.inverted=r};ot.prototype.recover=function(t){var r=0,n=Ci(t);if(!this.inverted)for(var o=0;ot)break;var l=this.ranges[a+i],u=this.ranges[a+s],f=c+l;if(t<=f){var p=l?t==c?-1:t==f?1:r:r,d=c+o+(p<0?0:u);if(n)return d;var h=t==(r<0?c:f)?null:Hc(a/3,t-c);return new gn(d,r<0?t!=c:t!=f,h)}o+=u-l}return n?t+o:new gn(t+o)};ot.prototype.touches=function(t,r){for(var n=0,o=Ci(r),i=this.inverted?2:1,s=this.inverted?1:2,a=0;at)break;var l=this.ranges[a+i],u=c+l;if(t<=u&&a==o*3)return!0;n+=this.ranges[a+s]-l}return!1};ot.prototype.forEach=function(t){for(var r=this.inverted?2:1,n=this.inverted?1:2,o=0,i=0;o=0;r--){var o=t.getMirror(r);this.appendMap(t.maps[r].invert(),o!=null&&o>r?n-o-1:null)}};dt.prototype.invert=function(){var t=new dt;return t.appendMappingInverted(this),t};dt.prototype.map=function(t,r){if(r===void 0&&(r=1),this.mirror)return this._map(t,r,!0);for(var n=this.from;ni&&c0};X.prototype.addStep=function(t,r){this.docs.push(this.doc),this.steps.push(t),this.mapping.appendMap(t.getMap()),this.doc=r};Object.defineProperties(X.prototype,yn);function Er(){throw new Error("Override me")}var bn=Object.create(null),ht=function(){};ht.prototype.apply=function(t){return Er()};ht.prototype.getMap=function(){return ot.empty};ht.prototype.invert=function(t){return Er()};ht.prototype.map=function(t){return Er()};ht.prototype.merge=function(t){return null};ht.prototype.toJSON=function(){return Er()};ht.fromJSON=function(t,r){if(!r||!r.stepType)throw new RangeError("Invalid input for Step.fromJSON");var n=bn[r.stepType];if(!n)throw new RangeError("No step type "+r.stepType+" defined");return n.fromJSON(t,r)};ht.jsonID=function(t,r){if(t in bn)throw new RangeError("Duplicate use of step JSON ID "+t);return bn[t]=r,r.prototype.jsonID=t,r};var yt=function(t,r){this.doc=t,this.failed=r};yt.ok=function(t){return new yt(t,null)};yt.fail=function(t){return new yt(null,t)};yt.fromReplace=function(t,r,n,o){try{return yt.ok(t.replace(r,n,o))}catch(i){if(i instanceof Jt)return yt.fail(i.message);throw i}};var te=function(e){function t(r,n,o,i){e.call(this),this.from=r,this.to=n,this.slice=o,this.structure=!!i}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.apply=function(n){return this.structure&&kn(n,this.from,this.to)?yt.fail("Structure replace would overwrite content"):yt.fromReplace(n,this.from,this.to,this.slice)},t.prototype.getMap=function(){return new ot([this.from,this.to-this.from,this.slice.size])},t.prototype.invert=function(n){return new t(this.from,this.from+this.slice.size,n.slice(this.from,this.to))},t.prototype.map=function(n){var o=n.mapResult(this.from,1),i=n.mapResult(this.to,-1);return o.deleted&&i.deleted?null:new t(o.pos,Math.max(o.pos,i.pos),this.slice)},t.prototype.merge=function(n){if(!(n instanceof t)||n.structure||this.structure)return null;if(this.from+this.slice.size==n.from&&!this.slice.openEnd&&!n.slice.openStart){var o=this.slice.size+n.slice.size==0?O.empty:new O(this.slice.content.append(n.slice.content),this.slice.openStart,n.slice.openEnd);return new t(this.from,this.to+(n.to-n.from),o,this.structure)}else if(n.to==this.from&&!this.slice.openStart&&!n.slice.openEnd){var i=this.slice.size+n.slice.size==0?O.empty:new O(n.slice.content.append(this.slice.content),n.slice.openStart,this.slice.openEnd);return new t(n.from,this.to,i,this.structure)}else return null},t.prototype.toJSON=function(){var n={stepType:"replace",from:this.from,to:this.to};return this.slice.size&&(n.slice=this.slice.toJSON()),this.structure&&(n.structure=!0),n},t.fromJSON=function(n,o){if(typeof o.from!="number"||typeof o.to!="number")throw new RangeError("Invalid input for ReplaceStep.fromJSON");return new t(o.from,o.to,O.fromJSON(n,o.slice),!!o.structure)},t}(ht);ht.jsonID("replace",te);var St=function(e){function t(r,n,o,i,s,a,c){e.call(this),this.from=r,this.to=n,this.gapFrom=o,this.gapTo=i,this.slice=s,this.insert=a,this.structure=!!c}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.apply=function(n){if(this.structure&&(kn(n,this.from,this.gapFrom)||kn(n,this.gapTo,this.to)))return yt.fail("Structure gap-replace would overwrite content");var o=n.slice(this.gapFrom,this.gapTo);if(o.openStart||o.openEnd)return yt.fail("Gap is not a flat range");var i=this.slice.insertAt(this.insert,o.content);return i?yt.fromReplace(n,this.from,this.to,i):yt.fail("Content does not fit in gap")},t.prototype.getMap=function(){return new ot([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])},t.prototype.invert=function(n){var o=this.gapTo-this.gapFrom;return new t(this.from,this.from+this.slice.size+o,this.from+this.insert,this.from+this.insert+o,n.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)},t.prototype.map=function(n){var o=n.mapResult(this.from,1),i=n.mapResult(this.to,-1),s=n.map(this.gapFrom,-1),a=n.map(this.gapTo,1);return o.deleted&&i.deleted||si.pos?null:new t(o.pos,i.pos,s,a,this.slice,this.insert,this.structure)},t.prototype.toJSON=function(){var n={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(n.slice=this.slice.toJSON()),this.structure&&(n.structure=!0),n},t.fromJSON=function(n,o){if(typeof o.from!="number"||typeof o.to!="number"||typeof o.gapFrom!="number"||typeof o.gapTo!="number"||typeof o.insert!="number")throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new t(o.from,o.to,o.gapFrom,o.gapTo,O.fromJSON(n,o.slice),o.insert,!!o.structure)},t}(ht);ht.jsonID("replaceAround",St);function kn(e,t,r){for(var n=e.resolve(t),o=r-t,i=n.depth;o>0&&i>0&&n.indexAfter(i)==n.node(i).childCount;)i--,o--;if(o>0)for(var s=n.node(i).maybeChild(n.indexAfter(i));o>0;){if(!s||s.isLeaf)return!0;s=s.firstChild,o--}return!1}function qc(e,t,r){return(t==0||e.canReplace(t,e.childCount))&&(r==e.childCount||e.canReplace(0,r))}function Pe(e){for(var t=e.parent,r=t.content.cutByIndex(e.startIndex,e.endIndex),n=e.depth;;--n){var o=e.$from.node(n),i=e.$from.index(n),s=e.$to.indexAfter(n);if(nt;f--)p||r.index(f)>0?(p=!0,l=k.from(r.node(f).copy(l)),u++):a--;for(var d=k.empty,h=0,v=o,g=!1;v>t;v--)g||n.after(v+1)=0;n--)r=k.from(t[n].type.create(t[n].attrs,r));var o=e.start,i=e.end;return this.step(new St(o,i,o,i,new O(r,0,0),t.length,!0))};X.prototype.setBlockType=function(e,t,r,n){var o=this;if(t===void 0&&(t=e),!r.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");var i=this.steps.length;return this.doc.nodesBetween(e,t,function(s,a){if(s.isTextblock&&!s.hasMarkup(r,n)&&Kc(o.doc,o.mapping.slice(i).map(a),r)){o.clearIncompatible(o.mapping.slice(i).map(a,1),r);var c=o.mapping.slice(i),l=c.map(a,1),u=c.map(a+s.nodeSize,1);return o.step(new St(l,u,l+1,u-1,new O(k.from(r.create(n,null,s.marks)),0,0),1,!0)),!1}}),this};function Kc(e,t,r){var n=e.resolve(t),o=n.index();return n.parent.canReplaceWith(o,o+1,r)}X.prototype.setNodeMarkup=function(e,t,r,n){var o=this.doc.nodeAt(e);if(!o)throw new RangeError("No node at given position");t||(t=o.type);var i=t.create(r,null,n||o.marks);if(o.isLeaf)return this.replaceWith(e,e+o.nodeSize,i);if(!t.validContent(o.content))throw new RangeError("Invalid content for node type "+t.name);return this.step(new St(e,e+o.nodeSize,e+1,e+o.nodeSize-1,new O(k.from(i),0,0),1,!0))};function ee(e,t,r,n){r===void 0&&(r=1);var o=e.resolve(t),i=o.depth-r,s=n&&n[n.length-1]||o.parent;if(i<0||o.parent.type.spec.isolating||!o.parent.canReplace(o.index(),o.parent.childCount)||!s.type.validContent(o.parent.content.cutByIndex(o.index(),o.parent.childCount)))return!1;for(var a=o.depth-1,c=r-2;a>i;a--,c--){var l=o.node(a),u=o.index(a);if(l.type.spec.isolating)return!1;var f=l.content.cutByIndex(u,l.childCount),p=n&&n[c]||l;if(p!=l&&(f=f.replaceChild(0,p.type.create(p.attrs))),!l.canReplace(u+1,l.childCount)||!p.type.validContent(f))return!1}var d=o.indexAfter(i),h=n&&n[0];return o.node(i).canReplaceWith(d,d,h?h.type:o.node(i+1).type)}X.prototype.split=function(e,t,r){t===void 0&&(t=1);for(var n=this.doc.resolve(e),o=k.empty,i=k.empty,s=n.depth,a=n.depth-t,c=t-1;s>a;s--,c--){o=k.from(n.node(s).copy(o));var l=r&&r[c];i=k.from(l?l.type.create(l.attrs,i):n.node(s).copy(i))}return this.step(new te(e,e,new O(o.append(i),t,t),!0))};function Mn(e,t){var r=e.resolve(t),n=r.index();return $c(r.nodeBefore,r.nodeAfter)&&r.parent.canReplace(n,n+1)}function $c(e,t){return e&&t&&!e.isLeaf&&e.canAppend(t)}X.prototype.join=function(e,t){t===void 0&&(t=1);var r=new te(e-t,e+t,O.empty,!0);return this.step(r)};function Uc(e,t,r){var n=e.resolve(t);if(n.parent.canReplaceWith(n.index(),n.index(),r))return t;if(n.parentOffset==0)for(var o=n.depth-1;o>=0;o--){var i=n.index(o);if(n.node(o).canReplaceWith(i,i,r))return n.before(o+1);if(i>0)return null}if(n.parentOffset==n.parent.content.size)for(var s=n.depth-1;s>=0;s--){var a=n.indexAfter(s);if(n.node(s).canReplaceWith(a,a,r))return n.after(s+1);if(a=0;a--){var c=a==n.depth?0:n.pos<=(n.start(a+1)+n.end(a+1))/2?-1:1,l=n.index(a)+(c>0?1:0),u=n.node(a),f=!1;if(s==1)f=u.canReplace(l,l,o);else{var p=u.contentMatchAt(l).findWrapping(o.firstChild.type);f=p&&u.canReplaceWith(l,l,p[0])}if(f)return c==0?n.pos:c<0?n.before(a+1):n.after(a+1)}return null}function Cn(e,t,r){for(var n=[],o=0;o=i.pos?null:new t(o.pos,i.pos,this.mark)},t.prototype.merge=function(n){if(n instanceof t&&n.mark.eq(this.mark)&&this.from<=n.to&&this.to>=n.from)return new t(Math.min(this.from,n.from),Math.max(this.to,n.to),this.mark)},t.prototype.toJSON=function(){return{stepType:"addMark",mark:this.mark.toJSON(),from:this.from,to:this.to}},t.fromJSON=function(n,o){if(typeof o.from!="number"||typeof o.to!="number")throw new RangeError("Invalid input for AddMarkStep.fromJSON");return new t(o.from,o.to,n.markFromJSON(o.mark))},t}(ht);ht.jsonID("addMark",xn);var Qe=function(e){function t(r,n,o){e.call(this),this.from=r,this.to=n,this.mark=o}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.apply=function(n){var o=this,i=n.slice(this.from,this.to),s=new O(Cn(i.content,function(a){return a.mark(o.mark.removeFromSet(a.marks))}),i.openStart,i.openEnd);return yt.fromReplace(n,this.from,this.to,s)},t.prototype.invert=function(){return new xn(this.from,this.to,this.mark)},t.prototype.map=function(n){var o=n.mapResult(this.from,1),i=n.mapResult(this.to,-1);return o.deleted&&i.deleted||o.pos>=i.pos?null:new t(o.pos,i.pos,this.mark)},t.prototype.merge=function(n){if(n instanceof t&&n.mark.eq(this.mark)&&this.from<=n.to&&this.to>=n.from)return new t(Math.min(this.from,n.from),Math.max(this.to,n.to),this.mark)},t.prototype.toJSON=function(){return{stepType:"removeMark",mark:this.mark.toJSON(),from:this.from,to:this.to}},t.fromJSON=function(n,o){if(typeof o.from!="number"||typeof o.to!="number")throw new RangeError("Invalid input for RemoveMarkStep.fromJSON");return new t(o.from,o.to,n.markFromJSON(o.mark))},t}(ht);ht.jsonID("removeMark",Qe);X.prototype.addMark=function(e,t,r){var n=this,o=[],i=[],s=null,a=null;return this.doc.nodesBetween(e,t,function(c,l,u){if(!!c.isInline){var f=c.marks;if(!r.isInSet(f)&&u.type.allowsMarkType(r.type)){for(var p=Math.max(l,e),d=Math.min(l+c.nodeSize,t),h=r.addToSet(f),v=0;v=0;p--)this.step(o[p]);return this};function Gc(e,t,r,n){if(r===void 0&&(r=t),n===void 0&&(n=O.empty),t==r&&!n.size)return null;var o=e.resolve(t),i=e.resolve(r);return wi(o,i,n)?new te(t,r,n):new It(o,i,n).fit()}X.prototype.replace=function(e,t,r){t===void 0&&(t=e),r===void 0&&(r=O.empty);var n=Gc(this.doc,e,t,r);return n&&this.step(n),this};X.prototype.replaceWith=function(e,t,r){return this.replace(e,t,new O(k.from(r),0,0))};X.prototype.delete=function(e,t){return this.replace(e,t,O.empty)};X.prototype.insert=function(e,t){return this.replaceWith(e,e,t)};function wi(e,t,r){return!r.openStart&&!r.openEnd&&e.start()==t.start()&&e.parent.canReplace(e.index(),t.index(),r.content)}var It=function(t,r,n){this.$to=r,this.$from=t,this.unplaced=n,this.frontier=[];for(var o=0;o<=t.depth;o++){var i=t.node(o);this.frontier.push({type:i.type,match:i.contentMatchAt(t.indexAfter(o))})}this.placed=k.empty;for(var s=t.depth;s>0;s--)this.placed=k.from(t.node(s).copy(this.placed))},Ti={depth:{configurable:!0}};Ti.depth.get=function(){return this.frontier.length-1};It.prototype.fit=function(){for(;this.unplaced.size;){var t=this.findFittable();t?this.placeNodes(t):this.openMore()||this.dropNode()}var r=this.mustMoveInline(),n=this.placed.size-this.depth-this.$from.depth,o=this.$from,i=this.close(r<0?this.$to:o.doc.resolve(r));if(!i)return null;for(var s=this.placed,a=o.depth,c=i.depth;a&&c&&s.childCount==1;)s=s.firstChild.content,a--,c--;var l=new O(s,a,c);if(r>-1)return new St(o.pos,r,this.$to.pos,this.$to.end(),l,n);if(l.size||o.pos!=this.$to.pos)return new te(o.pos,i.pos,l)};It.prototype.findFittable=function(){for(var t=1;t<=2;t++)for(var r=this.unplaced.openStart;r>=0;r--){var n=void 0,o=void 0;r?(o=On(this.unplaced.content,r-1).firstChild,n=o.content):n=this.unplaced.content;for(var i=n.firstChild,s=this.depth;s>=0;s--){var a=this.frontier[s],c=a.type,l=a.match,u=void 0,f=void 0;if(t==1&&(i?l.matchType(i.type)||(f=l.fillBefore(k.from(i),!1)):c.compatibleContent(o.type)))return{sliceDepth:r,frontierDepth:s,parent:o,inject:f};if(t==2&&i&&(u=l.findWrapping(i.type)))return{sliceDepth:r,frontierDepth:s,parent:o,wrap:u};if(o&&l.matchType(o.type))break}}};It.prototype.openMore=function(){var t=this.unplaced,r=t.content,n=t.openStart,o=t.openEnd,i=On(r,n);return!i.childCount||i.firstChild.isLeaf?!1:(this.unplaced=new O(r,n+1,Math.max(o,i.size+n>=r.size-o?n+1:0)),!0)};It.prototype.dropNode=function(){var t=this.unplaced,r=t.content,n=t.openStart,o=t.openEnd,i=On(r,n);if(i.childCount<=1&&n>0){var s=r.size-n<=n+i.size;this.unplaced=new O(Ze(r,n-1,1),n-1,s?n-1:o)}else this.unplaced=new O(Ze(r,n,1),n,o)};It.prototype.placeNodes=function(t){for(var r=t.sliceDepth,n=t.frontierDepth,o=t.parent,i=t.inject,s=t.wrap;this.depth>n;)this.closeFrontierNode();if(s)for(var a=0;a1||u==0||y.content.size)&&(h=I,p.push(Ai(y.mark(v.allowedMarks(y.marks)),f==1?u:0,f==l.childCount?M:-1)))}var m=f==l.childCount;m||(M=-1),this.placed=tr(this.placed,n,k.from(p)),this.frontier[n].match=h,m&&M<0&&o&&o.type==this.frontier[this.depth].type&&this.frontier.length>1&&this.closeFrontierNode();for(var D=0,x=l;D1&&i==this.$to.end(--o);)++i;return i};It.prototype.findCloseLevel=function(t){t:for(var r=Math.min(this.depth,t.depth);r>=0;r--){var n=this.frontier[r],o=n.match,i=n.type,s=r=0;c--){var l=this.frontier[c],u=l.match,f=l.type,p=wn(t,c,f,u,!0);if(!p||p.childCount)continue t}return{depth:r,fit:a,move:s?t.doc.resolve(t.after(r+1)):t}}}};It.prototype.close=function(t){var r=this.findCloseLevel(t);if(!r)return null;for(;this.depth>r.depth;)this.closeFrontierNode();r.fit.childCount&&(this.placed=tr(this.placed,r.depth,r.fit)),t=r.move;for(var n=r.depth+1;n<=t.depth;n++){var o=t.node(n),i=o.type.contentMatch.fillBefore(o.content,!0,t.index(n));this.openFrontierNode(o.type,o.attrs,i)}return t};It.prototype.openFrontierNode=function(t,r,n){var o=this.frontier[this.depth];o.match=o.match.matchType(t),this.placed=tr(this.placed,this.depth,k.from(t.create(r,n))),this.frontier.push({type:t,match:t.contentMatch})};It.prototype.closeFrontierNode=function(){var t=this.frontier.pop(),r=t.match.fillBefore(k.empty,!0);r.childCount&&(this.placed=tr(this.placed,this.frontier.length,r))};Object.defineProperties(It.prototype,Ti);function Ze(e,t,r){return t==0?e.cutByIndex(r):e.replaceChild(0,e.firstChild.copy(Ze(e.firstChild.content,t-1,r)))}function tr(e,t,r){return t==0?e.append(r):e.replaceChild(e.childCount-1,e.lastChild.copy(tr(e.lastChild.content,t-1,r)))}function On(e,t){for(var r=0;r1&&(n=n.replaceChild(0,Ai(n.firstChild,t-1,n.childCount==1?r-1:0))),t>0&&(n=e.type.contentMatch.fillBefore(n).append(n),r<=0&&(n=n.append(e.type.contentMatch.matchFragment(n).fillBefore(k.empty,!0)))),e.copy(n)}function wn(e,t,r,n,o){var i=e.node(t),s=o?e.indexAfter(t):e.index(t);if(s==i.childCount&&!r.compatibleContent(i.type))return null;var a=n.fillBefore(i.content,!0,s);return a&&!Yc(r,i.content,s)?a:null}function Yc(e,t,r){for(var n=r;n0;a--,c--){var l=n.node(a).type.spec;if(l.defining||l.isolating)break;i.indexOf(a)>-1?s=a:n.before(a)==c&&i.splice(1,0,-a)}for(var u=i.indexOf(s),f=[],p=r.openStart,d=r.content,h=0;;h++){var v=d.firstChild;if(f.push(v),h==r.openStart)break;d=v.content}p>0&&f[p-1].type.spec.defining&&n.node(u).type!=f[p-1].type?p-=1:p>=2&&f[p-1].isTextblock&&f[p-2].type.spec.defining&&n.node(u).type!=f[p-2].type&&(p-=2);for(var g=r.openStart;g>=0;g--){var M=(g+p+1)%(r.openStart+1),y=f[M];if(!!y)for(var I=0;I=0&&(this.replace(e,t,r),!(this.steps.length>W));$--){var U=i[$];U<0||(e=n.before(U),t=o.after(U))}return this};function _i(e,t,r,n,o){if(tn){var s=o.contentMatchAt(0),a=s.fillBefore(e).append(e);e=a.append(s.matchFragment(a).fillBefore(k.empty,!0))}return e}X.prototype.replaceRangeWith=function(e,t,r){if(!r.isInline&&e==t&&this.doc.resolve(e).parent.content.size){var n=Uc(this.doc,e,r.type);n!=null&&(e=t=n)}return this.replaceRange(e,t,new O(k.from(r),0,0))};X.prototype.deleteRange=function(e,t){for(var r=this.doc.resolve(e),n=this.doc.resolve(t),o=Ni(r,n),i=0;i0&&(a||r.node(s-1).canReplace(r.index(s-1),n.indexAfter(s-1))))return this.delete(r.before(s),n.after(s))}for(var c=1;c<=r.depth&&c<=n.depth;c++)if(e-r.start(c)==r.depth-c&&t>r.end(c)&&n.end(c)-t!=n.depth-c)return this.delete(r.before(c),t);return this.delete(e,t)};function Ni(e,t){for(var r=[],n=Math.min(e.depth,t.depth),o=n;o>=0;o--){var i=e.start(o);if(it.pos+(t.depth-o)||e.node(o).type.spec.isolating||t.node(o).type.spec.isolating)break;i==t.start(o)&&r.push(o)}return r}var Tn=Object.create(null),E=function(t,r,n){this.ranges=n||[new Xc(t.min(r),t.max(r))],this.$anchor=t,this.$head=r},se={anchor:{configurable:!0},head:{configurable:!0},from:{configurable:!0},to:{configurable:!0},$from:{configurable:!0},$to:{configurable:!0},empty:{configurable:!0}};se.anchor.get=function(){return this.$anchor.pos};se.head.get=function(){return this.$head.pos};se.from.get=function(){return this.$from.pos};se.to.get=function(){return this.$to.pos};se.$from.get=function(){return this.ranges[0].$from};se.$to.get=function(){return this.ranges[0].$to};se.empty.get=function(){for(var e=this.ranges,t=0;t=0;i--){var s=r<0?Be(t.node(0),t.node(i),t.before(i+1),t.index(i),r,n):Be(t.node(0),t.node(i),t.after(i+1),t.index(i)+1,r,n);if(s)return s}};E.near=function(t,r){return r===void 0&&(r=1),this.findFrom(t,r)||this.findFrom(t,-r)||new re(t.node(0))};E.atStart=function(t){return Be(t,t,0,0,1)||new re(t)};E.atEnd=function(t){return Be(t,t,t.content.size,t.childCount,-1)||new re(t)};E.fromJSON=function(t,r){if(!r||!r.type)throw new RangeError("Invalid input for Selection.fromJSON");var n=Tn[r.type];if(!n)throw new RangeError("No selection type "+r.type+" defined");return n.fromJSON(t,r)};E.jsonID=function(t,r){if(t in Tn)throw new RangeError("Duplicate use of selection JSON ID "+t);return Tn[t]=r,r.prototype.jsonID=t,r};E.prototype.getBookmark=function(){return z.between(this.$anchor,this.$head).getBookmark()};Object.defineProperties(E.prototype,se);E.prototype.visible=!0;var Xc=function(t,r){this.$from=t,this.$to=r},z=function(e){function t(n,o){o===void 0&&(o=n),e.call(this,n,o)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var r={$cursor:{configurable:!0}};return r.$cursor.get=function(){return this.$anchor.pos==this.$head.pos?this.$head:null},t.prototype.map=function(o,i){var s=o.resolve(i.map(this.head));if(!s.parent.inlineContent)return e.near(s);var a=o.resolve(i.map(this.anchor));return new t(a.parent.inlineContent?a:s,s)},t.prototype.replace=function(o,i){if(i===void 0&&(i=O.empty),e.prototype.replace.call(this,o,i),i==O.empty){var s=this.$from.marksAcross(this.$to);s&&o.ensureMarks(s)}},t.prototype.eq=function(o){return o instanceof t&&o.anchor==this.anchor&&o.head==this.head},t.prototype.getBookmark=function(){return new er(this.anchor,this.head)},t.prototype.toJSON=function(){return{type:"text",anchor:this.anchor,head:this.head}},t.fromJSON=function(o,i){if(typeof i.anchor!="number"||typeof i.head!="number")throw new RangeError("Invalid input for TextSelection.fromJSON");return new t(o.resolve(i.anchor),o.resolve(i.head))},t.create=function(o,i,s){s===void 0&&(s=i);var a=o.resolve(i);return new this(a,s==i?a:o.resolve(s))},t.between=function(o,i,s){var a=o.pos-i.pos;if((!s||a)&&(s=a>=0?1:-1),!i.parent.inlineContent){var c=e.findFrom(i,s,!0)||e.findFrom(i,-s,!0);if(c)i=c.$head;else return e.near(i,s)}return o.parent.inlineContent||(a==0?o=i:(o=(e.findFrom(o,-s,!0)||e.findFrom(o,s,!0)).$anchor,o.pos0?0:1);o>0?s=0;s+=o){var a=t.child(s);if(a.isAtom){if(!i&&N.isSelectable(a))return N.create(e,r-(o<0?a.nodeSize:0))}else{var c=Be(e,a,r+o,o<0?a.childCount:0,o,i);if(c)return c}r+=a.nodeSize*o}}function Ei(e,t,r){var n=e.steps.length-1;if(!(n0},t.prototype.setStoredMarks=function(o){return this.storedMarks=o,this.updated|=Ir,this},t.prototype.ensureMarks=function(o){return R.sameSet(this.storedMarks||this.selection.$from.marks(),o)||this.setStoredMarks(o),this},t.prototype.addStoredMark=function(o){return this.ensureMarks(o.addToSet(this.storedMarks||this.selection.$head.marks()))},t.prototype.removeStoredMark=function(o){return this.ensureMarks(o.removeFromSet(this.storedMarks||this.selection.$head.marks()))},r.storedMarksSet.get=function(){return(this.updated&Ir)>0},t.prototype.addStep=function(o,i){e.prototype.addStep.call(this,o,i),this.updated=this.updated&~Ir,this.storedMarks=null},t.prototype.setTime=function(o){return this.time=o,this},t.prototype.replaceSelection=function(o){return this.selection.replace(this,o),this},t.prototype.replaceSelectionWith=function(o,i){var s=this.selection;return i!==!1&&(o=o.mark(this.storedMarks||(s.empty?s.$from.marks():s.$from.marksAcross(s.$to)||R.none))),s.replaceWith(this,o),this},t.prototype.deleteSelection=function(){return this.selection.replace(this),this},t.prototype.insertText=function(o,i,s){s===void 0&&(s=i);var a=this.doc.type.schema;if(i==null)return o?this.replaceSelectionWith(a.text(o),!0):this.deleteSelection();if(!o)return this.deleteRange(i,s);var c=this.storedMarks;if(!c){var l=this.doc.resolve(i);c=s==i?l.marks():l.marksAcross(this.doc.resolve(s))}return this.replaceRangeWith(i,s,a.text(o,c)),this.selection.empty||this.setSelection(E.near(this.selection.$to)),this},t.prototype.setMeta=function(o,i){return this.meta[typeof o=="string"?o:o.key]=i,this},t.prototype.getMeta=function(o){return this.meta[typeof o=="string"?o:o.key]},r.isGeneric.get=function(){for(var n in this.meta)return!1;return!0},t.prototype.scrollIntoView=function(){return this.updated|=Ii,this},r.scrolledIntoView.get=function(){return(this.updated&Ii)>0},Object.defineProperties(t.prototype,r),t}(X);function Ri(e,t){return!t||!e?e:e.bind(t)}var rr=function(t,r,n){this.name=t,this.init=Ri(r.init,n),this.apply=Ri(r.apply,n)},tl=[new rr("doc",{init:function(t){return t.doc||t.schema.topNodeType.createAndFill()},apply:function(t){return t.doc}}),new rr("selection",{init:function(t,r){return t.selection||E.atStart(r.doc)},apply:function(t){return t.selection}}),new rr("storedMarks",{init:function(t){return t.storedMarks||null},apply:function(t,r,n,o){return o.selection.$cursor?t.storedMarks:null}}),new rr("scrollToSelection",{init:function(){return 0},apply:function(t,r){return t.scrolledIntoView?r+1:r}})],An=function(t,r){var n=this;this.schema=t,this.fields=tl.concat(),this.plugins=[],this.pluginsByKey=Object.create(null),r&&r.forEach(function(o){if(n.pluginsByKey[o.key])throw new RangeError("Adding different instances of a keyed plugin ("+o.key+")");n.plugins.push(o),n.pluginsByKey[o.key]=o,o.spec.state&&n.fields.push(new rr(o.key,o.spec.state,o))})},mt=function(t){this.config=t},Rr={schema:{configurable:!0},plugins:{configurable:!0},tr:{configurable:!0}};Rr.schema.get=function(){return this.config.schema};Rr.plugins.get=function(){return this.config.plugins};mt.prototype.apply=function(t){return this.applyTransaction(t).state};mt.prototype.filterTransaction=function(t,r){r===void 0&&(r=-1);for(var n=0;n-1&&nr.splice(r,1)};Object.defineProperties(mt.prototype,Rr);var nr=[];function Pi(e,t,r){for(var n in e){var o=e[n];o instanceof Function?o=o.bind(t):n=="handleDOMEvents"&&(o=Pi(o,t,{})),r[n]=o}return r}var Rt=function(t){this.props={},t.props&&Pi(t.props,this,this.props),this.spec=t,this.key=t.key?t.key.key:Bi("plugin")};Rt.prototype.getState=function(t){return t[this.key]};var _n=Object.create(null);function Bi(e){return e in _n?e+"$"+ ++_n[e]:(_n[e]=0,e+"$")}var Wt=function(t){t===void 0&&(t="key"),this.key=Bi(t)};Wt.prototype.get=function(t){return t.config.pluginsByKey[this.key]};Wt.prototype.getState=function(t){return t[this.key]};var C={};if(typeof navigator!="undefined"&&typeof document!="undefined"){var Nn=/Edge\/(\d+)/.exec(navigator.userAgent),zi=/MSIE \d/.test(navigator.userAgent),En=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);C.mac=/Mac/.test(navigator.platform);var Dn=C.ie=!!(zi||En||Nn);C.ie_version=zi?document.documentMode||6:En?+En[1]:Nn?+Nn[1]:null,C.gecko=!Dn&&/gecko\/(\d+)/i.test(navigator.userAgent),C.gecko_version=C.gecko&&+(/Firefox\/(\d+)/.exec(navigator.userAgent)||[0,0])[1];var In=!Dn&&/Chrome\/(\d+)/.exec(navigator.userAgent);C.chrome=!!In,C.chrome_version=In&&+In[1],C.safari=!Dn&&/Apple Computer/.test(navigator.vendor),C.ios=C.safari&&(/Mobile\/\w+/.test(navigator.userAgent)||navigator.maxTouchPoints>2),C.android=/Android \d/.test(navigator.userAgent),C.webkit="webkitFontSmoothing"in document.documentElement.style,C.webkit_version=C.webkit&&+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]}var Pt=function(e){for(var t=0;;t++)if(e=e.previousSibling,!e)return t},Rn=function(e){var t=e.assignedSlot||e.parentNode;return t&&t.nodeType==11?t.host:t},Li=null,ne=function(e,t,r){var n=Li||(Li=document.createRange());return n.setEnd(e,r==null?e.nodeValue.length:r),n.setStart(e,t||0),n},Pr=function(e,t,r,n){return r&&(Fi(e,t,r,n,-1)||Fi(e,t,r,n,1))},el=/^(img|br|input|textarea|hr)$/i;function Fi(e,t,r,n,o){for(;;){if(e==r&&t==n)return!0;if(t==(o<0?0:Kt(e))){var i=e.parentNode;if(i.nodeType!=1||nl(e)||el.test(e.nodeName)||e.contentEditable=="false")return!1;t=Pt(e)+(o<0?0:1),e=i}else if(e.nodeType==1){if(e=e.childNodes[t+(o<0?-1:0)],e.contentEditable=="false")return!1;t=o<0?Kt(e):0}else return!1}}function Kt(e){return e.nodeType==3?e.nodeValue.length:e.childNodes.length}function rl(e,t,r){for(var n=t==0,o=t==Kt(e);n||o;){if(e==r)return!0;var i=Pt(e);if(e=e.parentNode,!e)return!1;n=n&&i==0,o=o&&i==Kt(e)}}function nl(e){for(var t,r=e;r&&!(t=r.pmViewDesc);r=r.parentNode);return t&&t.node&&t.node.isBlock&&(t.dom==e||t.contentDOM==e)}var Pn=function(e){var t=e.isCollapsed;return t&&C.chrome&&e.rangeCount&&!e.getRangeAt(0).collapsed&&(t=!1),t};function ze(e,t){var r=document.createEvent("Event");return r.initEvent("keydown",!0,!0),r.keyCode=e,r.key=r.code=t,r}function ol(e){return{left:0,right:e.documentElement.clientWidth,top:0,bottom:e.documentElement.clientHeight}}function ae(e,t){return typeof e=="number"?e:e[t]}function il(e){var t=e.getBoundingClientRect(),r=t.width/e.offsetWidth||1,n=t.height/e.offsetHeight||1;return{left:t.left,right:t.left+e.clientWidth*r,top:t.top,bottom:t.top+e.clientHeight*n}}function Vi(e,t,r){for(var n=e.someProp("scrollThreshold")||0,o=e.someProp("scrollMargin")||5,i=e.dom.ownerDocument,s=r||e.dom;s;s=Rn(s))if(s.nodeType==1){var a=s==i.body||s.nodeType!=1,c=a?ol(i):il(s),l=0,u=0;if(t.topc.bottom-ae(n,"bottom")&&(u=t.bottom-c.bottom+ae(o,"bottom")),t.leftc.right-ae(n,"right")&&(l=t.right-c.right+ae(o,"right")),l||u)if(a)i.defaultView.scrollBy(l,u);else{var f=s.scrollLeft,p=s.scrollTop;u&&(s.scrollTop+=u),l&&(s.scrollLeft+=l);var d=s.scrollLeft-f,h=s.scrollTop-p;t={left:t.left-d,top:t.top-h,right:t.right-d,bottom:t.bottom-h}}if(a)break}}function sl(e){for(var t=e.dom.getBoundingClientRect(),r=Math.max(0,t.top),n,o,i=(t.left+t.right)/2,s=r+1;s=r-20){n=a,o=c.top;break}}}return{refDOM:n,refTop:o,stack:Hi(e.dom)}}function Hi(e){for(var t=[],r=e.ownerDocument;e&&(t.push({dom:e,top:e.scrollTop,left:e.scrollLeft}),e!=r);e=Rn(e));return t}function al(e){var t=e.refDOM,r=e.refTop,n=e.stack,o=t?t.getBoundingClientRect().top:0;ji(n,o==0?0:o-r)}function ji(e,t){for(var r=0;r=a){s=Math.max(p.bottom,s),a=Math.min(p.top,a);var d=p.left>t.left?p.left-t.left:p.right=(p.left+p.right)/2?1:0));continue}}!r&&(t.left>=p.right&&t.top>=p.top||t.left>=p.left&&t.top>=p.bottom)&&(i=l+1)}}return r&&r.nodeType==3?ll(r,o):!r||n&&r.nodeType==1?{node:e,offset:i}:qi(r,o)}function ll(e,t){for(var r=e.nodeValue.length,n=document.createRange(),o=0;o=(i.left+i.right)/2?1:0)}}return{node:e,offset:0}}function Bn(e,t){return e.left>=t.left-1&&e.left<=t.right+1&&e.top>=t.top-1&&e.top<=t.bottom+1}function ul(e,t){var r=e.parentNode;return r&&/^li$/i.test(r.nodeName)&&t.left(a.left+a.right)/2?1:-1}return e.docView.posFromDOM(o,i,s)}function pl(e,t,r,n){for(var o=-1,i=t;i!=e.dom;){var s=e.docView.nearestDesc(i,!0);if(!s)return null;if(s.node.isBlock&&s.parent){var a=s.dom.getBoundingClientRect();if(a.left>n.left||a.top>n.top)o=s.posBefore;else if(a.right-1?o:e.docView.posFromDOM(t,r)}function Ji(e,t,r){var n=e.childNodes.length;if(n&&r.topt.top&&s++}i==e.dom&&s==i.childNodes.length-1&&i.lastChild.nodeType==1&&t.top>i.lastChild.getBoundingClientRect().bottom?u=e.state.doc.content.size:(s==0||i.nodeType!=1||i.childNodes[s-1].nodeName!="BR")&&(u=pl(e,i,s,t))}u==null&&(u=fl(e,l,t));var v=e.docView.nearestDesc(l,!0);return{pos:u,inside:v?v.posAtStart-v.border:-1}}function ce(e,t){var r=e.getClientRects();return r.length?r[t<0?0:r.length-1]:e.getBoundingClientRect()}var hl=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function Wi(e,t,r){var n=e.docView.domFromPos(t,r<0?-1:1),o=n.node,i=n.offset,s=C.webkit||C.gecko;if(o.nodeType==3)if(s&&(hl.test(o.nodeValue)||(r<0?!i:i==o.nodeValue.length))){var a=ce(ne(o,i,i),r);if(C.gecko&&i&&/\s/.test(o.nodeValue[i-1])&&i=0&&i==o.nodeValue.length?(u--,p=1):r<0?u--:f++,or(ce(ne(o,u,f),p),p<0)}if(!e.state.doc.resolve(t).parent.inlineContent){if(i&&(r<0||i==Kt(o))){var d=o.childNodes[i-1];if(d.nodeType==1)return zn(d.getBoundingClientRect(),!1)}if(i=0)}if(i&&(r<0||i==Kt(o))){var v=o.childNodes[i-1],g=v.nodeType==3?ne(v,Kt(v)-(s?0:1)):v.nodeType==1&&(v.nodeName!="BR"||!v.nextSibling)?v:null;if(g)return or(ce(g,1),!1)}if(i=0)}function or(e,t){if(e.width==0)return e;var r=t?e.left:e.right;return{top:e.top,bottom:e.bottom,left:r,right:r}}function zn(e,t){if(e.height==0)return e;var r=t?e.top:e.bottom;return{top:r,bottom:r,left:e.left,right:e.right}}function Ki(e,t,r){var n=e.state,o=e.root.activeElement;n!=t&&e.updateState(t),o!=e.dom&&e.focus();try{return r()}finally{n!=t&&e.updateState(n),o!=e.dom&&o&&o.focus()}}function ml(e,t,r){var n=t.selection,o=r=="up"?n.$from:n.$to;return Ki(e,t,function(){for(var i=e.docView.domFromPos(o.pos,r=="up"?-1:1),s=i.node;;){var a=e.docView.nearestDesc(s,!0);if(!a)break;if(a.node.isBlock){s=a.dom;break}s=a.dom.parentNode}for(var c=Wi(e,o.pos,1),l=s.firstChild;l;l=l.nextSibling){var u=void 0;if(l.nodeType==1)u=l.getClientRects();else if(l.nodeType==3)u=ne(l,0,l.nodeValue.length).getClientRects();else continue;for(var f=0;fp.top&&(r=="up"?p.bottomc.bottom-1))return!1}}return!0})}var vl=/[\u0590-\u08ac]/;function gl(e,t,r){var n=t.selection,o=n.$head;if(!o.parent.isTextblock)return!1;var i=o.parentOffset,s=!i,a=i==o.parent.content.size,c=e.root.getSelection();return!vl.test(o.parent.textContent)||!c.modify?r=="left"||r=="backward"?s:a:Ki(e,t,function(){var l=c.getRangeAt(0),u=c.focusNode,f=c.focusOffset,p=c.caretBidiLevel;c.modify("move",r,"character");var d=o.depth?e.docView.domAfterPos(o.before()):e.dom,h=!d.contains(c.focusNode.nodeType==1?c.focusNode:c.focusNode.parentNode)||u==c.focusNode&&f==c.focusOffset;return c.removeAllRanges(),c.addRange(l),p!=null&&(c.caretBidiLevel=p),h})}var $i=null,Ui=null,Gi=!1;function yl(e,t,r){return $i==t&&Ui==r?Gi:($i=t,Ui=r,Gi=r=="up"||r=="down"?ml(e,t,r):gl(e,t,r))}var Ft=0,Yi=1,ir=2,le=3,j=function(t,r,n,o){this.parent=t,this.children=r,this.dom=n,n.pmViewDesc=this,this.contentDOM=o,this.dirty=Ft},$t={beforePosition:{configurable:!0},size:{configurable:!0},border:{configurable:!0},posBefore:{configurable:!0},posAtStart:{configurable:!0},posAfter:{configurable:!0},posAtEnd:{configurable:!0},contentLost:{configurable:!0},domAtom:{configurable:!0}};j.prototype.matchesWidget=function(){return!1};j.prototype.matchesMark=function(){return!1};j.prototype.matchesNode=function(){return!1};j.prototype.matchesHack=function(t){return!1};$t.beforePosition.get=function(){return!1};j.prototype.parseRule=function(){return null};j.prototype.stopEvent=function(){return!1};$t.size.get=function(){for(var e=0,t=0;tPt(this.contentDOM);else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM))c=t.compareDocumentPosition(this.contentDOM)&2;else if(this.dom.firstChild){if(r==0)for(var l=t;;l=l.parentNode){if(l==this.dom){c=!1;break}if(l.parentNode.firstChild!=l)break}if(c==null&&r==t.childNodes.length)for(var u=t;;u=u.parentNode){if(u==this.dom){c=!0;break}if(u.parentNode.lastChild!=u)break}}return(c==null?n>0:c)?this.posAtEnd:this.posAtStart};j.prototype.nearestDesc=function(t,r){for(var n=!0,o=t;o;o=o.parentNode){var i=this.getDesc(o);if(i&&(!r||i.node))if(n&&i.nodeDOM&&!(i.nodeDOM.nodeType==1?i.nodeDOM.contains(t.nodeType==1?t:t.parentNode):i.nodeDOM==t))n=!1;else return i}};j.prototype.getDesc=function(t){for(var r=t.pmViewDesc,n=r;n;n=n.parent)if(n==this)return r};j.prototype.posFromDOM=function(t,r,n){for(var o=t;o;o=o.parentNode){var i=this.getDesc(o);if(i)return i.localPosFromDOM(t,r,n)}return-1};j.prototype.descAt=function(t){for(var r=0,n=0;r=t:a>t)&&(a>t||o+1>=this.children.length||!this.children[o+1].beforePosition))return s.domFromPos(t-n-s.border,r);n=a}};j.prototype.parseRange=function(t,r,n){if(n===void 0&&(n=0),this.children.length==0)return{node:this.contentDOM,from:t,to:r,fromOffset:0,toOffset:this.contentDOM.childNodes.length};for(var o=-1,i=-1,s=n,a=0;;a++){var c=this.children[a],l=s+c.size;if(o==-1&&t<=l){var u=s+c.border;if(t>=u&&r<=l-c.border&&c.node&&c.contentDOM&&this.contentDOM.contains(c.contentDOM))return c.parseRange(t,r,u);t=s;for(var f=a;f>0;f--){var p=this.children[f-1];if(p.size&&p.dom.parentNode==this.contentDOM&&!p.emptyChildAt(1)){o=Pt(p.dom)+1;break}t-=p.size}o==-1&&(o=0)}if(o>-1&&(l>r||a==this.children.length-1)){r=l;for(var d=a+1;dc&&s!!r.icon),a=l(()=>e.active?`${t} text-primary-500`:`${t} text-gray-500`);return{hasIconSlot:s,containerClass:a}}},g={key:0,class:"mr-3"};function C(e,r,t,s,a,d){const p=u("router-link");return n(),m(p,B(e.$attrs,{class:s.containerClass}),{default:_(()=>[s.hasIconSlot?(n(),c("span",g,[i(e.$slots,"icon")])):f("",!0),$("span",null,h(t.title),1)]),_:3},16,["class"])}var j=o(y,[["render",C]]);export{j as B,L as a}; +import{_ as o}from"./main.24f7a84b.js";import{o as n,e as c,g as i,k as l,r as u,l as m,w as _,j as f,h as $,t as h,s as B}from"./vendor.01d0adc5.js";const k={name:"List"},v={class:"list-none"};function x(e,r,t,s,a,d){return n(),c("div",v,[i(e.$slots,"default")])}var L=o(k,[["render",x]]);const y={name:"ListItem",props:{title:{type:String,required:!1,default:""},active:{type:Boolean,required:!0},index:{type:Number,default:null}},setup(e,{slots:r}){const t="cursor-pointer pb-2 pr-0 text-sm font-medium leading-5 flex items-center";let s=l(()=>!!r.icon),a=l(()=>e.active?`${t} text-primary-500`:`${t} text-gray-500`);return{hasIconSlot:s,containerClass:a}}},g={key:0,class:"mr-3"};function C(e,r,t,s,a,d){const p=u("router-link");return n(),m(p,B(e.$attrs,{class:s.containerClass}),{default:_(()=>[s.hasIconSlot?(n(),c("span",g,[i(e.$slots,"icon")])):f("",!0),$("span",null,h(t.title),1)]),_:3},16,["class"])}var b=o(y,[["render",C]]);export{b as B,L as a}; diff --git a/public/build/assets/BaseMultiselect.b73cc8d6.js b/public/build/assets/BaseMultiselect.ed75c8b8.js similarity index 99% rename from public/build/assets/BaseMultiselect.b73cc8d6.js rename to public/build/assets/BaseMultiselect.ed75c8b8.js index 63853b1a3..485b80b78 100644 --- a/public/build/assets/BaseMultiselect.b73cc8d6.js +++ b/public/build/assets/BaseMultiselect.ed75c8b8.js @@ -1 +1 @@ -var Xe=Object.defineProperty,Ye=Object.defineProperties;var Ze=Object.getOwnPropertyDescriptors;var Be=Object.getOwnPropertySymbols;var $e=Object.prototype.hasOwnProperty,_e=Object.prototype.propertyIsEnumerable;var qe=(e,n,a)=>n in e?Xe(e,n,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[n]=a,G=(e,n)=>{for(var a in n||(n={}))$e.call(n,a)&&qe(e,a,n[a]);if(Be)for(var a of Be(n))_e.call(n,a)&&qe(e,a,n[a]);return e},Ce=(e,n)=>Ye(e,Ze(n));import{bd as x,B as N,k as w,C as re,be as Te,r as De,o as I,l as el,w as ll,f as al,e as B,m as O,U as ve,j as E,F as ae,y as se,g as T,i as tl,t as J,h as P}from"./vendor.01d0adc5.js";import{_ as nl}from"./main.75722495.js";function F(e){return[null,void 0,!1].indexOf(e)!==-1}function rl(e,n,a){const{object:i,valueProp:o,mode:v}=x(e),f=a.iv,g=p=>{f.value=c(p);const b=t(p);n.emit("change",b),n.emit("input",b),n.emit("update:modelValue",b)},t=p=>i.value||F(p)?p:Array.isArray(p)?p.map(b=>b[o.value]):p[o.value],c=p=>F(p)?v.value==="single"?{}:[]:p;return{update:g}}function sl(e,n){const{value:a,modelValue:i,mode:o,valueProp:v}=x(e),f=N(o.value!=="single"?[]:{}),g=n.expose!==void 0?i:a,t=w(()=>o.value==="single"?f.value[v.value]:f.value.map(p=>p[v.value])),c=w(()=>o.value!=="single"?f.value.map(p=>p[v.value]).join(","):f.value[v.value]);return{iv:f,internalValue:f,ev:g,externalValue:g,textValue:c,plainValue:t}}function ul(e,n,a){const{preserveSearch:i}=x(e),o=N(e.initialSearch)||N(null),v=N(null),f=()=>{i.value||(o.value="")},g=c=>{o.value=c.target.value},t=c=>{n.emit("paste",c)};return re(o,c=>{n.emit("search-change",c)}),{search:o,input:v,clearSearch:f,handleSearchInput:g,handlePaste:t}}function ol(e,n,a){const{groupSelect:i,mode:o,groups:v}=x(e),f=N(null),g=c=>{c===void 0||c!==null&&c.disabled||v.value&&c&&c.group&&(o.value==="single"||!i.value)||(f.value=c)};return{pointer:f,setPointer:g,clearPointer:()=>{g(null)}}}function Ee(e,n=!0){return n?String(e).toLowerCase().trim():String(e).normalize("NFD").replace(/\p{Diacritic}/gu,"").toLowerCase().trim()}function il(e){return Object.prototype.toString.call(e)==="[object Object]"}function cl(e,n){const a=n.slice().sort();return e.length===n.length&&e.slice().sort().every(function(i,o){return i===a[o]})}function dl(e,n,a){const{options:i,mode:o,trackBy:v,limit:f,hideSelected:g,createTag:t,label:c,appendNewTag:p,multipleLabel:b,object:q,loading:V,delay:D,resolveOnLoad:m,minChars:s,filterResults:A,clearOnSearch:Z,clearOnSelect:k,valueProp:d,canDeselect:j,max:L,strict:Q,closeOnSelect:X,groups:$,groupLabel:ue,groupOptions:M,groupHideEmpty:pe,groupSelect:fe}=x(e),S=a.iv,z=a.ev,C=a.search,_=a.clearSearch,ee=a.update,ge=a.pointer,oe=a.clearPointer,W=a.blur,te=a.deactivate,r=N([]),h=N([]),R=N(!1),H=w(()=>{if($.value){let l=h.value||[],u=[];return l.forEach(y=>{ke(y[M.value]).forEach(U=>{u.push(Object.assign({},U,y.disabled?{disabled:!0}:{}))})}),u}else{let l=ke(h.value||[]);return r.value.length&&(l=l.concat(r.value)),l}}),Oe=w(()=>$.value?Ue((h.value||[]).map(l=>{const u=ke(l[M.value]);return Ce(G({},l),{group:!0,[M.value]:Se(u,!1).map(y=>Object.assign({},y,l.disabled?{disabled:!0}:{})),__VISIBLE__:Se(u).map(y=>Object.assign({},y,l.disabled?{disabled:!0}:{}))})})):[]),ie=w(()=>{let l=H.value;return me.value.length&&(l=me.value.concat(l)),l=Se(l),f.value>0&&(l=l.slice(0,f.value)),l}),be=w(()=>{switch(o.value){case"single":return!F(S.value[d.value]);case"multiple":case"tags":return!F(S.value)&&S.value.length>0}}),Ve=w(()=>b!==void 0&&b.value!==void 0?b.value(S.value):S.value&&S.value.length>1?`${S.value.length} options selected`:"1 option selected"),je=w(()=>!H.value.length&&!R.value&&!me.value.length),Re=w(()=>H.value.length>0&&ie.value.length==0&&(C.value&&$.value||!$.value)),me=w(()=>t.value===!1||!C.value?[]:ze(C.value)!==-1?[]:[{[d.value]:C.value,[c.value]:C.value,[v.value]:C.value}]),Ge=w(()=>{switch(o.value){case"single":return null;case"multiple":case"tags":return[]}}),Ae=w(()=>V.value||R.value),ne=l=>{switch(typeof l!="object"&&(l=K(l)),o.value){case"single":ee(l);break;case"multiple":case"tags":ee(S.value.concat(l));break}n.emit("select",Le(l),l)},le=l=>{switch(typeof l!="object"&&(l=K(l)),o.value){case"single":Ie();break;case"tags":case"multiple":ee(Array.isArray(l)?S.value.filter(u=>l.map(y=>y[d.value]).indexOf(u[d.value])===-1):S.value.filter(u=>u[d.value]!=l[d.value]));break}n.emit("deselect",Le(l),l)},Le=l=>q.value?l:l[d.value],Pe=l=>{le(l)},Me=(l,u)=>{if(u.button!==0){u.preventDefault();return}Pe(l)},Ie=()=>{n.emit("clear"),ee(Ge.value)},Y=l=>{if(l.group!==void 0)return o.value==="single"?!1:Fe(l[M.value])&&l[M.value].length;switch(o.value){case"single":return!F(S.value)&&S.value[d.value]==l[d.value];case"tags":case"multiple":return!F(S.value)&&S.value.map(u=>u[d.value]).indexOf(l[d.value])!==-1}},he=l=>l.disabled===!0,ye=()=>L===void 0||L.value===-1||!be.value&&L.value>0?!1:S.value.length>=L.value,Ne=l=>{if(!he(l)){switch(o.value){case"single":if(Y(l)){j.value&&le(l);return}W(),ne(l);break;case"multiple":if(Y(l)){le(l);return}if(ye())return;ne(l),k.value&&_(),g.value&&oe(),X.value&&W();break;case"tags":if(Y(l)){le(l);return}if(ye())return;K(l[d.value])===void 0&&t.value&&(n.emit("tag",l[d.value]),p.value&&We(l),_()),k.value&&_(),ne(l),g.value&&oe(),X.value&&W();break}X.value&&te()}},He=l=>{if(!(he(l)||o.value==="single"||!fe.value)){switch(o.value){case"multiple":case"tags":xe(l[M.value])?le(l[M.value]):ne(l[M.value].filter(u=>S.value.map(y=>y[d.value]).indexOf(u[d.value])===-1).filter(u=>!u.disabled).filter((u,y)=>S.value.length+1+y<=L.value||L.value===-1));break}X.value&&te()}},xe=l=>l.find(u=>!Y(u)&&!u.disabled)===void 0,Fe=l=>l.find(u=>!Y(u))===void 0,K=l=>H.value[H.value.map(u=>String(u[d.value])).indexOf(String(l))],ze=(l,u=!0)=>H.value.map(y=>y[v.value]).indexOf(l),Ke=l=>["tags","multiple"].indexOf(o.value)!==-1&&g.value&&Y(l),We=l=>{r.value.push(l)},Ue=l=>pe.value?l.filter(u=>C.value?u.__VISIBLE__.length:u[M.value].length):l.filter(u=>C.value?u.__VISIBLE__.length:!0),Se=(l,u=!0)=>{let y=l;return C.value&&A.value&&(y=y.filter(U=>Ee(U[v.value],Q.value).indexOf(Ee(C.value,Q.value))!==-1)),g.value&&u&&(y=y.filter(U=>!Ke(U))),y},ke=l=>{let u=l;return il(u)&&(u=Object.keys(u).map(y=>{let U=u[y];return{[d.value]:y,[v.value]:U,[c.value]:U}})),u=u.map(y=>typeof y=="object"?y:{[d.value]:y,[v.value]:y,[c.value]:y}),u},ce=()=>{F(z.value)||(S.value=de(z.value))},we=l=>{R.value=!0,i.value(C.value).then(u=>{h.value=u,typeof l=="function"&&l(u),R.value=!1})},Je=()=>{if(!!be.value)if(o.value==="single"){let l=K(S.value[d.value])[c.value];S.value[c.value]=l,q.value&&(z.value[c.value]=l)}else S.value.forEach((l,u)=>{let y=K(S.value[u][d.value])[c.value];S.value[u][c.value]=y,q.value&&(z.value[u][c.value]=y)})},Qe=l=>{we(l)},de=l=>F(l)?o.value==="single"?{}:[]:q.value?l:o.value==="single"?K(l)||{}:l.filter(u=>!!K(u)).map(u=>K(u));if(o.value!=="single"&&!F(z.value)&&!Array.isArray(z.value))throw new Error(`v-model must be an array when using "${o.value}" mode`);return i&&typeof i.value=="function"?m.value?we(ce):q.value==!0&&ce():(h.value=i.value,ce()),D.value>-1&&re(C,l=>{l.length{l==C.value&&i.value(C.value).then(u=>{l==C.value&&(h.value=u,ge.value=ie.value.filter(y=>y.disabled!==!0)[0]||null,R.value=!1)})},D.value))},{flush:"sync"}),re(z,l=>{if(F(l)){S.value=de(l);return}switch(o.value){case"single":(q.value?l[d.value]!=S.value[d.value]:l!=S.value[d.value])&&(S.value=de(l));break;case"multiple":case"tags":cl(q.value?l.map(u=>u[d.value]):l,S.value.map(u=>u[d.value]))||(S.value=de(l));break}},{deep:!0}),typeof e.options!="function"&&re(i,(l,u)=>{h.value=e.options,Object.keys(S.value).length||ce(),Je()}),{fo:ie,filteredOptions:ie,hasSelected:be,multipleLabelText:Ve,eo:H,extendedOptions:H,fg:Oe,filteredGroups:Oe,noOptions:je,noResults:Re,resolving:R,busy:Ae,select:ne,deselect:le,remove:Pe,clear:Ie,isSelected:Y,isDisabled:he,isMax:ye,getOption:K,handleOptionClick:Ne,handleGroupClick:He,handleTagRemove:Me,refreshOptions:Qe,resolveOptions:we}}function vl(e,n,a){const{valueProp:i,showOptions:o,searchable:v,groupLabel:f,groups:g,mode:t,groupSelect:c}=x(e),p=a.fo,b=a.fg,q=a.handleOptionClick,V=a.handleGroupClick,D=a.search,m=a.pointer,s=a.setPointer,A=a.clearPointer,Z=a.multiselect,k=w(()=>p.value.filter(r=>!r.disabled)),d=w(()=>b.value.filter(r=>!r.disabled)),j=w(()=>t.value!=="single"&&c.value),L=w(()=>m.value&&m.value.group),Q=w(()=>W(m.value)),X=w(()=>{const r=L.value?m.value:W(m.value),h=d.value.map(H=>H[f.value]).indexOf(r[f.value]);let R=d.value[h-1];return R===void 0&&(R=ue.value),R}),$=w(()=>{let r=d.value.map(h=>h.label).indexOf(L.value?m.value[f.value]:W(m.value)[f.value])+1;return d.value.length<=r&&(r=0),d.value[r]}),ue=w(()=>[...d.value].slice(-1)[0]),M=w(()=>m.value.__VISIBLE__.filter(r=>!r.disabled)[0]),pe=w(()=>{const r=Q.value.__VISIBLE__.filter(h=>!h.disabled);return r[r.map(h=>h[i.value]).indexOf(m.value[i.value])-1]}),fe=w(()=>{const r=W(m.value).__VISIBLE__.filter(h=>!h.disabled);return r[r.map(h=>h[i.value]).indexOf(m.value[i.value])+1]}),S=w(()=>[...X.value.__VISIBLE__.filter(r=>!r.disabled)].slice(-1)[0]),z=w(()=>[...ue.value.__VISIBLE__.filter(r=>!r.disabled)].slice(-1)[0]),C=r=>{if(!!m.value)return r.group?m.value[f.value]==r[f.value]:m.value[i.value]==r[i.value]},_=()=>{s(k.value[0]||null)},ee=()=>{!m.value||m.value.disabled===!0||(L.value?V(m.value):q(m.value))},ge=()=>{if(m.value===null)s((g.value&&j.value?d.value[0]:k.value[0])||null);else if(g.value&&j.value){let r=L.value?M.value:fe.value;r===void 0&&(r=$.value),s(r||null)}else{let r=k.value.map(h=>h[i.value]).indexOf(m.value[i.value])+1;k.value.length<=r&&(r=0),s(k.value[r]||null)}Te(()=>{te()})},oe=()=>{if(m.value===null){let r=k.value[k.value.length-1];g.value&&j.value&&(r=z.value,r===void 0&&(r=ue.value)),s(r||null)}else if(g.value&&j.value){let r=L.value?S.value:pe.value;r===void 0&&(r=L.value?X.value:Q.value),s(r||null)}else{let r=k.value.map(h=>h[i.value]).indexOf(m.value[i.value])-1;r<0&&(r=k.value.length-1),s(k.value[r]||null)}Te(()=>{te()})},W=r=>d.value.find(h=>h.__VISIBLE__.map(R=>R[i.value]).indexOf(r[i.value])!==-1),te=()=>{let r=Z.value.querySelector("[data-pointed]");if(!r)return;let h=r.parentElement.parentElement;g.value&&(h=L.value?r.parentElement.parentElement.parentElement:r.parentElement.parentElement.parentElement.parentElement),r.offsetTop+r.offsetHeight>h.clientHeight+h.scrollTop&&(h.scrollTop=r.offsetTop+r.offsetHeight-h.clientHeight),r.offsetTop{v.value&&(r.length&&o.value?_():A())}),{pointer:m,canPointGroups:j,isPointed:C,setPointerFirst:_,selectPointer:ee,forwardPointer:ge,backwardPointer:oe}}function pl(e,n,a){const{disabled:i}=x(e),o=N(!1);return{isOpen:o,open:()=>{o.value||i.value||(o.value=!0,n.emit("open"))},close:()=>{!o.value||(o.value=!1,n.emit("close"))}}}function fl(e,n,a){const{searchable:i,disabled:o}=x(e),v=a.input,f=a.open,g=a.close,t=a.clearSearch,c=N(null),p=N(!1),b=w(()=>i.value||o.value?-1:0),q=()=>{i.value&&v.value.blur(),c.value.blur()},V=()=>{i.value&&!o.value&&v.value.focus()},D=()=>{o.value||(p.value=!0,f())},m=()=>{p.value=!1,setTimeout(()=>{p.value||(g(),t())},1)};return{multiselect:c,tabindex:b,isActive:p,blur:q,handleFocus:V,activate:D,deactivate:m,handleCaretClick:()=>{p.value?(m(),q()):D()}}}function gl(e,n,a){const{mode:i,addTagOn:o,createTag:v,openDirection:f,searchable:g,showOptions:t,valueProp:c,groups:p}=x(e),b=a.iv,q=a.update,V=a.search,D=a.setPointer,m=a.selectPointer,s=a.backwardPointer,A=a.forwardPointer,Z=a.blur,k=a.fo,d=()=>{i.value==="tags"&&!t.value&&v.value&&g.value&&!p.value&&D(k.value[k.value.map(L=>L[c.value]).indexOf(V.value)])};return{handleKeydown:L=>{switch(L.keyCode){case 8:if(i.value==="single"||g.value&&[null,""].indexOf(V.value)===-1||b.value.length===0)return;q([...b.value].slice(0,-1));break;case 13:if(L.preventDefault(),i.value==="tags"&&o.value.indexOf("enter")===-1&&v.value)return;d(),m();break;case 32:if(g.value&&i.value!=="tags"&&!v.value||i.value==="tags"&&(o.value.indexOf("space")===-1&&v.value||!v.value))return;L.preventDefault(),d(),m();break;case 9:case 186:case 188:if(i.value!=="tags")return;const Q={9:"tab",186:";",188:","};if(o.value.indexOf(Q[L.keyCode])===-1||!v.value)return;d(),m(),L.preventDefault();break;case 27:Z();break;case 38:if(L.preventDefault(),!t.value)return;f.value==="top"?A():s();break;case 40:if(L.preventDefault(),!t.value)return;f.value==="top"?s():A();break}},preparePointer:d}}function bl(e,n,a){const i=x(e),{disabled:o,openDirection:v,showOptions:f,invalid:g}=i,t=a.isOpen,c=a.isPointed,p=a.isSelected,b=a.isDisabled,q=a.isActive,V=a.canPointGroups,D=a.resolving,m=a.fo,s=G({container:"multiselect",containerDisabled:"is-disabled",containerOpen:"is-open",containerOpenTop:"is-open-top",containerActive:"is-active",containerInvalid:"is-invalid",containerInvalidActive:"is-invalid-active",singleLabel:"multiselect-single-label",multipleLabel:"multiselect-multiple-label",search:"multiselect-search",tags:"multiselect-tags",tag:"multiselect-tag",tagDisabled:"is-disabled",tagRemove:"multiselect-tag-remove",tagRemoveIcon:"multiselect-tag-remove-icon",tagsSearchWrapper:"multiselect-tags-search-wrapper",tagsSearch:"multiselect-tags-search",tagsSearchCopy:"multiselect-tags-search-copy",placeholder:"multiselect-placeholder",caret:"multiselect-caret",caretOpen:"is-open",clear:"multiselect-clear",clearIcon:"multiselect-clear-icon",spinner:"multiselect-spinner",dropdown:"multiselect-dropdown",dropdownTop:"is-top",dropdownHidden:"is-hidden",options:"multiselect-options",optionsTop:"is-top",group:"multiselect-group",groupLabel:"multiselect-group-label",groupLabelPointable:"is-pointable",groupLabelPointed:"is-pointed",groupLabelSelected:"is-selected",groupLabelDisabled:"is-disabled",groupLabelSelectedPointed:"is-selected is-pointed",groupLabelSelectedDisabled:"is-selected is-disabled",groupOptions:"multiselect-group-options",option:"multiselect-option",optionPointed:"is-pointed",optionSelected:"is-selected",optionDisabled:"is-disabled",optionSelectedPointed:"is-selected is-pointed",optionSelectedDisabled:"is-selected is-disabled",noOptions:"multiselect-no-options",noResults:"multiselect-no-results",fakeInput:"multiselect-fake-input",spacer:"multiselect-spacer"},i.classes.value),A=w(()=>!!(t.value&&f.value&&(!D.value||D.value&&m.value.length)));return{classList:w(()=>({container:[s.container].concat(o.value?s.containerDisabled:[]).concat(A.value&&v.value==="top"?s.containerOpenTop:[]).concat(A.value&&v.value!=="top"?s.containerOpen:[]).concat(q.value?s.containerActive:[]).concat(g.value?s.containerInvalid:[]),spacer:s.spacer,singleLabel:s.singleLabel,multipleLabel:s.multipleLabel,search:s.search,tags:s.tags,tag:[s.tag].concat(o.value?s.tagDisabled:[]),tagRemove:s.tagRemove,tagRemoveIcon:s.tagRemoveIcon,tagsSearchWrapper:s.tagsSearchWrapper,tagsSearch:s.tagsSearch,tagsSearchCopy:s.tagsSearchCopy,placeholder:s.placeholder,caret:[s.caret].concat(t.value?s.caretOpen:[]),clear:s.clear,clearIcon:s.clearIcon,spinner:s.spinner,dropdown:[s.dropdown].concat(v.value==="top"?s.dropdownTop:[]).concat(!t.value||!f.value||!A.value?s.dropdownHidden:[]),options:[s.options].concat(v.value==="top"?s.optionsTop:[]),group:s.group,groupLabel:k=>{let d=[s.groupLabel];return c(k)?d.push(p(k)?s.groupLabelSelectedPointed:s.groupLabelPointed):p(k)&&V.value?d.push(b(k)?s.groupLabelSelectedDisabled:s.groupLabelSelected):b(k)&&d.push(s.groupLabelDisabled),V.value&&d.push(s.groupLabelPointable),d},groupOptions:s.groupOptions,option:(k,d)=>{let j=[s.option];return c(k)?j.push(p(k)?s.optionSelectedPointed:s.optionPointed):p(k)?j.push(b(k)?s.optionSelectedDisabled:s.optionSelected):(b(k)||d&&b(d))&&j.push(s.optionDisabled),j},noOptions:s.noOptions,noResults:s.noResults,fakeInput:s.fakeInput})),showDropdown:A}}const ml={name:"BaseMultiselect",props:{preserveSearch:{type:Boolean,default:!1},initialSearch:{type:String,default:null},contentLoading:{type:Boolean,default:!1},value:{required:!1},modelValue:{required:!1},options:{type:[Array,Object,Function],required:!1,default:()=>[]},id:{type:[String,Number],required:!1},name:{type:[String,Number],required:!1,default:"multiselect"},disabled:{type:Boolean,required:!1,default:!1},label:{type:String,required:!1,default:"label"},trackBy:{type:String,required:!1,default:"label"},valueProp:{type:String,required:!1,default:"value"},placeholder:{type:String,required:!1,default:null},mode:{type:String,required:!1,default:"single"},searchable:{type:Boolean,required:!1,default:!1},limit:{type:Number,required:!1,default:-1},hideSelected:{type:Boolean,required:!1,default:!0},createTag:{type:Boolean,required:!1,default:!1},appendNewTag:{type:Boolean,required:!1,default:!0},caret:{type:Boolean,required:!1,default:!0},loading:{type:Boolean,required:!1,default:!1},noOptionsText:{type:String,required:!1,default:"The list is empty"},noResultsText:{type:String,required:!1,default:"No results found"},multipleLabel:{type:Function,required:!1},object:{type:Boolean,required:!1,default:!1},delay:{type:Number,required:!1,default:-1},minChars:{type:Number,required:!1,default:0},resolveOnLoad:{type:Boolean,required:!1,default:!0},filterResults:{type:Boolean,required:!1,default:!0},clearOnSearch:{type:Boolean,required:!1,default:!1},clearOnSelect:{type:Boolean,required:!1,default:!0},canDeselect:{type:Boolean,required:!1,default:!0},canClear:{type:Boolean,required:!1,default:!1},max:{type:Number,required:!1,default:-1},showOptions:{type:Boolean,required:!1,default:!0},addTagOn:{type:Array,required:!1,default:()=>["enter"]},required:{type:Boolean,required:!1,default:!1},openDirection:{type:String,required:!1,default:"bottom"},nativeSupport:{type:Boolean,required:!1,default:!1},invalid:{type:Boolean,required:!1,default:!1},classes:{type:Object,required:!1,default:()=>({container:"p-0 relative mx-auto w-full flex items-center justify-end box-border cursor-pointer border border-gray-200 rounded-md bg-white text-sm leading-snug outline-none max-h-10",containerDisabled:"cursor-default bg-gray-200 bg-opacity-50 !text-gray-400",containerOpen:"",containerOpenTop:"",containerActive:"ring-1 ring-primary-400 border-primary-400",containerInvalid:"border-red-400 ring-red-400 focus:ring-red-400 focus:border-red-400",containerInvalidActive:"ring-1 border-red-400 ring-red-400",singleLabel:"flex items-center h-full absolute left-0 top-0 pointer-events-none bg-transparent leading-snug pl-3.5",multipleLabel:"flex items-center h-full absolute left-0 top-0 pointer-events-none bg-transparent leading-snug pl-3.5",search:"w-full absolute inset-0 outline-none appearance-none box-border border-0 text-sm font-sans bg-white rounded-md pl-3.5",tags:"grow shrink flex flex-wrap mt-1 pl-2",tag:"bg-primary-500 text-white text-sm font-semibold py-0.5 pl-2 rounded mr-1 mb-1 flex items-center whitespace-nowrap",tagDisabled:"pr-2 !bg-gray-400 text-white",tagRemove:"flex items-center justify-center p-1 mx-0.5 rounded-sm hover:bg-black hover:bg-opacity-10 group",tagRemoveIcon:"bg-multiselect-remove text-white bg-center bg-no-repeat opacity-30 inline-block w-3 h-3 group-hover:opacity-60",tagsSearchWrapper:"inline-block relative mx-1 mb-1 grow shrink h-full",tagsSearch:"absolute inset-0 border-0 focus:outline-none !shadow-none !focus:shadow-none appearance-none p-0 text-sm font-sans box-border w-full",tagsSearchCopy:"invisible whitespace-pre-wrap inline-block h-px",placeholder:"flex items-center h-full absolute left-0 top-0 pointer-events-none bg-transparent leading-snug pl-3.5 text-gray-400 text-sm",caret:"bg-multiselect-caret bg-center bg-no-repeat w-5 h-5 py-px box-content z-5 relative mr-1 opacity-40 shrink-0 grow-0 transition-transform",caretOpen:"rotate-180 pointer-events-auto",clear:"pr-3.5 relative z-10 opacity-40 transition duration-300 shrink-0 grow-0 flex hover:opacity-80",clearIcon:"bg-multiselect-remove bg-center bg-no-repeat w-2.5 h-4 py-px box-content inline-block",spinner:"bg-multiselect-spinner bg-center bg-no-repeat w-4 h-4 z-10 mr-3.5 animate-spin shrink-0 grow-0",dropdown:"max-h-60 shadow-lg absolute -left-px -right-px -bottom-1 translate-y-full border border-gray-300 mt-1 overflow-y-auto z-50 bg-white flex flex-col rounded-md",dropdownTop:"-translate-y-full -top-2 bottom-auto flex-col-reverse rounded-md",dropdownHidden:"hidden",options:"flex flex-col p-0 m-0 list-none",optionsTop:"flex-col-reverse",group:"p-0 m-0",groupLabel:"flex text-sm box-border items-center justify-start text-left py-1 px-3 font-semibold bg-gray-200 cursor-default leading-normal",groupLabelPointable:"cursor-pointer",groupLabelPointed:"bg-gray-300 text-gray-700",groupLabelSelected:"bg-primary-600 text-white",groupLabelDisabled:"bg-gray-100 text-gray-300 cursor-not-allowed",groupLabelSelectedPointed:"bg-primary-600 text-white opacity-90",groupLabelSelectedDisabled:"text-primary-100 bg-primary-600 bg-opacity-50 cursor-not-allowed",groupOptions:"p-0 m-0",option:"flex items-center justify-start box-border text-left cursor-pointer text-sm leading-snug py-2 px-3",optionPointed:"text-gray-800 bg-gray-100",optionSelected:"text-white bg-primary-500",optionDisabled:"text-gray-300 cursor-not-allowed",optionSelectedPointed:"text-white bg-primary-500 opacity-90",optionSelectedDisabled:"text-primary-100 bg-primary-500 bg-opacity-50 cursor-not-allowed",noOptions:"py-2 px-3 text-gray-600 bg-white",noResults:"py-2 px-3 text-gray-600 bg-white",fakeInput:"bg-transparent absolute left-0 right-0 -bottom-px w-full h-px border-0 p-0 appearance-none outline-none text-transparent",spacer:"h-9 py-px box-content"})},strict:{type:Boolean,required:!1,default:!0},closeOnSelect:{type:Boolean,required:!1,default:!0},autocomplete:{type:String,required:!1},groups:{type:Boolean,required:!1,default:!1},groupLabel:{type:String,required:!1,default:"label"},groupOptions:{type:String,required:!1,default:"options"},groupHideEmpty:{type:Boolean,required:!1,default:!1},groupSelect:{type:Boolean,required:!1,default:!0},inputType:{type:String,required:!1,default:"text"}},emits:["open","close","select","deselect","input","search-change","tag","update:modelValue","change","clear"],setup(e,n){const a=sl(e,n),i=ol(e),o=pl(e,n),v=ul(e,n),f=rl(e,n,{iv:a.iv}),g=fl(e,n,{input:v.input,open:o.open,close:o.close,clearSearch:v.clearSearch}),t=dl(e,n,{ev:a.ev,iv:a.iv,search:v.search,clearSearch:v.clearSearch,update:f.update,pointer:i.pointer,clearPointer:i.clearPointer,blur:g.blur,deactivate:g.deactivate}),c=vl(e,n,{fo:t.fo,fg:t.fg,handleOptionClick:t.handleOptionClick,handleGroupClick:t.handleGroupClick,search:v.search,pointer:i.pointer,setPointer:i.setPointer,clearPointer:i.clearPointer,multiselect:g.multiselect}),p=gl(e,n,{iv:a.iv,update:f.update,search:v.search,setPointer:i.setPointer,selectPointer:c.selectPointer,backwardPointer:c.backwardPointer,forwardPointer:c.forwardPointer,blur:g.blur,fo:t.fo}),b=bl(e,n,{isOpen:o.isOpen,isPointed:c.isPointed,canPointGroups:c.canPointGroups,isSelected:t.isSelected,isDisabled:t.isDisabled,isActive:g.isActive,resolving:t.resolving,fo:t.fo});return G(G(G(G(G(G(G(G(G(G({},a),o),g),i),f),v),t),c),p),b)}},hl=["id","tabindex"],yl=["type","modelValue","value","autocomplete"],Sl=["onMousedown"],kl=["type","modelValue","value","autocomplete"],wl={class:"w-full overflow-y-auto"},Ol=["data-pointed","onMouseenter","onClick"],Ll=["data-pointed","onMouseenter","onClick"],Pl=["data-pointed","onMouseenter","onClick"],Il=["innerHTML"],Bl=["innerHTML"],ql=["value"],Cl=["name","value"],Tl=["name","value"];function Dl(e,n,a,i,o,v){const f=De("BaseContentPlaceholdersBox"),g=De("BaseContentPlaceholders");return a.contentLoading?(I(),el(g,{key:0},{default:ll(()=>[al(f,{rounded:!0,class:"w-full",style:{height:"40px"}})]),_:1})):(I(),B("div",{key:1,id:a.id,ref:"multiselect",tabindex:e.tabindex,class:O(e.classList.container),onFocusin:n[6]||(n[6]=(...t)=>e.activate&&e.activate(...t)),onFocusout:n[7]||(n[7]=(...t)=>e.deactivate&&e.deactivate(...t)),onKeydown:n[8]||(n[8]=(...t)=>e.handleKeydown&&e.handleKeydown(...t)),onFocus:n[9]||(n[9]=(...t)=>e.handleFocus&&e.handleFocus(...t))},[a.mode!=="tags"&&a.searchable&&!a.disabled?(I(),B("input",{key:0,ref:"input",type:a.inputType,modelValue:e.search,value:e.search,class:O(e.classList.search),autocomplete:a.autocomplete,onInput:n[0]||(n[0]=(...t)=>e.handleSearchInput&&e.handleSearchInput(...t)),onPaste:n[1]||(n[1]=ve((...t)=>e.handlePaste&&e.handlePaste(...t),["stop"]))},null,42,yl)):E("",!0),a.mode=="tags"?(I(),B("div",{key:1,class:O(e.classList.tags)},[(I(!0),B(ae,null,se(e.iv,(t,c,p)=>T(e.$slots,"tag",{option:t,handleTagRemove:e.handleTagRemove,disabled:a.disabled},()=>[(I(),B("span",{key:p,class:O(e.classList.tag)},[tl(J(t[a.label])+" ",1),a.disabled?E("",!0):(I(),B("span",{key:0,class:O(e.classList.tagRemove),onMousedown:ve(b=>e.handleTagRemove(t,b),["stop"])},[P("span",{class:O(e.classList.tagRemoveIcon)},null,2)],42,Sl))],2))])),256)),P("div",{class:O(e.classList.tagsSearchWrapper)},[P("span",{class:O(e.classList.tagsSearchCopy)},J(e.search),3),a.searchable&&!a.disabled?(I(),B("input",{key:0,ref:"input",type:a.inputType,modelValue:e.search,value:e.search,class:O(e.classList.tagsSearch),autocomplete:a.autocomplete,style:{"box-shadow":"none !important"},onInput:n[2]||(n[2]=(...t)=>e.handleSearchInput&&e.handleSearchInput(...t)),onPaste:n[3]||(n[3]=ve((...t)=>e.handlePaste&&e.handlePaste(...t),["stop"]))},null,42,kl)):E("",!0)],2)],2)):E("",!0),a.mode=="single"&&e.hasSelected&&!e.search&&e.iv?T(e.$slots,"singlelabel",{key:2,value:e.iv},()=>[P("div",{class:O(e.classList.singleLabel)},J(e.iv[a.label]),3)]):E("",!0),a.mode=="multiple"&&e.hasSelected&&!e.search?T(e.$slots,"multiplelabel",{key:3,values:e.iv},()=>[P("div",{class:O(e.classList.multipleLabel)},J(e.multipleLabelText),3)]):E("",!0),a.placeholder&&!e.hasSelected&&!e.search?T(e.$slots,"placeholder",{key:4},()=>[P("div",{class:O(e.classList.placeholder)},J(a.placeholder),3)]):E("",!0),e.busy?T(e.$slots,"spinner",{key:5},()=>[P("span",{class:O(e.classList.spinner)},null,2)]):E("",!0),e.hasSelected&&!a.disabled&&a.canClear&&!e.busy?T(e.$slots,"clear",{key:6,clear:e.clear},()=>[P("span",{class:O(e.classList.clear),onMousedown:n[4]||(n[4]=(...t)=>e.clear&&e.clear(...t))},[P("span",{class:O(e.classList.clearIcon)},null,2)],34)]):E("",!0),a.caret?T(e.$slots,"caret",{key:7},()=>[P("span",{class:O(e.classList.caret),onMousedown:n[5]||(n[5]=ve((...t)=>e.handleCaretClick&&e.handleCaretClick(...t),["prevent","stop"]))},null,34)]):E("",!0),P("div",{class:O(e.classList.dropdown),tabindex:"-1"},[P("div",wl,[T(e.$slots,"beforelist",{options:e.fo}),P("ul",{class:O(e.classList.options)},[a.groups?(I(!0),B(ae,{key:0},se(e.fg,(t,c,p)=>(I(),B("li",{key:p,class:O(e.classList.group)},[P("div",{class:O(e.classList.groupLabel(t)),"data-pointed":e.isPointed(t),onMouseenter:b=>e.setPointer(t),onClick:b=>e.handleGroupClick(t)},[T(e.$slots,"grouplabel",{group:t},()=>[P("span",null,J(t[a.groupLabel]),1)])],42,Ol),P("ul",{class:O(e.classList.groupOptions)},[(I(!0),B(ae,null,se(t.__VISIBLE__,(b,q,V)=>(I(),B("li",{key:V,class:O(e.classList.option(b,t)),"data-pointed":e.isPointed(b),onMouseenter:D=>e.setPointer(b),onClick:D=>e.handleOptionClick(b)},[T(e.$slots,"option",{option:b,search:e.search},()=>[P("span",null,J(b[a.label]),1)])],42,Ll))),128))],2)],2))),128)):(I(!0),B(ae,{key:1},se(e.fo,(t,c,p)=>(I(),B("li",{key:p,class:O(e.classList.option(t)),"data-pointed":e.isPointed(t),onMouseenter:b=>e.setPointer(t),onClick:b=>e.handleOptionClick(t)},[T(e.$slots,"option",{option:t,search:e.search},()=>[P("span",null,J(t[a.label]),1)])],42,Pl))),128))],2),e.noOptions?T(e.$slots,"nooptions",{key:0},()=>[P("div",{class:O(e.classList.noOptions),innerHTML:a.noOptionsText},null,10,Il)]):E("",!0),e.noResults?T(e.$slots,"noresults",{key:1},()=>[P("div",{class:O(e.classList.noResults),innerHTML:a.noResultsText},null,10,Bl)]):E("",!0),T(e.$slots,"afterlist",{options:e.fo})]),T(e.$slots,"action")],2),a.required?(I(),B("input",{key:8,class:O(e.classList.fakeInput),tabindex:"-1",value:e.textValue,required:""},null,10,ql)):E("",!0),a.nativeSupport?(I(),B(ae,{key:9},[a.mode=="single"?(I(),B("input",{key:0,type:"hidden",name:a.name,value:e.plainValue!==void 0?e.plainValue:""},null,8,Cl)):(I(!0),B(ae,{key:1},se(e.plainValue,(t,c)=>(I(),B("input",{key:c,type:"hidden",name:`${a.name}[]`,value:t},null,8,Tl))),128))],64)):E("",!0),P("div",{class:O(e.classList.spacer)},null,2)],42,hl))}var Rl=nl(ml,[["render",Dl]]);export{Rl as default}; +var Xe=Object.defineProperty,Ye=Object.defineProperties;var Ze=Object.getOwnPropertyDescriptors;var Be=Object.getOwnPropertySymbols;var $e=Object.prototype.hasOwnProperty,_e=Object.prototype.propertyIsEnumerable;var qe=(e,n,a)=>n in e?Xe(e,n,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[n]=a,G=(e,n)=>{for(var a in n||(n={}))$e.call(n,a)&&qe(e,a,n[a]);if(Be)for(var a of Be(n))_e.call(n,a)&&qe(e,a,n[a]);return e},Ce=(e,n)=>Ye(e,Ze(n));import{bd as x,B as N,k as w,C as re,be as Te,r as De,o as I,l as el,w as ll,f as al,e as B,m as O,U as ve,j as E,F as ae,y as se,g as T,i as tl,t as J,h as P}from"./vendor.01d0adc5.js";import{_ as nl}from"./main.24f7a84b.js";function F(e){return[null,void 0,!1].indexOf(e)!==-1}function rl(e,n,a){const{object:i,valueProp:o,mode:v}=x(e),f=a.iv,g=p=>{f.value=c(p);const b=t(p);n.emit("change",b),n.emit("input",b),n.emit("update:modelValue",b)},t=p=>i.value||F(p)?p:Array.isArray(p)?p.map(b=>b[o.value]):p[o.value],c=p=>F(p)?v.value==="single"?{}:[]:p;return{update:g}}function sl(e,n){const{value:a,modelValue:i,mode:o,valueProp:v}=x(e),f=N(o.value!=="single"?[]:{}),g=n.expose!==void 0?i:a,t=w(()=>o.value==="single"?f.value[v.value]:f.value.map(p=>p[v.value])),c=w(()=>o.value!=="single"?f.value.map(p=>p[v.value]).join(","):f.value[v.value]);return{iv:f,internalValue:f,ev:g,externalValue:g,textValue:c,plainValue:t}}function ul(e,n,a){const{preserveSearch:i}=x(e),o=N(e.initialSearch)||N(null),v=N(null),f=()=>{i.value||(o.value="")},g=c=>{o.value=c.target.value},t=c=>{n.emit("paste",c)};return re(o,c=>{n.emit("search-change",c)}),{search:o,input:v,clearSearch:f,handleSearchInput:g,handlePaste:t}}function ol(e,n,a){const{groupSelect:i,mode:o,groups:v}=x(e),f=N(null),g=c=>{c===void 0||c!==null&&c.disabled||v.value&&c&&c.group&&(o.value==="single"||!i.value)||(f.value=c)};return{pointer:f,setPointer:g,clearPointer:()=>{g(null)}}}function Ee(e,n=!0){return n?String(e).toLowerCase().trim():String(e).normalize("NFD").replace(/\p{Diacritic}/gu,"").toLowerCase().trim()}function il(e){return Object.prototype.toString.call(e)==="[object Object]"}function cl(e,n){const a=n.slice().sort();return e.length===n.length&&e.slice().sort().every(function(i,o){return i===a[o]})}function dl(e,n,a){const{options:i,mode:o,trackBy:v,limit:f,hideSelected:g,createTag:t,label:c,appendNewTag:p,multipleLabel:b,object:q,loading:V,delay:D,resolveOnLoad:m,minChars:s,filterResults:A,clearOnSearch:Z,clearOnSelect:k,valueProp:d,canDeselect:j,max:L,strict:Q,closeOnSelect:X,groups:$,groupLabel:ue,groupOptions:M,groupHideEmpty:pe,groupSelect:fe}=x(e),S=a.iv,z=a.ev,C=a.search,_=a.clearSearch,ee=a.update,ge=a.pointer,oe=a.clearPointer,W=a.blur,te=a.deactivate,r=N([]),h=N([]),R=N(!1),H=w(()=>{if($.value){let l=h.value||[],u=[];return l.forEach(y=>{ke(y[M.value]).forEach(U=>{u.push(Object.assign({},U,y.disabled?{disabled:!0}:{}))})}),u}else{let l=ke(h.value||[]);return r.value.length&&(l=l.concat(r.value)),l}}),Oe=w(()=>$.value?Ue((h.value||[]).map(l=>{const u=ke(l[M.value]);return Ce(G({},l),{group:!0,[M.value]:Se(u,!1).map(y=>Object.assign({},y,l.disabled?{disabled:!0}:{})),__VISIBLE__:Se(u).map(y=>Object.assign({},y,l.disabled?{disabled:!0}:{}))})})):[]),ie=w(()=>{let l=H.value;return me.value.length&&(l=me.value.concat(l)),l=Se(l),f.value>0&&(l=l.slice(0,f.value)),l}),be=w(()=>{switch(o.value){case"single":return!F(S.value[d.value]);case"multiple":case"tags":return!F(S.value)&&S.value.length>0}}),Ve=w(()=>b!==void 0&&b.value!==void 0?b.value(S.value):S.value&&S.value.length>1?`${S.value.length} options selected`:"1 option selected"),je=w(()=>!H.value.length&&!R.value&&!me.value.length),Re=w(()=>H.value.length>0&&ie.value.length==0&&(C.value&&$.value||!$.value)),me=w(()=>t.value===!1||!C.value?[]:ze(C.value)!==-1?[]:[{[d.value]:C.value,[c.value]:C.value,[v.value]:C.value}]),Ge=w(()=>{switch(o.value){case"single":return null;case"multiple":case"tags":return[]}}),Ae=w(()=>V.value||R.value),ne=l=>{switch(typeof l!="object"&&(l=K(l)),o.value){case"single":ee(l);break;case"multiple":case"tags":ee(S.value.concat(l));break}n.emit("select",Le(l),l)},le=l=>{switch(typeof l!="object"&&(l=K(l)),o.value){case"single":Ie();break;case"tags":case"multiple":ee(Array.isArray(l)?S.value.filter(u=>l.map(y=>y[d.value]).indexOf(u[d.value])===-1):S.value.filter(u=>u[d.value]!=l[d.value]));break}n.emit("deselect",Le(l),l)},Le=l=>q.value?l:l[d.value],Pe=l=>{le(l)},Me=(l,u)=>{if(u.button!==0){u.preventDefault();return}Pe(l)},Ie=()=>{n.emit("clear"),ee(Ge.value)},Y=l=>{if(l.group!==void 0)return o.value==="single"?!1:Fe(l[M.value])&&l[M.value].length;switch(o.value){case"single":return!F(S.value)&&S.value[d.value]==l[d.value];case"tags":case"multiple":return!F(S.value)&&S.value.map(u=>u[d.value]).indexOf(l[d.value])!==-1}},he=l=>l.disabled===!0,ye=()=>L===void 0||L.value===-1||!be.value&&L.value>0?!1:S.value.length>=L.value,Ne=l=>{if(!he(l)){switch(o.value){case"single":if(Y(l)){j.value&&le(l);return}W(),ne(l);break;case"multiple":if(Y(l)){le(l);return}if(ye())return;ne(l),k.value&&_(),g.value&&oe(),X.value&&W();break;case"tags":if(Y(l)){le(l);return}if(ye())return;K(l[d.value])===void 0&&t.value&&(n.emit("tag",l[d.value]),p.value&&We(l),_()),k.value&&_(),ne(l),g.value&&oe(),X.value&&W();break}X.value&&te()}},He=l=>{if(!(he(l)||o.value==="single"||!fe.value)){switch(o.value){case"multiple":case"tags":xe(l[M.value])?le(l[M.value]):ne(l[M.value].filter(u=>S.value.map(y=>y[d.value]).indexOf(u[d.value])===-1).filter(u=>!u.disabled).filter((u,y)=>S.value.length+1+y<=L.value||L.value===-1));break}X.value&&te()}},xe=l=>l.find(u=>!Y(u)&&!u.disabled)===void 0,Fe=l=>l.find(u=>!Y(u))===void 0,K=l=>H.value[H.value.map(u=>String(u[d.value])).indexOf(String(l))],ze=(l,u=!0)=>H.value.map(y=>y[v.value]).indexOf(l),Ke=l=>["tags","multiple"].indexOf(o.value)!==-1&&g.value&&Y(l),We=l=>{r.value.push(l)},Ue=l=>pe.value?l.filter(u=>C.value?u.__VISIBLE__.length:u[M.value].length):l.filter(u=>C.value?u.__VISIBLE__.length:!0),Se=(l,u=!0)=>{let y=l;return C.value&&A.value&&(y=y.filter(U=>Ee(U[v.value],Q.value).indexOf(Ee(C.value,Q.value))!==-1)),g.value&&u&&(y=y.filter(U=>!Ke(U))),y},ke=l=>{let u=l;return il(u)&&(u=Object.keys(u).map(y=>{let U=u[y];return{[d.value]:y,[v.value]:U,[c.value]:U}})),u=u.map(y=>typeof y=="object"?y:{[d.value]:y,[v.value]:y,[c.value]:y}),u},ce=()=>{F(z.value)||(S.value=de(z.value))},we=l=>{R.value=!0,i.value(C.value).then(u=>{h.value=u,typeof l=="function"&&l(u),R.value=!1})},Je=()=>{if(!!be.value)if(o.value==="single"){let l=K(S.value[d.value])[c.value];S.value[c.value]=l,q.value&&(z.value[c.value]=l)}else S.value.forEach((l,u)=>{let y=K(S.value[u][d.value])[c.value];S.value[u][c.value]=y,q.value&&(z.value[u][c.value]=y)})},Qe=l=>{we(l)},de=l=>F(l)?o.value==="single"?{}:[]:q.value?l:o.value==="single"?K(l)||{}:l.filter(u=>!!K(u)).map(u=>K(u));if(o.value!=="single"&&!F(z.value)&&!Array.isArray(z.value))throw new Error(`v-model must be an array when using "${o.value}" mode`);return i&&typeof i.value=="function"?m.value?we(ce):q.value==!0&&ce():(h.value=i.value,ce()),D.value>-1&&re(C,l=>{l.length{l==C.value&&i.value(C.value).then(u=>{l==C.value&&(h.value=u,ge.value=ie.value.filter(y=>y.disabled!==!0)[0]||null,R.value=!1)})},D.value))},{flush:"sync"}),re(z,l=>{if(F(l)){S.value=de(l);return}switch(o.value){case"single":(q.value?l[d.value]!=S.value[d.value]:l!=S.value[d.value])&&(S.value=de(l));break;case"multiple":case"tags":cl(q.value?l.map(u=>u[d.value]):l,S.value.map(u=>u[d.value]))||(S.value=de(l));break}},{deep:!0}),typeof e.options!="function"&&re(i,(l,u)=>{h.value=e.options,Object.keys(S.value).length||ce(),Je()}),{fo:ie,filteredOptions:ie,hasSelected:be,multipleLabelText:Ve,eo:H,extendedOptions:H,fg:Oe,filteredGroups:Oe,noOptions:je,noResults:Re,resolving:R,busy:Ae,select:ne,deselect:le,remove:Pe,clear:Ie,isSelected:Y,isDisabled:he,isMax:ye,getOption:K,handleOptionClick:Ne,handleGroupClick:He,handleTagRemove:Me,refreshOptions:Qe,resolveOptions:we}}function vl(e,n,a){const{valueProp:i,showOptions:o,searchable:v,groupLabel:f,groups:g,mode:t,groupSelect:c}=x(e),p=a.fo,b=a.fg,q=a.handleOptionClick,V=a.handleGroupClick,D=a.search,m=a.pointer,s=a.setPointer,A=a.clearPointer,Z=a.multiselect,k=w(()=>p.value.filter(r=>!r.disabled)),d=w(()=>b.value.filter(r=>!r.disabled)),j=w(()=>t.value!=="single"&&c.value),L=w(()=>m.value&&m.value.group),Q=w(()=>W(m.value)),X=w(()=>{const r=L.value?m.value:W(m.value),h=d.value.map(H=>H[f.value]).indexOf(r[f.value]);let R=d.value[h-1];return R===void 0&&(R=ue.value),R}),$=w(()=>{let r=d.value.map(h=>h.label).indexOf(L.value?m.value[f.value]:W(m.value)[f.value])+1;return d.value.length<=r&&(r=0),d.value[r]}),ue=w(()=>[...d.value].slice(-1)[0]),M=w(()=>m.value.__VISIBLE__.filter(r=>!r.disabled)[0]),pe=w(()=>{const r=Q.value.__VISIBLE__.filter(h=>!h.disabled);return r[r.map(h=>h[i.value]).indexOf(m.value[i.value])-1]}),fe=w(()=>{const r=W(m.value).__VISIBLE__.filter(h=>!h.disabled);return r[r.map(h=>h[i.value]).indexOf(m.value[i.value])+1]}),S=w(()=>[...X.value.__VISIBLE__.filter(r=>!r.disabled)].slice(-1)[0]),z=w(()=>[...ue.value.__VISIBLE__.filter(r=>!r.disabled)].slice(-1)[0]),C=r=>{if(!!m.value)return r.group?m.value[f.value]==r[f.value]:m.value[i.value]==r[i.value]},_=()=>{s(k.value[0]||null)},ee=()=>{!m.value||m.value.disabled===!0||(L.value?V(m.value):q(m.value))},ge=()=>{if(m.value===null)s((g.value&&j.value?d.value[0]:k.value[0])||null);else if(g.value&&j.value){let r=L.value?M.value:fe.value;r===void 0&&(r=$.value),s(r||null)}else{let r=k.value.map(h=>h[i.value]).indexOf(m.value[i.value])+1;k.value.length<=r&&(r=0),s(k.value[r]||null)}Te(()=>{te()})},oe=()=>{if(m.value===null){let r=k.value[k.value.length-1];g.value&&j.value&&(r=z.value,r===void 0&&(r=ue.value)),s(r||null)}else if(g.value&&j.value){let r=L.value?S.value:pe.value;r===void 0&&(r=L.value?X.value:Q.value),s(r||null)}else{let r=k.value.map(h=>h[i.value]).indexOf(m.value[i.value])-1;r<0&&(r=k.value.length-1),s(k.value[r]||null)}Te(()=>{te()})},W=r=>d.value.find(h=>h.__VISIBLE__.map(R=>R[i.value]).indexOf(r[i.value])!==-1),te=()=>{let r=Z.value.querySelector("[data-pointed]");if(!r)return;let h=r.parentElement.parentElement;g.value&&(h=L.value?r.parentElement.parentElement.parentElement:r.parentElement.parentElement.parentElement.parentElement),r.offsetTop+r.offsetHeight>h.clientHeight+h.scrollTop&&(h.scrollTop=r.offsetTop+r.offsetHeight-h.clientHeight),r.offsetTop{v.value&&(r.length&&o.value?_():A())}),{pointer:m,canPointGroups:j,isPointed:C,setPointerFirst:_,selectPointer:ee,forwardPointer:ge,backwardPointer:oe}}function pl(e,n,a){const{disabled:i}=x(e),o=N(!1);return{isOpen:o,open:()=>{o.value||i.value||(o.value=!0,n.emit("open"))},close:()=>{!o.value||(o.value=!1,n.emit("close"))}}}function fl(e,n,a){const{searchable:i,disabled:o}=x(e),v=a.input,f=a.open,g=a.close,t=a.clearSearch,c=N(null),p=N(!1),b=w(()=>i.value||o.value?-1:0),q=()=>{i.value&&v.value.blur(),c.value.blur()},V=()=>{i.value&&!o.value&&v.value.focus()},D=()=>{o.value||(p.value=!0,f())},m=()=>{p.value=!1,setTimeout(()=>{p.value||(g(),t())},1)};return{multiselect:c,tabindex:b,isActive:p,blur:q,handleFocus:V,activate:D,deactivate:m,handleCaretClick:()=>{p.value?(m(),q()):D()}}}function gl(e,n,a){const{mode:i,addTagOn:o,createTag:v,openDirection:f,searchable:g,showOptions:t,valueProp:c,groups:p}=x(e),b=a.iv,q=a.update,V=a.search,D=a.setPointer,m=a.selectPointer,s=a.backwardPointer,A=a.forwardPointer,Z=a.blur,k=a.fo,d=()=>{i.value==="tags"&&!t.value&&v.value&&g.value&&!p.value&&D(k.value[k.value.map(L=>L[c.value]).indexOf(V.value)])};return{handleKeydown:L=>{switch(L.keyCode){case 8:if(i.value==="single"||g.value&&[null,""].indexOf(V.value)===-1||b.value.length===0)return;q([...b.value].slice(0,-1));break;case 13:if(L.preventDefault(),i.value==="tags"&&o.value.indexOf("enter")===-1&&v.value)return;d(),m();break;case 32:if(g.value&&i.value!=="tags"&&!v.value||i.value==="tags"&&(o.value.indexOf("space")===-1&&v.value||!v.value))return;L.preventDefault(),d(),m();break;case 9:case 186:case 188:if(i.value!=="tags")return;const Q={9:"tab",186:";",188:","};if(o.value.indexOf(Q[L.keyCode])===-1||!v.value)return;d(),m(),L.preventDefault();break;case 27:Z();break;case 38:if(L.preventDefault(),!t.value)return;f.value==="top"?A():s();break;case 40:if(L.preventDefault(),!t.value)return;f.value==="top"?s():A();break}},preparePointer:d}}function bl(e,n,a){const i=x(e),{disabled:o,openDirection:v,showOptions:f,invalid:g}=i,t=a.isOpen,c=a.isPointed,p=a.isSelected,b=a.isDisabled,q=a.isActive,V=a.canPointGroups,D=a.resolving,m=a.fo,s=G({container:"multiselect",containerDisabled:"is-disabled",containerOpen:"is-open",containerOpenTop:"is-open-top",containerActive:"is-active",containerInvalid:"is-invalid",containerInvalidActive:"is-invalid-active",singleLabel:"multiselect-single-label",multipleLabel:"multiselect-multiple-label",search:"multiselect-search",tags:"multiselect-tags",tag:"multiselect-tag",tagDisabled:"is-disabled",tagRemove:"multiselect-tag-remove",tagRemoveIcon:"multiselect-tag-remove-icon",tagsSearchWrapper:"multiselect-tags-search-wrapper",tagsSearch:"multiselect-tags-search",tagsSearchCopy:"multiselect-tags-search-copy",placeholder:"multiselect-placeholder",caret:"multiselect-caret",caretOpen:"is-open",clear:"multiselect-clear",clearIcon:"multiselect-clear-icon",spinner:"multiselect-spinner",dropdown:"multiselect-dropdown",dropdownTop:"is-top",dropdownHidden:"is-hidden",options:"multiselect-options",optionsTop:"is-top",group:"multiselect-group",groupLabel:"multiselect-group-label",groupLabelPointable:"is-pointable",groupLabelPointed:"is-pointed",groupLabelSelected:"is-selected",groupLabelDisabled:"is-disabled",groupLabelSelectedPointed:"is-selected is-pointed",groupLabelSelectedDisabled:"is-selected is-disabled",groupOptions:"multiselect-group-options",option:"multiselect-option",optionPointed:"is-pointed",optionSelected:"is-selected",optionDisabled:"is-disabled",optionSelectedPointed:"is-selected is-pointed",optionSelectedDisabled:"is-selected is-disabled",noOptions:"multiselect-no-options",noResults:"multiselect-no-results",fakeInput:"multiselect-fake-input",spacer:"multiselect-spacer"},i.classes.value),A=w(()=>!!(t.value&&f.value&&(!D.value||D.value&&m.value.length)));return{classList:w(()=>({container:[s.container].concat(o.value?s.containerDisabled:[]).concat(A.value&&v.value==="top"?s.containerOpenTop:[]).concat(A.value&&v.value!=="top"?s.containerOpen:[]).concat(q.value?s.containerActive:[]).concat(g.value?s.containerInvalid:[]),spacer:s.spacer,singleLabel:s.singleLabel,multipleLabel:s.multipleLabel,search:s.search,tags:s.tags,tag:[s.tag].concat(o.value?s.tagDisabled:[]),tagRemove:s.tagRemove,tagRemoveIcon:s.tagRemoveIcon,tagsSearchWrapper:s.tagsSearchWrapper,tagsSearch:s.tagsSearch,tagsSearchCopy:s.tagsSearchCopy,placeholder:s.placeholder,caret:[s.caret].concat(t.value?s.caretOpen:[]),clear:s.clear,clearIcon:s.clearIcon,spinner:s.spinner,dropdown:[s.dropdown].concat(v.value==="top"?s.dropdownTop:[]).concat(!t.value||!f.value||!A.value?s.dropdownHidden:[]),options:[s.options].concat(v.value==="top"?s.optionsTop:[]),group:s.group,groupLabel:k=>{let d=[s.groupLabel];return c(k)?d.push(p(k)?s.groupLabelSelectedPointed:s.groupLabelPointed):p(k)&&V.value?d.push(b(k)?s.groupLabelSelectedDisabled:s.groupLabelSelected):b(k)&&d.push(s.groupLabelDisabled),V.value&&d.push(s.groupLabelPointable),d},groupOptions:s.groupOptions,option:(k,d)=>{let j=[s.option];return c(k)?j.push(p(k)?s.optionSelectedPointed:s.optionPointed):p(k)?j.push(b(k)?s.optionSelectedDisabled:s.optionSelected):(b(k)||d&&b(d))&&j.push(s.optionDisabled),j},noOptions:s.noOptions,noResults:s.noResults,fakeInput:s.fakeInput})),showDropdown:A}}const ml={name:"BaseMultiselect",props:{preserveSearch:{type:Boolean,default:!1},initialSearch:{type:String,default:null},contentLoading:{type:Boolean,default:!1},value:{required:!1},modelValue:{required:!1},options:{type:[Array,Object,Function],required:!1,default:()=>[]},id:{type:[String,Number],required:!1},name:{type:[String,Number],required:!1,default:"multiselect"},disabled:{type:Boolean,required:!1,default:!1},label:{type:String,required:!1,default:"label"},trackBy:{type:String,required:!1,default:"label"},valueProp:{type:String,required:!1,default:"value"},placeholder:{type:String,required:!1,default:null},mode:{type:String,required:!1,default:"single"},searchable:{type:Boolean,required:!1,default:!1},limit:{type:Number,required:!1,default:-1},hideSelected:{type:Boolean,required:!1,default:!0},createTag:{type:Boolean,required:!1,default:!1},appendNewTag:{type:Boolean,required:!1,default:!0},caret:{type:Boolean,required:!1,default:!0},loading:{type:Boolean,required:!1,default:!1},noOptionsText:{type:String,required:!1,default:"The list is empty"},noResultsText:{type:String,required:!1,default:"No results found"},multipleLabel:{type:Function,required:!1},object:{type:Boolean,required:!1,default:!1},delay:{type:Number,required:!1,default:-1},minChars:{type:Number,required:!1,default:0},resolveOnLoad:{type:Boolean,required:!1,default:!0},filterResults:{type:Boolean,required:!1,default:!0},clearOnSearch:{type:Boolean,required:!1,default:!1},clearOnSelect:{type:Boolean,required:!1,default:!0},canDeselect:{type:Boolean,required:!1,default:!0},canClear:{type:Boolean,required:!1,default:!1},max:{type:Number,required:!1,default:-1},showOptions:{type:Boolean,required:!1,default:!0},addTagOn:{type:Array,required:!1,default:()=>["enter"]},required:{type:Boolean,required:!1,default:!1},openDirection:{type:String,required:!1,default:"bottom"},nativeSupport:{type:Boolean,required:!1,default:!1},invalid:{type:Boolean,required:!1,default:!1},classes:{type:Object,required:!1,default:()=>({container:"p-0 relative mx-auto w-full flex items-center justify-end box-border cursor-pointer border border-gray-200 rounded-md bg-white text-sm leading-snug outline-none max-h-10",containerDisabled:"cursor-default bg-gray-200 bg-opacity-50 !text-gray-400",containerOpen:"",containerOpenTop:"",containerActive:"ring-1 ring-primary-400 border-primary-400",containerInvalid:"border-red-400 ring-red-400 focus:ring-red-400 focus:border-red-400",containerInvalidActive:"ring-1 border-red-400 ring-red-400",singleLabel:"flex items-center h-full absolute left-0 top-0 pointer-events-none bg-transparent leading-snug pl-3.5",multipleLabel:"flex items-center h-full absolute left-0 top-0 pointer-events-none bg-transparent leading-snug pl-3.5",search:"w-full absolute inset-0 outline-none appearance-none box-border border-0 text-sm font-sans bg-white rounded-md pl-3.5",tags:"grow shrink flex flex-wrap mt-1 pl-2",tag:"bg-primary-500 text-white text-sm font-semibold py-0.5 pl-2 rounded mr-1 mb-1 flex items-center whitespace-nowrap",tagDisabled:"pr-2 !bg-gray-400 text-white",tagRemove:"flex items-center justify-center p-1 mx-0.5 rounded-sm hover:bg-black hover:bg-opacity-10 group",tagRemoveIcon:"bg-multiselect-remove text-white bg-center bg-no-repeat opacity-30 inline-block w-3 h-3 group-hover:opacity-60",tagsSearchWrapper:"inline-block relative mx-1 mb-1 grow shrink h-full",tagsSearch:"absolute inset-0 border-0 focus:outline-none !shadow-none !focus:shadow-none appearance-none p-0 text-sm font-sans box-border w-full",tagsSearchCopy:"invisible whitespace-pre-wrap inline-block h-px",placeholder:"flex items-center h-full absolute left-0 top-0 pointer-events-none bg-transparent leading-snug pl-3.5 text-gray-400 text-sm",caret:"bg-multiselect-caret bg-center bg-no-repeat w-5 h-5 py-px box-content z-5 relative mr-1 opacity-40 shrink-0 grow-0 transition-transform",caretOpen:"rotate-180 pointer-events-auto",clear:"pr-3.5 relative z-10 opacity-40 transition duration-300 shrink-0 grow-0 flex hover:opacity-80",clearIcon:"bg-multiselect-remove bg-center bg-no-repeat w-2.5 h-4 py-px box-content inline-block",spinner:"bg-multiselect-spinner bg-center bg-no-repeat w-4 h-4 z-10 mr-3.5 animate-spin shrink-0 grow-0",dropdown:"max-h-60 shadow-lg absolute -left-px -right-px -bottom-1 translate-y-full border border-gray-300 mt-1 overflow-y-auto z-50 bg-white flex flex-col rounded-md",dropdownTop:"-translate-y-full -top-2 bottom-auto flex-col-reverse rounded-md",dropdownHidden:"hidden",options:"flex flex-col p-0 m-0 list-none",optionsTop:"flex-col-reverse",group:"p-0 m-0",groupLabel:"flex text-sm box-border items-center justify-start text-left py-1 px-3 font-semibold bg-gray-200 cursor-default leading-normal",groupLabelPointable:"cursor-pointer",groupLabelPointed:"bg-gray-300 text-gray-700",groupLabelSelected:"bg-primary-600 text-white",groupLabelDisabled:"bg-gray-100 text-gray-300 cursor-not-allowed",groupLabelSelectedPointed:"bg-primary-600 text-white opacity-90",groupLabelSelectedDisabled:"text-primary-100 bg-primary-600 bg-opacity-50 cursor-not-allowed",groupOptions:"p-0 m-0",option:"flex items-center justify-start box-border text-left cursor-pointer text-sm leading-snug py-2 px-3",optionPointed:"text-gray-800 bg-gray-100",optionSelected:"text-white bg-primary-500",optionDisabled:"text-gray-300 cursor-not-allowed",optionSelectedPointed:"text-white bg-primary-500 opacity-90",optionSelectedDisabled:"text-primary-100 bg-primary-500 bg-opacity-50 cursor-not-allowed",noOptions:"py-2 px-3 text-gray-600 bg-white",noResults:"py-2 px-3 text-gray-600 bg-white",fakeInput:"bg-transparent absolute left-0 right-0 -bottom-px w-full h-px border-0 p-0 appearance-none outline-none text-transparent",spacer:"h-9 py-px box-content"})},strict:{type:Boolean,required:!1,default:!0},closeOnSelect:{type:Boolean,required:!1,default:!0},autocomplete:{type:String,required:!1},groups:{type:Boolean,required:!1,default:!1},groupLabel:{type:String,required:!1,default:"label"},groupOptions:{type:String,required:!1,default:"options"},groupHideEmpty:{type:Boolean,required:!1,default:!1},groupSelect:{type:Boolean,required:!1,default:!0},inputType:{type:String,required:!1,default:"text"}},emits:["open","close","select","deselect","input","search-change","tag","update:modelValue","change","clear"],setup(e,n){const a=sl(e,n),i=ol(e),o=pl(e,n),v=ul(e,n),f=rl(e,n,{iv:a.iv}),g=fl(e,n,{input:v.input,open:o.open,close:o.close,clearSearch:v.clearSearch}),t=dl(e,n,{ev:a.ev,iv:a.iv,search:v.search,clearSearch:v.clearSearch,update:f.update,pointer:i.pointer,clearPointer:i.clearPointer,blur:g.blur,deactivate:g.deactivate}),c=vl(e,n,{fo:t.fo,fg:t.fg,handleOptionClick:t.handleOptionClick,handleGroupClick:t.handleGroupClick,search:v.search,pointer:i.pointer,setPointer:i.setPointer,clearPointer:i.clearPointer,multiselect:g.multiselect}),p=gl(e,n,{iv:a.iv,update:f.update,search:v.search,setPointer:i.setPointer,selectPointer:c.selectPointer,backwardPointer:c.backwardPointer,forwardPointer:c.forwardPointer,blur:g.blur,fo:t.fo}),b=bl(e,n,{isOpen:o.isOpen,isPointed:c.isPointed,canPointGroups:c.canPointGroups,isSelected:t.isSelected,isDisabled:t.isDisabled,isActive:g.isActive,resolving:t.resolving,fo:t.fo});return G(G(G(G(G(G(G(G(G(G({},a),o),g),i),f),v),t),c),p),b)}},hl=["id","tabindex"],yl=["type","modelValue","value","autocomplete"],Sl=["onMousedown"],kl=["type","modelValue","value","autocomplete"],wl={class:"w-full overflow-y-auto"},Ol=["data-pointed","onMouseenter","onClick"],Ll=["data-pointed","onMouseenter","onClick"],Pl=["data-pointed","onMouseenter","onClick"],Il=["innerHTML"],Bl=["innerHTML"],ql=["value"],Cl=["name","value"],Tl=["name","value"];function Dl(e,n,a,i,o,v){const f=De("BaseContentPlaceholdersBox"),g=De("BaseContentPlaceholders");return a.contentLoading?(I(),el(g,{key:0},{default:ll(()=>[al(f,{rounded:!0,class:"w-full",style:{height:"40px"}})]),_:1})):(I(),B("div",{key:1,id:a.id,ref:"multiselect",tabindex:e.tabindex,class:O(e.classList.container),onFocusin:n[6]||(n[6]=(...t)=>e.activate&&e.activate(...t)),onFocusout:n[7]||(n[7]=(...t)=>e.deactivate&&e.deactivate(...t)),onKeydown:n[8]||(n[8]=(...t)=>e.handleKeydown&&e.handleKeydown(...t)),onFocus:n[9]||(n[9]=(...t)=>e.handleFocus&&e.handleFocus(...t))},[a.mode!=="tags"&&a.searchable&&!a.disabled?(I(),B("input",{key:0,ref:"input",type:a.inputType,modelValue:e.search,value:e.search,class:O(e.classList.search),autocomplete:a.autocomplete,onInput:n[0]||(n[0]=(...t)=>e.handleSearchInput&&e.handleSearchInput(...t)),onPaste:n[1]||(n[1]=ve((...t)=>e.handlePaste&&e.handlePaste(...t),["stop"]))},null,42,yl)):E("",!0),a.mode=="tags"?(I(),B("div",{key:1,class:O(e.classList.tags)},[(I(!0),B(ae,null,se(e.iv,(t,c,p)=>T(e.$slots,"tag",{option:t,handleTagRemove:e.handleTagRemove,disabled:a.disabled},()=>[(I(),B("span",{key:p,class:O(e.classList.tag)},[tl(J(t[a.label])+" ",1),a.disabled?E("",!0):(I(),B("span",{key:0,class:O(e.classList.tagRemove),onMousedown:ve(b=>e.handleTagRemove(t,b),["stop"])},[P("span",{class:O(e.classList.tagRemoveIcon)},null,2)],42,Sl))],2))])),256)),P("div",{class:O(e.classList.tagsSearchWrapper)},[P("span",{class:O(e.classList.tagsSearchCopy)},J(e.search),3),a.searchable&&!a.disabled?(I(),B("input",{key:0,ref:"input",type:a.inputType,modelValue:e.search,value:e.search,class:O(e.classList.tagsSearch),autocomplete:a.autocomplete,style:{"box-shadow":"none !important"},onInput:n[2]||(n[2]=(...t)=>e.handleSearchInput&&e.handleSearchInput(...t)),onPaste:n[3]||(n[3]=ve((...t)=>e.handlePaste&&e.handlePaste(...t),["stop"]))},null,42,kl)):E("",!0)],2)],2)):E("",!0),a.mode=="single"&&e.hasSelected&&!e.search&&e.iv?T(e.$slots,"singlelabel",{key:2,value:e.iv},()=>[P("div",{class:O(e.classList.singleLabel)},J(e.iv[a.label]),3)]):E("",!0),a.mode=="multiple"&&e.hasSelected&&!e.search?T(e.$slots,"multiplelabel",{key:3,values:e.iv},()=>[P("div",{class:O(e.classList.multipleLabel)},J(e.multipleLabelText),3)]):E("",!0),a.placeholder&&!e.hasSelected&&!e.search?T(e.$slots,"placeholder",{key:4},()=>[P("div",{class:O(e.classList.placeholder)},J(a.placeholder),3)]):E("",!0),e.busy?T(e.$slots,"spinner",{key:5},()=>[P("span",{class:O(e.classList.spinner)},null,2)]):E("",!0),e.hasSelected&&!a.disabled&&a.canClear&&!e.busy?T(e.$slots,"clear",{key:6,clear:e.clear},()=>[P("span",{class:O(e.classList.clear),onMousedown:n[4]||(n[4]=(...t)=>e.clear&&e.clear(...t))},[P("span",{class:O(e.classList.clearIcon)},null,2)],34)]):E("",!0),a.caret?T(e.$slots,"caret",{key:7},()=>[P("span",{class:O(e.classList.caret),onMousedown:n[5]||(n[5]=ve((...t)=>e.handleCaretClick&&e.handleCaretClick(...t),["prevent","stop"]))},null,34)]):E("",!0),P("div",{class:O(e.classList.dropdown),tabindex:"-1"},[P("div",wl,[T(e.$slots,"beforelist",{options:e.fo}),P("ul",{class:O(e.classList.options)},[a.groups?(I(!0),B(ae,{key:0},se(e.fg,(t,c,p)=>(I(),B("li",{key:p,class:O(e.classList.group)},[P("div",{class:O(e.classList.groupLabel(t)),"data-pointed":e.isPointed(t),onMouseenter:b=>e.setPointer(t),onClick:b=>e.handleGroupClick(t)},[T(e.$slots,"grouplabel",{group:t},()=>[P("span",null,J(t[a.groupLabel]),1)])],42,Ol),P("ul",{class:O(e.classList.groupOptions)},[(I(!0),B(ae,null,se(t.__VISIBLE__,(b,q,V)=>(I(),B("li",{key:V,class:O(e.classList.option(b,t)),"data-pointed":e.isPointed(b),onMouseenter:D=>e.setPointer(b),onClick:D=>e.handleOptionClick(b)},[T(e.$slots,"option",{option:b,search:e.search},()=>[P("span",null,J(b[a.label]),1)])],42,Ll))),128))],2)],2))),128)):(I(!0),B(ae,{key:1},se(e.fo,(t,c,p)=>(I(),B("li",{key:p,class:O(e.classList.option(t)),"data-pointed":e.isPointed(t),onMouseenter:b=>e.setPointer(t),onClick:b=>e.handleOptionClick(t)},[T(e.$slots,"option",{option:t,search:e.search},()=>[P("span",null,J(t[a.label]),1)])],42,Pl))),128))],2),e.noOptions?T(e.$slots,"nooptions",{key:0},()=>[P("div",{class:O(e.classList.noOptions),innerHTML:a.noOptionsText},null,10,Il)]):E("",!0),e.noResults?T(e.$slots,"noresults",{key:1},()=>[P("div",{class:O(e.classList.noResults),innerHTML:a.noResultsText},null,10,Bl)]):E("",!0),T(e.$slots,"afterlist",{options:e.fo})]),T(e.$slots,"action")],2),a.required?(I(),B("input",{key:8,class:O(e.classList.fakeInput),tabindex:"-1",value:e.textValue,required:""},null,10,ql)):E("",!0),a.nativeSupport?(I(),B(ae,{key:9},[a.mode=="single"?(I(),B("input",{key:0,type:"hidden",name:a.name,value:e.plainValue!==void 0?e.plainValue:""},null,8,Cl)):(I(!0),B(ae,{key:1},se(e.plainValue,(t,c)=>(I(),B("input",{key:c,type:"hidden",name:`${a.name}[]`,value:t},null,8,Tl))),128))],64)):E("",!0),P("div",{class:O(e.classList.spacer)},null,2)],42,hl))}var Rl=nl(ml,[["render",Dl]]);export{Rl as default}; diff --git a/public/build/assets/BaseTable.6e206ca7.js b/public/build/assets/BaseTable.ab76526e.js similarity index 90% rename from public/build/assets/BaseTable.6e206ca7.js rename to public/build/assets/BaseTable.ab76526e.js index 0b04d5383..02bad88d5 100644 --- a/public/build/assets/BaseTable.6e206ca7.js +++ b/public/build/assets/BaseTable.ab76526e.js @@ -1 +1 @@ -import{I as O,r as T,o as i,e as s,h as u,m as c,t as h,j as m,f as k,F as C,y as P,i as _,a0 as N,B as F,k as A,C as J,D as K,g as L,u as y,w as Q,A as U,l as X}from"./vendor.01d0adc5.js";import{_ as Z,S as $}from"./main.75722495.js";function V(a,t){if(!t||a===null||typeof a!="object")return a;const[e,n]=t.split(/\.(.+)/);return V(a[e],n)}function ee(a,t){return t.reduce((e,n)=>(e[n]=a[n],e),{})}class te{constructor(t,e){this.data=t,this.columns=e}getValue(t){return V(this.data,t)}getColumn(t){return this.columns.find(e=>e.key===t)}getSortableValue(t){const e=this.getColumn(t).dataType;let n=this.getValue(t);if(n==null)return"";if(n instanceof String&&(n=n.toLowerCase()),e.startsWith("date")){const b=e.replace("date:","");return O(n,b).format("YYYYMMDDHHmmss")}return e==="numeric"?n:n.toString()}}class ae{constructor(t){const e=ee(t,["key","label","thClass","tdClass","sortBy","sortable","hidden","dataType"]);for(const n in e)this[n]=t[n];e.dataType||(this.dataType="string"),e.sortable===void 0&&(this.sortable=!0)}getFilterFieldName(){return this.filterOn||this.key}isSortable(){return this.sortable}getSortPredicate(t,e){const n=this.getSortFieldName(),l=e.find(g=>g.key===n).dataType;return l.startsWith("date")||l==="numeric"?(g,d)=>{const p=g.getSortableValue(n),x=d.getSortableValue(n);return t==="desc"?x{const p=g.getSortableValue(n),x=d.getSortableValue(n);return t==="desc"?x.localeCompare(p):p.localeCompare(x)}}getSortFieldName(){return this.sortBy||this.key}}const ne={props:{pagination:{type:Object,default:()=>({})}},computed:{pages(){return this.pagination.totalPages===void 0?[]:this.pageLinks()},hasFirst(){return this.pagination.currentPage>=4||this.pagination.totalPages<10},hasLast(){return this.pagination.currentPage<=this.pagination.totalPages-3||this.pagination.totalPages<10},hasFirstEllipsis(){return this.pagination.currentPage>=4&&this.pagination.totalPages>=10},hasLastEllipsis(){return this.pagination.currentPage<=this.pagination.totalPages-3&&this.pagination.totalPages>=10},shouldShowPagination(){return this.pagination.totalPages===void 0||this.pagination.count===0?!1:this.pagination.totalPages>1}},methods:{isActive(a){return(this.pagination.currentPage||1)===a},pageClicked(a){a==="..."||a===this.pagination.currentPage||a>this.pagination.totalPages||a<1||this.$emit("pageChange",a)},pageLinks(){const a=[];let t=2,e=this.pagination.totalPages-1;this.pagination.totalPages>=10&&(t=Math.max(1,this.pagination.currentPage-2),e=Math.min(this.pagination.currentPage+2,this.pagination.totalPages));for(let n=t;n<=e;n++)a.push(n);return a}}},re={key:0,class:"flex items-center justify-between px-4 py-3 bg-white border-t border-gray-200 sm:px-6"},ie={class:"flex justify-between flex-1 sm:hidden"},se={class:"hidden sm:flex-1 sm:flex sm:items-center sm:justify-between"},le={class:"text-sm text-gray-700"},oe=_(" Showing "+h(" ")+" "),de={key:0,class:"font-medium"},ge=_(" "+h(" ")+" to "+h(" ")+" "),ue={key:1,class:"font-medium"},ce={key:0},he={key:1},ye=_(" "+h(" ")+" of "+h(" ")+" "),fe={key:2,class:"font-medium"},me=_(" "+h(" ")+" results "),pe={class:"relative z-0 inline-flex -space-x-px rounded-md shadow-sm","aria-label":"Pagination"},be=u("span",{class:"sr-only"},"Previous",-1),xe={key:1,class:"relative inline-flex items-center px-4 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300"},ve=["onClick"],ke={key:2,class:"relative inline-flex items-center px-4 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300"},Ce=u("span",{class:"sr-only"},"Next",-1);function Pe(a,t,e,n,b,l){const g=T("BaseIcon");return l.shouldShowPagination?(i(),s("div",re,[u("div",ie,[u("a",{href:"#",class:c([{"disabled cursor-normal pointer-events-none !bg-gray-100 !text-gray-400":e.pagination.currentPage===1},"relative inline-flex items-center px-4 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded-md hover:bg-gray-50"]),onClick:t[0]||(t[0]=d=>l.pageClicked(e.pagination.currentPage-1))}," Previous ",2),u("a",{href:"#",class:c([{"disabled cursor-default pointer-events-none !bg-gray-100 !text-gray-400":e.pagination.currentPage===e.pagination.totalPages},"relative inline-flex items-center px-4 py-2 ml-3 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded-md hover:bg-gray-50"]),onClick:t[1]||(t[1]=d=>l.pageClicked(e.pagination.currentPage+1))}," Next ",2)]),u("div",se,[u("div",null,[u("p",le,[oe,e.pagination.limit&&e.pagination.currentPage?(i(),s("span",de,h(e.pagination.currentPage*e.pagination.limit-(e.pagination.limit-1)),1)):m("",!0),ge,e.pagination.limit&&e.pagination.currentPage?(i(),s("span",ue,[e.pagination.currentPage*e.pagination.limit<=e.pagination.totalCount?(i(),s("span",ce,h(e.pagination.currentPage*e.pagination.limit),1)):(i(),s("span",he,h(e.pagination.totalCount),1))])):m("",!0),ye,e.pagination.totalCount?(i(),s("span",fe,h(e.pagination.totalCount),1)):m("",!0),me])]),u("div",null,[u("nav",pe,[u("a",{href:"#",class:c([{"disabled cursor-normal pointer-events-none !bg-gray-100 !text-gray-400":e.pagination.currentPage===1},"relative inline-flex items-center px-2 py-2 text-sm font-medium text-gray-500 bg-white border border-gray-300 rounded-l-md hover:bg-gray-50"]),onClick:t[2]||(t[2]=d=>l.pageClicked(e.pagination.currentPage-1))},[be,k(g,{name:"ChevronLeftIcon"})],2),l.hasFirst?(i(),s("a",{key:0,href:"#","aria-current":"page",class:c([{"z-10 bg-primary-50 border-primary-500 text-primary-600":l.isActive(1),"bg-white border-gray-300 text-gray-500 hover:bg-gray-50":!l.isActive(1)},"relative inline-flex items-center px-4 py-2 text-sm font-medium border"]),onClick:t[3]||(t[3]=d=>l.pageClicked(1))}," 1 ",2)):m("",!0),l.hasFirstEllipsis?(i(),s("span",xe," ... ")):m("",!0),(i(!0),s(C,null,P(l.pages,d=>(i(),s("a",{key:d,href:"#",class:c([{"z-10 bg-primary-50 border-primary-500 text-primary-600":l.isActive(d),"bg-white border-gray-300 text-gray-500 hover:bg-gray-50":!l.isActive(d),disabled:d==="..."},"relative items-center hidden px-4 py-2 text-sm font-medium text-gray-500 bg-white border border-gray-300 hover:bg-gray-50 md:inline-flex"]),onClick:p=>l.pageClicked(d)},h(d),11,ve))),128)),l.hasLastEllipsis?(i(),s("span",ke," ... ")):m("",!0),l.hasLast?(i(),s("a",{key:3,href:"#","aria-current":"page",class:c([{"z-10 bg-primary-50 border-primary-500 text-primary-600":l.isActive(e.pagination.totalPages),"bg-white border-gray-300 text-gray-500 hover:bg-gray-50":!l.isActive(e.pagination.totalPages)},"relative inline-flex items-center px-4 py-2 text-sm font-medium border"]),onClick:t[4]||(t[4]=d=>l.pageClicked(e.pagination.totalPages))},h(e.pagination.totalPages),3)):m("",!0),u("a",{href:"#",class:c(["relative inline-flex items-center px-2 py-2 text-sm font-medium text-gray-500 bg-white border border-gray-300 rounded-r-md hover:bg-gray-50",{"disabled cursor-default pointer-events-none !bg-gray-100 !text-gray-400":e.pagination.currentPage===e.pagination.totalPages}]),onClick:t[5]||(t[5]=d=>l.pageClicked(e.pagination.currentPage+1))},[Ce,k(g,{name:"ChevronRightIcon"})],2)])])])])):m("",!0)}var _e=Z(ne,[["render",Pe]]);const we={class:"flex flex-col"},Se={class:"-my-2 overflow-x-auto sm:-mx-6 lg:-mx-8 pb-4 lg:pb-0"},Te={class:"inline-block min-w-full py-2 align-middle sm:px-6 lg:px-8"},Ne={class:"relative overflow-hidden bg-white border-b border-gray-200 shadow sm:rounded-lg"},Be=["onClick"],Fe={key:0,class:"asc-direction"},Ae={key:1,class:"desc-direction"},Le={key:0},Ve={key:1},Ie={key:0,class:"absolute top-0 left-0 z-10 flex items-center justify-center w-full h-full bg-white bg-opacity-60"},De={key:1,class:"text-center text-gray-500 pb-2 flex h-[160px] justify-center items-center flex-col"},Me={class:"block mt-1"},Re={props:{columns:{type:Array,required:!0},data:{type:[Array,Function],required:!0},sortBy:{type:String,default:""},sortOrder:{type:String,default:""},tableClass:{type:String,default:"min-w-full divide-y divide-gray-200"},theadClass:{type:String,default:"bg-gray-50"},tbodyClass:{type:String,default:""},noResultsMessage:{type:String,default:"No Results Found"},loading:{type:Boolean,default:!1},loadingType:{type:String,default:"placeholder",validator:function(a){return["placeholder","spinner"].indexOf(a)!==-1}},placeholderCount:{type:Number,default:3}},setup(a,{expose:t}){const e=a;let n=N([]),b=F(!1),l=N(e.columns.map(r=>new ae(r))),g=N({fieldName:"",order:""}),d=F("");const p=A(()=>Array.isArray(e.data)),x=A(()=>{if(!p.value||g.fieldName===""||l.length===0)return n.value;const r=I(g.fieldName);return r?[...n.value].sort(r.getSortPredicate(g.order,l)):n.value});function I(r){return l.find(o=>o.key===r)}function D(r){let o="whitespace-nowrap px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider";return r.defaultThClass&&(o=r.defaultThClass),r.sortable?o=`${o} cursor-pointer`:o=`${o} pointer-events-none`,r.thClass&&(o=`${o} ${r.thClass}`),o}function B(r){let o="px-6 py-4 text-sm text-gray-500 whitespace-nowrap";return r.defaultTdClass&&(o=r.defaultTdClass),r.tdClass&&(o=`${o} ${r.tdClass}`),o}function M(r){let o="w-full";return r.placeholderClass&&(o=`${o} ${r.placeholderClass}`),o}function z(){return d.value=null,e.data}async function E(){const r=d.value&&d.value.currentPage||1;b.value=!0;const o=await e.data({sort:g,page:r});return b.value=!1,d.value=o.pagination,o.data}function R(r){g.fieldName!==r.key?(g.fieldName=r.key,g.order="asc"):g.order=g.order==="asc"?"desc":"asc",p.value||w()}async function w(){const r=p.value?z():await E();n.value=r.map(o=>new te(o,l))}async function j(r){d.value.currentPage=r,await w()}async function Y(){await w()}function H(r,o){return U.exports.get(r,o)}return p.value&&J(()=>e.data,()=>{w()}),K(async()=>{await w()}),t({refresh:Y}),(r,o)=>{const q=T("base-content-placeholders-text"),W=T("base-content-placeholders"),G=T("BaseIcon");return i(),s("div",we,[u("div",Se,[u("div",Te,[u("div",Ne,[L(r.$slots,"header"),u("table",{class:c(a.tableClass)},[u("thead",{class:c(a.theadClass)},[u("tr",null,[(i(!0),s(C,null,P(y(l),f=>(i(),s("th",{key:f.key,class:c([D(f),{"text-bold text-black":y(g).fieldName===f.key}]),onClick:v=>R(f)},[_(h(f.label)+" ",1),y(g).fieldName===f.key&&y(g).order==="asc"?(i(),s("span",Fe," \u2191 ")):m("",!0),y(g).fieldName===f.key&&y(g).order==="desc"?(i(),s("span",Ae," \u2193 ")):m("",!0)],10,Be))),128))])],2),a.loadingType==="placeholder"&&(a.loading||y(b))?(i(),s("tbody",Le,[(i(!0),s(C,null,P(a.placeholderCount,f=>(i(),s("tr",{key:f,class:c(f%2==0?"bg-white":"bg-gray-50")},[(i(!0),s(C,null,P(a.columns,v=>(i(),s("td",{key:v.key,class:c(["",B(v)])},[k(W,{class:c(M(v)),rounded:!0},{default:Q(()=>[k(q,{class:"w-full h-6",lines:1})]),_:2},1032,["class"])],2))),128))],2))),128))])):(i(),s("tbody",Ve,[(i(!0),s(C,null,P(y(x),(f,v)=>(i(),s("tr",{key:v,class:c(v%2==0?"bg-white":"bg-gray-50")},[(i(!0),s(C,null,P(a.columns,S=>(i(),s("td",{key:S.key,class:c(["",B(S)])},[L(r.$slots,"cell-"+S.key,{row:f},()=>[_(h(H(f.data,S.key)),1)])],2))),128))],2))),128))]))],2),a.loadingType==="spinner"&&(a.loading||y(b))?(i(),s("div",Ie,[k($,{class:"w-10 h-10 text-primary-500"})])):!a.loading&&!y(b)&&y(x)&&y(x).length===0?(i(),s("div",De,[k(G,{name:"ExclamationCircleIcon",class:"w-6 h-6 text-gray-400"}),u("span",Me,h(a.noResultsMessage),1)])):m("",!0),y(d)?(i(),X(_e,{key:2,pagination:y(d),onPageChange:j},null,8,["pagination"])):m("",!0)])])])])}}};export{Re as default}; +import{I as O,r as T,o as i,e as s,h as u,m as c,t as h,j as m,f as k,F as C,y as P,i as _,a0 as N,B as F,k as A,C as J,D as K,g as L,u as f,w as Q,A as U,l as X}from"./vendor.01d0adc5.js";import{_ as Z,S as $}from"./main.24f7a84b.js";function V(a,t){if(!t||a===null||typeof a!="object")return a;const[e,n]=t.split(/\.(.+)/);return V(a[e],n)}function ee(a,t){return t.reduce((e,n)=>(e[n]=a[n],e),{})}class te{constructor(t,e){this.data=t,this.columns=e}getValue(t){return V(this.data,t)}getColumn(t){return this.columns.find(e=>e.key===t)}getSortableValue(t){const e=this.getColumn(t).dataType;let n=this.getValue(t);if(n==null)return"";if(n instanceof String&&(n=n.toLowerCase()),e.startsWith("date")){const b=e.replace("date:","");return O(n,b).format("YYYYMMDDHHmmss")}return e==="numeric"?n:n.toString()}}class ae{constructor(t){const e=ee(t,["key","label","thClass","tdClass","sortBy","sortable","hidden","dataType"]);for(const n in e)this[n]=t[n];e.dataType||(this.dataType="string"),e.sortable===void 0&&(this.sortable=!0)}getFilterFieldName(){return this.filterOn||this.key}isSortable(){return this.sortable}getSortPredicate(t,e){const n=this.getSortFieldName(),l=e.find(g=>g.key===n).dataType;return l.startsWith("date")||l==="numeric"?(g,d)=>{const p=g.getSortableValue(n),x=d.getSortableValue(n);return t==="desc"?x{const p=g.getSortableValue(n),x=d.getSortableValue(n);return t==="desc"?x.localeCompare(p):p.localeCompare(x)}}getSortFieldName(){return this.sortBy||this.key}}const ne={props:{pagination:{type:Object,default:()=>({})}},computed:{pages(){return this.pagination.totalPages===void 0?[]:this.pageLinks()},hasFirst(){return this.pagination.currentPage>=4||this.pagination.totalPages<10},hasLast(){return this.pagination.currentPage<=this.pagination.totalPages-3||this.pagination.totalPages<10},hasFirstEllipsis(){return this.pagination.currentPage>=4&&this.pagination.totalPages>=10},hasLastEllipsis(){return this.pagination.currentPage<=this.pagination.totalPages-3&&this.pagination.totalPages>=10},shouldShowPagination(){return this.pagination.totalPages===void 0||this.pagination.count===0?!1:this.pagination.totalPages>1}},methods:{isActive(a){return(this.pagination.currentPage||1)===a},pageClicked(a){a==="..."||a===this.pagination.currentPage||a>this.pagination.totalPages||a<1||this.$emit("pageChange",a)},pageLinks(){const a=[];let t=2,e=this.pagination.totalPages-1;this.pagination.totalPages>=10&&(t=Math.max(1,this.pagination.currentPage-2),e=Math.min(this.pagination.currentPage+2,this.pagination.totalPages));for(let n=t;n<=e;n++)a.push(n);return a}}},re={key:0,class:"flex items-center justify-between px-4 py-3 bg-white border-t border-gray-200 sm:px-6"},ie={class:"flex justify-between flex-1 sm:hidden"},se={class:"hidden sm:flex-1 sm:flex sm:items-center sm:justify-between"},le={class:"text-sm text-gray-700"},oe=_(" Showing "+h(" ")+" "),de={key:0,class:"font-medium"},ge=_(" "+h(" ")+" to "+h(" ")+" "),ue={key:1,class:"font-medium"},ce={key:0},he={key:1},fe=_(" "+h(" ")+" of "+h(" ")+" "),ye={key:2,class:"font-medium"},me=_(" "+h(" ")+" results "),pe={class:"relative z-0 inline-flex -space-x-px rounded-md shadow-sm","aria-label":"Pagination"},be=u("span",{class:"sr-only"},"Previous",-1),xe={key:1,class:"relative inline-flex items-center px-4 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300"},ve=["onClick"],ke={key:2,class:"relative inline-flex items-center px-4 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300"},Ce=u("span",{class:"sr-only"},"Next",-1);function Pe(a,t,e,n,b,l){const g=T("BaseIcon");return l.shouldShowPagination?(i(),s("div",re,[u("div",ie,[u("a",{href:"#",class:c([{"disabled cursor-normal pointer-events-none !bg-gray-100 !text-gray-400":e.pagination.currentPage===1},"relative inline-flex items-center px-4 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded-md hover:bg-gray-50"]),onClick:t[0]||(t[0]=d=>l.pageClicked(e.pagination.currentPage-1))}," Previous ",2),u("a",{href:"#",class:c([{"disabled cursor-default pointer-events-none !bg-gray-100 !text-gray-400":e.pagination.currentPage===e.pagination.totalPages},"relative inline-flex items-center px-4 py-2 ml-3 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded-md hover:bg-gray-50"]),onClick:t[1]||(t[1]=d=>l.pageClicked(e.pagination.currentPage+1))}," Next ",2)]),u("div",se,[u("div",null,[u("p",le,[oe,e.pagination.limit&&e.pagination.currentPage?(i(),s("span",de,h(e.pagination.currentPage*e.pagination.limit-(e.pagination.limit-1)),1)):m("",!0),ge,e.pagination.limit&&e.pagination.currentPage?(i(),s("span",ue,[e.pagination.currentPage*e.pagination.limit<=e.pagination.totalCount?(i(),s("span",ce,h(e.pagination.currentPage*e.pagination.limit),1)):(i(),s("span",he,h(e.pagination.totalCount),1))])):m("",!0),fe,e.pagination.totalCount?(i(),s("span",ye,h(e.pagination.totalCount),1)):m("",!0),me])]),u("div",null,[u("nav",pe,[u("a",{href:"#",class:c([{"disabled cursor-normal pointer-events-none !bg-gray-100 !text-gray-400":e.pagination.currentPage===1},"relative inline-flex items-center px-2 py-2 text-sm font-medium text-gray-500 bg-white border border-gray-300 rounded-l-md hover:bg-gray-50"]),onClick:t[2]||(t[2]=d=>l.pageClicked(e.pagination.currentPage-1))},[be,k(g,{name:"ChevronLeftIcon"})],2),l.hasFirst?(i(),s("a",{key:0,href:"#","aria-current":"page",class:c([{"z-10 bg-primary-50 border-primary-500 text-primary-600":l.isActive(1),"bg-white border-gray-300 text-gray-500 hover:bg-gray-50":!l.isActive(1)},"relative inline-flex items-center px-4 py-2 text-sm font-medium border"]),onClick:t[3]||(t[3]=d=>l.pageClicked(1))}," 1 ",2)):m("",!0),l.hasFirstEllipsis?(i(),s("span",xe," ... ")):m("",!0),(i(!0),s(C,null,P(l.pages,d=>(i(),s("a",{key:d,href:"#",class:c([{"z-10 bg-primary-50 border-primary-500 text-primary-600":l.isActive(d),"bg-white border-gray-300 text-gray-500 hover:bg-gray-50":!l.isActive(d),disabled:d==="..."},"relative items-center hidden px-4 py-2 text-sm font-medium text-gray-500 bg-white border border-gray-300 hover:bg-gray-50 md:inline-flex"]),onClick:p=>l.pageClicked(d)},h(d),11,ve))),128)),l.hasLastEllipsis?(i(),s("span",ke," ... ")):m("",!0),l.hasLast?(i(),s("a",{key:3,href:"#","aria-current":"page",class:c([{"z-10 bg-primary-50 border-primary-500 text-primary-600":l.isActive(e.pagination.totalPages),"bg-white border-gray-300 text-gray-500 hover:bg-gray-50":!l.isActive(e.pagination.totalPages)},"relative inline-flex items-center px-4 py-2 text-sm font-medium border"]),onClick:t[4]||(t[4]=d=>l.pageClicked(e.pagination.totalPages))},h(e.pagination.totalPages),3)):m("",!0),u("a",{href:"#",class:c(["relative inline-flex items-center px-2 py-2 text-sm font-medium text-gray-500 bg-white border border-gray-300 rounded-r-md hover:bg-gray-50",{"disabled cursor-default pointer-events-none !bg-gray-100 !text-gray-400":e.pagination.currentPage===e.pagination.totalPages}]),onClick:t[5]||(t[5]=d=>l.pageClicked(e.pagination.currentPage+1))},[Ce,k(g,{name:"ChevronRightIcon"})],2)])])])])):m("",!0)}var _e=Z(ne,[["render",Pe]]);const we={class:"flex flex-col"},Se={class:"-my-2 overflow-x-auto sm:-mx-6 lg:-mx-8 pb-4 lg:pb-0"},Te={class:"inline-block min-w-full py-2 align-middle sm:px-6 lg:px-8"},Ne={class:"relative overflow-hidden bg-white border-b border-gray-200 shadow sm:rounded-lg"},Be=["onClick"],Fe={key:0,class:"asc-direction"},Ae={key:1,class:"desc-direction"},Le={key:0},Ve={key:1},Ie={key:0,class:"absolute top-0 left-0 z-10 flex items-center justify-center w-full h-full bg-white bg-opacity-60"},De={key:1,class:"text-center text-gray-500 pb-2 flex h-[160px] justify-center items-center flex-col"},Me={class:"block mt-1"},Re={props:{columns:{type:Array,required:!0},data:{type:[Array,Function],required:!0},sortBy:{type:String,default:""},sortOrder:{type:String,default:""},tableClass:{type:String,default:"min-w-full divide-y divide-gray-200"},theadClass:{type:String,default:"bg-gray-50"},tbodyClass:{type:String,default:""},noResultsMessage:{type:String,default:"No Results Found"},loading:{type:Boolean,default:!1},loadingType:{type:String,default:"placeholder",validator:function(a){return["placeholder","spinner"].indexOf(a)!==-1}},placeholderCount:{type:Number,default:3}},setup(a,{expose:t}){const e=a;let n=N([]),b=F(!1),l=N(e.columns.map(r=>new ae(r))),g=N({fieldName:"",order:""}),d=F("");const p=A(()=>Array.isArray(e.data)),x=A(()=>{if(!p.value||g.fieldName===""||l.length===0)return n.value;const r=I(g.fieldName);return r?[...n.value].sort(r.getSortPredicate(g.order,l)):n.value});function I(r){return l.find(o=>o.key===r)}function D(r){let o="whitespace-nowrap px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider";return r.defaultThClass&&(o=r.defaultThClass),r.sortable?o=`${o} cursor-pointer`:o=`${o} pointer-events-none`,r.thClass&&(o=`${o} ${r.thClass}`),o}function B(r){let o="px-6 py-4 text-sm text-gray-500 whitespace-nowrap";return r.defaultTdClass&&(o=r.defaultTdClass),r.tdClass&&(o=`${o} ${r.tdClass}`),o}function M(r){let o="w-full";return r.placeholderClass&&(o=`${o} ${r.placeholderClass}`),o}function z(){return d.value=null,e.data}async function E(){const r=d.value&&d.value.currentPage||1;b.value=!0;const o=await e.data({sort:g,page:r});return b.value=!1,d.value=o.pagination,o.data}function R(r){g.fieldName!==r.key?(g.fieldName=r.key,g.order="asc"):g.order=g.order==="asc"?"desc":"asc",p.value||w()}async function w(){const r=p.value?z():await E();n.value=r.map(o=>new te(o,l))}async function j(r){d.value.currentPage=r,await w()}async function Y(){await w()}function H(r,o){return U.exports.get(r,o)}return p.value&&J(()=>e.data,()=>{w()}),K(async()=>{await w()}),t({refresh:Y}),(r,o)=>{const q=T("base-content-placeholders-text"),W=T("base-content-placeholders"),G=T("BaseIcon");return i(),s("div",we,[u("div",Se,[u("div",Te,[u("div",Ne,[L(r.$slots,"header"),u("table",{class:c(a.tableClass)},[u("thead",{class:c(a.theadClass)},[u("tr",null,[(i(!0),s(C,null,P(f(l),y=>(i(),s("th",{key:y.key,class:c([D(y),{"text-bold text-black":f(g).fieldName===y.key}]),onClick:v=>R(y)},[_(h(y.label)+" ",1),f(g).fieldName===y.key&&f(g).order==="asc"?(i(),s("span",Fe," \u2191 ")):m("",!0),f(g).fieldName===y.key&&f(g).order==="desc"?(i(),s("span",Ae," \u2193 ")):m("",!0)],10,Be))),128))])],2),a.loadingType==="placeholder"&&(a.loading||f(b))?(i(),s("tbody",Le,[(i(!0),s(C,null,P(a.placeholderCount,y=>(i(),s("tr",{key:y,class:c(y%2==0?"bg-white":"bg-gray-50")},[(i(!0),s(C,null,P(a.columns,v=>(i(),s("td",{key:v.key,class:c(["",B(v)])},[k(W,{class:c(M(v)),rounded:!0},{default:Q(()=>[k(q,{class:"w-full h-6",lines:1})]),_:2},1032,["class"])],2))),128))],2))),128))])):(i(),s("tbody",Ve,[(i(!0),s(C,null,P(f(x),(y,v)=>(i(),s("tr",{key:v,class:c(v%2==0?"bg-white":"bg-gray-50")},[(i(!0),s(C,null,P(a.columns,S=>(i(),s("td",{key:S.key,class:c(["",B(S)])},[L(r.$slots,"cell-"+S.key,{row:y},()=>[_(h(H(y.data,S.key)),1)])],2))),128))],2))),128))]))],2),a.loadingType==="spinner"&&(a.loading||f(b))?(i(),s("div",Ie,[k($,{class:"w-10 h-10 text-primary-500"})])):!a.loading&&!f(b)&&f(x)&&f(x).length===0?(i(),s("div",De,[k(G,{name:"ExclamationCircleIcon",class:"w-6 h-6 text-gray-400"}),u("span",Me,h(a.noResultsMessage),1)])):m("",!0),f(d)?(i(),X(_e,{key:2,pagination:f(d),onPageChange:j},null,8,["pagination"])):m("",!0)])])])])}}};export{Re as default}; diff --git a/public/build/assets/CategoryModal.9a2e05b9.js b/public/build/assets/CategoryModal.5e03bcbb.js similarity index 68% rename from public/build/assets/CategoryModal.9a2e05b9.js rename to public/build/assets/CategoryModal.5e03bcbb.js index bd917ea4b..bef7f0f46 100644 --- a/public/build/assets/CategoryModal.9a2e05b9.js +++ b/public/build/assets/CategoryModal.5e03bcbb.js @@ -1 +1 @@ -import{J as j,B as k,k as g,L as y,M as N,N as L,S as T,T as q,r as i,o as B,l as b,w as r,h as m,i as f,t as C,u as e,f as n,m as D,j as G,U}from"./vendor.01d0adc5.js";import{u as z}from"./category.4b37f0ed.js";import{c as E}from"./main.75722495.js";const A={class:"flex justify-between w-full"},J=["onSubmit"],X={class:"p-8 sm:p-6"},F={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid border-modal-bg"},Q={setup(H){const t=z(),u=E(),{t:p}=j();let c=k(!1);const h=g(()=>({currentCategory:{name:{required:y.withMessage(p("validation.required"),N),minLength:y.withMessage(p("validation.name_min_length",{count:3}),L(3))},description:{maxLength:y.withMessage(p("validation.description_maxlength",{count:255}),T(255))}}})),o=q(h,g(()=>t)),w=g(()=>u.active&&u.componentName==="CategoryModal");async function I(){if(o.value.currentCategory.$touch(),o.value.currentCategory.$invalid)return!0;const s=t.isEdit?t.updateCategory:t.addCategory;c.value=!0,await s(t.currentCategory),c.value=!1,u.refreshData&&u.refreshData(),d()}function d(){u.closeModal(),setTimeout(()=>{t.$reset(),o.value.$reset()},300)}return(s,a)=>{const v=i("BaseIcon"),x=i("BaseInput"),_=i("BaseInputGroup"),M=i("BaseTextarea"),V=i("BaseInputGrid"),$=i("BaseButton"),S=i("BaseModal");return B(),b(S,{show:e(w),onClose:d},{header:r(()=>[m("div",A,[f(C(e(u).title)+" ",1),n(v,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:d})])]),default:r(()=>[m("form",{action:"",onSubmit:U(I,["prevent"])},[m("div",X,[n(V,{layout:"one-column"},{default:r(()=>[n(_,{label:s.$t("expenses.category"),error:e(o).currentCategory.name.$error&&e(o).currentCategory.name.$errors[0].$message,required:""},{default:r(()=>[n(x,{modelValue:e(t).currentCategory.name,"onUpdate:modelValue":a[0]||(a[0]=l=>e(t).currentCategory.name=l),invalid:e(o).currentCategory.name.$error,type:"text",onInput:a[1]||(a[1]=l=>e(o).currentCategory.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),n(_,{label:s.$t("expenses.description"),error:e(o).currentCategory.description.$error&&e(o).currentCategory.description.$errors[0].$message},{default:r(()=>[n(M,{modelValue:e(t).currentCategory.description,"onUpdate:modelValue":a[2]||(a[2]=l=>e(t).currentCategory.description=l),rows:"4",cols:"50",onInput:a[3]||(a[3]=l=>e(o).currentCategory.description.$touch())},null,8,["modelValue"])]),_:1},8,["label","error"])]),_:1})]),m("div",F,[n($,{type:"button",variant:"primary-outline",class:"mr-3 text-sm",onClick:d},{default:r(()=>[f(C(s.$t("general.cancel")),1)]),_:1}),n($,{loading:e(c),disabled:e(c),variant:"primary",type:"submit"},{left:r(l=>[e(c)?G("",!0):(B(),b(v,{key:0,name:"SaveIcon",class:D(l.class)},null,8,["class"]))]),default:r(()=>[f(" "+C(e(t).isEdit?s.$t("general.update"):s.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,J)]),_:1},8,["show"])}}};export{Q as _}; +import{J as j,B as k,k as g,L as y,M as N,N as L,S as T,T as q,r as i,o as B,l as b,w as r,h as m,i as f,t as C,u as e,f as n,m as D,j as G,U}from"./vendor.01d0adc5.js";import{u as z}from"./category.5ef2a7e7.js";import{c as E}from"./main.24f7a84b.js";const A={class:"flex justify-between w-full"},J=["onSubmit"],X={class:"p-8 sm:p-6"},F={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid border-modal-bg"},Q={setup(H){const t=z(),u=E(),{t:p}=j();let c=k(!1);const h=g(()=>({currentCategory:{name:{required:y.withMessage(p("validation.required"),N),minLength:y.withMessage(p("validation.name_min_length",{count:3}),L(3))},description:{maxLength:y.withMessage(p("validation.description_maxlength",{count:255}),T(255))}}})),a=q(h,g(()=>t)),w=g(()=>u.active&&u.componentName==="CategoryModal");async function I(){if(a.value.currentCategory.$touch(),a.value.currentCategory.$invalid)return!0;const s=t.isEdit?t.updateCategory:t.addCategory;c.value=!0,await s(t.currentCategory),c.value=!1,u.refreshData&&u.refreshData(),d()}function d(){u.closeModal(),setTimeout(()=>{t.$reset(),a.value.$reset()},300)}return(s,o)=>{const v=i("BaseIcon"),x=i("BaseInput"),_=i("BaseInputGroup"),M=i("BaseTextarea"),V=i("BaseInputGrid"),$=i("BaseButton"),S=i("BaseModal");return B(),b(S,{show:e(w),onClose:d},{header:r(()=>[m("div",A,[f(C(e(u).title)+" ",1),n(v,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:d})])]),default:r(()=>[m("form",{action:"",onSubmit:U(I,["prevent"])},[m("div",X,[n(V,{layout:"one-column"},{default:r(()=>[n(_,{label:s.$t("expenses.category"),error:e(a).currentCategory.name.$error&&e(a).currentCategory.name.$errors[0].$message,required:""},{default:r(()=>[n(x,{modelValue:e(t).currentCategory.name,"onUpdate:modelValue":o[0]||(o[0]=l=>e(t).currentCategory.name=l),invalid:e(a).currentCategory.name.$error,type:"text",onInput:o[1]||(o[1]=l=>e(a).currentCategory.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),n(_,{label:s.$t("expenses.description"),error:e(a).currentCategory.description.$error&&e(a).currentCategory.description.$errors[0].$message},{default:r(()=>[n(M,{modelValue:e(t).currentCategory.description,"onUpdate:modelValue":o[2]||(o[2]=l=>e(t).currentCategory.description=l),rows:"4",cols:"50",onInput:o[3]||(o[3]=l=>e(a).currentCategory.description.$touch())},null,8,["modelValue"])]),_:1},8,["label","error"])]),_:1})]),m("div",F,[n($,{type:"button",variant:"primary-outline",class:"mr-3 text-sm",onClick:d},{default:r(()=>[f(C(s.$t("general.cancel")),1)]),_:1}),n($,{loading:e(c),disabled:e(c),variant:"primary",type:"submit"},{left:r(l=>[e(c)?G("",!0):(B(),b(v,{key:0,name:"SaveIcon",class:D(l.class)},null,8,["class"]))]),default:r(()=>[f(" "+C(e(t).isEdit?s.$t("general.update"):s.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,J)]),_:1},8,["show"])}}};export{Q as _}; diff --git a/public/build/assets/CompanyInfoSettings.a1bb8458.js b/public/build/assets/CompanyInfoSettings.d640f156.js similarity index 99% rename from public/build/assets/CompanyInfoSettings.a1bb8458.js rename to public/build/assets/CompanyInfoSettings.d640f156.js index d488a39a3..c0d00c907 100644 --- a/public/build/assets/CompanyInfoSettings.a1bb8458.js +++ b/public/build/assets/CompanyInfoSettings.d640f156.js @@ -1 +1 @@ -var te=Object.defineProperty;var L=Object.getOwnPropertySymbols;var oe=Object.prototype.hasOwnProperty,se=Object.prototype.propertyIsEnumerable;var T=(f,s,d)=>s in f?te(f,s,{enumerable:!0,configurable:!0,writable:!0,value:d}):f[s]=d,A=(f,s)=>{for(var d in s||(s={}))oe.call(s,d)&&T(f,d,s[d]);if(L)for(var d of L(s))se.call(s,d)&&T(f,d,s[d]);return f};import{aN as ne,J as R,B as h,a0 as J,k as F,L as I,M as k,P as le,T as E,r as i,o as S,l as q,w as r,h as u,t as v,u as e,f as o,i as j,m as O,j as z,U as P,ah as de,N as re,e as H,x as ie,F as ue}from"./vendor.01d0adc5.js";import{b as K,c as Q,d as W}from"./main.75722495.js";const me={class:"flex justify-between w-full"},ce={class:"px-6 pt-6"},pe={class:"font-medium text-lg text-left"},_e={class:"mt-2 text-sm leading-snug text-gray-500",style:{"max-width":"680px"}},fe=["onSubmit"],ye={class:"p-4 sm:p-6 space-y-4"},ge={class:"z-0 flex justify-end p-4 bg-gray-50 border-modal-bg"},ve={setup(f){const s=K(),d=Q(),M=W(),B=ne(),{t:D}=R();let m=h(!1);const a=J({id:s.selectedCompany.id,name:null}),b=F(()=>d.active&&d.componentName==="DeleteCompanyModal"),V={formData:{name:{required:I.withMessage(D("validation.required"),k),sameAsName:I.withMessage(D("validation.company_name_not_same"),le(s.selectedCompany.name))}}},p=E(V,{formData:a},{$scope:!1});async function U(){if(p.value.$touch(),p.value.$invalid)return!0;const g=s.companies[0];m.value=!0;try{const y=await s.deleteCompany(a);console.log(y.data.success),y.data.success&&(C(),await s.setSelectedCompany(g),B.push("/admin/dashboard"),await M.setIsAppLoaded(!1),await M.bootstrap()),m.value=!1}catch{m.value=!1}}function _(){a.id=null,a.name="",p.value.$reset()}function C(){d.closeModal(),setTimeout(()=>{_(),p.value.$reset()},300)}return(g,y)=>{const x=i("BaseInput"),l=i("BaseInputGroup"),t=i("BaseButton"),N=i("BaseIcon"),c=i("BaseModal");return S(),q(c,{show:e(b),onClose:C},{default:r(()=>[u("div",me,[u("div",ce,[u("h6",pe,v(e(d).title),1),u("p",_e,v(g.$t("settings.company_info.delete_company_modal_desc",{company:e(s).selectedCompany.name})),1)])]),u("form",{action:"",onSubmit:P(U,["prevent"])},[u("div",ye,[o(l,{label:g.$t("settings.company_info.delete_company_modal_label",{company:e(s).selectedCompany.name}),error:e(p).formData.name.$error&&e(p).formData.name.$errors[0].$message,required:""},{default:r(()=>[o(x,{modelValue:e(a).name,"onUpdate:modelValue":y[0]||(y[0]=$=>e(a).name=$),invalid:e(p).formData.name.$error,onInput:y[1]||(y[1]=$=>e(p).formData.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),u("div",ge,[o(t,{class:"mr-3 text-sm",variant:"primary-outline",outline:"",type:"button",onClick:C},{default:r(()=>[j(v(g.$t("general.cancel")),1)]),_:1}),o(t,{loading:e(m),disabled:e(m),variant:"danger",type:"submit"},{left:r($=>[e(m)?z("",!0):(S(),q(N,{key:0,name:"TrashIcon",class:O($.class)},null,8,["class"]))]),default:r(()=>[j(" "+v(g.$t("general.delete")),1)]),_:1},8,["loading","disabled"])])],40,fe)]),_:1},8,["show"])}}},be=["onSubmit"],$e={key:0,class:"py-5"},Be={class:"text-lg leading-6 font-medium text-gray-900"},Ve={class:"mt-2 max-w-xl text-sm text-gray-500"},Ce={class:"mt-5"},Se={setup(f){const s=K(),d=W(),M=Q(),{t:B}=R(),D=de("utils");let m=h(!1);const a=J({name:null,logo:null,address:{address_street_1:"",address_street_2:"",website:"",country_id:null,state:"",city:"",phone:"",zip:""}});D.mergeSettings(a,A({},s.selectedCompany));let b=h([]),V=h(null),p=h(null);a.logo&&b.value.push({image:a.logo});const U=F(()=>({name:{required:I.withMessage(B("validation.required"),k),minLength:I.withMessage(B("validation.name_min_length"),re(3))},address:{country_id:{required:I.withMessage(B("validation.required"),k)}}})),_=E(U,F(()=>a));d.fetchCountries();function C(l,t,N,c){p.value=c.name,V.value=t}function g(){V.value=null}async function y(){if(_.value.$touch(),_.value.$invalid)return!0;if(m.value=!0,(await s.updateCompany(a)).data.data){if(V.value){let t=new FormData;t.append("company_logo",JSON.stringify({name:p.value,data:V.value})),await s.updateCompanyLogo(t)}m.value=!1}m.value=!1}function x(l){M.openModal({title:B("settings.company_info.are_you_absolutely_sure"),componentName:"DeleteCompanyModal",size:"sm"})}return(l,t)=>{const N=i("BaseFileUploader"),c=i("BaseInputGroup"),$=i("BaseInputGrid"),w=i("BaseInput"),X=i("BaseMultiselect"),G=i("BaseTextarea"),Y=i("BaseIcon"),Z=i("BaseButton"),ee=i("BaseDivider"),ae=i("BaseSettingCard");return S(),H(ue,null,[u("form",{onSubmit:P(y,["prevent"])},[o(ae,{title:l.$t("settings.company_info.company_info"),description:l.$t("settings.company_info.section_description")},{default:r(()=>[o($,{class:"mt-5"},{default:r(()=>[o(c,{label:l.$tc("settings.company_info.company_logo")},{default:r(()=>[o(N,{modelValue:e(b),"onUpdate:modelValue":t[0]||(t[0]=n=>ie(b)?b.value=n:b=n),base64:"",onChange:C,onRemove:g},null,8,["modelValue"])]),_:1},8,["label"])]),_:1}),o($,{class:"mt-5"},{default:r(()=>[o(c,{label:l.$tc("settings.company_info.company_name"),error:e(_).name.$error&&e(_).name.$errors[0].$message,required:""},{default:r(()=>[o(w,{modelValue:e(a).name,"onUpdate:modelValue":t[1]||(t[1]=n=>e(a).name=n),invalid:e(_).name.$error,onBlur:t[2]||(t[2]=n=>e(_).name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),o(c,{label:l.$tc("settings.company_info.phone")},{default:r(()=>[o(w,{modelValue:e(a).address.phone,"onUpdate:modelValue":t[3]||(t[3]=n=>e(a).address.phone=n)},null,8,["modelValue"])]),_:1},8,["label"]),o(c,{label:l.$tc("settings.company_info.country"),error:e(_).address.country_id.$error&&e(_).address.country_id.$errors[0].$message,required:""},{default:r(()=>[o(X,{modelValue:e(a).address.country_id,"onUpdate:modelValue":t[4]||(t[4]=n=>e(a).address.country_id=n),label:"name",invalid:e(_).address.country_id.$error,options:e(d).countries,"value-prop":"id","can-deselect":!0,"can-clear":!1,searchable:"","track-by":"name"},null,8,["modelValue","invalid","options"])]),_:1},8,["label","error"]),o(c,{label:l.$tc("settings.company_info.state")},{default:r(()=>[o(w,{modelValue:e(a).address.state,"onUpdate:modelValue":t[5]||(t[5]=n=>e(a).address.state=n),name:"state",type:"text"},null,8,["modelValue"])]),_:1},8,["label"]),o(c,{label:l.$tc("settings.company_info.city")},{default:r(()=>[o(w,{modelValue:e(a).address.city,"onUpdate:modelValue":t[6]||(t[6]=n=>e(a).address.city=n),type:"text"},null,8,["modelValue"])]),_:1},8,["label"]),o(c,{label:l.$tc("settings.company_info.zip")},{default:r(()=>[o(w,{modelValue:e(a).address.zip,"onUpdate:modelValue":t[7]||(t[7]=n=>e(a).address.zip=n)},null,8,["modelValue"])]),_:1},8,["label"]),u("div",null,[o(c,{label:l.$tc("settings.company_info.address")},{default:r(()=>[o(G,{modelValue:e(a).address.address_street_1,"onUpdate:modelValue":t[8]||(t[8]=n=>e(a).address.address_street_1=n),rows:"2"},null,8,["modelValue"])]),_:1},8,["label"]),o(G,{modelValue:e(a).address.address_street_2,"onUpdate:modelValue":t[9]||(t[9]=n=>e(a).address.address_street_2=n),rows:"2",row:2,class:"mt-2"},null,8,["modelValue"])])]),_:1}),o(Z,{loading:e(m),disabled:e(m),type:"submit",class:"mt-6"},{left:r(n=>[e(m)?z("",!0):(S(),q(Y,{key:0,class:O(n.class),name:"SaveIcon"},null,8,["class"]))]),default:r(()=>[j(" "+v(l.$tc("settings.company_info.save")),1)]),_:1},8,["loading","disabled"]),e(s).companies.length!==1?(S(),H("div",$e,[o(ee,{class:"my-4"}),u("h3",Be,v(l.$tc("settings.company_info.delete_company")),1),u("div",Ve,[u("p",null,v(l.$tc("settings.company_info.delete_company_description")),1)]),u("div",Ce,[u("button",{type:"button",class:"inline-flex items-center justify-center px-4 py-2 border border-transparent font-medium rounded-md text-red-700 bg-red-100 hover:bg-red-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 sm:text-sm",onClick:x},v(l.$tc("general.delete")),1)])])):z("",!0)]),_:1},8,["title","description"])],40,be),o(ve)],64)}}};export{Se as default}; +var te=Object.defineProperty;var L=Object.getOwnPropertySymbols;var oe=Object.prototype.hasOwnProperty,se=Object.prototype.propertyIsEnumerable;var T=(f,s,d)=>s in f?te(f,s,{enumerable:!0,configurable:!0,writable:!0,value:d}):f[s]=d,A=(f,s)=>{for(var d in s||(s={}))oe.call(s,d)&&T(f,d,s[d]);if(L)for(var d of L(s))se.call(s,d)&&T(f,d,s[d]);return f};import{aN as ne,J as R,B as h,a0 as J,k as F,L as I,M as k,P as le,T as E,r as i,o as S,l as q,w as r,h as u,t as v,u as e,f as o,i as j,m as O,j as z,U as P,ah as de,N as re,e as H,x as ie,F as ue}from"./vendor.01d0adc5.js";import{b as K,c as Q,d as W}from"./main.24f7a84b.js";const me={class:"flex justify-between w-full"},ce={class:"px-6 pt-6"},pe={class:"font-medium text-lg text-left"},_e={class:"mt-2 text-sm leading-snug text-gray-500",style:{"max-width":"680px"}},fe=["onSubmit"],ye={class:"p-4 sm:p-6 space-y-4"},ge={class:"z-0 flex justify-end p-4 bg-gray-50 border-modal-bg"},ve={setup(f){const s=K(),d=Q(),M=W(),B=ne(),{t:D}=R();let m=h(!1);const a=J({id:s.selectedCompany.id,name:null}),b=F(()=>d.active&&d.componentName==="DeleteCompanyModal"),V={formData:{name:{required:I.withMessage(D("validation.required"),k),sameAsName:I.withMessage(D("validation.company_name_not_same"),le(s.selectedCompany.name))}}},p=E(V,{formData:a},{$scope:!1});async function U(){if(p.value.$touch(),p.value.$invalid)return!0;const g=s.companies[0];m.value=!0;try{const y=await s.deleteCompany(a);console.log(y.data.success),y.data.success&&(C(),await s.setSelectedCompany(g),B.push("/admin/dashboard"),await M.setIsAppLoaded(!1),await M.bootstrap()),m.value=!1}catch{m.value=!1}}function _(){a.id=null,a.name="",p.value.$reset()}function C(){d.closeModal(),setTimeout(()=>{_(),p.value.$reset()},300)}return(g,y)=>{const x=i("BaseInput"),l=i("BaseInputGroup"),t=i("BaseButton"),N=i("BaseIcon"),c=i("BaseModal");return S(),q(c,{show:e(b),onClose:C},{default:r(()=>[u("div",me,[u("div",ce,[u("h6",pe,v(e(d).title),1),u("p",_e,v(g.$t("settings.company_info.delete_company_modal_desc",{company:e(s).selectedCompany.name})),1)])]),u("form",{action:"",onSubmit:P(U,["prevent"])},[u("div",ye,[o(l,{label:g.$t("settings.company_info.delete_company_modal_label",{company:e(s).selectedCompany.name}),error:e(p).formData.name.$error&&e(p).formData.name.$errors[0].$message,required:""},{default:r(()=>[o(x,{modelValue:e(a).name,"onUpdate:modelValue":y[0]||(y[0]=$=>e(a).name=$),invalid:e(p).formData.name.$error,onInput:y[1]||(y[1]=$=>e(p).formData.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),u("div",ge,[o(t,{class:"mr-3 text-sm",variant:"primary-outline",outline:"",type:"button",onClick:C},{default:r(()=>[j(v(g.$t("general.cancel")),1)]),_:1}),o(t,{loading:e(m),disabled:e(m),variant:"danger",type:"submit"},{left:r($=>[e(m)?z("",!0):(S(),q(N,{key:0,name:"TrashIcon",class:O($.class)},null,8,["class"]))]),default:r(()=>[j(" "+v(g.$t("general.delete")),1)]),_:1},8,["loading","disabled"])])],40,fe)]),_:1},8,["show"])}}},be=["onSubmit"],$e={key:0,class:"py-5"},Be={class:"text-lg leading-6 font-medium text-gray-900"},Ve={class:"mt-2 max-w-xl text-sm text-gray-500"},Ce={class:"mt-5"},Se={setup(f){const s=K(),d=W(),M=Q(),{t:B}=R(),D=de("utils");let m=h(!1);const a=J({name:null,logo:null,address:{address_street_1:"",address_street_2:"",website:"",country_id:null,state:"",city:"",phone:"",zip:""}});D.mergeSettings(a,A({},s.selectedCompany));let b=h([]),V=h(null),p=h(null);a.logo&&b.value.push({image:a.logo});const U=F(()=>({name:{required:I.withMessage(B("validation.required"),k),minLength:I.withMessage(B("validation.name_min_length"),re(3))},address:{country_id:{required:I.withMessage(B("validation.required"),k)}}})),_=E(U,F(()=>a));d.fetchCountries();function C(l,t,N,c){p.value=c.name,V.value=t}function g(){V.value=null}async function y(){if(_.value.$touch(),_.value.$invalid)return!0;if(m.value=!0,(await s.updateCompany(a)).data.data){if(V.value){let t=new FormData;t.append("company_logo",JSON.stringify({name:p.value,data:V.value})),await s.updateCompanyLogo(t)}m.value=!1}m.value=!1}function x(l){M.openModal({title:B("settings.company_info.are_you_absolutely_sure"),componentName:"DeleteCompanyModal",size:"sm"})}return(l,t)=>{const N=i("BaseFileUploader"),c=i("BaseInputGroup"),$=i("BaseInputGrid"),w=i("BaseInput"),X=i("BaseMultiselect"),G=i("BaseTextarea"),Y=i("BaseIcon"),Z=i("BaseButton"),ee=i("BaseDivider"),ae=i("BaseSettingCard");return S(),H(ue,null,[u("form",{onSubmit:P(y,["prevent"])},[o(ae,{title:l.$t("settings.company_info.company_info"),description:l.$t("settings.company_info.section_description")},{default:r(()=>[o($,{class:"mt-5"},{default:r(()=>[o(c,{label:l.$tc("settings.company_info.company_logo")},{default:r(()=>[o(N,{modelValue:e(b),"onUpdate:modelValue":t[0]||(t[0]=n=>ie(b)?b.value=n:b=n),base64:"",onChange:C,onRemove:g},null,8,["modelValue"])]),_:1},8,["label"])]),_:1}),o($,{class:"mt-5"},{default:r(()=>[o(c,{label:l.$tc("settings.company_info.company_name"),error:e(_).name.$error&&e(_).name.$errors[0].$message,required:""},{default:r(()=>[o(w,{modelValue:e(a).name,"onUpdate:modelValue":t[1]||(t[1]=n=>e(a).name=n),invalid:e(_).name.$error,onBlur:t[2]||(t[2]=n=>e(_).name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),o(c,{label:l.$tc("settings.company_info.phone")},{default:r(()=>[o(w,{modelValue:e(a).address.phone,"onUpdate:modelValue":t[3]||(t[3]=n=>e(a).address.phone=n)},null,8,["modelValue"])]),_:1},8,["label"]),o(c,{label:l.$tc("settings.company_info.country"),error:e(_).address.country_id.$error&&e(_).address.country_id.$errors[0].$message,required:""},{default:r(()=>[o(X,{modelValue:e(a).address.country_id,"onUpdate:modelValue":t[4]||(t[4]=n=>e(a).address.country_id=n),label:"name",invalid:e(_).address.country_id.$error,options:e(d).countries,"value-prop":"id","can-deselect":!0,"can-clear":!1,searchable:"","track-by":"name"},null,8,["modelValue","invalid","options"])]),_:1},8,["label","error"]),o(c,{label:l.$tc("settings.company_info.state")},{default:r(()=>[o(w,{modelValue:e(a).address.state,"onUpdate:modelValue":t[5]||(t[5]=n=>e(a).address.state=n),name:"state",type:"text"},null,8,["modelValue"])]),_:1},8,["label"]),o(c,{label:l.$tc("settings.company_info.city")},{default:r(()=>[o(w,{modelValue:e(a).address.city,"onUpdate:modelValue":t[6]||(t[6]=n=>e(a).address.city=n),type:"text"},null,8,["modelValue"])]),_:1},8,["label"]),o(c,{label:l.$tc("settings.company_info.zip")},{default:r(()=>[o(w,{modelValue:e(a).address.zip,"onUpdate:modelValue":t[7]||(t[7]=n=>e(a).address.zip=n)},null,8,["modelValue"])]),_:1},8,["label"]),u("div",null,[o(c,{label:l.$tc("settings.company_info.address")},{default:r(()=>[o(G,{modelValue:e(a).address.address_street_1,"onUpdate:modelValue":t[8]||(t[8]=n=>e(a).address.address_street_1=n),rows:"2"},null,8,["modelValue"])]),_:1},8,["label"]),o(G,{modelValue:e(a).address.address_street_2,"onUpdate:modelValue":t[9]||(t[9]=n=>e(a).address.address_street_2=n),rows:"2",row:2,class:"mt-2"},null,8,["modelValue"])])]),_:1}),o(Z,{loading:e(m),disabled:e(m),type:"submit",class:"mt-6"},{left:r(n=>[e(m)?z("",!0):(S(),q(Y,{key:0,class:O(n.class),name:"SaveIcon"},null,8,["class"]))]),default:r(()=>[j(" "+v(l.$tc("settings.company_info.save")),1)]),_:1},8,["loading","disabled"]),e(s).companies.length!==1?(S(),H("div",$e,[o(ee,{class:"my-4"}),u("h3",Be,v(l.$tc("settings.company_info.delete_company")),1),u("div",Ve,[u("p",null,v(l.$tc("settings.company_info.delete_company_description")),1)]),u("div",Ce,[u("button",{type:"button",class:"inline-flex items-center justify-center px-4 py-2 border border-transparent font-medium rounded-md text-red-700 bg-red-100 hover:bg-red-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 sm:text-sm",onClick:x},v(l.$tc("general.delete")),1)])])):z("",!0)]),_:1},8,["title","description"])],40,be),o(ve)],64)}}};export{Se as default}; diff --git a/public/build/assets/Create.be897594.js b/public/build/assets/Create.03dd2833.js similarity index 95% rename from public/build/assets/Create.be897594.js rename to public/build/assets/Create.03dd2833.js index abd21103b..8fd93bd19 100644 --- a/public/build/assets/Create.be897594.js +++ b/public/build/assets/Create.03dd2833.js @@ -1 +1 @@ -var ce=Object.defineProperty;var E=Object.getOwnPropertySymbols;var de=Object.prototype.hasOwnProperty,ye=Object.prototype.propertyIsEnumerable;var F=(_,s,c)=>s in _?ce(_,s,{enumerable:!0,configurable:!0,writable:!0,value:c}):_[s]=c,G=(_,s)=>{for(var c in s||(s={}))de.call(s,c)&&F(_,c,s[c]);if(E)for(var c of E(s))ye.call(s,c)&&F(_,c,s[c]);return _};import{G as pe,aN as _e,ah as fe,J as ve,B as M,a0 as Pe,k as C,L as I,M as w,aX as ge,O as be,aP as Be,T as $e,a7 as he,b1 as Ie,r as m,o as N,e as Se,f as o,w as l,h as S,u as e,l as R,m as L,j as T,i as q,t as g,x as Ce,U as Ve,F as Me}from"./vendor.01d0adc5.js";import{_ as we}from"./ExchangeRateConverter.7d8c4309.js";import{u as qe,l as Ne,m as je,b as ke,c as Ue,i as xe,d as De}from"./main.75722495.js";import{u as Ae}from"./payment.5c57bec3.js";import{_ as Ee}from"./SelectNotePopup.781ad74a.js";import{_ as Fe}from"./CreateCustomFields.a3a572c4.js";import{_ as Ge}from"./PaymentModeModal.9b5fc610.js";import"./exchange-rate.dffa79b6.js";import"./NoteModal.f6d01f84.js";const Re=["onSubmit"],Le={class:"absolute left-3.5"},Te={class:"relative w-full"},ze={class:"relative mt-6"},He={class:"z-20 float-right text-sm font-semibold leading-5 text-primary-400"},Je={class:"mb-4 text-sm font-medium text-gray-800"},nt={setup(_){const s=pe(),c=_e(),t=Ae();qe();const z=Ne();je(),ke();const H=Ue(),j=xe();De();const k=fe("utils"),{t:p}=ve();let b=M(!1),V=M(!1),f=M([]);const v=M(null),U="newEstimate",J=Pe(["customer","company","customerCustom","payment","paymentCustom"]),$=C({get:()=>t.currentPayment.amount/100,set:a=>{t.currentPayment.amount=Math.round(a*100)}}),u=C(()=>t.isFetchingInitialData),d=C(()=>s.name==="payments.edit"),x=C(()=>d.value?p("payments.edit_payment"):p("payments.new_payment")),O=C(()=>({currentPayment:{customer_id:{required:I.withMessage(p("validation.required"),w)},payment_date:{required:I.withMessage(p("validation.required"),w)},amount:{required:I.withMessage(p("validation.required"),w),between:I.withMessage(p("validation.payment_greater_than_due_amount"),ge(0,t.currentPayment.maxPayableAmount))},exchange_rate:{required:be(function(){return I.withMessage(p("validation.required"),w),t.showExchangeRate}),decimal:I.withMessage(p("validation.valid_exchange_rate"),Be)}}})),i=$e(O,t,{$scope:U});he(()=>{t.currentPayment.customer_id&&Y(t.currentPayment.customer_id),s.query.customer&&(t.currentPayment.customer_id=s.query.customer)}),t.resetCurrentPayment(),s.query.customer&&(t.currentPayment.customer_id=s.query.customer),t.fetchPaymentInitialData(d.value),s.params.id&&!d.value&&Q();async function X(){H.openModal({title:p("settings.payment_modes.add_payment_mode"),componentName:"PaymentModeModal"})}function K(a){t.currentPayment.notes=""+a.notes}async function Q(){var n;let a=await j.fetchInvoice((n=s==null?void 0:s.params)==null?void 0:n.id);t.currentPayment.customer_id=a.data.data.customer.id,t.currentPayment.invoice_id=a.data.data.id}async function W(a){a&&(v.value=f.value.find(n=>n.id===a),$.value=v.value.due_amount/100,t.currentPayment.maxPayableAmount=v.value.due_amount)}function Y(a){if(a){let n={customer_id:a,status:"DUE",limit:"all"};d.value&&(n.status=""),V.value=!0,Promise.all([j.fetchInvoices(n),z.fetchCustomer(a)]).then(async([y,B])=>{y&&(f.value=[...y.data.data]),B&&B.data&&(t.currentPayment.selectedCustomer=B.data.data,t.currentPayment.customer=B.data.data,t.currentPayment.currency=B.data.data.currency),t.currentPayment.invoice_id&&(v.value=f.value.find(P=>P.id===t.currentPayment.invoice_id),t.currentPayment.maxPayableAmount=v.value.due_amount+t.currentPayment.amount,$.value===0&&($.value=v.value.due_amount/100)),d.value&&(f.value=f.value.filter(P=>P.due_amount>0||P.id==t.currentPayment.invoice_id)),V.value=!1}).catch(y=>{V.value=!1,console.error(y,"error")})}}Ie(()=>{t.resetCurrentPayment(),f.value=[]});async function Z(){if(i.value.$touch(),i.value.$invalid)return!1;b.value=!0;let a=G({},t.currentPayment),n=null;try{n=await(d.value?t.updatePayment:t.addPayment)(a),c.push(`/admin/payments/${n.data.data.id}/view`)}catch{b.value=!1}}function ee(a){let n={userId:a};s.params.id&&(n.model_id=s.params.id),t.currentPayment.invoice_id=v.value=null,t.currentPayment.amount=0,f.value=[],t.getNextNumber(n,!0)}return(a,n)=>{const y=m("BaseBreadcrumbItem"),B=m("BaseBreadcrumb"),P=m("BaseIcon"),D=m("BaseButton"),te=m("BasePageHeader"),ae=m("BaseDatePicker"),h=m("BaseInputGroup"),ne=m("BaseInput"),oe=m("BaseCustomerSelectInput"),A=m("BaseMultiselect"),re=m("BaseMoney"),se=m("BaseSelectAction"),le=m("BaseInputGrid"),ue=m("BaseCustomInput"),me=m("BaseCard"),ie=m("BasePage");return N(),Se(Me,null,[o(Ge),o(ie,{class:"relative payment-create"},{default:l(()=>[S("form",{action:"",onSubmit:Ve(Z,["prevent"])},[o(te,{title:e(x),class:"mb-5"},{actions:l(()=>[o(D,{loading:e(b),disabled:e(b),variant:"primary",type:"submit",class:"hidden sm:flex"},{left:l(r=>[e(b)?T("",!0):(N(),R(P,{key:0,name:"SaveIcon",class:L(r.class)},null,8,["class"]))]),default:l(()=>[q(" "+g(e(d)?a.$t("payments.update_payment"):a.$t("payments.save_payment")),1)]),_:1},8,["loading","disabled"])]),default:l(()=>[o(B,null,{default:l(()=>[o(y,{title:a.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),o(y,{title:a.$tc("payments.payment",2),to:"/admin/payments"},null,8,["title"]),o(y,{title:e(x),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),o(me,null,{default:l(()=>[o(le,null,{default:l(()=>[o(h,{label:a.$t("payments.date"),"content-loading":e(u),required:"",error:e(i).currentPayment.payment_date.$error&&e(i).currentPayment.payment_date.$errors[0].$message},{default:l(()=>[o(ae,{modelValue:e(t).currentPayment.payment_date,"onUpdate:modelValue":[n[0]||(n[0]=r=>e(t).currentPayment.payment_date=r),n[1]||(n[1]=r=>e(i).currentPayment.payment_date.$touch())],"content-loading":e(u),"calendar-button":!0,"calendar-button-icon":"calendar",invalid:e(i).currentPayment.payment_date.$error},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),o(h,{label:a.$t("payments.payment_number"),"content-loading":e(u),required:""},{default:l(()=>[o(ne,{modelValue:e(t).currentPayment.payment_number,"onUpdate:modelValue":n[2]||(n[2]=r=>e(t).currentPayment.payment_number=r),"content-loading":e(u)},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),o(h,{label:a.$t("payments.customer"),error:e(i).currentPayment.customer_id.$error&&e(i).currentPayment.customer_id.$errors[0].$message,"content-loading":e(u),required:""},{default:l(()=>[o(oe,{modelValue:e(t).currentPayment.customer_id,"onUpdate:modelValue":[n[3]||(n[3]=r=>e(t).currentPayment.customer_id=r),n[4]||(n[4]=r=>ee(e(t).currentPayment.customer_id))],"content-loading":e(u),invalid:e(i).currentPayment.customer_id.$error,placeholder:a.$t("customers.select_a_customer"),"fetch-all":e(d),"show-action":""},null,8,["modelValue","content-loading","invalid","placeholder","fetch-all"])]),_:1},8,["label","error","content-loading"]),o(h,{"content-loading":e(u),label:a.$t("payments.invoice"),"help-text":v.value?`Due Amount: ${e(t).currentPayment.maxPayableAmount/100}`:""},{default:l(()=>[o(A,{modelValue:e(t).currentPayment.invoice_id,"onUpdate:modelValue":n[5]||(n[5]=r=>e(t).currentPayment.invoice_id=r),"content-loading":e(u),"value-prop":"id","track-by":"invoice_number",label:"invoice_number",options:e(f),loading:e(V),placeholder:a.$t("invoices.select_invoice"),onSelect:W},{singlelabel:l(({value:r})=>[S("div",Le,g(r.invoice_number)+" ("+g(e(k).formatMoney(r.total,r.customer.currency))+") ",1)]),option:l(({option:r})=>[q(g(r.invoice_number)+" ("+g(e(k).formatMoney(r.total,r.customer.currency))+") ",1)]),_:1},8,["modelValue","content-loading","options","loading","placeholder"])]),_:1},8,["content-loading","label","help-text"]),o(h,{label:a.$t("payments.amount"),"content-loading":e(u),error:e(i).currentPayment.amount.$error&&e(i).currentPayment.amount.$errors[0].$message,required:""},{default:l(()=>[S("div",Te,[o(re,{key:e(t).currentPayment.currency,modelValue:e($),"onUpdate:modelValue":[n[6]||(n[6]=r=>Ce($)?$.value=r:null),n[7]||(n[7]=r=>e(i).currentPayment.amount.$touch())],currency:e(t).currentPayment.currency,"content-loading":e(u),invalid:e(i).currentPayment.amount.$error},null,8,["modelValue","currency","content-loading","invalid"])])]),_:1},8,["label","content-loading","error"]),o(h,{"content-loading":e(u),label:a.$t("payments.payment_mode")},{default:l(()=>[o(A,{modelValue:e(t).currentPayment.payment_method_id,"onUpdate:modelValue":n[8]||(n[8]=r=>e(t).currentPayment.payment_method_id=r),"content-loading":e(u),label:"name","value-prop":"id","track-by":"name",options:e(t).paymentModes,placeholder:a.$t("payments.select_payment_mode"),searchable:""},{action:l(()=>[o(se,{onClick:X},{default:l(()=>[o(P,{name:"PlusIcon",class:"h-4 mr-2 -ml-2 text-center text-primary-400"}),q(" "+g(a.$t("settings.payment_modes.add_payment_mode")),1)]),_:1})]),_:1},8,["modelValue","content-loading","options","placeholder"])]),_:1},8,["content-loading","label"]),o(we,{store:e(t),"store-prop":"currentPayment",v:e(i).currentPayment,"is-loading":e(u),"is-edit":e(d),"customer-currency":e(t).currentPayment.currency_id},null,8,["store","v","is-loading","is-edit","customer-currency"])]),_:1}),o(Fe,{type:"Payment","is-edit":e(d),"is-loading":e(u),store:e(t),"store-prop":"currentPayment","custom-field-scope":U,class:"mt-6"},null,8,["is-edit","is-loading","store"]),S("div",ze,[S("div",He,[o(Ee,{type:"Payment",onSelect:K})]),S("label",Je,g(a.$t("estimates.notes")),1),o(ue,{modelValue:e(t).currentPayment.notes,"onUpdate:modelValue":n[9]||(n[9]=r=>e(t).currentPayment.notes=r),"content-loading":e(u),fields:e(J),class:"mt-1"},null,8,["modelValue","content-loading","fields"])]),o(D,{loading:e(b),"content-loading":e(u),variant:"primary",type:"submit",class:"flex justify-center w-full mt-4 sm:hidden md:hidden"},{left:l(r=>[e(b)?T("",!0):(N(),R(P,{key:0,name:"SaveIcon",class:L(r.class)},null,8,["class"]))]),default:l(()=>[q(" "+g(e(d)?a.$t("payments.update_payment"):a.$t("payments.save_payment")),1)]),_:1},8,["loading","content-loading"])]),_:1})],40,Re)]),_:1})],64)}}};export{nt as default}; +var ce=Object.defineProperty;var E=Object.getOwnPropertySymbols;var de=Object.prototype.hasOwnProperty,ye=Object.prototype.propertyIsEnumerable;var F=(_,s,c)=>s in _?ce(_,s,{enumerable:!0,configurable:!0,writable:!0,value:c}):_[s]=c,G=(_,s)=>{for(var c in s||(s={}))de.call(s,c)&&F(_,c,s[c]);if(E)for(var c of E(s))ye.call(s,c)&&F(_,c,s[c]);return _};import{G as pe,aN as _e,ah as fe,J as ve,B as M,a0 as Pe,k as C,L as I,M as w,aX as ge,O as be,aP as Be,T as $e,a7 as he,b1 as Ie,r as m,o as N,e as Se,f as o,w as l,h as S,u as e,l as R,m as L,j as T,i as q,t as g,x as Ce,U as Ve,F as Me}from"./vendor.01d0adc5.js";import{_ as we}from"./ExchangeRateConverter.285065a4.js";import{u as qe,l as Ne,m as je,b as ke,c as Ue,i as xe,d as De}from"./main.24f7a84b.js";import{u as Ae}from"./payment.bb0c6e9e.js";import{_ as Ee}from"./SelectNotePopup.5f004c2c.js";import{_ as Fe}from"./CreateCustomFields.8531ebe0.js";import{_ as Ge}from"./PaymentModeModal.fb4664cf.js";import"./exchange-rate.3b3d35e2.js";import"./NoteModal.5bd3cf32.js";const Re=["onSubmit"],Le={class:"absolute left-3.5"},Te={class:"relative w-full"},ze={class:"relative mt-6"},He={class:"z-20 float-right text-sm font-semibold leading-5 text-primary-400"},Je={class:"mb-4 text-sm font-medium text-gray-800"},nt={setup(_){const s=pe(),c=_e(),t=Ae();qe();const z=Ne();je(),ke();const H=Ue(),j=xe();De();const k=fe("utils"),{t:p}=ve();let b=M(!1),V=M(!1),f=M([]);const v=M(null),U="newEstimate",J=Pe(["customer","company","customerCustom","payment","paymentCustom"]),$=C({get:()=>t.currentPayment.amount/100,set:a=>{t.currentPayment.amount=Math.round(a*100)}}),u=C(()=>t.isFetchingInitialData),d=C(()=>s.name==="payments.edit"),x=C(()=>d.value?p("payments.edit_payment"):p("payments.new_payment")),O=C(()=>({currentPayment:{customer_id:{required:I.withMessage(p("validation.required"),w)},payment_date:{required:I.withMessage(p("validation.required"),w)},amount:{required:I.withMessage(p("validation.required"),w),between:I.withMessage(p("validation.payment_greater_than_due_amount"),ge(0,t.currentPayment.maxPayableAmount))},exchange_rate:{required:be(function(){return I.withMessage(p("validation.required"),w),t.showExchangeRate}),decimal:I.withMessage(p("validation.valid_exchange_rate"),Be)}}})),i=$e(O,t,{$scope:U});he(()=>{t.currentPayment.customer_id&&Y(t.currentPayment.customer_id),s.query.customer&&(t.currentPayment.customer_id=s.query.customer)}),t.resetCurrentPayment(),s.query.customer&&(t.currentPayment.customer_id=s.query.customer),t.fetchPaymentInitialData(d.value),s.params.id&&!d.value&&Q();async function X(){H.openModal({title:p("settings.payment_modes.add_payment_mode"),componentName:"PaymentModeModal"})}function K(a){t.currentPayment.notes=""+a.notes}async function Q(){var n;let a=await j.fetchInvoice((n=s==null?void 0:s.params)==null?void 0:n.id);t.currentPayment.customer_id=a.data.data.customer.id,t.currentPayment.invoice_id=a.data.data.id}async function W(a){a&&(v.value=f.value.find(n=>n.id===a),$.value=v.value.due_amount/100,t.currentPayment.maxPayableAmount=v.value.due_amount)}function Y(a){if(a){let n={customer_id:a,status:"DUE",limit:"all"};d.value&&(n.status=""),V.value=!0,Promise.all([j.fetchInvoices(n),z.fetchCustomer(a)]).then(async([y,B])=>{y&&(f.value=[...y.data.data]),B&&B.data&&(t.currentPayment.selectedCustomer=B.data.data,t.currentPayment.customer=B.data.data,t.currentPayment.currency=B.data.data.currency),t.currentPayment.invoice_id&&(v.value=f.value.find(P=>P.id===t.currentPayment.invoice_id),t.currentPayment.maxPayableAmount=v.value.due_amount+t.currentPayment.amount,$.value===0&&($.value=v.value.due_amount/100)),d.value&&(f.value=f.value.filter(P=>P.due_amount>0||P.id==t.currentPayment.invoice_id)),V.value=!1}).catch(y=>{V.value=!1,console.error(y,"error")})}}Ie(()=>{t.resetCurrentPayment(),f.value=[]});async function Z(){if(i.value.$touch(),i.value.$invalid)return!1;b.value=!0;let a=G({},t.currentPayment),n=null;try{n=await(d.value?t.updatePayment:t.addPayment)(a),c.push(`/admin/payments/${n.data.data.id}/view`)}catch{b.value=!1}}function ee(a){let n={userId:a};s.params.id&&(n.model_id=s.params.id),t.currentPayment.invoice_id=v.value=null,t.currentPayment.amount=0,f.value=[],t.getNextNumber(n,!0)}return(a,n)=>{const y=m("BaseBreadcrumbItem"),B=m("BaseBreadcrumb"),P=m("BaseIcon"),D=m("BaseButton"),te=m("BasePageHeader"),ae=m("BaseDatePicker"),h=m("BaseInputGroup"),ne=m("BaseInput"),oe=m("BaseCustomerSelectInput"),A=m("BaseMultiselect"),re=m("BaseMoney"),se=m("BaseSelectAction"),le=m("BaseInputGrid"),ue=m("BaseCustomInput"),me=m("BaseCard"),ie=m("BasePage");return N(),Se(Me,null,[o(Ge),o(ie,{class:"relative payment-create"},{default:l(()=>[S("form",{action:"",onSubmit:Ve(Z,["prevent"])},[o(te,{title:e(x),class:"mb-5"},{actions:l(()=>[o(D,{loading:e(b),disabled:e(b),variant:"primary",type:"submit",class:"hidden sm:flex"},{left:l(r=>[e(b)?T("",!0):(N(),R(P,{key:0,name:"SaveIcon",class:L(r.class)},null,8,["class"]))]),default:l(()=>[q(" "+g(e(d)?a.$t("payments.update_payment"):a.$t("payments.save_payment")),1)]),_:1},8,["loading","disabled"])]),default:l(()=>[o(B,null,{default:l(()=>[o(y,{title:a.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),o(y,{title:a.$tc("payments.payment",2),to:"/admin/payments"},null,8,["title"]),o(y,{title:e(x),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),o(me,null,{default:l(()=>[o(le,null,{default:l(()=>[o(h,{label:a.$t("payments.date"),"content-loading":e(u),required:"",error:e(i).currentPayment.payment_date.$error&&e(i).currentPayment.payment_date.$errors[0].$message},{default:l(()=>[o(ae,{modelValue:e(t).currentPayment.payment_date,"onUpdate:modelValue":[n[0]||(n[0]=r=>e(t).currentPayment.payment_date=r),n[1]||(n[1]=r=>e(i).currentPayment.payment_date.$touch())],"content-loading":e(u),"calendar-button":!0,"calendar-button-icon":"calendar",invalid:e(i).currentPayment.payment_date.$error},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),o(h,{label:a.$t("payments.payment_number"),"content-loading":e(u),required:""},{default:l(()=>[o(ne,{modelValue:e(t).currentPayment.payment_number,"onUpdate:modelValue":n[2]||(n[2]=r=>e(t).currentPayment.payment_number=r),"content-loading":e(u)},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),o(h,{label:a.$t("payments.customer"),error:e(i).currentPayment.customer_id.$error&&e(i).currentPayment.customer_id.$errors[0].$message,"content-loading":e(u),required:""},{default:l(()=>[o(oe,{modelValue:e(t).currentPayment.customer_id,"onUpdate:modelValue":[n[3]||(n[3]=r=>e(t).currentPayment.customer_id=r),n[4]||(n[4]=r=>ee(e(t).currentPayment.customer_id))],"content-loading":e(u),invalid:e(i).currentPayment.customer_id.$error,placeholder:a.$t("customers.select_a_customer"),"fetch-all":e(d),"show-action":""},null,8,["modelValue","content-loading","invalid","placeholder","fetch-all"])]),_:1},8,["label","error","content-loading"]),o(h,{"content-loading":e(u),label:a.$t("payments.invoice"),"help-text":v.value?`Due Amount: ${e(t).currentPayment.maxPayableAmount/100}`:""},{default:l(()=>[o(A,{modelValue:e(t).currentPayment.invoice_id,"onUpdate:modelValue":n[5]||(n[5]=r=>e(t).currentPayment.invoice_id=r),"content-loading":e(u),"value-prop":"id","track-by":"invoice_number",label:"invoice_number",options:e(f),loading:e(V),placeholder:a.$t("invoices.select_invoice"),onSelect:W},{singlelabel:l(({value:r})=>[S("div",Le,g(r.invoice_number)+" ("+g(e(k).formatMoney(r.total,r.customer.currency))+") ",1)]),option:l(({option:r})=>[q(g(r.invoice_number)+" ("+g(e(k).formatMoney(r.total,r.customer.currency))+") ",1)]),_:1},8,["modelValue","content-loading","options","loading","placeholder"])]),_:1},8,["content-loading","label","help-text"]),o(h,{label:a.$t("payments.amount"),"content-loading":e(u),error:e(i).currentPayment.amount.$error&&e(i).currentPayment.amount.$errors[0].$message,required:""},{default:l(()=>[S("div",Te,[o(re,{key:e(t).currentPayment.currency,modelValue:e($),"onUpdate:modelValue":[n[6]||(n[6]=r=>Ce($)?$.value=r:null),n[7]||(n[7]=r=>e(i).currentPayment.amount.$touch())],currency:e(t).currentPayment.currency,"content-loading":e(u),invalid:e(i).currentPayment.amount.$error},null,8,["modelValue","currency","content-loading","invalid"])])]),_:1},8,["label","content-loading","error"]),o(h,{"content-loading":e(u),label:a.$t("payments.payment_mode")},{default:l(()=>[o(A,{modelValue:e(t).currentPayment.payment_method_id,"onUpdate:modelValue":n[8]||(n[8]=r=>e(t).currentPayment.payment_method_id=r),"content-loading":e(u),label:"name","value-prop":"id","track-by":"name",options:e(t).paymentModes,placeholder:a.$t("payments.select_payment_mode"),searchable:""},{action:l(()=>[o(se,{onClick:X},{default:l(()=>[o(P,{name:"PlusIcon",class:"h-4 mr-2 -ml-2 text-center text-primary-400"}),q(" "+g(a.$t("settings.payment_modes.add_payment_mode")),1)]),_:1})]),_:1},8,["modelValue","content-loading","options","placeholder"])]),_:1},8,["content-loading","label"]),o(we,{store:e(t),"store-prop":"currentPayment",v:e(i).currentPayment,"is-loading":e(u),"is-edit":e(d),"customer-currency":e(t).currentPayment.currency_id},null,8,["store","v","is-loading","is-edit","customer-currency"])]),_:1}),o(Fe,{type:"Payment","is-edit":e(d),"is-loading":e(u),store:e(t),"store-prop":"currentPayment","custom-field-scope":U,class:"mt-6"},null,8,["is-edit","is-loading","store"]),S("div",ze,[S("div",He,[o(Ee,{type:"Payment",onSelect:K})]),S("label",Je,g(a.$t("estimates.notes")),1),o(ue,{modelValue:e(t).currentPayment.notes,"onUpdate:modelValue":n[9]||(n[9]=r=>e(t).currentPayment.notes=r),"content-loading":e(u),fields:e(J),class:"mt-1"},null,8,["modelValue","content-loading","fields"])]),o(D,{loading:e(b),"content-loading":e(u),variant:"primary",type:"submit",class:"flex justify-center w-full mt-4 sm:hidden md:hidden"},{left:l(r=>[e(b)?T("",!0):(N(),R(P,{key:0,name:"SaveIcon",class:L(r.class)},null,8,["class"]))]),default:l(()=>[q(" "+g(e(d)?a.$t("payments.update_payment"):a.$t("payments.save_payment")),1)]),_:1},8,["loading","content-loading"])]),_:1})],40,Re)]),_:1})],64)}}};export{nt as default}; diff --git a/public/build/assets/Create.625aeacb.js b/public/build/assets/Create.489d68ed.js similarity index 91% rename from public/build/assets/Create.625aeacb.js rename to public/build/assets/Create.489d68ed.js index 55bbccb04..d9535facd 100644 --- a/public/build/assets/Create.625aeacb.js +++ b/public/build/assets/Create.489d68ed.js @@ -1 +1 @@ -var W=Object.defineProperty,X=Object.defineProperties;var Y=Object.getOwnPropertyDescriptors;var S=Object.getOwnPropertySymbols;var Z=Object.prototype.hasOwnProperty,x=Object.prototype.propertyIsEnumerable;var k=(m,a,o)=>a in m?W(m,a,{enumerable:!0,configurable:!0,writable:!0,value:o}):m[a]=o,j=(m,a)=>{for(var o in a||(a={}))Z.call(a,o)&&k(m,o,a[o]);if(S)for(var o of S(a))x.call(a,o)&&k(m,o,a[o]);return m},N=(m,a)=>X(m,Y(a));import{J as ee,G as ae,aN as te,B as w,k as V,L as p,M as $,N as G,Q as oe,O as se,T as ne,r as d,o as b,l as h,w as u,f as s,u as e,h as y,e as re,y as le,F as ie,m as ue,j as de,i as me,t as ce,U as pe}from"./vendor.01d0adc5.js";import{b as ge}from"./main.75722495.js";import{V as fe}from"./index.esm.998a6eeb.js";import{u as ve}from"./users.73a3faa4.js";const $e=["onSubmit"],De={class:"grid grid-cols-12"},Be={class:"space-y-6"},ye={setup(m){const a=ve(),{t:o}=ee(),q=ae(),L=te(),P=ge();let g=w(!1),l=w(!1);w([]);let I=w([]);const f=V(()=>q.name==="users.edit"),M=V(()=>f.value?o("users.edit_user"):o("users.new_user")),E=V(()=>({userData:{name:{required:p.withMessage(o("validation.required"),$),minLength:p.withMessage(o("validation.name_min_length",{count:3}),G(3))},email:{required:p.withMessage(o("validation.required"),$),email:p.withMessage(o("validation.email_incorrect"),oe)},password:{required:se(function(){return p.withMessage(o("validation.required"),$),!f.value}),minLength:p.withMessage(o("validation.password_min_length",{count:8}),G(8))},companies:{required:p.withMessage(o("validation.required"),$)}}})),F={role:{required:p.withMessage(o("validation.required"),$)}},n=ne(E,a,{$scope:!0});R(),a.resetUserData();async function R(){var i;l.value=!0;try{f.value&&await a.fetchUser(q.params.id);let t=await P.fetchUserCompanies();((i=t==null?void 0:t.data)==null?void 0:i.data)&&(I.value=t.data.data.map(c=>(c.role=null,c)))}catch{l.value=!1}l.value=!1}async function T(){if(n.value.$touch(),n.value.$invalid)return!0;try{g.value=!0;let i=N(j({},a.userData),{companies:a.userData.companies.map(c=>({role:c.role,id:c.id}))});await(f.value?a.updateUser:a.addUser)(i),L.push("/admin/users"),g.value=!1}catch{g.value=!1}}return(i,t)=>{const c=d("BaseBreadcrumbItem"),H=d("BaseBreadcrumb"),z=d("BasePageHeader"),D=d("BaseInput"),v=d("BaseInputGroup"),U=d("BaseMultiselect"),A=d("BaseInputGrid"),J=d("BaseIcon"),O=d("BaseButton"),Q=d("BaseCard"),K=d("BasePage");return b(),h(K,null,{default:u(()=>[s(z,{title:e(M)},{default:u(()=>[s(H,null,{default:u(()=>[s(c,{title:i.$t("general.home"),to:"dashboard"},null,8,["title"]),s(c,{title:i.$tc("users.user",2),to:"/admin/users"},null,8,["title"]),s(c,{title:e(M),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),y("form",{action:"",autocomplete:"off",onSubmit:pe(T,["prevent"])},[y("div",De,[s(Q,{class:"mt-6 col-span-12 md:col-span-8"},{default:u(()=>[s(A,{layout:"one-column"},{default:u(()=>[s(v,{"content-loading":e(l),label:i.$t("users.name"),error:e(n).userData.name.$error&&e(n).userData.name.$errors[0].$message,required:""},{default:u(()=>[s(D,{modelValue:e(a).userData.name,"onUpdate:modelValue":t[0]||(t[0]=r=>e(a).userData.name=r),modelModifiers:{trim:!0},"content-loading":e(l),invalid:e(n).userData.name.$error,onInput:t[1]||(t[1]=r=>e(n).userData.name.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["content-loading","label","error"]),s(v,{"content-loading":e(l),label:i.$t("users.email"),error:e(n).userData.email.$error&&e(n).userData.email.$errors[0].$message,required:""},{default:u(()=>[s(D,{modelValue:e(a).userData.email,"onUpdate:modelValue":t[2]||(t[2]=r=>e(a).userData.email=r),modelModifiers:{trim:!0},type:"email","content-loading":e(l),invalid:e(n).userData.email.$error,onInput:t[3]||(t[3]=r=>e(n).userData.email.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["content-loading","label","error"]),s(v,{"content-loading":e(l),label:i.$t("users.companies"),error:e(n).userData.companies.$error&&e(n).userData.companies.$errors[0].$message,required:""},{default:u(()=>[s(U,{modelValue:e(a).userData.companies,"onUpdate:modelValue":t[4]||(t[4]=r=>e(a).userData.companies=r),mode:"tags",object:!0,autocomplete:"new-password",label:"name",options:e(I),"value-prop":"id",invalid:e(n).userData.companies.$error,"content-loading":e(l),searchable:"","can-deselect":!1,class:"w-full"},null,8,["modelValue","options","invalid","content-loading"])]),_:1},8,["content-loading","label","error"]),(b(!0),re(ie,null,le(e(a).userData.companies,(r,B)=>(b(),h(e(fe),{key:B,state:r,rules:F},{default:u(({v:_})=>[y("div",Be,[s(v,{"content-loading":e(l),label:i.$t("users.select_company_role",{company:r.name}),error:_.role.$error&&_.role.$errors[0].$message,required:""},{default:u(()=>[s(U,{modelValue:e(a).userData.companies[B].role,"onUpdate:modelValue":C=>e(a).userData.companies[B].role=C,"value-prop":"name","track-by":"id",autocomplete:"off","content-loading":e(l),label:"name",options:e(a).userData.companies[B].roles,"can-deselect":!1,invalid:_.role.$invalid,onChange:C=>_.role.$touch()},null,8,["modelValue","onUpdate:modelValue","content-loading","options","invalid","onChange"])]),_:2},1032,["content-loading","label","error"])])]),_:2},1032,["state"]))),128)),s(v,{"content-loading":e(l),label:i.$tc("users.password"),error:e(n).userData.password.$error&&e(n).userData.password.$errors[0].$message,required:!e(f)},{default:u(()=>[s(D,{modelValue:e(a).userData.password,"onUpdate:modelValue":t[5]||(t[5]=r=>e(a).userData.password=r),name:"new-password",autocomplete:"new-password","content-loading":e(l),type:"password",invalid:e(n).userData.password.$error,onInput:t[6]||(t[6]=r=>e(n).userData.password.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["content-loading","label","error","required"]),s(v,{"content-loading":e(l),label:i.$t("users.phone")},{default:u(()=>[s(D,{modelValue:e(a).userData.phone,"onUpdate:modelValue":t[7]||(t[7]=r=>e(a).userData.phone=r),modelModifiers:{trim:!0},"content-loading":e(l)},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"])]),_:1}),s(O,{"content-loading":e(l),type:"submit",loading:e(g),disabled:e(g),class:"mt-6"},{left:u(r=>[e(g)?de("",!0):(b(),h(J,{key:0,name:"SaveIcon",class:ue(r.class)},null,8,["class"]))]),default:u(()=>[me(" "+ce(e(f)?i.$t("users.update_user"):i.$t("users.save_user")),1)]),_:1},8,["content-loading","loading","disabled"])]),_:1})])],40,$e)]),_:1})}}};export{ye as default}; +var W=Object.defineProperty,X=Object.defineProperties;var Y=Object.getOwnPropertyDescriptors;var S=Object.getOwnPropertySymbols;var Z=Object.prototype.hasOwnProperty,x=Object.prototype.propertyIsEnumerable;var k=(m,a,o)=>a in m?W(m,a,{enumerable:!0,configurable:!0,writable:!0,value:o}):m[a]=o,j=(m,a)=>{for(var o in a||(a={}))Z.call(a,o)&&k(m,o,a[o]);if(S)for(var o of S(a))x.call(a,o)&&k(m,o,a[o]);return m},N=(m,a)=>X(m,Y(a));import{J as ee,G as ae,aN as te,B as b,k as V,L as p,M as $,N as G,Q as oe,O as se,T as ne,r as d,o as w,l as h,w as u,f as s,u as e,h as y,e as re,y as le,F as ie,m as ue,j as de,i as me,t as ce,U as pe}from"./vendor.01d0adc5.js";import{b as ge}from"./main.24f7a84b.js";import{V as fe}from"./index.esm.998a6eeb.js";import{u as ve}from"./users.e0b660dd.js";const $e=["onSubmit"],De={class:"grid grid-cols-12"},Be={class:"space-y-6"},ye={setup(m){const a=ve(),{t:o}=ee(),q=ae(),L=te(),P=ge();let g=b(!1),l=b(!1);b([]);let I=b([]);const f=V(()=>q.name==="users.edit"),M=V(()=>f.value?o("users.edit_user"):o("users.new_user")),E=V(()=>({userData:{name:{required:p.withMessage(o("validation.required"),$),minLength:p.withMessage(o("validation.name_min_length",{count:3}),G(3))},email:{required:p.withMessage(o("validation.required"),$),email:p.withMessage(o("validation.email_incorrect"),oe)},password:{required:se(function(){return p.withMessage(o("validation.required"),$),!f.value}),minLength:p.withMessage(o("validation.password_min_length",{count:8}),G(8))},companies:{required:p.withMessage(o("validation.required"),$)}}})),F={role:{required:p.withMessage(o("validation.required"),$)}},n=ne(E,a,{$scope:!0});R(),a.resetUserData();async function R(){var i;l.value=!0;try{f.value&&await a.fetchUser(q.params.id);let t=await P.fetchUserCompanies();((i=t==null?void 0:t.data)==null?void 0:i.data)&&(I.value=t.data.data.map(c=>(c.role=null,c)))}catch{l.value=!1}l.value=!1}async function T(){if(n.value.$touch(),n.value.$invalid)return!0;try{g.value=!0;let i=N(j({},a.userData),{companies:a.userData.companies.map(c=>({role:c.role,id:c.id}))});await(f.value?a.updateUser:a.addUser)(i),L.push("/admin/users"),g.value=!1}catch{g.value=!1}}return(i,t)=>{const c=d("BaseBreadcrumbItem"),H=d("BaseBreadcrumb"),z=d("BasePageHeader"),D=d("BaseInput"),v=d("BaseInputGroup"),U=d("BaseMultiselect"),A=d("BaseInputGrid"),J=d("BaseIcon"),O=d("BaseButton"),Q=d("BaseCard"),K=d("BasePage");return w(),h(K,null,{default:u(()=>[s(z,{title:e(M)},{default:u(()=>[s(H,null,{default:u(()=>[s(c,{title:i.$t("general.home"),to:"dashboard"},null,8,["title"]),s(c,{title:i.$tc("users.user",2),to:"/admin/users"},null,8,["title"]),s(c,{title:e(M),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),y("form",{action:"",autocomplete:"off",onSubmit:pe(T,["prevent"])},[y("div",De,[s(Q,{class:"mt-6 col-span-12 md:col-span-8"},{default:u(()=>[s(A,{layout:"one-column"},{default:u(()=>[s(v,{"content-loading":e(l),label:i.$t("users.name"),error:e(n).userData.name.$error&&e(n).userData.name.$errors[0].$message,required:""},{default:u(()=>[s(D,{modelValue:e(a).userData.name,"onUpdate:modelValue":t[0]||(t[0]=r=>e(a).userData.name=r),modelModifiers:{trim:!0},"content-loading":e(l),invalid:e(n).userData.name.$error,onInput:t[1]||(t[1]=r=>e(n).userData.name.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["content-loading","label","error"]),s(v,{"content-loading":e(l),label:i.$t("users.email"),error:e(n).userData.email.$error&&e(n).userData.email.$errors[0].$message,required:""},{default:u(()=>[s(D,{modelValue:e(a).userData.email,"onUpdate:modelValue":t[2]||(t[2]=r=>e(a).userData.email=r),modelModifiers:{trim:!0},type:"email","content-loading":e(l),invalid:e(n).userData.email.$error,onInput:t[3]||(t[3]=r=>e(n).userData.email.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["content-loading","label","error"]),s(v,{"content-loading":e(l),label:i.$t("users.companies"),error:e(n).userData.companies.$error&&e(n).userData.companies.$errors[0].$message,required:""},{default:u(()=>[s(U,{modelValue:e(a).userData.companies,"onUpdate:modelValue":t[4]||(t[4]=r=>e(a).userData.companies=r),mode:"tags",object:!0,autocomplete:"new-password",label:"name",options:e(I),"value-prop":"id",invalid:e(n).userData.companies.$error,"content-loading":e(l),searchable:"","can-deselect":!1,class:"w-full"},null,8,["modelValue","options","invalid","content-loading"])]),_:1},8,["content-loading","label","error"]),(w(!0),re(ie,null,le(e(a).userData.companies,(r,B)=>(w(),h(e(fe),{key:B,state:r,rules:F},{default:u(({v:_})=>[y("div",Be,[s(v,{"content-loading":e(l),label:i.$t("users.select_company_role",{company:r.name}),error:_.role.$error&&_.role.$errors[0].$message,required:""},{default:u(()=>[s(U,{modelValue:e(a).userData.companies[B].role,"onUpdate:modelValue":C=>e(a).userData.companies[B].role=C,"value-prop":"name","track-by":"id",autocomplete:"off","content-loading":e(l),label:"name",options:e(a).userData.companies[B].roles,"can-deselect":!1,invalid:_.role.$invalid,onChange:C=>_.role.$touch()},null,8,["modelValue","onUpdate:modelValue","content-loading","options","invalid","onChange"])]),_:2},1032,["content-loading","label","error"])])]),_:2},1032,["state"]))),128)),s(v,{"content-loading":e(l),label:i.$tc("users.password"),error:e(n).userData.password.$error&&e(n).userData.password.$errors[0].$message,required:!e(f)},{default:u(()=>[s(D,{modelValue:e(a).userData.password,"onUpdate:modelValue":t[5]||(t[5]=r=>e(a).userData.password=r),name:"new-password",autocomplete:"new-password","content-loading":e(l),type:"password",invalid:e(n).userData.password.$error,onInput:t[6]||(t[6]=r=>e(n).userData.password.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["content-loading","label","error","required"]),s(v,{"content-loading":e(l),label:i.$t("users.phone")},{default:u(()=>[s(D,{modelValue:e(a).userData.phone,"onUpdate:modelValue":t[7]||(t[7]=r=>e(a).userData.phone=r),modelModifiers:{trim:!0},"content-loading":e(l)},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"])]),_:1}),s(O,{"content-loading":e(l),type:"submit",loading:e(g),disabled:e(g),class:"mt-6"},{left:u(r=>[e(g)?de("",!0):(w(),h(J,{key:0,name:"SaveIcon",class:ue(r.class)},null,8,["class"]))]),default:u(()=>[me(" "+ce(e(f)?i.$t("users.update_user"):i.$t("users.save_user")),1)]),_:1},8,["content-loading","loading","disabled"])]),_:1})])],40,$e)]),_:1})}}};export{ye as default}; diff --git a/public/build/assets/Create.bffd06e1.js b/public/build/assets/Create.6124b0ba.js similarity index 98% rename from public/build/assets/Create.bffd06e1.js rename to public/build/assets/Create.6124b0ba.js index d946f0d99..1f8e2d370 100644 --- a/public/build/assets/Create.bffd06e1.js +++ b/public/build/assets/Create.6124b0ba.js @@ -1 +1 @@ -var oe=Object.defineProperty,se=Object.defineProperties;var le=Object.getOwnPropertyDescriptors;var N=Object.getOwnPropertySymbols;var re=Object.prototype.hasOwnProperty,ie=Object.prototype.propertyIsEnumerable;var P=(u,e,r)=>e in u?oe(u,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):u[e]=r,b=(u,e)=>{for(var r in e||(e={}))re.call(e,r)&&P(u,r,e[r]);if(N)for(var r of N(e))ie.call(e,r)&&P(u,r,e[r]);return u},h=(u,e)=>se(u,le(e));import{J as me,G as ue,aN as ce,B as T,k as p,L as x,M as de,N as pe,S as _e,T as ge,r as s,o as M,l as w,w as l,f as o,u as t,h as j,x as q,i as E,t as G,j as L,m as Ie,U as fe}from"./vendor.01d0adc5.js";import{p as ve,q as Be,c as be,b as $e,e as ye,g as Ve}from"./main.75722495.js";import{_ as Se}from"./ItemUnitModal.01494bfb.js";const he=["onSubmit"],Ue={setup(u){const e=ve(),r=Be(),$=be(),z=$e(),{t:_}=me(),y=ue(),A=ce(),D=ye(),I=T(!1),V=T(z.selectedCompanySettings.tax_per_item);let i=T(!1);e.$reset(),J();const v=p({get:()=>e.currentItem.price/100,set:n=>{e.currentItem.price=Math.round(n*100)}}),S=p({get:()=>{var n,a;return(a=(n=e==null?void 0:e.currentItem)==null?void 0:n.taxes)==null?void 0:a.map(d=>{if(d)return h(b({},d),{tax_type_id:d.id,tax_name:d.name+" ("+d.percent+"%)"})})},set:n=>{e.currentItem.taxes=n}}),B=p(()=>y.name==="items.edit"),U=p(()=>B.value?_("items.edit_item"):_("items.new_item")),R=p(()=>r.taxTypes.map(n=>h(b({},n),{tax_type_id:n.id,tax_name:n.name+" ("+n.percent+"%)"}))),Y=p(()=>V.value==="YES"),H=p(()=>({currentItem:{name:{required:x.withMessage(_("validation.required"),de),minLength:x.withMessage(_("validation.name_min_length",{count:3}),pe(3))},description:{maxLength:x.withMessage(_("validation.description_maxlength"),_e(65e3))}}})),c=ge(H,e);async function F(){$.openModal({title:_("settings.customization.items.add_item_unit"),componentName:"ItemUnitModal",size:"sm"})}async function J(){if(i.value=!0,await e.fetchItemUnits({limit:"all"}),D.hasAbilities(Ve.VIEW_TAX_TYPE)&&await r.fetchTaxTypes({limit:"all"}),B.value){let n=y.params.id;await e.fetchItem(n),e.currentItem.tax_per_item===1?V.value="YES":V.value="NO"}i.value=!1}async function O(){if(c.value.currentItem.$touch(),c.value.currentItem.$invalid)return!1;I.value=!0;try{let a=b({id:y.params.id},e.currentItem);e.currentItem&&e.currentItem.taxes&&(a.taxes=e.currentItem.taxes.map(g=>({tax_type_id:g.tax_type_id,amount:v.value*g.percent,percent:g.percent,name:g.name,collective_tax:0}))),await(B.value?e.updateItem:e.addItem)(a),I.value=!1,A.push("/admin/items"),n()}catch{I.value=!1;return}function n(){$.closeModal(),setTimeout(()=>{e.resetCurrentItem(),$.$reset(),c.value.$reset()},300)}}return(n,a)=>{const d=s("BaseBreadcrumbItem"),g=s("BaseBreadcrumb"),W=s("BasePageHeader"),X=s("BaseInput"),f=s("BaseInputGroup"),K=s("BaseMoney"),C=s("BaseIcon"),Q=s("BaseSelectAction"),k=s("BaseMultiselect"),Z=s("BaseTextarea"),ee=s("BaseButton"),te=s("BaseInputGrid"),ne=s("BaseCard"),ae=s("BasePage");return M(),w(ae,null,{default:l(()=>[o(W,{title:t(U)},{default:l(()=>[o(g,null,{default:l(()=>[o(d,{title:n.$t("general.home"),to:"dashboard"},null,8,["title"]),o(d,{title:n.$tc("items.item",2),to:"/admin/items"},null,8,["title"]),o(d,{title:t(U),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),o(Se),j("form",{class:"grid lg:grid-cols-2 mt-6",action:"submit",onSubmit:fe(O,["prevent"])},[o(ne,{class:"w-full"},{default:l(()=>[o(te,{layout:"one-column"},{default:l(()=>[o(f,{label:n.$t("items.name"),"content-loading":t(i),required:"",error:t(c).currentItem.name.$error&&t(c).currentItem.name.$errors[0].$message},{default:l(()=>[o(X,{modelValue:t(e).currentItem.name,"onUpdate:modelValue":a[0]||(a[0]=m=>t(e).currentItem.name=m),"content-loading":t(i),invalid:t(c).currentItem.name.$error,onInput:a[1]||(a[1]=m=>t(c).currentItem.name.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),o(f,{label:n.$t("items.price"),"content-loading":t(i)},{default:l(()=>[o(K,{modelValue:t(v),"onUpdate:modelValue":a[2]||(a[2]=m=>q(v)?v.value=m:null),"content-loading":t(i)},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),o(f,{"content-loading":t(i),label:n.$t("items.unit")},{default:l(()=>[o(k,{modelValue:t(e).currentItem.unit_id,"onUpdate:modelValue":a[3]||(a[3]=m=>t(e).currentItem.unit_id=m),"content-loading":t(i),label:"name",options:t(e).itemUnits,"value-prop":"id","can-deselect":!1,"can-clear":!1,placeholder:n.$t("items.select_a_unit"),searchable:"","track-by":"name"},{action:l(()=>[o(Q,{onClick:F},{default:l(()=>[o(C,{name:"PlusIcon",class:"h-4 mr-2 -ml-2 text-center text-primary-400"}),E(" "+G(n.$t("settings.customization.items.add_item_unit")),1)]),_:1})]),_:1},8,["modelValue","content-loading","options","placeholder"])]),_:1},8,["content-loading","label"]),t(Y)?(M(),w(f,{key:0,label:n.$t("items.taxes"),"content-loading":t(i)},{default:l(()=>[o(k,{modelValue:t(S),"onUpdate:modelValue":a[4]||(a[4]=m=>q(S)?S.value=m:null),"content-loading":t(i),options:t(R),mode:"tags",label:"tax_name",class:"w-full","value-prop":"id","can-deselect":!1,"can-clear":!1,searchable:"","track-by":"tax_name",object:""},null,8,["modelValue","content-loading","options"])]),_:1},8,["label","content-loading"])):L("",!0),o(f,{label:n.$t("items.description"),"content-loading":t(i),error:t(c).currentItem.description.$error&&t(c).currentItem.description.$errors[0].$message},{default:l(()=>[o(Z,{modelValue:t(e).currentItem.description,"onUpdate:modelValue":a[5]||(a[5]=m=>t(e).currentItem.description=m),"content-loading":t(i),name:"description",row:2,rows:"2",onInput:a[6]||(a[6]=m=>t(c).currentItem.description.$touch())},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading","error"]),j("div",null,[o(ee,{"content-loading":t(i),type:"submit",loading:I.value},{left:l(m=>[I.value?L("",!0):(M(),w(C,{key:0,name:"SaveIcon",class:Ie(m.class)},null,8,["class"]))]),default:l(()=>[E(" "+G(t(B)?n.$t("items.update_item"):n.$t("items.save_item")),1)]),_:1},8,["content-loading","loading"])])]),_:1})]),_:1})],40,he)]),_:1})}}};export{Ue as default}; +var oe=Object.defineProperty,se=Object.defineProperties;var le=Object.getOwnPropertyDescriptors;var N=Object.getOwnPropertySymbols;var re=Object.prototype.hasOwnProperty,ie=Object.prototype.propertyIsEnumerable;var P=(u,e,r)=>e in u?oe(u,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):u[e]=r,b=(u,e)=>{for(var r in e||(e={}))re.call(e,r)&&P(u,r,e[r]);if(N)for(var r of N(e))ie.call(e,r)&&P(u,r,e[r]);return u},h=(u,e)=>se(u,le(e));import{J as me,G as ue,aN as ce,B as T,k as p,L as x,M as de,N as pe,S as _e,T as ge,r as s,o as M,l as w,w as l,f as o,u as t,h as j,x as q,i as E,t as G,j as L,m as Ie,U as fe}from"./vendor.01d0adc5.js";import{p as ve,q as Be,c as be,b as $e,e as ye,g as Ve}from"./main.24f7a84b.js";import{_ as Se}from"./ItemUnitModal.98d168e7.js";const he=["onSubmit"],Ue={setup(u){const e=ve(),r=Be(),$=be(),z=$e(),{t:_}=me(),y=ue(),A=ce(),D=ye(),I=T(!1),V=T(z.selectedCompanySettings.tax_per_item);let i=T(!1);e.$reset(),J();const v=p({get:()=>e.currentItem.price/100,set:n=>{e.currentItem.price=Math.round(n*100)}}),S=p({get:()=>{var n,a;return(a=(n=e==null?void 0:e.currentItem)==null?void 0:n.taxes)==null?void 0:a.map(d=>{if(d)return h(b({},d),{tax_type_id:d.id,tax_name:d.name+" ("+d.percent+"%)"})})},set:n=>{e.currentItem.taxes=n}}),B=p(()=>y.name==="items.edit"),U=p(()=>B.value?_("items.edit_item"):_("items.new_item")),R=p(()=>r.taxTypes.map(n=>h(b({},n),{tax_type_id:n.id,tax_name:n.name+" ("+n.percent+"%)"}))),Y=p(()=>V.value==="YES"),H=p(()=>({currentItem:{name:{required:x.withMessage(_("validation.required"),de),minLength:x.withMessage(_("validation.name_min_length",{count:3}),pe(3))},description:{maxLength:x.withMessage(_("validation.description_maxlength"),_e(65e3))}}})),c=ge(H,e);async function F(){$.openModal({title:_("settings.customization.items.add_item_unit"),componentName:"ItemUnitModal",size:"sm"})}async function J(){if(i.value=!0,await e.fetchItemUnits({limit:"all"}),D.hasAbilities(Ve.VIEW_TAX_TYPE)&&await r.fetchTaxTypes({limit:"all"}),B.value){let n=y.params.id;await e.fetchItem(n),e.currentItem.tax_per_item===1?V.value="YES":V.value="NO"}i.value=!1}async function O(){if(c.value.currentItem.$touch(),c.value.currentItem.$invalid)return!1;I.value=!0;try{let a=b({id:y.params.id},e.currentItem);e.currentItem&&e.currentItem.taxes&&(a.taxes=e.currentItem.taxes.map(g=>({tax_type_id:g.tax_type_id,amount:v.value*g.percent,percent:g.percent,name:g.name,collective_tax:0}))),await(B.value?e.updateItem:e.addItem)(a),I.value=!1,A.push("/admin/items"),n()}catch{I.value=!1;return}function n(){$.closeModal(),setTimeout(()=>{e.resetCurrentItem(),$.$reset(),c.value.$reset()},300)}}return(n,a)=>{const d=s("BaseBreadcrumbItem"),g=s("BaseBreadcrumb"),W=s("BasePageHeader"),X=s("BaseInput"),f=s("BaseInputGroup"),K=s("BaseMoney"),C=s("BaseIcon"),Q=s("BaseSelectAction"),k=s("BaseMultiselect"),Z=s("BaseTextarea"),ee=s("BaseButton"),te=s("BaseInputGrid"),ne=s("BaseCard"),ae=s("BasePage");return M(),w(ae,null,{default:l(()=>[o(W,{title:t(U)},{default:l(()=>[o(g,null,{default:l(()=>[o(d,{title:n.$t("general.home"),to:"dashboard"},null,8,["title"]),o(d,{title:n.$tc("items.item",2),to:"/admin/items"},null,8,["title"]),o(d,{title:t(U),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),o(Se),j("form",{class:"grid lg:grid-cols-2 mt-6",action:"submit",onSubmit:fe(O,["prevent"])},[o(ne,{class:"w-full"},{default:l(()=>[o(te,{layout:"one-column"},{default:l(()=>[o(f,{label:n.$t("items.name"),"content-loading":t(i),required:"",error:t(c).currentItem.name.$error&&t(c).currentItem.name.$errors[0].$message},{default:l(()=>[o(X,{modelValue:t(e).currentItem.name,"onUpdate:modelValue":a[0]||(a[0]=m=>t(e).currentItem.name=m),"content-loading":t(i),invalid:t(c).currentItem.name.$error,onInput:a[1]||(a[1]=m=>t(c).currentItem.name.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),o(f,{label:n.$t("items.price"),"content-loading":t(i)},{default:l(()=>[o(K,{modelValue:t(v),"onUpdate:modelValue":a[2]||(a[2]=m=>q(v)?v.value=m:null),"content-loading":t(i)},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),o(f,{"content-loading":t(i),label:n.$t("items.unit")},{default:l(()=>[o(k,{modelValue:t(e).currentItem.unit_id,"onUpdate:modelValue":a[3]||(a[3]=m=>t(e).currentItem.unit_id=m),"content-loading":t(i),label:"name",options:t(e).itemUnits,"value-prop":"id","can-deselect":!1,"can-clear":!1,placeholder:n.$t("items.select_a_unit"),searchable:"","track-by":"name"},{action:l(()=>[o(Q,{onClick:F},{default:l(()=>[o(C,{name:"PlusIcon",class:"h-4 mr-2 -ml-2 text-center text-primary-400"}),E(" "+G(n.$t("settings.customization.items.add_item_unit")),1)]),_:1})]),_:1},8,["modelValue","content-loading","options","placeholder"])]),_:1},8,["content-loading","label"]),t(Y)?(M(),w(f,{key:0,label:n.$t("items.taxes"),"content-loading":t(i)},{default:l(()=>[o(k,{modelValue:t(S),"onUpdate:modelValue":a[4]||(a[4]=m=>q(S)?S.value=m:null),"content-loading":t(i),options:t(R),mode:"tags",label:"tax_name",class:"w-full","value-prop":"id","can-deselect":!1,"can-clear":!1,searchable:"","track-by":"tax_name",object:""},null,8,["modelValue","content-loading","options"])]),_:1},8,["label","content-loading"])):L("",!0),o(f,{label:n.$t("items.description"),"content-loading":t(i),error:t(c).currentItem.description.$error&&t(c).currentItem.description.$errors[0].$message},{default:l(()=>[o(Z,{modelValue:t(e).currentItem.description,"onUpdate:modelValue":a[5]||(a[5]=m=>t(e).currentItem.description=m),"content-loading":t(i),name:"description",row:2,rows:"2",onInput:a[6]||(a[6]=m=>t(c).currentItem.description.$touch())},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading","error"]),j("div",null,[o(ee,{"content-loading":t(i),type:"submit",loading:I.value},{left:l(m=>[I.value?L("",!0):(M(),w(C,{key:0,name:"SaveIcon",class:Ie(m.class)},null,8,["class"]))]),default:l(()=>[E(" "+G(t(B)?n.$t("items.update_item"):n.$t("items.save_item")),1)]),_:1},8,["content-loading","loading"])])]),_:1})]),_:1})],40,he)]),_:1})}}};export{Ue as default}; diff --git a/public/build/assets/Create.3e41e2ab.js b/public/build/assets/Create.6147407c.js similarity index 99% rename from public/build/assets/Create.3e41e2ab.js rename to public/build/assets/Create.6147407c.js index 0e6590256..a3edda57a 100644 --- a/public/build/assets/Create.3e41e2ab.js +++ b/public/build/assets/Create.6147407c.js @@ -1 +1 @@ -var ae=Object.defineProperty;var G=Object.getOwnPropertySymbols;var ie=Object.prototype.hasOwnProperty,ue=Object.prototype.propertyIsEnumerable;var N=(y,o,b)=>o in y?ae(y,o,{enumerable:!0,configurable:!0,writable:!0,value:b}):y[o]=b,T=(y,o)=>{for(var b in o||(o={}))ie.call(o,b)&&N(y,b,o[b]);if(G)for(var b of G(o))ue.call(o,b)&&N(y,b,o[b]);return y};import{J as de,aN as me,G as ce,B,k as M,L as g,M as R,N as F,O as A,Q as pe,P as ge,R as be,S as q,T as Ce,r as p,o as _,l as $,w as i,h as m,f as r,m as O,i as H,t as v,u as e,j as V,x as L,e as J,U as fe}from"./vendor.01d0adc5.js";import{l as _e,m as $e,d as ye,b as ve,n as Ve}from"./main.75722495.js";import{_ as we}from"./CreateCustomFields.a3a572c4.js";const he=["onSubmit"],Be={class:"flex items-center justify-end"},Me={class:"grid grid-cols-5 gap-4 mb-8"},Ie={class:"col-span-5 text-lg font-semibold text-left lg:col-span-1"},xe={class:"grid grid-cols-5 gap-4 mb-8"},Ue={class:"col-span-5 text-lg font-semibold text-left lg:col-span-1"},ke={class:"md:col-span-2"},Se={class:"text-sm text-gray-500"},qe={class:"grid grid-cols-5 gap-4 mb-8"},Le={class:"col-span-5 text-lg font-semibold text-left lg:col-span-1"},ze={class:"space-y-6"},Pe={class:"flex items-center justify-start mb-6 md:justify-end md:mb-0"},Fe={class:"p-1"},je={key:0,class:"grid grid-cols-5 gap-4 mb-8"},De={class:"col-span-5 text-lg font-semibold text-left lg:col-span-1"},Ee={class:"space-y-6"},Ge={class:"grid grid-cols-5 gap-2 mb-8"},Ne={key:0,class:"col-span-5 text-lg font-semibold text-left lg:col-span-1"},Te={class:"col-span-5 lg:col-span-4"},Je={setup(y){const o=_e(),b=$e(),z=ye(),Q=ve(),j="customFields",{t:c}=de(),K=me(),W=ce();let s=B(!1),C=B(!1),f=B(!1);B(!1);const I=B(!1),h=M(()=>W.name==="customers.edit");let X=M(()=>o.isFetchingInitialSettings);const D=M(()=>h.value?c("customers.edit_customer"):c("customers.new_customer")),Y=M(()=>({currentCustomer:{name:{required:g.withMessage(c("validation.required"),R),minLength:g.withMessage(c("validation.name_min_length",{count:3}),F(3))},prefix:{minLength:g.withMessage(c("validation.name_min_length",{count:3}),F(3))},currency_id:{required:g.withMessage(c("validation.required"),R)},email:{required:g.withMessage(c("validation.required"),A(o.currentCustomer.enable_portal==!0)),email:g.withMessage(c("validation.email_incorrect"),pe)},password:{required:g.withMessage(c("validation.required"),A(o.currentCustomer.enable_portal==!0&&!o.currentCustomer.password_added)),minLength:g.withMessage(c("validation.password_min_length",{count:8}),F(8))},confirm_password:{sameAsPassword:g.withMessage(c("validation.password_incorrect"),ge(o.currentCustomer.password))},website:{url:g.withMessage(c("validation.invalid_url"),be)},billing:{address_street_1:{maxLength:g.withMessage(c("validation.address_maxlength",{count:255}),q(255))},address_street_2:{maxLength:g.withMessage(c("validation.address_maxlength",{count:255}),q(255))}},shipping:{address_street_1:{maxLength:g.withMessage(c("validation.address_maxlength",{count:255}),q(255))},address_street_2:{maxLength:g.withMessage(c("validation.address_maxlength",{count:255}),q(255))}}}})),Z=M(()=>`${window.location.origin}/${Q.selectedCompany.slug}/customer/login`),a=Ce(Y,o,{$scope:j});o.resetCurrentCustomer(),o.fetchCustomerInitialSettings(h.value);async function ee(){if(a.value.$touch(),a.value.$invalid)return!0;I.value=!0;let l=T({},o.currentCustomer),t=null;try{t=await(h.value?o.updateCustomer:o.addCustomer)(l)}catch{I.value=!1;return}K.push(`/admin/customers/${t.data.data.id}/view`)}return(l,t)=>{const x=p("BaseBreadcrumbItem"),te=p("BaseBreadcrumb-item"),oe=p("BaseBreadcrumb"),w=p("BaseIcon"),E=p("BaseButton"),ne=p("BasePageHeader"),d=p("BaseInput"),u=p("BaseInputGroup"),P=p("BaseMultiselect"),U=p("BaseInputGrid"),k=p("BaseDivider"),re=p("BaseSwitch"),S=p("BaseTextarea"),se=p("BaseCard"),le=p("BasePage");return _(),$(le,null,{default:i(()=>[m("form",{onSubmit:fe(ee,["prevent"])},[r(ne,{title:e(D)},{actions:i(()=>[m("div",Be,[r(E,{type:"submit",loading:I.value,disabled:I.value},{left:i(n=>[r(w,{name:"SaveIcon",class:O(n.class)},null,8,["class"])]),default:i(()=>[H(" "+v(e(h)?l.$t("customers.update_customer"):l.$t("customers.save_customer")),1)]),_:1},8,["loading","disabled"])])]),default:i(()=>[r(oe,null,{default:i(()=>[r(x,{title:l.$t("general.home"),to:"dashboard"},null,8,["title"]),r(x,{title:l.$tc("customers.customer",2),to:"/admin/customers"},null,8,["title"]),r(te,{title:e(D),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),r(se,{class:"mt-5"},{default:i(()=>[m("div",Me,[m("h6",Ie,v(l.$t("customers.basic_info")),1),r(U,{class:"col-span-5 lg:col-span-4"},{default:i(()=>[r(u,{label:l.$t("customers.display_name"),required:"",error:e(a).currentCustomer.name.$error&&e(a).currentCustomer.name.$errors[0].$message,"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.name,"onUpdate:modelValue":t[0]||(t[0]=n=>e(o).currentCustomer.name=n),"content-loading":e(s),type:"text",name:"name",class:"",invalid:e(a).currentCustomer.name.$error,onInput:t[1]||(t[1]=n=>e(a).currentCustomer.name.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","error","content-loading"]),r(u,{label:l.$t("customers.primary_contact_name"),"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.contact_name,"onUpdate:modelValue":t[2]||(t[2]=n=>e(o).currentCustomer.contact_name=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),r(u,{error:e(a).currentCustomer.email.$error&&e(a).currentCustomer.email.$errors[0].$message,"content-loading":e(s),label:l.$t("customers.email")},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.email,"onUpdate:modelValue":t[3]||(t[3]=n=>e(o).currentCustomer.email=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",name:"email",invalid:e(a).currentCustomer.email.$error,onInput:t[4]||(t[4]=n=>e(a).currentCustomer.email.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["error","content-loading","label"]),r(u,{label:l.$t("customers.phone"),"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.phone,"onUpdate:modelValue":t[5]||(t[5]=n=>e(o).currentCustomer.phone=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",name:"phone"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),r(u,{label:l.$t("customers.primary_currency"),"content-loading":e(s),error:e(a).currentCustomer.currency_id.$error&&e(a).currentCustomer.currency_id.$errors[0].$message,required:""},{default:i(()=>[r(P,{modelValue:e(o).currentCustomer.currency_id,"onUpdate:modelValue":t[6]||(t[6]=n=>e(o).currentCustomer.currency_id=n),"value-prop":"id",label:"name","track-by":"name","content-loading":e(s),options:e(z).currencies,searchable:"","can-deselect":!1,placeholder:l.$t("customers.select_currency"),invalid:e(a).currentCustomer.currency_id.$error,class:"w-full"},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","content-loading","error"]),r(u,{error:e(a).currentCustomer.website.$error&&e(a).currentCustomer.website.$errors[0].$message,label:l.$t("customers.website"),"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.website,"onUpdate:modelValue":t[7]||(t[7]=n=>e(o).currentCustomer.website=n),"content-loading":e(s),type:"url",onInput:t[8]||(t[8]=n=>e(a).currentCustomer.website.$touch())},null,8,["modelValue","content-loading"])]),_:1},8,["error","label","content-loading"]),r(u,{label:l.$t("customers.prefix"),error:e(a).currentCustomer.prefix.$error&&e(a).currentCustomer.prefix.$errors[0].$message,"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.prefix,"onUpdate:modelValue":t[9]||(t[9]=n=>e(o).currentCustomer.prefix=n),"content-loading":e(s),type:"text",name:"name",class:"",invalid:e(a).currentCustomer.prefix.$error,onInput:t[10]||(t[10]=n=>e(a).currentCustomer.prefix.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","error","content-loading"])]),_:1})]),r(k,{class:"mb-5 md:mb-8"}),m("div",xe,[m("h6",Ue,v(l.$t("customers.portal_access")),1),r(U,{class:"col-span-5 lg:col-span-4"},{default:i(()=>[m("div",ke,[m("p",Se,v(l.$t("customers.portal_access_text")),1),r(re,{modelValue:e(o).currentCustomer.enable_portal,"onUpdate:modelValue":t[11]||(t[11]=n=>e(o).currentCustomer.enable_portal=n),class:"mt-1 flex"},null,8,["modelValue"])]),e(o).currentCustomer.enable_portal?(_(),$(u,{key:0,"content-loading":e(s),label:l.$t("customers.portal_access_url"),class:"md:col-span-2","help-text":l.$t("customers.portal_access_url_help")},{default:i(()=>[r(Ve,{token:e(Z)},null,8,["token"])]),_:1},8,["content-loading","label","help-text"])):V("",!0),e(o).currentCustomer.enable_portal?(_(),$(u,{key:1,"content-loading":e(s),error:e(a).currentCustomer.password.$error&&e(a).currentCustomer.password.$errors[0].$message,label:l.$t("customers.password")},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.password,"onUpdate:modelValue":t[14]||(t[14]=n=>e(o).currentCustomer.password=n),modelModifiers:{trim:!0},"content-loading":e(s),type:e(C)?"text":"password",name:"password",invalid:e(a).currentCustomer.password.$error,onInput:t[15]||(t[15]=n=>e(a).currentCustomer.password.$touch())},{right:i(()=>[e(C)?(_(),$(w,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:t[12]||(t[12]=n=>L(C)?C.value=!e(C):C=!e(C))})):(_(),$(w,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:t[13]||(t[13]=n=>L(C)?C.value=!e(C):C=!e(C))}))]),_:1},8,["modelValue","content-loading","type","invalid"])]),_:1},8,["content-loading","error","label"])):V("",!0),e(o).currentCustomer.enable_portal?(_(),$(u,{key:2,error:e(a).currentCustomer.confirm_password.$error&&e(a).currentCustomer.confirm_password.$errors[0].$message,"content-loading":e(s),label:"Confirm Password"},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.confirm_password,"onUpdate:modelValue":t[18]||(t[18]=n=>e(o).currentCustomer.confirm_password=n),modelModifiers:{trim:!0},"content-loading":e(s),type:e(f)?"text":"password",name:"confirm_password",invalid:e(a).currentCustomer.confirm_password.$error,onInput:t[19]||(t[19]=n=>e(a).currentCustomer.confirm_password.$touch())},{right:i(()=>[e(f)?(_(),$(w,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:t[16]||(t[16]=n=>L(f)?f.value=!e(f):f=!e(f))})):(_(),$(w,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:t[17]||(t[17]=n=>L(f)?f.value=!e(f):f=!e(f))}))]),_:1},8,["modelValue","content-loading","type","invalid"])]),_:1},8,["error","content-loading"])):V("",!0)]),_:1})]),r(k,{class:"mb-5 md:mb-8"}),m("div",qe,[m("h6",Le,v(l.$t("customers.billing_address")),1),e(o).currentCustomer.billing?(_(),$(U,{key:0,class:"col-span-5 lg:col-span-4"},{default:i(()=>[r(u,{label:l.$t("customers.name"),"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.billing.name,"onUpdate:modelValue":t[20]||(t[20]=n=>e(o).currentCustomer.billing.name=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",class:"w-full",name:"address_name"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),r(u,{label:l.$t("customers.country"),"content-loading":e(s)},{default:i(()=>[r(P,{modelValue:e(o).currentCustomer.billing.country_id,"onUpdate:modelValue":t[21]||(t[21]=n=>e(o).currentCustomer.billing.country_id=n),"value-prop":"id",label:"name","track-by":"name","resolve-on-load":"",searchable:"","content-loading":e(s),options:e(z).countries,placeholder:l.$t("general.select_country"),class:"w-full"},null,8,["modelValue","content-loading","options","placeholder"])]),_:1},8,["label","content-loading"]),r(u,{label:l.$t("customers.state"),"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.billing.state,"onUpdate:modelValue":t[22]||(t[22]=n=>e(o).currentCustomer.billing.state=n),"content-loading":e(s),name:"billing.state",type:"text"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),r(u,{"content-loading":e(s),label:l.$t("customers.city")},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.billing.city,"onUpdate:modelValue":t[23]||(t[23]=n=>e(o).currentCustomer.billing.city=n),"content-loading":e(s),name:"billing.city",type:"text"},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"]),r(u,{label:l.$t("customers.address"),error:e(a).currentCustomer.billing.address_street_1.$error&&e(a).currentCustomer.billing.address_street_1.$errors[0].$message||e(a).currentCustomer.billing.address_street_2.$error&&e(a).currentCustomer.billing.address_street_2.$errors[0].$message,"content-loading":e(s)},{default:i(()=>[r(S,{modelValue:e(o).currentCustomer.billing.address_street_1,"onUpdate:modelValue":t[24]||(t[24]=n=>e(o).currentCustomer.billing.address_street_1=n),modelModifiers:{trim:!0},"content-loading":e(s),placeholder:l.$t("general.street_1"),type:"text",name:"billing_street1","container-class":"mt-3",onInput:t[25]||(t[25]=n=>e(a).currentCustomer.billing.address_street_1.$touch())},null,8,["modelValue","content-loading","placeholder"]),r(S,{modelValue:e(o).currentCustomer.billing.address_street_2,"onUpdate:modelValue":t[26]||(t[26]=n=>e(o).currentCustomer.billing.address_street_2=n),modelModifiers:{trim:!0},"content-loading":e(s),placeholder:l.$t("general.street_2"),type:"text",class:"mt-3",name:"billing_street2","container-class":"mt-3",onInput:t[27]||(t[27]=n=>e(a).currentCustomer.billing.address_street_2.$touch())},null,8,["modelValue","content-loading","placeholder"])]),_:1},8,["label","error","content-loading"]),m("div",ze,[r(u,{"content-loading":e(s),label:l.$t("customers.phone"),class:"text-left"},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.billing.phone,"onUpdate:modelValue":t[28]||(t[28]=n=>e(o).currentCustomer.billing.phone=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",name:"phone"},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"]),r(u,{label:l.$t("customers.zip_code"),"content-loading":e(s),class:"mt-2 text-left"},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.billing.zip,"onUpdate:modelValue":t[29]||(t[29]=n=>e(o).currentCustomer.billing.zip=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",name:"zip"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"])])]),_:1})):V("",!0)]),r(k,{class:"mb-5 md:mb-8"}),m("div",Pe,[m("div",Fe,[r(E,{type:"button","content-loading":e(s),size:"sm",variant:"primary-outline",onClick:t[30]||(t[30]=n=>e(o).copyAddress(!0))},{left:i(n=>[r(w,{name:"DocumentDuplicateIcon",class:O(n.class)},null,8,["class"])]),default:i(()=>[H(" "+v(l.$t("customers.copy_billing_address")),1)]),_:1},8,["content-loading"])])]),e(o).currentCustomer.shipping?(_(),J("div",je,[m("h6",De,v(l.$t("customers.shipping_address")),1),r(U,{class:"col-span-5 lg:col-span-4"},{default:i(()=>[r(u,{"content-loading":e(s),label:l.$t("customers.name")},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.shipping.name,"onUpdate:modelValue":t[31]||(t[31]=n=>e(o).currentCustomer.shipping.name=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",name:"address_name"},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"]),r(u,{label:l.$t("customers.country"),"content-loading":e(s)},{default:i(()=>[r(P,{modelValue:e(o).currentCustomer.shipping.country_id,"onUpdate:modelValue":t[32]||(t[32]=n=>e(o).currentCustomer.shipping.country_id=n),"value-prop":"id",label:"name","track-by":"name","resolve-on-load":"",searchable:"","content-loading":e(s),options:e(z).countries,placeholder:l.$t("general.select_country"),class:"w-full"},null,8,["modelValue","content-loading","options","placeholder"])]),_:1},8,["label","content-loading"]),r(u,{label:l.$t("customers.state"),"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.shipping.state,"onUpdate:modelValue":t[33]||(t[33]=n=>e(o).currentCustomer.shipping.state=n),"content-loading":e(s),name:"shipping.state",type:"text"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),r(u,{"content-loading":e(s),label:l.$t("customers.city")},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.shipping.city,"onUpdate:modelValue":t[34]||(t[34]=n=>e(o).currentCustomer.shipping.city=n),"content-loading":e(s),name:"shipping.city",type:"text"},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"]),r(u,{label:l.$t("customers.address"),"content-loading":e(s),error:e(a).currentCustomer.shipping.address_street_1.$error&&e(a).currentCustomer.shipping.address_street_1.$errors[0].$message||e(a).currentCustomer.shipping.address_street_2.$error&&e(a).currentCustomer.shipping.address_street_2.$errors[0].$message},{default:i(()=>[r(S,{modelValue:e(o).currentCustomer.shipping.address_street_1,"onUpdate:modelValue":t[35]||(t[35]=n=>e(o).currentCustomer.shipping.address_street_1=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",placeholder:l.$t("general.street_1"),name:"shipping_street1",onInput:t[36]||(t[36]=n=>e(a).currentCustomer.shipping.address_street_1.$touch())},null,8,["modelValue","content-loading","placeholder"]),r(S,{modelValue:e(o).currentCustomer.shipping.address_street_2,"onUpdate:modelValue":t[37]||(t[37]=n=>e(o).currentCustomer.shipping.address_street_2=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",placeholder:l.$t("general.street_2"),name:"shipping_street2",class:"mt-3","container-class":"mt-3",onInput:t[38]||(t[38]=n=>e(a).currentCustomer.shipping.address_street_2.$touch())},null,8,["modelValue","content-loading","placeholder"])]),_:1},8,["label","content-loading","error"]),m("div",Ee,[r(u,{"content-loading":e(s),label:l.$t("customers.phone"),class:"text-left"},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.shipping.phone,"onUpdate:modelValue":t[39]||(t[39]=n=>e(o).currentCustomer.shipping.phone=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",name:"phone"},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"]),r(u,{label:l.$t("customers.zip_code"),"content-loading":e(s),class:"mt-2 text-left"},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.shipping.zip,"onUpdate:modelValue":t[40]||(t[40]=n=>e(o).currentCustomer.shipping.zip=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",name:"zip"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"])])]),_:1})])):V("",!0),e(b).customFields.length>0?(_(),$(k,{key:1,class:"mb-5 md:mb-8"})):V("",!0),m("div",Ge,[e(b).customFields.length>0?(_(),J("h6",Ne,v(l.$t("settings.custom_fields.title")),1)):V("",!0),m("div",Te,[r(we,{type:"Customer",store:e(o),"store-prop":"currentCustomer","is-edit":e(h),"is-loading":e(X),"custom-field-scope":j},null,8,["store","is-edit","is-loading"])])])]),_:1})],40,he)]),_:1})}}};export{Je as default}; +var ae=Object.defineProperty;var G=Object.getOwnPropertySymbols;var ie=Object.prototype.hasOwnProperty,ue=Object.prototype.propertyIsEnumerable;var N=(y,o,b)=>o in y?ae(y,o,{enumerable:!0,configurable:!0,writable:!0,value:b}):y[o]=b,T=(y,o)=>{for(var b in o||(o={}))ie.call(o,b)&&N(y,b,o[b]);if(G)for(var b of G(o))ue.call(o,b)&&N(y,b,o[b]);return y};import{J as de,aN as me,G as ce,B,k as M,L as g,M as R,N as F,O as A,Q as pe,P as ge,R as be,S as q,T as Ce,r as p,o as _,l as $,w as i,h as m,f as r,m as O,i as H,t as v,u as e,j as V,x as L,e as J,U as fe}from"./vendor.01d0adc5.js";import{l as _e,m as $e,d as ye,b as ve,n as Ve}from"./main.24f7a84b.js";import{_ as we}from"./CreateCustomFields.8531ebe0.js";const he=["onSubmit"],Be={class:"flex items-center justify-end"},Me={class:"grid grid-cols-5 gap-4 mb-8"},Ie={class:"col-span-5 text-lg font-semibold text-left lg:col-span-1"},xe={class:"grid grid-cols-5 gap-4 mb-8"},Ue={class:"col-span-5 text-lg font-semibold text-left lg:col-span-1"},ke={class:"md:col-span-2"},Se={class:"text-sm text-gray-500"},qe={class:"grid grid-cols-5 gap-4 mb-8"},Le={class:"col-span-5 text-lg font-semibold text-left lg:col-span-1"},ze={class:"space-y-6"},Pe={class:"flex items-center justify-start mb-6 md:justify-end md:mb-0"},Fe={class:"p-1"},je={key:0,class:"grid grid-cols-5 gap-4 mb-8"},De={class:"col-span-5 text-lg font-semibold text-left lg:col-span-1"},Ee={class:"space-y-6"},Ge={class:"grid grid-cols-5 gap-2 mb-8"},Ne={key:0,class:"col-span-5 text-lg font-semibold text-left lg:col-span-1"},Te={class:"col-span-5 lg:col-span-4"},Je={setup(y){const o=_e(),b=$e(),z=ye(),Q=ve(),j="customFields",{t:c}=de(),K=me(),W=ce();let s=B(!1),C=B(!1),f=B(!1);B(!1);const I=B(!1),h=M(()=>W.name==="customers.edit");let X=M(()=>o.isFetchingInitialSettings);const D=M(()=>h.value?c("customers.edit_customer"):c("customers.new_customer")),Y=M(()=>({currentCustomer:{name:{required:g.withMessage(c("validation.required"),R),minLength:g.withMessage(c("validation.name_min_length",{count:3}),F(3))},prefix:{minLength:g.withMessage(c("validation.name_min_length",{count:3}),F(3))},currency_id:{required:g.withMessage(c("validation.required"),R)},email:{required:g.withMessage(c("validation.required"),A(o.currentCustomer.enable_portal==!0)),email:g.withMessage(c("validation.email_incorrect"),pe)},password:{required:g.withMessage(c("validation.required"),A(o.currentCustomer.enable_portal==!0&&!o.currentCustomer.password_added)),minLength:g.withMessage(c("validation.password_min_length",{count:8}),F(8))},confirm_password:{sameAsPassword:g.withMessage(c("validation.password_incorrect"),ge(o.currentCustomer.password))},website:{url:g.withMessage(c("validation.invalid_url"),be)},billing:{address_street_1:{maxLength:g.withMessage(c("validation.address_maxlength",{count:255}),q(255))},address_street_2:{maxLength:g.withMessage(c("validation.address_maxlength",{count:255}),q(255))}},shipping:{address_street_1:{maxLength:g.withMessage(c("validation.address_maxlength",{count:255}),q(255))},address_street_2:{maxLength:g.withMessage(c("validation.address_maxlength",{count:255}),q(255))}}}})),Z=M(()=>`${window.location.origin}/${Q.selectedCompany.slug}/customer/login`),a=Ce(Y,o,{$scope:j});o.resetCurrentCustomer(),o.fetchCustomerInitialSettings(h.value);async function ee(){if(a.value.$touch(),a.value.$invalid)return!0;I.value=!0;let l=T({},o.currentCustomer),t=null;try{t=await(h.value?o.updateCustomer:o.addCustomer)(l)}catch{I.value=!1;return}K.push(`/admin/customers/${t.data.data.id}/view`)}return(l,t)=>{const x=p("BaseBreadcrumbItem"),te=p("BaseBreadcrumb-item"),oe=p("BaseBreadcrumb"),w=p("BaseIcon"),E=p("BaseButton"),ne=p("BasePageHeader"),d=p("BaseInput"),u=p("BaseInputGroup"),P=p("BaseMultiselect"),U=p("BaseInputGrid"),k=p("BaseDivider"),re=p("BaseSwitch"),S=p("BaseTextarea"),se=p("BaseCard"),le=p("BasePage");return _(),$(le,null,{default:i(()=>[m("form",{onSubmit:fe(ee,["prevent"])},[r(ne,{title:e(D)},{actions:i(()=>[m("div",Be,[r(E,{type:"submit",loading:I.value,disabled:I.value},{left:i(n=>[r(w,{name:"SaveIcon",class:O(n.class)},null,8,["class"])]),default:i(()=>[H(" "+v(e(h)?l.$t("customers.update_customer"):l.$t("customers.save_customer")),1)]),_:1},8,["loading","disabled"])])]),default:i(()=>[r(oe,null,{default:i(()=>[r(x,{title:l.$t("general.home"),to:"dashboard"},null,8,["title"]),r(x,{title:l.$tc("customers.customer",2),to:"/admin/customers"},null,8,["title"]),r(te,{title:e(D),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),r(se,{class:"mt-5"},{default:i(()=>[m("div",Me,[m("h6",Ie,v(l.$t("customers.basic_info")),1),r(U,{class:"col-span-5 lg:col-span-4"},{default:i(()=>[r(u,{label:l.$t("customers.display_name"),required:"",error:e(a).currentCustomer.name.$error&&e(a).currentCustomer.name.$errors[0].$message,"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.name,"onUpdate:modelValue":t[0]||(t[0]=n=>e(o).currentCustomer.name=n),"content-loading":e(s),type:"text",name:"name",class:"",invalid:e(a).currentCustomer.name.$error,onInput:t[1]||(t[1]=n=>e(a).currentCustomer.name.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","error","content-loading"]),r(u,{label:l.$t("customers.primary_contact_name"),"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.contact_name,"onUpdate:modelValue":t[2]||(t[2]=n=>e(o).currentCustomer.contact_name=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),r(u,{error:e(a).currentCustomer.email.$error&&e(a).currentCustomer.email.$errors[0].$message,"content-loading":e(s),label:l.$t("customers.email")},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.email,"onUpdate:modelValue":t[3]||(t[3]=n=>e(o).currentCustomer.email=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",name:"email",invalid:e(a).currentCustomer.email.$error,onInput:t[4]||(t[4]=n=>e(a).currentCustomer.email.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["error","content-loading","label"]),r(u,{label:l.$t("customers.phone"),"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.phone,"onUpdate:modelValue":t[5]||(t[5]=n=>e(o).currentCustomer.phone=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",name:"phone"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),r(u,{label:l.$t("customers.primary_currency"),"content-loading":e(s),error:e(a).currentCustomer.currency_id.$error&&e(a).currentCustomer.currency_id.$errors[0].$message,required:""},{default:i(()=>[r(P,{modelValue:e(o).currentCustomer.currency_id,"onUpdate:modelValue":t[6]||(t[6]=n=>e(o).currentCustomer.currency_id=n),"value-prop":"id",label:"name","track-by":"name","content-loading":e(s),options:e(z).currencies,searchable:"","can-deselect":!1,placeholder:l.$t("customers.select_currency"),invalid:e(a).currentCustomer.currency_id.$error,class:"w-full"},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","content-loading","error"]),r(u,{error:e(a).currentCustomer.website.$error&&e(a).currentCustomer.website.$errors[0].$message,label:l.$t("customers.website"),"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.website,"onUpdate:modelValue":t[7]||(t[7]=n=>e(o).currentCustomer.website=n),"content-loading":e(s),type:"url",onInput:t[8]||(t[8]=n=>e(a).currentCustomer.website.$touch())},null,8,["modelValue","content-loading"])]),_:1},8,["error","label","content-loading"]),r(u,{label:l.$t("customers.prefix"),error:e(a).currentCustomer.prefix.$error&&e(a).currentCustomer.prefix.$errors[0].$message,"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.prefix,"onUpdate:modelValue":t[9]||(t[9]=n=>e(o).currentCustomer.prefix=n),"content-loading":e(s),type:"text",name:"name",class:"",invalid:e(a).currentCustomer.prefix.$error,onInput:t[10]||(t[10]=n=>e(a).currentCustomer.prefix.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","error","content-loading"])]),_:1})]),r(k,{class:"mb-5 md:mb-8"}),m("div",xe,[m("h6",Ue,v(l.$t("customers.portal_access")),1),r(U,{class:"col-span-5 lg:col-span-4"},{default:i(()=>[m("div",ke,[m("p",Se,v(l.$t("customers.portal_access_text")),1),r(re,{modelValue:e(o).currentCustomer.enable_portal,"onUpdate:modelValue":t[11]||(t[11]=n=>e(o).currentCustomer.enable_portal=n),class:"mt-1 flex"},null,8,["modelValue"])]),e(o).currentCustomer.enable_portal?(_(),$(u,{key:0,"content-loading":e(s),label:l.$t("customers.portal_access_url"),class:"md:col-span-2","help-text":l.$t("customers.portal_access_url_help")},{default:i(()=>[r(Ve,{token:e(Z)},null,8,["token"])]),_:1},8,["content-loading","label","help-text"])):V("",!0),e(o).currentCustomer.enable_portal?(_(),$(u,{key:1,"content-loading":e(s),error:e(a).currentCustomer.password.$error&&e(a).currentCustomer.password.$errors[0].$message,label:l.$t("customers.password")},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.password,"onUpdate:modelValue":t[14]||(t[14]=n=>e(o).currentCustomer.password=n),modelModifiers:{trim:!0},"content-loading":e(s),type:e(C)?"text":"password",name:"password",invalid:e(a).currentCustomer.password.$error,onInput:t[15]||(t[15]=n=>e(a).currentCustomer.password.$touch())},{right:i(()=>[e(C)?(_(),$(w,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:t[12]||(t[12]=n=>L(C)?C.value=!e(C):C=!e(C))})):(_(),$(w,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:t[13]||(t[13]=n=>L(C)?C.value=!e(C):C=!e(C))}))]),_:1},8,["modelValue","content-loading","type","invalid"])]),_:1},8,["content-loading","error","label"])):V("",!0),e(o).currentCustomer.enable_portal?(_(),$(u,{key:2,error:e(a).currentCustomer.confirm_password.$error&&e(a).currentCustomer.confirm_password.$errors[0].$message,"content-loading":e(s),label:"Confirm Password"},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.confirm_password,"onUpdate:modelValue":t[18]||(t[18]=n=>e(o).currentCustomer.confirm_password=n),modelModifiers:{trim:!0},"content-loading":e(s),type:e(f)?"text":"password",name:"confirm_password",invalid:e(a).currentCustomer.confirm_password.$error,onInput:t[19]||(t[19]=n=>e(a).currentCustomer.confirm_password.$touch())},{right:i(()=>[e(f)?(_(),$(w,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:t[16]||(t[16]=n=>L(f)?f.value=!e(f):f=!e(f))})):(_(),$(w,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:t[17]||(t[17]=n=>L(f)?f.value=!e(f):f=!e(f))}))]),_:1},8,["modelValue","content-loading","type","invalid"])]),_:1},8,["error","content-loading"])):V("",!0)]),_:1})]),r(k,{class:"mb-5 md:mb-8"}),m("div",qe,[m("h6",Le,v(l.$t("customers.billing_address")),1),e(o).currentCustomer.billing?(_(),$(U,{key:0,class:"col-span-5 lg:col-span-4"},{default:i(()=>[r(u,{label:l.$t("customers.name"),"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.billing.name,"onUpdate:modelValue":t[20]||(t[20]=n=>e(o).currentCustomer.billing.name=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",class:"w-full",name:"address_name"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),r(u,{label:l.$t("customers.country"),"content-loading":e(s)},{default:i(()=>[r(P,{modelValue:e(o).currentCustomer.billing.country_id,"onUpdate:modelValue":t[21]||(t[21]=n=>e(o).currentCustomer.billing.country_id=n),"value-prop":"id",label:"name","track-by":"name","resolve-on-load":"",searchable:"","content-loading":e(s),options:e(z).countries,placeholder:l.$t("general.select_country"),class:"w-full"},null,8,["modelValue","content-loading","options","placeholder"])]),_:1},8,["label","content-loading"]),r(u,{label:l.$t("customers.state"),"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.billing.state,"onUpdate:modelValue":t[22]||(t[22]=n=>e(o).currentCustomer.billing.state=n),"content-loading":e(s),name:"billing.state",type:"text"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),r(u,{"content-loading":e(s),label:l.$t("customers.city")},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.billing.city,"onUpdate:modelValue":t[23]||(t[23]=n=>e(o).currentCustomer.billing.city=n),"content-loading":e(s),name:"billing.city",type:"text"},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"]),r(u,{label:l.$t("customers.address"),error:e(a).currentCustomer.billing.address_street_1.$error&&e(a).currentCustomer.billing.address_street_1.$errors[0].$message||e(a).currentCustomer.billing.address_street_2.$error&&e(a).currentCustomer.billing.address_street_2.$errors[0].$message,"content-loading":e(s)},{default:i(()=>[r(S,{modelValue:e(o).currentCustomer.billing.address_street_1,"onUpdate:modelValue":t[24]||(t[24]=n=>e(o).currentCustomer.billing.address_street_1=n),modelModifiers:{trim:!0},"content-loading":e(s),placeholder:l.$t("general.street_1"),type:"text",name:"billing_street1","container-class":"mt-3",onInput:t[25]||(t[25]=n=>e(a).currentCustomer.billing.address_street_1.$touch())},null,8,["modelValue","content-loading","placeholder"]),r(S,{modelValue:e(o).currentCustomer.billing.address_street_2,"onUpdate:modelValue":t[26]||(t[26]=n=>e(o).currentCustomer.billing.address_street_2=n),modelModifiers:{trim:!0},"content-loading":e(s),placeholder:l.$t("general.street_2"),type:"text",class:"mt-3",name:"billing_street2","container-class":"mt-3",onInput:t[27]||(t[27]=n=>e(a).currentCustomer.billing.address_street_2.$touch())},null,8,["modelValue","content-loading","placeholder"])]),_:1},8,["label","error","content-loading"]),m("div",ze,[r(u,{"content-loading":e(s),label:l.$t("customers.phone"),class:"text-left"},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.billing.phone,"onUpdate:modelValue":t[28]||(t[28]=n=>e(o).currentCustomer.billing.phone=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",name:"phone"},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"]),r(u,{label:l.$t("customers.zip_code"),"content-loading":e(s),class:"mt-2 text-left"},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.billing.zip,"onUpdate:modelValue":t[29]||(t[29]=n=>e(o).currentCustomer.billing.zip=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",name:"zip"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"])])]),_:1})):V("",!0)]),r(k,{class:"mb-5 md:mb-8"}),m("div",Pe,[m("div",Fe,[r(E,{type:"button","content-loading":e(s),size:"sm",variant:"primary-outline",onClick:t[30]||(t[30]=n=>e(o).copyAddress(!0))},{left:i(n=>[r(w,{name:"DocumentDuplicateIcon",class:O(n.class)},null,8,["class"])]),default:i(()=>[H(" "+v(l.$t("customers.copy_billing_address")),1)]),_:1},8,["content-loading"])])]),e(o).currentCustomer.shipping?(_(),J("div",je,[m("h6",De,v(l.$t("customers.shipping_address")),1),r(U,{class:"col-span-5 lg:col-span-4"},{default:i(()=>[r(u,{"content-loading":e(s),label:l.$t("customers.name")},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.shipping.name,"onUpdate:modelValue":t[31]||(t[31]=n=>e(o).currentCustomer.shipping.name=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",name:"address_name"},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"]),r(u,{label:l.$t("customers.country"),"content-loading":e(s)},{default:i(()=>[r(P,{modelValue:e(o).currentCustomer.shipping.country_id,"onUpdate:modelValue":t[32]||(t[32]=n=>e(o).currentCustomer.shipping.country_id=n),"value-prop":"id",label:"name","track-by":"name","resolve-on-load":"",searchable:"","content-loading":e(s),options:e(z).countries,placeholder:l.$t("general.select_country"),class:"w-full"},null,8,["modelValue","content-loading","options","placeholder"])]),_:1},8,["label","content-loading"]),r(u,{label:l.$t("customers.state"),"content-loading":e(s)},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.shipping.state,"onUpdate:modelValue":t[33]||(t[33]=n=>e(o).currentCustomer.shipping.state=n),"content-loading":e(s),name:"shipping.state",type:"text"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),r(u,{"content-loading":e(s),label:l.$t("customers.city")},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.shipping.city,"onUpdate:modelValue":t[34]||(t[34]=n=>e(o).currentCustomer.shipping.city=n),"content-loading":e(s),name:"shipping.city",type:"text"},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"]),r(u,{label:l.$t("customers.address"),"content-loading":e(s),error:e(a).currentCustomer.shipping.address_street_1.$error&&e(a).currentCustomer.shipping.address_street_1.$errors[0].$message||e(a).currentCustomer.shipping.address_street_2.$error&&e(a).currentCustomer.shipping.address_street_2.$errors[0].$message},{default:i(()=>[r(S,{modelValue:e(o).currentCustomer.shipping.address_street_1,"onUpdate:modelValue":t[35]||(t[35]=n=>e(o).currentCustomer.shipping.address_street_1=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",placeholder:l.$t("general.street_1"),name:"shipping_street1",onInput:t[36]||(t[36]=n=>e(a).currentCustomer.shipping.address_street_1.$touch())},null,8,["modelValue","content-loading","placeholder"]),r(S,{modelValue:e(o).currentCustomer.shipping.address_street_2,"onUpdate:modelValue":t[37]||(t[37]=n=>e(o).currentCustomer.shipping.address_street_2=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",placeholder:l.$t("general.street_2"),name:"shipping_street2",class:"mt-3","container-class":"mt-3",onInput:t[38]||(t[38]=n=>e(a).currentCustomer.shipping.address_street_2.$touch())},null,8,["modelValue","content-loading","placeholder"])]),_:1},8,["label","content-loading","error"]),m("div",Ee,[r(u,{"content-loading":e(s),label:l.$t("customers.phone"),class:"text-left"},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.shipping.phone,"onUpdate:modelValue":t[39]||(t[39]=n=>e(o).currentCustomer.shipping.phone=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",name:"phone"},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"]),r(u,{label:l.$t("customers.zip_code"),"content-loading":e(s),class:"mt-2 text-left"},{default:i(()=>[r(d,{modelValue:e(o).currentCustomer.shipping.zip,"onUpdate:modelValue":t[40]||(t[40]=n=>e(o).currentCustomer.shipping.zip=n),modelModifiers:{trim:!0},"content-loading":e(s),type:"text",name:"zip"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"])])]),_:1})])):V("",!0),e(b).customFields.length>0?(_(),$(k,{key:1,class:"mb-5 md:mb-8"})):V("",!0),m("div",Ge,[e(b).customFields.length>0?(_(),J("h6",Ne,v(l.$t("settings.custom_fields.title")),1)):V("",!0),m("div",Te,[r(we,{type:"Customer",store:e(o),"store-prop":"currentCustomer","is-edit":e(h),"is-loading":e(X),"custom-field-scope":j},null,8,["store","is-edit","is-loading"])])])]),_:1})],40,he)]),_:1})}}};export{Je as default}; diff --git a/public/build/assets/Create.a722899f.js b/public/build/assets/Create.a6517fd4.js similarity index 86% rename from public/build/assets/Create.a722899f.js rename to public/build/assets/Create.a6517fd4.js index 69917850b..5e3ca2f14 100644 --- a/public/build/assets/Create.a722899f.js +++ b/public/build/assets/Create.a6517fd4.js @@ -1 +1 @@ -import{G as le,aN as ie,J as ue,B as U,k as _,L as p,M as y,b2 as ce,S as j,O as de,aP as pe,T as me,r as u,o as E,e as xe,f as r,w as o,h as V,u as e,l as w,m as S,i as b,t as $,j as M,x as ge,U as _e,F as ye}from"./vendor.01d0adc5.js";import{u as fe}from"./expense.e270a61c.js";import{u as ve}from"./category.4b37f0ed.js";import{l as Ee,b as be,m as $e,c as he,d as Be}from"./main.75722495.js";import{_ as Ce}from"./CreateCustomFields.a3a572c4.js";import{_ as Ve}from"./CategoryModal.9a2e05b9.js";import{_ as we}from"./ExchangeRateConverter.7d8c4309.js";import"./exchange-rate.dffa79b6.js";const Se=["onSubmit"],Me={class:"hidden md:block"},Ie={class:"block md:hidden"},Ge={setup(qe){const D=Ee(),I=be(),n=fe(),P=ve(),N=$e(),R=he(),g=le(),G=ie(),{t:c}=ue(),q=Be();let m=U(!1),i=U(!1);const k="newExpense",T=_(()=>({currentExpense:{expense_category_id:{required:p.withMessage(c("validation.required"),y)},expense_date:{required:p.withMessage(c("validation.required"),y)},amount:{required:p.withMessage(c("validation.required"),y),minValue:p.withMessage(c("validation.price_minvalue"),ce(.1)),maxLength:p.withMessage(c("validation.price_maxlength"),j(20))},notes:{maxLength:p.withMessage(c("validation.description_maxlength"),j(65e3))},currency_id:{required:p.withMessage(c("validation.required"),y)},exchange_rate:{required:de(function(){return p.withMessage(c("validation.required"),y),n.showExchangeRate}),decimal:p.withMessage(c("validation.valid_exchange_rate"),pe)}}})),l=me(T,n,{$scope:k}),h=_({get:()=>n.currentExpense.amount/100,set:t=>{n.currentExpense.amount=Math.round(t*100)}}),d=_(()=>g.name==="expenses.edit"),F=_(()=>d.value?c("expenses.edit_expense"):c("expenses.new_expense")),L=_(()=>d.value?`/expenses/${g.params.id}/download-receipt`:"");n.resetCurrentExpenseData(),N.resetCustomFields(),Q();function z(t,a){n.currentExpense.attachment_receipt=a}function A(){n.currentExpense.attachment_receipt=null}function H(){R.openModal({title:c("settings.expense_category.add_category"),componentName:"CategoryModal",size:"sm"})}function J(t){n.currentExpense.selectedCurrency=q.currencies.find(a=>a.id===t)}async function O(t){return(await P.fetchCategories({search:t})).data.data}async function K(t){return(await D.fetchCustomers({search:t})).data.data}async function Q(){d.value||(n.currentExpense.currency_id=I.selectedCompanyCurrency.id,n.currentExpense.selectedCurrency=I.selectedCompanyCurrency),i.value=!0,await n.fetchPaymentModes({limit:"all"}),d.value?(await n.fetchExpense(g.params.id),n.currentExpense.currency_id=n.currentExpense.selectedCurrency.id):g.query.customer&&(n.currentExpense.customer_id=g.query.customer),i.value=!1}async function W(){if(l.value.$touch(),l.value.$invalid)return;m.value=!0;let t=n.currentExpense;try{d.value?await n.updateExpense({id:g.params.id,data:t}):await n.addExpense(t),m.value=!1,G.push("/admin/expenses")}catch(a){console.error(a),m.value=!1;return}}return(t,a)=>{const B=u("BaseBreadcrumbItem"),X=u("BaseBreadcrumb"),f=u("BaseIcon"),C=u("BaseButton"),Y=u("BasePageHeader"),Z=u("BaseSelectAction"),v=u("BaseMultiselect"),x=u("BaseInputGroup"),ee=u("BaseDatePicker"),ne=u("BaseMoney"),te=u("BaseTextarea"),ae=u("BaseFileUploader"),re=u("BaseInputGrid"),se=u("BaseCard"),oe=u("BasePage");return E(),xe(ye,null,[r(Ve),r(oe,{class:"relative"},{default:o(()=>[V("form",{action:"",onSubmit:_e(W,["prevent"])},[r(Y,{title:e(F),class:"mb-5"},{actions:o(()=>[e(d)&&e(n).currentExpense.attachment_receipt?(E(),w(C,{key:0,href:e(L),tag:"a",variant:"primary-outline",type:"button",class:"mr-2"},{left:o(s=>[r(f,{name:"DownloadIcon",class:S(s.class)},null,8,["class"])]),default:o(()=>[b(" "+$(t.$t("expenses.download_receipt")),1)]),_:1},8,["href"])):M("",!0),V("div",Me,[r(C,{loading:e(m),"content-loading":e(i),disabled:e(m),variant:"primary",type:"submit"},{left:o(s=>[e(m)?M("",!0):(E(),w(f,{key:0,name:"SaveIcon",class:S(s.class)},null,8,["class"]))]),default:o(()=>[b(" "+$(e(d)?t.$t("expenses.update_expense"):t.$t("expenses.save_expense")),1)]),_:1},8,["loading","content-loading","disabled"])])]),default:o(()=>[r(X,null,{default:o(()=>[r(B,{title:t.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),r(B,{title:t.$tc("expenses.expense",2),to:"/admin/expenses"},null,8,["title"]),r(B,{title:e(F),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),r(se,null,{default:o(()=>[r(re,null,{default:o(()=>[r(x,{label:t.$t("expenses.category"),error:e(l).currentExpense.expense_category_id.$error&&e(l).currentExpense.expense_category_id.$errors[0].$message,"content-loading":e(i),required:""},{default:o(()=>[r(v,{modelValue:e(n).currentExpense.expense_category_id,"onUpdate:modelValue":a[0]||(a[0]=s=>e(n).currentExpense.expense_category_id=s),"content-loading":e(i),"value-prop":"id",label:"name","track-by":"id",options:O,"filter-results":!1,"resolve-on-load":"",delay:500,searchable:"",invalid:e(l).currentExpense.expense_category_id.$error,placeholder:t.$t("expenses.categories.select_a_category"),onInput:a[1]||(a[1]=s=>e(l).currentExpense.expense_category_id.$touch())},{action:o(()=>[r(Z,{onClick:H},{default:o(()=>[r(f,{name:"PlusIcon",class:"h-4 mr-2 -ml-2 text-center text-primary-400"}),b(" "+$(t.$t("settings.expense_category.add_new_category")),1)]),_:1})]),_:1},8,["modelValue","content-loading","invalid","placeholder"])]),_:1},8,["label","error","content-loading"]),r(x,{label:t.$t("expenses.expense_date"),error:e(l).currentExpense.expense_date.$error&&e(l).currentExpense.expense_date.$errors[0].$message,"content-loading":e(i),required:""},{default:o(()=>[r(ee,{modelValue:e(n).currentExpense.expense_date,"onUpdate:modelValue":a[2]||(a[2]=s=>e(n).currentExpense.expense_date=s),"content-loading":e(i),"calendar-button":!0,invalid:e(l).currentExpense.expense_date.$error,onInput:a[3]||(a[3]=s=>e(l).currentExpense.expense_date.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","error","content-loading"]),r(x,{label:t.$t("expenses.amount"),error:e(l).currentExpense.amount.$error&&e(l).currentExpense.amount.$errors[0].$message,"content-loading":e(i),required:""},{default:o(()=>[r(ne,{key:e(n).currentExpense.selectedCurrency,modelValue:e(h),"onUpdate:modelValue":a[4]||(a[4]=s=>ge(h)?h.value=s:null),class:"focus:border focus:border-solid focus:border-primary-500",invalid:e(l).currentExpense.amount.$error,currency:e(n).currentExpense.selectedCurrency,onInput:a[5]||(a[5]=s=>e(l).currentExpense.amount.$touch())},null,8,["modelValue","invalid","currency"])]),_:1},8,["label","error","content-loading"]),r(x,{label:t.$t("expenses.currency"),"content-loading":e(i),error:e(l).currentExpense.currency_id.$error&&e(l).currentExpense.currency_id.$errors[0].$message,required:""},{default:o(()=>[r(v,{modelValue:e(n).currentExpense.currency_id,"onUpdate:modelValue":[a[6]||(a[6]=s=>e(n).currentExpense.currency_id=s),J],"value-prop":"id",label:"name","track-by":"name","content-loading":e(i),options:e(q).currencies,searchable:"","can-deselect":!1,placeholder:t.$t("customers.select_currency"),invalid:e(l).currentExpense.currency_id.$error,class:"w-full"},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","content-loading","error"]),r(we,{store:e(n),"store-prop":"currentExpense",v:e(l).currentExpense,"is-loading":e(i),"is-edit":e(d),"customer-currency":e(n).currentExpense.currency_id},null,8,["store","v","is-loading","is-edit","customer-currency"]),r(x,{"content-loading":e(i),label:t.$t("expenses.customer")},{default:o(()=>[r(v,{modelValue:e(n).currentExpense.customer_id,"onUpdate:modelValue":a[7]||(a[7]=s=>e(n).currentExpense.customer_id=s),"content-loading":e(i),"value-prop":"id",label:"name","track-by":"id",options:K,"filter-results":!1,"resolve-on-load":"",delay:500,searchable:"",placeholder:t.$t("customers.select_a_customer")},null,8,["modelValue","content-loading","placeholder"])]),_:1},8,["content-loading","label"]),r(x,{"content-loading":e(i),label:t.$t("payments.payment_mode")},{default:o(()=>[r(v,{modelValue:e(n).currentExpense.payment_method_id,"onUpdate:modelValue":a[8]||(a[8]=s=>e(n).currentExpense.payment_method_id=s),"content-loading":e(i),label:"name","value-prop":"id","track-by":"name",options:e(n).paymentModes,placeholder:t.$t("payments.select_payment_mode"),searchable:""},null,8,["modelValue","content-loading","options","placeholder"])]),_:1},8,["content-loading","label"]),r(x,{"content-loading":e(i),label:t.$t("expenses.note"),error:e(l).currentExpense.notes.$error&&e(l).currentExpense.notes.$errors[0].$message},{default:o(()=>[r(te,{modelValue:e(n).currentExpense.notes,"onUpdate:modelValue":a[9]||(a[9]=s=>e(n).currentExpense.notes=s),"content-loading":e(i),row:4,rows:"4",onInput:a[10]||(a[10]=s=>e(l).currentExpense.notes.$touch())},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label","error"]),r(x,{label:t.$t("expenses.receipt")},{default:o(()=>[r(ae,{modelValue:e(n).currentExpense.receiptFiles,"onUpdate:modelValue":a[11]||(a[11]=s=>e(n).currentExpense.receiptFiles=s),accept:"image/*,.doc,.docx,.pdf,.csv,.xlsx,.xls",onChange:z,onRemove:A},null,8,["modelValue"])]),_:1},8,["label"]),r(Ce,{"is-edit":e(d),class:"col-span-2","is-loading":e(i),type:"Expense",store:e(n),"store-prop":"currentExpense","custom-field-scope":k},null,8,["is-edit","is-loading","store"]),V("div",Ie,[r(C,{loading:e(m),tabindex:6,variant:"primary",type:"submit",class:"flex justify-center w-full"},{left:o(s=>[e(m)?M("",!0):(E(),w(f,{key:0,name:"SaveIcon",class:S(s.class)},null,8,["class"]))]),default:o(()=>[b(" "+$(e(d)?t.$t("expenses.update_expense"):t.$t("expenses.save_expense")),1)]),_:1},8,["loading"])])]),_:1})]),_:1})],40,Se)]),_:1})],64)}}};export{Ge as default}; +import{G as le,aN as ie,J as ue,B as U,k as _,L as p,M as f,b2 as ce,S as j,O as de,aP as pe,T as me,r as u,o as E,e as xe,f as r,w as o,h as V,u as e,l as w,m as S,i as b,t as $,j as M,x as ge,U as _e,F as fe}from"./vendor.01d0adc5.js";import{u as ye}from"./expense.6f364fe1.js";import{u as ve}from"./category.5ef2a7e7.js";import{l as Ee,b as be,m as $e,c as he,d as Be}from"./main.24f7a84b.js";import{_ as Ce}from"./CreateCustomFields.8531ebe0.js";import{_ as Ve}from"./CategoryModal.5e03bcbb.js";import{_ as we}from"./ExchangeRateConverter.285065a4.js";import"./exchange-rate.3b3d35e2.js";const Se=["onSubmit"],Me={class:"hidden md:block"},Ie={class:"block md:hidden"},Ge={setup(qe){const D=Ee(),I=be(),n=ye(),P=ve(),N=$e(),R=he(),g=le(),G=ie(),{t:c}=ue(),q=Be();let m=U(!1),i=U(!1);const k="newExpense",T=_(()=>({currentExpense:{expense_category_id:{required:p.withMessage(c("validation.required"),f)},expense_date:{required:p.withMessage(c("validation.required"),f)},amount:{required:p.withMessage(c("validation.required"),f),minValue:p.withMessage(c("validation.price_minvalue"),ce(.1)),maxLength:p.withMessage(c("validation.price_maxlength"),j(20))},notes:{maxLength:p.withMessage(c("validation.description_maxlength"),j(65e3))},currency_id:{required:p.withMessage(c("validation.required"),f)},exchange_rate:{required:de(function(){return p.withMessage(c("validation.required"),f),n.showExchangeRate}),decimal:p.withMessage(c("validation.valid_exchange_rate"),pe)}}})),l=me(T,n,{$scope:k}),h=_({get:()=>n.currentExpense.amount/100,set:t=>{n.currentExpense.amount=Math.round(t*100)}}),d=_(()=>g.name==="expenses.edit"),F=_(()=>d.value?c("expenses.edit_expense"):c("expenses.new_expense")),L=_(()=>d.value?`/expenses/${g.params.id}/download-receipt`:"");n.resetCurrentExpenseData(),N.resetCustomFields(),Q();function z(t,a){n.currentExpense.attachment_receipt=a}function A(){n.currentExpense.attachment_receipt=null}function H(){R.openModal({title:c("settings.expense_category.add_category"),componentName:"CategoryModal",size:"sm"})}function J(t){n.currentExpense.selectedCurrency=q.currencies.find(a=>a.id===t)}async function O(t){return(await P.fetchCategories({search:t})).data.data}async function K(t){return(await D.fetchCustomers({search:t})).data.data}async function Q(){d.value||(n.currentExpense.currency_id=I.selectedCompanyCurrency.id,n.currentExpense.selectedCurrency=I.selectedCompanyCurrency),i.value=!0,await n.fetchPaymentModes({limit:"all"}),d.value?(await n.fetchExpense(g.params.id),n.currentExpense.currency_id=n.currentExpense.selectedCurrency.id):g.query.customer&&(n.currentExpense.customer_id=g.query.customer),i.value=!1}async function W(){if(l.value.$touch(),l.value.$invalid)return;m.value=!0;let t=n.currentExpense;try{d.value?await n.updateExpense({id:g.params.id,data:t}):await n.addExpense(t),m.value=!1,G.push("/admin/expenses")}catch(a){console.error(a),m.value=!1;return}}return(t,a)=>{const B=u("BaseBreadcrumbItem"),X=u("BaseBreadcrumb"),y=u("BaseIcon"),C=u("BaseButton"),Y=u("BasePageHeader"),Z=u("BaseSelectAction"),v=u("BaseMultiselect"),x=u("BaseInputGroup"),ee=u("BaseDatePicker"),ne=u("BaseMoney"),te=u("BaseTextarea"),ae=u("BaseFileUploader"),re=u("BaseInputGrid"),se=u("BaseCard"),oe=u("BasePage");return E(),xe(fe,null,[r(Ve),r(oe,{class:"relative"},{default:o(()=>[V("form",{action:"",onSubmit:_e(W,["prevent"])},[r(Y,{title:e(F),class:"mb-5"},{actions:o(()=>[e(d)&&e(n).currentExpense.attachment_receipt?(E(),w(C,{key:0,href:e(L),tag:"a",variant:"primary-outline",type:"button",class:"mr-2"},{left:o(s=>[r(y,{name:"DownloadIcon",class:S(s.class)},null,8,["class"])]),default:o(()=>[b(" "+$(t.$t("expenses.download_receipt")),1)]),_:1},8,["href"])):M("",!0),V("div",Me,[r(C,{loading:e(m),"content-loading":e(i),disabled:e(m),variant:"primary",type:"submit"},{left:o(s=>[e(m)?M("",!0):(E(),w(y,{key:0,name:"SaveIcon",class:S(s.class)},null,8,["class"]))]),default:o(()=>[b(" "+$(e(d)?t.$t("expenses.update_expense"):t.$t("expenses.save_expense")),1)]),_:1},8,["loading","content-loading","disabled"])])]),default:o(()=>[r(X,null,{default:o(()=>[r(B,{title:t.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),r(B,{title:t.$tc("expenses.expense",2),to:"/admin/expenses"},null,8,["title"]),r(B,{title:e(F),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),r(se,null,{default:o(()=>[r(re,null,{default:o(()=>[r(x,{label:t.$t("expenses.category"),error:e(l).currentExpense.expense_category_id.$error&&e(l).currentExpense.expense_category_id.$errors[0].$message,"content-loading":e(i),required:""},{default:o(()=>[r(v,{modelValue:e(n).currentExpense.expense_category_id,"onUpdate:modelValue":a[0]||(a[0]=s=>e(n).currentExpense.expense_category_id=s),"content-loading":e(i),"value-prop":"id",label:"name","track-by":"id",options:O,"filter-results":!1,"resolve-on-load":"",delay:500,searchable:"",invalid:e(l).currentExpense.expense_category_id.$error,placeholder:t.$t("expenses.categories.select_a_category"),onInput:a[1]||(a[1]=s=>e(l).currentExpense.expense_category_id.$touch())},{action:o(()=>[r(Z,{onClick:H},{default:o(()=>[r(y,{name:"PlusIcon",class:"h-4 mr-2 -ml-2 text-center text-primary-400"}),b(" "+$(t.$t("settings.expense_category.add_new_category")),1)]),_:1})]),_:1},8,["modelValue","content-loading","invalid","placeholder"])]),_:1},8,["label","error","content-loading"]),r(x,{label:t.$t("expenses.expense_date"),error:e(l).currentExpense.expense_date.$error&&e(l).currentExpense.expense_date.$errors[0].$message,"content-loading":e(i),required:""},{default:o(()=>[r(ee,{modelValue:e(n).currentExpense.expense_date,"onUpdate:modelValue":a[2]||(a[2]=s=>e(n).currentExpense.expense_date=s),"content-loading":e(i),"calendar-button":!0,invalid:e(l).currentExpense.expense_date.$error,onInput:a[3]||(a[3]=s=>e(l).currentExpense.expense_date.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","error","content-loading"]),r(x,{label:t.$t("expenses.amount"),error:e(l).currentExpense.amount.$error&&e(l).currentExpense.amount.$errors[0].$message,"content-loading":e(i),required:""},{default:o(()=>[r(ne,{key:e(n).currentExpense.selectedCurrency,modelValue:e(h),"onUpdate:modelValue":a[4]||(a[4]=s=>ge(h)?h.value=s:null),class:"focus:border focus:border-solid focus:border-primary-500",invalid:e(l).currentExpense.amount.$error,currency:e(n).currentExpense.selectedCurrency,onInput:a[5]||(a[5]=s=>e(l).currentExpense.amount.$touch())},null,8,["modelValue","invalid","currency"])]),_:1},8,["label","error","content-loading"]),r(x,{label:t.$t("expenses.currency"),"content-loading":e(i),error:e(l).currentExpense.currency_id.$error&&e(l).currentExpense.currency_id.$errors[0].$message,required:""},{default:o(()=>[r(v,{modelValue:e(n).currentExpense.currency_id,"onUpdate:modelValue":[a[6]||(a[6]=s=>e(n).currentExpense.currency_id=s),J],"value-prop":"id",label:"name","track-by":"name","content-loading":e(i),options:e(q).currencies,searchable:"","can-deselect":!1,placeholder:t.$t("customers.select_currency"),invalid:e(l).currentExpense.currency_id.$error,class:"w-full"},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","content-loading","error"]),r(we,{store:e(n),"store-prop":"currentExpense",v:e(l).currentExpense,"is-loading":e(i),"is-edit":e(d),"customer-currency":e(n).currentExpense.currency_id},null,8,["store","v","is-loading","is-edit","customer-currency"]),r(x,{"content-loading":e(i),label:t.$t("expenses.customer")},{default:o(()=>[r(v,{modelValue:e(n).currentExpense.customer_id,"onUpdate:modelValue":a[7]||(a[7]=s=>e(n).currentExpense.customer_id=s),"content-loading":e(i),"value-prop":"id",label:"name","track-by":"id",options:K,"filter-results":!1,"resolve-on-load":"",delay:500,searchable:"",placeholder:t.$t("customers.select_a_customer")},null,8,["modelValue","content-loading","placeholder"])]),_:1},8,["content-loading","label"]),r(x,{"content-loading":e(i),label:t.$t("payments.payment_mode")},{default:o(()=>[r(v,{modelValue:e(n).currentExpense.payment_method_id,"onUpdate:modelValue":a[8]||(a[8]=s=>e(n).currentExpense.payment_method_id=s),"content-loading":e(i),label:"name","value-prop":"id","track-by":"name",options:e(n).paymentModes,placeholder:t.$t("payments.select_payment_mode"),searchable:""},null,8,["modelValue","content-loading","options","placeholder"])]),_:1},8,["content-loading","label"]),r(x,{"content-loading":e(i),label:t.$t("expenses.note"),error:e(l).currentExpense.notes.$error&&e(l).currentExpense.notes.$errors[0].$message},{default:o(()=>[r(te,{modelValue:e(n).currentExpense.notes,"onUpdate:modelValue":a[9]||(a[9]=s=>e(n).currentExpense.notes=s),"content-loading":e(i),row:4,rows:"4",onInput:a[10]||(a[10]=s=>e(l).currentExpense.notes.$touch())},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label","error"]),r(x,{label:t.$t("expenses.receipt")},{default:o(()=>[r(ae,{modelValue:e(n).currentExpense.receiptFiles,"onUpdate:modelValue":a[11]||(a[11]=s=>e(n).currentExpense.receiptFiles=s),accept:"image/*,.doc,.docx,.pdf,.csv,.xlsx,.xls",onChange:z,onRemove:A},null,8,["modelValue"])]),_:1},8,["label"]),r(Ce,{"is-edit":e(d),class:"col-span-2","is-loading":e(i),type:"Expense",store:e(n),"store-prop":"currentExpense","custom-field-scope":k},null,8,["is-edit","is-loading","store"]),V("div",Ie,[r(C,{loading:e(m),tabindex:6,variant:"primary",type:"submit",class:"flex justify-center w-full"},{left:o(s=>[e(m)?M("",!0):(E(),w(y,{key:0,name:"SaveIcon",class:S(s.class)},null,8,["class"]))]),default:o(()=>[b(" "+$(e(d)?t.$t("expenses.update_expense"):t.$t("expenses.save_expense")),1)]),_:1},8,["loading"])])]),_:1})]),_:1})],40,Se)]),_:1})],64)}}};export{Ge as default}; diff --git a/public/build/assets/CreateCustomFields.a3a572c4.js b/public/build/assets/CreateCustomFields.8531ebe0.js similarity index 87% rename from public/build/assets/CreateCustomFields.a3a572c4.js rename to public/build/assets/CreateCustomFields.8531ebe0.js index 5375dd8af..a6d668a36 100644 --- a/public/build/assets/CreateCustomFields.a3a572c4.js +++ b/public/build/assets/CreateCustomFields.8531ebe0.js @@ -1 +1 @@ -var I=Object.defineProperty,g=Object.defineProperties;var q=Object.getOwnPropertyDescriptors;var y=Object.getOwnPropertySymbols;var b=Object.prototype.hasOwnProperty,h=Object.prototype.propertyIsEnumerable;var _=(e,t,r)=>t in e?I(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,f=(e,t)=>{for(var r in t||(t={}))b.call(t,r)&&_(e,r,t[r]);if(y)for(var r of y(t))h.call(t,r)&&_(e,r,t[r]);return e},v=(e,t)=>g(e,q(t));import{J as j,L as w,O as V,T as L,k as T,aE as F,r as E,o as n,l as m,w as P,aj as O,u as c,_ as S,C as x,e as D,f as A,F as R,y as k,j as B,I as C}from"./vendor.01d0adc5.js";import{o as i,m as Y}from"./main.75722495.js";function $(e){switch(e){case"./types/DateTimeType.vue":return i(()=>import("./DateTimeType.164ef007.js"),["assets/DateTimeType.164ef007.js","assets/vendor.01d0adc5.js"]);case"./types/DateType.vue":return i(()=>import("./DateType.757171f6.js"),["assets/DateType.757171f6.js","assets/vendor.01d0adc5.js"]);case"./types/DropdownType.vue":return i(()=>import("./DropdownType.631322dc.js"),["assets/DropdownType.631322dc.js","assets/vendor.01d0adc5.js"]);case"./types/InputType.vue":return i(()=>import("./InputType.4e1e4da6.js"),["assets/InputType.4e1e4da6.js","assets/vendor.01d0adc5.js"]);case"./types/NumberType.vue":return i(()=>import("./NumberType.137b13f5.js"),["assets/NumberType.137b13f5.js","assets/vendor.01d0adc5.js"]);case"./types/PhoneType.vue":return i(()=>import("./PhoneType.57e436b9.js"),["assets/PhoneType.57e436b9.js","assets/vendor.01d0adc5.js"]);case"./types/SwitchType.vue":return i(()=>import("./SwitchType.59d9fde0.js"),["assets/SwitchType.59d9fde0.js","assets/vendor.01d0adc5.js"]);case"./types/TextAreaType.vue":return i(()=>import("./TextAreaType.ebc60805.js"),["assets/TextAreaType.ebc60805.js","assets/vendor.01d0adc5.js"]);case"./types/TimeType.vue":return i(()=>import("./TimeType.a6077fcb.js"),["assets/TimeType.a6077fcb.js","assets/vendor.01d0adc5.js"]);case"./types/UrlType.vue":return i(()=>import("./UrlType.4a23df64.js"),["assets/UrlType.4a23df64.js","assets/vendor.01d0adc5.js"]);default:return new Promise(function(t,r){(typeof queueMicrotask=="function"?queueMicrotask:setTimeout)(r.bind(null,new Error("Unknown variable dynamic import: "+e)))})}}const M={props:{field:{type:Object,required:!0},customFieldScope:{type:String,required:!0},index:{type:Number,required:!0},store:{type:Object,required:!0},storeProp:{type:String,required:!0}},setup(e){const t=e,{t:r}=j(),d={value:{required:w.withMessage(r("validation.required"),V(t.field.is_required))}},a=L(d,T(()=>t.field),{$scope:t.customFieldScope}),o=T(()=>t.field.type?F(()=>$(`./types/${t.field.type}Type.vue`)):!1);return(u,s)=>{const l=E("BaseInputGroup");return n(),m(l,{label:e.field.label,required:!!e.field.is_required,error:c(a).value.$error&&c(a).value.$errors[0].$message},{default:P(()=>[(n(),m(O(c(o)),{modelValue:e.field.value,"onUpdate:modelValue":s[0]||(s[0]=p=>e.field.value=p),options:e.field.options,invalid:c(a).value.$error,placeholder:e.field.placeholder},null,8,["modelValue","options","invalid","placeholder"]))]),_:1},8,["label","required","error"])}}},N={key:0},J={props:{store:{type:Object,required:!0},storeProp:{type:String,required:!0},isEdit:{type:Boolean,default:!1},type:{type:String,default:null},gridLayout:{type:String,default:"two-column"},isLoading:{type:Boolean,default:null},customFieldScope:{type:String,required:!0}},setup(e){const t=e,r=Y();a();function d(){t.isEdit&&t.store[t.storeProp].fields.forEach(o=>{const u=t.store[t.storeProp].customFields.findIndex(s=>s.id===o.custom_field_id);if(u>-1){let s=o.default_answer;s&&o.custom_field.type==="DateTime"&&(s=C(o.default_answer,"YYYY-MM-DD HH:mm:ss").format("YYYY-MM-DD HH:mm")),t.store[t.storeProp].customFields[u]=v(f({},o),{id:o.custom_field_id,value:s,label:o.custom_field.label,options:o.custom_field.options,is_required:o.custom_field.is_required,placeholder:o.custom_field.placeholder,order:o.custom_field.order})}})}async function a(){let u=(await r.fetchCustomFields({type:t.type,limit:"all"})).data.data;u.map(s=>s.value=s.default_answer),t.store[t.storeProp].customFields=S.sortBy(u,s=>s.order),d()}return x(()=>t.store[t.storeProp].fields,o=>{d()}),(o,u)=>{const s=E("BaseInputGrid");return e.store[e.storeProp]&&e.store[e.storeProp].customFields.length>0&&!e.isLoading?(n(),D("div",N,[A(s,{layout:e.gridLayout},{default:P(()=>[(n(!0),D(R,null,k(e.store[e.storeProp].customFields,(l,p)=>(n(),m(M,{key:l.id,"custom-field-scope":e.customFieldScope,store:e.store,"store-prop":e.storeProp,index:p,field:l},null,8,["custom-field-scope","store","store-prop","index","field"]))),128))]),_:1},8,["layout"])])):B("",!0)}}};export{J as _}; +var I=Object.defineProperty,b=Object.defineProperties;var g=Object.getOwnPropertyDescriptors;var y=Object.getOwnPropertySymbols;var q=Object.prototype.hasOwnProperty,h=Object.prototype.propertyIsEnumerable;var f=(e,t,r)=>t in e?I(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,_=(e,t)=>{for(var r in t||(t={}))q.call(t,r)&&f(e,r,t[r]);if(y)for(var r of y(t))h.call(t,r)&&f(e,r,t[r]);return e},v=(e,t)=>b(e,g(t));import{J as j,L as w,O as V,T as L,k as T,aE as F,r as E,o as n,l as m,w as P,aj as O,u as c,_ as S,C as x,e as D,f as A,F as R,y as k,j as B,I as C}from"./vendor.01d0adc5.js";import{o as i,m as Y}from"./main.24f7a84b.js";function $(e){switch(e){case"./types/DateTimeType.vue":return i(()=>import("./DateTimeType.164ef007.js"),["assets/DateTimeType.164ef007.js","assets/vendor.01d0adc5.js"]);case"./types/DateType.vue":return i(()=>import("./DateType.757171f6.js"),["assets/DateType.757171f6.js","assets/vendor.01d0adc5.js"]);case"./types/DropdownType.vue":return i(()=>import("./DropdownType.631322dc.js"),["assets/DropdownType.631322dc.js","assets/vendor.01d0adc5.js"]);case"./types/InputType.vue":return i(()=>import("./InputType.4e1e4da6.js"),["assets/InputType.4e1e4da6.js","assets/vendor.01d0adc5.js"]);case"./types/NumberType.vue":return i(()=>import("./NumberType.137b13f5.js"),["assets/NumberType.137b13f5.js","assets/vendor.01d0adc5.js"]);case"./types/PhoneType.vue":return i(()=>import("./PhoneType.57e436b9.js"),["assets/PhoneType.57e436b9.js","assets/vendor.01d0adc5.js"]);case"./types/SwitchType.vue":return i(()=>import("./SwitchType.59d9fde0.js"),["assets/SwitchType.59d9fde0.js","assets/vendor.01d0adc5.js"]);case"./types/TextAreaType.vue":return i(()=>import("./TextAreaType.ebc60805.js"),["assets/TextAreaType.ebc60805.js","assets/vendor.01d0adc5.js"]);case"./types/TimeType.vue":return i(()=>import("./TimeType.a6077fcb.js"),["assets/TimeType.a6077fcb.js","assets/vendor.01d0adc5.js"]);case"./types/UrlType.vue":return i(()=>import("./UrlType.4a23df64.js"),["assets/UrlType.4a23df64.js","assets/vendor.01d0adc5.js"]);default:return new Promise(function(t,r){(typeof queueMicrotask=="function"?queueMicrotask:setTimeout)(r.bind(null,new Error("Unknown variable dynamic import: "+e)))})}}const M={props:{field:{type:Object,required:!0},customFieldScope:{type:String,required:!0},index:{type:Number,required:!0},store:{type:Object,required:!0},storeProp:{type:String,required:!0}},setup(e){const t=e,{t:r}=j(),d={value:{required:w.withMessage(r("validation.required"),V(t.field.is_required))}},a=L(d,T(()=>t.field),{$scope:t.customFieldScope}),o=T(()=>t.field.type?F(()=>$(`./types/${t.field.type}Type.vue`)):!1);return(u,s)=>{const l=E("BaseInputGroup");return n(),m(l,{label:e.field.label,required:!!e.field.is_required,error:c(a).value.$error&&c(a).value.$errors[0].$message},{default:P(()=>[(n(),m(O(c(o)),{modelValue:e.field.value,"onUpdate:modelValue":s[0]||(s[0]=p=>e.field.value=p),options:e.field.options,invalid:c(a).value.$error,placeholder:e.field.placeholder},null,8,["modelValue","options","invalid","placeholder"]))]),_:1},8,["label","required","error"])}}},N={key:0},J={props:{store:{type:Object,required:!0},storeProp:{type:String,required:!0},isEdit:{type:Boolean,default:!1},type:{type:String,default:null},gridLayout:{type:String,default:"two-column"},isLoading:{type:Boolean,default:null},customFieldScope:{type:String,required:!0}},setup(e){const t=e,r=Y();a();function d(){t.isEdit&&t.store[t.storeProp].fields.forEach(o=>{const u=t.store[t.storeProp].customFields.findIndex(s=>s.id===o.custom_field_id);if(u>-1){let s=o.default_answer;s&&o.custom_field.type==="DateTime"&&(s=C(o.default_answer,"YYYY-MM-DD HH:mm:ss").format("YYYY-MM-DD HH:mm")),t.store[t.storeProp].customFields[u]=v(_({},o),{id:o.custom_field_id,value:s,label:o.custom_field.label,options:o.custom_field.options,is_required:o.custom_field.is_required,placeholder:o.custom_field.placeholder,order:o.custom_field.order})}})}async function a(){let u=(await r.fetchCustomFields({type:t.type,limit:"all"})).data.data;u.map(s=>s.value=s.default_answer),t.store[t.storeProp].customFields=S.sortBy(u,s=>s.order),d()}return x(()=>t.store[t.storeProp].fields,o=>{d()}),(o,u)=>{const s=E("BaseInputGrid");return e.store[e.storeProp]&&e.store[e.storeProp].customFields.length>0&&!e.isLoading?(n(),D("div",N,[A(s,{layout:e.gridLayout},{default:P(()=>[(n(!0),D(R,null,k(e.store[e.storeProp].customFields,(l,p)=>(n(),m(M,{key:l.id,"custom-field-scope":e.customFieldScope,store:e.store,"store-prop":e.storeProp,index:p,field:l},null,8,["custom-field-scope","store","store-prop","index","field"]))),128))]),_:1},8,["layout"])])):B("",!0)}}};export{J as _}; diff --git a/public/build/assets/CustomFieldsSetting.9f0813a0.js b/public/build/assets/CustomFieldsSetting.452cd2ca.js similarity index 99% rename from public/build/assets/CustomFieldsSetting.9f0813a0.js rename to public/build/assets/CustomFieldsSetting.452cd2ca.js index 9a5b34432..cd360325b 100644 --- a/public/build/assets/CustomFieldsSetting.9f0813a0.js +++ b/public/build/assets/CustomFieldsSetting.452cd2ca.js @@ -1 +1 @@ -var ie=Object.defineProperty;var W=Object.getOwnPropertySymbols;var de=Object.prototype.hasOwnProperty,me=Object.prototype.propertyIsEnumerable;var Z=(m,n,e)=>n in m?ie(m,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):m[n]=e,ee=(m,n)=>{for(var e in n||(n={}))de.call(n,e)&&Z(m,e,n[e]);if(W)for(var e of W(n))me.call(n,e)&&Z(m,e,n[e]);return m};import{J as H,G as ce,ah as te,r as d,o as C,l as F,w as u,f as l,u as t,i as B,t as $,j as M,B as L,e as z,aY as pe,U as se,a0 as le,k as D,aE as _e,L as k,M as A,aT as fe,T as ye,h as O,x as oe,y as ve,m as G,F as Ce,aj as be,V as ge}from"./vendor.01d0adc5.js";import{j as Fe,u as Te,m as K,e as ae,c as Y,g as U,o as T}from"./main.75722495.js";const we={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(m){const n=m,e=Fe();Te();const{t:i}=H(),v=K();ce();const f=ae(),c=Y();te("utils");async function p(b){await v.fetchCustomField(b),c.openModal({title:i("settings.custom_fields.edit_custom_field"),componentName:"CustomFieldModal",size:"sm",data:b,refreshData:n.loadData})}async function V(b){e.openDialog({title:i("general.are_you_sure"),message:i("settings.custom_fields.custom_field_confirm_delete"),yesLabel:i("general.ok"),noLabel:i("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async g=>{g&&(await v.deleteCustomFields(b),n.loadData&&n.loadData())})}return(b,g)=>{const y=d("BaseIcon"),I=d("BaseDropdownItem"),h=d("BaseDropdown");return C(),F(h,null,{activator:u(()=>[l(y,{name:"DotsHorizontalIcon",class:"h-5 text-gray-500"})]),default:u(()=>[t(f).hasAbilities(t(U).EDIT_CUSTOM_FIELDS)?(C(),F(I,{key:0,onClick:g[0]||(g[0]=o=>p(m.row.id))},{default:u(()=>[l(y,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),B(" "+$(b.$t("general.edit")),1)]),_:1})):M("",!0),t(f).hasAbilities(t(U).DELETE_CUSTOM_FIELDS)?(C(),F(I,{key:1,onClick:g[1]||(g[1]=o=>V(m.row.id))},{default:u(()=>[l(y,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),B(" "+$(b.$t("general.delete")),1)]),_:1})):M("",!0)]),_:1})}}},$e={class:"flex items-center mt-1"},Ie={emits:["onAdd"],setup(m,{emit:n}){const e=L(null);function i(){if(e.value==null||e.value==""||e.value==null)return!0;n("onAdd",e.value),e.value=null}return(v,f)=>{const c=d("BaseInput"),p=d("BaseIcon");return C(),z("div",$e,[l(c,{modelValue:e.value,"onUpdate:modelValue":f[0]||(f[0]=V=>e.value=V),type:"text",class:"w-full md:w-96",placeholder:v.$t("settings.custom_fields.press_enter_to_add"),onClick:i,onKeydown:pe(se(i,["prevent","stop"]),["enter"])},null,8,["modelValue","placeholder","onKeydown"]),l(p,{name:"PlusCircleIcon",class:"ml-1 text-primary-500 cursor-pointer",onClick:i})])}}};function he(m){switch(m){case"../../custom-fields/types/DateTimeType.vue":return T(()=>import("./DateTimeType.164ef007.js"),["assets/DateTimeType.164ef007.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/DateType.vue":return T(()=>import("./DateType.757171f6.js"),["assets/DateType.757171f6.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/DropdownType.vue":return T(()=>import("./DropdownType.631322dc.js"),["assets/DropdownType.631322dc.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/InputType.vue":return T(()=>import("./InputType.4e1e4da6.js"),["assets/InputType.4e1e4da6.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/NumberType.vue":return T(()=>import("./NumberType.137b13f5.js"),["assets/NumberType.137b13f5.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/PhoneType.vue":return T(()=>import("./PhoneType.57e436b9.js"),["assets/PhoneType.57e436b9.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/SwitchType.vue":return T(()=>import("./SwitchType.59d9fde0.js"),["assets/SwitchType.59d9fde0.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/TextAreaType.vue":return T(()=>import("./TextAreaType.ebc60805.js"),["assets/TextAreaType.ebc60805.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/TimeType.vue":return T(()=>import("./TimeType.a6077fcb.js"),["assets/TimeType.a6077fcb.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/UrlType.vue":return T(()=>import("./UrlType.4a23df64.js"),["assets/UrlType.4a23df64.js","assets/vendor.01d0adc5.js"]);default:return new Promise(function(n,e){(typeof queueMicrotask=="function"?queueMicrotask:setTimeout)(e.bind(null,new Error("Unknown variable dynamic import: "+m)))})}}const Be={class:"flex justify-between w-full"},De=["onSubmit"],Ve={class:"overflow-y-auto max-h-[550px]"},Se={class:"px-4 md:px-8 py-8 overflow-y-auto sm:p-6"},Ee={class:"z-0 flex justify-end p-4 border-t border-solid border-gray-light border-modal-bg"},qe={setup(m){const n=Y(),e=K(),{t:i}=H();let v=L(!1);const f=le(["Customer","Invoice","Estimate","Expense","Payment"]),c=le([{label:"Text",value:"Input"},{label:"Textarea",value:"TextArea"},{label:"Phone",value:"Phone"},{label:"URL",value:"Url"},{label:"Number",value:"Number"},{label:"Select Field",value:"Dropdown"},{label:"Switch Toggle",value:"Switch"},{label:"Date",value:"Date"},{label:"Time",value:"Time"},{label:"Date & Time",value:"DateTime"}]);let p=L(c[0]);const V=D(()=>n.active&&n.componentName==="CustomFieldModal"),b=D(()=>p.value&&p.value.label==="Switch Toggle"),g=D(()=>p.value&&p.value.label==="Select Field"),y=D(()=>e.currentCustomField.type?_e(()=>he(`../../custom-fields/types/${e.currentCustomField.type}Type.vue`)):!1),I=D({get:()=>e.currentCustomField.is_required===1,set:s=>{const a=s?1:0;e.currentCustomField.is_required=a}}),h=D(()=>({currentCustomField:{type:{required:k.withMessage(i("validation.required"),A)},name:{required:k.withMessage(i("validation.required"),A)},label:{required:k.withMessage(i("validation.required"),A)},model_type:{required:k.withMessage(i("validation.required"),A)},order:{required:k.withMessage(i("validation.required"),A),numeric:k.withMessage(i("validation.numbers_only"),fe)},type:{required:k.withMessage(i("validation.required"),A)}}})),o=ye(h,D(()=>e));function S(){e.isEdit?p.value=c.find(s=>s.value==e.currentCustomField.type):(e.currentCustomField.model_type=f[0],e.currentCustomField.type=c[0].value,p.value=c[0])}async function P(){if(o.value.currentCustomField.$touch(),o.value.currentCustomField.$invalid)return!0;v.value=!0;let s=ee({},e.currentCustomField);if(e.currentCustomField.options&&(s.options=e.currentCustomField.options.map(E=>E.name)),s.type=="Time"&&typeof s.default_answer=="object"){let E=s&&s.default_answer&&s.default_answer.HH?s.default_answer.HH:null,q=s&&s.default_answer&&s.default_answer.mm?s.default_answer.mm:null;s&&s.default_answer&&s.default_answer.ss&&s.default_answer.ss,s.default_answer=`${E}:${q}`}await(e.isEdit?e.updateCustomField:e.addCustomField)(s),v.value=!1,n.refreshData&&n.refreshData(),R()}function x(s){e.currentCustomField.options=[{name:s},...e.currentCustomField.options]}function _(s){if(e.isEdit&&e.currentCustomField.in_use)return;e.currentCustomField.options[s].name===e.currentCustomField.default_answer&&(e.currentCustomField.default_answer=null),e.currentCustomField.options.splice(s,1)}function N(s){e.currentCustomField.type=s.value}function R(){n.closeModal(),setTimeout(()=>{e.resetCurrentCustomField(),o.value.$reset()},300)}return(s,a)=>{const E=d("BaseIcon"),q=d("BaseInput"),w=d("BaseInputGroup"),J=d("BaseMultiselect"),re=d("BaseSwitch"),ne=d("BaseInputGrid"),X=d("BaseButton"),ue=d("BaseModal");return C(),F(ue,{show:t(V),onOpen:S},{header:u(()=>[O("div",Be,[B($(t(n).title)+" ",1),l(E,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:R})])]),default:u(()=>[O("form",{action:"",onSubmit:se(P,["prevent"])},[O("div",Ve,[O("div",Se,[l(ne,{layout:"one-column"},{default:u(()=>[l(w,{label:s.$t("settings.custom_fields.name"),required:"",error:t(o).currentCustomField.name.$error&&t(o).currentCustomField.name.$errors[0].$message},{default:u(()=>[l(q,{ref:(r,j)=>{j.name=r},modelValue:t(e).currentCustomField.name,"onUpdate:modelValue":a[0]||(a[0]=r=>t(e).currentCustomField.name=r),invalid:t(o).currentCustomField.name.$error,onInput:a[1]||(a[1]=r=>t(o).currentCustomField.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),l(w,{label:s.$t("settings.custom_fields.model"),error:t(o).currentCustomField.model_type.$error&&t(o).currentCustomField.model_type.$errors[0].$message,"help-text":t(e).currentCustomField.in_use?s.$t("settings.custom_fields.model_in_use"):"",required:""},{default:u(()=>[l(J,{modelValue:t(e).currentCustomField.model_type,"onUpdate:modelValue":a[2]||(a[2]=r=>t(e).currentCustomField.model_type=r),options:t(f),"can-deselect":!1,invalid:t(o).currentCustomField.model_type.$error,searchable:!0,disabled:t(e).currentCustomField.in_use,onInput:a[3]||(a[3]=r=>t(o).currentCustomField.model_type.$touch())},null,8,["modelValue","options","invalid","disabled"])]),_:1},8,["label","error","help-text"]),l(w,{class:"flex items-center space-x-4",label:s.$t("settings.custom_fields.required")},{default:u(()=>[l(re,{modelValue:t(I),"onUpdate:modelValue":a[4]||(a[4]=r=>oe(I)?I.value=r:null)},null,8,["modelValue"])]),_:1},8,["label"]),l(w,{label:s.$t("settings.custom_fields.type"),error:t(o).currentCustomField.type.$error&&t(o).currentCustomField.type.$errors[0].$message,"help-text":t(e).currentCustomField.in_use?s.$t("settings.custom_fields.type_in_use"):"",required:""},{default:u(()=>[l(J,{modelValue:t(p),"onUpdate:modelValue":[a[5]||(a[5]=r=>oe(p)?p.value=r:p=r),N],options:t(c),invalid:t(o).currentCustomField.type.$error,disabled:t(e).currentCustomField.in_use,searchable:!0,"can-deselect":!1,object:""},null,8,["modelValue","options","invalid","disabled"])]),_:1},8,["label","error","help-text"]),l(w,{label:s.$t("settings.custom_fields.label"),required:"",error:t(o).currentCustomField.label.$error&&t(o).currentCustomField.label.$errors[0].$message},{default:u(()=>[l(q,{modelValue:t(e).currentCustomField.label,"onUpdate:modelValue":a[6]||(a[6]=r=>t(e).currentCustomField.label=r),invalid:t(o).currentCustomField.label.$error,onInput:a[7]||(a[7]=r=>t(o).currentCustomField.label.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t(g)?(C(),F(w,{key:0,label:s.$t("settings.custom_fields.options")},{default:u(()=>[l(Ie,{onOnAdd:x}),(C(!0),z(Ce,null,ve(t(e).currentCustomField.options,(r,j)=>(C(),z("div",{key:j,class:"flex items-center mt-5"},[l(q,{modelValue:r.name,"onUpdate:modelValue":Q=>r.name=Q,class:"w-64"},null,8,["modelValue","onUpdate:modelValue"]),l(E,{name:"MinusCircleIcon",class:G(["ml-1 cursor-pointer",t(e).currentCustomField.in_use?"text-gray-300":"text-red-300"]),onClick:Q=>_(j)},null,8,["class","onClick"])]))),128))]),_:1},8,["label"])):M("",!0),l(w,{label:s.$t("settings.custom_fields.default_value"),class:"relative"},{default:u(()=>[(C(),F(be(t(y)),{modelValue:t(e).currentCustomField.default_answer,"onUpdate:modelValue":a[8]||(a[8]=r=>t(e).currentCustomField.default_answer=r),options:t(e).currentCustomField.options,"default-date-time":t(e).currentCustomField.dateTimeValue},null,8,["modelValue","options","default-date-time"]))]),_:1},8,["label"]),t(b)?M("",!0):(C(),F(w,{key:1,label:s.$t("settings.custom_fields.placeholder")},{default:u(()=>[l(q,{modelValue:t(e).currentCustomField.placeholder,"onUpdate:modelValue":a[9]||(a[9]=r=>t(e).currentCustomField.placeholder=r)},null,8,["modelValue"])]),_:1},8,["label"])),l(w,{label:s.$t("settings.custom_fields.order"),error:t(o).currentCustomField.order.$error&&t(o).currentCustomField.order.$errors[0].$message,required:""},{default:u(()=>[l(q,{modelValue:t(e).currentCustomField.order,"onUpdate:modelValue":a[10]||(a[10]=r=>t(e).currentCustomField.order=r),type:"number",invalid:t(o).currentCustomField.order.$error,onInput:a[11]||(a[11]=r=>t(o).currentCustomField.order.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1})])]),O("div",Ee,[l(X,{class:"mr-3",type:"button",variant:"primary-outline",onClick:R},{default:u(()=>[B($(s.$t("general.cancel")),1)]),_:1}),l(X,{variant:"primary",loading:t(v),disabled:t(v),type:"submit"},{left:u(r=>[t(v)?M("",!0):(C(),F(E,{key:0,class:G(r.class),name:"SaveIcon"},null,8,["class"]))]),default:u(()=>[B(" "+$(t(e).isEdit?s.$t("general.update"):s.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,De)]),_:1},8,["show"])}}},ke={class:"text-xs text-gray-500"},Ue={setup(m){const n=Y(),e=K(),i=ae(),v=te("utils"),{t:f}=H(),c=L(null),p=D(()=>[{key:"name",label:f("settings.custom_fields.name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"model_type",label:f("settings.custom_fields.model")},{key:"type",label:f("settings.custom_fields.type")},{key:"is_required",label:f("settings.custom_fields.required")},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function V({page:y,filter:I,sort:h}){let o={orderByField:h.fieldName||"created_at",orderBy:h.order||"desc",page:y},S=await e.fetchCustomFields(o);return{data:S.data.data,pagination:{totalPages:S.data.meta.last_page,currentPage:y,limit:5,totalCount:S.data.meta.total}}}function b(){n.openModal({title:f("settings.custom_fields.add_custom_field"),componentName:"CustomFieldModal",size:"sm",refreshData:c.value&&c.value.refresh})}async function g(){c.value&&c.value.refresh()}return(y,I)=>{const h=d("BaseIcon"),o=d("BaseButton"),S=d("BaseBadge"),P=d("BaseTable"),x=d("BaseSettingCard");return C(),F(x,{title:y.$t("settings.menu_title.custom_fields"),description:y.$t("settings.custom_fields.section_description")},{action:u(()=>[t(i).hasAbilities(t(U).CREATE_CUSTOM_FIELDS)?(C(),F(o,{key:0,variant:"primary-outline",onClick:b},{left:u(_=>[l(h,{class:G(_.class),name:"PlusIcon"},null,8,["class"]),B(" "+$(y.$t("settings.custom_fields.add_custom_field")),1)]),_:1})):M("",!0)]),default:u(()=>[l(qe),l(P,{ref:(_,N)=>{N.table=_,c.value=_},data:V,columns:t(p),class:"mt-16"},ge({"cell-name":u(({row:_})=>[B($(_.data.name)+" ",1),O("span",ke," ("+$(_.data.slug)+")",1)]),"cell-is_required":u(({row:_})=>[l(S,{"bg-color":t(v).getBadgeStatusColor(_.data.is_required?"YES":"NO").bgColor,color:t(v).getBadgeStatusColor(_.data.is_required?"YES":"NO").color},{default:u(()=>[B($(_.data.is_required?y.$t("settings.custom_fields.yes"):y.$t("settings.custom_fields.no").replace("_"," ")),1)]),_:2},1032,["bg-color","color"])]),_:2},[t(i).hasAbilities([t(U).DELETE_CUSTOM_FIELDS,t(U).EDIT_CUSTOM_FIELDS])?{name:"cell-actions",fn:u(({row:_})=>[l(we,{row:_.data,table:c.value,"load-data":g},null,8,["row","table"])])}:void 0]),1032,["columns"])]),_:1},8,["title","description"])}}};export{Ue as default}; +var ie=Object.defineProperty;var W=Object.getOwnPropertySymbols;var de=Object.prototype.hasOwnProperty,me=Object.prototype.propertyIsEnumerable;var Z=(m,n,e)=>n in m?ie(m,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):m[n]=e,ee=(m,n)=>{for(var e in n||(n={}))de.call(n,e)&&Z(m,e,n[e]);if(W)for(var e of W(n))me.call(n,e)&&Z(m,e,n[e]);return m};import{J as H,G as ce,ah as te,r as d,o as C,l as F,w as u,f as l,u as t,i as B,t as $,j as M,B as L,e as z,aY as pe,U as se,a0 as le,k as D,aE as _e,L as k,M as A,aT as fe,T as ye,h as O,x as oe,y as ve,m as G,F as Ce,aj as be,V as ge}from"./vendor.01d0adc5.js";import{j as Fe,u as Te,m as K,e as ae,c as Y,g as U,o as T}from"./main.24f7a84b.js";const we={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(m){const n=m,e=Fe();Te();const{t:i}=H(),v=K();ce();const f=ae(),c=Y();te("utils");async function p(b){await v.fetchCustomField(b),c.openModal({title:i("settings.custom_fields.edit_custom_field"),componentName:"CustomFieldModal",size:"sm",data:b,refreshData:n.loadData})}async function V(b){e.openDialog({title:i("general.are_you_sure"),message:i("settings.custom_fields.custom_field_confirm_delete"),yesLabel:i("general.ok"),noLabel:i("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async g=>{g&&(await v.deleteCustomFields(b),n.loadData&&n.loadData())})}return(b,g)=>{const y=d("BaseIcon"),I=d("BaseDropdownItem"),h=d("BaseDropdown");return C(),F(h,null,{activator:u(()=>[l(y,{name:"DotsHorizontalIcon",class:"h-5 text-gray-500"})]),default:u(()=>[t(f).hasAbilities(t(U).EDIT_CUSTOM_FIELDS)?(C(),F(I,{key:0,onClick:g[0]||(g[0]=o=>p(m.row.id))},{default:u(()=>[l(y,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),B(" "+$(b.$t("general.edit")),1)]),_:1})):M("",!0),t(f).hasAbilities(t(U).DELETE_CUSTOM_FIELDS)?(C(),F(I,{key:1,onClick:g[1]||(g[1]=o=>V(m.row.id))},{default:u(()=>[l(y,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),B(" "+$(b.$t("general.delete")),1)]),_:1})):M("",!0)]),_:1})}}},$e={class:"flex items-center mt-1"},Ie={emits:["onAdd"],setup(m,{emit:n}){const e=L(null);function i(){if(e.value==null||e.value==""||e.value==null)return!0;n("onAdd",e.value),e.value=null}return(v,f)=>{const c=d("BaseInput"),p=d("BaseIcon");return C(),z("div",$e,[l(c,{modelValue:e.value,"onUpdate:modelValue":f[0]||(f[0]=V=>e.value=V),type:"text",class:"w-full md:w-96",placeholder:v.$t("settings.custom_fields.press_enter_to_add"),onClick:i,onKeydown:pe(se(i,["prevent","stop"]),["enter"])},null,8,["modelValue","placeholder","onKeydown"]),l(p,{name:"PlusCircleIcon",class:"ml-1 text-primary-500 cursor-pointer",onClick:i})])}}};function he(m){switch(m){case"../../custom-fields/types/DateTimeType.vue":return T(()=>import("./DateTimeType.164ef007.js"),["assets/DateTimeType.164ef007.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/DateType.vue":return T(()=>import("./DateType.757171f6.js"),["assets/DateType.757171f6.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/DropdownType.vue":return T(()=>import("./DropdownType.631322dc.js"),["assets/DropdownType.631322dc.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/InputType.vue":return T(()=>import("./InputType.4e1e4da6.js"),["assets/InputType.4e1e4da6.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/NumberType.vue":return T(()=>import("./NumberType.137b13f5.js"),["assets/NumberType.137b13f5.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/PhoneType.vue":return T(()=>import("./PhoneType.57e436b9.js"),["assets/PhoneType.57e436b9.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/SwitchType.vue":return T(()=>import("./SwitchType.59d9fde0.js"),["assets/SwitchType.59d9fde0.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/TextAreaType.vue":return T(()=>import("./TextAreaType.ebc60805.js"),["assets/TextAreaType.ebc60805.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/TimeType.vue":return T(()=>import("./TimeType.a6077fcb.js"),["assets/TimeType.a6077fcb.js","assets/vendor.01d0adc5.js"]);case"../../custom-fields/types/UrlType.vue":return T(()=>import("./UrlType.4a23df64.js"),["assets/UrlType.4a23df64.js","assets/vendor.01d0adc5.js"]);default:return new Promise(function(n,e){(typeof queueMicrotask=="function"?queueMicrotask:setTimeout)(e.bind(null,new Error("Unknown variable dynamic import: "+m)))})}}const Be={class:"flex justify-between w-full"},De=["onSubmit"],Ve={class:"overflow-y-auto max-h-[550px]"},Se={class:"px-4 md:px-8 py-8 overflow-y-auto sm:p-6"},Ee={class:"z-0 flex justify-end p-4 border-t border-solid border-gray-light border-modal-bg"},qe={setup(m){const n=Y(),e=K(),{t:i}=H();let v=L(!1);const f=le(["Customer","Invoice","Estimate","Expense","Payment"]),c=le([{label:"Text",value:"Input"},{label:"Textarea",value:"TextArea"},{label:"Phone",value:"Phone"},{label:"URL",value:"Url"},{label:"Number",value:"Number"},{label:"Select Field",value:"Dropdown"},{label:"Switch Toggle",value:"Switch"},{label:"Date",value:"Date"},{label:"Time",value:"Time"},{label:"Date & Time",value:"DateTime"}]);let p=L(c[0]);const V=D(()=>n.active&&n.componentName==="CustomFieldModal"),b=D(()=>p.value&&p.value.label==="Switch Toggle"),g=D(()=>p.value&&p.value.label==="Select Field"),y=D(()=>e.currentCustomField.type?_e(()=>he(`../../custom-fields/types/${e.currentCustomField.type}Type.vue`)):!1),I=D({get:()=>e.currentCustomField.is_required===1,set:s=>{const a=s?1:0;e.currentCustomField.is_required=a}}),h=D(()=>({currentCustomField:{type:{required:k.withMessage(i("validation.required"),A)},name:{required:k.withMessage(i("validation.required"),A)},label:{required:k.withMessage(i("validation.required"),A)},model_type:{required:k.withMessage(i("validation.required"),A)},order:{required:k.withMessage(i("validation.required"),A),numeric:k.withMessage(i("validation.numbers_only"),fe)},type:{required:k.withMessage(i("validation.required"),A)}}})),o=ye(h,D(()=>e));function S(){e.isEdit?p.value=c.find(s=>s.value==e.currentCustomField.type):(e.currentCustomField.model_type=f[0],e.currentCustomField.type=c[0].value,p.value=c[0])}async function P(){if(o.value.currentCustomField.$touch(),o.value.currentCustomField.$invalid)return!0;v.value=!0;let s=ee({},e.currentCustomField);if(e.currentCustomField.options&&(s.options=e.currentCustomField.options.map(E=>E.name)),s.type=="Time"&&typeof s.default_answer=="object"){let E=s&&s.default_answer&&s.default_answer.HH?s.default_answer.HH:null,q=s&&s.default_answer&&s.default_answer.mm?s.default_answer.mm:null;s&&s.default_answer&&s.default_answer.ss&&s.default_answer.ss,s.default_answer=`${E}:${q}`}await(e.isEdit?e.updateCustomField:e.addCustomField)(s),v.value=!1,n.refreshData&&n.refreshData(),R()}function x(s){e.currentCustomField.options=[{name:s},...e.currentCustomField.options]}function _(s){if(e.isEdit&&e.currentCustomField.in_use)return;e.currentCustomField.options[s].name===e.currentCustomField.default_answer&&(e.currentCustomField.default_answer=null),e.currentCustomField.options.splice(s,1)}function N(s){e.currentCustomField.type=s.value}function R(){n.closeModal(),setTimeout(()=>{e.resetCurrentCustomField(),o.value.$reset()},300)}return(s,a)=>{const E=d("BaseIcon"),q=d("BaseInput"),w=d("BaseInputGroup"),J=d("BaseMultiselect"),re=d("BaseSwitch"),ne=d("BaseInputGrid"),X=d("BaseButton"),ue=d("BaseModal");return C(),F(ue,{show:t(V),onOpen:S},{header:u(()=>[O("div",Be,[B($(t(n).title)+" ",1),l(E,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:R})])]),default:u(()=>[O("form",{action:"",onSubmit:se(P,["prevent"])},[O("div",Ve,[O("div",Se,[l(ne,{layout:"one-column"},{default:u(()=>[l(w,{label:s.$t("settings.custom_fields.name"),required:"",error:t(o).currentCustomField.name.$error&&t(o).currentCustomField.name.$errors[0].$message},{default:u(()=>[l(q,{ref:(r,j)=>{j.name=r},modelValue:t(e).currentCustomField.name,"onUpdate:modelValue":a[0]||(a[0]=r=>t(e).currentCustomField.name=r),invalid:t(o).currentCustomField.name.$error,onInput:a[1]||(a[1]=r=>t(o).currentCustomField.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),l(w,{label:s.$t("settings.custom_fields.model"),error:t(o).currentCustomField.model_type.$error&&t(o).currentCustomField.model_type.$errors[0].$message,"help-text":t(e).currentCustomField.in_use?s.$t("settings.custom_fields.model_in_use"):"",required:""},{default:u(()=>[l(J,{modelValue:t(e).currentCustomField.model_type,"onUpdate:modelValue":a[2]||(a[2]=r=>t(e).currentCustomField.model_type=r),options:t(f),"can-deselect":!1,invalid:t(o).currentCustomField.model_type.$error,searchable:!0,disabled:t(e).currentCustomField.in_use,onInput:a[3]||(a[3]=r=>t(o).currentCustomField.model_type.$touch())},null,8,["modelValue","options","invalid","disabled"])]),_:1},8,["label","error","help-text"]),l(w,{class:"flex items-center space-x-4",label:s.$t("settings.custom_fields.required")},{default:u(()=>[l(re,{modelValue:t(I),"onUpdate:modelValue":a[4]||(a[4]=r=>oe(I)?I.value=r:null)},null,8,["modelValue"])]),_:1},8,["label"]),l(w,{label:s.$t("settings.custom_fields.type"),error:t(o).currentCustomField.type.$error&&t(o).currentCustomField.type.$errors[0].$message,"help-text":t(e).currentCustomField.in_use?s.$t("settings.custom_fields.type_in_use"):"",required:""},{default:u(()=>[l(J,{modelValue:t(p),"onUpdate:modelValue":[a[5]||(a[5]=r=>oe(p)?p.value=r:p=r),N],options:t(c),invalid:t(o).currentCustomField.type.$error,disabled:t(e).currentCustomField.in_use,searchable:!0,"can-deselect":!1,object:""},null,8,["modelValue","options","invalid","disabled"])]),_:1},8,["label","error","help-text"]),l(w,{label:s.$t("settings.custom_fields.label"),required:"",error:t(o).currentCustomField.label.$error&&t(o).currentCustomField.label.$errors[0].$message},{default:u(()=>[l(q,{modelValue:t(e).currentCustomField.label,"onUpdate:modelValue":a[6]||(a[6]=r=>t(e).currentCustomField.label=r),invalid:t(o).currentCustomField.label.$error,onInput:a[7]||(a[7]=r=>t(o).currentCustomField.label.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t(g)?(C(),F(w,{key:0,label:s.$t("settings.custom_fields.options")},{default:u(()=>[l(Ie,{onOnAdd:x}),(C(!0),z(Ce,null,ve(t(e).currentCustomField.options,(r,j)=>(C(),z("div",{key:j,class:"flex items-center mt-5"},[l(q,{modelValue:r.name,"onUpdate:modelValue":Q=>r.name=Q,class:"w-64"},null,8,["modelValue","onUpdate:modelValue"]),l(E,{name:"MinusCircleIcon",class:G(["ml-1 cursor-pointer",t(e).currentCustomField.in_use?"text-gray-300":"text-red-300"]),onClick:Q=>_(j)},null,8,["class","onClick"])]))),128))]),_:1},8,["label"])):M("",!0),l(w,{label:s.$t("settings.custom_fields.default_value"),class:"relative"},{default:u(()=>[(C(),F(be(t(y)),{modelValue:t(e).currentCustomField.default_answer,"onUpdate:modelValue":a[8]||(a[8]=r=>t(e).currentCustomField.default_answer=r),options:t(e).currentCustomField.options,"default-date-time":t(e).currentCustomField.dateTimeValue},null,8,["modelValue","options","default-date-time"]))]),_:1},8,["label"]),t(b)?M("",!0):(C(),F(w,{key:1,label:s.$t("settings.custom_fields.placeholder")},{default:u(()=>[l(q,{modelValue:t(e).currentCustomField.placeholder,"onUpdate:modelValue":a[9]||(a[9]=r=>t(e).currentCustomField.placeholder=r)},null,8,["modelValue"])]),_:1},8,["label"])),l(w,{label:s.$t("settings.custom_fields.order"),error:t(o).currentCustomField.order.$error&&t(o).currentCustomField.order.$errors[0].$message,required:""},{default:u(()=>[l(q,{modelValue:t(e).currentCustomField.order,"onUpdate:modelValue":a[10]||(a[10]=r=>t(e).currentCustomField.order=r),type:"number",invalid:t(o).currentCustomField.order.$error,onInput:a[11]||(a[11]=r=>t(o).currentCustomField.order.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1})])]),O("div",Ee,[l(X,{class:"mr-3",type:"button",variant:"primary-outline",onClick:R},{default:u(()=>[B($(s.$t("general.cancel")),1)]),_:1}),l(X,{variant:"primary",loading:t(v),disabled:t(v),type:"submit"},{left:u(r=>[t(v)?M("",!0):(C(),F(E,{key:0,class:G(r.class),name:"SaveIcon"},null,8,["class"]))]),default:u(()=>[B(" "+$(t(e).isEdit?s.$t("general.update"):s.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,De)]),_:1},8,["show"])}}},ke={class:"text-xs text-gray-500"},Ue={setup(m){const n=Y(),e=K(),i=ae(),v=te("utils"),{t:f}=H(),c=L(null),p=D(()=>[{key:"name",label:f("settings.custom_fields.name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"model_type",label:f("settings.custom_fields.model")},{key:"type",label:f("settings.custom_fields.type")},{key:"is_required",label:f("settings.custom_fields.required")},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function V({page:y,filter:I,sort:h}){let o={orderByField:h.fieldName||"created_at",orderBy:h.order||"desc",page:y},S=await e.fetchCustomFields(o);return{data:S.data.data,pagination:{totalPages:S.data.meta.last_page,currentPage:y,limit:5,totalCount:S.data.meta.total}}}function b(){n.openModal({title:f("settings.custom_fields.add_custom_field"),componentName:"CustomFieldModal",size:"sm",refreshData:c.value&&c.value.refresh})}async function g(){c.value&&c.value.refresh()}return(y,I)=>{const h=d("BaseIcon"),o=d("BaseButton"),S=d("BaseBadge"),P=d("BaseTable"),x=d("BaseSettingCard");return C(),F(x,{title:y.$t("settings.menu_title.custom_fields"),description:y.$t("settings.custom_fields.section_description")},{action:u(()=>[t(i).hasAbilities(t(U).CREATE_CUSTOM_FIELDS)?(C(),F(o,{key:0,variant:"primary-outline",onClick:b},{left:u(_=>[l(h,{class:G(_.class),name:"PlusIcon"},null,8,["class"]),B(" "+$(y.$t("settings.custom_fields.add_custom_field")),1)]),_:1})):M("",!0)]),default:u(()=>[l(qe),l(P,{ref:(_,N)=>{N.table=_,c.value=_},data:V,columns:t(p),class:"mt-16"},ge({"cell-name":u(({row:_})=>[B($(_.data.name)+" ",1),O("span",ke," ("+$(_.data.slug)+")",1)]),"cell-is_required":u(({row:_})=>[l(S,{"bg-color":t(v).getBadgeStatusColor(_.data.is_required?"YES":"NO").bgColor,color:t(v).getBadgeStatusColor(_.data.is_required?"YES":"NO").color},{default:u(()=>[B($(_.data.is_required?y.$t("settings.custom_fields.yes"):y.$t("settings.custom_fields.no").replace("_"," ")),1)]),_:2},1032,["bg-color","color"])]),_:2},[t(i).hasAbilities([t(U).DELETE_CUSTOM_FIELDS,t(U).EDIT_CUSTOM_FIELDS])?{name:"cell-actions",fn:u(({row:_})=>[l(we,{row:_.data,table:c.value,"load-data":g},null,8,["row","table"])])}:void 0]),1032,["columns"])]),_:1},8,["title","description"])}}};export{Ue as default}; diff --git a/public/build/assets/CustomerIndexDropdown.3adf4218.js b/public/build/assets/CustomerIndexDropdown.34ba7779.js similarity index 77% rename from public/build/assets/CustomerIndexDropdown.3adf4218.js rename to public/build/assets/CustomerIndexDropdown.34ba7779.js index 1f434f6b5..2659487c9 100644 --- a/public/build/assets/CustomerIndexDropdown.3adf4218.js +++ b/public/build/assets/CustomerIndexDropdown.34ba7779.js @@ -1 +1 @@ -import{l as S,u as C,j as b,e as x,g}from"./main.75722495.js";import{J as E,G as j,aN as T,ah as N,r as l,o as a,l as s,w as t,u as e,f as n,i as p,t as f,j as y}from"./vendor.01d0adc5.js";const V={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:()=>{}}},setup(i){const w=i,_=S();C();const v=b(),m=x(),{t:u}=E(),h=j();T(),N("utils");function B(r){v.openDialog({title:u("general.are_you_sure"),message:u("customers.confirm_delete",1),yesLabel:u("general.ok"),noLabel:u("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(c=>{c&&_.deleteCustomer({ids:[r]}).then(o=>{if(o.data.success)return w.loadData&&w.loadData(),!0})})}return(r,c)=>{const o=l("BaseIcon"),I=l("BaseButton"),d=l("BaseDropdownItem"),D=l("router-link"),k=l("BaseDropdown");return a(),s(k,{"content-loading":e(_).isFetchingViewData},{activator:t(()=>[e(h).name==="customers.view"?(a(),s(I,{key:0,variant:"primary"},{default:t(()=>[n(o,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(a(),s(o,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:t(()=>[e(m).hasAbilities(e(g).EDIT_CUSTOMER)?(a(),s(D,{key:0,to:`/admin/customers/${i.row.id}/edit`},{default:t(()=>[n(d,null,{default:t(()=>[n(o,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),p(" "+f(r.$t("general.edit")),1)]),_:1})]),_:1},8,["to"])):y("",!0),e(h).name!=="customers.view"&&e(m).hasAbilities(e(g).VIEW_CUSTOMER)?(a(),s(D,{key:1,to:`customers/${i.row.id}/view`},{default:t(()=>[n(d,null,{default:t(()=>[n(o,{name:"EyeIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),p(" "+f(r.$t("general.view")),1)]),_:1})]),_:1},8,["to"])):y("",!0),e(m).hasAbilities(e(g).DELETE_CUSTOMER)?(a(),s(d,{key:2,onClick:c[0]||(c[0]=$=>B(i.row.id))},{default:t(()=>[n(o,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),p(" "+f(r.$t("general.delete")),1)]),_:1})):y("",!0)]),_:1},8,["content-loading"])}}};export{V as _}; +import{l as S,u as b,j as C,e as x,g}from"./main.24f7a84b.js";import{J as E,G as j,aN as T,ah as N,r as l,o as a,l as s,w as t,u as e,f as n,i as f,t as p,j as y}from"./vendor.01d0adc5.js";const V={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:()=>{}}},setup(i){const w=i,_=S();b();const v=C(),m=x(),{t:u}=E(),h=j();T(),N("utils");function B(r){v.openDialog({title:u("general.are_you_sure"),message:u("customers.confirm_delete",1),yesLabel:u("general.ok"),noLabel:u("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(c=>{c&&_.deleteCustomer({ids:[r]}).then(o=>{if(o.data.success)return w.loadData&&w.loadData(),!0})})}return(r,c)=>{const o=l("BaseIcon"),I=l("BaseButton"),d=l("BaseDropdownItem"),D=l("router-link"),k=l("BaseDropdown");return a(),s(k,{"content-loading":e(_).isFetchingViewData},{activator:t(()=>[e(h).name==="customers.view"?(a(),s(I,{key:0,variant:"primary"},{default:t(()=>[n(o,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(a(),s(o,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:t(()=>[e(m).hasAbilities(e(g).EDIT_CUSTOMER)?(a(),s(D,{key:0,to:`/admin/customers/${i.row.id}/edit`},{default:t(()=>[n(d,null,{default:t(()=>[n(o,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),f(" "+p(r.$t("general.edit")),1)]),_:1})]),_:1},8,["to"])):y("",!0),e(h).name!=="customers.view"&&e(m).hasAbilities(e(g).VIEW_CUSTOMER)?(a(),s(D,{key:1,to:`customers/${i.row.id}/view`},{default:t(()=>[n(d,null,{default:t(()=>[n(o,{name:"EyeIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),f(" "+p(r.$t("general.view")),1)]),_:1})]),_:1},8,["to"])):y("",!0),e(m).hasAbilities(e(g).DELETE_CUSTOMER)?(a(),s(d,{key:2,onClick:c[0]||(c[0]=$=>B(i.row.id))},{default:t(()=>[n(o,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),f(" "+p(r.$t("general.delete")),1)]),_:1})):y("",!0)]),_:1},8,["content-loading"])}}};export{V as _}; diff --git a/public/build/assets/CustomerSettings.3e617f27.js b/public/build/assets/CustomerSettings.e3f07130.js similarity index 66% rename from public/build/assets/CustomerSettings.3e617f27.js rename to public/build/assets/CustomerSettings.e3f07130.js index ef44ce69e..cfa2e847d 100644 --- a/public/build/assets/CustomerSettings.3e617f27.js +++ b/public/build/assets/CustomerSettings.e3f07130.js @@ -1 +1 @@ -import{G as E,J as G,B as F,k as h,L as p,M as C,N as k,Q as L,P,T as R,r as c,o as g,e as D,f as u,w as i,h as $,t as I,u as e,x as _,l as y,m as A,j as O,i as T,U as z}from"./vendor.01d0adc5.js";import{a as J,u as Q}from"./global.08b6a984.js";import"./auth.4644c288.js";import"./main.75722495.js";const H=["onSubmit"],K={class:"font-bold text-left"},W={class:"mt-2 text-sm leading-snug text-left text-gray-500",style:{"max-width":"680px"}},X={class:"grid gap-6 sm:grid-col-1 md:grid-cols-2 mt-6"},Y=$("span",null,null,-1),oe={setup(Z){const r=J();Q(),E();const{t:m,tm:S}=G();let v=F([]),d=F(!1),B=F(null),n=F(!1),l=F(!1);r.userForm.avatar&&v.value.push({image:r.userForm.avatar});const U=h(()=>({userForm:{name:{required:p.withMessage(m("validation.required"),C),minLength:p.withMessage(m("validation.name_min_length",{count:3}),k(3))},email:{required:p.withMessage(m("validation.required"),C),email:p.withMessage(m("validation.email_incorrect"),L)},password:{minLength:p.withMessage(m("validation.password_min_length",{count:8}),k(8))},confirm_password:{sameAsPassword:p.withMessage(m("validation.password_incorrect"),P(r.userForm.password))}}})),o=R(U,h(()=>r));function x(t,s){B.value=s}function M(){B.value=null}function q(){if(o.value.userForm.$touch(),o.value.userForm.$invalid)return!0;d.value=!0;let t=new FormData;t.append("name",r.userForm.name),t.append("email",r.userForm.email),r.userForm.password!=null&&r.userForm.password!==void 0&&r.userForm.password!==""&&t.append("password",r.userForm.password),B.value&&t.append("customer_avatar",B.value),r.updateCurrentUser({data:t,message:S("settings.account_settings.updated_message")}).then(s=>{s.data.data&&(d.value=!1,r.$patch(V=>{V.userForm.password="",V.userForm.confirm_password=""}))}).catch(s=>{d.value=!1})}return(t,s)=>{const V=c("BaseFileUploader"),f=c("BaseInputGroup"),b=c("BaseInput"),w=c("BaseIcon"),N=c("BaseButton"),j=c("BaseCard");return g(),D("form",{class:"relative h-full mt-4",onSubmit:z(q,["prevent"])},[u(j,null,{default:i(()=>[$("div",null,[$("h6",K,I(t.$t("settings.account_settings.account_settings")),1),$("p",W,I(t.$t("settings.account_settings.section_description")),1)]),$("div",X,[u(f,{label:t.$tc("settings.account_settings.profile_picture")},{default:i(()=>[u(V,{modelValue:e(v),"onUpdate:modelValue":s[0]||(s[0]=a=>_(v)?v.value=a:v=a),avatar:!0,accept:"image/*",onChange:x,onRemove:M},null,8,["modelValue"])]),_:1},8,["label"]),Y,u(f,{label:t.$tc("settings.account_settings.name"),error:e(o).userForm.name.$error&&e(o).userForm.name.$errors[0].$message,required:""},{default:i(()=>[u(b,{modelValue:e(r).userForm.name,"onUpdate:modelValue":s[1]||(s[1]=a=>e(r).userForm.name=a),invalid:e(o).userForm.name.$error,onInput:s[2]||(s[2]=a=>e(o).userForm.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),u(f,{label:t.$tc("settings.account_settings.email"),error:e(o).userForm.email.$error&&e(o).userForm.email.$errors[0].$message,required:""},{default:i(()=>[u(b,{modelValue:e(r).userForm.email,"onUpdate:modelValue":s[3]||(s[3]=a=>e(r).userForm.email=a),invalid:e(o).userForm.email.$error,onInput:s[4]||(s[4]=a=>e(o).userForm.email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),u(f,{error:e(o).userForm.password.$error&&e(o).userForm.password.$errors[0].$message,label:t.$tc("settings.account_settings.password")},{default:i(()=>[u(b,{modelValue:e(r).userForm.password,"onUpdate:modelValue":s[7]||(s[7]=a=>e(r).userForm.password=a),type:e(n)?"text":"password",invalid:e(o).userForm.password.$error,onInput:s[8]||(s[8]=a=>e(o).userForm.password.$touch())},{right:i(()=>[e(n)?(g(),y(w,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:s[5]||(s[5]=a=>_(n)?n.value=!e(n):n=!e(n))})):(g(),y(w,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:s[6]||(s[6]=a=>_(n)?n.value=!e(n):n=!e(n))}))]),_:1},8,["modelValue","type","invalid"])]),_:1},8,["error","label"]),u(f,{label:t.$tc("settings.account_settings.confirm_password"),error:e(o).userForm.confirm_password.$error&&e(o).userForm.confirm_password.$errors[0].$message},{default:i(()=>[u(b,{modelValue:e(r).userForm.confirm_password,"onUpdate:modelValue":s[11]||(s[11]=a=>e(r).userForm.confirm_password=a),type:e(l)?"text":"password",invalid:e(o).userForm.confirm_password.$error,onInput:s[12]||(s[12]=a=>e(o).userForm.confirm_password.$touch())},{right:i(()=>[e(l)?(g(),y(w,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:s[9]||(s[9]=a=>_(l)?l.value=!e(l):l=!e(l))})):(g(),y(w,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:s[10]||(s[10]=a=>_(l)?l.value=!e(l):l=!e(l))}))]),_:1},8,["modelValue","type","invalid"])]),_:1},8,["label","error"])]),u(N,{loading:e(d),disabled:e(d),class:"mt-6"},{left:i(a=>[e(d)?O("",!0):(g(),y(w,{key:0,name:"SaveIcon",class:A(a.class)},null,8,["class"]))]),default:i(()=>[T(" "+I(t.$t("general.save")),1)]),_:1},8,["loading","disabled"])]),_:1})],40,H)}}};export{oe as default}; +import{G as E,J as G,B as F,k as h,L as p,M as C,N as k,Q as L,P,T as R,r as c,o as g,e as D,f as u,w as i,h as $,t as I,u as e,x as _,l as b,m as A,j as O,i as T,U as z}from"./vendor.01d0adc5.js";import{a as J,u as Q}from"./global.ab8f317c.js";import"./auth.0e030165.js";import"./main.24f7a84b.js";const H=["onSubmit"],K={class:"font-bold text-left"},W={class:"mt-2 text-sm leading-snug text-left text-gray-500",style:{"max-width":"680px"}},X={class:"grid gap-6 sm:grid-col-1 md:grid-cols-2 mt-6"},Y=$("span",null,null,-1),oe={setup(Z){const r=J();Q(),E();const{t:m,tm:S}=G();let f=F([]),d=F(!1),y=F(null),n=F(!1),l=F(!1);r.userForm.avatar&&f.value.push({image:r.userForm.avatar});const U=h(()=>({userForm:{name:{required:p.withMessage(m("validation.required"),C),minLength:p.withMessage(m("validation.name_min_length",{count:3}),k(3))},email:{required:p.withMessage(m("validation.required"),C),email:p.withMessage(m("validation.email_incorrect"),L)},password:{minLength:p.withMessage(m("validation.password_min_length",{count:8}),k(8))},confirm_password:{sameAsPassword:p.withMessage(m("validation.password_incorrect"),P(r.userForm.password))}}})),o=R(U,h(()=>r));function x(t,s){y.value=s}function M(){y.value=null}function q(){if(o.value.userForm.$touch(),o.value.userForm.$invalid)return!0;d.value=!0;let t=new FormData;t.append("name",r.userForm.name),t.append("email",r.userForm.email),r.userForm.password!=null&&r.userForm.password!==void 0&&r.userForm.password!==""&&t.append("password",r.userForm.password),y.value&&t.append("customer_avatar",y.value),r.updateCurrentUser({data:t,message:S("settings.account_settings.updated_message")}).then(s=>{s.data.data&&(d.value=!1,r.$patch(B=>{B.userForm.password="",B.userForm.confirm_password=""}))}).catch(s=>{d.value=!1})}return(t,s)=>{const B=c("BaseFileUploader"),v=c("BaseInputGroup"),V=c("BaseInput"),w=c("BaseIcon"),N=c("BaseButton"),j=c("BaseCard");return g(),D("form",{class:"relative h-full mt-4",onSubmit:z(q,["prevent"])},[u(j,null,{default:i(()=>[$("div",null,[$("h6",K,I(t.$t("settings.account_settings.account_settings")),1),$("p",W,I(t.$t("settings.account_settings.section_description")),1)]),$("div",X,[u(v,{label:t.$tc("settings.account_settings.profile_picture")},{default:i(()=>[u(B,{modelValue:e(f),"onUpdate:modelValue":s[0]||(s[0]=a=>_(f)?f.value=a:f=a),avatar:!0,accept:"image/*",onChange:x,onRemove:M},null,8,["modelValue"])]),_:1},8,["label"]),Y,u(v,{label:t.$tc("settings.account_settings.name"),error:e(o).userForm.name.$error&&e(o).userForm.name.$errors[0].$message,required:""},{default:i(()=>[u(V,{modelValue:e(r).userForm.name,"onUpdate:modelValue":s[1]||(s[1]=a=>e(r).userForm.name=a),invalid:e(o).userForm.name.$error,onInput:s[2]||(s[2]=a=>e(o).userForm.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),u(v,{label:t.$tc("settings.account_settings.email"),error:e(o).userForm.email.$error&&e(o).userForm.email.$errors[0].$message,required:""},{default:i(()=>[u(V,{modelValue:e(r).userForm.email,"onUpdate:modelValue":s[3]||(s[3]=a=>e(r).userForm.email=a),invalid:e(o).userForm.email.$error,onInput:s[4]||(s[4]=a=>e(o).userForm.email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),u(v,{error:e(o).userForm.password.$error&&e(o).userForm.password.$errors[0].$message,label:t.$tc("settings.account_settings.password")},{default:i(()=>[u(V,{modelValue:e(r).userForm.password,"onUpdate:modelValue":s[7]||(s[7]=a=>e(r).userForm.password=a),type:e(n)?"text":"password",invalid:e(o).userForm.password.$error,onInput:s[8]||(s[8]=a=>e(o).userForm.password.$touch())},{right:i(()=>[e(n)?(g(),b(w,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:s[5]||(s[5]=a=>_(n)?n.value=!e(n):n=!e(n))})):(g(),b(w,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:s[6]||(s[6]=a=>_(n)?n.value=!e(n):n=!e(n))}))]),_:1},8,["modelValue","type","invalid"])]),_:1},8,["error","label"]),u(v,{label:t.$tc("settings.account_settings.confirm_password"),error:e(o).userForm.confirm_password.$error&&e(o).userForm.confirm_password.$errors[0].$message},{default:i(()=>[u(V,{modelValue:e(r).userForm.confirm_password,"onUpdate:modelValue":s[11]||(s[11]=a=>e(r).userForm.confirm_password=a),type:e(l)?"text":"password",invalid:e(o).userForm.confirm_password.$error,onInput:s[12]||(s[12]=a=>e(o).userForm.confirm_password.$touch())},{right:i(()=>[e(l)?(g(),b(w,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:s[9]||(s[9]=a=>_(l)?l.value=!e(l):l=!e(l))})):(g(),b(w,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:s[10]||(s[10]=a=>_(l)?l.value=!e(l):l=!e(l))}))]),_:1},8,["modelValue","type","invalid"])]),_:1},8,["label","error"])]),u(N,{loading:e(d),disabled:e(d),class:"mt-6"},{left:i(a=>[e(d)?O("",!0):(g(),b(w,{key:0,name:"SaveIcon",class:A(a.class)},null,8,["class"]))]),default:i(()=>[T(" "+I(t.$t("general.save")),1)]),_:1},8,["loading","disabled"])]),_:1})],40,H)}}};export{oe as default}; diff --git a/public/build/assets/CustomizationSetting.5e54e84c.js b/public/build/assets/CustomizationSetting.1c2a30db.js similarity index 99% rename from public/build/assets/CustomizationSetting.5e54e84c.js rename to public/build/assets/CustomizationSetting.1c2a30db.js index 576d9865a..6f2e1beda 100644 --- a/public/build/assets/CustomizationSetting.5e54e84c.js +++ b/public/build/assets/CustomizationSetting.1c2a30db.js @@ -1 +1 @@ -var ut=Object.defineProperty,rt=Object.defineProperties;var dt=Object.getOwnPropertyDescriptors;var et=Object.getOwnPropertySymbols;var ct=Object.prototype.hasOwnProperty,_t=Object.prototype.propertyIsEnumerable;var st=(v,o,i)=>o in v?ut(v,o,{enumerable:!0,configurable:!0,writable:!0,value:i}):v[o]=i,x=(v,o)=>{for(var i in o||(o={}))ct.call(o,i)&&st(v,i,o[i]);if(et)for(var i of et(o))_t.call(o,i)&&st(v,i,o[i]);return v},W=(v,o)=>rt(v,dt(o));import{b as N,d as Z,i as pt,k as gt,p as yt,c as ft,j as vt}from"./main.75722495.js";import{J as j,B as z,k as F,C as bt,H as at,$ as St,r as d,o as $,e as D,h as c,t as b,f as t,w as r,U as Y,m as G,i as k,F as L,y as $t,l as E,u as e,j as R,ah as M,a0 as T,L as X,O as nt,aT as it,T as ot,x as H}from"./vendor.01d0adc5.js";import{D as Bt,d as ht}from"./DragIcon.213b1d78.js";import{u as zt}from"./payment.5c57bec3.js";import{_ as Vt}from"./ItemUnitModal.01494bfb.js";const It={class:"text-gray-900 text-lg font-medium"},xt={class:"mt-1 text-sm text-gray-500"},wt={class:"overflow-x-auto"},Ct={class:"w-full mt-6 table-fixed"},Dt=c("colgroup",null,[c("col",{style:{width:"4%"}}),c("col",{style:{width:"45%"}}),c("col",{style:{width:"27%"}}),c("col",{style:{width:"24%"}})],-1),Ut=c("thead",null,[c("tr",null,[c("th",{class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-left text-gray-700 border-t border-b border-gray-200 border-solid"}),c("th",{class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-left text-gray-700 border-t border-b border-gray-200 border-solid"}," Component "),c("th",{class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-left text-gray-700 border-t border-b border-gray-200 border-solid"}," Parameter "),c("th",{class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-left text-gray-700 border-t border-b border-gray-200 border-solid"})])],-1),Ft={class:"relative"},kt={class:"text-gray-300 cursor-move handle align-middle"},Et={class:"px-5 py-4"},Nt={class:"block text-sm not-italic font-medium text-primary-800 whitespace-nowrap mr-2 min-w-[200px]"},Mt={class:"text-xs text-gray-500 mt-1"},Tt={class:"px-5 py-4 text-left align-middle"},Gt={class:"px-5 py-4 text-right align-middle pt-10"},qt=k(" Remove "),Lt={colspan:"2",class:"px-5 py-4"},Rt={class:"px-5 py-4 text-right align-middle",colspan:"2"},tt={props:{type:{type:String,required:!0},typeStore:{type:Object,required:!0},defaultSeries:{type:String,default:"INV"}},setup(v){const o=v,{t:i}=j(),p=N(),g=Z(),u=z([]),a=z(!1),m=z([{label:i("settings.customization.series"),description:i("settings.customization.series_description"),name:"SERIES",paramLabel:i("settings.customization.series_param_label"),value:o.defaultSeries,inputDisabled:!1,inputType:"text",allowMultiple:!1},{label:i("settings.customization.sequence"),description:i("settings.customization.sequence_description"),name:"SEQUENCE",paramLabel:i("settings.customization.sequence_param_label"),value:"6",inputDisabled:!1,inputType:"number",allowMultiple:!1},{label:i("settings.customization.delimiter"),description:i("settings.customization.delimiter_description"),name:"DELIMITER",paramLabel:i("settings.customization.delimiter_param_label"),value:"-",inputDisabled:!1,inputType:"text",allowMultiple:!0},{label:i("settings.customization.customer_series"),description:i("settings.customization.customer_series_description"),name:"CUSTOMER_SERIES",paramLabel:"",value:"",inputDisabled:!0,inputType:"text",allowMultiple:!1},{label:i("settings.customization.customer_sequence"),description:i("settings.customization.customer_sequence_description"),name:"CUSTOMER_SEQUENCE",paramLabel:i("settings.customization.customer_sequence_param_label"),value:"6",inputDisabled:!1,inputType:"number",allowMultiple:!1},{label:i("settings.customization.date_format"),description:i("settings.customization.date_format_description"),name:"DATE_FORMAT",paramLabel:i("settings.customization.date_format_param_label"),value:"Y",inputDisabled:!1,inputType:"text",allowMultiple:!0},{label:i("settings.customization.random_sequence"),description:i("settings.customization.random_sequence_description"),name:"RANDOM_SEQUENCE",paramLabel:i("settings.customization.random_sequence_param_label"),value:"6",inputDisabled:!1,inputType:"number",allowMultiple:!1}]),s=F(()=>m.value.filter(function(f){return!u.value.some(function(V){return f.allowMultiple?!1:f.name==V.name})})),_=z(""),n=z(!1),l=z(!1),y=F(()=>{let f="";return u.value.forEach(V=>{let q=`{{${V.name}`;V.value&&(q+=`:${V.value}`),f+=`${q}}}`}),f});bt(u,f=>{U()}),B();async function B(){let f={format:p.selectedCompanySettings[`${o.type}_number_format`]};l.value=!0,(await g.fetchPlaceholders(f)).data.placeholders.forEach(q=>{var O;let J=m.value.find(K=>K.name===q.name);const Q=(O=q.value)!=null?O:"";u.value.push(W(x({},J),{value:Q,id:at.raw()}))}),l.value=!1,U()}function C(f){return u.value.find(V=>V.name===f.name)}function h(f){C(f)&&!f.allowMultiple||(u.value.push(W(x({},f),{id:at.raw()})),U())}function S(f){u.value=u.value.filter(function(V){return f.id!==V.id})}function w(f,V){switch(V.name){case"SERIES":f.length>=6&&(f=f.substring(0,6));break;case"DELIMITER":f.length>=1&&(f=f.substring(0,1));break}setTimeout(()=>{V.value=f,U()},100)}const U=St(()=>{P()},500);async function P(){if(!y.value){_.value="";return}let f={key:o.type,format:y.value};n.value=!0;let V=await o.typeStore.getNextNumber(f);n.value=!1,V.data&&(_.value=V.data.nextNumber)}async function lt(){if(n.value||l.value)return;a.value=!0;let f={settings:{}};return f.settings[o.type+"_number_format"]=y.value,await p.updateCompanySettings({data:f,message:`settings.customization.${o.type}s.${o.type}_settings_updated`}),a.value=!1,!0}return(f,V)=>{const q=d("BaseInput"),J=d("BaseInputGroup"),Q=d("BaseIcon"),O=d("BaseButton"),K=d("BaseDropdownItem"),mt=d("BaseDropdown");return $(),D(L,null,[c("h6",It,b(f.$t(`settings.customization.${v.type}s.${v.type}_number_format`)),1),c("p",xt,b(f.$t(`settings.customization.${v.type}s.${v.type}_number_format_description`)),1),c("div",wt,[c("table",Ct,[Dt,Ut,t(e(ht),{modelValue:u.value,"onUpdate:modelValue":V[1]||(V[1]=I=>u.value=I),class:"divide-y divide-gray-200","item-key":"id",tag:"tbody",handle:".handle",filter:".ignore-element"},{item:r(({element:I})=>[c("tr",Ft,[c("td",kt,[t(Bt)]),c("td",Et,[c("label",Nt,b(I.label),1),c("p",Mt,b(I.description),1)]),c("td",Tt,[t(J,{label:I.paramLabel,class:"lg:col-span-3",required:""},{default:r(()=>[t(q,{modelValue:I.value,"onUpdate:modelValue":[A=>I.value=A,A=>w(A,I)],disabled:I.inputDisabled,type:I.inputType},null,8,["modelValue","onUpdate:modelValue","disabled","type"])]),_:2},1032,["label"])]),c("td",Gt,[t(O,{variant:"white",onClick:Y(A=>S(I),["prevent"])},{left:r(A=>[t(Q,{name:"XIcon",class:G(["!sm:m-0",A.class])},null,8,["class"])]),default:r(()=>[qt]),_:2},1032,["onClick"])])])]),footer:r(()=>[c("tr",null,[c("td",Lt,[t(J,{label:f.$t(`settings.customization.${v.type}s.preview_${v.type}_number`)},{default:r(()=>[t(q,{modelValue:_.value,"onUpdate:modelValue":V[0]||(V[0]=I=>_.value=I),disabled:"",loading:n.value},null,8,["modelValue","loading"])]),_:1},8,["label"])]),c("td",Rt,[t(mt,{"wrapper-class":"flex items-center justify-end mt-5"},{activator:r(()=>[t(O,{variant:"primary-outline"},{left:r(I=>[t(Q,{class:G(I.class),name:"PlusIcon"},null,8,["class"])]),default:r(()=>[k(" "+b(f.$t("settings.customization.add_new_component")),1)]),_:1})]),default:r(()=>[($(!0),D(L,null,$t(e(s),I=>($(),E(K,{key:I.label,onClick:Y(A=>h(I),["prevent"])},{default:r(()=>[k(b(I.label),1)]),_:2},1032,["onClick"]))),128))]),_:1})])])]),_:1},8,["modelValue"])])]),t(O,{loading:a.value,disabled:a.value,variant:"primary",type:"submit",class:"mt-4",onClick:lt},{left:r(I=>[a.value?R("",!0):($(),E(Q,{key:0,class:G(I.class),name:"SaveIcon"},null,8,["class"]))]),default:r(()=>[k(" "+b(f.$t("settings.customization.save")),1)]),_:1},8,["loading","disabled"])],64)}}},At={setup(v){const o=pt();return(i,p)=>($(),E(tt,{type:"invoice","type-store":e(o),"default-series":"INV"},null,8,["type-store"]))}},Yt={class:"text-gray-900 text-lg font-medium"},Ot={class:"mt-1 text-sm text-gray-500"},jt={setup(v){const{t:o,tm:i}=j(),p=N(),g=Z(),u=M("utils"),a=T({retrospective_edits:null});u.mergeSettings(a,x({},p.selectedCompanySettings)),F(()=>g.config.retrospective_edits.map(s=>(s.title=o(s.key),s)));async function m(){let s={settings:x({},a)};return await p.updateCompanySettings({data:s,message:"settings.customization.invoices.invoice_settings_updated"}),!0}return(s,_)=>{const n=d("BaseRadio"),l=d("BaseInputGroup");return $(),D(L,null,[c("h6",Yt,b(s.$tc("settings.customization.invoices.retrospective_edits")),1),c("p",Ot,b(s.$t("settings.customization.invoices.retrospective_edits_description")),1),t(l,{required:""},{default:r(()=>[t(n,{id:"allow",modelValue:e(a).retrospective_edits,"onUpdate:modelValue":[_[0]||(_[0]=y=>e(a).retrospective_edits=y),m],label:s.$t("settings.customization.invoices.allow"),size:"sm",name:"filter",value:"allow",class:"mt-2"},null,8,["modelValue","label"]),t(n,{id:"disable_on_invoice_partial_paid",modelValue:e(a).retrospective_edits,"onUpdate:modelValue":[_[1]||(_[1]=y=>e(a).retrospective_edits=y),m],label:s.$t("settings.customization.invoices.disable_on_invoice_partial_paid"),size:"sm",name:"filter",value:"disable_on_invoice_partial_paid",class:"mt-2"},null,8,["modelValue","label"]),t(n,{id:"disable_on_invoice_paid",modelValue:e(a).retrospective_edits,"onUpdate:modelValue":[_[2]||(_[2]=y=>e(a).retrospective_edits=y),m],label:s.$t("settings.customization.invoices.disable_on_invoice_paid"),size:"sm",name:"filter",value:"disable_on_invoice_paid",class:"my-2"},null,8,["modelValue","label"]),t(n,{id:"disable_on_invoice_sent",modelValue:e(a).retrospective_edits,"onUpdate:modelValue":[_[3]||(_[3]=y=>e(a).retrospective_edits=y),m],label:s.$t("settings.customization.invoices.disable_on_invoice_sent"),size:"sm",name:"filter",value:"disable_on_invoice_sent"},null,8,["modelValue","label"])]),_:1})],64)}}},Pt=["onSubmit"],Qt={class:"text-gray-900 text-lg font-medium"},Ht={class:"mt-1 text-sm text-gray-500 mb-2"},Jt={class:"w-full sm:w-1/2 md:w-1/4 lg:w-1/5"},Xt={setup(v){const{t:o}=j(),i=N(),p=M("utils");let g=z(!1);const u=T({invoice_set_due_date_automatically:null,invoice_due_date_days:null});p.mergeSettings(u,x({},i.selectedCompanySettings));const a=F({get:()=>u.invoice_set_due_date_automatically==="YES",set:async n=>{const l=n?"YES":"NO";u.invoice_set_due_date_automatically=l}}),m=F(()=>({dueDateSettings:{invoice_due_date_days:{required:X.withMessage(o("validation.required"),nt(a.value)),numeric:X.withMessage(o("validation.numbers_only"),it)}}})),s=ot(m,{dueDateSettings:u});async function _(){if(s.value.dueDateSettings.$touch(),s.value.dueDateSettings.$invalid)return!1;g.value=!0;let n={settings:x({},u)};return a.value||delete n.settings.invoice_due_date_days,await i.updateCompanySettings({data:n,message:"settings.customization.invoices.invoice_settings_updated"}),g.value=!1,!0}return(n,l)=>{const y=d("BaseSwitchSection"),B=d("BaseInput"),C=d("BaseInputGroup"),h=d("BaseIcon"),S=d("BaseButton");return $(),D("form",{onSubmit:Y(_,["prevent"])},[c("h6",Qt,b(n.$t("settings.customization.invoices.due_date")),1),c("p",Ht,b(n.$t("settings.customization.invoices.due_date_description")),1),t(y,{modelValue:e(a),"onUpdate:modelValue":l[0]||(l[0]=w=>H(a)?a.value=w:null),title:n.$t("settings.customization.invoices.set_due_date_automatically"),description:n.$t("settings.customization.invoices.set_due_date_automatically_description")},null,8,["modelValue","title","description"]),e(a)?($(),E(C,{key:0,label:n.$t("settings.customization.invoices.due_date_days"),error:e(s).dueDateSettings.invoice_due_date_days.$error&&e(s).dueDateSettings.invoice_due_date_days.$errors[0].$message,class:"mt-2 mb-4"},{default:r(()=>[c("div",Jt,[t(B,{modelValue:e(u).invoice_due_date_days,"onUpdate:modelValue":l[1]||(l[1]=w=>e(u).invoice_due_date_days=w),invalid:e(s).dueDateSettings.invoice_due_date_days.$error,type:"number",onInput:l[2]||(l[2]=w=>e(s).dueDateSettings.invoice_due_date_days.$touch())},null,8,["modelValue","invalid"])])]),_:1},8,["label","error"])):R("",!0),t(S,{loading:e(g),disabled:e(g),variant:"primary",type:"submit",class:"mt-4"},{left:r(w=>[e(g)?R("",!0):($(),E(h,{key:0,class:G(w.class),name:"SaveIcon"},null,8,["class"]))]),default:r(()=>[k(" "+b(n.$t("settings.customization.save")),1)]),_:1},8,["loading","disabled"])],40,Pt)}}},Kt=["onSubmit"],Wt={class:"text-gray-900 text-lg font-medium"},Zt={class:"mt-1 text-sm text-gray-500 mb-2"},te={setup(v){const o=N(),i=M("utils"),p=z(["customer","customerCustom","invoice","invoiceCustom","company"]),g=z(["billing","customer","customerCustom","invoiceCustom"]),u=z(["shipping","customer","customerCustom","invoiceCustom"]),a=z(["company","invoiceCustom"]);let m=z(!1);const s=T({invoice_mail_body:null,invoice_company_address_format:null,invoice_shipping_address_format:null,invoice_billing_address_format:null});i.mergeSettings(s,x({},o.selectedCompanySettings));async function _(){m.value=!0;let n={settings:x({},s)};return await o.updateCompanySettings({data:n,message:"settings.customization.invoices.invoice_settings_updated"}),m.value=!1,!0}return(n,l)=>{const y=d("BaseCustomInput"),B=d("BaseInputGroup"),C=d("BaseIcon"),h=d("BaseButton");return $(),D("form",{onSubmit:Y(_,["prevent"])},[c("h6",Wt,b(n.$t("settings.customization.invoices.default_formats")),1),c("p",Zt,b(n.$t("settings.customization.invoices.default_formats_description")),1),t(B,{label:n.$t("settings.customization.invoices.default_invoice_email_body"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).invoice_mail_body,"onUpdate:modelValue":l[0]||(l[0]=S=>e(s).invoice_mail_body=S),fields:p.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(B,{label:n.$t("settings.customization.invoices.company_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).invoice_company_address_format,"onUpdate:modelValue":l[1]||(l[1]=S=>e(s).invoice_company_address_format=S),fields:a.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(B,{label:n.$t("settings.customization.invoices.shipping_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).invoice_shipping_address_format,"onUpdate:modelValue":l[2]||(l[2]=S=>e(s).invoice_shipping_address_format=S),fields:u.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(B,{label:n.$t("settings.customization.invoices.billing_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).invoice_billing_address_format,"onUpdate:modelValue":l[3]||(l[3]=S=>e(s).invoice_billing_address_format=S),fields:g.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(h,{loading:e(m),disabled:e(m),variant:"primary",type:"submit",class:"mt-4"},{left:r(S=>[e(m)?R("",!0):($(),E(C,{key:0,class:G(S.class),name:"SaveIcon"},null,8,["class"]))]),default:r(()=>[k(" "+b(n.$t("settings.customization.save")),1)]),_:1},8,["loading","disabled"])],40,Kt)}}},ee={class:"divide-y divide-gray-200"},se={setup(v){const o=M("utils"),i=N(),p=T({invoice_email_attachment:null});o.mergeSettings(p,x({},i.selectedCompanySettings));const g=F({get:()=>p.invoice_email_attachment==="YES",set:async u=>{const a=u?"YES":"NO";let m={settings:{invoice_email_attachment:a}};p.invoice_email_attachment=a,await i.updateCompanySettings({data:m,message:"general.setting_updated"})}});return(u,a)=>{const m=d("BaseDivider"),s=d("BaseSwitchSection");return $(),D(L,null,[t(At),t(m,{class:"my-8"}),t(Xt),t(m,{class:"my-8"}),t(jt),t(m,{class:"my-8"}),t(te),t(m,{class:"mt-6 mb-2"}),c("ul",ee,[t(s,{modelValue:e(g),"onUpdate:modelValue":a[0]||(a[0]=_=>H(g)?g.value=_:null),title:u.$t("settings.customization.invoices.invoice_email_attachment"),description:u.$t("settings.customization.invoices.invoice_email_attachment_setting_description")},null,8,["modelValue","title","description"])])],64)}}},ae={setup(v){const o=gt();return(i,p)=>($(),E(tt,{type:"estimate","type-store":e(o),"default-series":"EST"},null,8,["type-store"]))}},ne=["onSubmit"],ie={class:"text-gray-900 text-lg font-medium"},oe={class:"mt-1 text-sm text-gray-500 mb-2"},le={class:"w-full sm:w-1/2 md:w-1/4 lg:w-1/5"},me={setup(v){const{t:o}=j(),i=N(),p=M("utils");let g=z(!1);const u=T({estimate_set_expiry_date_automatically:null,estimate_expiry_date_days:null});p.mergeSettings(u,x({},i.selectedCompanySettings));const a=F({get:()=>u.estimate_set_expiry_date_automatically==="YES",set:async n=>{const l=n?"YES":"NO";u.estimate_set_expiry_date_automatically=l}}),m=F(()=>({expiryDateSettings:{estimate_expiry_date_days:{required:X.withMessage(o("validation.required"),nt(a.value)),numeric:X.withMessage(o("validation.numbers_only"),it)}}})),s=ot(m,{expiryDateSettings:u});async function _(){if(s.value.expiryDateSettings.$touch(),s.value.expiryDateSettings.$invalid)return!1;g.value=!0;let n={settings:x({},u)};return a.value||delete n.settings.estimate_expiry_date_days,await i.updateCompanySettings({data:n,message:"settings.customization.estimates.estimate_settings_updated"}),g.value=!1,!0}return(n,l)=>{const y=d("BaseSwitchSection"),B=d("BaseInput"),C=d("BaseInputGroup"),h=d("BaseIcon"),S=d("BaseButton");return $(),D("form",{onSubmit:Y(_,["prevent"])},[c("h6",ie,b(n.$t("settings.customization.estimates.expiry_date")),1),c("p",oe,b(n.$t("settings.customization.estimates.expiry_date_description")),1),t(y,{modelValue:e(a),"onUpdate:modelValue":l[0]||(l[0]=w=>H(a)?a.value=w:null),title:n.$t("settings.customization.estimates.set_expiry_date_automatically"),description:n.$t("settings.customization.estimates.set_expiry_date_automatically_description")},null,8,["modelValue","title","description"]),e(a)?($(),E(C,{key:0,label:n.$t("settings.customization.estimates.expiry_date_days"),error:e(s).expiryDateSettings.estimate_expiry_date_days.$error&&e(s).expiryDateSettings.estimate_expiry_date_days.$errors[0].$message,class:"mt-2 mb-4"},{default:r(()=>[c("div",le,[t(B,{modelValue:e(u).estimate_expiry_date_days,"onUpdate:modelValue":l[1]||(l[1]=w=>e(u).estimate_expiry_date_days=w),invalid:e(s).expiryDateSettings.estimate_expiry_date_days.$error,type:"number",onInput:l[2]||(l[2]=w=>e(s).expiryDateSettings.estimate_expiry_date_days.$touch())},null,8,["modelValue","invalid"])])]),_:1},8,["label","error"])):R("",!0),t(S,{loading:e(g),disabled:e(g),variant:"primary",type:"submit",class:"mt-4"},{left:r(w=>[e(g)?R("",!0):($(),E(h,{key:0,class:G(w.class),name:"SaveIcon"},null,8,["class"]))]),default:r(()=>[k(" "+b(n.$t("settings.customization.save")),1)]),_:1},8,["loading","disabled"])],40,ne)}}},ue=["onSubmit"],re={class:"text-gray-900 text-lg font-medium"},de={class:"mt-1 text-sm text-gray-500 mb-2"},ce={setup(v){const o=N(),i=M("utils"),p=z(["customer","customerCustom","estimate","estimateCustom","company"]),g=z(["billing","customer","customerCustom","estimateCustom"]),u=z(["shipping","customer","customerCustom","estimateCustom"]),a=z(["company","estimateCustom"]);let m=z(!1);const s=T({estimate_mail_body:null,estimate_company_address_format:null,estimate_shipping_address_format:null,estimate_billing_address_format:null});i.mergeSettings(s,x({},o.selectedCompanySettings));async function _(){m.value=!0;let n={settings:x({},s)};return await o.updateCompanySettings({data:n,message:"settings.customization.estimates.estimate_settings_updated"}),m.value=!1,!0}return(n,l)=>{const y=d("BaseCustomInput"),B=d("BaseInputGroup"),C=d("BaseIcon"),h=d("BaseButton");return $(),D("form",{onSubmit:Y(_,["prevent"])},[c("h6",re,b(n.$t("settings.customization.estimates.default_formats")),1),c("p",de,b(n.$t("settings.customization.estimates.default_formats_description")),1),t(B,{label:n.$t("settings.customization.estimates.default_estimate_email_body"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).estimate_mail_body,"onUpdate:modelValue":l[0]||(l[0]=S=>e(s).estimate_mail_body=S),fields:p.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(B,{label:n.$t("settings.customization.estimates.company_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).estimate_company_address_format,"onUpdate:modelValue":l[1]||(l[1]=S=>e(s).estimate_company_address_format=S),fields:a.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(B,{label:n.$t("settings.customization.estimates.shipping_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).estimate_shipping_address_format,"onUpdate:modelValue":l[2]||(l[2]=S=>e(s).estimate_shipping_address_format=S),fields:u.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(B,{label:n.$t("settings.customization.estimates.billing_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).estimate_billing_address_format,"onUpdate:modelValue":l[3]||(l[3]=S=>e(s).estimate_billing_address_format=S),fields:g.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(h,{loading:e(m),disabled:e(m),variant:"primary",type:"submit",class:"mt-4"},{left:r(S=>[e(m)?R("",!0):($(),E(C,{key:0,class:G(S.class),name:"SaveIcon"},null,8,["class"]))]),default:r(()=>[k(" "+b(n.$t("settings.customization.save")),1)]),_:1},8,["loading","disabled"])],40,ue)}}},_e={class:"text-gray-900 text-lg font-medium"},pe={class:"mt-1 text-sm text-gray-500"},ge={setup(v){const{t:o,tm:i}=j(),p=N(),g=Z(),u=M("utils"),a=T({estimate_convert_action:null});u.mergeSettings(a,x({},p.selectedCompanySettings)),F(()=>g.config.estimate_convert_action.map(s=>(s.title=o(s.key),s)));async function m(){let s={settings:x({},a)};return await p.updateCompanySettings({data:s,message:"settings.customization.estimates.estimate_settings_updated"}),!0}return(s,_)=>{const n=d("BaseRadio"),l=d("BaseInputGroup");return $(),D(L,null,[c("h6",_e,b(s.$tc("settings.customization.estimates.convert_estimate_options")),1),c("p",pe,b(s.$t("settings.customization.estimates.convert_estimate_description")),1),t(l,{required:""},{default:r(()=>[t(n,{id:"no_action",modelValue:e(a).estimate_convert_action,"onUpdate:modelValue":[_[0]||(_[0]=y=>e(a).estimate_convert_action=y),m],label:s.$t("settings.customization.estimates.no_action"),size:"sm",name:"filter",value:"no_action",class:"mt-2"},null,8,["modelValue","label"]),t(n,{id:"delete_estimate",modelValue:e(a).estimate_convert_action,"onUpdate:modelValue":[_[1]||(_[1]=y=>e(a).estimate_convert_action=y),m],label:s.$t("settings.customization.estimates.delete_estimate"),size:"sm",name:"filter",value:"delete_estimate",class:"my-2"},null,8,["modelValue","label"]),t(n,{id:"mark_estimate_as_accepted",modelValue:e(a).estimate_convert_action,"onUpdate:modelValue":[_[2]||(_[2]=y=>e(a).estimate_convert_action=y),m],label:s.$t("settings.customization.estimates.mark_estimate_as_accepted"),size:"sm",name:"filter",value:"mark_estimate_as_accepted"},null,8,["modelValue","label"])]),_:1})],64)}}},ye={class:"divide-y divide-gray-200"},fe={setup(v){const o=M("utils"),i=N(),p=T({estimate_email_attachment:null});o.mergeSettings(p,x({},i.selectedCompanySettings));const g=F({get:()=>p.estimate_email_attachment==="YES",set:async u=>{const a=u?"YES":"NO";let m={settings:{estimate_email_attachment:a}};p.estimate_email_attachment=a,await i.updateCompanySettings({data:m,message:"general.setting_updated"})}});return(u,a)=>{const m=d("BaseDivider"),s=d("BaseSwitchSection");return $(),D(L,null,[t(ae),t(m,{class:"my-8"}),t(me),t(m,{class:"my-8"}),t(ge),t(m,{class:"my-8"}),t(ce),t(m,{class:"mt-6 mb-2"}),c("ul",ye,[t(s,{modelValue:e(g),"onUpdate:modelValue":a[0]||(a[0]=_=>H(g)?g.value=_:null),title:u.$t("settings.customization.estimates.estimate_email_attachment"),description:u.$t("settings.customization.estimates.estimate_email_attachment_setting_description")},null,8,["modelValue","title","description"])])],64)}}},ve={setup(v){const o=zt();return(i,p)=>($(),E(tt,{type:"payment","type-store":e(o),"default-series":"PAY"},null,8,["type-store"]))}},be=["onSubmit"],Se={class:"text-gray-900 text-lg font-medium"},$e={class:"mt-1 text-sm text-gray-500 mb-2"},Be={setup(v){const o=N(),i=M("utils"),p=z(["customer","customerCustom","company","payment","paymentCustom"]),g=z(["billing","customer","customerCustom","paymentCustom"]),u=z(["company","paymentCustom"]);let a=z(!1);const m=T({payment_mail_body:null,payment_company_address_format:null,payment_from_customer_address_format:null});i.mergeSettings(m,x({},o.selectedCompanySettings));async function s(){a.value=!0;let _={settings:x({},m)};return await o.updateCompanySettings({data:_,message:"settings.customization.payments.payment_settings_updated"}),a.value=!1,!0}return(_,n)=>{const l=d("BaseCustomInput"),y=d("BaseInputGroup"),B=d("BaseIcon"),C=d("BaseButton");return $(),D("form",{onSubmit:Y(s,["prevent"])},[c("h6",Se,b(_.$t("settings.customization.payments.default_formats")),1),c("p",$e,b(_.$t("settings.customization.payments.default_formats_description")),1),t(y,{label:_.$t("settings.customization.payments.default_payment_email_body"),class:"mt-6 mb-4"},{default:r(()=>[t(l,{modelValue:e(m).payment_mail_body,"onUpdate:modelValue":n[0]||(n[0]=h=>e(m).payment_mail_body=h),fields:p.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(y,{label:_.$t("settings.customization.payments.company_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(l,{modelValue:e(m).payment_company_address_format,"onUpdate:modelValue":n[1]||(n[1]=h=>e(m).payment_company_address_format=h),fields:u.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(y,{label:_.$t("settings.customization.payments.from_customer_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(l,{modelValue:e(m).payment_from_customer_address_format,"onUpdate:modelValue":n[2]||(n[2]=h=>e(m).payment_from_customer_address_format=h),fields:g.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(C,{loading:e(a),disabled:e(a),variant:"primary",type:"submit",class:"mt-4"},{left:r(h=>[e(a)?R("",!0):($(),E(B,{key:0,class:G(h.class),name:"SaveIcon"},null,8,["class"]))]),default:r(()=>[k(" "+b(_.$t("settings.customization.save")),1)]),_:1},8,["loading","disabled"])],40,be)}}},he={class:"divide-y divide-gray-200"},ze={setup(v){const o=M("utils"),i=N(),p=T({payment_email_attachment:null});o.mergeSettings(p,x({},i.selectedCompanySettings));const g=F({get:()=>p.payment_email_attachment==="YES",set:async u=>{const a=u?"YES":"NO";let m={settings:{payment_email_attachment:a}};p.payment_email_attachment=a,await i.updateCompanySettings({data:m,message:"general.setting_updated"})}});return(u,a)=>{const m=d("BaseDivider"),s=d("BaseSwitchSection");return $(),D(L,null,[t(ve),t(m,{class:"my-8"}),t(Be),t(m,{class:"mt-6 mb-2"}),c("ul",he,[t(s,{modelValue:e(g),"onUpdate:modelValue":a[0]||(a[0]=_=>H(g)?g.value=_:null),title:u.$t("settings.customization.payments.payment_email_attachment"),description:u.$t("settings.customization.payments.payment_email_attachment_setting_description")},null,8,["modelValue","title","description"])])],64)}}},Ve={class:"flex flex-wrap justify-end mt-2 lg:flex-nowrap"},Ie={class:"inline-block"},xe={setup(v){const{t:o}=j(),i=z(null),p=yt(),g=ft(),u=vt(),a=F(()=>[{key:"name",label:o("settings.customization.items.unit_name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function m({page:l,filter:y,sort:B}){let C={orderByField:B.fieldName||"created_at",orderBy:B.order||"desc",page:l},h=await p.fetchItemUnits(C);return{data:h.data.data,pagination:{totalPages:h.data.meta.last_page,currentPage:l,totalCount:h.data.meta.total,limit:5}}}async function s(){g.openModal({title:o("settings.customization.items.add_item_unit"),componentName:"ItemUnitModal",refreshData:i.value.refresh,size:"sm"})}async function _(l){p.fetchItemUnit(l.data.id),g.openModal({title:o("settings.customization.items.edit_item_unit"),componentName:"ItemUnitModal",id:l.data.id,data:l.data,refreshData:i.value&&i.value.refresh})}function n(l){u.openDialog({title:o("general.are_you_sure"),message:o("settings.customization.items.item_unit_confirm_delete"),yesLabel:o("general.yes"),noLabel:o("general.no"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async y=>{y&&(await p.deleteItemUnit(l.data.id),i.value&&i.value.refresh())})}return(l,y)=>{const B=d("BaseIcon"),C=d("BaseButton"),h=d("BaseDropdownItem"),S=d("BaseDropdown"),w=d("BaseTable");return $(),D(L,null,[t(Vt),c("div",Ve,[t(C,{variant:"primary-outline",onClick:s},{left:r(U=>[t(B,{class:G(U.class),name:"PlusIcon"},null,8,["class"])]),default:r(()=>[k(" "+b(l.$t("settings.customization.items.add_item_unit")),1)]),_:1})]),t(w,{ref:(U,P)=>{P.table=U,i.value=U},class:"mt-10",data:m,columns:e(a)},{"cell-actions":r(({row:U})=>[t(S,null,{activator:r(()=>[c("div",Ie,[t(B,{name:"DotsHorizontalIcon",class:"text-gray-500"})])]),default:r(()=>[t(h,{onClick:P=>_(U)},{default:r(()=>[t(B,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),k(" "+b(l.$t("general.edit")),1)]),_:2},1032,["onClick"]),t(h,{onClick:P=>n(U)},{default:r(()=>[t(B,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),k(" "+b(l.$t("general.delete")),1)]),_:2},1032,["onClick"])]),_:2},1024)]),_:1},8,["columns"])],64)}}},we={class:"relative"},Ne={setup(v){return(o,i)=>{const p=d("BaseTab"),g=d("BaseTabGroup"),u=d("BaseCard");return $(),D("div",we,[t(u,{"container-class":"px-4 py-5 sm:px-8 sm:py-2"},{default:r(()=>[t(g,null,{default:r(()=>[t(p,{"tab-panel-container":"py-4 mt-px",title:o.$t("settings.customization.invoices.title")},{default:r(()=>[t(se)]),_:1},8,["title"]),t(p,{"tab-panel-container":"py-4 mt-px",title:o.$t("settings.customization.estimates.title")},{default:r(()=>[t(fe)]),_:1},8,["title"]),t(p,{"tab-panel-container":"py-4 mt-px",title:o.$t("settings.customization.payments.title")},{default:r(()=>[t(ze)]),_:1},8,["title"]),t(p,{"tab-panel-container":"py-4 mt-px",title:o.$t("settings.customization.items.title")},{default:r(()=>[t(xe)]),_:1},8,["title"])]),_:1})]),_:1})])}}};export{Ne as default}; +var ut=Object.defineProperty,rt=Object.defineProperties;var dt=Object.getOwnPropertyDescriptors;var et=Object.getOwnPropertySymbols;var ct=Object.prototype.hasOwnProperty,_t=Object.prototype.propertyIsEnumerable;var st=(v,o,i)=>o in v?ut(v,o,{enumerable:!0,configurable:!0,writable:!0,value:i}):v[o]=i,x=(v,o)=>{for(var i in o||(o={}))ct.call(o,i)&&st(v,i,o[i]);if(et)for(var i of et(o))_t.call(o,i)&&st(v,i,o[i]);return v},W=(v,o)=>rt(v,dt(o));import{b as N,d as Z,i as pt,k as gt,p as yt,c as ft,j as vt}from"./main.24f7a84b.js";import{J as j,B as z,k as F,C as bt,H as at,$ as St,r as d,o as $,e as D,h as c,t as b,f as t,w as r,U as Y,m as G,i as k,F as L,y as $t,l as E,u as e,j as R,ah as M,a0 as T,L as X,O as nt,aT as it,T as ot,x as H}from"./vendor.01d0adc5.js";import{D as Bt,d as ht}from"./DragIcon.0a950eb9.js";import{u as zt}from"./payment.bb0c6e9e.js";import{_ as Vt}from"./ItemUnitModal.98d168e7.js";const It={class:"text-gray-900 text-lg font-medium"},xt={class:"mt-1 text-sm text-gray-500"},wt={class:"overflow-x-auto"},Ct={class:"w-full mt-6 table-fixed"},Dt=c("colgroup",null,[c("col",{style:{width:"4%"}}),c("col",{style:{width:"45%"}}),c("col",{style:{width:"27%"}}),c("col",{style:{width:"24%"}})],-1),Ut=c("thead",null,[c("tr",null,[c("th",{class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-left text-gray-700 border-t border-b border-gray-200 border-solid"}),c("th",{class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-left text-gray-700 border-t border-b border-gray-200 border-solid"}," Component "),c("th",{class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-left text-gray-700 border-t border-b border-gray-200 border-solid"}," Parameter "),c("th",{class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-left text-gray-700 border-t border-b border-gray-200 border-solid"})])],-1),Ft={class:"relative"},kt={class:"text-gray-300 cursor-move handle align-middle"},Et={class:"px-5 py-4"},Nt={class:"block text-sm not-italic font-medium text-primary-800 whitespace-nowrap mr-2 min-w-[200px]"},Mt={class:"text-xs text-gray-500 mt-1"},Tt={class:"px-5 py-4 text-left align-middle"},Gt={class:"px-5 py-4 text-right align-middle pt-10"},qt=k(" Remove "),Lt={colspan:"2",class:"px-5 py-4"},Rt={class:"px-5 py-4 text-right align-middle",colspan:"2"},tt={props:{type:{type:String,required:!0},typeStore:{type:Object,required:!0},defaultSeries:{type:String,default:"INV"}},setup(v){const o=v,{t:i}=j(),p=N(),g=Z(),u=z([]),a=z(!1),m=z([{label:i("settings.customization.series"),description:i("settings.customization.series_description"),name:"SERIES",paramLabel:i("settings.customization.series_param_label"),value:o.defaultSeries,inputDisabled:!1,inputType:"text",allowMultiple:!1},{label:i("settings.customization.sequence"),description:i("settings.customization.sequence_description"),name:"SEQUENCE",paramLabel:i("settings.customization.sequence_param_label"),value:"6",inputDisabled:!1,inputType:"number",allowMultiple:!1},{label:i("settings.customization.delimiter"),description:i("settings.customization.delimiter_description"),name:"DELIMITER",paramLabel:i("settings.customization.delimiter_param_label"),value:"-",inputDisabled:!1,inputType:"text",allowMultiple:!0},{label:i("settings.customization.customer_series"),description:i("settings.customization.customer_series_description"),name:"CUSTOMER_SERIES",paramLabel:"",value:"",inputDisabled:!0,inputType:"text",allowMultiple:!1},{label:i("settings.customization.customer_sequence"),description:i("settings.customization.customer_sequence_description"),name:"CUSTOMER_SEQUENCE",paramLabel:i("settings.customization.customer_sequence_param_label"),value:"6",inputDisabled:!1,inputType:"number",allowMultiple:!1},{label:i("settings.customization.date_format"),description:i("settings.customization.date_format_description"),name:"DATE_FORMAT",paramLabel:i("settings.customization.date_format_param_label"),value:"Y",inputDisabled:!1,inputType:"text",allowMultiple:!0},{label:i("settings.customization.random_sequence"),description:i("settings.customization.random_sequence_description"),name:"RANDOM_SEQUENCE",paramLabel:i("settings.customization.random_sequence_param_label"),value:"6",inputDisabled:!1,inputType:"number",allowMultiple:!1}]),s=F(()=>m.value.filter(function(f){return!u.value.some(function(V){return f.allowMultiple?!1:f.name==V.name})})),_=z(""),n=z(!1),l=z(!1),y=F(()=>{let f="";return u.value.forEach(V=>{let q=`{{${V.name}`;V.value&&(q+=`:${V.value}`),f+=`${q}}}`}),f});bt(u,f=>{U()}),B();async function B(){let f={format:p.selectedCompanySettings[`${o.type}_number_format`]};l.value=!0,(await g.fetchPlaceholders(f)).data.placeholders.forEach(q=>{var O;let J=m.value.find(K=>K.name===q.name);const Q=(O=q.value)!=null?O:"";u.value.push(W(x({},J),{value:Q,id:at.raw()}))}),l.value=!1,U()}function C(f){return u.value.find(V=>V.name===f.name)}function h(f){C(f)&&!f.allowMultiple||(u.value.push(W(x({},f),{id:at.raw()})),U())}function S(f){u.value=u.value.filter(function(V){return f.id!==V.id})}function w(f,V){switch(V.name){case"SERIES":f.length>=6&&(f=f.substring(0,6));break;case"DELIMITER":f.length>=1&&(f=f.substring(0,1));break}setTimeout(()=>{V.value=f,U()},100)}const U=St(()=>{P()},500);async function P(){if(!y.value){_.value="";return}let f={key:o.type,format:y.value};n.value=!0;let V=await o.typeStore.getNextNumber(f);n.value=!1,V.data&&(_.value=V.data.nextNumber)}async function lt(){if(n.value||l.value)return;a.value=!0;let f={settings:{}};return f.settings[o.type+"_number_format"]=y.value,await p.updateCompanySettings({data:f,message:`settings.customization.${o.type}s.${o.type}_settings_updated`}),a.value=!1,!0}return(f,V)=>{const q=d("BaseInput"),J=d("BaseInputGroup"),Q=d("BaseIcon"),O=d("BaseButton"),K=d("BaseDropdownItem"),mt=d("BaseDropdown");return $(),D(L,null,[c("h6",It,b(f.$t(`settings.customization.${v.type}s.${v.type}_number_format`)),1),c("p",xt,b(f.$t(`settings.customization.${v.type}s.${v.type}_number_format_description`)),1),c("div",wt,[c("table",Ct,[Dt,Ut,t(e(ht),{modelValue:u.value,"onUpdate:modelValue":V[1]||(V[1]=I=>u.value=I),class:"divide-y divide-gray-200","item-key":"id",tag:"tbody",handle:".handle",filter:".ignore-element"},{item:r(({element:I})=>[c("tr",Ft,[c("td",kt,[t(Bt)]),c("td",Et,[c("label",Nt,b(I.label),1),c("p",Mt,b(I.description),1)]),c("td",Tt,[t(J,{label:I.paramLabel,class:"lg:col-span-3",required:""},{default:r(()=>[t(q,{modelValue:I.value,"onUpdate:modelValue":[A=>I.value=A,A=>w(A,I)],disabled:I.inputDisabled,type:I.inputType},null,8,["modelValue","onUpdate:modelValue","disabled","type"])]),_:2},1032,["label"])]),c("td",Gt,[t(O,{variant:"white",onClick:Y(A=>S(I),["prevent"])},{left:r(A=>[t(Q,{name:"XIcon",class:G(["!sm:m-0",A.class])},null,8,["class"])]),default:r(()=>[qt]),_:2},1032,["onClick"])])])]),footer:r(()=>[c("tr",null,[c("td",Lt,[t(J,{label:f.$t(`settings.customization.${v.type}s.preview_${v.type}_number`)},{default:r(()=>[t(q,{modelValue:_.value,"onUpdate:modelValue":V[0]||(V[0]=I=>_.value=I),disabled:"",loading:n.value},null,8,["modelValue","loading"])]),_:1},8,["label"])]),c("td",Rt,[t(mt,{"wrapper-class":"flex items-center justify-end mt-5"},{activator:r(()=>[t(O,{variant:"primary-outline"},{left:r(I=>[t(Q,{class:G(I.class),name:"PlusIcon"},null,8,["class"])]),default:r(()=>[k(" "+b(f.$t("settings.customization.add_new_component")),1)]),_:1})]),default:r(()=>[($(!0),D(L,null,$t(e(s),I=>($(),E(K,{key:I.label,onClick:Y(A=>h(I),["prevent"])},{default:r(()=>[k(b(I.label),1)]),_:2},1032,["onClick"]))),128))]),_:1})])])]),_:1},8,["modelValue"])])]),t(O,{loading:a.value,disabled:a.value,variant:"primary",type:"submit",class:"mt-4",onClick:lt},{left:r(I=>[a.value?R("",!0):($(),E(Q,{key:0,class:G(I.class),name:"SaveIcon"},null,8,["class"]))]),default:r(()=>[k(" "+b(f.$t("settings.customization.save")),1)]),_:1},8,["loading","disabled"])],64)}}},At={setup(v){const o=pt();return(i,p)=>($(),E(tt,{type:"invoice","type-store":e(o),"default-series":"INV"},null,8,["type-store"]))}},Yt={class:"text-gray-900 text-lg font-medium"},Ot={class:"mt-1 text-sm text-gray-500"},jt={setup(v){const{t:o,tm:i}=j(),p=N(),g=Z(),u=M("utils"),a=T({retrospective_edits:null});u.mergeSettings(a,x({},p.selectedCompanySettings)),F(()=>g.config.retrospective_edits.map(s=>(s.title=o(s.key),s)));async function m(){let s={settings:x({},a)};return await p.updateCompanySettings({data:s,message:"settings.customization.invoices.invoice_settings_updated"}),!0}return(s,_)=>{const n=d("BaseRadio"),l=d("BaseInputGroup");return $(),D(L,null,[c("h6",Yt,b(s.$tc("settings.customization.invoices.retrospective_edits")),1),c("p",Ot,b(s.$t("settings.customization.invoices.retrospective_edits_description")),1),t(l,{required:""},{default:r(()=>[t(n,{id:"allow",modelValue:e(a).retrospective_edits,"onUpdate:modelValue":[_[0]||(_[0]=y=>e(a).retrospective_edits=y),m],label:s.$t("settings.customization.invoices.allow"),size:"sm",name:"filter",value:"allow",class:"mt-2"},null,8,["modelValue","label"]),t(n,{id:"disable_on_invoice_partial_paid",modelValue:e(a).retrospective_edits,"onUpdate:modelValue":[_[1]||(_[1]=y=>e(a).retrospective_edits=y),m],label:s.$t("settings.customization.invoices.disable_on_invoice_partial_paid"),size:"sm",name:"filter",value:"disable_on_invoice_partial_paid",class:"mt-2"},null,8,["modelValue","label"]),t(n,{id:"disable_on_invoice_paid",modelValue:e(a).retrospective_edits,"onUpdate:modelValue":[_[2]||(_[2]=y=>e(a).retrospective_edits=y),m],label:s.$t("settings.customization.invoices.disable_on_invoice_paid"),size:"sm",name:"filter",value:"disable_on_invoice_paid",class:"my-2"},null,8,["modelValue","label"]),t(n,{id:"disable_on_invoice_sent",modelValue:e(a).retrospective_edits,"onUpdate:modelValue":[_[3]||(_[3]=y=>e(a).retrospective_edits=y),m],label:s.$t("settings.customization.invoices.disable_on_invoice_sent"),size:"sm",name:"filter",value:"disable_on_invoice_sent"},null,8,["modelValue","label"])]),_:1})],64)}}},Pt=["onSubmit"],Qt={class:"text-gray-900 text-lg font-medium"},Ht={class:"mt-1 text-sm text-gray-500 mb-2"},Jt={class:"w-full sm:w-1/2 md:w-1/4 lg:w-1/5"},Xt={setup(v){const{t:o}=j(),i=N(),p=M("utils");let g=z(!1);const u=T({invoice_set_due_date_automatically:null,invoice_due_date_days:null});p.mergeSettings(u,x({},i.selectedCompanySettings));const a=F({get:()=>u.invoice_set_due_date_automatically==="YES",set:async n=>{const l=n?"YES":"NO";u.invoice_set_due_date_automatically=l}}),m=F(()=>({dueDateSettings:{invoice_due_date_days:{required:X.withMessage(o("validation.required"),nt(a.value)),numeric:X.withMessage(o("validation.numbers_only"),it)}}})),s=ot(m,{dueDateSettings:u});async function _(){if(s.value.dueDateSettings.$touch(),s.value.dueDateSettings.$invalid)return!1;g.value=!0;let n={settings:x({},u)};return a.value||delete n.settings.invoice_due_date_days,await i.updateCompanySettings({data:n,message:"settings.customization.invoices.invoice_settings_updated"}),g.value=!1,!0}return(n,l)=>{const y=d("BaseSwitchSection"),B=d("BaseInput"),C=d("BaseInputGroup"),h=d("BaseIcon"),S=d("BaseButton");return $(),D("form",{onSubmit:Y(_,["prevent"])},[c("h6",Qt,b(n.$t("settings.customization.invoices.due_date")),1),c("p",Ht,b(n.$t("settings.customization.invoices.due_date_description")),1),t(y,{modelValue:e(a),"onUpdate:modelValue":l[0]||(l[0]=w=>H(a)?a.value=w:null),title:n.$t("settings.customization.invoices.set_due_date_automatically"),description:n.$t("settings.customization.invoices.set_due_date_automatically_description")},null,8,["modelValue","title","description"]),e(a)?($(),E(C,{key:0,label:n.$t("settings.customization.invoices.due_date_days"),error:e(s).dueDateSettings.invoice_due_date_days.$error&&e(s).dueDateSettings.invoice_due_date_days.$errors[0].$message,class:"mt-2 mb-4"},{default:r(()=>[c("div",Jt,[t(B,{modelValue:e(u).invoice_due_date_days,"onUpdate:modelValue":l[1]||(l[1]=w=>e(u).invoice_due_date_days=w),invalid:e(s).dueDateSettings.invoice_due_date_days.$error,type:"number",onInput:l[2]||(l[2]=w=>e(s).dueDateSettings.invoice_due_date_days.$touch())},null,8,["modelValue","invalid"])])]),_:1},8,["label","error"])):R("",!0),t(S,{loading:e(g),disabled:e(g),variant:"primary",type:"submit",class:"mt-4"},{left:r(w=>[e(g)?R("",!0):($(),E(h,{key:0,class:G(w.class),name:"SaveIcon"},null,8,["class"]))]),default:r(()=>[k(" "+b(n.$t("settings.customization.save")),1)]),_:1},8,["loading","disabled"])],40,Pt)}}},Kt=["onSubmit"],Wt={class:"text-gray-900 text-lg font-medium"},Zt={class:"mt-1 text-sm text-gray-500 mb-2"},te={setup(v){const o=N(),i=M("utils"),p=z(["customer","customerCustom","invoice","invoiceCustom","company"]),g=z(["billing","customer","customerCustom","invoiceCustom"]),u=z(["shipping","customer","customerCustom","invoiceCustom"]),a=z(["company","invoiceCustom"]);let m=z(!1);const s=T({invoice_mail_body:null,invoice_company_address_format:null,invoice_shipping_address_format:null,invoice_billing_address_format:null});i.mergeSettings(s,x({},o.selectedCompanySettings));async function _(){m.value=!0;let n={settings:x({},s)};return await o.updateCompanySettings({data:n,message:"settings.customization.invoices.invoice_settings_updated"}),m.value=!1,!0}return(n,l)=>{const y=d("BaseCustomInput"),B=d("BaseInputGroup"),C=d("BaseIcon"),h=d("BaseButton");return $(),D("form",{onSubmit:Y(_,["prevent"])},[c("h6",Wt,b(n.$t("settings.customization.invoices.default_formats")),1),c("p",Zt,b(n.$t("settings.customization.invoices.default_formats_description")),1),t(B,{label:n.$t("settings.customization.invoices.default_invoice_email_body"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).invoice_mail_body,"onUpdate:modelValue":l[0]||(l[0]=S=>e(s).invoice_mail_body=S),fields:p.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(B,{label:n.$t("settings.customization.invoices.company_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).invoice_company_address_format,"onUpdate:modelValue":l[1]||(l[1]=S=>e(s).invoice_company_address_format=S),fields:a.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(B,{label:n.$t("settings.customization.invoices.shipping_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).invoice_shipping_address_format,"onUpdate:modelValue":l[2]||(l[2]=S=>e(s).invoice_shipping_address_format=S),fields:u.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(B,{label:n.$t("settings.customization.invoices.billing_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).invoice_billing_address_format,"onUpdate:modelValue":l[3]||(l[3]=S=>e(s).invoice_billing_address_format=S),fields:g.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(h,{loading:e(m),disabled:e(m),variant:"primary",type:"submit",class:"mt-4"},{left:r(S=>[e(m)?R("",!0):($(),E(C,{key:0,class:G(S.class),name:"SaveIcon"},null,8,["class"]))]),default:r(()=>[k(" "+b(n.$t("settings.customization.save")),1)]),_:1},8,["loading","disabled"])],40,Kt)}}},ee={class:"divide-y divide-gray-200"},se={setup(v){const o=M("utils"),i=N(),p=T({invoice_email_attachment:null});o.mergeSettings(p,x({},i.selectedCompanySettings));const g=F({get:()=>p.invoice_email_attachment==="YES",set:async u=>{const a=u?"YES":"NO";let m={settings:{invoice_email_attachment:a}};p.invoice_email_attachment=a,await i.updateCompanySettings({data:m,message:"general.setting_updated"})}});return(u,a)=>{const m=d("BaseDivider"),s=d("BaseSwitchSection");return $(),D(L,null,[t(At),t(m,{class:"my-8"}),t(Xt),t(m,{class:"my-8"}),t(jt),t(m,{class:"my-8"}),t(te),t(m,{class:"mt-6 mb-2"}),c("ul",ee,[t(s,{modelValue:e(g),"onUpdate:modelValue":a[0]||(a[0]=_=>H(g)?g.value=_:null),title:u.$t("settings.customization.invoices.invoice_email_attachment"),description:u.$t("settings.customization.invoices.invoice_email_attachment_setting_description")},null,8,["modelValue","title","description"])])],64)}}},ae={setup(v){const o=gt();return(i,p)=>($(),E(tt,{type:"estimate","type-store":e(o),"default-series":"EST"},null,8,["type-store"]))}},ne=["onSubmit"],ie={class:"text-gray-900 text-lg font-medium"},oe={class:"mt-1 text-sm text-gray-500 mb-2"},le={class:"w-full sm:w-1/2 md:w-1/4 lg:w-1/5"},me={setup(v){const{t:o}=j(),i=N(),p=M("utils");let g=z(!1);const u=T({estimate_set_expiry_date_automatically:null,estimate_expiry_date_days:null});p.mergeSettings(u,x({},i.selectedCompanySettings));const a=F({get:()=>u.estimate_set_expiry_date_automatically==="YES",set:async n=>{const l=n?"YES":"NO";u.estimate_set_expiry_date_automatically=l}}),m=F(()=>({expiryDateSettings:{estimate_expiry_date_days:{required:X.withMessage(o("validation.required"),nt(a.value)),numeric:X.withMessage(o("validation.numbers_only"),it)}}})),s=ot(m,{expiryDateSettings:u});async function _(){if(s.value.expiryDateSettings.$touch(),s.value.expiryDateSettings.$invalid)return!1;g.value=!0;let n={settings:x({},u)};return a.value||delete n.settings.estimate_expiry_date_days,await i.updateCompanySettings({data:n,message:"settings.customization.estimates.estimate_settings_updated"}),g.value=!1,!0}return(n,l)=>{const y=d("BaseSwitchSection"),B=d("BaseInput"),C=d("BaseInputGroup"),h=d("BaseIcon"),S=d("BaseButton");return $(),D("form",{onSubmit:Y(_,["prevent"])},[c("h6",ie,b(n.$t("settings.customization.estimates.expiry_date")),1),c("p",oe,b(n.$t("settings.customization.estimates.expiry_date_description")),1),t(y,{modelValue:e(a),"onUpdate:modelValue":l[0]||(l[0]=w=>H(a)?a.value=w:null),title:n.$t("settings.customization.estimates.set_expiry_date_automatically"),description:n.$t("settings.customization.estimates.set_expiry_date_automatically_description")},null,8,["modelValue","title","description"]),e(a)?($(),E(C,{key:0,label:n.$t("settings.customization.estimates.expiry_date_days"),error:e(s).expiryDateSettings.estimate_expiry_date_days.$error&&e(s).expiryDateSettings.estimate_expiry_date_days.$errors[0].$message,class:"mt-2 mb-4"},{default:r(()=>[c("div",le,[t(B,{modelValue:e(u).estimate_expiry_date_days,"onUpdate:modelValue":l[1]||(l[1]=w=>e(u).estimate_expiry_date_days=w),invalid:e(s).expiryDateSettings.estimate_expiry_date_days.$error,type:"number",onInput:l[2]||(l[2]=w=>e(s).expiryDateSettings.estimate_expiry_date_days.$touch())},null,8,["modelValue","invalid"])])]),_:1},8,["label","error"])):R("",!0),t(S,{loading:e(g),disabled:e(g),variant:"primary",type:"submit",class:"mt-4"},{left:r(w=>[e(g)?R("",!0):($(),E(h,{key:0,class:G(w.class),name:"SaveIcon"},null,8,["class"]))]),default:r(()=>[k(" "+b(n.$t("settings.customization.save")),1)]),_:1},8,["loading","disabled"])],40,ne)}}},ue=["onSubmit"],re={class:"text-gray-900 text-lg font-medium"},de={class:"mt-1 text-sm text-gray-500 mb-2"},ce={setup(v){const o=N(),i=M("utils"),p=z(["customer","customerCustom","estimate","estimateCustom","company"]),g=z(["billing","customer","customerCustom","estimateCustom"]),u=z(["shipping","customer","customerCustom","estimateCustom"]),a=z(["company","estimateCustom"]);let m=z(!1);const s=T({estimate_mail_body:null,estimate_company_address_format:null,estimate_shipping_address_format:null,estimate_billing_address_format:null});i.mergeSettings(s,x({},o.selectedCompanySettings));async function _(){m.value=!0;let n={settings:x({},s)};return await o.updateCompanySettings({data:n,message:"settings.customization.estimates.estimate_settings_updated"}),m.value=!1,!0}return(n,l)=>{const y=d("BaseCustomInput"),B=d("BaseInputGroup"),C=d("BaseIcon"),h=d("BaseButton");return $(),D("form",{onSubmit:Y(_,["prevent"])},[c("h6",re,b(n.$t("settings.customization.estimates.default_formats")),1),c("p",de,b(n.$t("settings.customization.estimates.default_formats_description")),1),t(B,{label:n.$t("settings.customization.estimates.default_estimate_email_body"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).estimate_mail_body,"onUpdate:modelValue":l[0]||(l[0]=S=>e(s).estimate_mail_body=S),fields:p.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(B,{label:n.$t("settings.customization.estimates.company_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).estimate_company_address_format,"onUpdate:modelValue":l[1]||(l[1]=S=>e(s).estimate_company_address_format=S),fields:a.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(B,{label:n.$t("settings.customization.estimates.shipping_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).estimate_shipping_address_format,"onUpdate:modelValue":l[2]||(l[2]=S=>e(s).estimate_shipping_address_format=S),fields:u.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(B,{label:n.$t("settings.customization.estimates.billing_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(y,{modelValue:e(s).estimate_billing_address_format,"onUpdate:modelValue":l[3]||(l[3]=S=>e(s).estimate_billing_address_format=S),fields:g.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(h,{loading:e(m),disabled:e(m),variant:"primary",type:"submit",class:"mt-4"},{left:r(S=>[e(m)?R("",!0):($(),E(C,{key:0,class:G(S.class),name:"SaveIcon"},null,8,["class"]))]),default:r(()=>[k(" "+b(n.$t("settings.customization.save")),1)]),_:1},8,["loading","disabled"])],40,ue)}}},_e={class:"text-gray-900 text-lg font-medium"},pe={class:"mt-1 text-sm text-gray-500"},ge={setup(v){const{t:o,tm:i}=j(),p=N(),g=Z(),u=M("utils"),a=T({estimate_convert_action:null});u.mergeSettings(a,x({},p.selectedCompanySettings)),F(()=>g.config.estimate_convert_action.map(s=>(s.title=o(s.key),s)));async function m(){let s={settings:x({},a)};return await p.updateCompanySettings({data:s,message:"settings.customization.estimates.estimate_settings_updated"}),!0}return(s,_)=>{const n=d("BaseRadio"),l=d("BaseInputGroup");return $(),D(L,null,[c("h6",_e,b(s.$tc("settings.customization.estimates.convert_estimate_options")),1),c("p",pe,b(s.$t("settings.customization.estimates.convert_estimate_description")),1),t(l,{required:""},{default:r(()=>[t(n,{id:"no_action",modelValue:e(a).estimate_convert_action,"onUpdate:modelValue":[_[0]||(_[0]=y=>e(a).estimate_convert_action=y),m],label:s.$t("settings.customization.estimates.no_action"),size:"sm",name:"filter",value:"no_action",class:"mt-2"},null,8,["modelValue","label"]),t(n,{id:"delete_estimate",modelValue:e(a).estimate_convert_action,"onUpdate:modelValue":[_[1]||(_[1]=y=>e(a).estimate_convert_action=y),m],label:s.$t("settings.customization.estimates.delete_estimate"),size:"sm",name:"filter",value:"delete_estimate",class:"my-2"},null,8,["modelValue","label"]),t(n,{id:"mark_estimate_as_accepted",modelValue:e(a).estimate_convert_action,"onUpdate:modelValue":[_[2]||(_[2]=y=>e(a).estimate_convert_action=y),m],label:s.$t("settings.customization.estimates.mark_estimate_as_accepted"),size:"sm",name:"filter",value:"mark_estimate_as_accepted"},null,8,["modelValue","label"])]),_:1})],64)}}},ye={class:"divide-y divide-gray-200"},fe={setup(v){const o=M("utils"),i=N(),p=T({estimate_email_attachment:null});o.mergeSettings(p,x({},i.selectedCompanySettings));const g=F({get:()=>p.estimate_email_attachment==="YES",set:async u=>{const a=u?"YES":"NO";let m={settings:{estimate_email_attachment:a}};p.estimate_email_attachment=a,await i.updateCompanySettings({data:m,message:"general.setting_updated"})}});return(u,a)=>{const m=d("BaseDivider"),s=d("BaseSwitchSection");return $(),D(L,null,[t(ae),t(m,{class:"my-8"}),t(me),t(m,{class:"my-8"}),t(ge),t(m,{class:"my-8"}),t(ce),t(m,{class:"mt-6 mb-2"}),c("ul",ye,[t(s,{modelValue:e(g),"onUpdate:modelValue":a[0]||(a[0]=_=>H(g)?g.value=_:null),title:u.$t("settings.customization.estimates.estimate_email_attachment"),description:u.$t("settings.customization.estimates.estimate_email_attachment_setting_description")},null,8,["modelValue","title","description"])])],64)}}},ve={setup(v){const o=zt();return(i,p)=>($(),E(tt,{type:"payment","type-store":e(o),"default-series":"PAY"},null,8,["type-store"]))}},be=["onSubmit"],Se={class:"text-gray-900 text-lg font-medium"},$e={class:"mt-1 text-sm text-gray-500 mb-2"},Be={setup(v){const o=N(),i=M("utils"),p=z(["customer","customerCustom","company","payment","paymentCustom"]),g=z(["billing","customer","customerCustom","paymentCustom"]),u=z(["company","paymentCustom"]);let a=z(!1);const m=T({payment_mail_body:null,payment_company_address_format:null,payment_from_customer_address_format:null});i.mergeSettings(m,x({},o.selectedCompanySettings));async function s(){a.value=!0;let _={settings:x({},m)};return await o.updateCompanySettings({data:_,message:"settings.customization.payments.payment_settings_updated"}),a.value=!1,!0}return(_,n)=>{const l=d("BaseCustomInput"),y=d("BaseInputGroup"),B=d("BaseIcon"),C=d("BaseButton");return $(),D("form",{onSubmit:Y(s,["prevent"])},[c("h6",Se,b(_.$t("settings.customization.payments.default_formats")),1),c("p",$e,b(_.$t("settings.customization.payments.default_formats_description")),1),t(y,{label:_.$t("settings.customization.payments.default_payment_email_body"),class:"mt-6 mb-4"},{default:r(()=>[t(l,{modelValue:e(m).payment_mail_body,"onUpdate:modelValue":n[0]||(n[0]=h=>e(m).payment_mail_body=h),fields:p.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(y,{label:_.$t("settings.customization.payments.company_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(l,{modelValue:e(m).payment_company_address_format,"onUpdate:modelValue":n[1]||(n[1]=h=>e(m).payment_company_address_format=h),fields:u.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(y,{label:_.$t("settings.customization.payments.from_customer_address_format"),class:"mt-6 mb-4"},{default:r(()=>[t(l,{modelValue:e(m).payment_from_customer_address_format,"onUpdate:modelValue":n[2]||(n[2]=h=>e(m).payment_from_customer_address_format=h),fields:g.value},null,8,["modelValue","fields"])]),_:1},8,["label"]),t(C,{loading:e(a),disabled:e(a),variant:"primary",type:"submit",class:"mt-4"},{left:r(h=>[e(a)?R("",!0):($(),E(B,{key:0,class:G(h.class),name:"SaveIcon"},null,8,["class"]))]),default:r(()=>[k(" "+b(_.$t("settings.customization.save")),1)]),_:1},8,["loading","disabled"])],40,be)}}},he={class:"divide-y divide-gray-200"},ze={setup(v){const o=M("utils"),i=N(),p=T({payment_email_attachment:null});o.mergeSettings(p,x({},i.selectedCompanySettings));const g=F({get:()=>p.payment_email_attachment==="YES",set:async u=>{const a=u?"YES":"NO";let m={settings:{payment_email_attachment:a}};p.payment_email_attachment=a,await i.updateCompanySettings({data:m,message:"general.setting_updated"})}});return(u,a)=>{const m=d("BaseDivider"),s=d("BaseSwitchSection");return $(),D(L,null,[t(ve),t(m,{class:"my-8"}),t(Be),t(m,{class:"mt-6 mb-2"}),c("ul",he,[t(s,{modelValue:e(g),"onUpdate:modelValue":a[0]||(a[0]=_=>H(g)?g.value=_:null),title:u.$t("settings.customization.payments.payment_email_attachment"),description:u.$t("settings.customization.payments.payment_email_attachment_setting_description")},null,8,["modelValue","title","description"])])],64)}}},Ve={class:"flex flex-wrap justify-end mt-2 lg:flex-nowrap"},Ie={class:"inline-block"},xe={setup(v){const{t:o}=j(),i=z(null),p=yt(),g=ft(),u=vt(),a=F(()=>[{key:"name",label:o("settings.customization.items.unit_name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function m({page:l,filter:y,sort:B}){let C={orderByField:B.fieldName||"created_at",orderBy:B.order||"desc",page:l},h=await p.fetchItemUnits(C);return{data:h.data.data,pagination:{totalPages:h.data.meta.last_page,currentPage:l,totalCount:h.data.meta.total,limit:5}}}async function s(){g.openModal({title:o("settings.customization.items.add_item_unit"),componentName:"ItemUnitModal",refreshData:i.value.refresh,size:"sm"})}async function _(l){p.fetchItemUnit(l.data.id),g.openModal({title:o("settings.customization.items.edit_item_unit"),componentName:"ItemUnitModal",id:l.data.id,data:l.data,refreshData:i.value&&i.value.refresh})}function n(l){u.openDialog({title:o("general.are_you_sure"),message:o("settings.customization.items.item_unit_confirm_delete"),yesLabel:o("general.yes"),noLabel:o("general.no"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async y=>{y&&(await p.deleteItemUnit(l.data.id),i.value&&i.value.refresh())})}return(l,y)=>{const B=d("BaseIcon"),C=d("BaseButton"),h=d("BaseDropdownItem"),S=d("BaseDropdown"),w=d("BaseTable");return $(),D(L,null,[t(Vt),c("div",Ve,[t(C,{variant:"primary-outline",onClick:s},{left:r(U=>[t(B,{class:G(U.class),name:"PlusIcon"},null,8,["class"])]),default:r(()=>[k(" "+b(l.$t("settings.customization.items.add_item_unit")),1)]),_:1})]),t(w,{ref:(U,P)=>{P.table=U,i.value=U},class:"mt-10",data:m,columns:e(a)},{"cell-actions":r(({row:U})=>[t(S,null,{activator:r(()=>[c("div",Ie,[t(B,{name:"DotsHorizontalIcon",class:"text-gray-500"})])]),default:r(()=>[t(h,{onClick:P=>_(U)},{default:r(()=>[t(B,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),k(" "+b(l.$t("general.edit")),1)]),_:2},1032,["onClick"]),t(h,{onClick:P=>n(U)},{default:r(()=>[t(B,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),k(" "+b(l.$t("general.delete")),1)]),_:2},1032,["onClick"])]),_:2},1024)]),_:1},8,["columns"])],64)}}},we={class:"relative"},Ne={setup(v){return(o,i)=>{const p=d("BaseTab"),g=d("BaseTabGroup"),u=d("BaseCard");return $(),D("div",we,[t(u,{"container-class":"px-4 py-5 sm:px-8 sm:py-2"},{default:r(()=>[t(g,null,{default:r(()=>[t(p,{"tab-panel-container":"py-4 mt-px",title:o.$t("settings.customization.invoices.title")},{default:r(()=>[t(se)]),_:1},8,["title"]),t(p,{"tab-panel-container":"py-4 mt-px",title:o.$t("settings.customization.estimates.title")},{default:r(()=>[t(fe)]),_:1},8,["title"]),t(p,{"tab-panel-container":"py-4 mt-px",title:o.$t("settings.customization.payments.title")},{default:r(()=>[t(ze)]),_:1},8,["title"]),t(p,{"tab-panel-container":"py-4 mt-px",title:o.$t("settings.customization.items.title")},{default:r(()=>[t(xe)]),_:1},8,["title"])]),_:1})]),_:1})])}}};export{Ne as default}; diff --git a/public/build/assets/Dashboard.4e48457e.js b/public/build/assets/Dashboard.1686f020.js similarity index 96% rename from public/build/assets/Dashboard.4e48457e.js rename to public/build/assets/Dashboard.1686f020.js index 73482f3ee..9bbdd2222 100644 --- a/public/build/assets/Dashboard.4e48457e.js +++ b/public/build/assets/Dashboard.1686f020.js @@ -1 +1 @@ -import{D as I,_ as L,a as M}from"./EstimateIcon.1f3b368d.js";import{o as m,e as v,m as $,h as r,a as V,r as i,l as h,w as s,f as t,g as F,t as u,aj as T,ah as w,u as n,i as _,J as z,G as A,k as D}from"./vendor.01d0adc5.js";import{u as C}from"./global.08b6a984.js";import{h as Z}from"./auth.4644c288.js";import{_ as k}from"./main.75722495.js";import S from"./BaseTable.6e206ca7.js";const q=r("circle",{cx:"25",cy:"25",r:"25",fill:"#EAF1FB"},null,-1),N=r("path",{d:"M17.8 17.8C17.1635 17.8 16.5531 18.0529 16.103 18.503C15.6529 18.9531 15.4 19.5635 15.4 20.2V21.4H34.6V20.2C34.6 19.5635 34.3472 18.9531 33.8971 18.503C33.447 18.0529 32.8365 17.8 32.2 17.8H17.8Z",fill:"currentColor"},null,-1),G=r("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M34.6 23.8H15.4V29.8C15.4 30.4366 15.6529 31.047 16.103 31.4971C16.5531 31.9472 17.1635 32.2 17.8 32.2H32.2C32.8365 32.2 33.447 31.9472 33.8971 31.4971C34.3472 31.047 34.6 30.4366 34.6 29.8V23.8ZM17.8 28.6C17.8 28.2818 17.9265 27.9766 18.1515 27.7515C18.3765 27.5265 18.6818 27.4 19 27.4H20.2C20.5183 27.4 20.8235 27.5265 21.0486 27.7515C21.2736 27.9766 21.4 28.2818 21.4 28.6C21.4 28.9183 21.2736 29.2235 21.0486 29.4486C20.8235 29.6736 20.5183 29.8 20.2 29.8H19C18.6818 29.8 18.3765 29.6736 18.1515 29.4486C17.9265 29.2235 17.8 28.9183 17.8 28.6ZM23.8 27.4C23.4818 27.4 23.1765 27.5265 22.9515 27.7515C22.7265 27.9766 22.6 28.2818 22.6 28.6C22.6 28.9183 22.7265 29.2235 22.9515 29.4486C23.1765 29.6736 23.4818 29.8 23.8 29.8H25C25.3183 29.8 25.6235 29.6736 25.8486 29.4486C26.0736 29.2235 26.2 28.9183 26.2 28.6C26.2 28.2818 26.0736 27.9766 25.8486 27.7515C25.6235 27.5265 25.3183 27.4 25 27.4H23.8Z",fill:"currentColor"},null,-1),O=[q,N,G],J={props:{colorClass:{type:String,default:"text-primary-500"}},setup(c){return(a,o)=>(m(),v("svg",{width:"50",height:"50",viewBox:"0 0 50 50",fill:"none",xmlns:"http://www.w3.org/2000/svg",class:$(c.colorClass)},O,2))}},{defineStore:R}=window.pinia,P=R({id:"dashboard",state:()=>({recentInvoices:[],recentEstimates:[],invoiceCount:0,estimateCount:0,paymentCount:0,totalDueAmount:[],isDashboardDataLoaded:!1}),actions:{loadData(c){const a=C();return new Promise((o,d)=>{V.get(`/api/v1/${a.companySlug}/customer/dashboard`,{data:c}).then(e=>{this.totalDueAmount=e.data.due_amount,this.estimateCount=e.data.estimate_count,this.invoiceCount=e.data.invoice_count,this.paymentCount=e.data.payment_count,this.recentInvoices=e.data.recentInvoices,this.recentEstimates=e.data.recentEstimates,a.getDashboardDataLoaded=!0,o(e)}).catch(e=>{Z(e),d(e)})})}}}),K={},Q={class:"flex items-center"};function U(c,a){const o=i("BaseContentPlaceholdersText"),d=i("BaseContentPlaceholdersBox"),e=i("BaseContentPlaceholders");return m(),h(e,{rounded:!0,class:"relative flex justify-between w-full p-3 bg-white rounded shadow lg:col-span-3 xl:p-4"},{default:s(()=>[r("div",null,[t(o,{class:"h-5 -mb-1 w-14 xl:mb-6 xl:h-7",lines:1}),t(o,{class:"h-3 w-28 xl:h-4",lines:1})]),r("div",Q,[t(d,{circle:!0,class:"w-10 h-10 xl:w-12 xl:h-12"})])]),_:1})}var W=k(K,[["render",U]]);const X={},Y={class:"flex items-center"};function ee(c,a){const o=i("BaseContentPlaceholdersText"),d=i("BaseContentPlaceholdersBox"),e=i("BaseContentPlaceholders");return m(),h(e,{rounded:!0,class:"relative flex justify-between w-full p-3 bg-white rounded shadow lg:col-span-2 xl:p-4"},{default:s(()=>[r("div",null,[t(o,{class:"w-12 h-5 -mb-1 xl:mb-6 xl:h-7",lines:1}),t(o,{class:"w-20 h-3 xl:h-4",lines:1})]),r("div",Y,[t(d,{circle:!0,class:"w-10 h-10 xl:w-12 xl:h-12"})])]),_:1})}var te=k(X,[["render",ee]]);const ae={class:"text-xl font-semibold leading-tight text-black xl:text-3xl"},se={class:"block mt-1 text-sm leading-tight text-gray-500 xl:text-lg"},oe={class:"flex items-center"},f={props:{iconComponent:{type:Object,required:!0},loading:{type:Boolean,default:!1},route:{type:Object,required:!0},label:{type:String,required:!0},large:{type:Boolean,default:!1}},setup(c){return(a,o)=>{const d=i("router-link");return c.loading?c.large?(m(),h(W,{key:1})):(m(),h(te,{key:2})):(m(),h(d,{key:0,class:$(["relative flex justify-between p-3 bg-white rounded shadow hover:bg-gray-50 xl:p-4 lg:col-span-2",{"lg:!col-span-3":c.large}]),to:c.route},{default:s(()=>[r("div",null,[r("span",ae,[F(a.$slots,"default")]),r("span",se,u(c.label),1)]),r("div",oe,[(m(),h(T(c.iconComponent),{class:"w-10 h-10 xl:w-12 xl:h-12"}))])]),_:3},8,["class","to"]))}}},ne={class:"grid gap-6 sm:grid-cols-2 lg:grid-cols-9 xl:gap-8"},le={setup(c){w("utils");const a=C(),o=P();return o.loadData(),(d,e)=>{const g=i("BaseFormatMoney");return m(),v("div",ne,[t(f,{"icon-component":I,loading:!n(a).getDashboardDataLoaded,route:{name:"invoices.dashboard"},large:!0,label:d.$t("dashboard.cards.due_amount")},{default:s(()=>[t(g,{amount:n(o).totalDueAmount,currency:n(a).currency},null,8,["amount","currency"])]),_:1},8,["loading","route","label"]),t(f,{"icon-component":L,loading:!n(a).getDashboardDataLoaded,route:{name:"invoices.dashboard"},label:d.$t("dashboard.cards.invoices")},{default:s(()=>[_(u(n(o).invoiceCount),1)]),_:1},8,["loading","route","label"]),t(f,{"icon-component":M,loading:!n(a).getDashboardDataLoaded,route:{name:"estimates.dashboard"},label:d.$t("dashboard.cards.estimates")},{default:s(()=>[_(u(n(o).estimateCount),1)]),_:1},8,["loading","route","label"]),t(f,{"icon-component":J,loading:!n(a).getDashboardDataLoaded,route:{name:"payments.dashboard"},label:d.$t("dashboard.cards.payments")},{default:s(()=>[_(u(n(o).paymentCount),1)]),_:1},8,["loading","route","label"])])}}},re={class:"grid grid-cols-1 gap-6 mt-10 xl:grid-cols-2"},ce={class:"due-invoices"},de={class:"relative z-10 flex items-center justify-between mb-3"},ie={class:"mb-0 text-xl font-semibold leading-normal"},ue={class:"recent-estimates"},me={class:"relative z-10 flex items-center justify-between mb-3"},_e={class:"mb-0 text-xl font-semibold leading-normal"},he={setup(c){const a=C(),o=P(),{tm:d,t:e}=z();w("utils"),A();const g=D(()=>[{key:"formattedDueDate",label:e("dashboard.recent_invoices_card.due_on")},{key:"invoice_number",label:e("invoices.number")},{key:"paid_status",label:e("invoices.status")},{key:"due_amount",label:e("dashboard.recent_invoices_card.amount_due")}]),j=D(()=>[{key:"formattedEstimateDate",label:e("dashboard.recent_estimate_card.date")},{key:"estimate_number",label:e("estimates.number")},{key:"status",label:e("estimates.status")},{key:"total",label:e("dashboard.recent_estimate_card.amount_due")}]);return(b,p)=>{const x=i("BaseButton"),y=i("router-link"),E=i("BasePaidStatusBadge"),B=i("BaseFormatMoney"),H=i("BaseEstimateStatusBadge");return m(),v("div",re,[r("div",ce,[r("div",de,[r("h6",ie,u(b.$t("dashboard.recent_invoices_card.title")),1),t(x,{size:"sm",variant:"primary-outline",onClick:p[0]||(p[0]=l=>b.$router.push({name:"invoices.dashboard"}))},{default:s(()=>[_(u(b.$t("dashboard.recent_invoices_card.view_all")),1)]),_:1})]),t(S,{data:n(o).recentInvoices,columns:n(g),loading:!n(a).getDashboardDataLoaded},{"cell-invoice_number":s(({row:l})=>[t(y,{to:{path:`/${n(a).companySlug}/customer/invoices/${l.data.id}/view`},class:"font-medium text-primary-500"},{default:s(()=>[_(u(l.data.invoice_number),1)]),_:2},1032,["to"])]),"cell-paid_status":s(({row:l})=>[t(E,{status:l.data.paid_status},{default:s(()=>[_(u(l.data.paid_status),1)]),_:2},1032,["status"])]),"cell-due_amount":s(({row:l})=>[t(B,{amount:l.data.due_amount,currency:n(a).currency},null,8,["amount","currency"])]),_:1},8,["data","columns","loading"])]),r("div",ue,[r("div",me,[r("h6",_e,u(b.$t("dashboard.recent_estimate_card.title")),1),t(x,{variant:"primary-outline",size:"sm",onClick:p[1]||(p[1]=l=>b.$router.push({name:"estimates.dashboard"}))},{default:s(()=>[_(u(b.$t("dashboard.recent_estimate_card.view_all")),1)]),_:1})]),t(S,{data:n(o).recentEstimates,columns:n(j),loading:!n(a).getDashboardDataLoaded},{"cell-estimate_number":s(({row:l})=>[t(y,{to:{path:`/${n(a).companySlug}/customer/estimates/${l.data.id}/view`},class:"font-medium text-primary-500"},{default:s(()=>[_(u(l.data.estimate_number),1)]),_:2},1032,["to"])]),"cell-status":s(({row:l})=>[t(H,{status:l.data.status,class:"px-3 py-1"},{default:s(()=>[_(u(l.data.status),1)]),_:2},1032,["status"])]),"cell-total":s(({row:l})=>[t(B,{amount:l.data.total,currency:n(a).currency},null,8,["amount","currency"])]),_:1},8,["data","columns","loading"])])])}}},xe={setup(c){return(a,o)=>{const d=i("BasePage");return m(),h(d,null,{default:s(()=>[t(le),t(he)]),_:1})}}};export{xe as default}; +import{D as I,_ as L,a as M}from"./EstimateIcon.8ca6d05b.js";import{o as m,e as v,m as $,h as r,a as V,r as i,l as h,w as s,f as t,g as F,t as u,aj as T,ah as w,u as n,i as _,J as z,G as A,k as D}from"./vendor.01d0adc5.js";import{u as C}from"./global.ab8f317c.js";import{h as Z}from"./auth.0e030165.js";import{_ as k}from"./main.24f7a84b.js";import S from"./BaseTable.ab76526e.js";const q=r("circle",{cx:"25",cy:"25",r:"25",fill:"#EAF1FB"},null,-1),N=r("path",{d:"M17.8 17.8C17.1635 17.8 16.5531 18.0529 16.103 18.503C15.6529 18.9531 15.4 19.5635 15.4 20.2V21.4H34.6V20.2C34.6 19.5635 34.3472 18.9531 33.8971 18.503C33.447 18.0529 32.8365 17.8 32.2 17.8H17.8Z",fill:"currentColor"},null,-1),G=r("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M34.6 23.8H15.4V29.8C15.4 30.4366 15.6529 31.047 16.103 31.4971C16.5531 31.9472 17.1635 32.2 17.8 32.2H32.2C32.8365 32.2 33.447 31.9472 33.8971 31.4971C34.3472 31.047 34.6 30.4366 34.6 29.8V23.8ZM17.8 28.6C17.8 28.2818 17.9265 27.9766 18.1515 27.7515C18.3765 27.5265 18.6818 27.4 19 27.4H20.2C20.5183 27.4 20.8235 27.5265 21.0486 27.7515C21.2736 27.9766 21.4 28.2818 21.4 28.6C21.4 28.9183 21.2736 29.2235 21.0486 29.4486C20.8235 29.6736 20.5183 29.8 20.2 29.8H19C18.6818 29.8 18.3765 29.6736 18.1515 29.4486C17.9265 29.2235 17.8 28.9183 17.8 28.6ZM23.8 27.4C23.4818 27.4 23.1765 27.5265 22.9515 27.7515C22.7265 27.9766 22.6 28.2818 22.6 28.6C22.6 28.9183 22.7265 29.2235 22.9515 29.4486C23.1765 29.6736 23.4818 29.8 23.8 29.8H25C25.3183 29.8 25.6235 29.6736 25.8486 29.4486C26.0736 29.2235 26.2 28.9183 26.2 28.6C26.2 28.2818 26.0736 27.9766 25.8486 27.7515C25.6235 27.5265 25.3183 27.4 25 27.4H23.8Z",fill:"currentColor"},null,-1),O=[q,N,G],J={props:{colorClass:{type:String,default:"text-primary-500"}},setup(c){return(a,o)=>(m(),v("svg",{width:"50",height:"50",viewBox:"0 0 50 50",fill:"none",xmlns:"http://www.w3.org/2000/svg",class:$(c.colorClass)},O,2))}},{defineStore:R}=window.pinia,P=R({id:"dashboard",state:()=>({recentInvoices:[],recentEstimates:[],invoiceCount:0,estimateCount:0,paymentCount:0,totalDueAmount:[],isDashboardDataLoaded:!1}),actions:{loadData(c){const a=C();return new Promise((o,d)=>{V.get(`/api/v1/${a.companySlug}/customer/dashboard`,{data:c}).then(e=>{this.totalDueAmount=e.data.due_amount,this.estimateCount=e.data.estimate_count,this.invoiceCount=e.data.invoice_count,this.paymentCount=e.data.payment_count,this.recentInvoices=e.data.recentInvoices,this.recentEstimates=e.data.recentEstimates,a.getDashboardDataLoaded=!0,o(e)}).catch(e=>{Z(e),d(e)})})}}}),K={},Q={class:"flex items-center"};function U(c,a){const o=i("BaseContentPlaceholdersText"),d=i("BaseContentPlaceholdersBox"),e=i("BaseContentPlaceholders");return m(),h(e,{rounded:!0,class:"relative flex justify-between w-full p-3 bg-white rounded shadow lg:col-span-3 xl:p-4"},{default:s(()=>[r("div",null,[t(o,{class:"h-5 -mb-1 w-14 xl:mb-6 xl:h-7",lines:1}),t(o,{class:"h-3 w-28 xl:h-4",lines:1})]),r("div",Q,[t(d,{circle:!0,class:"w-10 h-10 xl:w-12 xl:h-12"})])]),_:1})}var W=k(K,[["render",U]]);const X={},Y={class:"flex items-center"};function ee(c,a){const o=i("BaseContentPlaceholdersText"),d=i("BaseContentPlaceholdersBox"),e=i("BaseContentPlaceholders");return m(),h(e,{rounded:!0,class:"relative flex justify-between w-full p-3 bg-white rounded shadow lg:col-span-2 xl:p-4"},{default:s(()=>[r("div",null,[t(o,{class:"w-12 h-5 -mb-1 xl:mb-6 xl:h-7",lines:1}),t(o,{class:"w-20 h-3 xl:h-4",lines:1})]),r("div",Y,[t(d,{circle:!0,class:"w-10 h-10 xl:w-12 xl:h-12"})])]),_:1})}var te=k(X,[["render",ee]]);const ae={class:"text-xl font-semibold leading-tight text-black xl:text-3xl"},se={class:"block mt-1 text-sm leading-tight text-gray-500 xl:text-lg"},oe={class:"flex items-center"},f={props:{iconComponent:{type:Object,required:!0},loading:{type:Boolean,default:!1},route:{type:Object,required:!0},label:{type:String,required:!0},large:{type:Boolean,default:!1}},setup(c){return(a,o)=>{const d=i("router-link");return c.loading?c.large?(m(),h(W,{key:1})):(m(),h(te,{key:2})):(m(),h(d,{key:0,class:$(["relative flex justify-between p-3 bg-white rounded shadow hover:bg-gray-50 xl:p-4 lg:col-span-2",{"lg:!col-span-3":c.large}]),to:c.route},{default:s(()=>[r("div",null,[r("span",ae,[F(a.$slots,"default")]),r("span",se,u(c.label),1)]),r("div",oe,[(m(),h(T(c.iconComponent),{class:"w-10 h-10 xl:w-12 xl:h-12"}))])]),_:3},8,["class","to"]))}}},ne={class:"grid gap-6 sm:grid-cols-2 lg:grid-cols-9 xl:gap-8"},le={setup(c){w("utils");const a=C(),o=P();return o.loadData(),(d,e)=>{const g=i("BaseFormatMoney");return m(),v("div",ne,[t(f,{"icon-component":I,loading:!n(a).getDashboardDataLoaded,route:{name:"invoices.dashboard"},large:!0,label:d.$t("dashboard.cards.due_amount")},{default:s(()=>[t(g,{amount:n(o).totalDueAmount,currency:n(a).currency},null,8,["amount","currency"])]),_:1},8,["loading","route","label"]),t(f,{"icon-component":L,loading:!n(a).getDashboardDataLoaded,route:{name:"invoices.dashboard"},label:d.$t("dashboard.cards.invoices")},{default:s(()=>[_(u(n(o).invoiceCount),1)]),_:1},8,["loading","route","label"]),t(f,{"icon-component":M,loading:!n(a).getDashboardDataLoaded,route:{name:"estimates.dashboard"},label:d.$t("dashboard.cards.estimates")},{default:s(()=>[_(u(n(o).estimateCount),1)]),_:1},8,["loading","route","label"]),t(f,{"icon-component":J,loading:!n(a).getDashboardDataLoaded,route:{name:"payments.dashboard"},label:d.$t("dashboard.cards.payments")},{default:s(()=>[_(u(n(o).paymentCount),1)]),_:1},8,["loading","route","label"])])}}},re={class:"grid grid-cols-1 gap-6 mt-10 xl:grid-cols-2"},ce={class:"due-invoices"},de={class:"relative z-10 flex items-center justify-between mb-3"},ie={class:"mb-0 text-xl font-semibold leading-normal"},ue={class:"recent-estimates"},me={class:"relative z-10 flex items-center justify-between mb-3"},_e={class:"mb-0 text-xl font-semibold leading-normal"},he={setup(c){const a=C(),o=P(),{tm:d,t:e}=z();w("utils"),A();const g=D(()=>[{key:"formattedDueDate",label:e("dashboard.recent_invoices_card.due_on")},{key:"invoice_number",label:e("invoices.number")},{key:"paid_status",label:e("invoices.status")},{key:"due_amount",label:e("dashboard.recent_invoices_card.amount_due")}]),j=D(()=>[{key:"formattedEstimateDate",label:e("dashboard.recent_estimate_card.date")},{key:"estimate_number",label:e("estimates.number")},{key:"status",label:e("estimates.status")},{key:"total",label:e("dashboard.recent_estimate_card.amount_due")}]);return(b,p)=>{const x=i("BaseButton"),y=i("router-link"),E=i("BasePaidStatusBadge"),B=i("BaseFormatMoney"),H=i("BaseEstimateStatusBadge");return m(),v("div",re,[r("div",ce,[r("div",de,[r("h6",ie,u(b.$t("dashboard.recent_invoices_card.title")),1),t(x,{size:"sm",variant:"primary-outline",onClick:p[0]||(p[0]=l=>b.$router.push({name:"invoices.dashboard"}))},{default:s(()=>[_(u(b.$t("dashboard.recent_invoices_card.view_all")),1)]),_:1})]),t(S,{data:n(o).recentInvoices,columns:n(g),loading:!n(a).getDashboardDataLoaded},{"cell-invoice_number":s(({row:l})=>[t(y,{to:{path:`/${n(a).companySlug}/customer/invoices/${l.data.id}/view`},class:"font-medium text-primary-500"},{default:s(()=>[_(u(l.data.invoice_number),1)]),_:2},1032,["to"])]),"cell-paid_status":s(({row:l})=>[t(E,{status:l.data.paid_status},{default:s(()=>[_(u(l.data.paid_status),1)]),_:2},1032,["status"])]),"cell-due_amount":s(({row:l})=>[t(B,{amount:l.data.due_amount,currency:n(a).currency},null,8,["amount","currency"])]),_:1},8,["data","columns","loading"])]),r("div",ue,[r("div",me,[r("h6",_e,u(b.$t("dashboard.recent_estimate_card.title")),1),t(x,{variant:"primary-outline",size:"sm",onClick:p[1]||(p[1]=l=>b.$router.push({name:"estimates.dashboard"}))},{default:s(()=>[_(u(b.$t("dashboard.recent_estimate_card.view_all")),1)]),_:1})]),t(S,{data:n(o).recentEstimates,columns:n(j),loading:!n(a).getDashboardDataLoaded},{"cell-estimate_number":s(({row:l})=>[t(y,{to:{path:`/${n(a).companySlug}/customer/estimates/${l.data.id}/view`},class:"font-medium text-primary-500"},{default:s(()=>[_(u(l.data.estimate_number),1)]),_:2},1032,["to"])]),"cell-status":s(({row:l})=>[t(H,{status:l.data.status,class:"px-3 py-1"},{default:s(()=>[_(u(l.data.status),1)]),_:2},1032,["status"])]),"cell-total":s(({row:l})=>[t(B,{amount:l.data.total,currency:n(a).currency},null,8,["amount","currency"])]),_:1},8,["data","columns","loading"])])])}}},xe={setup(c){return(a,o)=>{const d=i("BasePage");return m(),h(d,null,{default:s(()=>[t(le),t(he)]),_:1})}}};export{xe as default}; diff --git a/public/build/assets/Dashboard.bdf9de48.js b/public/build/assets/Dashboard.f077f144.js similarity index 98% rename from public/build/assets/Dashboard.bdf9de48.js rename to public/build/assets/Dashboard.f077f144.js index 7ced3b9e9..0e7a6e626 100644 --- a/public/build/assets/Dashboard.bdf9de48.js +++ b/public/build/assets/Dashboard.f077f144.js @@ -1 +1 @@ -import{D as O,_ as L,a as F}from"./EstimateIcon.1f3b368d.js";import{o as _,e as v,m as j,h as t,r as c,l as x,w as r,f as e,g as R,t as m,aj as W,a as z,d as q,ah as A,u as s,i as y,B as $,C as H,J as U,k as V,V as M,G as Z,aN as G,D as J}from"./vendor.01d0adc5.js";import{_ as I,h as Y,b as N,e as D,g as h}from"./main.75722495.js";import{_ as K}from"./LineChart.a92f3bea.js";import{_ as Q}from"./InvoiceIndexDropdown.430bc329.js";import{_ as X}from"./EstimateIndexDropdown.4eab32d4.js";const tt=t("circle",{cx:"25",cy:"25",r:"25",fill:"#EAF1FB"},null,-1),et=t("path",{d:"M28.2656 23.0547C27.3021 24.0182 26.1302 24.5 24.75 24.5C23.3698 24.5 22.1849 24.0182 21.1953 23.0547C20.2318 22.0651 19.75 20.8802 19.75 19.5C19.75 18.1198 20.2318 16.9479 21.1953 15.9844C22.1849 14.9948 23.3698 14.5 24.75 14.5C26.1302 14.5 27.3021 14.9948 28.2656 15.9844C29.2552 16.9479 29.75 18.1198 29.75 19.5C29.75 20.8802 29.2552 22.0651 28.2656 23.0547ZM28.2656 25.75C29.6979 25.75 30.9219 26.2708 31.9375 27.3125C32.9792 28.3281 33.5 29.5521 33.5 30.9844V32.625C33.5 33.1458 33.3177 33.5885 32.9531 33.9531C32.5885 34.3177 32.1458 34.5 31.625 34.5H17.875C17.3542 34.5 16.9115 34.3177 16.5469 33.9531C16.1823 33.5885 16 33.1458 16 32.625V30.9844C16 29.5521 16.5078 28.3281 17.5234 27.3125C18.5651 26.2708 19.8021 25.75 21.2344 25.75H21.8984C22.8099 26.1667 23.7604 26.375 24.75 26.375C25.7396 26.375 26.6901 26.1667 27.6016 25.75H28.2656Z",fill:"currentColor"},null,-1),at=[tt,et],st={props:{colorClass:{type:String,default:"text-primary-500"}},setup(i){return(o,a)=>(_(),v("svg",{width:"50",height:"50",viewBox:"0 0 50 50",class:j(i.colorClass),fill:"none",xmlns:"http://www.w3.org/2000/svg"},at,2))}},ot={},lt={class:"flex items-center"};function nt(i,o){const a=c("BaseContentPlaceholdersText"),n=c("BaseContentPlaceholdersBox"),d=c("BaseContentPlaceholders");return _(),x(d,{rounded:!0,class:"relative flex justify-between w-full p-3 bg-white rounded shadow lg:col-span-3 xl:p-4"},{default:r(()=>[t("div",null,[e(a,{class:"h-5 -mb-1 w-14 xl:mb-6 xl:h-7",lines:1}),e(a,{class:"h-3 w-28 xl:h-4",lines:1})]),t("div",lt,[e(n,{circle:!0,class:"w-10 h-10 xl:w-12 xl:h-12"})])]),_:1})}var ct=I(ot,[["render",nt]]);const rt={},it={class:"flex items-center"};function dt(i,o){const a=c("BaseContentPlaceholdersText"),n=c("BaseContentPlaceholdersBox"),d=c("BaseContentPlaceholders");return _(),x(d,{rounded:!0,class:"relative flex justify-between w-full p-3 bg-white rounded shadow lg:col-span-2 xl:p-4"},{default:r(()=>[t("div",null,[e(a,{class:"w-12 h-5 -mb-1 xl:mb-6 xl:h-7",lines:1}),e(a,{class:"w-20 h-3 xl:h-4",lines:1})]),t("div",it,[e(n,{circle:!0,class:"w-10 h-10 xl:w-12 xl:h-12"})])]),_:1})}var ut=I(rt,[["render",dt]]);const mt={class:"text-xl font-semibold leading-tight text-black xl:text-3xl"},_t={class:"block mt-1 text-sm leading-tight text-gray-500 xl:text-lg"},ht={class:"flex items-center"},B={props:{iconComponent:{type:Object,required:!0},loading:{type:Boolean,default:!1},route:{type:String,required:!0},label:{type:String,required:!0},large:{type:Boolean,default:!1}},setup(i){return(o,a)=>{const n=c("router-link");return i.loading?i.large?(_(),x(ct,{key:1})):(_(),x(ut,{key:2})):(_(),x(n,{key:0,class:j(["relative flex justify-between p-3 bg-white rounded shadow hover:bg-gray-50 xl:p-4 lg:col-span-2",{"lg:!col-span-3":i.large}]),to:i.route},{default:r(()=>[t("div",null,[t("span",mt,[R(o.$slots,"default")]),t("span",_t,m(i.label),1)]),t("div",ht,[(_(),x(W(i.iconComponent),{class:"w-10 h-10 xl:w-12 xl:h-12"}))])]),_:3},8,["class","to"]))}}},T=(i=!1)=>(i?window.pinia.defineStore:q)({id:"dashboard",state:()=>({stats:{totalAmountDue:0,totalCustomerCount:0,totalInvoiceCount:0,totalEstimateCount:0},chartData:{months:[],invoiceTotals:[],expenseTotals:[],receiptTotals:[],netIncomeTotals:[]},totalSales:null,totalReceipts:null,totalExpenses:null,totalNetIncome:null,recentDueInvoices:[],recentEstimates:[],isDashboardDataLoaded:!1}),actions:{loadData(a){return new Promise((n,d)=>{z.get("/api/v1/dashboard",{params:a}).then(l=>{this.stats.totalAmountDue=l.data.total_amount_due,this.stats.totalCustomerCount=l.data.total_customer_count,this.stats.totalInvoiceCount=l.data.total_invoice_count,this.stats.totalEstimateCount=l.data.total_estimate_count,this.chartData&&l.data.chart_data&&(this.chartData.months=l.data.chart_data.months,this.chartData.invoiceTotals=l.data.chart_data.invoice_totals,this.chartData.expenseTotals=l.data.chart_data.expense_totals,this.chartData.receiptTotals=l.data.chart_data.receipt_totals,this.chartData.netIncomeTotals=l.data.chart_data.net_income_totals),this.totalSales=l.data.total_sales,this.totalReceipts=l.data.total_receipts,this.totalExpenses=l.data.total_expenses,this.totalNetIncome=l.data.total_net_income,this.recentDueInvoices=l.data.recent_due_invoices,this.recentEstimates=l.data.recent_estimates,this.isDashboardDataLoaded=!0,n(l)}).catch(l=>{Y(l),d(l)})})}}})(),pt={class:"grid gap-6 sm:grid-cols-2 lg:grid-cols-9 xl:gap-8"},bt={setup(i){A("utils");const o=T(),a=N(),n=D();return(d,l)=>{const f=c("BaseFormatMoney");return _(),v("div",pt,[e(B,{"icon-component":O,loading:!s(o).isDashboardDataLoaded,route:s(n).hasAbilities(s(h).VIEW_INVOICE)?"/admin/invoices":"",large:!0,label:d.$t("dashboard.cards.due_amount")},{default:r(()=>[e(f,{amount:s(o).stats.totalAmountDue,currency:s(a).selectedCompanyCurrency},null,8,["amount","currency"])]),_:1},8,["loading","route","label"]),e(B,{"icon-component":st,loading:!s(o).isDashboardDataLoaded,route:s(n).hasAbilities(s(h).VIEW_CUSTOMER)?"/admin/customers":"",label:d.$t("dashboard.cards.customers")},{default:r(()=>[y(m(s(o).stats.totalCustomerCount),1)]),_:1},8,["loading","route","label"]),e(B,{"icon-component":L,loading:!s(o).isDashboardDataLoaded,route:s(n).hasAbilities(s(h).VIEW_INVOICE)?"/admin/invoices":"",label:d.$t("dashboard.cards.invoices")},{default:r(()=>[y(m(s(o).stats.totalInvoiceCount),1)]),_:1},8,["loading","route","label"]),e(B,{"icon-component":F,loading:!s(o).isDashboardDataLoaded,route:s(n).hasAbilities(s(h).VIEW_ESTIMATE)?"/admin/estimates":"",label:d.$t("dashboard.cards.estimates")},{default:r(()=>[y(m(s(o).stats.totalEstimateCount),1)]),_:1},8,["loading","route","label"])])}}},xt={},ft={class:"grid grid-cols-1 col-span-10 px-4 py-5 lg:col-span-7 xl:col-span-8 sm:p-8"},gt={class:"flex items-center justify-between mb-2 xl:mb-4"},yt={class:"grid grid-cols-3 col-span-10 text-center border-t border-l border-gray-200 border-solid lg:border-t-0 lg:text-right lg:col-span-3 xl:col-span-2 lg:grid-cols-1"},Ct={class:"flex flex-col items-center justify-center p-6 lg:justify-end lg:items-end"},vt={class:"flex flex-col items-center justify-center p-6 lg:justify-end lg:items-end"},wt={class:"flex flex-col items-center justify-center p-6 lg:justify-end lg:items-end"},$t={class:"flex flex-col items-center justify-center col-span-3 p-6 border-t border-gray-200 border-solid lg:justify-end lg:items-end lg:col-span-1"};function Dt(i,o){const a=c("BaseContentPlaceholdersText"),n=c("BaseContentPlaceholdersBox"),d=c("BaseContentPlaceholders");return _(),x(d,{class:"grid grid-cols-10 mt-8 bg-white rounded shadow"},{default:r(()=>[t("div",ft,[t("div",gt,[e(a,{class:"h-10 w-36",lines:1}),e(a,{class:"h-10 w-36 !mt-0",lines:1})]),e(n,{class:"h-80 xl:h-72 sm:w-full"})]),t("div",yt,[t("div",Ct,[e(a,{class:"h-3 w-14 xl:h-4",lines:1}),e(a,{class:"w-20 h-5 xl:h-6",lines:1})]),t("div",vt,[e(a,{class:"h-3 w-14 xl:h-4",lines:1}),e(a,{class:"w-20 h-5 xl:h-6",lines:1})]),t("div",wt,[e(a,{class:"h-3 w-14 xl:h-4",lines:1}),e(a,{class:"w-20 h-5 xl:h-6",lines:1})]),t("div",$t,[e(a,{class:"h-3 w-14 xl:h-4",lines:1}),e(a,{class:"w-20 h-5 xl:h-6",lines:1})])])]),_:1})}var Bt=I(xt,[["render",Dt]]);const Et={key:0,class:"grid grid-cols-10 mt-8 bg-white rounded shadow"},It={class:"grid grid-cols-1 col-span-10 px-4 py-5 lg:col-span-7 xl:col-span-8 sm:p-6"},Tt={class:"flex justify-between mt-1 mb-4 flex-col md:flex-row"},St={class:"flex items-center sw-section-title h-10"},kt={class:"w-full my-2 md:m-0 md:w-40 h-10"},Pt={class:"grid grid-cols-3 col-span-10 text-center border-t border-l border-gray-200 border-solid lg:border-t-0 lg:text-right lg:col-span-3 xl:col-span-2 lg:grid-cols-1"},jt={class:"p-6"},At={class:"text-xs leading-5 lg:text-sm"},Vt=t("br",null,null,-1),Mt={class:"block mt-1 text-xl font-semibold leading-8 lg:text-2xl"},Nt={class:"p-6"},Ot={class:"text-xs leading-5 lg:text-sm"},Lt=t("br",null,null,-1),Ft={class:"block mt-1 text-xl font-semibold leading-8 lg:text-2xl text-green-400"},Rt={class:"p-6"},Wt={class:"text-xs leading-5 lg:text-sm"},zt=t("br",null,null,-1),qt={class:"block mt-1 text-xl font-semibold leading-8 lg:text-2xl text-red-400"},Ht={class:"col-span-3 p-6 border-t border-gray-200 border-solid lg:col-span-1"},Ut={class:"text-xs leading-5 lg:text-sm"},Zt=t("br",null,null,-1),Gt={class:"block mt-1 text-xl font-semibold leading-8 lg:text-2xl text-primary-500"},Jt={setup(i){const o=T(),a=N();A("utils");const n=D(),d=$(["This year","Previous year"]),l=$("This year");H(l,p=>{p==="Previous year"?f({previous_year:!0}):f()},{immediate:!0});async function f(p){n.hasAbilities(h.DASHBOARD)&&await o.loadData(p)}return(p,C)=>{const E=c("BaseIcon"),g=c("BaseMultiselect"),b=c("BaseFormatMoney");return _(),v("div",null,[s(o).isDashboardDataLoaded?(_(),v("div",Et,[t("div",It,[t("div",Tt,[t("h6",St,[e(E,{name:"ChartSquareBarIcon",class:"text-primary-400 mr-1"}),y(" "+m(p.$t("dashboard.monthly_chart.title")),1)]),t("div",kt,[e(g,{modelValue:l.value,"onUpdate:modelValue":C[0]||(C[0]=w=>l.value=w),options:d.value,"allow-empty":!1,"show-labels":!1,placeholder:p.$t("dashboard.select_year"),"can-deselect":!1},null,8,["modelValue","options","placeholder"])])]),e(K,{invoices:s(o).chartData.invoiceTotals,expenses:s(o).chartData.expenseTotals,receipts:s(o).chartData.receiptTotals,income:s(o).chartData.netIncomeTotals,labels:s(o).chartData.months,class:"sm:w-full"},null,8,["invoices","expenses","receipts","income","labels"])]),t("div",Pt,[t("div",jt,[t("span",At,m(p.$t("dashboard.chart_info.total_sales")),1),Vt,t("span",Mt,[e(b,{amount:s(o).totalSales,currency:s(a).selectedCompanyCurrency},null,8,["amount","currency"])])]),t("div",Nt,[t("span",Ot,m(p.$t("dashboard.chart_info.total_receipts")),1),Lt,t("span",Ft,[e(b,{amount:s(o).totalReceipts,currency:s(a).selectedCompanyCurrency},null,8,["amount","currency"])])]),t("div",Rt,[t("span",Wt,m(p.$t("dashboard.chart_info.total_expense")),1),zt,t("span",qt,[e(b,{amount:s(o).totalExpenses,currency:s(a).selectedCompanyCurrency},null,8,["amount","currency"])])]),t("div",Ht,[t("span",Ut,m(p.$t("dashboard.chart_info.net_income")),1),Zt,t("span",Gt,[e(b,{amount:s(o).totalNetIncome,currency:s(a).selectedCompanyCurrency},null,8,["amount","currency"])])])])])):(_(),x(Bt,{key:1}))])}}},Yt={class:"grid grid-cols-1 gap-6 mt-10 xl:grid-cols-2"},Kt={class:"due-invoices"},Qt={class:"relative z-10 flex items-center justify-between mb-3"},Xt={class:"mb-0 text-xl font-semibold leading-normal"},te={class:"recent-estimates"},ee={class:"relative z-10 flex items-center justify-between mb-3"},ae={class:"mb-0 text-xl font-semibold leading-normal"},se={setup(i){const o=T(),{t:a}=U(),n=D(),d=$(null),l=$(null),f=V(()=>[{key:"formattedDueDate",label:a("dashboard.recent_invoices_card.due_on")},{key:"user",label:a("dashboard.recent_invoices_card.customer")},{key:"due_amount",label:a("dashboard.recent_invoices_card.amount_due")},{key:"actions",tdClass:"text-right text-sm font-medium pl-0",thClass:"text-right pl-0",sortable:!1}]),p=V(()=>[{key:"formattedEstimateDate",label:a("dashboard.recent_estimate_card.date")},{key:"user",label:a("dashboard.recent_estimate_card.customer")},{key:"total",label:a("dashboard.recent_estimate_card.amount_due")},{key:"actions",tdClass:"text-right text-sm font-medium pl-0",thClass:"text-right pl-0",sortable:!1}]);function C(){return n.hasAbilities([h.DELETE_INVOICE,h.EDIT_INVOICE,h.VIEW_INVOICE,h.SEND_INVOICE])}function E(){return n.hasAbilities([h.CREATE_ESTIMATE,h.EDIT_ESTIMATE,h.VIEW_ESTIMATE,h.SEND_ESTIMATE])}return(g,b)=>{const w=c("BaseButton"),S=c("router-link"),k=c("BaseFormatMoney"),P=c("BaseTable");return _(),v("div",null,[t("div",Yt,[t("div",Kt,[t("div",Qt,[t("h6",Xt,m(g.$t("dashboard.recent_invoices_card.title")),1),e(w,{size:"sm",variant:"primary-outline",onClick:b[0]||(b[0]=u=>g.$router.push("/admin/invoices"))},{default:r(()=>[y(m(g.$t("dashboard.recent_invoices_card.view_all")),1)]),_:1})]),e(P,{data:s(o).recentDueInvoices,columns:s(f),loading:!s(o).isDashboardDataLoaded},M({"cell-user":r(({row:u})=>[e(S,{to:{path:`invoices/${u.data.id}/view`},class:"font-medium text-primary-500"},{default:r(()=>[y(m(u.data.customer.name),1)]),_:2},1032,["to"])]),"cell-due_amount":r(({row:u})=>[e(k,{amount:u.data.due_amount,currency:u.data.customer.currency},null,8,["amount","currency"])]),_:2},[C()?{name:"cell-actions",fn:r(({row:u})=>[e(Q,{row:u.data,table:d.value},null,8,["row","table"])])}:void 0]),1032,["data","columns","loading"])]),t("div",te,[t("div",ee,[t("h6",ae,m(g.$t("dashboard.recent_estimate_card.title")),1),e(w,{variant:"primary-outline",size:"sm",onClick:b[1]||(b[1]=u=>g.$router.push("/admin/estimates"))},{default:r(()=>[y(m(g.$t("dashboard.recent_estimate_card.view_all")),1)]),_:1})]),e(P,{data:s(o).recentEstimates,columns:s(p),loading:!s(o).isDashboardDataLoaded},M({"cell-user":r(({row:u})=>[e(S,{to:{path:`estimates/${u.data.id}/view`},class:"font-medium text-primary-500"},{default:r(()=>[y(m(u.data.customer.name),1)]),_:2},1032,["to"])]),"cell-total":r(({row:u})=>[e(k,{amount:u.data.total,currency:u.data.customer.currency},null,8,["amount","currency"])]),_:2},[E()?{name:"cell-actions",fn:r(({row:u})=>[e(X,{row:u,table:l.value},null,8,["row","table"])])}:void 0]),1032,["data","columns","loading"])])])])}}},de={setup(i){const o=Z(),a=D(),n=G();return J(()=>{o.meta.ability&&!a.hasAbilities(o.meta.ability)?n.push({name:"account.settings"}):o.meta.isOwner&&!a.currentUser.is_owner&&n.push({name:"account.settings"})}),(d,l)=>{const f=c("BasePage");return _(),x(f,null,{default:r(()=>[e(bt),e(Jt),e(se)]),_:1})}}};export{de as default}; +import{D as O,_ as L,a as F}from"./EstimateIcon.8ca6d05b.js";import{o as _,e as v,m as j,h as t,r as c,l as x,w as r,f as e,g as R,t as m,aj as W,a as z,d as q,ah as A,u as s,i as y,B as $,C as H,J as U,k as V,V as M,G as Z,aN as G,D as J}from"./vendor.01d0adc5.js";import{_ as I,h as Y,b as N,e as D,g as h}from"./main.24f7a84b.js";import{_ as K}from"./LineChart.f87804e4.js";import{_ as Q}from"./InvoiceIndexDropdown.a18e118f.js";import{_ as X}from"./EstimateIndexDropdown.7244b3a5.js";const tt=t("circle",{cx:"25",cy:"25",r:"25",fill:"#EAF1FB"},null,-1),et=t("path",{d:"M28.2656 23.0547C27.3021 24.0182 26.1302 24.5 24.75 24.5C23.3698 24.5 22.1849 24.0182 21.1953 23.0547C20.2318 22.0651 19.75 20.8802 19.75 19.5C19.75 18.1198 20.2318 16.9479 21.1953 15.9844C22.1849 14.9948 23.3698 14.5 24.75 14.5C26.1302 14.5 27.3021 14.9948 28.2656 15.9844C29.2552 16.9479 29.75 18.1198 29.75 19.5C29.75 20.8802 29.2552 22.0651 28.2656 23.0547ZM28.2656 25.75C29.6979 25.75 30.9219 26.2708 31.9375 27.3125C32.9792 28.3281 33.5 29.5521 33.5 30.9844V32.625C33.5 33.1458 33.3177 33.5885 32.9531 33.9531C32.5885 34.3177 32.1458 34.5 31.625 34.5H17.875C17.3542 34.5 16.9115 34.3177 16.5469 33.9531C16.1823 33.5885 16 33.1458 16 32.625V30.9844C16 29.5521 16.5078 28.3281 17.5234 27.3125C18.5651 26.2708 19.8021 25.75 21.2344 25.75H21.8984C22.8099 26.1667 23.7604 26.375 24.75 26.375C25.7396 26.375 26.6901 26.1667 27.6016 25.75H28.2656Z",fill:"currentColor"},null,-1),at=[tt,et],st={props:{colorClass:{type:String,default:"text-primary-500"}},setup(i){return(o,a)=>(_(),v("svg",{width:"50",height:"50",viewBox:"0 0 50 50",class:j(i.colorClass),fill:"none",xmlns:"http://www.w3.org/2000/svg"},at,2))}},ot={},lt={class:"flex items-center"};function nt(i,o){const a=c("BaseContentPlaceholdersText"),n=c("BaseContentPlaceholdersBox"),d=c("BaseContentPlaceholders");return _(),x(d,{rounded:!0,class:"relative flex justify-between w-full p-3 bg-white rounded shadow lg:col-span-3 xl:p-4"},{default:r(()=>[t("div",null,[e(a,{class:"h-5 -mb-1 w-14 xl:mb-6 xl:h-7",lines:1}),e(a,{class:"h-3 w-28 xl:h-4",lines:1})]),t("div",lt,[e(n,{circle:!0,class:"w-10 h-10 xl:w-12 xl:h-12"})])]),_:1})}var ct=I(ot,[["render",nt]]);const rt={},it={class:"flex items-center"};function dt(i,o){const a=c("BaseContentPlaceholdersText"),n=c("BaseContentPlaceholdersBox"),d=c("BaseContentPlaceholders");return _(),x(d,{rounded:!0,class:"relative flex justify-between w-full p-3 bg-white rounded shadow lg:col-span-2 xl:p-4"},{default:r(()=>[t("div",null,[e(a,{class:"w-12 h-5 -mb-1 xl:mb-6 xl:h-7",lines:1}),e(a,{class:"w-20 h-3 xl:h-4",lines:1})]),t("div",it,[e(n,{circle:!0,class:"w-10 h-10 xl:w-12 xl:h-12"})])]),_:1})}var ut=I(rt,[["render",dt]]);const mt={class:"text-xl font-semibold leading-tight text-black xl:text-3xl"},_t={class:"block mt-1 text-sm leading-tight text-gray-500 xl:text-lg"},ht={class:"flex items-center"},B={props:{iconComponent:{type:Object,required:!0},loading:{type:Boolean,default:!1},route:{type:String,required:!0},label:{type:String,required:!0},large:{type:Boolean,default:!1}},setup(i){return(o,a)=>{const n=c("router-link");return i.loading?i.large?(_(),x(ct,{key:1})):(_(),x(ut,{key:2})):(_(),x(n,{key:0,class:j(["relative flex justify-between p-3 bg-white rounded shadow hover:bg-gray-50 xl:p-4 lg:col-span-2",{"lg:!col-span-3":i.large}]),to:i.route},{default:r(()=>[t("div",null,[t("span",mt,[R(o.$slots,"default")]),t("span",_t,m(i.label),1)]),t("div",ht,[(_(),x(W(i.iconComponent),{class:"w-10 h-10 xl:w-12 xl:h-12"}))])]),_:3},8,["class","to"]))}}},T=(i=!1)=>(i?window.pinia.defineStore:q)({id:"dashboard",state:()=>({stats:{totalAmountDue:0,totalCustomerCount:0,totalInvoiceCount:0,totalEstimateCount:0},chartData:{months:[],invoiceTotals:[],expenseTotals:[],receiptTotals:[],netIncomeTotals:[]},totalSales:null,totalReceipts:null,totalExpenses:null,totalNetIncome:null,recentDueInvoices:[],recentEstimates:[],isDashboardDataLoaded:!1}),actions:{loadData(a){return new Promise((n,d)=>{z.get("/api/v1/dashboard",{params:a}).then(l=>{this.stats.totalAmountDue=l.data.total_amount_due,this.stats.totalCustomerCount=l.data.total_customer_count,this.stats.totalInvoiceCount=l.data.total_invoice_count,this.stats.totalEstimateCount=l.data.total_estimate_count,this.chartData&&l.data.chart_data&&(this.chartData.months=l.data.chart_data.months,this.chartData.invoiceTotals=l.data.chart_data.invoice_totals,this.chartData.expenseTotals=l.data.chart_data.expense_totals,this.chartData.receiptTotals=l.data.chart_data.receipt_totals,this.chartData.netIncomeTotals=l.data.chart_data.net_income_totals),this.totalSales=l.data.total_sales,this.totalReceipts=l.data.total_receipts,this.totalExpenses=l.data.total_expenses,this.totalNetIncome=l.data.total_net_income,this.recentDueInvoices=l.data.recent_due_invoices,this.recentEstimates=l.data.recent_estimates,this.isDashboardDataLoaded=!0,n(l)}).catch(l=>{Y(l),d(l)})})}}})(),pt={class:"grid gap-6 sm:grid-cols-2 lg:grid-cols-9 xl:gap-8"},bt={setup(i){A("utils");const o=T(),a=N(),n=D();return(d,l)=>{const f=c("BaseFormatMoney");return _(),v("div",pt,[e(B,{"icon-component":O,loading:!s(o).isDashboardDataLoaded,route:s(n).hasAbilities(s(h).VIEW_INVOICE)?"/admin/invoices":"",large:!0,label:d.$t("dashboard.cards.due_amount")},{default:r(()=>[e(f,{amount:s(o).stats.totalAmountDue,currency:s(a).selectedCompanyCurrency},null,8,["amount","currency"])]),_:1},8,["loading","route","label"]),e(B,{"icon-component":st,loading:!s(o).isDashboardDataLoaded,route:s(n).hasAbilities(s(h).VIEW_CUSTOMER)?"/admin/customers":"",label:d.$t("dashboard.cards.customers")},{default:r(()=>[y(m(s(o).stats.totalCustomerCount),1)]),_:1},8,["loading","route","label"]),e(B,{"icon-component":L,loading:!s(o).isDashboardDataLoaded,route:s(n).hasAbilities(s(h).VIEW_INVOICE)?"/admin/invoices":"",label:d.$t("dashboard.cards.invoices")},{default:r(()=>[y(m(s(o).stats.totalInvoiceCount),1)]),_:1},8,["loading","route","label"]),e(B,{"icon-component":F,loading:!s(o).isDashboardDataLoaded,route:s(n).hasAbilities(s(h).VIEW_ESTIMATE)?"/admin/estimates":"",label:d.$t("dashboard.cards.estimates")},{default:r(()=>[y(m(s(o).stats.totalEstimateCount),1)]),_:1},8,["loading","route","label"])])}}},xt={},ft={class:"grid grid-cols-1 col-span-10 px-4 py-5 lg:col-span-7 xl:col-span-8 sm:p-8"},gt={class:"flex items-center justify-between mb-2 xl:mb-4"},yt={class:"grid grid-cols-3 col-span-10 text-center border-t border-l border-gray-200 border-solid lg:border-t-0 lg:text-right lg:col-span-3 xl:col-span-2 lg:grid-cols-1"},Ct={class:"flex flex-col items-center justify-center p-6 lg:justify-end lg:items-end"},vt={class:"flex flex-col items-center justify-center p-6 lg:justify-end lg:items-end"},wt={class:"flex flex-col items-center justify-center p-6 lg:justify-end lg:items-end"},$t={class:"flex flex-col items-center justify-center col-span-3 p-6 border-t border-gray-200 border-solid lg:justify-end lg:items-end lg:col-span-1"};function Dt(i,o){const a=c("BaseContentPlaceholdersText"),n=c("BaseContentPlaceholdersBox"),d=c("BaseContentPlaceholders");return _(),x(d,{class:"grid grid-cols-10 mt-8 bg-white rounded shadow"},{default:r(()=>[t("div",ft,[t("div",gt,[e(a,{class:"h-10 w-36",lines:1}),e(a,{class:"h-10 w-36 !mt-0",lines:1})]),e(n,{class:"h-80 xl:h-72 sm:w-full"})]),t("div",yt,[t("div",Ct,[e(a,{class:"h-3 w-14 xl:h-4",lines:1}),e(a,{class:"w-20 h-5 xl:h-6",lines:1})]),t("div",vt,[e(a,{class:"h-3 w-14 xl:h-4",lines:1}),e(a,{class:"w-20 h-5 xl:h-6",lines:1})]),t("div",wt,[e(a,{class:"h-3 w-14 xl:h-4",lines:1}),e(a,{class:"w-20 h-5 xl:h-6",lines:1})]),t("div",$t,[e(a,{class:"h-3 w-14 xl:h-4",lines:1}),e(a,{class:"w-20 h-5 xl:h-6",lines:1})])])]),_:1})}var Bt=I(xt,[["render",Dt]]);const Et={key:0,class:"grid grid-cols-10 mt-8 bg-white rounded shadow"},It={class:"grid grid-cols-1 col-span-10 px-4 py-5 lg:col-span-7 xl:col-span-8 sm:p-6"},Tt={class:"flex justify-between mt-1 mb-4 flex-col md:flex-row"},St={class:"flex items-center sw-section-title h-10"},kt={class:"w-full my-2 md:m-0 md:w-40 h-10"},Pt={class:"grid grid-cols-3 col-span-10 text-center border-t border-l border-gray-200 border-solid lg:border-t-0 lg:text-right lg:col-span-3 xl:col-span-2 lg:grid-cols-1"},jt={class:"p-6"},At={class:"text-xs leading-5 lg:text-sm"},Vt=t("br",null,null,-1),Mt={class:"block mt-1 text-xl font-semibold leading-8 lg:text-2xl"},Nt={class:"p-6"},Ot={class:"text-xs leading-5 lg:text-sm"},Lt=t("br",null,null,-1),Ft={class:"block mt-1 text-xl font-semibold leading-8 lg:text-2xl text-green-400"},Rt={class:"p-6"},Wt={class:"text-xs leading-5 lg:text-sm"},zt=t("br",null,null,-1),qt={class:"block mt-1 text-xl font-semibold leading-8 lg:text-2xl text-red-400"},Ht={class:"col-span-3 p-6 border-t border-gray-200 border-solid lg:col-span-1"},Ut={class:"text-xs leading-5 lg:text-sm"},Zt=t("br",null,null,-1),Gt={class:"block mt-1 text-xl font-semibold leading-8 lg:text-2xl text-primary-500"},Jt={setup(i){const o=T(),a=N();A("utils");const n=D(),d=$(["This year","Previous year"]),l=$("This year");H(l,p=>{p==="Previous year"?f({previous_year:!0}):f()},{immediate:!0});async function f(p){n.hasAbilities(h.DASHBOARD)&&await o.loadData(p)}return(p,C)=>{const E=c("BaseIcon"),g=c("BaseMultiselect"),b=c("BaseFormatMoney");return _(),v("div",null,[s(o).isDashboardDataLoaded?(_(),v("div",Et,[t("div",It,[t("div",Tt,[t("h6",St,[e(E,{name:"ChartSquareBarIcon",class:"text-primary-400 mr-1"}),y(" "+m(p.$t("dashboard.monthly_chart.title")),1)]),t("div",kt,[e(g,{modelValue:l.value,"onUpdate:modelValue":C[0]||(C[0]=w=>l.value=w),options:d.value,"allow-empty":!1,"show-labels":!1,placeholder:p.$t("dashboard.select_year"),"can-deselect":!1},null,8,["modelValue","options","placeholder"])])]),e(K,{invoices:s(o).chartData.invoiceTotals,expenses:s(o).chartData.expenseTotals,receipts:s(o).chartData.receiptTotals,income:s(o).chartData.netIncomeTotals,labels:s(o).chartData.months,class:"sm:w-full"},null,8,["invoices","expenses","receipts","income","labels"])]),t("div",Pt,[t("div",jt,[t("span",At,m(p.$t("dashboard.chart_info.total_sales")),1),Vt,t("span",Mt,[e(b,{amount:s(o).totalSales,currency:s(a).selectedCompanyCurrency},null,8,["amount","currency"])])]),t("div",Nt,[t("span",Ot,m(p.$t("dashboard.chart_info.total_receipts")),1),Lt,t("span",Ft,[e(b,{amount:s(o).totalReceipts,currency:s(a).selectedCompanyCurrency},null,8,["amount","currency"])])]),t("div",Rt,[t("span",Wt,m(p.$t("dashboard.chart_info.total_expense")),1),zt,t("span",qt,[e(b,{amount:s(o).totalExpenses,currency:s(a).selectedCompanyCurrency},null,8,["amount","currency"])])]),t("div",Ht,[t("span",Ut,m(p.$t("dashboard.chart_info.net_income")),1),Zt,t("span",Gt,[e(b,{amount:s(o).totalNetIncome,currency:s(a).selectedCompanyCurrency},null,8,["amount","currency"])])])])])):(_(),x(Bt,{key:1}))])}}},Yt={class:"grid grid-cols-1 gap-6 mt-10 xl:grid-cols-2"},Kt={class:"due-invoices"},Qt={class:"relative z-10 flex items-center justify-between mb-3"},Xt={class:"mb-0 text-xl font-semibold leading-normal"},te={class:"recent-estimates"},ee={class:"relative z-10 flex items-center justify-between mb-3"},ae={class:"mb-0 text-xl font-semibold leading-normal"},se={setup(i){const o=T(),{t:a}=U(),n=D(),d=$(null),l=$(null),f=V(()=>[{key:"formattedDueDate",label:a("dashboard.recent_invoices_card.due_on")},{key:"user",label:a("dashboard.recent_invoices_card.customer")},{key:"due_amount",label:a("dashboard.recent_invoices_card.amount_due")},{key:"actions",tdClass:"text-right text-sm font-medium pl-0",thClass:"text-right pl-0",sortable:!1}]),p=V(()=>[{key:"formattedEstimateDate",label:a("dashboard.recent_estimate_card.date")},{key:"user",label:a("dashboard.recent_estimate_card.customer")},{key:"total",label:a("dashboard.recent_estimate_card.amount_due")},{key:"actions",tdClass:"text-right text-sm font-medium pl-0",thClass:"text-right pl-0",sortable:!1}]);function C(){return n.hasAbilities([h.DELETE_INVOICE,h.EDIT_INVOICE,h.VIEW_INVOICE,h.SEND_INVOICE])}function E(){return n.hasAbilities([h.CREATE_ESTIMATE,h.EDIT_ESTIMATE,h.VIEW_ESTIMATE,h.SEND_ESTIMATE])}return(g,b)=>{const w=c("BaseButton"),S=c("router-link"),k=c("BaseFormatMoney"),P=c("BaseTable");return _(),v("div",null,[t("div",Yt,[t("div",Kt,[t("div",Qt,[t("h6",Xt,m(g.$t("dashboard.recent_invoices_card.title")),1),e(w,{size:"sm",variant:"primary-outline",onClick:b[0]||(b[0]=u=>g.$router.push("/admin/invoices"))},{default:r(()=>[y(m(g.$t("dashboard.recent_invoices_card.view_all")),1)]),_:1})]),e(P,{data:s(o).recentDueInvoices,columns:s(f),loading:!s(o).isDashboardDataLoaded},M({"cell-user":r(({row:u})=>[e(S,{to:{path:`invoices/${u.data.id}/view`},class:"font-medium text-primary-500"},{default:r(()=>[y(m(u.data.customer.name),1)]),_:2},1032,["to"])]),"cell-due_amount":r(({row:u})=>[e(k,{amount:u.data.due_amount,currency:u.data.customer.currency},null,8,["amount","currency"])]),_:2},[C()?{name:"cell-actions",fn:r(({row:u})=>[e(Q,{row:u.data,table:d.value},null,8,["row","table"])])}:void 0]),1032,["data","columns","loading"])]),t("div",te,[t("div",ee,[t("h6",ae,m(g.$t("dashboard.recent_estimate_card.title")),1),e(w,{variant:"primary-outline",size:"sm",onClick:b[1]||(b[1]=u=>g.$router.push("/admin/estimates"))},{default:r(()=>[y(m(g.$t("dashboard.recent_estimate_card.view_all")),1)]),_:1})]),e(P,{data:s(o).recentEstimates,columns:s(p),loading:!s(o).isDashboardDataLoaded},M({"cell-user":r(({row:u})=>[e(S,{to:{path:`estimates/${u.data.id}/view`},class:"font-medium text-primary-500"},{default:r(()=>[y(m(u.data.customer.name),1)]),_:2},1032,["to"])]),"cell-total":r(({row:u})=>[e(k,{amount:u.data.total,currency:u.data.customer.currency},null,8,["amount","currency"])]),_:2},[E()?{name:"cell-actions",fn:r(({row:u})=>[e(X,{row:u,table:l.value},null,8,["row","table"])])}:void 0]),1032,["data","columns","loading"])])])])}}},de={setup(i){const o=Z(),a=D(),n=G();return J(()=>{o.meta.ability&&!a.hasAbilities(o.meta.ability)?n.push({name:"account.settings"}):o.meta.isOwner&&!a.currentUser.is_owner&&n.push({name:"account.settings"})}),(d,l)=>{const f=c("BasePage");return _(),x(f,null,{default:r(()=>[e(bt),e(Jt),e(se)]),_:1})}}};export{de as default}; diff --git a/public/build/assets/DragIcon.213b1d78.js b/public/build/assets/DragIcon.0a950eb9.js similarity index 99% rename from public/build/assets/DragIcon.213b1d78.js rename to public/build/assets/DragIcon.0a950eb9.js index abc883310..e840de526 100644 --- a/public/build/assets/DragIcon.213b1d78.js +++ b/public/build/assets/DragIcon.0a950eb9.js @@ -1,4 +1,4 @@ -import{aU as $r,aV as Br,aQ as Kr,aW as Hr,o as Wr,e as Xr,h as Yr}from"./vendor.01d0adc5.js";import{_ as Vr}from"./main.75722495.js";var gr={exports:{}};/**! +import{aU as $r,aV as Br,aQ as Kr,aW as Hr,o as Wr,e as Xr,h as Yr}from"./vendor.01d0adc5.js";import{_ as Vr}from"./main.24f7a84b.js";var gr={exports:{}};/**! * Sortable 1.14.0 * @author RubaXa * @author owenm diff --git a/public/build/assets/EstimateCreate.4010e1b1.js b/public/build/assets/EstimateCreate.8e177523.js similarity index 82% rename from public/build/assets/EstimateCreate.4010e1b1.js rename to public/build/assets/EstimateCreate.8e177523.js index d5f9956e2..3cef3fa62 100644 --- a/public/build/assets/EstimateCreate.4010e1b1.js +++ b/public/build/assets/EstimateCreate.8e177523.js @@ -1 +1 @@ -var A=Object.defineProperty,K=Object.defineProperties;var Q=Object.getOwnPropertyDescriptors;var x=Object.getOwnPropertySymbols;var W=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var I=(a,e,n)=>e in a?A(a,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):a[e]=n,V=(a,e)=>{for(var n in e||(e={}))W.call(e,n)&&I(a,n,e[n]);if(x)for(var n of x(e))X.call(e,n)&&I(a,n,e[n]);return a},j=(a,e)=>K(a,Q(e));import{r as o,o as g,e as q,f as s,u as t,w as l,J as Z,B as L,G as ee,aN as te,k as b,L as v,M as E,S as ae,O as se,aP as ne,T as ie,C as oe,l as y,j as h,h as B,t as T,m as le,i as re,U as me,F as de}from"./vendor.01d0adc5.js";import{k as P,r as ue,b as ce,m as pe}from"./main.75722495.js";import{_ as ge,a as _e,b as fe,c as ve,d as be,e as ye,f as we}from"./SalesTax.0ff2d954.js";import{_ as Ee}from"./CreateCustomFields.a3a572c4.js";import{_ as Be}from"./ExchangeRateConverter.7d8c4309.js";import{_ as $e}from"./TaxTypeModal.bf6662b3.js";import"./DragIcon.213b1d78.js";import"./SelectNotePopup.781ad74a.js";import"./NoteModal.f6d01f84.js";import"./payment.5c57bec3.js";import"./exchange-rate.dffa79b6.js";const Se={class:"md:grid-cols-12 grid-cols-1 md:gap-x-6 mt-6 mb-8 grid gap-y-5"},he={props:{v:{type:Object,default:null},isLoading:{type:Boolean,default:!1},isEdit:{type:Boolean,default:!1}},setup(a){const e=P();return(n,r)=>{const $=o("BaseCustomerSelectPopup"),m=o("BaseDatePicker"),c=o("BaseInputGroup"),p=o("BaseInput"),S=o("BaseInputGrid");return g(),q("div",Se,[s($,{modelValue:t(e).newEstimate.customer,"onUpdate:modelValue":r[0]||(r[0]=d=>t(e).newEstimate.customer=d),valid:a.v.customer_id,"content-loading":a.isLoading,type:"estimate",class:"col-span-5 pr-0"},null,8,["modelValue","valid","content-loading"]),s(S,{class:"col-span-7"},{default:l(()=>[s(c,{label:n.$t("reports.estimates.estimate_date"),"content-loading":a.isLoading,required:"",error:a.v.estimate_date.$error&&a.v.estimate_date.$errors[0].$message},{default:l(()=>[s(m,{modelValue:t(e).newEstimate.estimate_date,"onUpdate:modelValue":r[1]||(r[1]=d=>t(e).newEstimate.estimate_date=d),"content-loading":a.isLoading,"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading","error"]),s(c,{label:n.$t("estimates.expiry_date"),"content-loading":a.isLoading},{default:l(()=>[s(m,{modelValue:t(e).newEstimate.expiry_date,"onUpdate:modelValue":r[2]||(r[2]=d=>t(e).newEstimate.expiry_date=d),"content-loading":a.isLoading,"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),s(c,{label:n.$t("estimates.estimate_number"),"content-loading":a.isLoading,required:"",error:a.v.estimate_number.$error&&a.v.estimate_number.$errors[0].$message},{default:l(()=>[s(p,{modelValue:t(e).newEstimate.estimate_number,"onUpdate:modelValue":r[3]||(r[3]=d=>t(e).newEstimate.estimate_number=d),"content-loading":a.isLoading},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading","error"]),s(Be,{store:t(e),"store-prop":"newEstimate",v:a.v,"is-loading":a.isLoading,"is-edit":a.isEdit,"customer-currency":t(e).newEstimate.currency_id},null,8,["store","v","is-loading","is-edit","customer-currency"])]),_:1})])}}},Ce=["onSubmit"],ke={class:"flex"},xe={class:"block mt-10 estimate-foot lg:flex lg:justify-between lg:items-start"},Ie={class:"relative w-full lg:w-1/2"},Re={setup(a){const e=P(),n=ue(),r=ce(),$=pe(),{t:m}=Z(),c="newEstimate";let p=L(!1);const S=L(["customer","company","customerCustom","estimate","estimateCustom"]);let d=ee(),M=te(),_=b(()=>e.isFetchingInitialSettings),F=b(()=>f.value?m("estimates.edit_estimate"):m("estimates.new_estimate")),f=b(()=>d.name==="estimates.edit");const N=b(()=>r.selectedCompanySettings.sales_tax_us_enabled==="YES"&&n.salesTaxUSEnabled),U={estimate_date:{required:v.withMessage(m("validation.required"),E)},estimate_number:{required:v.withMessage(m("validation.required"),E)},reference_number:{maxLength:v.withMessage(m("validation.price_maxlength"),ae(255))},customer_id:{required:v.withMessage(m("validation.required"),E)},exchange_rate:{required:se(function(){return v.withMessage(m("validation.required"),E),e.showExchangeRate}),decimal:v.withMessage(m("validation.valid_exchange_rate"),ne)}},w=ie(U,b(()=>e.newEstimate),{$scope:c});oe(()=>e.newEstimate.customer,i=>{i&&i.currency?e.newEstimate.selectedCurrency=i.currency:e.newEstimate.selectedCurrency=r.selectedCompanyCurrency}),e.resetCurrentEstimate(),$.resetCustomFields(),w.value.$reset,e.fetchEstimateInitialSettings(f.value);async function G(){if(w.value.$touch(),w.value.$invalid)return!1;p.value=!0;let i=j(V({},e.newEstimate),{sub_total:e.getSubTotal,total:e.getTotal,tax:e.getTotalTax});const C=f.value?e.updateEstimate:e.addEstimate;try{let u=await C(i);u.data.data&&M.push(`/admin/estimates/${u.data.data.id}/view`)}catch(u){console.error(u)}p.value=!1}return(i,C)=>{const u=o("BaseBreadcrumbItem"),D=o("BaseBreadcrumb"),k=o("BaseButton"),R=o("router-link"),H=o("BaseIcon"),O=o("BasePageHeader"),z=o("BaseScrollPane"),J=o("BasePage");return g(),q(de,null,[s(ge),s(_e),s($e),t(N)&&(!t(_)||t(d).query.customer)?(g(),y(fe,{key:0,store:t(e),"store-prop":"newEstimate","is-edit":t(f),customer:t(e).newEstimate.customer},null,8,["store","is-edit","customer"])):h("",!0),s(J,{class:"relative estimate-create-page"},{default:l(()=>[B("form",{onSubmit:me(G,["prevent"])},[s(O,{title:t(F)},{actions:l(()=>[i.$route.name==="estimates.edit"?(g(),y(R,{key:0,to:`/estimates/pdf/${t(e).newEstimate.unique_hash}`,target:"_blank"},{default:l(()=>[s(k,{class:"mr-3",variant:"primary-outline",type:"button"},{default:l(()=>[B("span",ke,T(i.$t("general.view_pdf")),1)]),_:1})]),_:1},8,["to"])):h("",!0),s(k,{loading:t(p),disabled:t(p),"content-loading":t(_),variant:"primary",type:"submit"},{left:l(Y=>[t(p)?h("",!0):(g(),y(H,{key:0,class:le(Y.class),name:"SaveIcon"},null,8,["class"]))]),default:l(()=>[re(" "+T(i.$t("estimates.save_estimate")),1)]),_:1},8,["loading","disabled","content-loading"])]),default:l(()=>[s(D,null,{default:l(()=>[s(u,{title:i.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),s(u,{title:i.$tc("estimates.estimate",2),to:"/admin/estimates"},null,8,["title"]),i.$route.name==="estimates.edit"?(g(),y(u,{key:0,title:i.$t("estimates.edit_estimate"),to:"#",active:""},null,8,["title"])):(g(),y(u,{key:1,title:i.$t("estimates.new_estimate"),to:"#",active:""},null,8,["title"]))]),_:1})]),_:1},8,["title"]),s(he,{v:t(w),"is-loading":t(_),"is-edit":t(f)},null,8,["v","is-loading","is-edit"]),s(z,null,{default:l(()=>[s(ve,{currency:t(e).newEstimate.selectedCurrency,"is-loading":t(_),"item-validation-scope":c,store:t(e),"store-prop":"newEstimate"},null,8,["currency","is-loading","store"]),B("div",xe,[B("div",Ie,[s(be,{store:t(e),"store-prop":"newEstimate",fields:S.value,type:"Estimate"},null,8,["store","fields"]),s(Ee,{type:"Estimate","is-edit":t(f),"is-loading":t(_),store:t(e),"store-prop":"newEstimate","custom-field-scope":c,class:"mb-6"},null,8,["is-edit","is-loading","store"]),s(ye,{store:t(e),"component-name":"EstimateTemplate","store-prop":"newEstimate"},null,8,["store"])]),s(we,{currency:t(e).newEstimate.selectedCurrency,"is-loading":t(_),store:t(e),"store-prop":"newEstimate","tax-popup-type":"estimate"},null,8,["currency","is-loading","store"])])]),_:1})],40,Ce)]),_:1})],64)}}};export{Re as default}; +var A=Object.defineProperty,K=Object.defineProperties;var Q=Object.getOwnPropertyDescriptors;var x=Object.getOwnPropertySymbols;var W=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var I=(a,e,n)=>e in a?A(a,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):a[e]=n,V=(a,e)=>{for(var n in e||(e={}))W.call(e,n)&&I(a,n,e[n]);if(x)for(var n of x(e))X.call(e,n)&&I(a,n,e[n]);return a},j=(a,e)=>K(a,Q(e));import{r as o,o as g,e as q,f as s,u as t,w as l,J as Z,B as L,G as ee,aN as te,k as v,L as b,M as E,S as ae,O as se,aP as ne,T as ie,C as oe,l as y,j as h,h as B,t as T,m as le,i as re,U as me,F as de}from"./vendor.01d0adc5.js";import{k as P,r as ue,b as ce,m as pe}from"./main.24f7a84b.js";import{_ as ge,a as _e,b as fe,c as be,d as ve,e as ye,f as we}from"./SalesTax.7ce396b6.js";import{_ as Ee}from"./CreateCustomFields.8531ebe0.js";import{_ as Be}from"./ExchangeRateConverter.285065a4.js";import{_ as $e}from"./TaxTypeModal.5b98d9fc.js";import"./DragIcon.0a950eb9.js";import"./SelectNotePopup.5f004c2c.js";import"./NoteModal.5bd3cf32.js";import"./payment.bb0c6e9e.js";import"./exchange-rate.3b3d35e2.js";const Se={class:"md:grid-cols-12 grid-cols-1 md:gap-x-6 mt-6 mb-8 grid gap-y-5"},he={props:{v:{type:Object,default:null},isLoading:{type:Boolean,default:!1},isEdit:{type:Boolean,default:!1}},setup(a){const e=P();return(n,r)=>{const $=o("BaseCustomerSelectPopup"),m=o("BaseDatePicker"),c=o("BaseInputGroup"),p=o("BaseInput"),S=o("BaseInputGrid");return g(),q("div",Se,[s($,{modelValue:t(e).newEstimate.customer,"onUpdate:modelValue":r[0]||(r[0]=d=>t(e).newEstimate.customer=d),valid:a.v.customer_id,"content-loading":a.isLoading,type:"estimate",class:"col-span-5 pr-0"},null,8,["modelValue","valid","content-loading"]),s(S,{class:"col-span-7"},{default:l(()=>[s(c,{label:n.$t("reports.estimates.estimate_date"),"content-loading":a.isLoading,required:"",error:a.v.estimate_date.$error&&a.v.estimate_date.$errors[0].$message},{default:l(()=>[s(m,{modelValue:t(e).newEstimate.estimate_date,"onUpdate:modelValue":r[1]||(r[1]=d=>t(e).newEstimate.estimate_date=d),"content-loading":a.isLoading,"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading","error"]),s(c,{label:n.$t("estimates.expiry_date"),"content-loading":a.isLoading},{default:l(()=>[s(m,{modelValue:t(e).newEstimate.expiry_date,"onUpdate:modelValue":r[2]||(r[2]=d=>t(e).newEstimate.expiry_date=d),"content-loading":a.isLoading,"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),s(c,{label:n.$t("estimates.estimate_number"),"content-loading":a.isLoading,required:"",error:a.v.estimate_number.$error&&a.v.estimate_number.$errors[0].$message},{default:l(()=>[s(p,{modelValue:t(e).newEstimate.estimate_number,"onUpdate:modelValue":r[3]||(r[3]=d=>t(e).newEstimate.estimate_number=d),"content-loading":a.isLoading},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading","error"]),s(Be,{store:t(e),"store-prop":"newEstimate",v:a.v,"is-loading":a.isLoading,"is-edit":a.isEdit,"customer-currency":t(e).newEstimate.currency_id},null,8,["store","v","is-loading","is-edit","customer-currency"])]),_:1})])}}},Ce=["onSubmit"],ke={class:"flex"},xe={class:"block mt-10 estimate-foot lg:flex lg:justify-between lg:items-start"},Ie={class:"relative w-full lg:w-1/2"},Re={setup(a){const e=P(),n=ue(),r=ce(),$=pe(),{t:m}=Z(),c="newEstimate";let p=L(!1);const S=L(["customer","company","customerCustom","estimate","estimateCustom"]);let d=ee(),M=te(),_=v(()=>e.isFetchingInitialSettings),F=v(()=>f.value?m("estimates.edit_estimate"):m("estimates.new_estimate")),f=v(()=>d.name==="estimates.edit");const N=v(()=>r.selectedCompanySettings.sales_tax_us_enabled==="YES"&&n.salesTaxUSEnabled),U={estimate_date:{required:b.withMessage(m("validation.required"),E)},estimate_number:{required:b.withMessage(m("validation.required"),E)},reference_number:{maxLength:b.withMessage(m("validation.price_maxlength"),ae(255))},customer_id:{required:b.withMessage(m("validation.required"),E)},exchange_rate:{required:se(function(){return b.withMessage(m("validation.required"),E),e.showExchangeRate}),decimal:b.withMessage(m("validation.valid_exchange_rate"),ne)}},w=ie(U,v(()=>e.newEstimate),{$scope:c});oe(()=>e.newEstimate.customer,i=>{i&&i.currency?e.newEstimate.selectedCurrency=i.currency:e.newEstimate.selectedCurrency=r.selectedCompanyCurrency}),e.resetCurrentEstimate(),$.resetCustomFields(),w.value.$reset,e.fetchEstimateInitialSettings(f.value);async function G(){if(w.value.$touch(),w.value.$invalid)return!1;p.value=!0;let i=j(V({},e.newEstimate),{sub_total:e.getSubTotal,total:e.getTotal,tax:e.getTotalTax});const C=f.value?e.updateEstimate:e.addEstimate;try{let u=await C(i);u.data.data&&M.push(`/admin/estimates/${u.data.data.id}/view`)}catch(u){console.error(u)}p.value=!1}return(i,C)=>{const u=o("BaseBreadcrumbItem"),D=o("BaseBreadcrumb"),k=o("BaseButton"),R=o("router-link"),H=o("BaseIcon"),O=o("BasePageHeader"),z=o("BaseScrollPane"),J=o("BasePage");return g(),q(de,null,[s(ge),s(_e),s($e),t(N)&&(!t(_)||t(d).query.customer)?(g(),y(fe,{key:0,store:t(e),"store-prop":"newEstimate","is-edit":t(f),customer:t(e).newEstimate.customer},null,8,["store","is-edit","customer"])):h("",!0),s(J,{class:"relative estimate-create-page"},{default:l(()=>[B("form",{onSubmit:me(G,["prevent"])},[s(O,{title:t(F)},{actions:l(()=>[i.$route.name==="estimates.edit"?(g(),y(R,{key:0,to:`/estimates/pdf/${t(e).newEstimate.unique_hash}`,target:"_blank"},{default:l(()=>[s(k,{class:"mr-3",variant:"primary-outline",type:"button"},{default:l(()=>[B("span",ke,T(i.$t("general.view_pdf")),1)]),_:1})]),_:1},8,["to"])):h("",!0),s(k,{loading:t(p),disabled:t(p),"content-loading":t(_),variant:"primary",type:"submit"},{left:l(Y=>[t(p)?h("",!0):(g(),y(H,{key:0,class:le(Y.class),name:"SaveIcon"},null,8,["class"]))]),default:l(()=>[re(" "+T(i.$t("estimates.save_estimate")),1)]),_:1},8,["loading","disabled","content-loading"])]),default:l(()=>[s(D,null,{default:l(()=>[s(u,{title:i.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),s(u,{title:i.$tc("estimates.estimate",2),to:"/admin/estimates"},null,8,["title"]),i.$route.name==="estimates.edit"?(g(),y(u,{key:0,title:i.$t("estimates.edit_estimate"),to:"#",active:""},null,8,["title"])):(g(),y(u,{key:1,title:i.$t("estimates.new_estimate"),to:"#",active:""},null,8,["title"]))]),_:1})]),_:1},8,["title"]),s(he,{v:t(w),"is-loading":t(_),"is-edit":t(f)},null,8,["v","is-loading","is-edit"]),s(z,null,{default:l(()=>[s(be,{currency:t(e).newEstimate.selectedCurrency,"is-loading":t(_),"item-validation-scope":c,store:t(e),"store-prop":"newEstimate"},null,8,["currency","is-loading","store"]),B("div",xe,[B("div",Ie,[s(ve,{store:t(e),"store-prop":"newEstimate",fields:S.value,type:"Estimate"},null,8,["store","fields"]),s(Ee,{type:"Estimate","is-edit":t(f),"is-loading":t(_),store:t(e),"store-prop":"newEstimate","custom-field-scope":c,class:"mb-6"},null,8,["is-edit","is-loading","store"]),s(ye,{store:t(e),"component-name":"EstimateTemplate","store-prop":"newEstimate"},null,8,["store"])]),s(we,{currency:t(e).newEstimate.selectedCurrency,"is-loading":t(_),store:t(e),"store-prop":"newEstimate","tax-popup-type":"estimate"},null,8,["currency","is-loading","store"])])]),_:1})],40,Ce)]),_:1})],64)}}};export{Re as default}; diff --git a/public/build/assets/EstimateIcon.1f3b368d.js b/public/build/assets/EstimateIcon.8ca6d05b.js similarity index 94% rename from public/build/assets/EstimateIcon.1f3b368d.js rename to public/build/assets/EstimateIcon.8ca6d05b.js index 917de3b85..881633ecf 100644 --- a/public/build/assets/EstimateIcon.1f3b368d.js +++ b/public/build/assets/EstimateIcon.8ca6d05b.js @@ -1 +1 @@ -import{_ as r}from"./main.75722495.js";import{o as s,e as o,h as C,m as l}from"./vendor.01d0adc5.js";const n={},i={width:"50",height:"50",viewBox:"0 0 50 50",fill:"none",xmlns:"http://www.w3.org/2000/svg"},_=C("circle",{cx:"25",cy:"25",r:"25",fill:"#FDE4E5"},null,-1),a=C("path",{d:"M27.2031 23.6016C28.349 23.9401 29.2083 24.6562 29.7812 25.75C30.3802 26.8438 30.4714 27.9766 30.0547 29.1484C29.7422 30.0078 29.2083 30.6979 28.4531 31.2188C27.6979 31.7135 26.8516 31.974 25.9141 32V33.875C25.9141 34.0573 25.849 34.2005 25.7188 34.3047C25.6146 34.4349 25.4714 34.5 25.2891 34.5H24.0391C23.8568 34.5 23.7005 34.4349 23.5703 34.3047C23.4661 34.2005 23.4141 34.0573 23.4141 33.875V32C22.1641 32 21.0443 31.6094 20.0547 30.8281C19.8984 30.6979 19.8073 30.5417 19.7812 30.3594C19.7552 30.1771 19.8203 30.0208 19.9766 29.8906L21.3047 28.5625C21.5651 28.3281 21.8255 28.3021 22.0859 28.4844C22.4766 28.7448 22.9193 28.875 23.4141 28.875H25.9922C26.3307 28.875 26.6042 28.7708 26.8125 28.5625C27.0469 28.3281 27.1641 28.0417 27.1641 27.7031C27.1641 27.1302 26.8906 26.7656 26.3438 26.6094L22.3203 25.4375C21.4349 25.1771 20.6927 24.7083 20.0938 24.0312C19.4948 23.3542 19.1432 22.5729 19.0391 21.6875C18.9349 20.4115 19.2995 19.3177 20.1328 18.4062C20.9922 17.4688 22.0599 17 23.3359 17H23.4141V15.125C23.4141 14.9427 23.4661 14.7995 23.5703 14.6953C23.7005 14.5651 23.8568 14.5 24.0391 14.5H25.2891C25.4714 14.5 25.6146 14.5651 25.7188 14.6953C25.849 14.7995 25.9141 14.9427 25.9141 15.125V17C27.1641 17 28.2839 17.3906 29.2734 18.1719C29.4297 18.3021 29.5208 18.4583 29.5469 18.6406C29.5729 18.8229 29.5078 18.9792 29.3516 19.1094L28.0234 20.4375C27.763 20.6719 27.5026 20.6979 27.2422 20.5156C26.8516 20.2552 26.4089 20.125 25.9141 20.125H23.3359C22.9974 20.125 22.7109 20.2422 22.4766 20.4766C22.2682 20.6849 22.1641 20.9583 22.1641 21.2969C22.1641 21.5312 22.2422 21.7526 22.3984 21.9609C22.5547 22.1693 22.75 22.3125 22.9844 22.3906L27.2031 23.6016Z",fill:"#FB7178"},null,-1),h=[_,a];function H(t,e){return s(),o("svg",i,h)}var g=r(n,[["render",H]]);const V=C("circle",{cx:"25",cy:"25",r:"25",fill:"#EAF1FB"},null,-1),d=C("path",{d:"M28.25 24.5V27H20.75V24.5H28.25ZM31.7266 18.6016C31.9089 18.7839 32 19.0052 32 19.2656V19.5H27V14.5H27.2344C27.4948 14.5 27.7161 14.5911 27.8984 14.7734L31.7266 18.6016ZM25.75 19.8125C25.75 20.0729 25.8411 20.2943 26.0234 20.4766C26.2057 20.6589 26.4271 20.75 26.6875 20.75H32V33.5625C32 33.8229 31.9089 34.0443 31.7266 34.2266C31.5443 34.4089 31.3229 34.5 31.0625 34.5H17.9375C17.6771 34.5 17.4557 34.4089 17.2734 34.2266C17.0911 34.0443 17 33.8229 17 33.5625V15.4375C17 15.1771 17.0911 14.9557 17.2734 14.7734C17.4557 14.5911 17.6771 14.5 17.9375 14.5H25.75V19.8125ZM19.5 17.3125V17.9375C19.5 18.1458 19.6042 18.25 19.8125 18.25H22.9375C23.1458 18.25 23.25 18.1458 23.25 17.9375V17.3125C23.25 17.1042 23.1458 17 22.9375 17H19.8125C19.6042 17 19.5 17.1042 19.5 17.3125ZM19.5 19.8125V20.4375C19.5 20.6458 19.6042 20.75 19.8125 20.75H22.9375C23.1458 20.75 23.25 20.6458 23.25 20.4375V19.8125C23.25 19.6042 23.1458 19.5 22.9375 19.5H19.8125C19.6042 19.5 19.5 19.6042 19.5 19.8125ZM29.5 31.6875V31.0625C29.5 30.8542 29.3958 30.75 29.1875 30.75H26.0625C25.8542 30.75 25.75 30.8542 25.75 31.0625V31.6875C25.75 31.8958 25.8542 32 26.0625 32H29.1875C29.3958 32 29.5 31.8958 29.5 31.6875ZM29.5 23.875C29.5 23.6927 29.4349 23.5495 29.3047 23.4453C29.2005 23.3151 29.0573 23.25 28.875 23.25H20.125C19.9427 23.25 19.7865 23.3151 19.6562 23.4453C19.5521 23.5495 19.5 23.6927 19.5 23.875V27.625C19.5 27.8073 19.5521 27.9635 19.6562 28.0938C19.7865 28.1979 19.9427 28.25 20.125 28.25H28.875C29.0573 28.25 29.2005 28.1979 29.3047 28.0938C29.4349 27.9635 29.5 27.8073 29.5 27.625V23.875Z",fill:"currentColor"},null,-1),p=[V,d],v={props:{colorClass:{type:String,default:"text-primary-500"}},setup(t){return(e,c)=>(s(),o("svg",{width:"50",height:"50",viewBox:"0 0 50 50",fill:"none",xmlns:"http://www.w3.org/2000/svg",class:l(t.colorClass)},p,2))}},f=C("circle",{cx:"25",cy:"25",r:"25",fill:"#EAF1FB"},null,-1),u=C("path",{d:"M26.75 19.8125C26.75 20.0729 26.8411 20.2943 27.0234 20.4766C27.2057 20.6589 27.4271 20.75 27.6875 20.75H33V33.5625C33 33.8229 32.9089 34.0443 32.7266 34.2266C32.5443 34.4089 32.3229 34.5 32.0625 34.5H18.9375C18.6771 34.5 18.4557 34.4089 18.2734 34.2266C18.0911 34.0443 18 33.8229 18 33.5625V15.4375C18 15.1771 18.0911 14.9557 18.2734 14.7734C18.4557 14.5911 18.6771 14.5 18.9375 14.5H26.75V19.8125ZM33 19.2656V19.5H28V14.5H28.2344C28.4948 14.5 28.7161 14.5911 28.8984 14.7734L32.7266 18.6016C32.9089 18.7839 33 19.0052 33 19.2656Z",fill:"currentColor"},null,-1),w=[f,u],M={props:{colorClass:{type:String,default:"text-primary-500"}},setup(t){return(e,c)=>(s(),o("svg",{width:"50",height:"50",viewBox:"0 0 50 50",fill:"none",xmlns:"http://www.w3.org/2000/svg",class:l(t.colorClass)},w,2))}};export{g as D,v as _,M as a}; +import{_ as r}from"./main.24f7a84b.js";import{o as s,e as o,h as C,m as l}from"./vendor.01d0adc5.js";const n={},i={width:"50",height:"50",viewBox:"0 0 50 50",fill:"none",xmlns:"http://www.w3.org/2000/svg"},a=C("circle",{cx:"25",cy:"25",r:"25",fill:"#FDE4E5"},null,-1),_=C("path",{d:"M27.2031 23.6016C28.349 23.9401 29.2083 24.6562 29.7812 25.75C30.3802 26.8438 30.4714 27.9766 30.0547 29.1484C29.7422 30.0078 29.2083 30.6979 28.4531 31.2188C27.6979 31.7135 26.8516 31.974 25.9141 32V33.875C25.9141 34.0573 25.849 34.2005 25.7188 34.3047C25.6146 34.4349 25.4714 34.5 25.2891 34.5H24.0391C23.8568 34.5 23.7005 34.4349 23.5703 34.3047C23.4661 34.2005 23.4141 34.0573 23.4141 33.875V32C22.1641 32 21.0443 31.6094 20.0547 30.8281C19.8984 30.6979 19.8073 30.5417 19.7812 30.3594C19.7552 30.1771 19.8203 30.0208 19.9766 29.8906L21.3047 28.5625C21.5651 28.3281 21.8255 28.3021 22.0859 28.4844C22.4766 28.7448 22.9193 28.875 23.4141 28.875H25.9922C26.3307 28.875 26.6042 28.7708 26.8125 28.5625C27.0469 28.3281 27.1641 28.0417 27.1641 27.7031C27.1641 27.1302 26.8906 26.7656 26.3438 26.6094L22.3203 25.4375C21.4349 25.1771 20.6927 24.7083 20.0938 24.0312C19.4948 23.3542 19.1432 22.5729 19.0391 21.6875C18.9349 20.4115 19.2995 19.3177 20.1328 18.4062C20.9922 17.4688 22.0599 17 23.3359 17H23.4141V15.125C23.4141 14.9427 23.4661 14.7995 23.5703 14.6953C23.7005 14.5651 23.8568 14.5 24.0391 14.5H25.2891C25.4714 14.5 25.6146 14.5651 25.7188 14.6953C25.849 14.7995 25.9141 14.9427 25.9141 15.125V17C27.1641 17 28.2839 17.3906 29.2734 18.1719C29.4297 18.3021 29.5208 18.4583 29.5469 18.6406C29.5729 18.8229 29.5078 18.9792 29.3516 19.1094L28.0234 20.4375C27.763 20.6719 27.5026 20.6979 27.2422 20.5156C26.8516 20.2552 26.4089 20.125 25.9141 20.125H23.3359C22.9974 20.125 22.7109 20.2422 22.4766 20.4766C22.2682 20.6849 22.1641 20.9583 22.1641 21.2969C22.1641 21.5312 22.2422 21.7526 22.3984 21.9609C22.5547 22.1693 22.75 22.3125 22.9844 22.3906L27.2031 23.6016Z",fill:"#FB7178"},null,-1),h=[a,_];function H(t,e){return s(),o("svg",i,h)}var g=r(n,[["render",H]]);const V=C("circle",{cx:"25",cy:"25",r:"25",fill:"#EAF1FB"},null,-1),d=C("path",{d:"M28.25 24.5V27H20.75V24.5H28.25ZM31.7266 18.6016C31.9089 18.7839 32 19.0052 32 19.2656V19.5H27V14.5H27.2344C27.4948 14.5 27.7161 14.5911 27.8984 14.7734L31.7266 18.6016ZM25.75 19.8125C25.75 20.0729 25.8411 20.2943 26.0234 20.4766C26.2057 20.6589 26.4271 20.75 26.6875 20.75H32V33.5625C32 33.8229 31.9089 34.0443 31.7266 34.2266C31.5443 34.4089 31.3229 34.5 31.0625 34.5H17.9375C17.6771 34.5 17.4557 34.4089 17.2734 34.2266C17.0911 34.0443 17 33.8229 17 33.5625V15.4375C17 15.1771 17.0911 14.9557 17.2734 14.7734C17.4557 14.5911 17.6771 14.5 17.9375 14.5H25.75V19.8125ZM19.5 17.3125V17.9375C19.5 18.1458 19.6042 18.25 19.8125 18.25H22.9375C23.1458 18.25 23.25 18.1458 23.25 17.9375V17.3125C23.25 17.1042 23.1458 17 22.9375 17H19.8125C19.6042 17 19.5 17.1042 19.5 17.3125ZM19.5 19.8125V20.4375C19.5 20.6458 19.6042 20.75 19.8125 20.75H22.9375C23.1458 20.75 23.25 20.6458 23.25 20.4375V19.8125C23.25 19.6042 23.1458 19.5 22.9375 19.5H19.8125C19.6042 19.5 19.5 19.6042 19.5 19.8125ZM29.5 31.6875V31.0625C29.5 30.8542 29.3958 30.75 29.1875 30.75H26.0625C25.8542 30.75 25.75 30.8542 25.75 31.0625V31.6875C25.75 31.8958 25.8542 32 26.0625 32H29.1875C29.3958 32 29.5 31.8958 29.5 31.6875ZM29.5 23.875C29.5 23.6927 29.4349 23.5495 29.3047 23.4453C29.2005 23.3151 29.0573 23.25 28.875 23.25H20.125C19.9427 23.25 19.7865 23.3151 19.6562 23.4453C19.5521 23.5495 19.5 23.6927 19.5 23.875V27.625C19.5 27.8073 19.5521 27.9635 19.6562 28.0938C19.7865 28.1979 19.9427 28.25 20.125 28.25H28.875C29.0573 28.25 29.2005 28.1979 29.3047 28.0938C29.4349 27.9635 29.5 27.8073 29.5 27.625V23.875Z",fill:"currentColor"},null,-1),p=[V,d],v={props:{colorClass:{type:String,default:"text-primary-500"}},setup(t){return(e,c)=>(s(),o("svg",{width:"50",height:"50",viewBox:"0 0 50 50",fill:"none",xmlns:"http://www.w3.org/2000/svg",class:l(t.colorClass)},p,2))}},f=C("circle",{cx:"25",cy:"25",r:"25",fill:"#EAF1FB"},null,-1),u=C("path",{d:"M26.75 19.8125C26.75 20.0729 26.8411 20.2943 27.0234 20.4766C27.2057 20.6589 27.4271 20.75 27.6875 20.75H33V33.5625C33 33.8229 32.9089 34.0443 32.7266 34.2266C32.5443 34.4089 32.3229 34.5 32.0625 34.5H18.9375C18.6771 34.5 18.4557 34.4089 18.2734 34.2266C18.0911 34.0443 18 33.8229 18 33.5625V15.4375C18 15.1771 18.0911 14.9557 18.2734 14.7734C18.4557 14.5911 18.6771 14.5 18.9375 14.5H26.75V19.8125ZM33 19.2656V19.5H28V14.5H28.2344C28.4948 14.5 28.7161 14.5911 28.8984 14.7734L32.7266 18.6016C32.9089 18.7839 33 19.0052 33 19.2656Z",fill:"currentColor"},null,-1),w=[f,u],M={props:{colorClass:{type:String,default:"text-primary-500"}},setup(t){return(e,c)=>(s(),o("svg",{width:"50",height:"50",viewBox:"0 0 50 50",fill:"none",xmlns:"http://www.w3.org/2000/svg",class:l(t.colorClass)},w,2))}};export{g as D,v as _,M as a}; diff --git a/public/build/assets/EstimateIndexDropdown.4eab32d4.js b/public/build/assets/EstimateIndexDropdown.7244b3a5.js similarity index 73% rename from public/build/assets/EstimateIndexDropdown.4eab32d4.js rename to public/build/assets/EstimateIndexDropdown.7244b3a5.js index 308cac751..b23f3455c 100644 --- a/public/build/assets/EstimateIndexDropdown.4eab32d4.js +++ b/public/build/assets/EstimateIndexDropdown.7244b3a5.js @@ -1 +1 @@ -import{k as R,c as z,u as P,j as V,e as J,g as E}from"./main.75722495.js";import{ah as O,J as U,G as H,aN as W,r as T,o as i,l,w as r,u as n,f as m,i as u,t as d,j as g}from"./vendor.01d0adc5.js";const G={props:{row:{type:Object,default:null},table:{type:Object,default:null}},setup(o){const y=o,S=O("utils"),k=R(),D=z(),_=P(),p=V(),f=J(),{t:s}=U(),v=H(),I=W();async function C(e){p.openDialog({title:s("general.are_you_sure"),message:s("estimates.confirm_delete"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(t=>{e=e,t&&k.deleteEstimate({ids:[e]}).then(a=>{a&&(y.table&&y.table.refresh(),a.data&&I.push("/admin/estimates"),k.$patch(h=>{h.selectedEstimates=[],h.selectAllField=!1}))})})}function $(e){p.openDialog({title:s("general.are_you_sure"),message:s("estimates.confirm_conversion"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(t=>{t&&k.convertToInvoice(e).then(a=>{a.data&&I.push(`/admin/invoices/${a.data.data.id}/edit`)})})}async function N(e){p.openDialog({title:s("general.are_you_sure"),message:s("estimates.confirm_mark_as_sent"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(t=>{const a={id:e,status:"SENT"};t&&k.markAsSent(a).then(h=>{y.table&&y.table.refresh()})})}function x(e){return(e.status=="SENT"||e.status=="VIEWED")&&v.name!=="estimates.view"&&f.hasAbilities(E.SEND_ESTIMATE)}async function b(e){D.openModal({title:s("estimates.send_estimate"),componentName:"SendEstimateModal",id:e.id,data:e,variant:"lg"})}async function B(e){p.openDialog({title:s("general.are_you_sure"),message:s("estimates.confirm_mark_as_accepted"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(t=>{const a={id:e,status:"ACCEPTED"};t&&k.markAsAccepted(a).then(h=>{y.table&&y.table.refresh()})})}async function M(e){p.openDialog({title:s("general.are_you_sure"),message:s("estimates.confirm_mark_as_rejected"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(t=>{const a={id:e,status:"REJECTED"};t&&k.markAsRejected(a).then(h=>{y.table&&y.table.refresh()})})}function L(){let e=`${window.location.origin}/estimates/pdf/${y.row.unique_hash}`;S.copyTextToClipboard(e),_.showNotification({type:"success",message:s("general.copied_pdf_url_clipboard")})}return(e,t)=>{const a=T("BaseIcon"),h=T("BaseButton"),c=T("BaseDropdownItem"),A=T("router-link"),j=T("BaseDropdown");return i(),l(j,null,{activator:r(()=>[n(v).name==="estimates.view"?(i(),l(h,{key:0,variant:"primary"},{default:r(()=>[m(a,{name:"DotsHorizontalIcon",class:"text-white"})]),_:1})):(i(),l(a,{key:1,class:"text-gray-500",name:"DotsHorizontalIcon"}))]),default:r(()=>[n(v).name==="estimates.view"?(i(),l(c,{key:0,onClick:L},{default:r(()=>[m(a,{name:"LinkIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("general.copy_pdf_url")),1)]),_:1})):g("",!0),n(f).hasAbilities(n(E).EDIT_ESTIMATE)?(i(),l(A,{key:1,to:`/admin/estimates/${o.row.id}/edit`},{default:r(()=>[m(c,null,{default:r(()=>[m(a,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("general.edit")),1)]),_:1})]),_:1},8,["to"])):g("",!0),n(f).hasAbilities(n(E).DELETE_ESTIMATE)?(i(),l(c,{key:2,onClick:t[0]||(t[0]=w=>C(o.row.id))},{default:r(()=>[m(a,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("general.delete")),1)]),_:1})):g("",!0),n(v).name!=="estimates.view"&&n(f).hasAbilities(n(E).VIEW_ESTIMATE)?(i(),l(A,{key:3,to:`estimates/${o.row.id}/view`},{default:r(()=>[m(c,null,{default:r(()=>[m(a,{name:"EyeIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("general.view")),1)]),_:1})]),_:1},8,["to"])):g("",!0),n(f).hasAbilities(n(E).CREATE_INVOICE)?(i(),l(c,{key:4,onClick:t[1]||(t[1]=w=>$(o.row.id))},{default:r(()=>[m(a,{name:"DocumentTextIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("estimates.convert_to_invoice")),1)]),_:1})):g("",!0),o.row.status!=="SENT"&&n(v).name!=="estimates.view"&&n(f).hasAbilities(n(E).SEND_ESTIMATE)?(i(),l(c,{key:5,onClick:t[2]||(t[2]=w=>N(o.row.id))},{default:r(()=>[m(a,{name:"CheckCircleIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("estimates.mark_as_sent")),1)]),_:1})):g("",!0),o.row.status!=="SENT"&&n(v).name!=="estimates.view"&&n(f).hasAbilities(n(E).SEND_ESTIMATE)?(i(),l(c,{key:6,onClick:t[3]||(t[3]=w=>b(o.row))},{default:r(()=>[m(a,{name:"PaperAirplaneIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("estimates.send_estimate")),1)]),_:1})):g("",!0),x(o.row)?(i(),l(c,{key:7,onClick:t[4]||(t[4]=w=>b(o.row))},{default:r(()=>[m(a,{name:"PaperAirplaneIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("estimates.resend_estimate")),1)]),_:1})):g("",!0),o.row.status!=="ACCEPTED"&&n(f).hasAbilities(n(E).EDIT_ESTIMATE)?(i(),l(c,{key:8,onClick:t[5]||(t[5]=w=>B(o.row.id))},{default:r(()=>[m(a,{name:"CheckCircleIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("estimates.mark_as_accepted")),1)]),_:1})):g("",!0),o.row.status!=="REJECTED"&&n(f).hasAbilities(n(E).EDIT_ESTIMATE)?(i(),l(c,{key:9,onClick:t[6]||(t[6]=w=>M(o.row.id))},{default:r(()=>[m(a,{name:"XCircleIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("estimates.mark_as_rejected")),1)]),_:1})):g("",!0)]),_:1})}}};export{G as _}; +import{k as R,c as z,u as P,j as V,e as J,g as E}from"./main.24f7a84b.js";import{ah as O,J as U,G as H,aN as W,r as T,o as i,l,w as r,u as n,f as m,i as u,t as d,j as g}from"./vendor.01d0adc5.js";const G={props:{row:{type:Object,default:null},table:{type:Object,default:null}},setup(o){const f=o,S=O("utils"),k=R(),D=z(),_=P(),p=V(),y=J(),{t:s}=U(),v=H(),b=W();async function C(e){p.openDialog({title:s("general.are_you_sure"),message:s("estimates.confirm_delete"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(t=>{e=e,t&&k.deleteEstimate({ids:[e]}).then(a=>{a&&(f.table&&f.table.refresh(),a.data&&b.push("/admin/estimates"),k.$patch(h=>{h.selectedEstimates=[],h.selectAllField=!1}))})})}function $(e){p.openDialog({title:s("general.are_you_sure"),message:s("estimates.confirm_conversion"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(t=>{t&&k.convertToInvoice(e).then(a=>{a.data&&b.push(`/admin/invoices/${a.data.data.id}/edit`)})})}async function N(e){p.openDialog({title:s("general.are_you_sure"),message:s("estimates.confirm_mark_as_sent"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(t=>{const a={id:e,status:"SENT"};t&&k.markAsSent(a).then(h=>{f.table&&f.table.refresh()})})}function x(e){return(e.status=="SENT"||e.status=="VIEWED")&&v.name!=="estimates.view"&&y.hasAbilities(E.SEND_ESTIMATE)}async function I(e){D.openModal({title:s("estimates.send_estimate"),componentName:"SendEstimateModal",id:e.id,data:e,variant:"lg"})}async function B(e){p.openDialog({title:s("general.are_you_sure"),message:s("estimates.confirm_mark_as_accepted"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(t=>{const a={id:e,status:"ACCEPTED"};t&&k.markAsAccepted(a).then(h=>{f.table&&f.table.refresh()})})}async function M(e){p.openDialog({title:s("general.are_you_sure"),message:s("estimates.confirm_mark_as_rejected"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(t=>{const a={id:e,status:"REJECTED"};t&&k.markAsRejected(a).then(h=>{f.table&&f.table.refresh()})})}function L(){let e=`${window.location.origin}/estimates/pdf/${f.row.unique_hash}`;S.copyTextToClipboard(e),_.showNotification({type:"success",message:s("general.copied_pdf_url_clipboard")})}return(e,t)=>{const a=T("BaseIcon"),h=T("BaseButton"),c=T("BaseDropdownItem"),A=T("router-link"),j=T("BaseDropdown");return i(),l(j,null,{activator:r(()=>[n(v).name==="estimates.view"?(i(),l(h,{key:0,variant:"primary"},{default:r(()=>[m(a,{name:"DotsHorizontalIcon",class:"text-white"})]),_:1})):(i(),l(a,{key:1,class:"text-gray-500",name:"DotsHorizontalIcon"}))]),default:r(()=>[n(v).name==="estimates.view"?(i(),l(c,{key:0,onClick:L},{default:r(()=>[m(a,{name:"LinkIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("general.copy_pdf_url")),1)]),_:1})):g("",!0),n(y).hasAbilities(n(E).EDIT_ESTIMATE)?(i(),l(A,{key:1,to:`/admin/estimates/${o.row.id}/edit`},{default:r(()=>[m(c,null,{default:r(()=>[m(a,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("general.edit")),1)]),_:1})]),_:1},8,["to"])):g("",!0),n(y).hasAbilities(n(E).DELETE_ESTIMATE)?(i(),l(c,{key:2,onClick:t[0]||(t[0]=w=>C(o.row.id))},{default:r(()=>[m(a,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("general.delete")),1)]),_:1})):g("",!0),n(v).name!=="estimates.view"&&n(y).hasAbilities(n(E).VIEW_ESTIMATE)?(i(),l(A,{key:3,to:`estimates/${o.row.id}/view`},{default:r(()=>[m(c,null,{default:r(()=>[m(a,{name:"EyeIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("general.view")),1)]),_:1})]),_:1},8,["to"])):g("",!0),n(y).hasAbilities(n(E).CREATE_INVOICE)?(i(),l(c,{key:4,onClick:t[1]||(t[1]=w=>$(o.row.id))},{default:r(()=>[m(a,{name:"DocumentTextIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("estimates.convert_to_invoice")),1)]),_:1})):g("",!0),o.row.status!=="SENT"&&n(v).name!=="estimates.view"&&n(y).hasAbilities(n(E).SEND_ESTIMATE)?(i(),l(c,{key:5,onClick:t[2]||(t[2]=w=>N(o.row.id))},{default:r(()=>[m(a,{name:"CheckCircleIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("estimates.mark_as_sent")),1)]),_:1})):g("",!0),o.row.status!=="SENT"&&n(v).name!=="estimates.view"&&n(y).hasAbilities(n(E).SEND_ESTIMATE)?(i(),l(c,{key:6,onClick:t[3]||(t[3]=w=>I(o.row))},{default:r(()=>[m(a,{name:"PaperAirplaneIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("estimates.send_estimate")),1)]),_:1})):g("",!0),x(o.row)?(i(),l(c,{key:7,onClick:t[4]||(t[4]=w=>I(o.row))},{default:r(()=>[m(a,{name:"PaperAirplaneIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("estimates.resend_estimate")),1)]),_:1})):g("",!0),o.row.status!=="ACCEPTED"&&n(y).hasAbilities(n(E).EDIT_ESTIMATE)?(i(),l(c,{key:8,onClick:t[5]||(t[5]=w=>B(o.row.id))},{default:r(()=>[m(a,{name:"CheckCircleIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("estimates.mark_as_accepted")),1)]),_:1})):g("",!0),o.row.status!=="REJECTED"&&n(y).hasAbilities(n(E).EDIT_ESTIMATE)?(i(),l(c,{key:9,onClick:t[6]||(t[6]=w=>M(o.row.id))},{default:r(()=>[m(a,{name:"XCircleIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),u(" "+d(e.$t("estimates.mark_as_rejected")),1)]),_:1})):g("",!0)]),_:1})}}};export{G as _}; diff --git a/public/build/assets/ExchangeRateConverter.7d8c4309.js b/public/build/assets/ExchangeRateConverter.285065a4.js similarity index 88% rename from public/build/assets/ExchangeRateConverter.7d8c4309.js rename to public/build/assets/ExchangeRateConverter.285065a4.js index 2dfc454b8..268d39b52 100644 --- a/public/build/assets/ExchangeRateConverter.7d8c4309.js +++ b/public/build/assets/ExchangeRateConverter.285065a4.js @@ -1 +1 @@ -import{d as V,b as _}from"./main.75722495.js";import{u as D}from"./exchange-rate.dffa79b6.js";import{B as p,k as u,C as l,b1 as F,r as d,K as N,u as a,o as x,l as A,w as h,e as G,q,f as v,m as L,j as C,h as E,t as b}from"./vendor.01d0adc5.js";const O={key:0},U={class:"text-gray-500 sm:text-sm"},z={class:"text-gray-400 text-xs mt-2 font-light"},M={props:{v:{type:Object,default:null},isLoading:{type:Boolean,default:!1},store:{type:Object,default:null},storeProp:{type:String,default:""},isEdit:{type:Boolean,default:!1},customerCurrency:{type:[String,Number],default:null}},setup(r){const e=r,m=V(),B=_(),g=D(),f=p(!1);let n=p(!1);m.fetchCurrencies();const s=u(()=>B.selectedCompanyCurrency),c=u(()=>m.currencies.find(t=>t.id===e.store[e.storeProp].currency_id)),P=u(()=>s.value.id!==e.customerCurrency);l(()=>e.store[e.storeProp].customer,t=>{R(t)},{deep:!0}),l(()=>e.store[e.storeProp].currency_id,t=>{$(t)},{immediate:!0}),l(()=>e.customerCurrency,t=>{t&&e.isEdit&&w()},{immediate:!0});function w(){P.value&&g.checkForActiveProvider(e.customerCurrency).then(t=>{t.data.success&&(f.value=!0)})}function R(t){t?e.store[e.storeProp].currency_id=t.currency.id:e.store[e.storeProp].currency_id=s.value.id}async function $(t){t!==s.value.id?(!e.isEdit&&t&&await y(t),e.store.showExchangeRate=!0):e.store.showExchangeRate=!1}function y(t){n.value=!0,g.getCurrentExchangeRate(t).then(o=>{o.data&&!o.data.error?e.store[e.storeProp].exchange_rate=o.data.exchangeRate[0]:e.store[e.storeProp].exchange_rate="",n.value=!1}).catch(o=>{n.value=!1})}return F(()=>{e.store.showExchangeRate=!1}),(t,o)=>{const k=d("BaseIcon"),S=d("BaseInput"),I=d("BaseInputGroup"),j=N("tooltip");return r.store.showExchangeRate&&a(c)?(x(),A(I,{key:0,"content-loading":a(n)&&!r.isEdit,label:t.$t("settings.exchange_rate.exchange_rate"),error:r.v.exchange_rate.$error&&r.v.exchange_rate.$errors[0].$message,required:""},{labelRight:h(()=>[f.value&&r.isEdit?(x(),G("div",O,[q(v(k,{name:"RefreshIcon",class:L(`h-4 w-4 text-primary-500 cursor-pointer outline-none ${a(n)?" animate-spin rotate-180 cursor-not-allowed pointer-events-none ":""}`),onClick:o[0]||(o[0]=i=>y(r.customerCurrency))},null,8,["class"]),[[j,{content:"Fetch Latest Exchange rate"}]])])):C("",!0)]),default:h(()=>[v(S,{modelValue:r.store[r.storeProp].exchange_rate,"onUpdate:modelValue":o[1]||(o[1]=i=>r.store[r.storeProp].exchange_rate=i),"content-loading":a(n)&&!r.isEdit,addon:`1 ${a(c).code} =`,disabled:a(n),onInput:o[2]||(o[2]=i=>r.v.exchange_rate.$touch())},{right:h(()=>[E("span",U,b(a(s).code),1)]),_:1},8,["modelValue","content-loading","addon","disabled"]),E("span",z,b(t.$t("settings.exchange_rate.exchange_help_text",{currency:a(c).code,baseCurrency:a(s).code})),1)]),_:1},8,["content-loading","label","error"])):C("",!0)}}};export{M as _}; +import{d as V,b as _}from"./main.24f7a84b.js";import{u as D}from"./exchange-rate.3b3d35e2.js";import{B as p,k as u,C as l,b1 as F,r as d,K as N,u as a,o as x,l as A,w as h,e as G,q,f as v,m as L,j as C,h as b,t as E}from"./vendor.01d0adc5.js";const O={key:0},U={class:"text-gray-500 sm:text-sm"},z={class:"text-gray-400 text-xs mt-2 font-light"},M={props:{v:{type:Object,default:null},isLoading:{type:Boolean,default:!1},store:{type:Object,default:null},storeProp:{type:String,default:""},isEdit:{type:Boolean,default:!1},customerCurrency:{type:[String,Number],default:null}},setup(r){const e=r,m=V(),B=_(),g=D(),f=p(!1);let n=p(!1);m.fetchCurrencies();const s=u(()=>B.selectedCompanyCurrency),c=u(()=>m.currencies.find(t=>t.id===e.store[e.storeProp].currency_id)),P=u(()=>s.value.id!==e.customerCurrency);l(()=>e.store[e.storeProp].customer,t=>{R(t)},{deep:!0}),l(()=>e.store[e.storeProp].currency_id,t=>{$(t)},{immediate:!0}),l(()=>e.customerCurrency,t=>{t&&e.isEdit&&w()},{immediate:!0});function w(){P.value&&g.checkForActiveProvider(e.customerCurrency).then(t=>{t.data.success&&(f.value=!0)})}function R(t){t?e.store[e.storeProp].currency_id=t.currency.id:e.store[e.storeProp].currency_id=s.value.id}async function $(t){t!==s.value.id?(!e.isEdit&&t&&await y(t),e.store.showExchangeRate=!0):e.store.showExchangeRate=!1}function y(t){n.value=!0,g.getCurrentExchangeRate(t).then(o=>{o.data&&!o.data.error?e.store[e.storeProp].exchange_rate=o.data.exchangeRate[0]:e.store[e.storeProp].exchange_rate="",n.value=!1}).catch(o=>{n.value=!1})}return F(()=>{e.store.showExchangeRate=!1}),(t,o)=>{const k=d("BaseIcon"),S=d("BaseInput"),I=d("BaseInputGroup"),j=N("tooltip");return r.store.showExchangeRate&&a(c)?(x(),A(I,{key:0,"content-loading":a(n)&&!r.isEdit,label:t.$t("settings.exchange_rate.exchange_rate"),error:r.v.exchange_rate.$error&&r.v.exchange_rate.$errors[0].$message,required:""},{labelRight:h(()=>[f.value&&r.isEdit?(x(),G("div",O,[q(v(k,{name:"RefreshIcon",class:L(`h-4 w-4 text-primary-500 cursor-pointer outline-none ${a(n)?" animate-spin rotate-180 cursor-not-allowed pointer-events-none ":""}`),onClick:o[0]||(o[0]=i=>y(r.customerCurrency))},null,8,["class"]),[[j,{content:"Fetch Latest Exchange rate"}]])])):C("",!0)]),default:h(()=>[v(S,{modelValue:r.store[r.storeProp].exchange_rate,"onUpdate:modelValue":o[1]||(o[1]=i=>r.store[r.storeProp].exchange_rate=i),"content-loading":a(n)&&!r.isEdit,addon:`1 ${a(c).code} =`,disabled:a(n),onInput:o[2]||(o[2]=i=>r.v.exchange_rate.$touch())},{right:h(()=>[b("span",U,E(a(s).code),1)]),_:1},8,["modelValue","content-loading","addon","disabled"]),b("span",z,E(t.$t("settings.exchange_rate.exchange_help_text",{currency:a(c).code,baseCurrency:a(s).code})),1)]),_:1},8,["content-loading","label","error"])):C("",!0)}}};export{M as _}; diff --git a/public/build/assets/ExchangeRateProviderSetting.57eedd6c.js b/public/build/assets/ExchangeRateProviderSetting.a7b33d5f.js similarity index 98% rename from public/build/assets/ExchangeRateProviderSetting.57eedd6c.js rename to public/build/assets/ExchangeRateProviderSetting.a7b33d5f.js index 5be552e4e..efc8a04aa 100644 --- a/public/build/assets/ExchangeRateProviderSetting.57eedd6c.js +++ b/public/build/assets/ExchangeRateProviderSetting.a7b33d5f.js @@ -1 +1 @@ -var ie=Object.defineProperty;var J=Object.getOwnPropertySymbols;var ue=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable;var X=(C,c,n)=>c in C?ie(C,c,{enumerable:!0,configurable:!0,writable:!0,value:n}):C[c]=n,T=(C,c)=>{for(var n in c||(c={}))ue.call(c,n)&&X(C,n,c[n]);if(J)for(var n of J(c))de.call(c,n)&&X(C,n,c[n]);return C};import{u as Z}from"./exchange-rate.dffa79b6.js";import{c as K,b as ge,j as ve}from"./main.75722495.js";import{J as Q,B,k as b,L as V,M as G,O as W,R as pe,T as he,C as L,A as me,r as v,o as k,l as I,w as l,h as y,i as w,t as x,u as e,f as s,j as M,m as ee,U as fe,ah as ye,e as _e,aZ as xe,x as Ce,a_ as Ee,a$ as $e,b0 as be,F as Re,a0 as Be}from"./vendor.01d0adc5.js";import ke from"./BaseTable.6e206ca7.js";const we={class:"flex justify-between w-full"},Ve=["onSubmit"],Ie={class:"px-4 md:px-8 py-8 overflow-y-auto sm:p-6"},Se={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},De={setup(C){const{t:c}=Q();let n=B(!1),u=B(!1),E=B(!1),m=B([]),p=B([]);const _=K(),t=Z();let q=B([]);const A=b(()=>({currentExchangeRate:{key:{required:V.withMessage(c("validation.required"),G)},driver:{required:V.withMessage(c("validation.required"),G)},currencies:{required:V.withMessage(c("validation.required"),G)}},currencyConverter:{type:{required:V.withMessage(c("validation.required"),W(i))},url:{required:V.withMessage(c("validation.required"),W($)),url:V.withMessage(c("validation.invalid_url"),pe)}}})),O=b(()=>t.drivers.map(r=>Object.assign({},r,{key:c(r.key)}))),z=b(()=>_.active&&_.componentName==="ExchangeRateProviderModal");b(()=>_.title);const i=b(()=>t.currentExchangeRate.driver==="currency_converter"),$=b(()=>t.currencyConverter&&t.currencyConverter.type==="DEDICATED"),S=b(()=>{switch(t.currentExchangeRate.driver){case"currency_converter":return"https://www.currencyconverterapi.com";case"currency_freak":return"https://currencyfreaks.com";case"currency_layer":return"https://currencylayer.com";case"open_exchange_rate":return"https://openexchangerates.org";default:return""}}),o=he(A,b(()=>t));function N(){m.value=[]}function F(){const{currencies:r}=t.currentExchangeRate;m.value.forEach(a=>{r.forEach((h,f)=>{h===a&&r.splice(f,1)})}),m.value=[]}function j(){t.currentExchangeRate.key=null,t.currentExchangeRate.currencies=[],t.supportedCurrencies=[]}function d(){t.supportedCurrencies=[],p.value=[],t.currentExchangeRate={id:null,name:"",driver:"",key:"",active:!0,currencies:[]},t.currencyConverter={type:"",url:""},m.value=[]}async function D(){t.currentExchangeRate.driver="currency_converter";let r={};t.isEdit&&(r.provider_id=t.currentExchangeRate.id),u.value=!0,await t.fetchDefaultProviders(),await t.fetchActiveCurrency(r),p.value=t.currentExchangeRate.currencies,u.value=!1}L(()=>i.value,(r,a)=>{r&&ae()},{immediate:!0}),L(()=>t.currentExchangeRate.key,(r,a)=>{r&&P()}),L(()=>{var r;return(r=t==null?void 0:t.currencyConverter)==null?void 0:r.type},(r,a)=>{r&&P()}),P=me.exports.debounce(P,500);function te(){return o.value.$touch(),ne(),!!(o.value.$invalid||m.value.length&&t.currentExchangeRate.active)}async function re(){if(te())return!0;let r=T({},t.currentExchangeRate);i.value&&(r.driver_config=T({},t.currencyConverter),$.value||(r.driver_config.url=""));const a=t.isEdit?t.updateProvider:t.addProvider;n.value=!0,await a(r).then(h=>{n.value=!1,_.refreshData&&_.refreshData(),U()}).catch(h=>{n.value=!1})}async function ae(){let r=await t.getCurrencyConverterServers();q.value=r.data.currency_converter_servers,t.currencyConverter.type="FREE"}function P(){var h;const{driver:r,key:a}=t.currentExchangeRate;if(r&&a){E.value=!0;let f={driver:r,key:a};if(i.value&&!t.currencyConverter.type){E.value=!1;return}((h=t==null?void 0:t.currencyConverter)==null?void 0:h.type)&&(f.type=t.currencyConverter.type),t.fetchCurrencies(f).then(R=>{E.value=!1}).catch(R=>{E.value=!1})}}function ne(r=!0){var h;m.value=[];const{currencies:a}=t.currentExchangeRate;a.length&&((h=t.activeUsedCurrencies)==null?void 0:h.length)&&a.forEach(f=>{t.activeUsedCurrencies.includes(f)&&m.value.push(f)})}function U(){_.closeModal(),setTimeout(()=>{d(),o.value.$reset()},300)}return(r,a)=>{const h=v("BaseIcon"),f=v("BaseMultiselect"),R=v("BaseInputGroup"),Y=v("BaseInput"),oe=v("BaseSwitch"),se=v("BaseInputGrid"),le=v("BaseInfoAlert"),H=v("BaseButton"),ce=v("BaseModal");return k(),I(ce,{show:e(z),onClose:U,onOpen:D},{header:l(()=>[y("div",we,[w(x(e(_).title)+" ",1),s(h,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:U})])]),default:l(()=>[y("form",{onSubmit:fe(re,["prevent"])},[y("div",Ie,[s(se,{layout:"one-column"},{default:l(()=>[s(R,{label:r.$tc("settings.exchange_rate.driver"),"content-loading":e(u),required:"",error:e(o).currentExchangeRate.driver.$error&&e(o).currentExchangeRate.driver.$errors[0].$message,"help-text":e(S)},{default:l(()=>[s(f,{modelValue:e(t).currentExchangeRate.driver,"onUpdate:modelValue":[a[0]||(a[0]=g=>e(t).currentExchangeRate.driver=g),j],options:e(O),"content-loading":e(u),"value-prop":"value","can-deselect":!0,label:"key",searchable:!0,invalid:e(o).currentExchangeRate.driver.$error,onInput:a[1]||(a[1]=g=>e(o).currentExchangeRate.driver.$touch())},null,8,["modelValue","options","content-loading","invalid"])]),_:1},8,["label","content-loading","error","help-text"]),e(i)?(k(),I(R,{key:0,required:"",label:r.$t("settings.exchange_rate.server"),"content-loading":e(u),error:e(o).currencyConverter.type.$error&&e(o).currencyConverter.type.$errors[0].$message},{default:l(()=>[s(f,{modelValue:e(t).currencyConverter.type,"onUpdate:modelValue":[a[2]||(a[2]=g=>e(t).currencyConverter.type=g),j],"content-loading":e(u),"value-prop":"value",searchable:"",options:e(q),invalid:e(o).currencyConverter.type.$error,label:"value"},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"])):M("",!0),s(R,{label:r.$t("settings.exchange_rate.key"),required:"","content-loading":e(u),error:e(o).currentExchangeRate.key.$error&&e(o).currentExchangeRate.key.$errors[0].$message},{default:l(()=>[s(Y,{modelValue:e(t).currentExchangeRate.key,"onUpdate:modelValue":a[3]||(a[3]=g=>e(t).currentExchangeRate.key=g),"content-loading":e(u),type:"text",name:"key",loading:e(E),"loading-position":"right",invalid:e(o).currentExchangeRate.key.$error},null,8,["modelValue","content-loading","loading","invalid"])]),_:1},8,["label","content-loading","error"]),e(t).supportedCurrencies.length?(k(),I(R,{key:1,label:r.$t("settings.exchange_rate.currency"),"content-loading":e(u),error:e(o).currentExchangeRate.currencies.$error&&e(o).currentExchangeRate.currencies.$errors[0].$message,"help-text":r.$t("settings.exchange_rate.currency_help_text")},{default:l(()=>[s(f,{modelValue:e(t).currentExchangeRate.currencies,"onUpdate:modelValue":a[4]||(a[4]=g=>e(t).currentExchangeRate.currencies=g),"content-loading":e(u),"value-prop":"code",mode:"tags",searchable:"",options:e(t).supportedCurrencies,invalid:e(o).currentExchangeRate.currencies.$error,label:"code","track-by":"code",onInput:a[5]||(a[5]=g=>e(o).currentExchangeRate.currencies.$touch()),openDirection:"top"},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error","help-text"])):M("",!0),e($)?(k(),I(R,{key:2,label:r.$t("settings.exchange_rate.url"),"content-loading":e(u),error:e(o).currencyConverter.url.$error&&e(o).currencyConverter.url.$errors[0].$message},{default:l(()=>[s(Y,{modelValue:e(t).currencyConverter.url,"onUpdate:modelValue":a[6]||(a[6]=g=>e(t).currencyConverter.url=g),"content-loading":e(u),type:"url",invalid:e(o).currencyConverter.url.$error,onInput:a[7]||(a[7]=g=>e(o).currencyConverter.url.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"])):M("",!0),s(oe,{modelValue:e(t).currentExchangeRate.active,"onUpdate:modelValue":a[8]||(a[8]=g=>e(t).currentExchangeRate.active=g),class:"flex","label-right":r.$t("settings.exchange_rate.active")},null,8,["modelValue","label-right"])]),_:1}),e(m).length&&e(t).currentExchangeRate.active?(k(),I(le,{key:0,class:"mt-5",title:r.$t("settings.exchange_rate.currency_in_used"),lists:[e(m).toString()],actions:["Remove"],onHide:N,onRemove:F},null,8,["title","lists"])):M("",!0)]),y("div",Se,[s(H,{class:"mr-3",variant:"primary-outline",type:"button",disabled:e(n),onClick:U},{default:l(()=>[w(x(r.$t("general.cancel")),1)]),_:1},8,["disabled"]),s(H,{loading:e(n),disabled:e(n)||e(E),variant:"primary",type:"submit"},{left:l(g=>[e(n)?M("",!0):(k(),I(h,{key:0,name:"SaveIcon",class:ee(g.class)},null,8,["class"]))]),default:l(()=>[w(" "+x(e(t).isEdit?r.$t("general.update"):r.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,Ve)]),_:1},8,["show"])}}},Me={slot:"header",class:"flex flex-wrap justify-between lg:flex-nowrap"},qe={class:"text-lg font-medium text-left"},Ne={class:"mt-2 text-sm leading-snug text-left text-gray-500",style:{"max-width":"680px"}},je={class:"mt-4 lg:mt-0 lg:ml-2"},Pe={class:"capitalize"},Ue={class:"inline-block"},Ge={setup(C){const{tm:c,t:n}=Q();ge();const u=Z(),E=K(),m=ve();let p=B("");const _=ye("utils"),t=b(()=>[{key:"driver",label:n("settings.exchange_rate.driver"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"key",label:n("settings.exchange_rate.key"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"active",label:n("settings.exchange_rate.active"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function q({page:i,sort:$}){let S=Be({orderByField:$.fieldName||"created_at",orderBy:$.order||"desc",page:i}),o=await u.fetchProviders(S);return{data:o.data.data,pagination:{totalPages:o.data.meta.last_page,currentPage:i,totalCount:o.data.meta.total,limit:5}}}function A(){E.openModal({title:n("settings.exchange_rate.new_driver"),componentName:"ExchangeRateProviderModal",size:"md",refreshData:p.value&&p.value.refresh})}function O(i){u.fetchProvider(i),E.openModal({title:n("settings.exchange_rate.edit_driver"),componentName:"ExchangeRateProviderModal",size:"md",data:i,refreshData:p.value&&p.value.refresh})}function z(i){m.openDialog({title:n("general.are_you_sure"),message:n("settings.exchange_rate.exchange_rate_confirm_delete"),yesLabel:n("general.ok"),noLabel:n("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async $=>{$&&(await u.deleteExchangeRate(i),p.value&&p.value.refresh())})}return(i,$)=>{const S=v("BaseButton"),o=v("BaseBadge"),N=v("BaseDropdownItem"),F=v("BaseDropdown"),j=v("BaseCard");return k(),_e(Re,null,[s(De),s(j,null,{default:l(()=>[y("div",Me,[y("div",null,[y("h6",qe,x(i.$t("settings.menu_title.exchange_rate")),1),y("p",Ne,x(i.$t("settings.exchange_rate.providers_description")),1)]),y("div",je,[s(S,{variant:"primary-outline",size:"lg",onClick:A},{left:l(d=>[s(e(xe),{class:ee(d.class)},null,8,["class"])]),default:l(()=>[w(" "+x(i.$t("settings.exchange_rate.new_driver")),1)]),_:1})])]),s(ke,{ref:(d,D)=>{D.table=d,Ce(p)?p.value=d:p=d},class:"mt-16",data:q,columns:e(t)},{"cell-driver":l(({row:d})=>[y("span",Pe,x(d.data.driver.replace("_"," ")),1)]),"cell-active":l(({row:d})=>[s(o,{"bg-color":e(_).getBadgeStatusColor(d.data.active?"YES":"NO").bgColor,color:e(_).getBadgeStatusColor(d.data.active?"YES":"NO").color},{default:l(()=>[w(x(d.data.active?"YES":"NO"),1)]),_:2},1032,["bg-color","color"])]),"cell-actions":l(({row:d})=>[s(F,null,{activator:l(()=>[y("div",Ue,[s(e(Ee),{class:"w-5 text-gray-500"})])]),default:l(()=>[s(N,{onClick:D=>O(d.data.id)},{default:l(()=>[s(e($e),{class:"h-5 mr-3 text-gray-600"}),w(" "+x(i.$t("general.edit")),1)]),_:2},1032,["onClick"]),s(N,{onClick:D=>z(d.data.id)},{default:l(()=>[s(e(be),{class:"h-5 mr-3 text-gray-600"}),w(" "+x(i.$t("general.delete")),1)]),_:2},1032,["onClick"])]),_:2},1024)]),_:1},8,["columns"])]),_:1})],64)}}};export{Ge as default}; +var ie=Object.defineProperty;var J=Object.getOwnPropertySymbols;var ue=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable;var X=(C,c,n)=>c in C?ie(C,c,{enumerable:!0,configurable:!0,writable:!0,value:n}):C[c]=n,T=(C,c)=>{for(var n in c||(c={}))ue.call(c,n)&&X(C,n,c[n]);if(J)for(var n of J(c))de.call(c,n)&&X(C,n,c[n]);return C};import{u as Z}from"./exchange-rate.3b3d35e2.js";import{c as K,b as ge,j as ve}from"./main.24f7a84b.js";import{J as Q,B,k as b,L as V,M as G,O as W,R as pe,T as he,C as L,A as me,r as v,o as k,l as I,w as l,h as y,i as w,t as x,u as e,f as s,j as M,m as ee,U as fe,ah as ye,e as _e,aZ as xe,x as Ce,a_ as Ee,a$ as $e,b0 as be,F as Re,a0 as Be}from"./vendor.01d0adc5.js";import ke from"./BaseTable.ab76526e.js";const we={class:"flex justify-between w-full"},Ve=["onSubmit"],Ie={class:"px-4 md:px-8 py-8 overflow-y-auto sm:p-6"},Se={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},De={setup(C){const{t:c}=Q();let n=B(!1),u=B(!1),E=B(!1),m=B([]),p=B([]);const _=K(),t=Z();let q=B([]);const A=b(()=>({currentExchangeRate:{key:{required:V.withMessage(c("validation.required"),G)},driver:{required:V.withMessage(c("validation.required"),G)},currencies:{required:V.withMessage(c("validation.required"),G)}},currencyConverter:{type:{required:V.withMessage(c("validation.required"),W(i))},url:{required:V.withMessage(c("validation.required"),W($)),url:V.withMessage(c("validation.invalid_url"),pe)}}})),O=b(()=>t.drivers.map(r=>Object.assign({},r,{key:c(r.key)}))),z=b(()=>_.active&&_.componentName==="ExchangeRateProviderModal");b(()=>_.title);const i=b(()=>t.currentExchangeRate.driver==="currency_converter"),$=b(()=>t.currencyConverter&&t.currencyConverter.type==="DEDICATED"),S=b(()=>{switch(t.currentExchangeRate.driver){case"currency_converter":return"https://www.currencyconverterapi.com";case"currency_freak":return"https://currencyfreaks.com";case"currency_layer":return"https://currencylayer.com";case"open_exchange_rate":return"https://openexchangerates.org";default:return""}}),o=he(A,b(()=>t));function N(){m.value=[]}function F(){const{currencies:r}=t.currentExchangeRate;m.value.forEach(a=>{r.forEach((h,f)=>{h===a&&r.splice(f,1)})}),m.value=[]}function j(){t.currentExchangeRate.key=null,t.currentExchangeRate.currencies=[],t.supportedCurrencies=[]}function d(){t.supportedCurrencies=[],p.value=[],t.currentExchangeRate={id:null,name:"",driver:"",key:"",active:!0,currencies:[]},t.currencyConverter={type:"",url:""},m.value=[]}async function D(){t.currentExchangeRate.driver="currency_converter";let r={};t.isEdit&&(r.provider_id=t.currentExchangeRate.id),u.value=!0,await t.fetchDefaultProviders(),await t.fetchActiveCurrency(r),p.value=t.currentExchangeRate.currencies,u.value=!1}L(()=>i.value,(r,a)=>{r&&ae()},{immediate:!0}),L(()=>t.currentExchangeRate.key,(r,a)=>{r&&P()}),L(()=>{var r;return(r=t==null?void 0:t.currencyConverter)==null?void 0:r.type},(r,a)=>{r&&P()}),P=me.exports.debounce(P,500);function te(){return o.value.$touch(),ne(),!!(o.value.$invalid||m.value.length&&t.currentExchangeRate.active)}async function re(){if(te())return!0;let r=T({},t.currentExchangeRate);i.value&&(r.driver_config=T({},t.currencyConverter),$.value||(r.driver_config.url=""));const a=t.isEdit?t.updateProvider:t.addProvider;n.value=!0,await a(r).then(h=>{n.value=!1,_.refreshData&&_.refreshData(),U()}).catch(h=>{n.value=!1})}async function ae(){let r=await t.getCurrencyConverterServers();q.value=r.data.currency_converter_servers,t.currencyConverter.type="FREE"}function P(){var h;const{driver:r,key:a}=t.currentExchangeRate;if(r&&a){E.value=!0;let f={driver:r,key:a};if(i.value&&!t.currencyConverter.type){E.value=!1;return}((h=t==null?void 0:t.currencyConverter)==null?void 0:h.type)&&(f.type=t.currencyConverter.type),t.fetchCurrencies(f).then(R=>{E.value=!1}).catch(R=>{E.value=!1})}}function ne(r=!0){var h;m.value=[];const{currencies:a}=t.currentExchangeRate;a.length&&((h=t.activeUsedCurrencies)==null?void 0:h.length)&&a.forEach(f=>{t.activeUsedCurrencies.includes(f)&&m.value.push(f)})}function U(){_.closeModal(),setTimeout(()=>{d(),o.value.$reset()},300)}return(r,a)=>{const h=v("BaseIcon"),f=v("BaseMultiselect"),R=v("BaseInputGroup"),Y=v("BaseInput"),oe=v("BaseSwitch"),se=v("BaseInputGrid"),le=v("BaseInfoAlert"),H=v("BaseButton"),ce=v("BaseModal");return k(),I(ce,{show:e(z),onClose:U,onOpen:D},{header:l(()=>[y("div",we,[w(x(e(_).title)+" ",1),s(h,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:U})])]),default:l(()=>[y("form",{onSubmit:fe(re,["prevent"])},[y("div",Ie,[s(se,{layout:"one-column"},{default:l(()=>[s(R,{label:r.$tc("settings.exchange_rate.driver"),"content-loading":e(u),required:"",error:e(o).currentExchangeRate.driver.$error&&e(o).currentExchangeRate.driver.$errors[0].$message,"help-text":e(S)},{default:l(()=>[s(f,{modelValue:e(t).currentExchangeRate.driver,"onUpdate:modelValue":[a[0]||(a[0]=g=>e(t).currentExchangeRate.driver=g),j],options:e(O),"content-loading":e(u),"value-prop":"value","can-deselect":!0,label:"key",searchable:!0,invalid:e(o).currentExchangeRate.driver.$error,onInput:a[1]||(a[1]=g=>e(o).currentExchangeRate.driver.$touch())},null,8,["modelValue","options","content-loading","invalid"])]),_:1},8,["label","content-loading","error","help-text"]),e(i)?(k(),I(R,{key:0,required:"",label:r.$t("settings.exchange_rate.server"),"content-loading":e(u),error:e(o).currencyConverter.type.$error&&e(o).currencyConverter.type.$errors[0].$message},{default:l(()=>[s(f,{modelValue:e(t).currencyConverter.type,"onUpdate:modelValue":[a[2]||(a[2]=g=>e(t).currencyConverter.type=g),j],"content-loading":e(u),"value-prop":"value",searchable:"",options:e(q),invalid:e(o).currencyConverter.type.$error,label:"value"},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"])):M("",!0),s(R,{label:r.$t("settings.exchange_rate.key"),required:"","content-loading":e(u),error:e(o).currentExchangeRate.key.$error&&e(o).currentExchangeRate.key.$errors[0].$message},{default:l(()=>[s(Y,{modelValue:e(t).currentExchangeRate.key,"onUpdate:modelValue":a[3]||(a[3]=g=>e(t).currentExchangeRate.key=g),"content-loading":e(u),type:"text",name:"key",loading:e(E),"loading-position":"right",invalid:e(o).currentExchangeRate.key.$error},null,8,["modelValue","content-loading","loading","invalid"])]),_:1},8,["label","content-loading","error"]),e(t).supportedCurrencies.length?(k(),I(R,{key:1,label:r.$t("settings.exchange_rate.currency"),"content-loading":e(u),error:e(o).currentExchangeRate.currencies.$error&&e(o).currentExchangeRate.currencies.$errors[0].$message,"help-text":r.$t("settings.exchange_rate.currency_help_text")},{default:l(()=>[s(f,{modelValue:e(t).currentExchangeRate.currencies,"onUpdate:modelValue":a[4]||(a[4]=g=>e(t).currentExchangeRate.currencies=g),"content-loading":e(u),"value-prop":"code",mode:"tags",searchable:"",options:e(t).supportedCurrencies,invalid:e(o).currentExchangeRate.currencies.$error,label:"code","track-by":"code",onInput:a[5]||(a[5]=g=>e(o).currentExchangeRate.currencies.$touch()),openDirection:"top"},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error","help-text"])):M("",!0),e($)?(k(),I(R,{key:2,label:r.$t("settings.exchange_rate.url"),"content-loading":e(u),error:e(o).currencyConverter.url.$error&&e(o).currencyConverter.url.$errors[0].$message},{default:l(()=>[s(Y,{modelValue:e(t).currencyConverter.url,"onUpdate:modelValue":a[6]||(a[6]=g=>e(t).currencyConverter.url=g),"content-loading":e(u),type:"url",invalid:e(o).currencyConverter.url.$error,onInput:a[7]||(a[7]=g=>e(o).currencyConverter.url.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"])):M("",!0),s(oe,{modelValue:e(t).currentExchangeRate.active,"onUpdate:modelValue":a[8]||(a[8]=g=>e(t).currentExchangeRate.active=g),class:"flex","label-right":r.$t("settings.exchange_rate.active")},null,8,["modelValue","label-right"])]),_:1}),e(m).length&&e(t).currentExchangeRate.active?(k(),I(le,{key:0,class:"mt-5",title:r.$t("settings.exchange_rate.currency_in_used"),lists:[e(m).toString()],actions:["Remove"],onHide:N,onRemove:F},null,8,["title","lists"])):M("",!0)]),y("div",Se,[s(H,{class:"mr-3",variant:"primary-outline",type:"button",disabled:e(n),onClick:U},{default:l(()=>[w(x(r.$t("general.cancel")),1)]),_:1},8,["disabled"]),s(H,{loading:e(n),disabled:e(n)||e(E),variant:"primary",type:"submit"},{left:l(g=>[e(n)?M("",!0):(k(),I(h,{key:0,name:"SaveIcon",class:ee(g.class)},null,8,["class"]))]),default:l(()=>[w(" "+x(e(t).isEdit?r.$t("general.update"):r.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,Ve)]),_:1},8,["show"])}}},Me={slot:"header",class:"flex flex-wrap justify-between lg:flex-nowrap"},qe={class:"text-lg font-medium text-left"},Ne={class:"mt-2 text-sm leading-snug text-left text-gray-500",style:{"max-width":"680px"}},je={class:"mt-4 lg:mt-0 lg:ml-2"},Pe={class:"capitalize"},Ue={class:"inline-block"},Ge={setup(C){const{tm:c,t:n}=Q();ge();const u=Z(),E=K(),m=ve();let p=B("");const _=ye("utils"),t=b(()=>[{key:"driver",label:n("settings.exchange_rate.driver"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"key",label:n("settings.exchange_rate.key"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"active",label:n("settings.exchange_rate.active"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function q({page:i,sort:$}){let S=Be({orderByField:$.fieldName||"created_at",orderBy:$.order||"desc",page:i}),o=await u.fetchProviders(S);return{data:o.data.data,pagination:{totalPages:o.data.meta.last_page,currentPage:i,totalCount:o.data.meta.total,limit:5}}}function A(){E.openModal({title:n("settings.exchange_rate.new_driver"),componentName:"ExchangeRateProviderModal",size:"md",refreshData:p.value&&p.value.refresh})}function O(i){u.fetchProvider(i),E.openModal({title:n("settings.exchange_rate.edit_driver"),componentName:"ExchangeRateProviderModal",size:"md",data:i,refreshData:p.value&&p.value.refresh})}function z(i){m.openDialog({title:n("general.are_you_sure"),message:n("settings.exchange_rate.exchange_rate_confirm_delete"),yesLabel:n("general.ok"),noLabel:n("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async $=>{$&&(await u.deleteExchangeRate(i),p.value&&p.value.refresh())})}return(i,$)=>{const S=v("BaseButton"),o=v("BaseBadge"),N=v("BaseDropdownItem"),F=v("BaseDropdown"),j=v("BaseCard");return k(),_e(Re,null,[s(De),s(j,null,{default:l(()=>[y("div",Me,[y("div",null,[y("h6",qe,x(i.$t("settings.menu_title.exchange_rate")),1),y("p",Ne,x(i.$t("settings.exchange_rate.providers_description")),1)]),y("div",je,[s(S,{variant:"primary-outline",size:"lg",onClick:A},{left:l(d=>[s(e(xe),{class:ee(d.class)},null,8,["class"])]),default:l(()=>[w(" "+x(i.$t("settings.exchange_rate.new_driver")),1)]),_:1})])]),s(ke,{ref:(d,D)=>{D.table=d,Ce(p)?p.value=d:p=d},class:"mt-16",data:q,columns:e(t)},{"cell-driver":l(({row:d})=>[y("span",Pe,x(d.data.driver.replace("_"," ")),1)]),"cell-active":l(({row:d})=>[s(o,{"bg-color":e(_).getBadgeStatusColor(d.data.active?"YES":"NO").bgColor,color:e(_).getBadgeStatusColor(d.data.active?"YES":"NO").color},{default:l(()=>[w(x(d.data.active?"YES":"NO"),1)]),_:2},1032,["bg-color","color"])]),"cell-actions":l(({row:d})=>[s(F,null,{activator:l(()=>[y("div",Ue,[s(e(Ee),{class:"w-5 text-gray-500"})])]),default:l(()=>[s(N,{onClick:D=>O(d.data.id)},{default:l(()=>[s(e($e),{class:"h-5 mr-3 text-gray-600"}),w(" "+x(i.$t("general.edit")),1)]),_:2},1032,["onClick"]),s(N,{onClick:D=>z(d.data.id)},{default:l(()=>[s(e(be),{class:"h-5 mr-3 text-gray-600"}),w(" "+x(i.$t("general.delete")),1)]),_:2},1032,["onClick"])]),_:2},1024)]),_:1},8,["columns"])]),_:1})],64)}}};export{Ge as default}; diff --git a/public/build/assets/ExpenseCategorySetting.80e0d8ac.js b/public/build/assets/ExpenseCategorySetting.9d23ded7.js similarity index 94% rename from public/build/assets/ExpenseCategorySetting.80e0d8ac.js rename to public/build/assets/ExpenseCategorySetting.9d23ded7.js index d8f961c28..15ff1db07 100644 --- a/public/build/assets/ExpenseCategorySetting.80e0d8ac.js +++ b/public/build/assets/ExpenseCategorySetting.9d23ded7.js @@ -1 +1 @@ -import{j as v,u as $,e as M,c as S,g as k}from"./main.75722495.js";import{u as E}from"./category.4b37f0ed.js";import{J as I,G as T,ah as z,r as i,o as m,l as p,w as e,u as g,f as n,i as w,t as C,j as N,B as P,k as F,e as V,m as L,h as j,F as A}from"./vendor.01d0adc5.js";import{_ as H}from"./CategoryModal.9a2e05b9.js";const O={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(y){const d=y,B=v();$();const{t:o}=I(),s=E(),h=T(),_=M(),x=S();z("utils");function b(l){s.fetchCategory(l),x.openModal({title:o("settings.expense_category.edit_category"),componentName:"CategoryModal",refreshData:d.loadData,size:"sm"})}function r(l){B.openDialog({title:o("general.are_you_sure"),message:o("settings.expense_category.confirm_delete"),yesLabel:o("general.ok"),noLabel:o("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async()=>{if((await s.deleteCategory(l)).data.success)return d.loadData&&d.loadData(),!0;d.loadData&&d.loadData()})}return(l,t)=>{const c=i("BaseIcon"),u=i("BaseButton"),f=i("BaseDropdownItem"),a=i("BaseDropdown");return m(),p(a,null,{activator:e(()=>[g(h).name==="expenseCategorys.view"?(m(),p(u,{key:0,variant:"primary"},{default:e(()=>[n(c,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(m(),p(c,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:e(()=>[g(_).hasAbilities(g(k).EDIT_EXPENSE)?(m(),p(f,{key:0,onClick:t[0]||(t[0]=D=>b(y.row.id))},{default:e(()=>[n(c,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),w(" "+C(l.$t("general.edit")),1)]),_:1})):N("",!0),g(_).hasAbilities(g(k).DELETE_EXPENSE)?(m(),p(f,{key:1,onClick:t[1]||(t[1]=D=>r(y.row.id))},{default:e(()=>[n(c,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),w(" "+C(l.$t("general.delete")),1)]),_:1})):N("",!0)]),_:1})}}},X={class:"w-64"},G={class:"truncate"},K={setup(y){const d=E();v();const B=S(),{t:o}=I(),s=P(null),h=F(()=>[{key:"name",label:o("settings.expense_category.category_name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"description",label:o("settings.expense_category.category_description"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function _({page:r,filter:l,sort:t}){let c={orderByField:t.fieldName||"created_at",orderBy:t.order||"desc",page:r},u=await d.fetchCategories(c);return{data:u.data.data,pagination:{totalPages:u.data.meta.last_page,currentPage:r,totalCount:u.data.meta.total,limit:5}}}function x(){B.openModal({title:o("settings.expense_category.add_category"),componentName:"CategoryModal",size:"sm",refreshData:s.value&&s.value.refresh})}async function b(){s.value&&s.value.refresh()}return(r,l)=>{const t=i("BaseIcon"),c=i("BaseButton"),u=i("BaseTable"),f=i("BaseSettingCard");return m(),V(A,null,[n(H),n(f,{title:r.$t("settings.expense_category.title"),description:r.$t("settings.expense_category.description")},{action:e(()=>[n(c,{variant:"primary-outline",type:"button",onClick:x},{left:e(a=>[n(t,{class:L(a.class),name:"PlusIcon"},null,8,["class"])]),default:e(()=>[w(" "+C(r.$t("settings.expense_category.add_new_category")),1)]),_:1})]),default:e(()=>[n(u,{ref:(a,D)=>{D.table=a,s.value=a},data:_,columns:g(h),class:"mt-16"},{"cell-description":e(({row:a})=>[j("div",X,[j("p",G,C(a.data.description),1)])]),"cell-actions":e(({row:a})=>[n(O,{row:a.data,table:s.value,"load-data":b},null,8,["row","table"])]),_:1},8,["columns"])]),_:1},8,["title","description"])],64)}}};export{K as default}; +import{j as v,u as $,e as M,c as S,g as k}from"./main.24f7a84b.js";import{u as E}from"./category.5ef2a7e7.js";import{J as I,G as T,ah as z,r as i,o as m,l as p,w as e,u as g,f as n,i as w,t as C,j as N,B as P,k as F,e as V,m as L,h as j,F as A}from"./vendor.01d0adc5.js";import{_ as H}from"./CategoryModal.5e03bcbb.js";const O={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(y){const d=y,B=v();$();const{t:o}=I(),s=E(),h=T(),_=M(),x=S();z("utils");function b(l){s.fetchCategory(l),x.openModal({title:o("settings.expense_category.edit_category"),componentName:"CategoryModal",refreshData:d.loadData,size:"sm"})}function r(l){B.openDialog({title:o("general.are_you_sure"),message:o("settings.expense_category.confirm_delete"),yesLabel:o("general.ok"),noLabel:o("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async()=>{if((await s.deleteCategory(l)).data.success)return d.loadData&&d.loadData(),!0;d.loadData&&d.loadData()})}return(l,t)=>{const c=i("BaseIcon"),u=i("BaseButton"),f=i("BaseDropdownItem"),a=i("BaseDropdown");return m(),p(a,null,{activator:e(()=>[g(h).name==="expenseCategorys.view"?(m(),p(u,{key:0,variant:"primary"},{default:e(()=>[n(c,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(m(),p(c,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:e(()=>[g(_).hasAbilities(g(k).EDIT_EXPENSE)?(m(),p(f,{key:0,onClick:t[0]||(t[0]=D=>b(y.row.id))},{default:e(()=>[n(c,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),w(" "+C(l.$t("general.edit")),1)]),_:1})):N("",!0),g(_).hasAbilities(g(k).DELETE_EXPENSE)?(m(),p(f,{key:1,onClick:t[1]||(t[1]=D=>r(y.row.id))},{default:e(()=>[n(c,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),w(" "+C(l.$t("general.delete")),1)]),_:1})):N("",!0)]),_:1})}}},X={class:"w-64"},G={class:"truncate"},K={setup(y){const d=E();v();const B=S(),{t:o}=I(),s=P(null),h=F(()=>[{key:"name",label:o("settings.expense_category.category_name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"description",label:o("settings.expense_category.category_description"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function _({page:r,filter:l,sort:t}){let c={orderByField:t.fieldName||"created_at",orderBy:t.order||"desc",page:r},u=await d.fetchCategories(c);return{data:u.data.data,pagination:{totalPages:u.data.meta.last_page,currentPage:r,totalCount:u.data.meta.total,limit:5}}}function x(){B.openModal({title:o("settings.expense_category.add_category"),componentName:"CategoryModal",size:"sm",refreshData:s.value&&s.value.refresh})}async function b(){s.value&&s.value.refresh()}return(r,l)=>{const t=i("BaseIcon"),c=i("BaseButton"),u=i("BaseTable"),f=i("BaseSettingCard");return m(),V(A,null,[n(H),n(f,{title:r.$t("settings.expense_category.title"),description:r.$t("settings.expense_category.description")},{action:e(()=>[n(c,{variant:"primary-outline",type:"button",onClick:x},{left:e(a=>[n(t,{class:L(a.class),name:"PlusIcon"},null,8,["class"])]),default:e(()=>[w(" "+C(r.$t("settings.expense_category.add_new_category")),1)]),_:1})]),default:e(()=>[n(u,{ref:(a,D)=>{D.table=a,s.value=a},data:_,columns:g(h),class:"mt-16"},{"cell-description":e(({row:a})=>[j("div",X,[j("p",G,C(a.data.description),1)])]),"cell-actions":e(({row:a})=>[n(O,{row:a.data,table:s.value,"load-data":b},null,8,["row","table"])]),_:1},8,["columns"])]),_:1},8,["title","description"])],64)}}};export{K as default}; diff --git a/public/build/assets/FileDiskSetting.b99dc80a.js b/public/build/assets/FileDiskSetting.467dcb51.js similarity index 99% rename from public/build/assets/FileDiskSetting.b99dc80a.js rename to public/build/assets/FileDiskSetting.467dcb51.js index f4286a1fa..5303980d9 100644 --- a/public/build/assets/FileDiskSetting.b99dc80a.js +++ b/public/build/assets/FileDiskSetting.467dcb51.js @@ -1 +1 @@ -var re=Object.defineProperty;var X=Object.getOwnPropertySymbols;var se=Object.prototype.hasOwnProperty,le=Object.prototype.propertyIsEnumerable;var Q=(t,i,a)=>i in t?re(t,i,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[i]=a,W=(t,i)=>{for(var a in i||(i={}))se.call(i,a)&&Q(t,a,i[a]);if(X)for(var a of X(i))le.call(i,a)&&Q(t,a,i[a]);return t};import{u as j}from"./disk.518ebc4b.js";import{_ as F,c as G,b as ne,j as de}from"./main.75722495.js";import{J as A,B as p,k as S,L as g,M as D,T as R,b1 as Y,a0 as L,r as f,o as y,e as h,h as b,f as r,w as n,t as V,j as E,g as z,U as K,R as ue,a7 as fe,l as N,i as U,aj as ke,ah as me,m as ve,x as Z,u as P,F as ge}from"./vendor.01d0adc5.js";const ce={props:{isEdit:{type:Boolean,require:!0,default:!1},loading:{type:Boolean,require:!0,default:!1},disks:{type:Array,require:!0,default:Array}},emits:["submit","onChangeDisk"],setup(t,{emit:i}){const a=j(),e=G(),{t:u}=A();let k=p(!1),s=p(!1),l=p(null),d=p(null);const c=S({get:()=>a.selected_driver,set:v=>{a.selected_driver=v,a.dropBoxDiskConfig.selected_driver=v}}),m=S(()=>({dropBoxDiskConfig:{root:{required:g.withMessage(u("validation.required"),D)},key:{required:g.withMessage(u("validation.required"),D)},secret:{required:g.withMessage(u("validation.required"),D)},token:{required:g.withMessage(u("validation.required"),D)},app:{required:g.withMessage(u("validation.required"),D)},selected_driver:{required:g.withMessage(u("validation.required"),D)},name:{required:g.withMessage(u("validation.required"),D)}}})),o=R(m,S(()=>a));Y(()=>{a.dropBoxDiskConfig={name:null,selected_driver:"dropbox",token:null,key:null,secret:null,app:null}}),B();async function B(){s.value=!0;let v=L({disk:"dropbox"});if(t.isEdit)Object.assign(a.dropBoxDiskConfig,e.data),k.value=e.data.set_as_default,k.value&&(l.value=!0);else{let $=await a.fetchDiskEnv(v);Object.assign(a.dropBoxDiskConfig,$.data)}d.value=t.disks.find($=>$.value=="dropbox"),s.value=!1}const M=S(()=>!!(t.isEdit&&k.value&&l.value));async function w(){if(o.value.dropBoxDiskConfig.$touch(),o.value.dropBoxDiskConfig.$invalid)return!0;let v={credentials:a.dropBoxDiskConfig,name:a.dropBoxDiskConfig.name,driver:d.value.value,set_as_default:k.value};return i("submit",v),!1}function I(){i("onChangeDisk",a.dropBoxDiskConfig.selected_driver)}return{v$:o,diskStore:a,selected_driver:c,set_as_default:k,isLoading:s,is_current_disk:l,selected_disk:d,isDisabled:M,loadData:B,submitData:w,onChangeDriver:I}}},De={class:"px-8 py-6"},Ce={key:0,class:"flex items-center mt-6"},pe={class:"relative flex items-center w-12"},_e={class:"ml-4 right"},be={class:"p-0 mb-1 text-base leading-snug text-black box-title"};function Se(t,i,a,e,u,k){const s=f("BaseInput"),l=f("BaseInputGroup"),d=f("BaseMultiselect"),c=f("BaseInputGrid"),m=f("BaseSwitch");return y(),h("form",{onSubmit:i[15]||(i[15]=K((...o)=>e.submitData&&e.submitData(...o),["prevent"]))},[b("div",De,[r(c,null,{default:n(()=>[r(l,{label:t.$t("settings.disk.name"),error:e.v$.dropBoxDiskConfig.name.$error&&e.v$.dropBoxDiskConfig.name.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.dropBoxDiskConfig.name,"onUpdate:modelValue":i[0]||(i[0]=o=>e.diskStore.dropBoxDiskConfig.name=o),type:"text",name:"name",invalid:e.v$.dropBoxDiskConfig.name.$error,onInput:i[1]||(i[1]=o=>e.v$.dropBoxDiskConfig.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.driver"),error:e.v$.dropBoxDiskConfig.selected_driver.$error&&e.v$.dropBoxDiskConfig.selected_driver.$errors[0].$message,required:""},{default:n(()=>[r(d,{modelValue:e.selected_driver,"onUpdate:modelValue":[i[2]||(i[2]=o=>e.selected_driver=o),i[3]||(i[3]=o=>e.onChangeDriver(t.data))],invalid:e.v$.dropBoxDiskConfig.selected_driver.$error,"value-prop":"value",options:a.disks,searchable:"",label:"name","can-deselect":!1},null,8,["modelValue","invalid","options"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.dropbox_root"),error:e.v$.dropBoxDiskConfig.root.$error&&e.v$.dropBoxDiskConfig.root.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.dropBoxDiskConfig.root,"onUpdate:modelValue":i[4]||(i[4]=o=>e.diskStore.dropBoxDiskConfig.root=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. /user/root/",invalid:e.v$.dropBoxDiskConfig.root.$error,onInput:i[5]||(i[5]=o=>e.v$.dropBoxDiskConfig.root.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.dropbox_token"),error:e.v$.dropBoxDiskConfig.token.$error&&e.v$.dropBoxDiskConfig.token.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.dropBoxDiskConfig.token,"onUpdate:modelValue":i[6]||(i[6]=o=>e.diskStore.dropBoxDiskConfig.token=o),modelModifiers:{trim:!0},type:"text",name:"name",invalid:e.v$.dropBoxDiskConfig.token.$error,onInput:i[7]||(i[7]=o=>e.v$.dropBoxDiskConfig.token.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.dropbox_key"),error:e.v$.dropBoxDiskConfig.key.$error&&e.v$.dropBoxDiskConfig.key.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.dropBoxDiskConfig.key,"onUpdate:modelValue":i[8]||(i[8]=o=>e.diskStore.dropBoxDiskConfig.key=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. KEIS4S39SERSDS",invalid:e.v$.dropBoxDiskConfig.key.$error,onInput:i[9]||(i[9]=o=>e.v$.dropBoxDiskConfig.key.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.dropbox_secret"),error:e.v$.dropBoxDiskConfig.secret.$error&&e.v$.dropBoxDiskConfig.secret.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.dropBoxDiskConfig.secret,"onUpdate:modelValue":i[10]||(i[10]=o=>e.diskStore.dropBoxDiskConfig.secret=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. ********",invalid:e.v$.dropBoxDiskConfig.secret.$error,onInput:i[11]||(i[11]=o=>e.v$.dropBoxDiskConfig.secret.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.dropbox_app"),error:e.v$.dropBoxDiskConfig.app.$error&&e.v$.dropBoxDiskConfig.app.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.dropBoxDiskConfig.app,"onUpdate:modelValue":i[12]||(i[12]=o=>e.diskStore.dropBoxDiskConfig.app=o),modelModifiers:{trim:!0},type:"text",name:"name",invalid:e.v$.dropBoxDiskConfig.app.$error,onInput:i[13]||(i[13]=o=>e.v$.dropBoxDiskConfig.app.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1}),e.isDisabled?E("",!0):(y(),h("div",Ce,[b("div",pe,[r(m,{modelValue:e.set_as_default,"onUpdate:modelValue":i[14]||(i[14]=o=>e.set_as_default=o),class:"flex"},null,8,["modelValue"])]),b("div",_e,[b("p",be,V(t.$t("settings.disk.is_default")),1)])]))]),z(t.$slots,"default",{diskData:{isLoading:e.isLoading,submitData:e.submitData}})],32)}var $e=F(ce,[["render",Se]]);const ye={props:{isEdit:{type:Boolean,require:!0,default:!1},loading:{type:Boolean,require:!0,default:!1},disks:{type:Array,require:!0,default:Array}},emits:["submit","onChangeDisk"],setup(t,{emit:i}){const a=j(),e=G(),{t:u}=A();let k=p(!1),s=p(!1),l=p(""),d=p(null);const c=S({get:()=>a.selected_driver,set:v=>{a.selected_driver=v,a.localDiskConfig.selected_driver=v}}),m=S(()=>({localDiskConfig:{name:{required:g.withMessage(u("validation.required"),D)},selected_driver:{required:g.withMessage(u("validation.required"),D)},root:{required:g.withMessage(u("validation.required"),D)}}})),o=R(m,S(()=>a));Y(()=>{a.localDiskConfig={name:null,selected_driver:"local",root:null}}),B();async function B(){k.value=!0;let v=L({disk:"local"});if(t.isEdit)Object.assign(a.localDiskConfig,e.data),a.localDiskConfig.root=e.data.credentials,s.value=e.data.set_as_default,s.value&&(d.value=!0);else{let $=await a.fetchDiskEnv(v);Object.assign(a.localDiskConfig,$.data)}l.value=t.disks.find($=>$.value=="local"),k.value=!1}const M=S(()=>!!(t.isEdit&&s.value&&d.value));async function w(){if(o.value.localDiskConfig.$touch(),o.value.localDiskConfig.$invalid)return!0;let v=L({credentials:a.localDiskConfig.root,name:a.localDiskConfig.name,driver:a.localDiskConfig.selected_driver,set_as_default:s.value});return i("submit",v),!1}function I(){i("onChangeDisk",a.localDiskConfig.selected_driver)}return{v$:o,diskStore:a,modalStore:e,selected_driver:c,selected_disk:l,isLoading:k,set_as_default:s,is_current_disk:d,submitData:w,onChangeDriver:I,isDisabled:M}}},Be={class:"px-4 sm:px-8 py-6"},xe={key:0,class:"flex items-center mt-6"},Ve={class:"relative flex items-center w-12"},qe={class:"ml-4 right"},Me={class:"p-0 mb-1 text-base leading-snug text-black box-title"};function we(t,i,a,e,u,k){const s=f("BaseInput"),l=f("BaseInputGroup"),d=f("BaseMultiselect"),c=f("BaseInputGrid"),m=f("BaseSwitch");return y(),h("form",{action:"",onSubmit:i[7]||(i[7]=K((...o)=>e.submitData&&e.submitData(...o),["prevent"]))},[b("div",Be,[r(c,null,{default:n(()=>[r(l,{label:t.$t("settings.disk.name"),error:e.v$.localDiskConfig.name.$error&&e.v$.localDiskConfig.name.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.localDiskConfig.name,"onUpdate:modelValue":i[0]||(i[0]=o=>e.diskStore.localDiskConfig.name=o),type:"text",name:"name",invalid:e.v$.localDiskConfig.name.$error,onInput:i[1]||(i[1]=o=>e.v$.localDiskConfig.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$tc("settings.disk.driver"),error:e.v$.localDiskConfig.selected_driver.$error&&e.v$.localDiskConfig.selected_driver.$errors[0].$message,required:""},{default:n(()=>[r(d,{modelValue:e.selected_driver,"onUpdate:modelValue":[i[2]||(i[2]=o=>e.selected_driver=o),i[3]||(i[3]=o=>e.onChangeDriver(t.data))],"value-prop":"value",invalid:e.v$.localDiskConfig.selected_driver.$error,options:a.disks,searchable:"",label:"name","can-deselect":!1},null,8,["modelValue","invalid","options"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.local_root"),error:e.v$.localDiskConfig.root.$error&&e.v$.localDiskConfig.root.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.localDiskConfig.root,"onUpdate:modelValue":i[4]||(i[4]=o=>e.diskStore.localDiskConfig.root=o),modelModifiers:{trim:!0},type:"text",name:"name",invalid:e.v$.localDiskConfig.root.$error,placeholder:"Ex./user/root/",onInput:i[5]||(i[5]=o=>e.v$.localDiskConfig.root.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1}),e.isDisabled?E("",!0):(y(),h("div",xe,[b("div",Ve,[r(m,{modelValue:e.set_as_default,"onUpdate:modelValue":i[6]||(i[6]=o=>e.set_as_default=o),class:"flex"},null,8,["modelValue"])]),b("div",qe,[b("p",Me,V(t.$t("settings.disk.is_default")),1)])]))]),z(t.$slots,"default",{diskData:{isLoading:e.isLoading,submitData:e.submitData}})],32)}var Ie=F(ye,[["render",we]]);const he={props:{isEdit:{type:Boolean,require:!0,default:!1},loading:{type:Boolean,require:!0,default:!1},disks:{type:Array,require:!0,default:Array}},emits:["submit","onChangeDisk"],setup(t,{emit:i}){const a=j(),e=G(),{t:u}=A();let k=p(!1),s=p(!1),l=p(null),d=p(null);const c=S({get:()=>a.selected_driver,set:v=>{a.selected_driver=v,a.s3DiskConfigData.selected_driver=v}}),m=S(()=>({s3DiskConfigData:{name:{required:g.withMessage(u("validation.required"),D)},root:{required:g.withMessage(u("validation.required"),D)},key:{required:g.withMessage(u("validation.required"),D)},secret:{required:g.withMessage(u("validation.required"),D)},region:{required:g.withMessage(u("validation.required"),D)},bucket:{required:g.withMessage(u("validation.required"),D)},selected_driver:{required:g.withMessage(u("validation.required"),D)}}})),o=R(m,S(()=>a));Y(()=>{a.s3DiskConfigData={name:null,selected_driver:"s3",key:null,secret:null,region:null,bucket:null,root:null}}),B();async function B(){s.value=!0;let v=L({disk:"s3"});if(t.isEdit)Object.assign(a.s3DiskConfigData,e.data),k.value=e.data.set_as_default,k.value&&(d.value=!0);else{let $=await a.fetchDiskEnv(v);Object.assign(a.s3DiskConfigData,$.data)}l.value=t.disks.find($=>$.value=="s3"),s.value=!1}const M=S(()=>!!(t.isEdit&&k.value&&d.value));async function w(){if(o.value.s3DiskConfigData.$touch(),o.value.s3DiskConfigData.$invalid)return!0;let v={credentials:a.s3DiskConfigData,name:a.s3DiskConfigData.name,driver:l.value.value,set_as_default:k.value};return i("submit",v),!1}function I(){i("onChangeDisk",a.s3DiskConfigData.selected_driver)}return{v$:o,diskStore:a,modalStore:e,set_as_default:k,isLoading:s,selected_disk:l,selected_driver:c,is_current_disk:d,loadData:B,submitData:w,onChangeDriver:I,isDisabled:M}}},Ee={class:"px-8 py-6"},Ue={key:0,class:"flex items-center mt-6"},Le={class:"relative flex items-center w-12"},Ne={class:"ml-4 right"},je={class:"p-0 mb-1 text-base leading-snug text-black box-title"};function Ge(t,i,a,e,u,k){const s=f("BaseInput"),l=f("BaseInputGroup"),d=f("BaseMultiselect"),c=f("BaseInputGrid"),m=f("BaseSwitch");return y(),h("form",{onSubmit:i[15]||(i[15]=K((...o)=>e.submitData&&e.submitData(...o),["prevent"]))},[b("div",Ee,[r(c,null,{default:n(()=>[r(l,{label:t.$t("settings.disk.name"),error:e.v$.s3DiskConfigData.name.$error&&e.v$.s3DiskConfigData.name.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.s3DiskConfigData.name,"onUpdate:modelValue":i[0]||(i[0]=o=>e.diskStore.s3DiskConfigData.name=o),type:"text",name:"name",invalid:e.v$.s3DiskConfigData.name.$error,onInput:i[1]||(i[1]=o=>e.v$.s3DiskConfigData.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$tc("settings.disk.driver"),error:e.v$.s3DiskConfigData.selected_driver.$error&&e.v$.s3DiskConfigData.selected_driver.$errors[0].$message,required:""},{default:n(()=>[r(d,{modelValue:e.selected_driver,"onUpdate:modelValue":[i[2]||(i[2]=o=>e.selected_driver=o),i[3]||(i[3]=o=>e.onChangeDriver(t.data))],invalid:e.v$.s3DiskConfigData.selected_driver.$error,"value-prop":"value",options:a.disks,searchable:"",label:"name","can-deselect":!1},null,8,["modelValue","invalid","options"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.aws_root"),error:e.v$.s3DiskConfigData.root.$error&&e.v$.s3DiskConfigData.root.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.s3DiskConfigData.root,"onUpdate:modelValue":i[4]||(i[4]=o=>e.diskStore.s3DiskConfigData.root=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. /user/root/",invalid:e.v$.s3DiskConfigData.root.$error,onInput:i[5]||(i[5]=o=>e.v$.s3DiskConfigData.root.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.aws_key"),error:e.v$.s3DiskConfigData.key.$error&&e.v$.s3DiskConfigData.key.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.s3DiskConfigData.key,"onUpdate:modelValue":i[6]||(i[6]=o=>e.diskStore.s3DiskConfigData.key=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. KEIS4S39SERSDS",invalid:e.v$.s3DiskConfigData.key.$error,onInput:i[7]||(i[7]=o=>e.v$.s3DiskConfigData.key.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.aws_secret"),error:e.v$.s3DiskConfigData.secret.$error&&e.v$.s3DiskConfigData.secret.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.s3DiskConfigData.secret,"onUpdate:modelValue":i[8]||(i[8]=o=>e.diskStore.s3DiskConfigData.secret=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. ********",invalid:e.v$.s3DiskConfigData.secret.$error,onInput:i[9]||(i[9]=o=>e.v$.s3DiskConfigData.secret.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.aws_region"),error:e.v$.s3DiskConfigData.region.$error&&e.v$.s3DiskConfigData.region.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.s3DiskConfigData.region,"onUpdate:modelValue":i[10]||(i[10]=o=>e.diskStore.s3DiskConfigData.region=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. us-west",invalid:e.v$.s3DiskConfigData.region.$error,onInput:i[11]||(i[11]=o=>e.v$.s3DiskConfigData.region.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.aws_bucket"),error:e.v$.s3DiskConfigData.bucket.$error&&e.v$.s3DiskConfigData.bucket.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.s3DiskConfigData.bucket,"onUpdate:modelValue":i[12]||(i[12]=o=>e.diskStore.s3DiskConfigData.bucket=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. AppName",invalid:e.v$.s3DiskConfigData.bucket.$error,onInput:i[13]||(i[13]=o=>e.v$.s3DiskConfigData.bucket.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1}),e.isDisabled?E("",!0):(y(),h("div",Ue,[b("div",Le,[r(m,{modelValue:e.set_as_default,"onUpdate:modelValue":i[14]||(i[14]=o=>e.set_as_default=o),class:"flex"},null,8,["modelValue"])]),b("div",Ne,[b("p",je,V(t.$t("settings.disk.is_default")),1)])]))]),z(t.$slots,"default",{diskData:{isLoading:e.isLoading,submitData:e.submitData}})],32)}var Oe=F(he,[["render",Ge]]);const Fe={props:{isEdit:{type:Boolean,require:!0,default:!1},loading:{type:Boolean,require:!0,default:!1},disks:{type:Array,require:!0,default:Array}},emits:["submit","onChangeDisk"],setup(t,{emit:i}){const a=j(),e=G(),{t:u}=A();let k=p(!1),s=p(!1),l=p(""),d=p(null);const c=S({get:()=>a.selected_driver,set:v=>{a.selected_driver=v,a.doSpaceDiskConfig.selected_driver=v}}),m=S(()=>({doSpaceDiskConfig:{root:{required:g.withMessage(u("validation.required"),D)},key:{required:g.withMessage(u("validation.required"),D)},secret:{required:g.withMessage(u("validation.required"),D)},region:{required:g.withMessage(u("validation.required"),D)},endpoint:{required:g.withMessage(u("validation.required"),D),url:g.withMessage(u("validation.invalid_url"),ue)},bucket:{required:g.withMessage(u("validation.required"),D)},selected_driver:{required:g.withMessage(u("validation.required"),D)},name:{required:g.withMessage(u("validation.required"),D)}}})),o=R(m,S(()=>a));Y(()=>{a.doSpaceDiskConfig={name:null,selected_driver:"doSpaces",key:null,secret:null,region:null,bucket:null,endpoint:null,root:null}}),B();async function B(){k.value=!0;let v=L({disk:"doSpaces"});if(t.isEdit)Object.assign(a.doSpaceDiskConfig,JSON.parse(e.data.credentials)),s.value=e.data.set_as_default,s.value&&(d.value=!0);else{let $=await a.fetchDiskEnv(v);Object.assign(a.doSpaceDiskConfig,$.data)}l.value=t.disks.find($=>$.value=="doSpaces"),k.value=!1}const M=S(()=>!!(t.isEdit&&s.value&&d.value));async function w(){if(o.value.doSpaceDiskConfig.$touch(),o.value.doSpaceDiskConfig.$invalid)return!0;let v={credentials:a.doSpaceDiskConfig,name:a.doSpaceDiskConfig.name,driver:l.value.value,set_as_default:s.value};return i("submit",v),!1}function I(){i("onChangeDisk",a.doSpaceDiskConfig.selected_driver)}return{v$:o,diskStore:a,selected_driver:c,isLoading:k,set_as_default:s,selected_disk:l,is_current_disk:d,loadData:B,submitData:w,onChangeDriver:I,isDisabled:M}}},Ae={class:"px-8 py-6"},Te={key:0,class:"flex items-center mt-6"},Re={class:"relative flex items-center w-12"},Ye={class:"ml-4 right"},ze={class:"p-0 mb-1 text-base leading-snug text-black box-title"};function Ke(t,i,a,e,u,k){const s=f("BaseInput"),l=f("BaseInputGroup"),d=f("BaseMultiselect"),c=f("BaseInputGrid"),m=f("BaseSwitch");return y(),h("form",{onSubmit:i[17]||(i[17]=K((...o)=>e.submitData&&e.submitData(...o),["prevent"]))},[b("div",Ae,[r(c,null,{default:n(()=>[r(l,{label:t.$t("settings.disk.name"),error:e.v$.doSpaceDiskConfig.name.$error&&e.v$.doSpaceDiskConfig.name.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.doSpaceDiskConfig.name,"onUpdate:modelValue":i[0]||(i[0]=o=>e.diskStore.doSpaceDiskConfig.name=o),type:"text",name:"name",invalid:e.v$.doSpaceDiskConfig.name.$error,onInput:i[1]||(i[1]=o=>e.v$.doSpaceDiskConfig.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$tc("settings.disk.driver"),error:e.v$.doSpaceDiskConfig.selected_driver.$error&&e.v$.doSpaceDiskConfig.selected_driver.$errors[0].$message,required:""},{default:n(()=>[r(d,{modelValue:e.selected_driver,"onUpdate:modelValue":[i[2]||(i[2]=o=>e.selected_driver=o),i[3]||(i[3]=o=>e.onChangeDriver(t.data))],invalid:e.v$.doSpaceDiskConfig.selected_driver.$error,"value-prop":"value",options:a.disks,searchable:"",label:"name","can-deselect":!1},null,8,["modelValue","invalid","options"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.do_spaces_root"),error:e.v$.doSpaceDiskConfig.root.$error&&e.v$.doSpaceDiskConfig.root.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.doSpaceDiskConfig.root,"onUpdate:modelValue":i[4]||(i[4]=o=>e.diskStore.doSpaceDiskConfig.root=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. /user/root/",invalid:e.v$.doSpaceDiskConfig.root.$error,onInput:i[5]||(i[5]=o=>e.v$.doSpaceDiskConfig.root.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.do_spaces_key"),error:e.v$.doSpaceDiskConfig.key.$error&&e.v$.doSpaceDiskConfig.key.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.doSpaceDiskConfig.key,"onUpdate:modelValue":i[6]||(i[6]=o=>e.diskStore.doSpaceDiskConfig.key=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. KEIS4S39SERSDS",invalid:e.v$.doSpaceDiskConfig.key.$error,onInput:i[7]||(i[7]=o=>e.v$.doSpaceDiskConfig.key.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.do_spaces_secret"),error:e.v$.doSpaceDiskConfig.secret.$error&&e.v$.doSpaceDiskConfig.secret.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.doSpaceDiskConfig.secret,"onUpdate:modelValue":i[8]||(i[8]=o=>e.diskStore.doSpaceDiskConfig.secret=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. ********",invalid:e.v$.doSpaceDiskConfig.secret.$error,onInput:i[9]||(i[9]=o=>e.v$.doSpaceDiskConfig.secret.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.do_spaces_region"),error:e.v$.doSpaceDiskConfig.region.$error&&e.v$.doSpaceDiskConfig.region.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.doSpaceDiskConfig.region,"onUpdate:modelValue":i[10]||(i[10]=o=>e.diskStore.doSpaceDiskConfig.region=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. nyc3",invalid:e.v$.doSpaceDiskConfig.region.$error,onInput:i[11]||(i[11]=o=>e.v$.doSpaceDiskConfig.region.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.do_spaces_endpoint"),error:e.v$.doSpaceDiskConfig.endpoint.$error&&e.v$.doSpaceDiskConfig.endpoint.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.doSpaceDiskConfig.endpoint,"onUpdate:modelValue":i[12]||(i[12]=o=>e.diskStore.doSpaceDiskConfig.endpoint=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. https://nyc3.digitaloceanspaces.com",invalid:e.v$.doSpaceDiskConfig.endpoint.$error,onInput:i[13]||(i[13]=o=>e.v$.doSpaceDiskConfig.endpoint.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.do_spaces_bucket"),error:e.v$.doSpaceDiskConfig.bucket.$error&&e.v$.doSpaceDiskConfig.bucket.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.doSpaceDiskConfig.bucket,"onUpdate:modelValue":i[14]||(i[14]=o=>e.diskStore.doSpaceDiskConfig.bucket=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. my-new-space",invalid:e.v$.doSpaceDiskConfig.bucket.$error,onInput:i[15]||(i[15]=o=>e.v$.doSpaceDiskConfig.bucket.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1}),e.isDisabled?E("",!0):(y(),h("div",Te,[b("div",Re,[r(m,{modelValue:e.set_as_default,"onUpdate:modelValue":i[16]||(i[16]=o=>e.set_as_default=o),class:"flex"},null,8,["modelValue"])]),b("div",Ye,[b("p",ze,V(t.$t("settings.disk.is_default")),1)])]))]),z(t.$slots,"default",{diskData:{isLoading:e.isLoading,submitData:e.submitData}})],32)}var Pe=F(Fe,[["render",Ke]]);const Je={components:{Dropbox:$e,Local:Ie,S3:Oe,DoSpaces:Pe},setup(){const t=j(),i=G();let a=p(!1),e=p(!1);fe(()=>{i.id&&(e.value=!0)});const u=S(()=>i.active&&i.componentName==="FileDiskModal");function k(m){return m&&(m.diskData.isLoading.value||a.value)}async function s(){a.value=!0;let m=await t.fetchDiskDrivers();e.value?t.selected_driver=i.data.driver:t.selected_driver=m.data.drivers[0].value,a.value=!1}async function l(m){Object.assign(t.diskConfigData,m),a.value=!0;let o=W({id:i.id},m);await(e.value?t.updateDisk:t.createDisk)(o),a.value=!1,i.refreshData(),d()}function d(){i.closeModal()}function c(m){t.selected_driver=m,t.diskConfigData.selected_driver=m}return{isEdit:e,createNewDisk:l,isRequestFire:k,diskStore:t,closeDiskModal:d,loadData:s,diskChange:c,modalStore:i,isLoading:a,modalActive:u}}},He={class:"flex justify-between w-full"},Xe={class:"file-disk-modal"},Qe={class:"z-0 flex justify-end p-4 border-t border-solid border-gray-light"};function We(t,i,a,e,u,k){const s=f("BaseIcon"),l=f("BaseButton"),d=f("BaseModal");return y(),N(d,{show:e.modalActive,onClose:e.closeDiskModal,onOpen:e.loadData},{header:n(()=>[b("div",He,[U(V(e.modalStore.title)+" ",1),r(s,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:e.closeDiskModal},null,8,["onClick"])])]),default:n(()=>[b("div",Xe,[(y(),N(ke(e.diskStore.selected_driver),{loading:e.isLoading,disks:e.diskStore.getDiskDrivers,"is-edit":e.isEdit,onOnChangeDisk:i[0]||(i[0]=c=>e.diskChange(c)),onSubmit:e.createNewDisk},{default:n(c=>[b("div",Qe,[r(l,{class:"mr-3 text-sm",variant:"primary-outline",type:"button",onClick:e.closeDiskModal},{default:n(()=>[U(V(t.$t("general.cancel")),1)]),_:1},8,["onClick"]),r(l,{loading:e.isRequestFire(c),disabled:e.isRequestFire(c),variant:"primary",type:"submit"},{default:n(()=>[e.isRequestFire(c)?E("",!0):(y(),N(s,{key:0,name:"SaveIcon",class:"w-6 mr-2"})),U(" "+V(t.$t("general.save")),1)]),_:2},1032,["loading","disabled"])])]),_:1},8,["loading","disks","is-edit","onSubmit"]))])]),_:1},8,["show","onClose","onOpen"])}var Ze=F(Je,[["render",We]]);const ei={class:"inline-block"},ri={setup(t){const i=me("utils"),a=G(),e=j(),u=ne(),k=de(),{t:s}=A();let l=p(!1),d=p("");const c=S(()=>[{key:"name",label:s("settings.disk.disk_name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"driver",label:s("settings.disk.filesystem_driver"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"type",label:s("settings.disk.disk_type"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"set_as_default",label:s("settings.disk.is_default"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]),m=p(u.selectedCompanySettings.save_pdf_to_disk),o=S({get:()=>m.value==="YES",set:async C=>{const q=C?"YES":"NO";let x={settings:{save_pdf_to_disk:q}};m.value=q,await u.updateCompanySettings({data:x,message:"general.setting_updated"})}});async function B({page:C,filter:q,sort:x}){let J=L({orderByField:x.fieldName||"created_at",orderBy:x.order||"desc",page:C}),O=await e.fetchDisks(J);return{data:O.data.data,pagination:{totalPages:O.data.meta.last_page,currentPage:C,totalCount:O.data.meta.total}}}function M(C){return C.set_as_default?!(C.type=="SYSTEM"&&C.set_as_default):!0}function w(){a.openModal({title:s("settings.disk.new_disk"),componentName:"FileDiskModal",variant:"lg",refreshData:d.value&&d.value.refresh})}function I(C){a.openModal({title:s("settings.disk.edit_file_disk"),componentName:"FileDiskModal",variant:"lg",id:C.id,data:C,refreshData:d.value&&d.value.refresh})}function v(C){k.openDialog({title:s("general.are_you_sure"),message:s("settings.disk.set_default_disk_confirm"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(async q=>{if(q){l.value=!0;let x=L({set_as_default:!0,id:C});await e.updateDisk(x).then(()=>{d.value&&d.value.refresh()})}})}function $(C){k.openDialog({title:s("general.are_you_sure"),message:s("settings.disk.confirm_delete"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async q=>{if(q&&(await e.deleteFileDisk(C)).data.success)return d.value&&d.value.refresh(),!0})}return(C,q)=>{const x=f("BaseIcon"),J=f("BaseButton"),O=f("BaseBadge"),H=f("BaseDropdownItem"),ee=f("BaseDropdown"),ie=f("BaseTable"),oe=f("BaseDivider"),ae=f("BaseSwitchSection"),te=f("BaseSettingCard");return y(),h(ge,null,[r(Ze),r(te,{title:C.$tc("settings.disk.title",1),description:C.$t("settings.disk.description")},{action:n(()=>[r(J,{variant:"primary-outline",onClick:w},{left:n(_=>[r(x,{class:ve(_.class),name:"PlusIcon"},null,8,["class"])]),default:n(()=>[U(" "+V(C.$t("settings.disk.new_disk")),1)]),_:1})]),default:n(()=>[r(ie,{ref:(_,T)=>{T.table=_,Z(d)?d.value=_:d=_},class:"mt-16",data:B,columns:P(c)},{"cell-set_as_default":n(({row:_})=>[r(O,{"bg-color":P(i).getBadgeStatusColor(_.data.set_as_default?"YES":"NO").bgColor,color:P(i).getBadgeStatusColor(_.data.set_as_default?"YES":"NO").color},{default:n(()=>[U(V(_.data.set_as_default?"Yes":"No".replace("_"," ")),1)]),_:2},1032,["bg-color","color"])]),"cell-actions":n(({row:_})=>[M(_.data)?(y(),N(ee,{key:0},{activator:n(()=>[b("div",ei,[r(x,{name:"DotsHorizontalIcon",class:"text-gray-500"})])]),default:n(()=>[_.data.set_as_default?E("",!0):(y(),N(H,{key:0,onClick:T=>v(_.data.id)},{default:n(()=>[r(x,{class:"mr-3 tetx-gray-600",name:"CheckCircleIcon"}),U(" "+V(C.$t("settings.disk.set_default_disk")),1)]),_:2},1032,["onClick"])),_.data.type!=="SYSTEM"?(y(),N(H,{key:1,onClick:T=>I(_.data)},{default:n(()=>[r(x,{name:"PencilIcon",class:"mr-3 text-gray-600"}),U(" "+V(C.$t("general.edit")),1)]),_:2},1032,["onClick"])):E("",!0),_.data.type!=="SYSTEM"&&!_.data.set_as_default?(y(),N(H,{key:2,onClick:T=>$(_.data.id)},{default:n(()=>[r(x,{name:"TrashIcon",class:"mr-3 text-gray-600"}),U(" "+V(C.$t("general.delete")),1)]),_:2},1032,["onClick"])):E("",!0)]),_:2},1024)):E("",!0)]),_:1},8,["columns"]),r(oe,{class:"mt-8 mb-2"}),r(ae,{modelValue:P(o),"onUpdate:modelValue":q[0]||(q[0]=_=>Z(o)?o.value=_:null),title:C.$t("settings.disk.save_pdf_to_disk"),description:C.$t("settings.disk.disk_setting_description")},null,8,["modelValue","title","description"])]),_:1},8,["title","description"])],64)}}};export{ri as default}; +var re=Object.defineProperty;var X=Object.getOwnPropertySymbols;var se=Object.prototype.hasOwnProperty,le=Object.prototype.propertyIsEnumerable;var Q=(t,i,a)=>i in t?re(t,i,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[i]=a,W=(t,i)=>{for(var a in i||(i={}))se.call(i,a)&&Q(t,a,i[a]);if(X)for(var a of X(i))le.call(i,a)&&Q(t,a,i[a]);return t};import{u as j}from"./disk.62fb5cf1.js";import{_ as F,c as G,b as ne,j as de}from"./main.24f7a84b.js";import{J as A,B as p,k as S,L as g,M as D,T as R,b1 as Y,a0 as L,r as f,o as y,e as h,h as b,f as r,w as n,t as V,j as E,g as z,U as K,R as ue,a7 as fe,l as N,i as U,aj as ke,ah as me,m as ve,x as Z,u as P,F as ge}from"./vendor.01d0adc5.js";const ce={props:{isEdit:{type:Boolean,require:!0,default:!1},loading:{type:Boolean,require:!0,default:!1},disks:{type:Array,require:!0,default:Array}},emits:["submit","onChangeDisk"],setup(t,{emit:i}){const a=j(),e=G(),{t:u}=A();let k=p(!1),s=p(!1),l=p(null),d=p(null);const c=S({get:()=>a.selected_driver,set:v=>{a.selected_driver=v,a.dropBoxDiskConfig.selected_driver=v}}),m=S(()=>({dropBoxDiskConfig:{root:{required:g.withMessage(u("validation.required"),D)},key:{required:g.withMessage(u("validation.required"),D)},secret:{required:g.withMessage(u("validation.required"),D)},token:{required:g.withMessage(u("validation.required"),D)},app:{required:g.withMessage(u("validation.required"),D)},selected_driver:{required:g.withMessage(u("validation.required"),D)},name:{required:g.withMessage(u("validation.required"),D)}}})),o=R(m,S(()=>a));Y(()=>{a.dropBoxDiskConfig={name:null,selected_driver:"dropbox",token:null,key:null,secret:null,app:null}}),B();async function B(){s.value=!0;let v=L({disk:"dropbox"});if(t.isEdit)Object.assign(a.dropBoxDiskConfig,e.data),k.value=e.data.set_as_default,k.value&&(l.value=!0);else{let $=await a.fetchDiskEnv(v);Object.assign(a.dropBoxDiskConfig,$.data)}d.value=t.disks.find($=>$.value=="dropbox"),s.value=!1}const M=S(()=>!!(t.isEdit&&k.value&&l.value));async function w(){if(o.value.dropBoxDiskConfig.$touch(),o.value.dropBoxDiskConfig.$invalid)return!0;let v={credentials:a.dropBoxDiskConfig,name:a.dropBoxDiskConfig.name,driver:d.value.value,set_as_default:k.value};return i("submit",v),!1}function I(){i("onChangeDisk",a.dropBoxDiskConfig.selected_driver)}return{v$:o,diskStore:a,selected_driver:c,set_as_default:k,isLoading:s,is_current_disk:l,selected_disk:d,isDisabled:M,loadData:B,submitData:w,onChangeDriver:I}}},De={class:"px-8 py-6"},Ce={key:0,class:"flex items-center mt-6"},pe={class:"relative flex items-center w-12"},_e={class:"ml-4 right"},be={class:"p-0 mb-1 text-base leading-snug text-black box-title"};function Se(t,i,a,e,u,k){const s=f("BaseInput"),l=f("BaseInputGroup"),d=f("BaseMultiselect"),c=f("BaseInputGrid"),m=f("BaseSwitch");return y(),h("form",{onSubmit:i[15]||(i[15]=K((...o)=>e.submitData&&e.submitData(...o),["prevent"]))},[b("div",De,[r(c,null,{default:n(()=>[r(l,{label:t.$t("settings.disk.name"),error:e.v$.dropBoxDiskConfig.name.$error&&e.v$.dropBoxDiskConfig.name.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.dropBoxDiskConfig.name,"onUpdate:modelValue":i[0]||(i[0]=o=>e.diskStore.dropBoxDiskConfig.name=o),type:"text",name:"name",invalid:e.v$.dropBoxDiskConfig.name.$error,onInput:i[1]||(i[1]=o=>e.v$.dropBoxDiskConfig.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.driver"),error:e.v$.dropBoxDiskConfig.selected_driver.$error&&e.v$.dropBoxDiskConfig.selected_driver.$errors[0].$message,required:""},{default:n(()=>[r(d,{modelValue:e.selected_driver,"onUpdate:modelValue":[i[2]||(i[2]=o=>e.selected_driver=o),i[3]||(i[3]=o=>e.onChangeDriver(t.data))],invalid:e.v$.dropBoxDiskConfig.selected_driver.$error,"value-prop":"value",options:a.disks,searchable:"",label:"name","can-deselect":!1},null,8,["modelValue","invalid","options"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.dropbox_root"),error:e.v$.dropBoxDiskConfig.root.$error&&e.v$.dropBoxDiskConfig.root.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.dropBoxDiskConfig.root,"onUpdate:modelValue":i[4]||(i[4]=o=>e.diskStore.dropBoxDiskConfig.root=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. /user/root/",invalid:e.v$.dropBoxDiskConfig.root.$error,onInput:i[5]||(i[5]=o=>e.v$.dropBoxDiskConfig.root.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.dropbox_token"),error:e.v$.dropBoxDiskConfig.token.$error&&e.v$.dropBoxDiskConfig.token.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.dropBoxDiskConfig.token,"onUpdate:modelValue":i[6]||(i[6]=o=>e.diskStore.dropBoxDiskConfig.token=o),modelModifiers:{trim:!0},type:"text",name:"name",invalid:e.v$.dropBoxDiskConfig.token.$error,onInput:i[7]||(i[7]=o=>e.v$.dropBoxDiskConfig.token.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.dropbox_key"),error:e.v$.dropBoxDiskConfig.key.$error&&e.v$.dropBoxDiskConfig.key.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.dropBoxDiskConfig.key,"onUpdate:modelValue":i[8]||(i[8]=o=>e.diskStore.dropBoxDiskConfig.key=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. KEIS4S39SERSDS",invalid:e.v$.dropBoxDiskConfig.key.$error,onInput:i[9]||(i[9]=o=>e.v$.dropBoxDiskConfig.key.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.dropbox_secret"),error:e.v$.dropBoxDiskConfig.secret.$error&&e.v$.dropBoxDiskConfig.secret.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.dropBoxDiskConfig.secret,"onUpdate:modelValue":i[10]||(i[10]=o=>e.diskStore.dropBoxDiskConfig.secret=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. ********",invalid:e.v$.dropBoxDiskConfig.secret.$error,onInput:i[11]||(i[11]=o=>e.v$.dropBoxDiskConfig.secret.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.dropbox_app"),error:e.v$.dropBoxDiskConfig.app.$error&&e.v$.dropBoxDiskConfig.app.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.dropBoxDiskConfig.app,"onUpdate:modelValue":i[12]||(i[12]=o=>e.diskStore.dropBoxDiskConfig.app=o),modelModifiers:{trim:!0},type:"text",name:"name",invalid:e.v$.dropBoxDiskConfig.app.$error,onInput:i[13]||(i[13]=o=>e.v$.dropBoxDiskConfig.app.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1}),e.isDisabled?E("",!0):(y(),h("div",Ce,[b("div",pe,[r(m,{modelValue:e.set_as_default,"onUpdate:modelValue":i[14]||(i[14]=o=>e.set_as_default=o),class:"flex"},null,8,["modelValue"])]),b("div",_e,[b("p",be,V(t.$t("settings.disk.is_default")),1)])]))]),z(t.$slots,"default",{diskData:{isLoading:e.isLoading,submitData:e.submitData}})],32)}var $e=F(ce,[["render",Se]]);const ye={props:{isEdit:{type:Boolean,require:!0,default:!1},loading:{type:Boolean,require:!0,default:!1},disks:{type:Array,require:!0,default:Array}},emits:["submit","onChangeDisk"],setup(t,{emit:i}){const a=j(),e=G(),{t:u}=A();let k=p(!1),s=p(!1),l=p(""),d=p(null);const c=S({get:()=>a.selected_driver,set:v=>{a.selected_driver=v,a.localDiskConfig.selected_driver=v}}),m=S(()=>({localDiskConfig:{name:{required:g.withMessage(u("validation.required"),D)},selected_driver:{required:g.withMessage(u("validation.required"),D)},root:{required:g.withMessage(u("validation.required"),D)}}})),o=R(m,S(()=>a));Y(()=>{a.localDiskConfig={name:null,selected_driver:"local",root:null}}),B();async function B(){k.value=!0;let v=L({disk:"local"});if(t.isEdit)Object.assign(a.localDiskConfig,e.data),a.localDiskConfig.root=e.data.credentials,s.value=e.data.set_as_default,s.value&&(d.value=!0);else{let $=await a.fetchDiskEnv(v);Object.assign(a.localDiskConfig,$.data)}l.value=t.disks.find($=>$.value=="local"),k.value=!1}const M=S(()=>!!(t.isEdit&&s.value&&d.value));async function w(){if(o.value.localDiskConfig.$touch(),o.value.localDiskConfig.$invalid)return!0;let v=L({credentials:a.localDiskConfig.root,name:a.localDiskConfig.name,driver:a.localDiskConfig.selected_driver,set_as_default:s.value});return i("submit",v),!1}function I(){i("onChangeDisk",a.localDiskConfig.selected_driver)}return{v$:o,diskStore:a,modalStore:e,selected_driver:c,selected_disk:l,isLoading:k,set_as_default:s,is_current_disk:d,submitData:w,onChangeDriver:I,isDisabled:M}}},Be={class:"px-4 sm:px-8 py-6"},xe={key:0,class:"flex items-center mt-6"},Ve={class:"relative flex items-center w-12"},qe={class:"ml-4 right"},Me={class:"p-0 mb-1 text-base leading-snug text-black box-title"};function we(t,i,a,e,u,k){const s=f("BaseInput"),l=f("BaseInputGroup"),d=f("BaseMultiselect"),c=f("BaseInputGrid"),m=f("BaseSwitch");return y(),h("form",{action:"",onSubmit:i[7]||(i[7]=K((...o)=>e.submitData&&e.submitData(...o),["prevent"]))},[b("div",Be,[r(c,null,{default:n(()=>[r(l,{label:t.$t("settings.disk.name"),error:e.v$.localDiskConfig.name.$error&&e.v$.localDiskConfig.name.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.localDiskConfig.name,"onUpdate:modelValue":i[0]||(i[0]=o=>e.diskStore.localDiskConfig.name=o),type:"text",name:"name",invalid:e.v$.localDiskConfig.name.$error,onInput:i[1]||(i[1]=o=>e.v$.localDiskConfig.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$tc("settings.disk.driver"),error:e.v$.localDiskConfig.selected_driver.$error&&e.v$.localDiskConfig.selected_driver.$errors[0].$message,required:""},{default:n(()=>[r(d,{modelValue:e.selected_driver,"onUpdate:modelValue":[i[2]||(i[2]=o=>e.selected_driver=o),i[3]||(i[3]=o=>e.onChangeDriver(t.data))],"value-prop":"value",invalid:e.v$.localDiskConfig.selected_driver.$error,options:a.disks,searchable:"",label:"name","can-deselect":!1},null,8,["modelValue","invalid","options"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.local_root"),error:e.v$.localDiskConfig.root.$error&&e.v$.localDiskConfig.root.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.localDiskConfig.root,"onUpdate:modelValue":i[4]||(i[4]=o=>e.diskStore.localDiskConfig.root=o),modelModifiers:{trim:!0},type:"text",name:"name",invalid:e.v$.localDiskConfig.root.$error,placeholder:"Ex./user/root/",onInput:i[5]||(i[5]=o=>e.v$.localDiskConfig.root.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1}),e.isDisabled?E("",!0):(y(),h("div",xe,[b("div",Ve,[r(m,{modelValue:e.set_as_default,"onUpdate:modelValue":i[6]||(i[6]=o=>e.set_as_default=o),class:"flex"},null,8,["modelValue"])]),b("div",qe,[b("p",Me,V(t.$t("settings.disk.is_default")),1)])]))]),z(t.$slots,"default",{diskData:{isLoading:e.isLoading,submitData:e.submitData}})],32)}var Ie=F(ye,[["render",we]]);const he={props:{isEdit:{type:Boolean,require:!0,default:!1},loading:{type:Boolean,require:!0,default:!1},disks:{type:Array,require:!0,default:Array}},emits:["submit","onChangeDisk"],setup(t,{emit:i}){const a=j(),e=G(),{t:u}=A();let k=p(!1),s=p(!1),l=p(null),d=p(null);const c=S({get:()=>a.selected_driver,set:v=>{a.selected_driver=v,a.s3DiskConfigData.selected_driver=v}}),m=S(()=>({s3DiskConfigData:{name:{required:g.withMessage(u("validation.required"),D)},root:{required:g.withMessage(u("validation.required"),D)},key:{required:g.withMessage(u("validation.required"),D)},secret:{required:g.withMessage(u("validation.required"),D)},region:{required:g.withMessage(u("validation.required"),D)},bucket:{required:g.withMessage(u("validation.required"),D)},selected_driver:{required:g.withMessage(u("validation.required"),D)}}})),o=R(m,S(()=>a));Y(()=>{a.s3DiskConfigData={name:null,selected_driver:"s3",key:null,secret:null,region:null,bucket:null,root:null}}),B();async function B(){s.value=!0;let v=L({disk:"s3"});if(t.isEdit)Object.assign(a.s3DiskConfigData,e.data),k.value=e.data.set_as_default,k.value&&(d.value=!0);else{let $=await a.fetchDiskEnv(v);Object.assign(a.s3DiskConfigData,$.data)}l.value=t.disks.find($=>$.value=="s3"),s.value=!1}const M=S(()=>!!(t.isEdit&&k.value&&d.value));async function w(){if(o.value.s3DiskConfigData.$touch(),o.value.s3DiskConfigData.$invalid)return!0;let v={credentials:a.s3DiskConfigData,name:a.s3DiskConfigData.name,driver:l.value.value,set_as_default:k.value};return i("submit",v),!1}function I(){i("onChangeDisk",a.s3DiskConfigData.selected_driver)}return{v$:o,diskStore:a,modalStore:e,set_as_default:k,isLoading:s,selected_disk:l,selected_driver:c,is_current_disk:d,loadData:B,submitData:w,onChangeDriver:I,isDisabled:M}}},Ee={class:"px-8 py-6"},Ue={key:0,class:"flex items-center mt-6"},Le={class:"relative flex items-center w-12"},Ne={class:"ml-4 right"},je={class:"p-0 mb-1 text-base leading-snug text-black box-title"};function Ge(t,i,a,e,u,k){const s=f("BaseInput"),l=f("BaseInputGroup"),d=f("BaseMultiselect"),c=f("BaseInputGrid"),m=f("BaseSwitch");return y(),h("form",{onSubmit:i[15]||(i[15]=K((...o)=>e.submitData&&e.submitData(...o),["prevent"]))},[b("div",Ee,[r(c,null,{default:n(()=>[r(l,{label:t.$t("settings.disk.name"),error:e.v$.s3DiskConfigData.name.$error&&e.v$.s3DiskConfigData.name.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.s3DiskConfigData.name,"onUpdate:modelValue":i[0]||(i[0]=o=>e.diskStore.s3DiskConfigData.name=o),type:"text",name:"name",invalid:e.v$.s3DiskConfigData.name.$error,onInput:i[1]||(i[1]=o=>e.v$.s3DiskConfigData.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$tc("settings.disk.driver"),error:e.v$.s3DiskConfigData.selected_driver.$error&&e.v$.s3DiskConfigData.selected_driver.$errors[0].$message,required:""},{default:n(()=>[r(d,{modelValue:e.selected_driver,"onUpdate:modelValue":[i[2]||(i[2]=o=>e.selected_driver=o),i[3]||(i[3]=o=>e.onChangeDriver(t.data))],invalid:e.v$.s3DiskConfigData.selected_driver.$error,"value-prop":"value",options:a.disks,searchable:"",label:"name","can-deselect":!1},null,8,["modelValue","invalid","options"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.aws_root"),error:e.v$.s3DiskConfigData.root.$error&&e.v$.s3DiskConfigData.root.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.s3DiskConfigData.root,"onUpdate:modelValue":i[4]||(i[4]=o=>e.diskStore.s3DiskConfigData.root=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. /user/root/",invalid:e.v$.s3DiskConfigData.root.$error,onInput:i[5]||(i[5]=o=>e.v$.s3DiskConfigData.root.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.aws_key"),error:e.v$.s3DiskConfigData.key.$error&&e.v$.s3DiskConfigData.key.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.s3DiskConfigData.key,"onUpdate:modelValue":i[6]||(i[6]=o=>e.diskStore.s3DiskConfigData.key=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. KEIS4S39SERSDS",invalid:e.v$.s3DiskConfigData.key.$error,onInput:i[7]||(i[7]=o=>e.v$.s3DiskConfigData.key.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.aws_secret"),error:e.v$.s3DiskConfigData.secret.$error&&e.v$.s3DiskConfigData.secret.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.s3DiskConfigData.secret,"onUpdate:modelValue":i[8]||(i[8]=o=>e.diskStore.s3DiskConfigData.secret=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. ********",invalid:e.v$.s3DiskConfigData.secret.$error,onInput:i[9]||(i[9]=o=>e.v$.s3DiskConfigData.secret.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.aws_region"),error:e.v$.s3DiskConfigData.region.$error&&e.v$.s3DiskConfigData.region.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.s3DiskConfigData.region,"onUpdate:modelValue":i[10]||(i[10]=o=>e.diskStore.s3DiskConfigData.region=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. us-west",invalid:e.v$.s3DiskConfigData.region.$error,onInput:i[11]||(i[11]=o=>e.v$.s3DiskConfigData.region.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.aws_bucket"),error:e.v$.s3DiskConfigData.bucket.$error&&e.v$.s3DiskConfigData.bucket.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.s3DiskConfigData.bucket,"onUpdate:modelValue":i[12]||(i[12]=o=>e.diskStore.s3DiskConfigData.bucket=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. AppName",invalid:e.v$.s3DiskConfigData.bucket.$error,onInput:i[13]||(i[13]=o=>e.v$.s3DiskConfigData.bucket.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1}),e.isDisabled?E("",!0):(y(),h("div",Ue,[b("div",Le,[r(m,{modelValue:e.set_as_default,"onUpdate:modelValue":i[14]||(i[14]=o=>e.set_as_default=o),class:"flex"},null,8,["modelValue"])]),b("div",Ne,[b("p",je,V(t.$t("settings.disk.is_default")),1)])]))]),z(t.$slots,"default",{diskData:{isLoading:e.isLoading,submitData:e.submitData}})],32)}var Oe=F(he,[["render",Ge]]);const Fe={props:{isEdit:{type:Boolean,require:!0,default:!1},loading:{type:Boolean,require:!0,default:!1},disks:{type:Array,require:!0,default:Array}},emits:["submit","onChangeDisk"],setup(t,{emit:i}){const a=j(),e=G(),{t:u}=A();let k=p(!1),s=p(!1),l=p(""),d=p(null);const c=S({get:()=>a.selected_driver,set:v=>{a.selected_driver=v,a.doSpaceDiskConfig.selected_driver=v}}),m=S(()=>({doSpaceDiskConfig:{root:{required:g.withMessage(u("validation.required"),D)},key:{required:g.withMessage(u("validation.required"),D)},secret:{required:g.withMessage(u("validation.required"),D)},region:{required:g.withMessage(u("validation.required"),D)},endpoint:{required:g.withMessage(u("validation.required"),D),url:g.withMessage(u("validation.invalid_url"),ue)},bucket:{required:g.withMessage(u("validation.required"),D)},selected_driver:{required:g.withMessage(u("validation.required"),D)},name:{required:g.withMessage(u("validation.required"),D)}}})),o=R(m,S(()=>a));Y(()=>{a.doSpaceDiskConfig={name:null,selected_driver:"doSpaces",key:null,secret:null,region:null,bucket:null,endpoint:null,root:null}}),B();async function B(){k.value=!0;let v=L({disk:"doSpaces"});if(t.isEdit)Object.assign(a.doSpaceDiskConfig,JSON.parse(e.data.credentials)),s.value=e.data.set_as_default,s.value&&(d.value=!0);else{let $=await a.fetchDiskEnv(v);Object.assign(a.doSpaceDiskConfig,$.data)}l.value=t.disks.find($=>$.value=="doSpaces"),k.value=!1}const M=S(()=>!!(t.isEdit&&s.value&&d.value));async function w(){if(o.value.doSpaceDiskConfig.$touch(),o.value.doSpaceDiskConfig.$invalid)return!0;let v={credentials:a.doSpaceDiskConfig,name:a.doSpaceDiskConfig.name,driver:l.value.value,set_as_default:s.value};return i("submit",v),!1}function I(){i("onChangeDisk",a.doSpaceDiskConfig.selected_driver)}return{v$:o,diskStore:a,selected_driver:c,isLoading:k,set_as_default:s,selected_disk:l,is_current_disk:d,loadData:B,submitData:w,onChangeDriver:I,isDisabled:M}}},Ae={class:"px-8 py-6"},Te={key:0,class:"flex items-center mt-6"},Re={class:"relative flex items-center w-12"},Ye={class:"ml-4 right"},ze={class:"p-0 mb-1 text-base leading-snug text-black box-title"};function Ke(t,i,a,e,u,k){const s=f("BaseInput"),l=f("BaseInputGroup"),d=f("BaseMultiselect"),c=f("BaseInputGrid"),m=f("BaseSwitch");return y(),h("form",{onSubmit:i[17]||(i[17]=K((...o)=>e.submitData&&e.submitData(...o),["prevent"]))},[b("div",Ae,[r(c,null,{default:n(()=>[r(l,{label:t.$t("settings.disk.name"),error:e.v$.doSpaceDiskConfig.name.$error&&e.v$.doSpaceDiskConfig.name.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.doSpaceDiskConfig.name,"onUpdate:modelValue":i[0]||(i[0]=o=>e.diskStore.doSpaceDiskConfig.name=o),type:"text",name:"name",invalid:e.v$.doSpaceDiskConfig.name.$error,onInput:i[1]||(i[1]=o=>e.v$.doSpaceDiskConfig.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$tc("settings.disk.driver"),error:e.v$.doSpaceDiskConfig.selected_driver.$error&&e.v$.doSpaceDiskConfig.selected_driver.$errors[0].$message,required:""},{default:n(()=>[r(d,{modelValue:e.selected_driver,"onUpdate:modelValue":[i[2]||(i[2]=o=>e.selected_driver=o),i[3]||(i[3]=o=>e.onChangeDriver(t.data))],invalid:e.v$.doSpaceDiskConfig.selected_driver.$error,"value-prop":"value",options:a.disks,searchable:"",label:"name","can-deselect":!1},null,8,["modelValue","invalid","options"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.do_spaces_root"),error:e.v$.doSpaceDiskConfig.root.$error&&e.v$.doSpaceDiskConfig.root.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.doSpaceDiskConfig.root,"onUpdate:modelValue":i[4]||(i[4]=o=>e.diskStore.doSpaceDiskConfig.root=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. /user/root/",invalid:e.v$.doSpaceDiskConfig.root.$error,onInput:i[5]||(i[5]=o=>e.v$.doSpaceDiskConfig.root.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.do_spaces_key"),error:e.v$.doSpaceDiskConfig.key.$error&&e.v$.doSpaceDiskConfig.key.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.doSpaceDiskConfig.key,"onUpdate:modelValue":i[6]||(i[6]=o=>e.diskStore.doSpaceDiskConfig.key=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. KEIS4S39SERSDS",invalid:e.v$.doSpaceDiskConfig.key.$error,onInput:i[7]||(i[7]=o=>e.v$.doSpaceDiskConfig.key.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.do_spaces_secret"),error:e.v$.doSpaceDiskConfig.secret.$error&&e.v$.doSpaceDiskConfig.secret.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.doSpaceDiskConfig.secret,"onUpdate:modelValue":i[8]||(i[8]=o=>e.diskStore.doSpaceDiskConfig.secret=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. ********",invalid:e.v$.doSpaceDiskConfig.secret.$error,onInput:i[9]||(i[9]=o=>e.v$.doSpaceDiskConfig.secret.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.do_spaces_region"),error:e.v$.doSpaceDiskConfig.region.$error&&e.v$.doSpaceDiskConfig.region.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.doSpaceDiskConfig.region,"onUpdate:modelValue":i[10]||(i[10]=o=>e.diskStore.doSpaceDiskConfig.region=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. nyc3",invalid:e.v$.doSpaceDiskConfig.region.$error,onInput:i[11]||(i[11]=o=>e.v$.doSpaceDiskConfig.region.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.do_spaces_endpoint"),error:e.v$.doSpaceDiskConfig.endpoint.$error&&e.v$.doSpaceDiskConfig.endpoint.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.doSpaceDiskConfig.endpoint,"onUpdate:modelValue":i[12]||(i[12]=o=>e.diskStore.doSpaceDiskConfig.endpoint=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. https://nyc3.digitaloceanspaces.com",invalid:e.v$.doSpaceDiskConfig.endpoint.$error,onInput:i[13]||(i[13]=o=>e.v$.doSpaceDiskConfig.endpoint.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),r(l,{label:t.$t("settings.disk.do_spaces_bucket"),error:e.v$.doSpaceDiskConfig.bucket.$error&&e.v$.doSpaceDiskConfig.bucket.$errors[0].$message,required:""},{default:n(()=>[r(s,{modelValue:e.diskStore.doSpaceDiskConfig.bucket,"onUpdate:modelValue":i[14]||(i[14]=o=>e.diskStore.doSpaceDiskConfig.bucket=o),modelModifiers:{trim:!0},type:"text",name:"name",placeholder:"Ex. my-new-space",invalid:e.v$.doSpaceDiskConfig.bucket.$error,onInput:i[15]||(i[15]=o=>e.v$.doSpaceDiskConfig.bucket.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1}),e.isDisabled?E("",!0):(y(),h("div",Te,[b("div",Re,[r(m,{modelValue:e.set_as_default,"onUpdate:modelValue":i[16]||(i[16]=o=>e.set_as_default=o),class:"flex"},null,8,["modelValue"])]),b("div",Ye,[b("p",ze,V(t.$t("settings.disk.is_default")),1)])]))]),z(t.$slots,"default",{diskData:{isLoading:e.isLoading,submitData:e.submitData}})],32)}var Pe=F(Fe,[["render",Ke]]);const Je={components:{Dropbox:$e,Local:Ie,S3:Oe,DoSpaces:Pe},setup(){const t=j(),i=G();let a=p(!1),e=p(!1);fe(()=>{i.id&&(e.value=!0)});const u=S(()=>i.active&&i.componentName==="FileDiskModal");function k(m){return m&&(m.diskData.isLoading.value||a.value)}async function s(){a.value=!0;let m=await t.fetchDiskDrivers();e.value?t.selected_driver=i.data.driver:t.selected_driver=m.data.drivers[0].value,a.value=!1}async function l(m){Object.assign(t.diskConfigData,m),a.value=!0;let o=W({id:i.id},m);await(e.value?t.updateDisk:t.createDisk)(o),a.value=!1,i.refreshData(),d()}function d(){i.closeModal()}function c(m){t.selected_driver=m,t.diskConfigData.selected_driver=m}return{isEdit:e,createNewDisk:l,isRequestFire:k,diskStore:t,closeDiskModal:d,loadData:s,diskChange:c,modalStore:i,isLoading:a,modalActive:u}}},He={class:"flex justify-between w-full"},Xe={class:"file-disk-modal"},Qe={class:"z-0 flex justify-end p-4 border-t border-solid border-gray-light"};function We(t,i,a,e,u,k){const s=f("BaseIcon"),l=f("BaseButton"),d=f("BaseModal");return y(),N(d,{show:e.modalActive,onClose:e.closeDiskModal,onOpen:e.loadData},{header:n(()=>[b("div",He,[U(V(e.modalStore.title)+" ",1),r(s,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:e.closeDiskModal},null,8,["onClick"])])]),default:n(()=>[b("div",Xe,[(y(),N(ke(e.diskStore.selected_driver),{loading:e.isLoading,disks:e.diskStore.getDiskDrivers,"is-edit":e.isEdit,onOnChangeDisk:i[0]||(i[0]=c=>e.diskChange(c)),onSubmit:e.createNewDisk},{default:n(c=>[b("div",Qe,[r(l,{class:"mr-3 text-sm",variant:"primary-outline",type:"button",onClick:e.closeDiskModal},{default:n(()=>[U(V(t.$t("general.cancel")),1)]),_:1},8,["onClick"]),r(l,{loading:e.isRequestFire(c),disabled:e.isRequestFire(c),variant:"primary",type:"submit"},{default:n(()=>[e.isRequestFire(c)?E("",!0):(y(),N(s,{key:0,name:"SaveIcon",class:"w-6 mr-2"})),U(" "+V(t.$t("general.save")),1)]),_:2},1032,["loading","disabled"])])]),_:1},8,["loading","disks","is-edit","onSubmit"]))])]),_:1},8,["show","onClose","onOpen"])}var Ze=F(Je,[["render",We]]);const ei={class:"inline-block"},ri={setup(t){const i=me("utils"),a=G(),e=j(),u=ne(),k=de(),{t:s}=A();let l=p(!1),d=p("");const c=S(()=>[{key:"name",label:s("settings.disk.disk_name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"driver",label:s("settings.disk.filesystem_driver"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"type",label:s("settings.disk.disk_type"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"set_as_default",label:s("settings.disk.is_default"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]),m=p(u.selectedCompanySettings.save_pdf_to_disk),o=S({get:()=>m.value==="YES",set:async C=>{const q=C?"YES":"NO";let x={settings:{save_pdf_to_disk:q}};m.value=q,await u.updateCompanySettings({data:x,message:"general.setting_updated"})}});async function B({page:C,filter:q,sort:x}){let J=L({orderByField:x.fieldName||"created_at",orderBy:x.order||"desc",page:C}),O=await e.fetchDisks(J);return{data:O.data.data,pagination:{totalPages:O.data.meta.last_page,currentPage:C,totalCount:O.data.meta.total}}}function M(C){return C.set_as_default?!(C.type=="SYSTEM"&&C.set_as_default):!0}function w(){a.openModal({title:s("settings.disk.new_disk"),componentName:"FileDiskModal",variant:"lg",refreshData:d.value&&d.value.refresh})}function I(C){a.openModal({title:s("settings.disk.edit_file_disk"),componentName:"FileDiskModal",variant:"lg",id:C.id,data:C,refreshData:d.value&&d.value.refresh})}function v(C){k.openDialog({title:s("general.are_you_sure"),message:s("settings.disk.set_default_disk_confirm"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(async q=>{if(q){l.value=!0;let x=L({set_as_default:!0,id:C});await e.updateDisk(x).then(()=>{d.value&&d.value.refresh()})}})}function $(C){k.openDialog({title:s("general.are_you_sure"),message:s("settings.disk.confirm_delete"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async q=>{if(q&&(await e.deleteFileDisk(C)).data.success)return d.value&&d.value.refresh(),!0})}return(C,q)=>{const x=f("BaseIcon"),J=f("BaseButton"),O=f("BaseBadge"),H=f("BaseDropdownItem"),ee=f("BaseDropdown"),ie=f("BaseTable"),oe=f("BaseDivider"),ae=f("BaseSwitchSection"),te=f("BaseSettingCard");return y(),h(ge,null,[r(Ze),r(te,{title:C.$tc("settings.disk.title",1),description:C.$t("settings.disk.description")},{action:n(()=>[r(J,{variant:"primary-outline",onClick:w},{left:n(_=>[r(x,{class:ve(_.class),name:"PlusIcon"},null,8,["class"])]),default:n(()=>[U(" "+V(C.$t("settings.disk.new_disk")),1)]),_:1})]),default:n(()=>[r(ie,{ref:(_,T)=>{T.table=_,Z(d)?d.value=_:d=_},class:"mt-16",data:B,columns:P(c)},{"cell-set_as_default":n(({row:_})=>[r(O,{"bg-color":P(i).getBadgeStatusColor(_.data.set_as_default?"YES":"NO").bgColor,color:P(i).getBadgeStatusColor(_.data.set_as_default?"YES":"NO").color},{default:n(()=>[U(V(_.data.set_as_default?"Yes":"No".replace("_"," ")),1)]),_:2},1032,["bg-color","color"])]),"cell-actions":n(({row:_})=>[M(_.data)?(y(),N(ee,{key:0},{activator:n(()=>[b("div",ei,[r(x,{name:"DotsHorizontalIcon",class:"text-gray-500"})])]),default:n(()=>[_.data.set_as_default?E("",!0):(y(),N(H,{key:0,onClick:T=>v(_.data.id)},{default:n(()=>[r(x,{class:"mr-3 tetx-gray-600",name:"CheckCircleIcon"}),U(" "+V(C.$t("settings.disk.set_default_disk")),1)]),_:2},1032,["onClick"])),_.data.type!=="SYSTEM"?(y(),N(H,{key:1,onClick:T=>I(_.data)},{default:n(()=>[r(x,{name:"PencilIcon",class:"mr-3 text-gray-600"}),U(" "+V(C.$t("general.edit")),1)]),_:2},1032,["onClick"])):E("",!0),_.data.type!=="SYSTEM"&&!_.data.set_as_default?(y(),N(H,{key:2,onClick:T=>$(_.data.id)},{default:n(()=>[r(x,{name:"TrashIcon",class:"mr-3 text-gray-600"}),U(" "+V(C.$t("general.delete")),1)]),_:2},1032,["onClick"])):E("",!0)]),_:2},1024)):E("",!0)]),_:1},8,["columns"]),r(oe,{class:"mt-8 mb-2"}),r(ae,{modelValue:P(o),"onUpdate:modelValue":q[0]||(q[0]=_=>Z(o)?o.value=_:null),title:C.$t("settings.disk.save_pdf_to_disk"),description:C.$t("settings.disk.disk_setting_description")},null,8,["modelValue","title","description"])]),_:1},8,["title","description"])],64)}}};export{ri as default}; diff --git a/public/build/assets/ForgotPassword.51f99d8b.js b/public/build/assets/ForgotPassword.5b735567.js similarity index 81% rename from public/build/assets/ForgotPassword.51f99d8b.js rename to public/build/assets/ForgotPassword.5b735567.js index 22a7ba16b..c670b7792 100644 --- a/public/build/assets/ForgotPassword.51f99d8b.js +++ b/public/build/assets/ForgotPassword.5b735567.js @@ -1 +1 @@ -var M=Object.defineProperty,j=Object.defineProperties;var G=Object.getOwnPropertyDescriptors;var h=Object.getOwnPropertySymbols;var N=Object.prototype.hasOwnProperty,C=Object.prototype.propertyIsEnumerable;var B=(a,e,t)=>e in a?M(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,$=(a,e)=>{for(var t in e||(e={}))N.call(e,t)&&B(a,t,e[t]);if(h)for(var t of h(e))C.call(e,t)&&B(a,t,e[t]);return a},y=(a,e)=>j(a,G(e));import{J as D,G as L,a0 as T,B as b,k as U,L as k,M as A,Q as E,T as F,r as u,o as c,e as p,f as m,w as v,u as r,t as _,h as J,i as P,U as Q}from"./vendor.01d0adc5.js";import{u as R}from"./auth.4644c288.js";import"./main.75722495.js";const z=["onSubmit"],H={key:0},K={key:1},O={class:"mt-4 mb-4 text-sm"},ee={setup(a){const e=R(),{t}=D(),S=L(),l=T({email:"",company:""}),f=b(!1),n=b(!1),V=U(()=>({email:{required:k.withMessage(t("validation.required"),A),email:k.withMessage(t("validation.email_incorrect"),E)}})),o=F(V,l);function w(i){if(o.value.$touch(),o.value.$invalid)return!0;n.value=!0;let s=y($({},l),{company:S.params.company});e.forgotPassword(s).then(d=>{n.value=!1}).catch(d=>{n.value=!1}),f.value=!0}return(i,s)=>{const d=u("BaseInput"),I=u("BaseInputGroup"),q=u("BaseButton"),x=u("router-link");return c(),p("form",{id:"loginForm",onSubmit:Q(w,["prevent"])},[m(I,{error:r(o).email.$error&&r(o).email.$errors[0].$message,label:i.$t("login.enter_email"),class:"mb-4",required:""},{default:v(()=>[m(d,{modelValue:r(l).email,"onUpdate:modelValue":s[0]||(s[0]=g=>r(l).email=g),type:"email",name:"email",invalid:r(o).email.$error,onInput:s[1]||(s[1]=g=>r(o).email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),m(q,{loading:n.value,disabled:n.value,type:"submit",variant:"primary"},{default:v(()=>[f.value?(c(),p("div",K,_(i.$t("validation.not_yet")),1)):(c(),p("div",H,_(i.$t("validation.send_reset_link")),1))]),_:1},8,["loading","disabled"]),J("div",O,[m(x,{to:"login",class:"text-sm text-primary-400 hover:text-gray-700"},{default:v(()=>[P(_(i.$t("general.back_to_login")),1)]),_:1})])],40,z)}}};export{ee as default}; +var M=Object.defineProperty,j=Object.defineProperties;var G=Object.getOwnPropertyDescriptors;var h=Object.getOwnPropertySymbols;var N=Object.prototype.hasOwnProperty,C=Object.prototype.propertyIsEnumerable;var B=(a,e,t)=>e in a?M(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,$=(a,e)=>{for(var t in e||(e={}))N.call(e,t)&&B(a,t,e[t]);if(h)for(var t of h(e))C.call(e,t)&&B(a,t,e[t]);return a},b=(a,e)=>j(a,G(e));import{J as D,G as L,a0 as T,B as y,k as U,L as k,M as A,Q as E,T as F,r as u,o as c,e as p,f as m,w as v,u as r,t as _,h as J,i as P,U as Q}from"./vendor.01d0adc5.js";import{u as R}from"./auth.0e030165.js";import"./main.24f7a84b.js";const z=["onSubmit"],H={key:0},K={key:1},O={class:"mt-4 mb-4 text-sm"},ee={setup(a){const e=R(),{t}=D(),S=L(),l=T({email:"",company:""}),f=y(!1),n=y(!1),V=U(()=>({email:{required:k.withMessage(t("validation.required"),A),email:k.withMessage(t("validation.email_incorrect"),E)}})),o=F(V,l);function w(i){if(o.value.$touch(),o.value.$invalid)return!0;n.value=!0;let s=b($({},l),{company:S.params.company});e.forgotPassword(s).then(d=>{n.value=!1}).catch(d=>{n.value=!1}),f.value=!0}return(i,s)=>{const d=u("BaseInput"),I=u("BaseInputGroup"),q=u("BaseButton"),x=u("router-link");return c(),p("form",{id:"loginForm",onSubmit:Q(w,["prevent"])},[m(I,{error:r(o).email.$error&&r(o).email.$errors[0].$message,label:i.$t("login.enter_email"),class:"mb-4",required:""},{default:v(()=>[m(d,{modelValue:r(l).email,"onUpdate:modelValue":s[0]||(s[0]=g=>r(l).email=g),type:"email",name:"email",invalid:r(o).email.$error,onInput:s[1]||(s[1]=g=>r(o).email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),m(q,{loading:n.value,disabled:n.value,type:"submit",variant:"primary"},{default:v(()=>[f.value?(c(),p("div",K,_(i.$t("validation.not_yet")),1)):(c(),p("div",H,_(i.$t("validation.send_reset_link")),1))]),_:1},8,["loading","disabled"]),J("div",O,[m(x,{to:"login",class:"text-sm text-primary-400 hover:text-gray-700"},{default:v(()=>[P(_(i.$t("general.back_to_login")),1)]),_:1})])],40,z)}}};export{ee as default}; diff --git a/public/build/assets/ForgotPassword.6a2c79cb.js b/public/build/assets/ForgotPassword.6f6930b9.js similarity index 69% rename from public/build/assets/ForgotPassword.6a2c79cb.js rename to public/build/assets/ForgotPassword.6f6930b9.js index 467cece5c..818781fb5 100644 --- a/public/build/assets/ForgotPassword.6a2c79cb.js +++ b/public/build/assets/ForgotPassword.6f6930b9.js @@ -1 +1 @@ -import{J as w,a0 as S,B as _,L as f,M as V,Q as I,T as x,r as n,o as l,e as u,f as r,w as m,u as t,t as d,h as M,i as N,U as q,a as j}from"./vendor.01d0adc5.js";import{u as C,h as D}from"./main.75722495.js";const E=["onSubmit"],G={key:0},L={key:1},T={class:"mt-4 mb-4 text-sm"},Q={setup(U){const g=C(),{t:c}=w(),i=S({email:""}),p=_(!1),o=_(!1),h={email:{required:f.withMessage(c("validation.required"),V),email:f.withMessage(c("validation.email_incorrect"),I)}},a=x(h,i);async function y(s){if(a.value.$touch(),!a.value.$invalid)try{o.value=!0,(await j.post("/api/v1/auth/password/email",i)).data&&g.showNotification({type:"success",message:"Mail sent successfully"}),p.value=!0,o.value=!1}catch(e){D(e),o.value=!1}}return(s,e)=>{const $=n("BaseInput"),B=n("BaseInputGroup"),b=n("BaseButton"),k=n("router-link");return l(),u("form",{id:"loginForm",onSubmit:q(y,["prevent"])},[r(B,{error:t(a).email.$error&&t(a).email.$errors[0].$message,label:s.$t("login.enter_email"),class:"mb-4",required:""},{default:m(()=>[r($,{modelValue:t(i).email,"onUpdate:modelValue":e[0]||(e[0]=v=>t(i).email=v),invalid:t(a).email.$error,focus:"",type:"email",name:"email",onInput:e[1]||(e[1]=v=>t(a).email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),r(b,{loading:o.value,disabled:o.value,type:"submit",variant:"primary"},{default:m(()=>[p.value?(l(),u("div",L,d(s.$t("validation.not_yet")),1)):(l(),u("div",G,d(s.$t("validation.send_reset_link")),1))]),_:1},8,["loading","disabled"]),M("div",T,[r(k,{to:"/login",class:"text-sm text-primary-400 hover:text-gray-700"},{default:m(()=>[N(d(s.$t("general.back_to_login")),1)]),_:1})])],40,E)}}};export{Q as default}; +import{J as w,a0 as S,B as f,L as _,M as V,Q as I,T as x,r as n,o as l,e as u,f as r,w as m,u as t,t as d,h as M,i as N,U as q,a as j}from"./vendor.01d0adc5.js";import{u as C,h as D}from"./main.24f7a84b.js";const E=["onSubmit"],G={key:0},L={key:1},T={class:"mt-4 mb-4 text-sm"},Q={setup(U){const g=C(),{t:c}=w(),i=S({email:""}),p=f(!1),o=f(!1),h={email:{required:_.withMessage(c("validation.required"),V),email:_.withMessage(c("validation.email_incorrect"),I)}},a=x(h,i);async function y(s){if(a.value.$touch(),!a.value.$invalid)try{o.value=!0,(await j.post("/api/v1/auth/password/email",i)).data&&g.showNotification({type:"success",message:"Mail sent successfully"}),p.value=!0,o.value=!1}catch(e){D(e),o.value=!1}}return(s,e)=>{const $=n("BaseInput"),b=n("BaseInputGroup"),B=n("BaseButton"),k=n("router-link");return l(),u("form",{id:"loginForm",onSubmit:q(y,["prevent"])},[r(b,{error:t(a).email.$error&&t(a).email.$errors[0].$message,label:s.$t("login.enter_email"),class:"mb-4",required:""},{default:m(()=>[r($,{modelValue:t(i).email,"onUpdate:modelValue":e[0]||(e[0]=v=>t(i).email=v),invalid:t(a).email.$error,focus:"",type:"email",name:"email",onInput:e[1]||(e[1]=v=>t(a).email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),r(B,{loading:o.value,disabled:o.value,type:"submit",variant:"primary"},{default:m(()=>[p.value?(l(),u("div",L,d(s.$t("validation.not_yet")),1)):(l(),u("div",G,d(s.$t("validation.send_reset_link")),1))]),_:1},8,["loading","disabled"]),M("div",T,[r(k,{to:"/login",class:"text-sm text-primary-400 hover:text-gray-700"},{default:m(()=>[N(d(s.$t("general.back_to_login")),1)]),_:1})])],40,E)}}};export{Q as default}; diff --git a/public/build/assets/Index.a3eeb117.js b/public/build/assets/Index.1117c7c6.js similarity index 99% rename from public/build/assets/Index.a3eeb117.js rename to public/build/assets/Index.1117c7c6.js index a74f1911b..10e3f91bc 100644 --- a/public/build/assets/Index.a3eeb117.js +++ b/public/build/assets/Index.1117c7c6.js @@ -1 +1 @@ -import{J as j,a0 as C,B as b,I as r,k as M,C as L,D as F,r as i,o as I,e as N,h as m,f as t,w as c,u as p,i as U,t as P,U as H,l as K,m as X}from"./vendor.01d0adc5.js";import{d as W,b as z}from"./main.75722495.js";const Z={class:"grid gap-8 md:grid-cols-12 pt-10"},ee={class:"col-span-8 md:col-span-4"},te={class:"flex flex-col my-6 lg:space-x-3 lg:flex-row"},ae=m("div",{class:"hidden w-5 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"2.5rem"}},null,-1),oe={class:"col-span-8"},re=["src"],ne={setup(G){const{t:g}=j(),v=W();v.downloadReport=x;const u=C([g("dateRange.today"),g("dateRange.this_week"),g("dateRange.this_month"),g("dateRange.this_quarter"),g("dateRange.this_year"),g("dateRange.previous_week"),g("dateRange.previous_month"),g("dateRange.previous_quarter"),g("dateRange.previous_year"),g("dateRange.custom")]),$=b(["By Customer","By Item"]),o=b("By Customer"),k=b(g("dateRange.this_month"));let w=b(new Date),D=b(null),e=b(null),y=b(null),s=C({from_date:r().startOf("month").format("YYYY-MM-DD").toString(),to_date:r().endOf("month").format("YYYY-MM-DD").toString()});const O=z(),n=M(()=>D.value),d=M(()=>O.selectedCompany),V=M(()=>`${e.value}?from_date=${r(s.from_date).format("YYYY-MM-DD")}&to_date=${r(s.to_date).format("YYYY-MM-DD")}`),T=M(()=>`${y.value}?from_date=${r(s.from_date).format("YYYY-MM-DD")}&to_date=${r(s.to_date).format("YYYY-MM-DD")}`);L(w,f=>{s.from_date=r(f).startOf("year").toString(),s.to_date=r(f).endOf("year").toString()}),F(()=>{e.value=`/reports/sales/customers/${d.value.unique_hash}`,y.value=`/reports/sales/items/${d.value.unique_hash}`,l()});function _(f,Y){return r()[f](Y).format("YYYY-MM-DD")}function B(f,Y){return r().subtract(1,Y)[f](Y).format("YYYY-MM-DD")}function a(){switch(k.value){case"Today":s.from_date=r().format("YYYY-MM-DD"),s.to_date=r().format("YYYY-MM-DD");break;case"This Week":s.from_date=_("startOf","isoWeek"),s.to_date=_("endOf","isoWeek");break;case"This Month":s.from_date=_("startOf","month"),s.to_date=_("endOf","month");break;case"This Quarter":s.from_date=_("startOf","quarter"),s.to_date=_("endOf","quarter");break;case"This Year":s.from_date=_("startOf","year"),s.to_date=_("endOf","year");break;case"Previous Week":s.from_date=B("startOf","isoWeek"),s.to_date=B("endOf","isoWeek");break;case"Previous Month":s.from_date=B("startOf","month"),s.to_date=B("endOf","month");break;case"Previous Quarter":s.from_date=B("startOf","quarter"),s.to_date=B("endOf","quarter");break;case"Previous Year":s.from_date=B("startOf","year"),s.to_date=B("endOf","year");break}}async function l(){return o.value==="By Customer"?(D.value=V.value,!0):(D.value=T.value,!0)}async function S(){let f=await R();return window.open(n.value,"_blank"),f}function R(){return o.value==="By Customer"?(D.value=V.value,!0):(D.value=T.value,!0)}function x(){if(!R())return!1;window.open(n.value+"&download=true"),setTimeout(()=>o.value==="By Customer"?(D.value=V.value,!0):(D.value=T.value,!0),200)}return(f,Y)=>{const h=i("BaseMultiselect"),Q=i("BaseInputGroup"),E=i("BaseDatePicker"),J=i("BaseButton"),A=i("BaseIcon");return I(),N("div",Z,[m("div",ee,[t(Q,{label:f.$t("reports.sales.date_range"),class:"col-span-12 md:col-span-8"},{default:c(()=>[t(h,{modelValue:k.value,"onUpdate:modelValue":[Y[0]||(Y[0]=q=>k.value=q),a],options:p(u)},null,8,["modelValue","options"])]),_:1},8,["label"]),m("div",te,[t(Q,{label:f.$t("reports.sales.from_date")},{default:c(()=>[t(E,{modelValue:p(s).from_date,"onUpdate:modelValue":Y[1]||(Y[1]=q=>p(s).from_date=q)},null,8,["modelValue"])]),_:1},8,["label"]),ae,t(Q,{label:f.$t("reports.sales.to_date")},{default:c(()=>[t(E,{modelValue:p(s).to_date,"onUpdate:modelValue":Y[2]||(Y[2]=q=>p(s).to_date=q)},null,8,["modelValue"])]),_:1},8,["label"])]),t(Q,{label:f.$t("reports.sales.report_type"),class:"col-span-12 md:col-span-8"},{default:c(()=>[t(h,{modelValue:o.value,"onUpdate:modelValue":[Y[3]||(Y[3]=q=>o.value=q),l],options:$.value,placeholder:f.$t("reports.sales.report_type"),class:"mt-1"},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),t(J,{variant:"primary-outline",class:"content-center hidden mt-0 w-md md:flex md:mt-8",type:"submit",onClick:H(R,["prevent"])},{default:c(()=>[U(P(f.$t("reports.update_report")),1)]),_:1},8,["onClick"])]),m("div",oe,[m("iframe",{src:p(n),class:"hidden w-full h-screen h-screen-ios border-gray-100 border-solid rounded md:flex"},null,8,re),m("a",{class:"flex items-center justify-center h-10 px-5 py-1 text-sm font-medium leading-none text-center text-white rounded whitespace-nowrap md:hidden bg-primary-500",onClick:S},[t(A,{name:"DocumentTextIcon",class:"h-5 mr-2"}),m("span",null,P(f.$t("reports.view_pdf")),1)])])])}}},se={class:"grid gap-8 md:grid-cols-12 pt-10"},le={class:"col-span-8 md:col-span-4"},de={class:"flex flex-col mt-6 lg:space-x-3 lg:flex-row"},ue=m("div",{class:"hidden w-5 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"2.5rem"}},null,-1),ie={class:"col-span-8"},me=["src"],ce={setup(G){const g=W(),v=z(),{t:u}=j();g.downloadReport=B;const $=C([u("dateRange.today"),u("dateRange.this_week"),u("dateRange.this_month"),u("dateRange.this_quarter"),u("dateRange.this_year"),u("dateRange.previous_week"),u("dateRange.previous_month"),u("dateRange.previous_quarter"),u("dateRange.previous_year"),u("dateRange.custom")]),o=b(u("dateRange.this_month"));let k=b(new Date),w=b(null),D=b(null);const e=C({from_date:r().startOf("month").toString(),to_date:r().endOf("month").toString()}),y=M(()=>w.value),s=M(()=>v.selectedCompany),O=M(()=>`${D.value}?from_date=${r(e.from_date).format("YYYY-MM-DD")}&to_date=${r(e.to_date).format("YYYY-MM-DD")}`);F(()=>{D.value=`/reports/expenses/${s.value.unique_hash}`,w.value=O.value}),L(()=>k,a=>{e.from_date=r(a).startOf("year").toString(),e.to_date=r(a).endOf("year").toString()});function n(a,l){return r()[a](l).format("YYYY-MM-DD")}function d(a,l){return r().subtract(1,l)[a](l).format("YYYY-MM-DD")}function V(){switch(o.value){case"Today":e.from_date=r().format("YYYY-MM-DD"),e.to_date=r().format("YYYY-MM-DD");break;case"This Week":e.from_date=n("startOf","isoWeek"),e.to_date=n("endOf","isoWeek");break;case"This Month":e.from_date=n("startOf","month"),e.to_date=n("endOf","month");break;case"This Quarter":e.from_date=n("startOf","quarter"),e.to_date=n("endOf","quarter");break;case"This Year":e.from_date=n("startOf","year"),e.to_date=n("endOf","year");break;case"Previous Week":e.from_date=d("startOf","isoWeek"),e.to_date=d("endOf","isoWeek");break;case"Previous Month":e.from_date=d("startOf","month"),e.to_date=d("endOf","month");break;case"Previous Quarter":e.from_date=d("startOf","quarter"),e.to_date=d("endOf","quarter");break;case"Previous Year":e.from_date=d("startOf","year"),e.to_date=d("endOf","year");break}}async function T(){let a=await _();return window.open(y.value,"_blank"),a}function _(){return w.value=O.value,!0}function B(){!_(),window.open(y.value+"&download=true"),setTimeout(()=>{w.value=O.value},200)}return(a,l)=>{const S=i("BaseMultiselect"),R=i("BaseInputGroup"),x=i("BaseDatePicker"),f=i("BaseButton"),Y=i("BaseIcon");return I(),N("div",se,[m("div",le,[t(R,{label:a.$t("reports.sales.date_range"),class:"col-span-12 md:col-span-8"},{default:c(()=>[t(S,{modelValue:o.value,"onUpdate:modelValue":[l[0]||(l[0]=h=>o.value=h),V],options:p($)},null,8,["modelValue","options"])]),_:1},8,["label"]),m("div",de,[t(R,{label:a.$t("reports.expenses.from_date")},{default:c(()=>[t(x,{modelValue:p(e).from_date,"onUpdate:modelValue":l[1]||(l[1]=h=>p(e).from_date=h)},null,8,["modelValue"])]),_:1},8,["label"]),ue,t(R,{label:a.$t("reports.expenses.to_date")},{default:c(()=>[t(x,{modelValue:p(e).to_date,"onUpdate:modelValue":l[2]||(l[2]=h=>p(e).to_date=h)},null,8,["modelValue"])]),_:1},8,["label"])]),t(f,{variant:"primary-outline",class:"content-center hidden mt-0 w-md md:flex md:mt-8",type:"submit",onClick:H(_,["prevent"])},{default:c(()=>[U(P(a.$t("reports.update_report")),1)]),_:1},8,["onClick"])]),m("div",ie,[m("iframe",{src:p(y),class:"hidden w-full h-screen h-screen-ios border-gray-100 border-solid rounded md:flex"},null,8,me),m("a",{class:"flex items-center justify-center h-10 px-5 py-1 text-sm font-medium leading-none text-center text-white rounded whitespace-nowrap md:hidden bg-primary-500 cursor-pointer",onClick:T},[t(Y,{name:"DocumentTextIcon",class:"h-5 mr-2"}),m("span",null,P(a.$t("reports.view_pdf")),1)])])])}}},pe={class:"grid gap-8 md:grid-cols-12 pt-10"},fe={class:"col-span-8 md:col-span-4"},_e={class:"flex flex-col mt-6 lg:space-x-3 lg:flex-row"},he=m("div",{class:"hidden w-5 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"2.5rem"}},null,-1),ge={class:"col-span-8"},ve=["src"],Ye={setup(G){const g=W(),v=z(),{t:u}=j();g.downloadReport=B;const $=C([u("dateRange.today"),u("dateRange.this_week"),u("dateRange.this_month"),u("dateRange.this_quarter"),u("dateRange.this_year"),u("dateRange.previous_week"),u("dateRange.previous_month"),u("dateRange.previous_quarter"),u("dateRange.previous_year"),u("dateRange.custom")]),o=b(u("dateRange.this_month"));let k=b(null),w=b(null),D=b(new Date);const e=C({from_date:r().startOf("month").toString(),to_date:r().endOf("month").toString()}),y=M(()=>k.value),s=M(()=>v.selectedCompany),O=M(()=>`${w.value}?from_date=${r(e.from_date).format("YYYY-MM-DD")}&to_date=${r(e.to_date).format("YYYY-MM-DD")}`);L(D,a=>{e.from_date=r(a).startOf("year").toString(),e.to_date=r(a).endOf("year").toString()}),F(()=>{w.value=`/reports/profit-loss/${s.value.unique_hash}`,k.value=O.value});function n(a,l){return r()[a](l).format("YYYY-MM-DD")}function d(a,l){return r().subtract(1,l)[a](l).format("YYYY-MM-DD")}function V(){switch(o.value){case"Today":e.from_date=r().format("YYYY-MM-DD"),e.to_date=r().format("YYYY-MM-DD");break;case"This Week":e.from_date=n("startOf","isoWeek"),e.to_date=n("endOf","isoWeek");break;case"This Month":e.from_date=n("startOf","month"),e.to_date=n("endOf","month");break;case"This Quarter":e.from_date=n("startOf","quarter"),e.to_date=n("endOf","quarter");break;case"This Year":e.from_date=n("startOf","year"),e.to_date=n("endOf","year");break;case"Previous Week":e.from_date=d("startOf","isoWeek"),e.to_date=d("endOf","isoWeek");break;case"Previous Month":e.from_date=d("startOf","month"),e.to_date=d("endOf","month");break;case"Previous Quarter":e.from_date=d("startOf","quarter"),e.to_date=d("endOf","quarter");break;case"Previous Year":e.from_date=d("startOf","year"),e.to_date=d("endOf","year");break}}async function T(){let a=await _();return window.open(y.value,"_blank"),a}function _(){return k.value=O.value,!0}function B(){!_(),window.open(y.value+"&download=true"),setTimeout(()=>{k.value=O.value},200)}return(a,l)=>{const S=i("BaseMultiselect"),R=i("BaseInputGroup"),x=i("BaseDatePicker"),f=i("BaseButton"),Y=i("BaseIcon");return I(),N("div",pe,[m("div",fe,[t(R,{label:a.$t("reports.profit_loss.date_range"),class:"col-span-12 md:col-span-8"},{default:c(()=>[t(S,{modelValue:o.value,"onUpdate:modelValue":[l[0]||(l[0]=h=>o.value=h),V],options:p($)},null,8,["modelValue","options"])]),_:1},8,["label"]),m("div",_e,[t(R,{label:a.$t("reports.profit_loss.from_date")},{default:c(()=>[t(x,{modelValue:p(e).from_date,"onUpdate:modelValue":l[1]||(l[1]=h=>p(e).from_date=h)},null,8,["modelValue"])]),_:1},8,["label"]),he,t(R,{label:a.$t("reports.profit_loss.to_date")},{default:c(()=>[t(x,{modelValue:p(e).to_date,"onUpdate:modelValue":l[2]||(l[2]=h=>p(e).to_date=h)},null,8,["modelValue"])]),_:1},8,["label"])]),t(f,{variant:"primary-outline",class:"content-center hidden mt-0 w-md md:flex md:mt-8",type:"submit",onClick:H(_,["prevent"])},{default:c(()=>[U(P(a.$t("reports.update_report")),1)]),_:1},8,["onClick"])]),m("div",ge,[m("iframe",{src:p(y),class:"hidden w-full h-screen h-screen-ios border-gray-100 border-solid rounded md:flex"},null,8,ve),m("a",{class:"flex items-center justify-center h-10 px-5 py-1 text-sm font-medium leading-none text-center text-white rounded whitespace-nowrap md:hidden bg-primary-500",onClick:T},[t(Y,{name:"DocumentTextIcon",class:"h-5 mr-2"}),m("span",null,P(a.$t("reports.view_pdf")),1)])])])}}},be={class:"grid gap-8 md:grid-cols-12 pt-10"},ye={class:"col-span-8 md:col-span-4"},ke={class:"flex flex-col mt-6 lg:space-x-3 lg:flex-row"},De=m("div",{class:"hidden w-5 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"2.5rem"}},null,-1),we={class:"col-span-8"},Re=["src"],Be={setup(G){const g=W();g.downloadReport=B;const{t:v}=j(),u=C([v("dateRange.today"),v("dateRange.this_week"),v("dateRange.this_month"),v("dateRange.this_quarter"),v("dateRange.this_year"),v("dateRange.previous_week"),v("dateRange.previous_month"),v("dateRange.previous_quarter"),v("dateRange.previous_year"),v("dateRange.custom")]),$=b(v("dateRange.this_month")),o=C({from_date:r().startOf("month").format("YYYY-MM-DD").toString(),to_date:r().endOf("month").format("YYYY-MM-DD").toString()});let k=b(null);const w=M(()=>k.value),D=z(),e=M(()=>D.selectedCompany);let y=b(null);F(()=>{y.value=`/reports/tax-summary/${e.value.unique_hash}`,k.value=s.value});const s=M(()=>`${y.value}?from_date=${r(o.from_date).format("YYYY-MM-DD")}&to_date=${r(o.to_date).format("YYYY-MM-DD")}`);let O=b(new Date);L(O.value,a=>{o.from_date=r(a).startOf("year").toString(),o.to_date=r(a).endOf("year").toString()});function n(a,l){return r()[a](l).format("YYYY-MM-DD")}function d(a,l){return r().subtract(1,l)[a](l).format("YYYY-MM-DD")}function V(){switch($.value){case"Today":o.from_date=r().format("YYYY-MM-DD"),o.to_date=r().format("YYYY-MM-DD");break;case"This Week":o.from_date=n("startOf","isoWeek"),o.to_date=n("endOf","isoWeek");break;case"This Month":o.from_date=n("startOf","month"),o.to_date=n("endOf","month");break;case"This Quarter":o.from_date=n("startOf","quarter"),o.to_date=n("endOf","quarter");break;case"This Year":o.from_date=n("startOf","year"),o.to_date=n("endOf","year");break;case"Previous Week":o.from_date=d("startOf","isoWeek"),o.to_date=d("endOf","isoWeek");break;case"Previous Month":o.from_date=d("startOf","month"),o.to_date=d("endOf","month");break;case"Previous Quarter":o.from_date=d("startOf","quarter"),o.to_date=d("endOf","quarter");break;case"Previous Year":o.from_date=d("startOf","year"),o.to_date=d("endOf","year");break}}async function T(){let a=await _();return window.open(w.value,"_blank"),a}function _(){return k.value=s.value,!0}function B(){!_(),window.open(w.value+"&download=true"),setTimeout(()=>{k.value=s.value},200)}return(a,l)=>{const S=i("BaseMultiselect"),R=i("BaseInputGroup"),x=i("BaseDatePicker"),f=i("BaseButton"),Y=i("BaseIcon");return I(),N("div",be,[m("div",ye,[t(R,{label:a.$t("reports.taxes.date_range"),class:"col-span-12 md:col-span-8"},{default:c(()=>[t(S,{modelValue:$.value,"onUpdate:modelValue":[l[0]||(l[0]=h=>$.value=h),V],options:p(u)},null,8,["modelValue","options"])]),_:1},8,["label"]),m("div",ke,[t(R,{label:a.$t("reports.taxes.from_date")},{default:c(()=>[t(x,{modelValue:p(o).from_date,"onUpdate:modelValue":l[1]||(l[1]=h=>p(o).from_date=h)},null,8,["modelValue"])]),_:1},8,["label"]),De,t(R,{label:a.$t("reports.taxes.to_date")},{default:c(()=>[t(x,{modelValue:p(o).to_date,"onUpdate:modelValue":l[2]||(l[2]=h=>p(o).to_date=h)},null,8,["modelValue"])]),_:1},8,["label"])]),t(f,{variant:"primary-outline",class:"content-center hidden mt-0 w-md md:flex md:mt-8",type:"submit",onClick:H(_,["prevent"])},{default:c(()=>[U(P(a.$t("reports.update_report")),1)]),_:1},8,["onClick"])]),m("div",we,[m("iframe",{src:p(w),class:"hidden w-full h-screen h-screen-ios border-gray-100 border-solid rounded md:flex"},null,8,Re),m("a",{class:"flex items-center justify-center h-10 px-5 py-1 text-sm font-medium leading-none text-center text-white rounded whitespace-nowrap md:hidden bg-primary-500",onClick:T},[t(Y,{name:"DocumentTextIcon",class:"h-5 mr-2"}),m("span",null,P(a.$t("reports.view_pdf")),1)])])])}}},$e={setup(G){const g=W();function v(){g.downloadReport()}return(u,$)=>{const o=i("BaseBreadcrumbItem"),k=i("BaseBreadcrumb"),w=i("BaseIcon"),D=i("BaseButton"),e=i("BasePageHeader"),y=i("BaseTab"),s=i("BaseTabGroup"),O=i("BasePage");return I(),K(O,null,{default:c(()=>[t(e,{title:u.$tc("reports.report",2)},{actions:c(()=>[t(D,{variant:"primary",class:"ml-4",onClick:v},{left:c(n=>[t(w,{name:"DownloadIcon",class:X(n.class)},null,8,["class"])]),default:c(()=>[U(" "+P(u.$t("reports.download_pdf")),1)]),_:1})]),default:c(()=>[t(k,null,{default:c(()=>[t(o,{title:u.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),t(o,{title:u.$tc("reports.report",2),to:"/admin/reports",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),t(s,{class:"p-2"},{default:c(()=>[t(y,{title:u.$t("reports.sales.sales"),"tab-panel-container":"px-0 py-0"},{default:c(()=>[t(ne,{ref:(n,d)=>{d.report=n}},null,512)]),_:1},8,["title"]),t(y,{title:u.$t("reports.profit_loss.profit_loss"),"tab-panel-container":"px-0 py-0"},{default:c(()=>[t(Ye,{ref:(n,d)=>{d.report=n}},null,512)]),_:1},8,["title"]),t(y,{title:u.$t("reports.expenses.expenses"),"tab-panel-container":"px-0 py-0"},{default:c(()=>[t(ce,{ref:(n,d)=>{d.report=n}},null,512)]),_:1},8,["title"]),t(y,{title:u.$t("reports.taxes.taxes"),"tab-panel-container":"px-0 py-0"},{default:c(()=>[t(Be,{ref:(n,d)=>{d.report=n}},null,512)]),_:1},8,["title"])]),_:1})]),_:1})}}};export{$e as default}; +import{J as j,a0 as C,B as b,I as r,k as M,C as L,D as F,r as i,o as I,e as N,h as m,f as t,w as c,u as p,i as U,t as P,U as H,l as K,m as X}from"./vendor.01d0adc5.js";import{d as W,b as z}from"./main.24f7a84b.js";const Z={class:"grid gap-8 md:grid-cols-12 pt-10"},ee={class:"col-span-8 md:col-span-4"},te={class:"flex flex-col my-6 lg:space-x-3 lg:flex-row"},ae=m("div",{class:"hidden w-5 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"2.5rem"}},null,-1),oe={class:"col-span-8"},re=["src"],ne={setup(G){const{t:g}=j(),v=W();v.downloadReport=x;const u=C([g("dateRange.today"),g("dateRange.this_week"),g("dateRange.this_month"),g("dateRange.this_quarter"),g("dateRange.this_year"),g("dateRange.previous_week"),g("dateRange.previous_month"),g("dateRange.previous_quarter"),g("dateRange.previous_year"),g("dateRange.custom")]),$=b(["By Customer","By Item"]),o=b("By Customer"),k=b(g("dateRange.this_month"));let w=b(new Date),D=b(null),e=b(null),y=b(null),s=C({from_date:r().startOf("month").format("YYYY-MM-DD").toString(),to_date:r().endOf("month").format("YYYY-MM-DD").toString()});const O=z(),n=M(()=>D.value),d=M(()=>O.selectedCompany),V=M(()=>`${e.value}?from_date=${r(s.from_date).format("YYYY-MM-DD")}&to_date=${r(s.to_date).format("YYYY-MM-DD")}`),T=M(()=>`${y.value}?from_date=${r(s.from_date).format("YYYY-MM-DD")}&to_date=${r(s.to_date).format("YYYY-MM-DD")}`);L(w,f=>{s.from_date=r(f).startOf("year").toString(),s.to_date=r(f).endOf("year").toString()}),F(()=>{e.value=`/reports/sales/customers/${d.value.unique_hash}`,y.value=`/reports/sales/items/${d.value.unique_hash}`,l()});function _(f,Y){return r()[f](Y).format("YYYY-MM-DD")}function B(f,Y){return r().subtract(1,Y)[f](Y).format("YYYY-MM-DD")}function a(){switch(k.value){case"Today":s.from_date=r().format("YYYY-MM-DD"),s.to_date=r().format("YYYY-MM-DD");break;case"This Week":s.from_date=_("startOf","isoWeek"),s.to_date=_("endOf","isoWeek");break;case"This Month":s.from_date=_("startOf","month"),s.to_date=_("endOf","month");break;case"This Quarter":s.from_date=_("startOf","quarter"),s.to_date=_("endOf","quarter");break;case"This Year":s.from_date=_("startOf","year"),s.to_date=_("endOf","year");break;case"Previous Week":s.from_date=B("startOf","isoWeek"),s.to_date=B("endOf","isoWeek");break;case"Previous Month":s.from_date=B("startOf","month"),s.to_date=B("endOf","month");break;case"Previous Quarter":s.from_date=B("startOf","quarter"),s.to_date=B("endOf","quarter");break;case"Previous Year":s.from_date=B("startOf","year"),s.to_date=B("endOf","year");break}}async function l(){return o.value==="By Customer"?(D.value=V.value,!0):(D.value=T.value,!0)}async function S(){let f=await R();return window.open(n.value,"_blank"),f}function R(){return o.value==="By Customer"?(D.value=V.value,!0):(D.value=T.value,!0)}function x(){if(!R())return!1;window.open(n.value+"&download=true"),setTimeout(()=>o.value==="By Customer"?(D.value=V.value,!0):(D.value=T.value,!0),200)}return(f,Y)=>{const h=i("BaseMultiselect"),Q=i("BaseInputGroup"),E=i("BaseDatePicker"),J=i("BaseButton"),A=i("BaseIcon");return I(),N("div",Z,[m("div",ee,[t(Q,{label:f.$t("reports.sales.date_range"),class:"col-span-12 md:col-span-8"},{default:c(()=>[t(h,{modelValue:k.value,"onUpdate:modelValue":[Y[0]||(Y[0]=q=>k.value=q),a],options:p(u)},null,8,["modelValue","options"])]),_:1},8,["label"]),m("div",te,[t(Q,{label:f.$t("reports.sales.from_date")},{default:c(()=>[t(E,{modelValue:p(s).from_date,"onUpdate:modelValue":Y[1]||(Y[1]=q=>p(s).from_date=q)},null,8,["modelValue"])]),_:1},8,["label"]),ae,t(Q,{label:f.$t("reports.sales.to_date")},{default:c(()=>[t(E,{modelValue:p(s).to_date,"onUpdate:modelValue":Y[2]||(Y[2]=q=>p(s).to_date=q)},null,8,["modelValue"])]),_:1},8,["label"])]),t(Q,{label:f.$t("reports.sales.report_type"),class:"col-span-12 md:col-span-8"},{default:c(()=>[t(h,{modelValue:o.value,"onUpdate:modelValue":[Y[3]||(Y[3]=q=>o.value=q),l],options:$.value,placeholder:f.$t("reports.sales.report_type"),class:"mt-1"},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),t(J,{variant:"primary-outline",class:"content-center hidden mt-0 w-md md:flex md:mt-8",type:"submit",onClick:H(R,["prevent"])},{default:c(()=>[U(P(f.$t("reports.update_report")),1)]),_:1},8,["onClick"])]),m("div",oe,[m("iframe",{src:p(n),class:"hidden w-full h-screen h-screen-ios border-gray-100 border-solid rounded md:flex"},null,8,re),m("a",{class:"flex items-center justify-center h-10 px-5 py-1 text-sm font-medium leading-none text-center text-white rounded whitespace-nowrap md:hidden bg-primary-500",onClick:S},[t(A,{name:"DocumentTextIcon",class:"h-5 mr-2"}),m("span",null,P(f.$t("reports.view_pdf")),1)])])])}}},se={class:"grid gap-8 md:grid-cols-12 pt-10"},le={class:"col-span-8 md:col-span-4"},de={class:"flex flex-col mt-6 lg:space-x-3 lg:flex-row"},ue=m("div",{class:"hidden w-5 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"2.5rem"}},null,-1),ie={class:"col-span-8"},me=["src"],ce={setup(G){const g=W(),v=z(),{t:u}=j();g.downloadReport=B;const $=C([u("dateRange.today"),u("dateRange.this_week"),u("dateRange.this_month"),u("dateRange.this_quarter"),u("dateRange.this_year"),u("dateRange.previous_week"),u("dateRange.previous_month"),u("dateRange.previous_quarter"),u("dateRange.previous_year"),u("dateRange.custom")]),o=b(u("dateRange.this_month"));let k=b(new Date),w=b(null),D=b(null);const e=C({from_date:r().startOf("month").toString(),to_date:r().endOf("month").toString()}),y=M(()=>w.value),s=M(()=>v.selectedCompany),O=M(()=>`${D.value}?from_date=${r(e.from_date).format("YYYY-MM-DD")}&to_date=${r(e.to_date).format("YYYY-MM-DD")}`);F(()=>{D.value=`/reports/expenses/${s.value.unique_hash}`,w.value=O.value}),L(()=>k,a=>{e.from_date=r(a).startOf("year").toString(),e.to_date=r(a).endOf("year").toString()});function n(a,l){return r()[a](l).format("YYYY-MM-DD")}function d(a,l){return r().subtract(1,l)[a](l).format("YYYY-MM-DD")}function V(){switch(o.value){case"Today":e.from_date=r().format("YYYY-MM-DD"),e.to_date=r().format("YYYY-MM-DD");break;case"This Week":e.from_date=n("startOf","isoWeek"),e.to_date=n("endOf","isoWeek");break;case"This Month":e.from_date=n("startOf","month"),e.to_date=n("endOf","month");break;case"This Quarter":e.from_date=n("startOf","quarter"),e.to_date=n("endOf","quarter");break;case"This Year":e.from_date=n("startOf","year"),e.to_date=n("endOf","year");break;case"Previous Week":e.from_date=d("startOf","isoWeek"),e.to_date=d("endOf","isoWeek");break;case"Previous Month":e.from_date=d("startOf","month"),e.to_date=d("endOf","month");break;case"Previous Quarter":e.from_date=d("startOf","quarter"),e.to_date=d("endOf","quarter");break;case"Previous Year":e.from_date=d("startOf","year"),e.to_date=d("endOf","year");break}}async function T(){let a=await _();return window.open(y.value,"_blank"),a}function _(){return w.value=O.value,!0}function B(){!_(),window.open(y.value+"&download=true"),setTimeout(()=>{w.value=O.value},200)}return(a,l)=>{const S=i("BaseMultiselect"),R=i("BaseInputGroup"),x=i("BaseDatePicker"),f=i("BaseButton"),Y=i("BaseIcon");return I(),N("div",se,[m("div",le,[t(R,{label:a.$t("reports.sales.date_range"),class:"col-span-12 md:col-span-8"},{default:c(()=>[t(S,{modelValue:o.value,"onUpdate:modelValue":[l[0]||(l[0]=h=>o.value=h),V],options:p($)},null,8,["modelValue","options"])]),_:1},8,["label"]),m("div",de,[t(R,{label:a.$t("reports.expenses.from_date")},{default:c(()=>[t(x,{modelValue:p(e).from_date,"onUpdate:modelValue":l[1]||(l[1]=h=>p(e).from_date=h)},null,8,["modelValue"])]),_:1},8,["label"]),ue,t(R,{label:a.$t("reports.expenses.to_date")},{default:c(()=>[t(x,{modelValue:p(e).to_date,"onUpdate:modelValue":l[2]||(l[2]=h=>p(e).to_date=h)},null,8,["modelValue"])]),_:1},8,["label"])]),t(f,{variant:"primary-outline",class:"content-center hidden mt-0 w-md md:flex md:mt-8",type:"submit",onClick:H(_,["prevent"])},{default:c(()=>[U(P(a.$t("reports.update_report")),1)]),_:1},8,["onClick"])]),m("div",ie,[m("iframe",{src:p(y),class:"hidden w-full h-screen h-screen-ios border-gray-100 border-solid rounded md:flex"},null,8,me),m("a",{class:"flex items-center justify-center h-10 px-5 py-1 text-sm font-medium leading-none text-center text-white rounded whitespace-nowrap md:hidden bg-primary-500 cursor-pointer",onClick:T},[t(Y,{name:"DocumentTextIcon",class:"h-5 mr-2"}),m("span",null,P(a.$t("reports.view_pdf")),1)])])])}}},pe={class:"grid gap-8 md:grid-cols-12 pt-10"},fe={class:"col-span-8 md:col-span-4"},_e={class:"flex flex-col mt-6 lg:space-x-3 lg:flex-row"},he=m("div",{class:"hidden w-5 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"2.5rem"}},null,-1),ge={class:"col-span-8"},ve=["src"],Ye={setup(G){const g=W(),v=z(),{t:u}=j();g.downloadReport=B;const $=C([u("dateRange.today"),u("dateRange.this_week"),u("dateRange.this_month"),u("dateRange.this_quarter"),u("dateRange.this_year"),u("dateRange.previous_week"),u("dateRange.previous_month"),u("dateRange.previous_quarter"),u("dateRange.previous_year"),u("dateRange.custom")]),o=b(u("dateRange.this_month"));let k=b(null),w=b(null),D=b(new Date);const e=C({from_date:r().startOf("month").toString(),to_date:r().endOf("month").toString()}),y=M(()=>k.value),s=M(()=>v.selectedCompany),O=M(()=>`${w.value}?from_date=${r(e.from_date).format("YYYY-MM-DD")}&to_date=${r(e.to_date).format("YYYY-MM-DD")}`);L(D,a=>{e.from_date=r(a).startOf("year").toString(),e.to_date=r(a).endOf("year").toString()}),F(()=>{w.value=`/reports/profit-loss/${s.value.unique_hash}`,k.value=O.value});function n(a,l){return r()[a](l).format("YYYY-MM-DD")}function d(a,l){return r().subtract(1,l)[a](l).format("YYYY-MM-DD")}function V(){switch(o.value){case"Today":e.from_date=r().format("YYYY-MM-DD"),e.to_date=r().format("YYYY-MM-DD");break;case"This Week":e.from_date=n("startOf","isoWeek"),e.to_date=n("endOf","isoWeek");break;case"This Month":e.from_date=n("startOf","month"),e.to_date=n("endOf","month");break;case"This Quarter":e.from_date=n("startOf","quarter"),e.to_date=n("endOf","quarter");break;case"This Year":e.from_date=n("startOf","year"),e.to_date=n("endOf","year");break;case"Previous Week":e.from_date=d("startOf","isoWeek"),e.to_date=d("endOf","isoWeek");break;case"Previous Month":e.from_date=d("startOf","month"),e.to_date=d("endOf","month");break;case"Previous Quarter":e.from_date=d("startOf","quarter"),e.to_date=d("endOf","quarter");break;case"Previous Year":e.from_date=d("startOf","year"),e.to_date=d("endOf","year");break}}async function T(){let a=await _();return window.open(y.value,"_blank"),a}function _(){return k.value=O.value,!0}function B(){!_(),window.open(y.value+"&download=true"),setTimeout(()=>{k.value=O.value},200)}return(a,l)=>{const S=i("BaseMultiselect"),R=i("BaseInputGroup"),x=i("BaseDatePicker"),f=i("BaseButton"),Y=i("BaseIcon");return I(),N("div",pe,[m("div",fe,[t(R,{label:a.$t("reports.profit_loss.date_range"),class:"col-span-12 md:col-span-8"},{default:c(()=>[t(S,{modelValue:o.value,"onUpdate:modelValue":[l[0]||(l[0]=h=>o.value=h),V],options:p($)},null,8,["modelValue","options"])]),_:1},8,["label"]),m("div",_e,[t(R,{label:a.$t("reports.profit_loss.from_date")},{default:c(()=>[t(x,{modelValue:p(e).from_date,"onUpdate:modelValue":l[1]||(l[1]=h=>p(e).from_date=h)},null,8,["modelValue"])]),_:1},8,["label"]),he,t(R,{label:a.$t("reports.profit_loss.to_date")},{default:c(()=>[t(x,{modelValue:p(e).to_date,"onUpdate:modelValue":l[2]||(l[2]=h=>p(e).to_date=h)},null,8,["modelValue"])]),_:1},8,["label"])]),t(f,{variant:"primary-outline",class:"content-center hidden mt-0 w-md md:flex md:mt-8",type:"submit",onClick:H(_,["prevent"])},{default:c(()=>[U(P(a.$t("reports.update_report")),1)]),_:1},8,["onClick"])]),m("div",ge,[m("iframe",{src:p(y),class:"hidden w-full h-screen h-screen-ios border-gray-100 border-solid rounded md:flex"},null,8,ve),m("a",{class:"flex items-center justify-center h-10 px-5 py-1 text-sm font-medium leading-none text-center text-white rounded whitespace-nowrap md:hidden bg-primary-500",onClick:T},[t(Y,{name:"DocumentTextIcon",class:"h-5 mr-2"}),m("span",null,P(a.$t("reports.view_pdf")),1)])])])}}},be={class:"grid gap-8 md:grid-cols-12 pt-10"},ye={class:"col-span-8 md:col-span-4"},ke={class:"flex flex-col mt-6 lg:space-x-3 lg:flex-row"},De=m("div",{class:"hidden w-5 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"2.5rem"}},null,-1),we={class:"col-span-8"},Re=["src"],Be={setup(G){const g=W();g.downloadReport=B;const{t:v}=j(),u=C([v("dateRange.today"),v("dateRange.this_week"),v("dateRange.this_month"),v("dateRange.this_quarter"),v("dateRange.this_year"),v("dateRange.previous_week"),v("dateRange.previous_month"),v("dateRange.previous_quarter"),v("dateRange.previous_year"),v("dateRange.custom")]),$=b(v("dateRange.this_month")),o=C({from_date:r().startOf("month").format("YYYY-MM-DD").toString(),to_date:r().endOf("month").format("YYYY-MM-DD").toString()});let k=b(null);const w=M(()=>k.value),D=z(),e=M(()=>D.selectedCompany);let y=b(null);F(()=>{y.value=`/reports/tax-summary/${e.value.unique_hash}`,k.value=s.value});const s=M(()=>`${y.value}?from_date=${r(o.from_date).format("YYYY-MM-DD")}&to_date=${r(o.to_date).format("YYYY-MM-DD")}`);let O=b(new Date);L(O.value,a=>{o.from_date=r(a).startOf("year").toString(),o.to_date=r(a).endOf("year").toString()});function n(a,l){return r()[a](l).format("YYYY-MM-DD")}function d(a,l){return r().subtract(1,l)[a](l).format("YYYY-MM-DD")}function V(){switch($.value){case"Today":o.from_date=r().format("YYYY-MM-DD"),o.to_date=r().format("YYYY-MM-DD");break;case"This Week":o.from_date=n("startOf","isoWeek"),o.to_date=n("endOf","isoWeek");break;case"This Month":o.from_date=n("startOf","month"),o.to_date=n("endOf","month");break;case"This Quarter":o.from_date=n("startOf","quarter"),o.to_date=n("endOf","quarter");break;case"This Year":o.from_date=n("startOf","year"),o.to_date=n("endOf","year");break;case"Previous Week":o.from_date=d("startOf","isoWeek"),o.to_date=d("endOf","isoWeek");break;case"Previous Month":o.from_date=d("startOf","month"),o.to_date=d("endOf","month");break;case"Previous Quarter":o.from_date=d("startOf","quarter"),o.to_date=d("endOf","quarter");break;case"Previous Year":o.from_date=d("startOf","year"),o.to_date=d("endOf","year");break}}async function T(){let a=await _();return window.open(w.value,"_blank"),a}function _(){return k.value=s.value,!0}function B(){!_(),window.open(w.value+"&download=true"),setTimeout(()=>{k.value=s.value},200)}return(a,l)=>{const S=i("BaseMultiselect"),R=i("BaseInputGroup"),x=i("BaseDatePicker"),f=i("BaseButton"),Y=i("BaseIcon");return I(),N("div",be,[m("div",ye,[t(R,{label:a.$t("reports.taxes.date_range"),class:"col-span-12 md:col-span-8"},{default:c(()=>[t(S,{modelValue:$.value,"onUpdate:modelValue":[l[0]||(l[0]=h=>$.value=h),V],options:p(u)},null,8,["modelValue","options"])]),_:1},8,["label"]),m("div",ke,[t(R,{label:a.$t("reports.taxes.from_date")},{default:c(()=>[t(x,{modelValue:p(o).from_date,"onUpdate:modelValue":l[1]||(l[1]=h=>p(o).from_date=h)},null,8,["modelValue"])]),_:1},8,["label"]),De,t(R,{label:a.$t("reports.taxes.to_date")},{default:c(()=>[t(x,{modelValue:p(o).to_date,"onUpdate:modelValue":l[2]||(l[2]=h=>p(o).to_date=h)},null,8,["modelValue"])]),_:1},8,["label"])]),t(f,{variant:"primary-outline",class:"content-center hidden mt-0 w-md md:flex md:mt-8",type:"submit",onClick:H(_,["prevent"])},{default:c(()=>[U(P(a.$t("reports.update_report")),1)]),_:1},8,["onClick"])]),m("div",we,[m("iframe",{src:p(w),class:"hidden w-full h-screen h-screen-ios border-gray-100 border-solid rounded md:flex"},null,8,Re),m("a",{class:"flex items-center justify-center h-10 px-5 py-1 text-sm font-medium leading-none text-center text-white rounded whitespace-nowrap md:hidden bg-primary-500",onClick:T},[t(Y,{name:"DocumentTextIcon",class:"h-5 mr-2"}),m("span",null,P(a.$t("reports.view_pdf")),1)])])])}}},$e={setup(G){const g=W();function v(){g.downloadReport()}return(u,$)=>{const o=i("BaseBreadcrumbItem"),k=i("BaseBreadcrumb"),w=i("BaseIcon"),D=i("BaseButton"),e=i("BasePageHeader"),y=i("BaseTab"),s=i("BaseTabGroup"),O=i("BasePage");return I(),K(O,null,{default:c(()=>[t(e,{title:u.$tc("reports.report",2)},{actions:c(()=>[t(D,{variant:"primary",class:"ml-4",onClick:v},{left:c(n=>[t(w,{name:"DownloadIcon",class:X(n.class)},null,8,["class"])]),default:c(()=>[U(" "+P(u.$t("reports.download_pdf")),1)]),_:1})]),default:c(()=>[t(k,null,{default:c(()=>[t(o,{title:u.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),t(o,{title:u.$tc("reports.report",2),to:"/admin/reports",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),t(s,{class:"p-2"},{default:c(()=>[t(y,{title:u.$t("reports.sales.sales"),"tab-panel-container":"px-0 py-0"},{default:c(()=>[t(ne,{ref:(n,d)=>{d.report=n}},null,512)]),_:1},8,["title"]),t(y,{title:u.$t("reports.profit_loss.profit_loss"),"tab-panel-container":"px-0 py-0"},{default:c(()=>[t(Ye,{ref:(n,d)=>{d.report=n}},null,512)]),_:1},8,["title"]),t(y,{title:u.$t("reports.expenses.expenses"),"tab-panel-container":"px-0 py-0"},{default:c(()=>[t(ce,{ref:(n,d)=>{d.report=n}},null,512)]),_:1},8,["title"]),t(y,{title:u.$t("reports.taxes.taxes"),"tab-panel-container":"px-0 py-0"},{default:c(()=>[t(Be,{ref:(n,d)=>{d.report=n}},null,512)]),_:1},8,["title"])]),_:1})]),_:1})}}};export{$e as default}; diff --git a/public/build/assets/Index.c0a868bd.js b/public/build/assets/Index.1b67a295.js similarity index 96% rename from public/build/assets/Index.c0a868bd.js rename to public/build/assets/Index.1b67a295.js index 8cb48319c..d6ca0f5b8 100644 --- a/public/build/assets/Index.c0a868bd.js +++ b/public/build/assets/Index.1b67a295.js @@ -1 +1 @@ -import{B as h,J as ce,aN as _e,a0 as pe,k as R,aR as fe,aS as be,r as n,o as b,l as E,w as s,f as a,q as C,ag as I,u as l,m as y,i as _,t as p,j as P,h as g,V as Ee,x as ge}from"./vendor.01d0adc5.js";import{k as Be,j as ve,e as he,g as f}from"./main.75722495.js";import{_ as ye}from"./ObservatoryIcon.1877bd3e.js";import{_ as Te}from"./EstimateIndexDropdown.4eab32d4.js";import{_ as ke}from"./SendEstimateModal.a8bc3854.js";import"./mail-driver.4ea1af6b.js";const Ce=g("div",{class:"hidden w-8 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"1.5rem"}},null,-1),Ie={class:"relative table-container"},Ae={class:"relative flex items-center justify-between h-10 mt-5 list-none border-b-2 border-gray-200 border-solid"},Se={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},De={class:"absolute items-center left-6 top-2.5 select-none"},Ve={class:"relative block"},Ne={setup($e){const u=Be(),W=ve(),T=he(),k=h(null),{t:i}=ce(),B=h(!1),G=h(["DRAFT","SENT","VIEWED","EXPIRED","ACCEPTED","REJECTED"]),A=h(!0),d=h("general.draft");_e();let o=pe({customer_id:"",status:"DRAFT",from_date:"",to_date:"",estimate_number:""});const M=R(()=>!u.totalEstimateCount&&!A.value),S=R({get:()=>u.selectedEstimates,set:t=>{u.selectEstimate(t)}}),O=R(()=>[{key:"checkbox",thClass:"extra w-10 pr-0",sortable:!1,tdClass:"font-medium text-gray-900 pr-0"},{key:"estimate_date",label:i("estimates.date"),thClass:"extra",tdClass:"font-medium text-gray-500"},{key:"estimate_number",label:i("estimates.number",2)},{key:"name",label:i("estimates.customer")},{key:"status",label:i("estimates.status")},{key:"total",label:i("estimates.total"),tdClass:"font-medium text-gray-900"},{key:"actions",tdClass:"text-right text-sm font-medium pl-0",thClass:"text-right pl-0",sortable:!1}]);fe(o,()=>{q()},{debounce:500}),be(()=>{u.selectAllField&&u.selectAllEstimates()});function H(){return T.hasAbilities([f.CREATE_ESTIMATE,f.EDIT_ESTIMATE,f.VIEW_ESTIMATE,f.SEND_ESTIMATE])}async function J(t,r){o.status="",D()}function D(){k.value&&k.value.refresh()}async function L({page:t,filter:r,sort:c}){let V={customer_id:o.customer_id,status:o.status,from_date:o.from_date,to_date:o.to_date,estimate_number:o.estimate_number,orderByField:c.fieldName||"created_at",orderBy:c.order||"desc",page:t};A.value=!0;let m=await u.fetchEstimates(V);return A.value=!1,{data:m.data.data,pagination:{totalPages:m.data.meta.last_page,currentPage:t,totalCount:m.data.meta.total,limit:10}}}function X(t){if(d.value==t.title)return!0;switch(d.value=t.title,t.title){case i("general.draft"):o.status="DRAFT";break;case i("general.sent"):o.status="SENT";break;default:o.status="";break}}function q(){u.$patch(t=>{t.selectedEstimates=[],t.selectAllField=!1}),D()}function x(){o.customer_id="",o.status="",o.from_date="",o.to_date="",o.estimate_number="",d.value=i("general.all")}function z(){B.value&&x(),B.value=!B.value}async function K(){W.openDialog({title:i("general.are_you_sure"),message:i("estimates.confirm_delete"),yesLabel:i("general.ok"),noLabel:i("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(t=>{t&&u.deleteMultipleEstimates().then(r=>{D(),r.data&&u.$patch(c=>{c.selectedEstimates=[],c.selectAllField=!1})})})}function Q(t){switch(t){case"DRAFT":d.value=i("general.draft");break;case"SENT":d.value=i("general.sent");break;case"VIEWED":d.value=i("estimates.viewed");break;case"EXPIRED":d.value=i("estimates.expired");break;case"ACCEPTED":d.value=i("estimates.accepted");break;case"REJECTED":d.value=i("estimates.rejected");break;default:d.value=i("general.all");break}}return(t,r)=>{const c=n("BaseBreadcrumbItem"),V=n("BaseBreadcrumb"),m=n("BaseIcon"),$=n("BaseButton"),N=n("router-link"),Y=n("BasePageHeader"),Z=n("BaseCustomerSelectInput"),v=n("BaseInputGroup"),ee=n("BaseMultiselect"),j=n("BaseDatePicker"),te=n("BaseInput"),ae=n("BaseFilterWrapper"),se=n("BaseEmptyPlaceholder"),F=n("BaseTab"),le=n("BaseTabGroup"),oe=n("BaseDropdownItem"),ne=n("BaseDropdown"),U=n("BaseCheckbox"),re=n("BaseText"),ie=n("BaseEstimateStatusBadge"),ue=n("BaseFormatMoney"),me=n("BaseTable"),de=n("BasePage");return b(),E(de,null,{default:s(()=>[a(ke),a(Y,{title:t.$t("estimates.title")},{actions:s(()=>[C(a($,{variant:"primary-outline",onClick:z},{right:s(e=>[B.value?(b(),E(m,{key:1,name:"XIcon",class:y(e.class)},null,8,["class"])):(b(),E(m,{key:0,class:y(e.class),name:"FilterIcon"},null,8,["class"]))]),default:s(()=>[_(p(t.$t("general.filter"))+" ",1)]),_:1},512),[[I,l(u).totalEstimateCount]]),l(T).hasAbilities(l(f).CREATE_ESTIMATE)?(b(),E(N,{key:0,to:"estimates/create"},{default:s(()=>[a($,{variant:"primary",class:"ml-4"},{left:s(e=>[a(m,{name:"PlusIcon",class:y(e.class)},null,8,["class"])]),default:s(()=>[_(" "+p(t.$t("estimates.new_estimate")),1)]),_:1})]),_:1})):P("",!0)]),default:s(()=>[a(V,null,{default:s(()=>[a(c,{title:t.$t("general.home"),to:"dashboard"},null,8,["title"]),a(c,{title:t.$tc("estimates.estimate",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),C(a(ae,{"row-on-xl":!0,onClear:x},{default:s(()=>[a(v,{label:t.$tc("customers.customer",1)},{default:s(()=>[a(Z,{modelValue:l(o).customer_id,"onUpdate:modelValue":r[0]||(r[0]=e=>l(o).customer_id=e),placeholder:t.$t("customers.type_or_click"),"value-prop":"id",label:"name"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(v,{label:t.$t("estimates.status")},{default:s(()=>[a(ee,{modelValue:l(o).status,"onUpdate:modelValue":[r[1]||(r[1]=e=>l(o).status=e),Q],options:G.value,searchable:"",placeholder:t.$t("general.select_a_status"),onRemove:r[2]||(r[2]=e=>J())},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),a(v,{label:t.$t("general.from")},{default:s(()=>[a(j,{modelValue:l(o).from_date,"onUpdate:modelValue":r[3]||(r[3]=e=>l(o).from_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),Ce,a(v,{label:t.$t("general.to")},{default:s(()=>[a(j,{modelValue:l(o).to_date,"onUpdate:modelValue":r[4]||(r[4]=e=>l(o).to_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),a(v,{label:t.$t("estimates.estimate_number")},{default:s(()=>[a(te,{modelValue:l(o).estimate_number,"onUpdate:modelValue":r[5]||(r[5]=e=>l(o).estimate_number=e)},{left:s(e=>[a(m,{name:"HashtagIcon",class:y(e.class)},null,8,["class"])]),_:1},8,["modelValue"])]),_:1},8,["label"])]),_:1},512),[[I,B.value]]),C(a(se,{title:t.$t("estimates.no_estimates"),description:t.$t("estimates.list_of_estimates")},{actions:s(()=>[l(T).hasAbilities(l(f).CREATE_ESTIMATE)?(b(),E($,{key:0,variant:"primary-outline",onClick:r[6]||(r[6]=e=>t.$router.push("/admin/estimates/create"))},{left:s(e=>[a(m,{name:"PlusIcon",class:y(e.class)},null,8,["class"])]),default:s(()=>[_(" "+p(t.$t("estimates.add_new_estimate")),1)]),_:1})):P("",!0)]),default:s(()=>[a(ye,{class:"mt-5 mb-4"})]),_:1},8,["title","description"]),[[I,l(M)]]),C(g("div",Ie,[g("div",Ae,[a(le,{class:"-mb-5",onChange:X},{default:s(()=>[a(F,{title:t.$t("general.draft"),filter:"DRAFT"},null,8,["title"]),a(F,{title:t.$t("general.sent"),filter:"SENT"},null,8,["title"]),a(F,{title:t.$t("general.all"),filter:""},null,8,["title"])]),_:1}),l(u).selectedEstimates.length&&l(T).hasAbilities(l(f).DELETE_ESTIMATE)?(b(),E(ne,{key:0,class:"absolute float-right"},{activator:s(()=>[g("span",Se,[_(p(t.$t("general.actions"))+" ",1),a(m,{name:"ChevronDownIcon"})])]),default:s(()=>[a(oe,{onClick:K},{default:s(()=>[a(m,{name:"TrashIcon",class:"mr-3 text-gray-600"}),_(" "+p(t.$t("general.delete")),1)]),_:1})]),_:1})):P("",!0)]),a(me,{ref:(e,w)=>{w.tableComponent=e,k.value=e},data:L,columns:l(O),"placeholder-count":l(u).totalEstimateCount>=20?10:5,class:"mt-10"},Ee({header:s(()=>[g("div",De,[a(U,{modelValue:l(u).selectAllField,"onUpdate:modelValue":r[7]||(r[7]=e=>l(u).selectAllField=e),variant:"primary",onChange:l(u).selectAllEstimates},null,8,["modelValue","onChange"])])]),"cell-checkbox":s(({row:e})=>[g("div",Ve,[a(U,{id:e.id,modelValue:l(S),"onUpdate:modelValue":r[8]||(r[8]=w=>ge(S)?S.value=w:null),value:e.data.id},null,8,["id","modelValue","value"])])]),"cell-estimate_date":s(({row:e})=>[_(p(e.data.formatted_estimate_date),1)]),"cell-estimate_number":s(({row:e})=>[a(N,{to:{path:`estimates/${e.data.id}/view`},class:"font-medium text-primary-500"},{default:s(()=>[_(p(e.data.estimate_number),1)]),_:2},1032,["to"])]),"cell-name":s(({row:e})=>[a(re,{text:e.data.customer.name,length:30},null,8,["text"])]),"cell-status":s(({row:e})=>[a(ie,{status:e.data.status,class:"px-3 py-1"},{default:s(()=>[_(p(e.data.status),1)]),_:2},1032,["status"])]),"cell-total":s(({row:e})=>[a(ue,{amount:e.data.total,currency:e.data.customer.currency},null,8,["amount","currency"])]),_:2},[H()?{name:"cell-actions",fn:s(({row:e})=>[a(Te,{row:e.data,table:k.value},null,8,["row","table"])])}:void 0]),1032,["columns","placeholder-count"])],512),[[I,!l(M)]])]),_:1})}}};export{Ne as default}; +import{B as h,J as ce,aN as _e,a0 as pe,k as R,aR as fe,aS as be,r as n,o as b,l as E,w as s,f as a,q as C,ag as I,u as l,m as y,i as _,t as p,j as P,h as g,V as Ee,x as ge}from"./vendor.01d0adc5.js";import{k as Be,j as ve,e as he,g as f}from"./main.24f7a84b.js";import{_ as ye}from"./ObservatoryIcon.1877bd3e.js";import{_ as Te}from"./EstimateIndexDropdown.7244b3a5.js";import{_ as ke}from"./SendEstimateModal.123953ba.js";import"./mail-driver.69202299.js";const Ce=g("div",{class:"hidden w-8 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"1.5rem"}},null,-1),Ie={class:"relative table-container"},Ae={class:"relative flex items-center justify-between h-10 mt-5 list-none border-b-2 border-gray-200 border-solid"},Se={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},De={class:"absolute items-center left-6 top-2.5 select-none"},Ve={class:"relative block"},Ne={setup($e){const u=Be(),W=ve(),T=he(),k=h(null),{t:i}=ce(),B=h(!1),G=h(["DRAFT","SENT","VIEWED","EXPIRED","ACCEPTED","REJECTED"]),A=h(!0),d=h("general.draft");_e();let o=pe({customer_id:"",status:"DRAFT",from_date:"",to_date:"",estimate_number:""});const M=R(()=>!u.totalEstimateCount&&!A.value),S=R({get:()=>u.selectedEstimates,set:t=>{u.selectEstimate(t)}}),O=R(()=>[{key:"checkbox",thClass:"extra w-10 pr-0",sortable:!1,tdClass:"font-medium text-gray-900 pr-0"},{key:"estimate_date",label:i("estimates.date"),thClass:"extra",tdClass:"font-medium text-gray-500"},{key:"estimate_number",label:i("estimates.number",2)},{key:"name",label:i("estimates.customer")},{key:"status",label:i("estimates.status")},{key:"total",label:i("estimates.total"),tdClass:"font-medium text-gray-900"},{key:"actions",tdClass:"text-right text-sm font-medium pl-0",thClass:"text-right pl-0",sortable:!1}]);fe(o,()=>{q()},{debounce:500}),be(()=>{u.selectAllField&&u.selectAllEstimates()});function H(){return T.hasAbilities([f.CREATE_ESTIMATE,f.EDIT_ESTIMATE,f.VIEW_ESTIMATE,f.SEND_ESTIMATE])}async function J(t,r){o.status="",D()}function D(){k.value&&k.value.refresh()}async function L({page:t,filter:r,sort:c}){let V={customer_id:o.customer_id,status:o.status,from_date:o.from_date,to_date:o.to_date,estimate_number:o.estimate_number,orderByField:c.fieldName||"created_at",orderBy:c.order||"desc",page:t};A.value=!0;let m=await u.fetchEstimates(V);return A.value=!1,{data:m.data.data,pagination:{totalPages:m.data.meta.last_page,currentPage:t,totalCount:m.data.meta.total,limit:10}}}function X(t){if(d.value==t.title)return!0;switch(d.value=t.title,t.title){case i("general.draft"):o.status="DRAFT";break;case i("general.sent"):o.status="SENT";break;default:o.status="";break}}function q(){u.$patch(t=>{t.selectedEstimates=[],t.selectAllField=!1}),D()}function x(){o.customer_id="",o.status="",o.from_date="",o.to_date="",o.estimate_number="",d.value=i("general.all")}function z(){B.value&&x(),B.value=!B.value}async function K(){W.openDialog({title:i("general.are_you_sure"),message:i("estimates.confirm_delete"),yesLabel:i("general.ok"),noLabel:i("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(t=>{t&&u.deleteMultipleEstimates().then(r=>{D(),r.data&&u.$patch(c=>{c.selectedEstimates=[],c.selectAllField=!1})})})}function Q(t){switch(t){case"DRAFT":d.value=i("general.draft");break;case"SENT":d.value=i("general.sent");break;case"VIEWED":d.value=i("estimates.viewed");break;case"EXPIRED":d.value=i("estimates.expired");break;case"ACCEPTED":d.value=i("estimates.accepted");break;case"REJECTED":d.value=i("estimates.rejected");break;default:d.value=i("general.all");break}}return(t,r)=>{const c=n("BaseBreadcrumbItem"),V=n("BaseBreadcrumb"),m=n("BaseIcon"),$=n("BaseButton"),N=n("router-link"),Y=n("BasePageHeader"),Z=n("BaseCustomerSelectInput"),v=n("BaseInputGroup"),ee=n("BaseMultiselect"),j=n("BaseDatePicker"),te=n("BaseInput"),ae=n("BaseFilterWrapper"),se=n("BaseEmptyPlaceholder"),F=n("BaseTab"),le=n("BaseTabGroup"),oe=n("BaseDropdownItem"),ne=n("BaseDropdown"),U=n("BaseCheckbox"),re=n("BaseText"),ie=n("BaseEstimateStatusBadge"),ue=n("BaseFormatMoney"),me=n("BaseTable"),de=n("BasePage");return b(),E(de,null,{default:s(()=>[a(ke),a(Y,{title:t.$t("estimates.title")},{actions:s(()=>[C(a($,{variant:"primary-outline",onClick:z},{right:s(e=>[B.value?(b(),E(m,{key:1,name:"XIcon",class:y(e.class)},null,8,["class"])):(b(),E(m,{key:0,class:y(e.class),name:"FilterIcon"},null,8,["class"]))]),default:s(()=>[_(p(t.$t("general.filter"))+" ",1)]),_:1},512),[[I,l(u).totalEstimateCount]]),l(T).hasAbilities(l(f).CREATE_ESTIMATE)?(b(),E(N,{key:0,to:"estimates/create"},{default:s(()=>[a($,{variant:"primary",class:"ml-4"},{left:s(e=>[a(m,{name:"PlusIcon",class:y(e.class)},null,8,["class"])]),default:s(()=>[_(" "+p(t.$t("estimates.new_estimate")),1)]),_:1})]),_:1})):P("",!0)]),default:s(()=>[a(V,null,{default:s(()=>[a(c,{title:t.$t("general.home"),to:"dashboard"},null,8,["title"]),a(c,{title:t.$tc("estimates.estimate",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),C(a(ae,{"row-on-xl":!0,onClear:x},{default:s(()=>[a(v,{label:t.$tc("customers.customer",1)},{default:s(()=>[a(Z,{modelValue:l(o).customer_id,"onUpdate:modelValue":r[0]||(r[0]=e=>l(o).customer_id=e),placeholder:t.$t("customers.type_or_click"),"value-prop":"id",label:"name"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(v,{label:t.$t("estimates.status")},{default:s(()=>[a(ee,{modelValue:l(o).status,"onUpdate:modelValue":[r[1]||(r[1]=e=>l(o).status=e),Q],options:G.value,searchable:"",placeholder:t.$t("general.select_a_status"),onRemove:r[2]||(r[2]=e=>J())},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),a(v,{label:t.$t("general.from")},{default:s(()=>[a(j,{modelValue:l(o).from_date,"onUpdate:modelValue":r[3]||(r[3]=e=>l(o).from_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),Ce,a(v,{label:t.$t("general.to")},{default:s(()=>[a(j,{modelValue:l(o).to_date,"onUpdate:modelValue":r[4]||(r[4]=e=>l(o).to_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),a(v,{label:t.$t("estimates.estimate_number")},{default:s(()=>[a(te,{modelValue:l(o).estimate_number,"onUpdate:modelValue":r[5]||(r[5]=e=>l(o).estimate_number=e)},{left:s(e=>[a(m,{name:"HashtagIcon",class:y(e.class)},null,8,["class"])]),_:1},8,["modelValue"])]),_:1},8,["label"])]),_:1},512),[[I,B.value]]),C(a(se,{title:t.$t("estimates.no_estimates"),description:t.$t("estimates.list_of_estimates")},{actions:s(()=>[l(T).hasAbilities(l(f).CREATE_ESTIMATE)?(b(),E($,{key:0,variant:"primary-outline",onClick:r[6]||(r[6]=e=>t.$router.push("/admin/estimates/create"))},{left:s(e=>[a(m,{name:"PlusIcon",class:y(e.class)},null,8,["class"])]),default:s(()=>[_(" "+p(t.$t("estimates.add_new_estimate")),1)]),_:1})):P("",!0)]),default:s(()=>[a(ye,{class:"mt-5 mb-4"})]),_:1},8,["title","description"]),[[I,l(M)]]),C(g("div",Ie,[g("div",Ae,[a(le,{class:"-mb-5",onChange:X},{default:s(()=>[a(F,{title:t.$t("general.draft"),filter:"DRAFT"},null,8,["title"]),a(F,{title:t.$t("general.sent"),filter:"SENT"},null,8,["title"]),a(F,{title:t.$t("general.all"),filter:""},null,8,["title"])]),_:1}),l(u).selectedEstimates.length&&l(T).hasAbilities(l(f).DELETE_ESTIMATE)?(b(),E(ne,{key:0,class:"absolute float-right"},{activator:s(()=>[g("span",Se,[_(p(t.$t("general.actions"))+" ",1),a(m,{name:"ChevronDownIcon"})])]),default:s(()=>[a(oe,{onClick:K},{default:s(()=>[a(m,{name:"TrashIcon",class:"mr-3 text-gray-600"}),_(" "+p(t.$t("general.delete")),1)]),_:1})]),_:1})):P("",!0)]),a(me,{ref:(e,w)=>{w.tableComponent=e,k.value=e},data:L,columns:l(O),"placeholder-count":l(u).totalEstimateCount>=20?10:5,class:"mt-10"},Ee({header:s(()=>[g("div",De,[a(U,{modelValue:l(u).selectAllField,"onUpdate:modelValue":r[7]||(r[7]=e=>l(u).selectAllField=e),variant:"primary",onChange:l(u).selectAllEstimates},null,8,["modelValue","onChange"])])]),"cell-checkbox":s(({row:e})=>[g("div",Ve,[a(U,{id:e.id,modelValue:l(S),"onUpdate:modelValue":r[8]||(r[8]=w=>ge(S)?S.value=w:null),value:e.data.id},null,8,["id","modelValue","value"])])]),"cell-estimate_date":s(({row:e})=>[_(p(e.data.formatted_estimate_date),1)]),"cell-estimate_number":s(({row:e})=>[a(N,{to:{path:`estimates/${e.data.id}/view`},class:"font-medium text-primary-500"},{default:s(()=>[_(p(e.data.estimate_number),1)]),_:2},1032,["to"])]),"cell-name":s(({row:e})=>[a(re,{text:e.data.customer.name,length:30},null,8,["text"])]),"cell-status":s(({row:e})=>[a(ie,{status:e.data.status,class:"px-3 py-1"},{default:s(()=>[_(p(e.data.status),1)]),_:2},1032,["status"])]),"cell-total":s(({row:e})=>[a(ue,{amount:e.data.total,currency:e.data.customer.currency},null,8,["amount","currency"])]),_:2},[H()?{name:"cell-actions",fn:s(({row:e})=>[a(Te,{row:e.data,table:k.value},null,8,["row","table"])])}:void 0]),1032,["columns","placeholder-count"])],512),[[I,!l(M)]])]),_:1})}}};export{Ne as default}; diff --git a/public/build/assets/Index.f1fe364f.js b/public/build/assets/Index.40a6e1ec.js similarity index 88% rename from public/build/assets/Index.f1fe364f.js rename to public/build/assets/Index.40a6e1ec.js index 5a5d99df3..e9e5670fb 100644 --- a/public/build/assets/Index.f1fe364f.js +++ b/public/build/assets/Index.40a6e1ec.js @@ -1 +1 @@ -import{B as b,J as fe,aN as pe,a0 as ge,k as R,aR as be,aS as Ie,r,o as I,l as B,w as s,f as a,q as k,ag as V,u as o,m as $,i as m,t as _,j as M,V as q,h as p,x as Be}from"./vendor.01d0adc5.js";import{t as he,l as ye,j as Ce,u as Re,e as ke,g as h}from"./main.75722495.js";import{_ as Ve}from"./SendInvoiceModal.89e6012d.js";import{_ as $e}from"./RecurringInvoiceIndexDropdown.37d4a992.js";import{_ as Ee}from"./MoonwalkerIcon.ab503573.js";import"./mail-driver.4ea1af6b.js";const Ne=p("div",{class:"hidden w-8 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"1.5rem"}},null,-1),Se={class:"relative table-container"},Ae={class:"relative flex items-center justify-between h-10 mt-5 list-none border-b-2 border-gray-200 border-solid"},Te={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},we={class:"absolute items-center left-6 top-2.5 select-none"},xe={class:"relative block"},Ge={setup(De){const c=he();ye();const H=Ce(),D=Re(),E=ke(),y=b(null),{t:i}=fe(),g=b(!1),F=b(["ACTIVE","ON_HOLD","ALL"]),N=b(!0),v=b("recurring-invoices.all");pe();let l=ge({customer_id:"",status:"ACTIVE",from_date:"",to_date:""});const L=R(()=>!c.totalRecurringInvoices&&!N.value),S=R({get:()=>c.selectedRecurringInvoices,set:e=>c.selectRecurringInvoice(e)}),W=R(()=>[{key:"checkbox",thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"starts_at",label:i("recurring_invoices.starts_at"),thClass:"extra",tdClass:"font-medium"},{key:"customer",label:i("invoices.customer")},{key:"frequency",label:i("recurring_invoices.frequency.title")},{key:"status",label:i("invoices.status")},{key:"total",label:i("invoices.total")},{key:"actions",label:i("recurring_invoices.action"),tdClass:"text-right text-sm font-medium",thClass:"text-right",sortable:!1}]);be(l,()=>{Y()},{debounce:500}),Ie(()=>{c.selectAllField&&c.selectAllRecurringInvoices()});const z=R(()=>F.value.findIndex(e=>e===l.status));function J(){return E.hasAbilities([h.DELETE_RECURRING_INVOICE,h.EDIT_RECURRING_INVOICE,h.VIEW_RECURRING_INVOICE])}function X(e){const n=c.frequencies.find(u=>u.value===e);return n?n.label:`CUSTOM: ${e}`}function A(){y.value&&y.value.refresh()}async function K({page:e,filter:n,sort:u}){let f={customer_id:l.customer_id,status:l.status,from_date:l.from_date,to_date:l.to_date,orderByField:u.fieldName||"created_at",orderBy:u.order||"desc",page:e};N.value=!0;let d=await c.fetchRecurringInvoices(f);return N.value=!1,{data:d.data.data,pagination:{totalPages:d.data.meta.last_page,currentPage:e,totalCount:d.data.meta.total,limit:10}}}function Q(e){if(v.value==e.title)return!0;switch(v.value=e.title,e.title){case i("recurring_invoices.active"):l.status="ACTIVE";break;case i("recurring_invoices.on_hold"):l.status="ON_HOLD";break;case i("recurring_invoices.all"):l.status="ALL";break}}function Y(){c.$patch(e=>{e.selectedRecurringInvoices=[],e.selectAllField=!1}),A()}function O(){l.customer_id="",l.status="",l.from_date="",l.to_date="",l.invoice_number="",v.value=i("general.all")}async function Z(e=null){H.openDialog({title:i("general.are_you_sure"),message:i("invoices.confirm_delete"),yesLabel:i("general.ok"),noLabel:i("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async n=>{n&&await c.deleteMultipleRecurringInvoices(e).then(u=>{u.data.success?(A(),c.$patch(f=>{f.selectedRecurringInvoices=[],f.selectAllField=!1}),D.showNotification({type:"success",message:i("recurring_invoices.deleted_message",2)})):u.data.error&&D.showNotification({type:"error",message:u.data.message})})})}function ee(){g.value&&O(),g.value=!g.value}async function te(e,n){l.status="",A()}function ae(e){switch(e){case"ACTIVE":v.value=i("recurring_invoices.active");break;case"ON_HOLD":v.value=i("recurring_invoices.on_hold");break;case"ALL":v.value=i("recurring_invoices.all");break}}return(e,n)=>{const u=r("BaseBreadcrumbItem"),f=r("BaseBreadcrumb"),d=r("BaseIcon"),T=r("BaseButton"),U=r("router-link"),se=r("BasePageHeader"),ne=r("BaseCustomerSelectInput"),C=r("BaseInputGroup"),le=r("BaseMultiselect"),P=r("BaseDatePicker"),oe=r("BaseFilterWrapper"),re=r("BaseEmptyPlaceholder"),w=r("BaseTab"),ie=r("BaseTabGroup"),ce=r("BaseDropdownItem"),ue=r("BaseDropdown"),j=r("BaseCheckbox"),G=r("BaseText"),de=r("BaseRecurringInvoiceStatusBadge"),me=r("BaseFormatMoney"),_e=r("BaseTable"),ve=r("BasePage");return I(),B(ve,null,{default:s(()=>[a(Ve),a(se,{title:e.$t("recurring_invoices.title")},{actions:s(()=>[k(a(T,{variant:"primary-outline",onClick:ee},{right:s(t=>[g.value?(I(),B(d,{key:1,name:"XIcon",class:$(t.class)},null,8,["class"])):(I(),B(d,{key:0,name:"FilterIcon",class:$(t.class)},null,8,["class"]))]),default:s(()=>[m(_(e.$t("general.filter"))+" ",1)]),_:1},512),[[V,o(c).totalRecurringInvoices]]),o(E).hasAbilities(o(h).CREATE_RECURRING_INVOICE)?(I(),B(U,{key:0,to:"recurring-invoices/create"},{default:s(()=>[a(T,{variant:"primary",class:"ml-4"},{left:s(t=>[a(d,{name:"PlusIcon",class:$(t.class)},null,8,["class"])]),default:s(()=>[m(" "+_(e.$t("recurring_invoices.new_invoice")),1)]),_:1})]),_:1})):M("",!0)]),default:s(()=>[a(f,null,{default:s(()=>[a(u,{title:e.$t("general.home"),to:"dashboard"},null,8,["title"]),a(u,{title:e.$tc("recurring_invoices.invoice",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),k(a(oe,{onClear:O},{default:s(()=>[a(C,{label:e.$tc("customers.customer",1)},{default:s(()=>[a(ne,{modelValue:o(l).customer_id,"onUpdate:modelValue":n[0]||(n[0]=t=>o(l).customer_id=t),placeholder:e.$t("customers.type_or_click"),"value-prop":"id",label:"name"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(C,{label:e.$t("recurring_invoices.status")},{default:s(()=>[a(le,{modelValue:o(l).status,"onUpdate:modelValue":[n[1]||(n[1]=t=>o(l).status=t),ae],options:F.value,searchable:"",placeholder:e.$t("general.select_a_status"),onRemove:n[2]||(n[2]=t=>te())},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),a(C,{label:e.$t("general.from")},{default:s(()=>[a(P,{modelValue:o(l).from_date,"onUpdate:modelValue":n[3]||(n[3]=t=>o(l).from_date=t),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),Ne,a(C,{label:e.$t("general.to")},{default:s(()=>[a(P,{modelValue:o(l).to_date,"onUpdate:modelValue":n[4]||(n[4]=t=>o(l).to_date=t),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},512),[[V,g.value]]),k(a(re,{title:e.$t("recurring_invoices.no_invoices"),description:e.$t("recurring_invoices.list_of_invoices")},q({default:s(()=>[a(Ee,{class:"mt-5 mb-4"})]),_:2},[o(E).hasAbilities(o(h).CREATE_RECURRING_INVOICE)?{name:"actions",fn:s(()=>[a(T,{variant:"primary-outline",onClick:n[5]||(n[5]=t=>e.$router.push("/admin/recurring-invoices/create"))},{left:s(t=>[a(d,{name:"PlusIcon",class:$(t.class)},null,8,["class"])]),default:s(()=>[m(" "+_(e.$t("recurring_invoices.add_new_invoice")),1)]),_:1})])}:void 0]),1032,["title","description"]),[[V,o(L)]]),k(p("div",Se,[p("div",Ae,[a(ie,{class:"-mb-5","default-index":o(z),onChange:Q},{default:s(()=>[a(w,{title:e.$t("recurring_invoices.active"),filter:"ACTIVE"},null,8,["title"]),a(w,{title:e.$t("recurring_invoices.on_hold"),filter:"ON_HOLD"},null,8,["title"]),a(w,{title:e.$t("recurring_invoices.all"),filter:"ALL"},null,8,["title"])]),_:1},8,["default-index"]),o(c).selectedRecurringInvoices.length?(I(),B(ue,{key:0,class:"absolute float-right"},{activator:s(()=>[p("span",Te,[m(_(e.$t("general.actions"))+" ",1),a(d,{name:"ChevronDownIcon",class:"h-5"})])]),default:s(()=>[a(ce,{onClick:n[6]||(n[6]=t=>Z())},{default:s(()=>[a(d,{name:"TrashIcon",class:"mr-3 text-gray-600"}),m(" "+_(e.$t("general.delete")),1)]),_:1})]),_:1})):M("",!0)]),a(_e,{ref:(t,x)=>{x.table=t,y.value=t},data:K,columns:o(W),"placeholder-count":o(c).totalRecurringInvoices>=20?10:5,class:"mt-10"},q({header:s(()=>[p("div",we,[a(j,{modelValue:o(c).selectAllField,"onUpdate:modelValue":n[7]||(n[7]=t=>o(c).selectAllField=t),variant:"primary",onChange:o(c).selectAllRecurringInvoices},null,8,["modelValue","onChange"])])]),"cell-checkbox":s(({row:t})=>[p("div",xe,[a(j,{id:t.id,modelValue:o(S),"onUpdate:modelValue":n[8]||(n[8]=x=>Be(S)?S.value=x:null),value:t.data.id},null,8,["id","modelValue","value"])])]),"cell-starts_at":s(({row:t})=>[m(_(t.data.formatted_starts_at),1)]),"cell-customer":s(({row:t})=>[a(U,{to:{path:`recurring-invoices/${t.data.id}/view`}},{default:s(()=>[a(G,{text:t.data.customer.name,length:30,tag:"span",class:"font-medium text-primary-500 flex flex-col"},null,8,["text"]),a(G,{text:t.data.customer.contact_name?t.data.customer.contact_name:"",length:30,tag:"span",class:"text-xs text-gray-400"},null,8,["text"])]),_:2},1032,["to"])]),"cell-frequency":s(({row:t})=>[m(_(X(t.data.frequency)),1)]),"cell-status":s(({row:t})=>[a(de,{status:t.data.status,class:"px-3 py-1"},{default:s(()=>[m(_(t.data.status),1)]),_:2},1032,["status"])]),"cell-total":s(({row:t})=>[a(me,{amount:t.data.total,currency:t.data.customer.currency},null,8,["amount","currency"])]),_:2},[J?{name:"cell-actions",fn:s(({row:t})=>[a($e,{row:t.data,table:y.value},null,8,["row","table"])])}:void 0]),1032,["columns","placeholder-count"])],512),[[V,!o(L)]])]),_:1})}}};export{Ge as default}; +import{B as b,J as ve,aN as pe,a0 as ge,k as R,aR as be,aS as Ie,r,o as I,l as B,w as s,f as a,q as k,ag as V,u as o,m as $,i as m,t as _,j as M,V as q,h as p,x as Be}from"./vendor.01d0adc5.js";import{t as he,l as ye,j as Ce,u as Re,e as ke,g as h}from"./main.24f7a84b.js";import{_ as Ve}from"./SendInvoiceModal.1e029d4e.js";import{_ as $e}from"./RecurringInvoiceIndexDropdown.44561f32.js";import{_ as Ee}from"./MoonwalkerIcon.ab503573.js";import"./mail-driver.69202299.js";const Ne=p("div",{class:"hidden w-8 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"1.5rem"}},null,-1),Se={class:"relative table-container"},Ae={class:"relative flex items-center justify-between h-10 mt-5 list-none border-b-2 border-gray-200 border-solid"},Te={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},we={class:"absolute items-center left-6 top-2.5 select-none"},xe={class:"relative block"},Ge={setup(De){const c=he();ye();const H=Ce(),D=Re(),E=ke(),y=b(null),{t:i}=ve(),g=b(!1),F=b(["ACTIVE","ON_HOLD","ALL"]),N=b(!0),f=b("recurring-invoices.all");pe();let l=ge({customer_id:"",status:"ACTIVE",from_date:"",to_date:""});const L=R(()=>!c.totalRecurringInvoices&&!N.value),S=R({get:()=>c.selectedRecurringInvoices,set:e=>c.selectRecurringInvoice(e)}),W=R(()=>[{key:"checkbox",thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"starts_at",label:i("recurring_invoices.starts_at"),thClass:"extra",tdClass:"font-medium"},{key:"customer",label:i("invoices.customer")},{key:"frequency",label:i("recurring_invoices.frequency.title")},{key:"status",label:i("invoices.status")},{key:"total",label:i("invoices.total")},{key:"actions",label:i("recurring_invoices.action"),tdClass:"text-right text-sm font-medium",thClass:"text-right",sortable:!1}]);be(l,()=>{Y()},{debounce:500}),Ie(()=>{c.selectAllField&&c.selectAllRecurringInvoices()});const z=R(()=>F.value.findIndex(e=>e===l.status));function J(){return E.hasAbilities([h.DELETE_RECURRING_INVOICE,h.EDIT_RECURRING_INVOICE,h.VIEW_RECURRING_INVOICE])}function X(e){const n=c.frequencies.find(u=>u.value===e);return n?n.label:`CUSTOM: ${e}`}function A(){y.value&&y.value.refresh()}async function K({page:e,filter:n,sort:u}){let v={customer_id:l.customer_id,status:l.status,from_date:l.from_date,to_date:l.to_date,orderByField:u.fieldName||"created_at",orderBy:u.order||"desc",page:e};N.value=!0;let d=await c.fetchRecurringInvoices(v);return N.value=!1,{data:d.data.data,pagination:{totalPages:d.data.meta.last_page,currentPage:e,totalCount:d.data.meta.total,limit:10}}}function Q(e){if(f.value==e.title)return!0;switch(f.value=e.title,e.title){case i("recurring_invoices.active"):l.status="ACTIVE";break;case i("recurring_invoices.on_hold"):l.status="ON_HOLD";break;case i("recurring_invoices.all"):l.status="ALL";break}}function Y(){c.$patch(e=>{e.selectedRecurringInvoices=[],e.selectAllField=!1}),A()}function O(){l.customer_id="",l.status="",l.from_date="",l.to_date="",l.invoice_number="",f.value=i("general.all")}async function Z(e=null){H.openDialog({title:i("general.are_you_sure"),message:i("invoices.confirm_delete"),yesLabel:i("general.ok"),noLabel:i("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async n=>{n&&await c.deleteMultipleRecurringInvoices(e).then(u=>{u.data.success?(A(),c.$patch(v=>{v.selectedRecurringInvoices=[],v.selectAllField=!1}),D.showNotification({type:"success",message:i("recurring_invoices.deleted_message",2)})):u.data.error&&D.showNotification({type:"error",message:u.data.message})})})}function ee(){g.value&&O(),g.value=!g.value}async function te(e,n){l.status="",A()}function ae(e){switch(e){case"ACTIVE":f.value=i("recurring_invoices.active");break;case"ON_HOLD":f.value=i("recurring_invoices.on_hold");break;case"ALL":f.value=i("recurring_invoices.all");break}}return(e,n)=>{const u=r("BaseBreadcrumbItem"),v=r("BaseBreadcrumb"),d=r("BaseIcon"),T=r("BaseButton"),U=r("router-link"),se=r("BasePageHeader"),ne=r("BaseCustomerSelectInput"),C=r("BaseInputGroup"),le=r("BaseMultiselect"),P=r("BaseDatePicker"),oe=r("BaseFilterWrapper"),re=r("BaseEmptyPlaceholder"),w=r("BaseTab"),ie=r("BaseTabGroup"),ce=r("BaseDropdownItem"),ue=r("BaseDropdown"),j=r("BaseCheckbox"),G=r("BaseText"),de=r("BaseRecurringInvoiceStatusBadge"),me=r("BaseFormatMoney"),_e=r("BaseTable"),fe=r("BasePage");return I(),B(fe,null,{default:s(()=>[a(Ve),a(se,{title:e.$t("recurring_invoices.title")},{actions:s(()=>[k(a(T,{variant:"primary-outline",onClick:ee},{right:s(t=>[g.value?(I(),B(d,{key:1,name:"XIcon",class:$(t.class)},null,8,["class"])):(I(),B(d,{key:0,name:"FilterIcon",class:$(t.class)},null,8,["class"]))]),default:s(()=>[m(_(e.$t("general.filter"))+" ",1)]),_:1},512),[[V,o(c).totalRecurringInvoices]]),o(E).hasAbilities(o(h).CREATE_RECURRING_INVOICE)?(I(),B(U,{key:0,to:"recurring-invoices/create"},{default:s(()=>[a(T,{variant:"primary",class:"ml-4"},{left:s(t=>[a(d,{name:"PlusIcon",class:$(t.class)},null,8,["class"])]),default:s(()=>[m(" "+_(e.$t("recurring_invoices.new_invoice")),1)]),_:1})]),_:1})):M("",!0)]),default:s(()=>[a(v,null,{default:s(()=>[a(u,{title:e.$t("general.home"),to:"dashboard"},null,8,["title"]),a(u,{title:e.$tc("recurring_invoices.invoice",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),k(a(oe,{onClear:O},{default:s(()=>[a(C,{label:e.$tc("customers.customer",1)},{default:s(()=>[a(ne,{modelValue:o(l).customer_id,"onUpdate:modelValue":n[0]||(n[0]=t=>o(l).customer_id=t),placeholder:e.$t("customers.type_or_click"),"value-prop":"id",label:"name"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(C,{label:e.$t("recurring_invoices.status")},{default:s(()=>[a(le,{modelValue:o(l).status,"onUpdate:modelValue":[n[1]||(n[1]=t=>o(l).status=t),ae],options:F.value,searchable:"",placeholder:e.$t("general.select_a_status"),onRemove:n[2]||(n[2]=t=>te())},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),a(C,{label:e.$t("general.from")},{default:s(()=>[a(P,{modelValue:o(l).from_date,"onUpdate:modelValue":n[3]||(n[3]=t=>o(l).from_date=t),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),Ne,a(C,{label:e.$t("general.to")},{default:s(()=>[a(P,{modelValue:o(l).to_date,"onUpdate:modelValue":n[4]||(n[4]=t=>o(l).to_date=t),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},512),[[V,g.value]]),k(a(re,{title:e.$t("recurring_invoices.no_invoices"),description:e.$t("recurring_invoices.list_of_invoices")},q({default:s(()=>[a(Ee,{class:"mt-5 mb-4"})]),_:2},[o(E).hasAbilities(o(h).CREATE_RECURRING_INVOICE)?{name:"actions",fn:s(()=>[a(T,{variant:"primary-outline",onClick:n[5]||(n[5]=t=>e.$router.push("/admin/recurring-invoices/create"))},{left:s(t=>[a(d,{name:"PlusIcon",class:$(t.class)},null,8,["class"])]),default:s(()=>[m(" "+_(e.$t("recurring_invoices.add_new_invoice")),1)]),_:1})])}:void 0]),1032,["title","description"]),[[V,o(L)]]),k(p("div",Se,[p("div",Ae,[a(ie,{class:"-mb-5","default-index":o(z),onChange:Q},{default:s(()=>[a(w,{title:e.$t("recurring_invoices.active"),filter:"ACTIVE"},null,8,["title"]),a(w,{title:e.$t("recurring_invoices.on_hold"),filter:"ON_HOLD"},null,8,["title"]),a(w,{title:e.$t("recurring_invoices.all"),filter:"ALL"},null,8,["title"])]),_:1},8,["default-index"]),o(c).selectedRecurringInvoices.length?(I(),B(ue,{key:0,class:"absolute float-right"},{activator:s(()=>[p("span",Te,[m(_(e.$t("general.actions"))+" ",1),a(d,{name:"ChevronDownIcon",class:"h-5"})])]),default:s(()=>[a(ce,{onClick:n[6]||(n[6]=t=>Z())},{default:s(()=>[a(d,{name:"TrashIcon",class:"mr-3 text-gray-600"}),m(" "+_(e.$t("general.delete")),1)]),_:1})]),_:1})):M("",!0)]),a(_e,{ref:(t,x)=>{x.table=t,y.value=t},data:K,columns:o(W),"placeholder-count":o(c).totalRecurringInvoices>=20?10:5,class:"mt-10"},q({header:s(()=>[p("div",we,[a(j,{modelValue:o(c).selectAllField,"onUpdate:modelValue":n[7]||(n[7]=t=>o(c).selectAllField=t),variant:"primary",onChange:o(c).selectAllRecurringInvoices},null,8,["modelValue","onChange"])])]),"cell-checkbox":s(({row:t})=>[p("div",xe,[a(j,{id:t.id,modelValue:o(S),"onUpdate:modelValue":n[8]||(n[8]=x=>Be(S)?S.value=x:null),value:t.data.id},null,8,["id","modelValue","value"])])]),"cell-starts_at":s(({row:t})=>[m(_(t.data.formatted_starts_at),1)]),"cell-customer":s(({row:t})=>[a(U,{to:{path:`recurring-invoices/${t.data.id}/view`}},{default:s(()=>[a(G,{text:t.data.customer.name,length:30,tag:"span",class:"font-medium text-primary-500 flex flex-col"},null,8,["text"]),a(G,{text:t.data.customer.contact_name?t.data.customer.contact_name:"",length:30,tag:"span",class:"text-xs text-gray-400"},null,8,["text"])]),_:2},1032,["to"])]),"cell-frequency":s(({row:t})=>[m(_(X(t.data.frequency)),1)]),"cell-status":s(({row:t})=>[a(de,{status:t.data.status,class:"px-3 py-1"},{default:s(()=>[m(_(t.data.status),1)]),_:2},1032,["status"])]),"cell-total":s(({row:t})=>[a(me,{amount:t.data.total,currency:t.data.customer.currency},null,8,["amount","currency"])]),_:2},[J?{name:"cell-actions",fn:s(({row:t})=>[a($e,{row:t.data,table:y.value},null,8,["row","table"])])}:void 0]),1032,["columns","placeholder-count"])],512),[[V,!o(L)]])]),_:1})}}};export{Ge as default}; diff --git a/public/build/assets/Index.a00a8636.js b/public/build/assets/Index.43ec37d8.js similarity index 82% rename from public/build/assets/Index.a00a8636.js rename to public/build/assets/Index.43ec37d8.js index 409b25595..515facdd9 100644 --- a/public/build/assets/Index.a00a8636.js +++ b/public/build/assets/Index.43ec37d8.js @@ -1 +1 @@ -import{J as K,ah as Q,G as Y,B as b,a0 as Z,k as I,aR as ee,r as s,o as B,l as y,w as a,f as t,q as k,ag as V,u as n,m as F,i,t as u,j as te,h as x}from"./vendor.01d0adc5.js";import{u as ae}from"./invoice.b61ade7d.js";import oe from"./BaseTable.6e206ca7.js";import{u as se}from"./global.08b6a984.js";import{_ as ne}from"./MoonwalkerIcon.ab503573.js";import"./auth.4644c288.js";import"./main.75722495.js";const le=x("div",{class:"hidden w-8 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"1.5rem"}},null,-1),re={class:"relative table-container"},fe={setup(ce){const{t:d}=K();Q("utils"),Y();const D=b(null);let g=b(!0),m=b(!1);const P=b(["DRAFT","DUE","SENT","VIEWED","OVERDUE","COMPLETED"]),o=Z({status:"",from_date:"",to_date:"",invoice_number:""}),p=ae(),h=se();I(()=>h.currency);const j=I(()=>[{key:"invoice_date",label:d("invoices.date"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"invoice_number",label:d("invoices.number")},{key:"status",label:d("invoices.status")},{key:"paid_status",label:d("invoices.paid_status")},{key:"due_amount",label:d("dashboard.recent_invoices_card.amount_due")},{key:"actions",thClass:"text-right",tdClass:"text-right text-sm font-medium",sortable:!1}]),$=I(()=>!p.totalInvoices&&!g.value);ee(o,()=>{T()},{debounce:500});function N(){D.value.refresh()}function T(){N()}function S(){o.status="",o.from_date="",o.to_date="",o.invoice_number=""}function U(){m.value&&S(),m.value=!m.value}async function H({page:l,sort:r}){let v={status:o.status,invoice_number:o.invoice_number,from_date:o.from_date,to_date:o.to_date,orderByField:r.fieldName||"created_at",orderBy:r.order||"desc",page:l};g.value=!0;let _=await p.fetchInvoices(v,h.companySlug);return g.value=!1,{data:_.data.data,pagination:{totalPages:_.data.meta.last_page,currentPage:l,totalCount:_.data.meta.total,limit:10}}}return(l,r)=>{const v=s("BaseBreadcrumbItem"),_=s("BaseBreadcrumb"),c=s("BaseIcon"),G=s("BaseButton"),M=s("BasePageHeader"),R=s("BaseSelectInput"),f=s("BaseInputGroup"),W=s("BaseInput"),w=s("BaseDatePicker"),z=s("BaseFilterWrapper"),O=s("BaseEmptyPlaceholder"),C=s("router-link"),q=s("BaseFormatMoney"),E=s("BaseInvoiceStatusBadge"),A=s("BaseDropdownItem"),J=s("BaseDropdown"),L=s("BasePage");return B(),y(L,null,{default:a(()=>[t(M,{title:l.$t("invoices.title")},{actions:a(()=>[k(t(G,{variant:"primary-outline",onClick:U},{right:a(e=>[n(m)?(B(),y(c,{key:1,name:"XIcon",class:F(e.class)},null,8,["class"])):(B(),y(c,{key:0,name:"FilterIcon",class:F(e.class)},null,8,["class"]))]),default:a(()=>[i(u(l.$t("general.filter"))+" ",1)]),_:1},512),[[V,n(p).totalInvoices]])]),default:a(()=>[t(_,null,{default:a(()=>[t(v,{title:l.$t("general.home"),to:`/${n(h).companySlug}/customer/dashboard`},null,8,["title","to"]),t(v,{title:l.$tc("invoices.invoice",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),k(t(z,{onClear:S},{default:a(()=>[t(f,{label:l.$t("invoices.status"),class:"px-3"},{default:a(()=>[t(R,{modelValue:n(o).status,"onUpdate:modelValue":r[0]||(r[0]=e=>n(o).status=e),options:P.value,searchable:"","allow-empty":!1,placeholder:l.$t("general.select_a_status")},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),t(f,{label:l.$t("invoices.invoice_number"),color:"black-light",class:"px-3 mt-2"},{default:a(()=>[t(W,{modelValue:n(o).invoice_number,"onUpdate:modelValue":r[1]||(r[1]=e=>n(o).invoice_number=e)},{default:a(()=>[t(c,{name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}),t(c,{name:"HashtagIcon",class:"h-5 ml-3 text-gray-600"})]),_:1},8,["modelValue"])]),_:1},8,["label"]),t(f,{label:l.$t("general.from"),class:"px-3"},{default:a(()=>[t(w,{modelValue:n(o).from_date,"onUpdate:modelValue":r[2]||(r[2]=e=>n(o).from_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),le,t(f,{label:l.$t("general.to"),class:"px-3"},{default:a(()=>[t(w,{modelValue:n(o).to_date,"onUpdate:modelValue":r[3]||(r[3]=e=>n(o).to_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},512),[[V,n(m)]]),n($)?(B(),y(O,{key:0,title:l.$t("invoices.no_invoices"),description:l.$t("invoices.list_of_invoices")},{default:a(()=>[t(ne,{class:"mt-5 mb-4"})]),_:1},8,["title","description"])):te("",!0),k(x("div",re,[t(oe,{ref:(e,X)=>{X.table=e,D.value=e},data:H,columns:n(j),"placeholder-count":n(p).totalInvoices>=20?10:5,class:"mt-10"},{"cell-invoice_date":a(({row:e})=>[i(u(e.data.formatted_invoice_date),1)]),"cell-invoice_number":a(({row:e})=>[t(C,{to:{path:`invoices/${e.data.id}/view`},class:"font-medium text-primary-500"},{default:a(()=>[i(u(e.data.invoice_number),1)]),_:2},1032,["to"])]),"cell-due_amount":a(({row:e})=>[t(q,{amount:e.data.total,currency:e.data.customer.currency},null,8,["amount","currency"])]),"cell-status":a(({row:e})=>[t(E,{status:e.data.status,class:"px-3 py-1"},{default:a(()=>[i(u(e.data.status),1)]),_:2},1032,["status"])]),"cell-paid_status":a(({row:e})=>[t(E,{status:e.data.paid_status,class:"px-3 py-1"},{default:a(()=>[i(u(e.data.paid_status),1)]),_:2},1032,["status"])]),"cell-actions":a(({row:e})=>[t(J,null,{activator:a(()=>[t(c,{name:"DotsHorizontalIcon",class:"h-5 text-gray-500"})]),default:a(()=>[t(C,{to:`invoices/${e.data.id}/view`},{default:a(()=>[t(A,null,{default:a(()=>[t(c,{name:"EyeIcon",class:"h-5 mr-3 text-gray-600"}),i(" "+u(l.$t("general.view")),1)]),_:1})]),_:2},1032,["to"])]),_:2},1024)]),_:1},8,["columns","placeholder-count"])],512),[[V,!n($)]])]),_:1})}}};export{fe as default}; +import{J as K,ah as Q,G as Y,B as b,a0 as Z,k as I,aR as ee,r as s,o as B,l as y,w as a,f as t,q as k,ag as V,u as n,m as F,i,t as u,j as te,h as x}from"./vendor.01d0adc5.js";import{u as ae}from"./invoice.7c108372.js";import oe from"./BaseTable.ab76526e.js";import{u as se}from"./global.ab8f317c.js";import{_ as ne}from"./MoonwalkerIcon.ab503573.js";import"./auth.0e030165.js";import"./main.24f7a84b.js";const le=x("div",{class:"hidden w-8 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"1.5rem"}},null,-1),re={class:"relative table-container"},ve={setup(ce){const{t:d}=K();Q("utils"),Y();const D=b(null);let g=b(!0),m=b(!1);const P=b(["DRAFT","DUE","SENT","VIEWED","OVERDUE","COMPLETED"]),o=Z({status:"",from_date:"",to_date:"",invoice_number:""}),p=ae(),h=se();I(()=>h.currency);const j=I(()=>[{key:"invoice_date",label:d("invoices.date"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"invoice_number",label:d("invoices.number")},{key:"status",label:d("invoices.status")},{key:"paid_status",label:d("invoices.paid_status")},{key:"due_amount",label:d("dashboard.recent_invoices_card.amount_due")},{key:"actions",thClass:"text-right",tdClass:"text-right text-sm font-medium",sortable:!1}]),$=I(()=>!p.totalInvoices&&!g.value);ee(o,()=>{T()},{debounce:500});function N(){D.value.refresh()}function T(){N()}function S(){o.status="",o.from_date="",o.to_date="",o.invoice_number=""}function U(){m.value&&S(),m.value=!m.value}async function H({page:l,sort:r}){let f={status:o.status,invoice_number:o.invoice_number,from_date:o.from_date,to_date:o.to_date,orderByField:r.fieldName||"created_at",orderBy:r.order||"desc",page:l};g.value=!0;let _=await p.fetchInvoices(f,h.companySlug);return g.value=!1,{data:_.data.data,pagination:{totalPages:_.data.meta.last_page,currentPage:l,totalCount:_.data.meta.total,limit:10}}}return(l,r)=>{const f=s("BaseBreadcrumbItem"),_=s("BaseBreadcrumb"),c=s("BaseIcon"),G=s("BaseButton"),M=s("BasePageHeader"),R=s("BaseSelectInput"),v=s("BaseInputGroup"),W=s("BaseInput"),w=s("BaseDatePicker"),z=s("BaseFilterWrapper"),O=s("BaseEmptyPlaceholder"),C=s("router-link"),q=s("BaseFormatMoney"),E=s("BaseInvoiceStatusBadge"),A=s("BaseDropdownItem"),J=s("BaseDropdown"),L=s("BasePage");return B(),y(L,null,{default:a(()=>[t(M,{title:l.$t("invoices.title")},{actions:a(()=>[k(t(G,{variant:"primary-outline",onClick:U},{right:a(e=>[n(m)?(B(),y(c,{key:1,name:"XIcon",class:F(e.class)},null,8,["class"])):(B(),y(c,{key:0,name:"FilterIcon",class:F(e.class)},null,8,["class"]))]),default:a(()=>[i(u(l.$t("general.filter"))+" ",1)]),_:1},512),[[V,n(p).totalInvoices]])]),default:a(()=>[t(_,null,{default:a(()=>[t(f,{title:l.$t("general.home"),to:`/${n(h).companySlug}/customer/dashboard`},null,8,["title","to"]),t(f,{title:l.$tc("invoices.invoice",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),k(t(z,{onClear:S},{default:a(()=>[t(v,{label:l.$t("invoices.status"),class:"px-3"},{default:a(()=>[t(R,{modelValue:n(o).status,"onUpdate:modelValue":r[0]||(r[0]=e=>n(o).status=e),options:P.value,searchable:"","allow-empty":!1,placeholder:l.$t("general.select_a_status")},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),t(v,{label:l.$t("invoices.invoice_number"),color:"black-light",class:"px-3 mt-2"},{default:a(()=>[t(W,{modelValue:n(o).invoice_number,"onUpdate:modelValue":r[1]||(r[1]=e=>n(o).invoice_number=e)},{default:a(()=>[t(c,{name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}),t(c,{name:"HashtagIcon",class:"h-5 ml-3 text-gray-600"})]),_:1},8,["modelValue"])]),_:1},8,["label"]),t(v,{label:l.$t("general.from"),class:"px-3"},{default:a(()=>[t(w,{modelValue:n(o).from_date,"onUpdate:modelValue":r[2]||(r[2]=e=>n(o).from_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),le,t(v,{label:l.$t("general.to"),class:"px-3"},{default:a(()=>[t(w,{modelValue:n(o).to_date,"onUpdate:modelValue":r[3]||(r[3]=e=>n(o).to_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},512),[[V,n(m)]]),n($)?(B(),y(O,{key:0,title:l.$t("invoices.no_invoices"),description:l.$t("invoices.list_of_invoices")},{default:a(()=>[t(ne,{class:"mt-5 mb-4"})]),_:1},8,["title","description"])):te("",!0),k(x("div",re,[t(oe,{ref:(e,X)=>{X.table=e,D.value=e},data:H,columns:n(j),"placeholder-count":n(p).totalInvoices>=20?10:5,class:"mt-10"},{"cell-invoice_date":a(({row:e})=>[i(u(e.data.formatted_invoice_date),1)]),"cell-invoice_number":a(({row:e})=>[t(C,{to:{path:`invoices/${e.data.id}/view`},class:"font-medium text-primary-500"},{default:a(()=>[i(u(e.data.invoice_number),1)]),_:2},1032,["to"])]),"cell-due_amount":a(({row:e})=>[t(q,{amount:e.data.total,currency:e.data.customer.currency},null,8,["amount","currency"])]),"cell-status":a(({row:e})=>[t(E,{status:e.data.status,class:"px-3 py-1"},{default:a(()=>[i(u(e.data.status),1)]),_:2},1032,["status"])]),"cell-paid_status":a(({row:e})=>[t(E,{status:e.data.paid_status,class:"px-3 py-1"},{default:a(()=>[i(u(e.data.paid_status),1)]),_:2},1032,["status"])]),"cell-actions":a(({row:e})=>[t(J,null,{activator:a(()=>[t(c,{name:"DotsHorizontalIcon",class:"h-5 text-gray-500"})]),default:a(()=>[t(C,{to:`invoices/${e.data.id}/view`},{default:a(()=>[t(A,null,{default:a(()=>[t(c,{name:"EyeIcon",class:"h-5 mr-3 text-gray-600"}),i(" "+u(l.$t("general.view")),1)]),_:1})]),_:2},1032,["to"])]),_:2},1024)]),_:1},8,["columns","placeholder-count"])],512),[[V,!n($)]])]),_:1})}}};export{ve as default}; diff --git a/public/build/assets/Index.492a896e.js b/public/build/assets/Index.597f85ba.js similarity index 97% rename from public/build/assets/Index.492a896e.js rename to public/build/assets/Index.597f85ba.js index 3bc693f3a..c2b69985e 100644 --- a/public/build/assets/Index.492a896e.js +++ b/public/build/assets/Index.597f85ba.js @@ -1 +1 @@ -import{J as ie,B as E,a0 as ce,k as C,aR as de,aS as pe,r as s,o as f,l as b,w as t,f as a,q as Y,ag as R,u as l,m as g,i as d,t as c,j as S,V as W,h as p,x as F}from"./vendor.01d0adc5.js";import{b as ye,j as _e,e as fe,g as B}from"./main.75722495.js";import{u as be}from"./payment.5c57bec3.js";import{_ as Be}from"./CapsuleIcon.dc769b69.js";import{_ as ve,a as he}from"./SendPaymentModal.1bb9d371.js";import"./mail-driver.4ea1af6b.js";const ge={class:"relative table-container"},Ce={class:"relative flex items-center justify-end h-5"},ke={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},Pe={class:"absolute items-center left-6 top-2.5 select-none"},Ie={class:"relative block"},Me={setup($e){const{t:i}=ie();let v=E(!1),k=E(!0),y=E(null);const r=ce({customer:"",payment_mode:"",payment_number:""}),m=be();ye();const H=_e(),P=fe(),M=C(()=>!m.paymentTotalCount&&!k.value),L=C(()=>[{key:"status",sortable:!1,thClass:"extra w-10",tdClass:"text-left text-sm font-medium extra"},{key:"payment_date",label:i("payments.date"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"payment_number",label:i("payments.payment_number")},{key:"name",label:i("payments.customer")},{key:"payment_mode",label:i("payments.payment_mode")},{key:"invoice_number",label:i("invoices.invoice_number")},{key:"amount",label:i("payments.amount")},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]),I=C({get:()=>m.selectedPayments,set:n=>m.selectPayment(n)}),$=C({get:()=>m.selectAllField,set:n=>m.setSelectAllState(n)});de(r,()=>{J()},{debounce:500}),pe(()=>{m.selectAllField&&m.selectAllPayments()}),m.fetchPaymentModes({limit:"all"});async function z(n){return(await m.fetchPaymentModes({search:n})).data.data}function G(){return P.hasAbilities([B.DELETE_PAYMENT,B.EDIT_PAYMENT,B.VIEW_PAYMENT,B.SEND_PAYMENT])}async function q({page:n,filter:o,sort:h}){let V={customer_id:r.customer_id,payment_method_id:r.payment_mode!==null?r.payment_mode:"",payment_number:r.payment_number,orderByField:h.fieldName||"created_at",orderBy:h.order||"desc",page:n};k.value=!0;let u=await m.fetchPayments(V);return k.value=!1,{data:u.data.data,pagination:{totalPages:u.data.meta.last_page,currentPage:n,totalCount:u.data.meta.total,limit:10}}}function D(){y.value&&y.value.refresh()}function J(){D()}function N(){r.customer_id="",r.payment_mode="",r.payment_number=""}function O(){v.value&&N(),v.value=!v.value}function X(){H.openDialog({title:i("general.are_you_sure"),message:i("payments.confirm_delete",2),yesLabel:i("general.ok"),noLabel:i("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(n=>{n&&m.deleteMultiplePayments().then(o=>{o.data.success&&D()})})}return(n,o)=>{const h=s("BaseBreadcrumbItem"),V=s("BaseBreadcrumb"),u=s("BaseIcon"),T=s("BaseButton"),K=s("BasePageHeader"),Q=s("BaseCustomerSelectInput"),A=s("BaseInputGroup"),Z=s("BaseInput"),ee=s("BaseMultiselect"),te=s("BaseFilterWrapper"),ae=s("BaseEmptyPlaceholder"),ne=s("BaseDropdownItem"),le=s("BaseDropdown"),j=s("BaseCheckbox"),se=s("router-link"),oe=s("BaseText"),me=s("BaseFormatMoney"),re=s("BaseTable"),ue=s("BasePage");return f(),b(ue,{class:"payments"},{default:t(()=>[a(ve),a(K,{title:n.$t("payments.title")},{actions:t(()=>[Y(a(T,{variant:"primary-outline",onClick:O},{right:t(e=>[l(v)?(f(),b(u,{key:1,name:"XIcon",class:g(e.class)},null,8,["class"])):(f(),b(u,{key:0,class:g(e.class),name:"FilterIcon"},null,8,["class"]))]),default:t(()=>[d(c(n.$t("general.filter"))+" ",1)]),_:1},512),[[R,l(m).paymentTotalCount]]),l(P).hasAbilities(l(B).CREATE_PAYMENT)?(f(),b(T,{key:0,variant:"primary",class:"ml-4",onClick:o[0]||(o[0]=e=>n.$router.push("/admin/payments/create"))},{left:t(e=>[a(u,{name:"PlusIcon",class:g(e.class)},null,8,["class"])]),default:t(()=>[d(" "+c(n.$t("payments.add_payment")),1)]),_:1})):S("",!0)]),default:t(()=>[a(V,null,{default:t(()=>[a(h,{title:n.$t("general.home"),to:"dashboard"},null,8,["title"]),a(h,{title:n.$tc("payments.payment",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),a(te,{show:l(v),class:"mt-3",onClear:N},{default:t(()=>[a(A,{label:n.$t("payments.customer")},{default:t(()=>[a(Q,{modelValue:l(r).customer_id,"onUpdate:modelValue":o[1]||(o[1]=e=>l(r).customer_id=e),placeholder:n.$t("customers.type_or_click"),"value-prop":"id",label:"name"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(A,{label:n.$t("payments.payment_number")},{default:t(()=>[a(Z,{modelValue:l(r).payment_number,"onUpdate:modelValue":o[2]||(o[2]=e=>l(r).payment_number=e)},{left:t(e=>[a(u,{name:"HashtagIcon",class:g(e.class)},null,8,["class"])]),_:1},8,["modelValue"])]),_:1},8,["label"]),a(A,{label:n.$t("payments.payment_mode")},{default:t(()=>[a(ee,{modelValue:l(r).payment_mode,"onUpdate:modelValue":o[3]||(o[3]=e=>l(r).payment_mode=e),"value-prop":"id","track-by":"name","filter-results":!1,label:"name","resolve-on-load":"",delay:500,searchable:"",options:z},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["show"]),l(M)?(f(),b(ae,{key:0,title:n.$t("payments.no_payments"),description:n.$t("payments.list_of_payments")},W({default:t(()=>[a(Be,{class:"mt-5 mb-4"})]),_:2},[l(P).hasAbilities(l(B).CREATE_PAYMENT)?{name:"actions",fn:t(()=>[a(T,{variant:"primary-outline",onClick:o[4]||(o[4]=e=>n.$router.push("/admin/payments/create"))},{left:t(e=>[a(u,{name:"PlusIcon",class:g(e.class)},null,8,["class"])]),default:t(()=>[d(" "+c(n.$t("payments.add_new_payment")),1)]),_:1})])}:void 0]),1032,["title","description"])):S("",!0),Y(p("div",ge,[p("div",Ce,[l(m).selectedPayments.length?(f(),b(le,{key:0},{activator:t(()=>[p("span",ke,[d(c(n.$t("general.actions"))+" ",1),a(u,{name:"ChevronDownIcon"})])]),default:t(()=>[a(ne,{onClick:X},{default:t(()=>[a(u,{name:"TrashIcon",class:"mr-3 text-gray-600"}),d(" "+c(n.$t("general.delete")),1)]),_:1})]),_:1})):S("",!0)]),a(re,{ref:(e,_)=>{_.tableComponent=e,F(y)?y.value=e:y=e},data:q,columns:l(L),"placeholder-count":l(m).paymentTotalCount>=20?10:5,class:"mt-3"},W({header:t(()=>[p("div",Pe,[a(j,{modelValue:l($),"onUpdate:modelValue":o[5]||(o[5]=e=>F($)?$.value=e:null),variant:"primary",onChange:l(m).selectAllPayments},null,8,["modelValue","onChange"])])]),"cell-status":t(({row:e})=>[p("div",Ie,[a(j,{id:e.id,modelValue:l(I),"onUpdate:modelValue":o[6]||(o[6]=_=>F(I)?I.value=_:null),value:e.data.id,variant:"primary"},null,8,["id","modelValue","value"])])]),"cell-payment_date":t(({row:e})=>[d(c(e.data.formatted_payment_date),1)]),"cell-payment_number":t(({row:e})=>[a(se,{to:{path:`payments/${e.data.id}/view`},class:"font-medium text-primary-500"},{default:t(()=>[d(c(e.data.payment_number),1)]),_:2},1032,["to"])]),"cell-name":t(({row:e})=>[a(oe,{text:e.data.customer.name,length:30,tag:"span"},null,8,["text"])]),"cell-payment_mode":t(({row:e})=>[p("span",null,c(e.data.payment_method?e.data.payment_method.name:"-"),1)]),"cell-invoice_number":t(({row:e})=>{var _,x,w,U;return[p("span",null,c(((x=(_=e==null?void 0:e.data)==null?void 0:_.invoice)==null?void 0:x.invoice_number)?(U=(w=e==null?void 0:e.data)==null?void 0:w.invoice)==null?void 0:U.invoice_number:"-"),1)]}),"cell-amount":t(({row:e})=>[a(me,{amount:e.data.amount,currency:e.data.customer.currency},null,8,["amount","currency"])]),_:2},[G()?{name:"cell-actions",fn:t(({row:e})=>[a(he,{row:e.data,table:l(y)},null,8,["row","table"])])}:void 0]),1032,["columns","placeholder-count"])],512),[[R,!l(M)]])]),_:1})}}};export{Me as default}; +import{J as ie,B as E,a0 as ce,k as C,aR as de,aS as pe,r as s,o as f,l as b,w as t,f as a,q as Y,ag as R,u as l,m as g,i as d,t as c,j as S,V as W,h as p,x as F}from"./vendor.01d0adc5.js";import{b as ye,j as _e,e as fe,g as B}from"./main.24f7a84b.js";import{u as be}from"./payment.bb0c6e9e.js";import{_ as Be}from"./CapsuleIcon.dc769b69.js";import{_ as ve,a as he}from"./SendPaymentModal.57c4c1f4.js";import"./mail-driver.69202299.js";const ge={class:"relative table-container"},Ce={class:"relative flex items-center justify-end h-5"},ke={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},Pe={class:"absolute items-center left-6 top-2.5 select-none"},Ie={class:"relative block"},Me={setup($e){const{t:i}=ie();let v=E(!1),k=E(!0),y=E(null);const r=ce({customer:"",payment_mode:"",payment_number:""}),m=be();ye();const H=_e(),P=fe(),M=C(()=>!m.paymentTotalCount&&!k.value),L=C(()=>[{key:"status",sortable:!1,thClass:"extra w-10",tdClass:"text-left text-sm font-medium extra"},{key:"payment_date",label:i("payments.date"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"payment_number",label:i("payments.payment_number")},{key:"name",label:i("payments.customer")},{key:"payment_mode",label:i("payments.payment_mode")},{key:"invoice_number",label:i("invoices.invoice_number")},{key:"amount",label:i("payments.amount")},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]),I=C({get:()=>m.selectedPayments,set:n=>m.selectPayment(n)}),$=C({get:()=>m.selectAllField,set:n=>m.setSelectAllState(n)});de(r,()=>{J()},{debounce:500}),pe(()=>{m.selectAllField&&m.selectAllPayments()}),m.fetchPaymentModes({limit:"all"});async function z(n){return(await m.fetchPaymentModes({search:n})).data.data}function G(){return P.hasAbilities([B.DELETE_PAYMENT,B.EDIT_PAYMENT,B.VIEW_PAYMENT,B.SEND_PAYMENT])}async function q({page:n,filter:o,sort:h}){let V={customer_id:r.customer_id,payment_method_id:r.payment_mode!==null?r.payment_mode:"",payment_number:r.payment_number,orderByField:h.fieldName||"created_at",orderBy:h.order||"desc",page:n};k.value=!0;let u=await m.fetchPayments(V);return k.value=!1,{data:u.data.data,pagination:{totalPages:u.data.meta.last_page,currentPage:n,totalCount:u.data.meta.total,limit:10}}}function D(){y.value&&y.value.refresh()}function J(){D()}function N(){r.customer_id="",r.payment_mode="",r.payment_number=""}function O(){v.value&&N(),v.value=!v.value}function X(){H.openDialog({title:i("general.are_you_sure"),message:i("payments.confirm_delete",2),yesLabel:i("general.ok"),noLabel:i("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(n=>{n&&m.deleteMultiplePayments().then(o=>{o.data.success&&D()})})}return(n,o)=>{const h=s("BaseBreadcrumbItem"),V=s("BaseBreadcrumb"),u=s("BaseIcon"),T=s("BaseButton"),K=s("BasePageHeader"),Q=s("BaseCustomerSelectInput"),A=s("BaseInputGroup"),Z=s("BaseInput"),ee=s("BaseMultiselect"),te=s("BaseFilterWrapper"),ae=s("BaseEmptyPlaceholder"),ne=s("BaseDropdownItem"),le=s("BaseDropdown"),j=s("BaseCheckbox"),se=s("router-link"),oe=s("BaseText"),me=s("BaseFormatMoney"),re=s("BaseTable"),ue=s("BasePage");return f(),b(ue,{class:"payments"},{default:t(()=>[a(ve),a(K,{title:n.$t("payments.title")},{actions:t(()=>[Y(a(T,{variant:"primary-outline",onClick:O},{right:t(e=>[l(v)?(f(),b(u,{key:1,name:"XIcon",class:g(e.class)},null,8,["class"])):(f(),b(u,{key:0,class:g(e.class),name:"FilterIcon"},null,8,["class"]))]),default:t(()=>[d(c(n.$t("general.filter"))+" ",1)]),_:1},512),[[R,l(m).paymentTotalCount]]),l(P).hasAbilities(l(B).CREATE_PAYMENT)?(f(),b(T,{key:0,variant:"primary",class:"ml-4",onClick:o[0]||(o[0]=e=>n.$router.push("/admin/payments/create"))},{left:t(e=>[a(u,{name:"PlusIcon",class:g(e.class)},null,8,["class"])]),default:t(()=>[d(" "+c(n.$t("payments.add_payment")),1)]),_:1})):S("",!0)]),default:t(()=>[a(V,null,{default:t(()=>[a(h,{title:n.$t("general.home"),to:"dashboard"},null,8,["title"]),a(h,{title:n.$tc("payments.payment",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),a(te,{show:l(v),class:"mt-3",onClear:N},{default:t(()=>[a(A,{label:n.$t("payments.customer")},{default:t(()=>[a(Q,{modelValue:l(r).customer_id,"onUpdate:modelValue":o[1]||(o[1]=e=>l(r).customer_id=e),placeholder:n.$t("customers.type_or_click"),"value-prop":"id",label:"name"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(A,{label:n.$t("payments.payment_number")},{default:t(()=>[a(Z,{modelValue:l(r).payment_number,"onUpdate:modelValue":o[2]||(o[2]=e=>l(r).payment_number=e)},{left:t(e=>[a(u,{name:"HashtagIcon",class:g(e.class)},null,8,["class"])]),_:1},8,["modelValue"])]),_:1},8,["label"]),a(A,{label:n.$t("payments.payment_mode")},{default:t(()=>[a(ee,{modelValue:l(r).payment_mode,"onUpdate:modelValue":o[3]||(o[3]=e=>l(r).payment_mode=e),"value-prop":"id","track-by":"name","filter-results":!1,label:"name","resolve-on-load":"",delay:500,searchable:"",options:z},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["show"]),l(M)?(f(),b(ae,{key:0,title:n.$t("payments.no_payments"),description:n.$t("payments.list_of_payments")},W({default:t(()=>[a(Be,{class:"mt-5 mb-4"})]),_:2},[l(P).hasAbilities(l(B).CREATE_PAYMENT)?{name:"actions",fn:t(()=>[a(T,{variant:"primary-outline",onClick:o[4]||(o[4]=e=>n.$router.push("/admin/payments/create"))},{left:t(e=>[a(u,{name:"PlusIcon",class:g(e.class)},null,8,["class"])]),default:t(()=>[d(" "+c(n.$t("payments.add_new_payment")),1)]),_:1})])}:void 0]),1032,["title","description"])):S("",!0),Y(p("div",ge,[p("div",Ce,[l(m).selectedPayments.length?(f(),b(le,{key:0},{activator:t(()=>[p("span",ke,[d(c(n.$t("general.actions"))+" ",1),a(u,{name:"ChevronDownIcon"})])]),default:t(()=>[a(ne,{onClick:X},{default:t(()=>[a(u,{name:"TrashIcon",class:"mr-3 text-gray-600"}),d(" "+c(n.$t("general.delete")),1)]),_:1})]),_:1})):S("",!0)]),a(re,{ref:(e,_)=>{_.tableComponent=e,F(y)?y.value=e:y=e},data:q,columns:l(L),"placeholder-count":l(m).paymentTotalCount>=20?10:5,class:"mt-3"},W({header:t(()=>[p("div",Pe,[a(j,{modelValue:l($),"onUpdate:modelValue":o[5]||(o[5]=e=>F($)?$.value=e:null),variant:"primary",onChange:l(m).selectAllPayments},null,8,["modelValue","onChange"])])]),"cell-status":t(({row:e})=>[p("div",Ie,[a(j,{id:e.id,modelValue:l(I),"onUpdate:modelValue":o[6]||(o[6]=_=>F(I)?I.value=_:null),value:e.data.id,variant:"primary"},null,8,["id","modelValue","value"])])]),"cell-payment_date":t(({row:e})=>[d(c(e.data.formatted_payment_date),1)]),"cell-payment_number":t(({row:e})=>[a(se,{to:{path:`payments/${e.data.id}/view`},class:"font-medium text-primary-500"},{default:t(()=>[d(c(e.data.payment_number),1)]),_:2},1032,["to"])]),"cell-name":t(({row:e})=>[a(oe,{text:e.data.customer.name,length:30,tag:"span"},null,8,["text"])]),"cell-payment_mode":t(({row:e})=>[p("span",null,c(e.data.payment_method?e.data.payment_method.name:"-"),1)]),"cell-invoice_number":t(({row:e})=>{var _,x,w,U;return[p("span",null,c(((x=(_=e==null?void 0:e.data)==null?void 0:_.invoice)==null?void 0:x.invoice_number)?(U=(w=e==null?void 0:e.data)==null?void 0:w.invoice)==null?void 0:U.invoice_number:"-"),1)]}),"cell-amount":t(({row:e})=>[a(me,{amount:e.data.amount,currency:e.data.customer.currency},null,8,["amount","currency"])]),_:2},[G()?{name:"cell-actions",fn:t(({row:e})=>[a(he,{row:e.data,table:l(y)},null,8,["row","table"])])}:void 0]),1032,["columns","placeholder-count"])],512),[[R,!l(M)]])]),_:1})}}};export{Me as default}; diff --git a/public/build/assets/Index.2f43174e.js b/public/build/assets/Index.62cd1a7f.js similarity index 99% rename from public/build/assets/Index.2f43174e.js rename to public/build/assets/Index.62cd1a7f.js index 364a86e99..0b2ad8835 100644 --- a/public/build/assets/Index.2f43174e.js +++ b/public/build/assets/Index.62cd1a7f.js @@ -1 +1 @@ -import{J as z,G as ue,aN as me,ah as H,r as o,o as m,l as C,w as t,u as a,f as l,i as g,t as y,j as M,e as pe,h as n,m as u,B as Z,a0 as Ce,k as A,aR as fe,aS as he,q as P,ag as U,V as ye,x as ve}from"./vendor.01d0adc5.js";import{j as G,u as W,p as O,e as q,g as L,b as _e}from"./main.75722495.js";const ge={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(i){const r=i,F=G();W();const{t:B}=z(),b=O(),f=ue();me();const _=q();H("utils");function I(d){F.openDialog({title:B("general.are_you_sure"),message:B("items.confirm_delete"),yesLabel:B("general.ok"),noLabel:B("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(p=>{p&&b.deleteItem({ids:[d]}).then(v=>(v.data.success&&r.loadData&&r.loadData(),!0))})}return(d,p)=>{const v=o("BaseIcon"),w=o("BaseButton"),$=o("BaseDropdownItem"),D=o("router-link"),E=o("BaseDropdown");return m(),C(E,null,{activator:t(()=>[a(f).name==="items.view"?(m(),C(w,{key:0,variant:"primary"},{default:t(()=>[l(v,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(m(),C(v,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:t(()=>[a(_).hasAbilities(a(L).EDIT_ITEM)?(m(),C(D,{key:0,to:`/admin/items/${i.row.id}/edit`},{default:t(()=>[l($,null,{default:t(()=>[l(v,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),g(" "+y(d.$t("general.edit")),1)]),_:1})]),_:1},8,["to"])):M("",!0),a(_).hasAbilities(a(L).DELETE_ITEM)?(m(),C($,{key:1,onClick:p[0]||(p[0]=j=>I(i.row.id))},{default:t(()=>[l(v,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),g(" "+y(d.$t("general.delete")),1)]),_:1})):M("",!0)]),_:1})}}},Be={width:"110",height:"110",viewBox:"0 0 110 110",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Le={"clip-path":"url(#clip0)"},be=n("defs",null,[n("clipPath",{id:"clip0"},[n("rect",{width:"110",height:"110",fill:"white"})])],-1),Ie={props:{primaryFillColor:{type:String,default:"fill-primary-500"},secondaryFillColor:{type:String,default:"fill-gray-600"}},setup(i){return(r,F)=>(m(),pe("svg",Be,[n("g",Le,[n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M5.76398 22.9512L4.54883 21.7361L21.7363 4.54858L22.9515 5.76374L5.76398 22.9512Z",class:u(i.secondaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M88.264 105.451L87.0488 104.236L104.236 87.0486L105.451 88.2637L88.264 105.451Z",class:u(i.secondaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M29.8265 81.3887L28.6113 80.1736L38.9238 69.8611L40.139 71.0762L29.8265 81.3887Z",class:u(i.primaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M30.9375 81.6406C30.9375 83.0637 29.7825 84.2188 28.3594 84.2188C26.9362 84.2188 25.7812 83.0637 25.7812 81.6406C25.7812 80.2175 26.9362 79.0625 28.3594 79.0625C29.7825 79.0625 30.9375 80.2175 30.9375 81.6406Z",class:u(i.primaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M77.3435 61.5801C76.4635 61.5801 75.5835 61.9152 74.9132 62.5873L62.5863 74.9124C61.244 76.2548 61.244 78.4324 62.5863 79.7748L92.8123 110.001L110 92.8132L79.7738 62.5873C79.1035 61.9152 78.2235 61.5801 77.3435 61.5801ZM77.3435 63.2988C77.8024 63.2988 78.2338 63.4776 78.5587 63.8024L107.569 92.8132L92.8123 107.569L63.8015 78.5596C63.4767 78.2348 63.2979 77.8034 63.2979 77.3445C63.2979 76.8838 63.4767 76.4524 63.8015 76.1276L76.1284 63.8024C76.4532 63.4776 76.8846 63.2988 77.3435 63.2988Z",class:u(i.secondaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M17.1875 0L0 17.1875L30.2259 47.4134C30.8963 48.0838 31.7763 48.4206 32.6562 48.4206C33.5363 48.4206 34.4162 48.0838 35.0866 47.4134L47.4134 35.0866C48.7558 33.7442 48.7558 31.5683 47.4134 30.2259L17.1875 0ZM17.1875 2.43031L46.1983 31.4411C46.5231 31.7659 46.7019 32.1973 46.7019 32.6562C46.7019 33.1152 46.5231 33.5466 46.1983 33.8714L33.8714 46.1983C33.5466 46.5231 33.1152 46.7019 32.6562 46.7019C32.1973 46.7019 31.7659 46.5231 31.4411 46.1983L2.43031 17.1875L17.1875 2.43031Z",class:u(i.secondaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M60.156 28.9238C59.276 28.9238 58.396 29.259 57.7257 29.931L29.9301 57.7249C28.5878 59.0673 28.5878 61.2449 29.9301 62.5873L47.4132 80.0687C48.0835 80.7407 48.9635 81.0759 49.8435 81.0759C50.7235 81.0759 51.6035 80.7407 52.2738 80.0687L80.0695 52.2748C81.4118 50.9324 81.4118 48.7548 80.0695 47.4124L62.5863 29.931C61.916 29.259 61.036 28.9238 60.156 28.9238ZM60.156 30.6426C60.6149 30.6426 61.0463 30.8213 61.3712 31.1462L78.8543 48.6276C79.1792 48.9524 79.3579 49.3838 79.3579 49.8445C79.3579 50.3034 79.1792 50.7348 78.8543 51.0596L51.0587 78.8535C50.7338 79.1784 50.3024 79.3571 49.8435 79.3571C49.3846 79.3571 48.9532 79.1784 48.6284 78.8535L31.1453 61.3721C30.8204 61.0473 30.6417 60.6159 30.6417 60.157C30.6417 59.6963 30.8204 59.2649 31.1453 58.9401L58.9409 31.1462C59.2657 30.8213 59.6971 30.6426 60.156 30.6426Z",class:u(i.secondaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M71.0765 40.1387L69.8613 38.9236L72.4395 36.3455L73.6546 37.5606L71.0765 40.1387Z",class:u(i.secondaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M72.9858 24.8608C69.6291 28.2176 69.6291 33.6574 72.9858 37.0141C74.6633 38.6916 76.8633 39.5321 79.0633 39.5321C81.2616 39.5321 83.4616 38.6916 85.1391 37.0141L72.9858 24.8608ZM73.1388 27.4441L82.5558 36.8612C81.5091 37.4816 80.3111 37.8133 79.0633 37.8133C77.226 37.8133 75.5003 37.0966 74.201 35.799C72.9033 34.4996 72.1883 32.774 72.1883 30.9383C72.1883 29.6888 72.5183 28.4908 73.1388 27.4441Z",class:u(i.secondaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M86.1459 32.0051C85.9259 32.0051 85.7059 31.9209 85.5374 31.7542C85.2023 31.4173 85.2023 30.8742 85.5374 30.5373C86.3504 29.7261 86.7973 28.6467 86.7973 27.5003C86.7973 26.3522 86.3504 25.2728 85.5374 24.4615C83.9149 22.839 81.0859 22.839 79.4616 24.4615C79.1265 24.7984 78.5834 24.7984 78.2465 24.4615C77.9113 24.1264 77.9113 23.5833 78.2465 23.2464C80.5187 20.9742 84.4821 20.9742 86.7543 23.2464C87.8904 24.3825 88.516 25.8933 88.516 27.5003C88.516 29.1073 87.8904 30.6181 86.7543 31.7542C86.5859 31.9209 86.3659 32.0051 86.1459 32.0051Z",class:u(i.primaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M89.792 35.6514C89.572 35.6514 89.352 35.5672 89.1836 35.4004C88.8484 35.0636 88.8484 34.5204 89.1836 34.1836C90.9711 32.3978 91.9525 30.0259 91.9525 27.4994C91.9525 24.9745 90.9711 22.6009 89.1836 20.8151C87.3978 19.0294 85.0259 18.0462 82.4994 18.0462C79.9745 18.0462 77.6009 19.0294 75.8152 20.8151C75.48 21.1503 74.9352 21.1503 74.6 20.8151C74.2648 20.48 74.2648 19.9351 74.6 19.6C78.9553 15.2447 86.0434 15.2447 90.4005 19.6C94.7558 23.9553 94.7558 31.0434 90.4005 35.4004C90.232 35.5672 90.012 35.6514 89.792 35.6514Z",class:u(i.primaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M93.4379 39.297C93.2179 39.297 92.9979 39.2128 92.8295 39.0461C92.4944 38.7092 92.4944 38.1661 92.8295 37.8292C95.5898 35.0706 97.1092 31.4028 97.1092 27.4995C97.1092 23.5979 95.5898 19.9284 92.8295 17.1698C90.0709 14.4112 86.4031 12.8901 82.4998 12.8901C78.5983 12.8901 74.9287 14.4112 72.1701 17.1698C71.835 17.505 71.2901 17.505 70.955 17.1698C70.6198 16.8347 70.6198 16.2898 70.955 15.9547C74.0384 12.8712 78.1394 11.1714 82.4998 11.1714C86.862 11.1714 90.9612 12.8712 94.0464 15.9547C97.1298 19.0381 98.8279 23.139 98.8279 27.4995C98.8279 31.8617 97.1298 35.9609 94.0464 39.0461C93.8779 39.2128 93.6579 39.297 93.4379 39.297Z",class:u(i.primaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M39.7832 40.9981L8.8457 10.0606L10.0609 8.84546L40.9984 39.783L39.7832 40.9981Z",class:u(i.primaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M99.9395 101.154L69.002 70.2169L70.2171 69.0017L101.155 99.9392L99.9395 101.154Z",class:u(i.primaryFillColor)},null,2)]),be]))}},we={class:"flex items-center justify-end space-x-5"},ke={class:"relative table-container"},Me={class:"relative flex items-center justify-end h-5 border-gray-200 border-solid"},Fe={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},$e={class:"absolute items-center left-6 top-2.5 select-none"},De={class:"relative block"},Se={setup(i){H("utils");const r=O(),F=_e();W();const B=G(),b=q(),{t:f}=z();let _=Z(!1),I=Z(!0);const d=Ce({name:"",unit_id:"",price:""}),p=Z(null),v=A(()=>!r.totalItems&&!I.value),w=A({get:()=>r.selectedItems,set:s=>r.selectItem(s)}),$=A(()=>[{key:"status",thClass:"extra w-10",tdClass:"font-medium text-gray-900",placeholderClass:"w-10",sortable:!1},{key:"name",label:f("items.name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"unit_name",label:f("items.unit")},{key:"price",label:f("items.price")},{key:"created_at",label:f("items.added_on")},{key:"actions",thClass:"text-right",tdClass:"text-right text-sm font-medium",sortable:!1}]);fe(d,()=>{J()},{debounce:500}),r.fetchItemUnits({limit:"all"}),he(()=>{r.selectAllField&&r.selectAllItems()});function D(){d.name="",d.unit_id="",d.price=""}function E(){return b.hasAbilities([L.DELETE_ITEM,L.EDIT_ITEM])}function j(){_.value&&D(),_.value=!_.value}function N(){p.value&&p.value.refresh()}function J(){N()}async function X(s){return(await r.fetchItemUnits({search:s})).data.data}async function K({page:s,filter:c,sort:k}){let V={search:d.name,unit_id:d.unit_id!==null?d.unit_id:"",price:Math.round(d.price*100),orderByField:k.fieldName||"created_at",orderBy:k.order||"desc",page:s};I.value=!0;let h=await r.fetchItems(V);return I.value=!1,{data:h.data.data,pagination:{totalPages:h.data.meta.last_page,currentPage:s,totalCount:h.data.meta.total,limit:10}}}function Q(){B.openDialog({title:f("general.are_you_sure"),message:f("items.confirm_delete",2),yesLabel:f("general.ok"),noLabel:f("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(s=>{s&&r.deleteMultipleItems().then(c=>{c.data.success&&p.value&&p.value.refresh()})})}return(s,c)=>{const k=o("BaseBreadcrumbItem"),V=o("BaseBreadcrumb"),h=o("BaseIcon"),S=o("BaseButton"),Y=o("BasePageHeader"),ee=o("BaseInput"),x=o("BaseInputGroup"),te=o("BaseMultiselect"),le=o("BaseMoney"),ae=o("BaseFilterWrapper"),ne=o("BaseEmptyPlaceholder"),se=o("BaseDropdownItem"),oe=o("BaseDropdown"),R=o("BaseCheckbox"),ie=o("router-link"),re=o("BaseFormatMoney"),de=o("BaseTable"),ce=o("BasePage");return m(),C(ce,null,{default:t(()=>[l(Y,{title:s.$t("items.title")},{actions:t(()=>[n("div",we,[P(l(S,{variant:"primary-outline",onClick:j},{right:t(e=>[a(_)?(m(),C(h,{key:1,name:"XIcon",class:u(e.class)},null,8,["class"])):(m(),C(h,{key:0,class:u(e.class),name:"FilterIcon"},null,8,["class"]))]),default:t(()=>[g(y(s.$t("general.filter"))+" ",1)]),_:1},512),[[U,a(r).totalItems]]),a(b).hasAbilities(a(L).CREATE_ITEM)?(m(),C(S,{key:0,onClick:c[0]||(c[0]=e=>s.$router.push("/admin/items/create"))},{left:t(e=>[l(h,{name:"PlusIcon",class:u(e.class)},null,8,["class"])]),default:t(()=>[g(" "+y(s.$t("items.add_item")),1)]),_:1})):M("",!0)])]),default:t(()=>[l(V,null,{default:t(()=>[l(k,{title:s.$t("general.home"),to:"dashboard"},null,8,["title"]),l(k,{title:s.$tc("items.item",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),l(ae,{show:a(_),class:"mt-5",onClear:D},{default:t(()=>[l(x,{label:s.$tc("items.name"),class:"text-left"},{default:t(()=>[l(ee,{modelValue:a(d).name,"onUpdate:modelValue":c[1]||(c[1]=e=>a(d).name=e),type:"text",name:"name",autocomplete:"off"},null,8,["modelValue"])]),_:1},8,["label"]),l(x,{label:s.$tc("items.unit"),class:"text-left"},{default:t(()=>[l(te,{modelValue:a(d).unit_id,"onUpdate:modelValue":c[2]||(c[2]=e=>a(d).unit_id=e),placeholder:s.$t("items.select_a_unit"),"value-prop":"id","track-by":"name","filter-results":!1,label:"name","resolve-on-load":"",delay:500,searchable:"",class:"w-full",options:X},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),l(x,{class:"text-left",label:s.$tc("items.price")},{default:t(()=>[l(le,{modelValue:a(d).price,"onUpdate:modelValue":c[3]||(c[3]=e=>a(d).price=e)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["show"]),P(l(ne,{title:s.$t("items.no_items"),description:s.$t("items.list_of_items")},{actions:t(()=>[a(b).hasAbilities(a(L).CREATE_ITEM)?(m(),C(S,{key:0,variant:"primary-outline",onClick:c[4]||(c[4]=e=>s.$router.push("/admin/items/create"))},{left:t(e=>[l(h,{name:"PlusIcon",class:u(e.class)},null,8,["class"])]),default:t(()=>[g(" "+y(s.$t("items.add_new_item")),1)]),_:1})):M("",!0)]),default:t(()=>[l(Ie,{class:"mt-5 mb-4"})]),_:1},8,["title","description"]),[[U,a(v)]]),P(n("div",ke,[n("div",Me,[a(r).selectedItems.length?(m(),C(oe,{key:0},{activator:t(()=>[n("span",Fe,[g(y(s.$t("general.actions"))+" ",1),l(h,{name:"ChevronDownIcon"})])]),default:t(()=>[l(se,{onClick:Q},{default:t(()=>[l(h,{name:"TrashIcon",class:"mr-3 text-gray-600"}),g(" "+y(s.$t("general.delete")),1)]),_:1})]),_:1})):M("",!0)]),l(de,{ref:(e,T)=>{T.table=e,p.value=e},data:K,columns:a($),"placeholder-count":a(r).totalItems>=20?10:5,class:"mt-3"},ye({header:t(()=>[n("div",$e,[l(R,{modelValue:a(r).selectAllField,"onUpdate:modelValue":c[5]||(c[5]=e=>a(r).selectAllField=e),variant:"primary",onChange:a(r).selectAllItems},null,8,["modelValue","onChange"])])]),"cell-status":t(({row:e})=>[n("div",De,[l(R,{id:e.id,modelValue:a(w),"onUpdate:modelValue":c[6]||(c[6]=T=>ve(w)?w.value=T:null),value:e.data.id},null,8,["id","modelValue","value"])])]),"cell-name":t(({row:e})=>[l(ie,{to:{path:`items/${e.data.id}/edit`},class:"font-medium text-primary-500"},{default:t(()=>[g(y(e.data.name),1)]),_:2},1032,["to"])]),"cell-unit_name":t(({row:e})=>[n("span",null,y(e.data.unit?e.data.unit.name:"-"),1)]),"cell-price":t(({row:e})=>[l(re,{amount:e.data.price,currency:a(F).selectedCompanyCurrency},null,8,["amount","currency"])]),"cell-created_at":t(({row:e})=>[n("span",null,y(e.data.formatted_created_at),1)]),_:2},[E()?{name:"cell-actions",fn:t(({row:e})=>[l(ge,{row:e.data,table:p.value,"load-data":N},null,8,["row","table"])])}:void 0]),1032,["columns","placeholder-count"])],512),[[U,!a(v)]])]),_:1})}}};export{Se as default}; +import{J as z,G as ue,aN as me,ah as H,r as o,o as m,l as C,w as t,u as a,f as l,i as g,t as y,j as M,e as pe,h as n,m as u,B as Z,a0 as Ce,k as A,aR as fe,aS as he,q as P,ag as U,V as ye,x as ve}from"./vendor.01d0adc5.js";import{j as G,u as W,p as O,e as q,g as L,b as _e}from"./main.24f7a84b.js";const ge={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(i){const r=i,F=G();W();const{t:B}=z(),b=O(),f=ue();me();const _=q();H("utils");function I(d){F.openDialog({title:B("general.are_you_sure"),message:B("items.confirm_delete"),yesLabel:B("general.ok"),noLabel:B("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(p=>{p&&b.deleteItem({ids:[d]}).then(v=>(v.data.success&&r.loadData&&r.loadData(),!0))})}return(d,p)=>{const v=o("BaseIcon"),w=o("BaseButton"),$=o("BaseDropdownItem"),D=o("router-link"),E=o("BaseDropdown");return m(),C(E,null,{activator:t(()=>[a(f).name==="items.view"?(m(),C(w,{key:0,variant:"primary"},{default:t(()=>[l(v,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(m(),C(v,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:t(()=>[a(_).hasAbilities(a(L).EDIT_ITEM)?(m(),C(D,{key:0,to:`/admin/items/${i.row.id}/edit`},{default:t(()=>[l($,null,{default:t(()=>[l(v,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),g(" "+y(d.$t("general.edit")),1)]),_:1})]),_:1},8,["to"])):M("",!0),a(_).hasAbilities(a(L).DELETE_ITEM)?(m(),C($,{key:1,onClick:p[0]||(p[0]=j=>I(i.row.id))},{default:t(()=>[l(v,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),g(" "+y(d.$t("general.delete")),1)]),_:1})):M("",!0)]),_:1})}}},Be={width:"110",height:"110",viewBox:"0 0 110 110",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Le={"clip-path":"url(#clip0)"},be=n("defs",null,[n("clipPath",{id:"clip0"},[n("rect",{width:"110",height:"110",fill:"white"})])],-1),Ie={props:{primaryFillColor:{type:String,default:"fill-primary-500"},secondaryFillColor:{type:String,default:"fill-gray-600"}},setup(i){return(r,F)=>(m(),pe("svg",Be,[n("g",Le,[n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M5.76398 22.9512L4.54883 21.7361L21.7363 4.54858L22.9515 5.76374L5.76398 22.9512Z",class:u(i.secondaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M88.264 105.451L87.0488 104.236L104.236 87.0486L105.451 88.2637L88.264 105.451Z",class:u(i.secondaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M29.8265 81.3887L28.6113 80.1736L38.9238 69.8611L40.139 71.0762L29.8265 81.3887Z",class:u(i.primaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M30.9375 81.6406C30.9375 83.0637 29.7825 84.2188 28.3594 84.2188C26.9362 84.2188 25.7812 83.0637 25.7812 81.6406C25.7812 80.2175 26.9362 79.0625 28.3594 79.0625C29.7825 79.0625 30.9375 80.2175 30.9375 81.6406Z",class:u(i.primaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M77.3435 61.5801C76.4635 61.5801 75.5835 61.9152 74.9132 62.5873L62.5863 74.9124C61.244 76.2548 61.244 78.4324 62.5863 79.7748L92.8123 110.001L110 92.8132L79.7738 62.5873C79.1035 61.9152 78.2235 61.5801 77.3435 61.5801ZM77.3435 63.2988C77.8024 63.2988 78.2338 63.4776 78.5587 63.8024L107.569 92.8132L92.8123 107.569L63.8015 78.5596C63.4767 78.2348 63.2979 77.8034 63.2979 77.3445C63.2979 76.8838 63.4767 76.4524 63.8015 76.1276L76.1284 63.8024C76.4532 63.4776 76.8846 63.2988 77.3435 63.2988Z",class:u(i.secondaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M17.1875 0L0 17.1875L30.2259 47.4134C30.8963 48.0838 31.7763 48.4206 32.6562 48.4206C33.5363 48.4206 34.4162 48.0838 35.0866 47.4134L47.4134 35.0866C48.7558 33.7442 48.7558 31.5683 47.4134 30.2259L17.1875 0ZM17.1875 2.43031L46.1983 31.4411C46.5231 31.7659 46.7019 32.1973 46.7019 32.6562C46.7019 33.1152 46.5231 33.5466 46.1983 33.8714L33.8714 46.1983C33.5466 46.5231 33.1152 46.7019 32.6562 46.7019C32.1973 46.7019 31.7659 46.5231 31.4411 46.1983L2.43031 17.1875L17.1875 2.43031Z",class:u(i.secondaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M60.156 28.9238C59.276 28.9238 58.396 29.259 57.7257 29.931L29.9301 57.7249C28.5878 59.0673 28.5878 61.2449 29.9301 62.5873L47.4132 80.0687C48.0835 80.7407 48.9635 81.0759 49.8435 81.0759C50.7235 81.0759 51.6035 80.7407 52.2738 80.0687L80.0695 52.2748C81.4118 50.9324 81.4118 48.7548 80.0695 47.4124L62.5863 29.931C61.916 29.259 61.036 28.9238 60.156 28.9238ZM60.156 30.6426C60.6149 30.6426 61.0463 30.8213 61.3712 31.1462L78.8543 48.6276C79.1792 48.9524 79.3579 49.3838 79.3579 49.8445C79.3579 50.3034 79.1792 50.7348 78.8543 51.0596L51.0587 78.8535C50.7338 79.1784 50.3024 79.3571 49.8435 79.3571C49.3846 79.3571 48.9532 79.1784 48.6284 78.8535L31.1453 61.3721C30.8204 61.0473 30.6417 60.6159 30.6417 60.157C30.6417 59.6963 30.8204 59.2649 31.1453 58.9401L58.9409 31.1462C59.2657 30.8213 59.6971 30.6426 60.156 30.6426Z",class:u(i.secondaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M71.0765 40.1387L69.8613 38.9236L72.4395 36.3455L73.6546 37.5606L71.0765 40.1387Z",class:u(i.secondaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M72.9858 24.8608C69.6291 28.2176 69.6291 33.6574 72.9858 37.0141C74.6633 38.6916 76.8633 39.5321 79.0633 39.5321C81.2616 39.5321 83.4616 38.6916 85.1391 37.0141L72.9858 24.8608ZM73.1388 27.4441L82.5558 36.8612C81.5091 37.4816 80.3111 37.8133 79.0633 37.8133C77.226 37.8133 75.5003 37.0966 74.201 35.799C72.9033 34.4996 72.1883 32.774 72.1883 30.9383C72.1883 29.6888 72.5183 28.4908 73.1388 27.4441Z",class:u(i.secondaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M86.1459 32.0051C85.9259 32.0051 85.7059 31.9209 85.5374 31.7542C85.2023 31.4173 85.2023 30.8742 85.5374 30.5373C86.3504 29.7261 86.7973 28.6467 86.7973 27.5003C86.7973 26.3522 86.3504 25.2728 85.5374 24.4615C83.9149 22.839 81.0859 22.839 79.4616 24.4615C79.1265 24.7984 78.5834 24.7984 78.2465 24.4615C77.9113 24.1264 77.9113 23.5833 78.2465 23.2464C80.5187 20.9742 84.4821 20.9742 86.7543 23.2464C87.8904 24.3825 88.516 25.8933 88.516 27.5003C88.516 29.1073 87.8904 30.6181 86.7543 31.7542C86.5859 31.9209 86.3659 32.0051 86.1459 32.0051Z",class:u(i.primaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M89.792 35.6514C89.572 35.6514 89.352 35.5672 89.1836 35.4004C88.8484 35.0636 88.8484 34.5204 89.1836 34.1836C90.9711 32.3978 91.9525 30.0259 91.9525 27.4994C91.9525 24.9745 90.9711 22.6009 89.1836 20.8151C87.3978 19.0294 85.0259 18.0462 82.4994 18.0462C79.9745 18.0462 77.6009 19.0294 75.8152 20.8151C75.48 21.1503 74.9352 21.1503 74.6 20.8151C74.2648 20.48 74.2648 19.9351 74.6 19.6C78.9553 15.2447 86.0434 15.2447 90.4005 19.6C94.7558 23.9553 94.7558 31.0434 90.4005 35.4004C90.232 35.5672 90.012 35.6514 89.792 35.6514Z",class:u(i.primaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M93.4379 39.297C93.2179 39.297 92.9979 39.2128 92.8295 39.0461C92.4944 38.7092 92.4944 38.1661 92.8295 37.8292C95.5898 35.0706 97.1092 31.4028 97.1092 27.4995C97.1092 23.5979 95.5898 19.9284 92.8295 17.1698C90.0709 14.4112 86.4031 12.8901 82.4998 12.8901C78.5983 12.8901 74.9287 14.4112 72.1701 17.1698C71.835 17.505 71.2901 17.505 70.955 17.1698C70.6198 16.8347 70.6198 16.2898 70.955 15.9547C74.0384 12.8712 78.1394 11.1714 82.4998 11.1714C86.862 11.1714 90.9612 12.8712 94.0464 15.9547C97.1298 19.0381 98.8279 23.139 98.8279 27.4995C98.8279 31.8617 97.1298 35.9609 94.0464 39.0461C93.8779 39.2128 93.6579 39.297 93.4379 39.297Z",class:u(i.primaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M39.7832 40.9981L8.8457 10.0606L10.0609 8.84546L40.9984 39.783L39.7832 40.9981Z",class:u(i.primaryFillColor)},null,2),n("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M99.9395 101.154L69.002 70.2169L70.2171 69.0017L101.155 99.9392L99.9395 101.154Z",class:u(i.primaryFillColor)},null,2)]),be]))}},we={class:"flex items-center justify-end space-x-5"},ke={class:"relative table-container"},Me={class:"relative flex items-center justify-end h-5 border-gray-200 border-solid"},Fe={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},$e={class:"absolute items-center left-6 top-2.5 select-none"},De={class:"relative block"},Se={setup(i){H("utils");const r=O(),F=_e();W();const B=G(),b=q(),{t:f}=z();let _=Z(!1),I=Z(!0);const d=Ce({name:"",unit_id:"",price:""}),p=Z(null),v=A(()=>!r.totalItems&&!I.value),w=A({get:()=>r.selectedItems,set:s=>r.selectItem(s)}),$=A(()=>[{key:"status",thClass:"extra w-10",tdClass:"font-medium text-gray-900",placeholderClass:"w-10",sortable:!1},{key:"name",label:f("items.name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"unit_name",label:f("items.unit")},{key:"price",label:f("items.price")},{key:"created_at",label:f("items.added_on")},{key:"actions",thClass:"text-right",tdClass:"text-right text-sm font-medium",sortable:!1}]);fe(d,()=>{J()},{debounce:500}),r.fetchItemUnits({limit:"all"}),he(()=>{r.selectAllField&&r.selectAllItems()});function D(){d.name="",d.unit_id="",d.price=""}function E(){return b.hasAbilities([L.DELETE_ITEM,L.EDIT_ITEM])}function j(){_.value&&D(),_.value=!_.value}function N(){p.value&&p.value.refresh()}function J(){N()}async function X(s){return(await r.fetchItemUnits({search:s})).data.data}async function K({page:s,filter:c,sort:k}){let V={search:d.name,unit_id:d.unit_id!==null?d.unit_id:"",price:Math.round(d.price*100),orderByField:k.fieldName||"created_at",orderBy:k.order||"desc",page:s};I.value=!0;let h=await r.fetchItems(V);return I.value=!1,{data:h.data.data,pagination:{totalPages:h.data.meta.last_page,currentPage:s,totalCount:h.data.meta.total,limit:10}}}function Q(){B.openDialog({title:f("general.are_you_sure"),message:f("items.confirm_delete",2),yesLabel:f("general.ok"),noLabel:f("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(s=>{s&&r.deleteMultipleItems().then(c=>{c.data.success&&p.value&&p.value.refresh()})})}return(s,c)=>{const k=o("BaseBreadcrumbItem"),V=o("BaseBreadcrumb"),h=o("BaseIcon"),S=o("BaseButton"),Y=o("BasePageHeader"),ee=o("BaseInput"),x=o("BaseInputGroup"),te=o("BaseMultiselect"),le=o("BaseMoney"),ae=o("BaseFilterWrapper"),ne=o("BaseEmptyPlaceholder"),se=o("BaseDropdownItem"),oe=o("BaseDropdown"),R=o("BaseCheckbox"),ie=o("router-link"),re=o("BaseFormatMoney"),de=o("BaseTable"),ce=o("BasePage");return m(),C(ce,null,{default:t(()=>[l(Y,{title:s.$t("items.title")},{actions:t(()=>[n("div",we,[P(l(S,{variant:"primary-outline",onClick:j},{right:t(e=>[a(_)?(m(),C(h,{key:1,name:"XIcon",class:u(e.class)},null,8,["class"])):(m(),C(h,{key:0,class:u(e.class),name:"FilterIcon"},null,8,["class"]))]),default:t(()=>[g(y(s.$t("general.filter"))+" ",1)]),_:1},512),[[U,a(r).totalItems]]),a(b).hasAbilities(a(L).CREATE_ITEM)?(m(),C(S,{key:0,onClick:c[0]||(c[0]=e=>s.$router.push("/admin/items/create"))},{left:t(e=>[l(h,{name:"PlusIcon",class:u(e.class)},null,8,["class"])]),default:t(()=>[g(" "+y(s.$t("items.add_item")),1)]),_:1})):M("",!0)])]),default:t(()=>[l(V,null,{default:t(()=>[l(k,{title:s.$t("general.home"),to:"dashboard"},null,8,["title"]),l(k,{title:s.$tc("items.item",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),l(ae,{show:a(_),class:"mt-5",onClear:D},{default:t(()=>[l(x,{label:s.$tc("items.name"),class:"text-left"},{default:t(()=>[l(ee,{modelValue:a(d).name,"onUpdate:modelValue":c[1]||(c[1]=e=>a(d).name=e),type:"text",name:"name",autocomplete:"off"},null,8,["modelValue"])]),_:1},8,["label"]),l(x,{label:s.$tc("items.unit"),class:"text-left"},{default:t(()=>[l(te,{modelValue:a(d).unit_id,"onUpdate:modelValue":c[2]||(c[2]=e=>a(d).unit_id=e),placeholder:s.$t("items.select_a_unit"),"value-prop":"id","track-by":"name","filter-results":!1,label:"name","resolve-on-load":"",delay:500,searchable:"",class:"w-full",options:X},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),l(x,{class:"text-left",label:s.$tc("items.price")},{default:t(()=>[l(le,{modelValue:a(d).price,"onUpdate:modelValue":c[3]||(c[3]=e=>a(d).price=e)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["show"]),P(l(ne,{title:s.$t("items.no_items"),description:s.$t("items.list_of_items")},{actions:t(()=>[a(b).hasAbilities(a(L).CREATE_ITEM)?(m(),C(S,{key:0,variant:"primary-outline",onClick:c[4]||(c[4]=e=>s.$router.push("/admin/items/create"))},{left:t(e=>[l(h,{name:"PlusIcon",class:u(e.class)},null,8,["class"])]),default:t(()=>[g(" "+y(s.$t("items.add_new_item")),1)]),_:1})):M("",!0)]),default:t(()=>[l(Ie,{class:"mt-5 mb-4"})]),_:1},8,["title","description"]),[[U,a(v)]]),P(n("div",ke,[n("div",Me,[a(r).selectedItems.length?(m(),C(oe,{key:0},{activator:t(()=>[n("span",Fe,[g(y(s.$t("general.actions"))+" ",1),l(h,{name:"ChevronDownIcon"})])]),default:t(()=>[l(se,{onClick:Q},{default:t(()=>[l(h,{name:"TrashIcon",class:"mr-3 text-gray-600"}),g(" "+y(s.$t("general.delete")),1)]),_:1})]),_:1})):M("",!0)]),l(de,{ref:(e,T)=>{T.table=e,p.value=e},data:K,columns:a($),"placeholder-count":a(r).totalItems>=20?10:5,class:"mt-3"},ye({header:t(()=>[n("div",$e,[l(R,{modelValue:a(r).selectAllField,"onUpdate:modelValue":c[5]||(c[5]=e=>a(r).selectAllField=e),variant:"primary",onChange:a(r).selectAllItems},null,8,["modelValue","onChange"])])]),"cell-status":t(({row:e})=>[n("div",De,[l(R,{id:e.id,modelValue:a(w),"onUpdate:modelValue":c[6]||(c[6]=T=>ve(w)?w.value=T:null),value:e.data.id},null,8,["id","modelValue","value"])])]),"cell-name":t(({row:e})=>[l(ie,{to:{path:`items/${e.data.id}/edit`},class:"font-medium text-primary-500"},{default:t(()=>[g(y(e.data.name),1)]),_:2},1032,["to"])]),"cell-unit_name":t(({row:e})=>[n("span",null,y(e.data.unit?e.data.unit.name:"-"),1)]),"cell-price":t(({row:e})=>[l(re,{amount:e.data.price,currency:a(F).selectedCompanyCurrency},null,8,["amount","currency"])]),"cell-created_at":t(({row:e})=>[n("span",null,y(e.data.formatted_created_at),1)]),_:2},[E()?{name:"cell-actions",fn:t(({row:e})=>[l(ge,{row:e.data,table:p.value,"load-data":N},null,8,["row","table"])])}:void 0]),1032,["columns","placeholder-count"])],512),[[U,!a(v)]])]),_:1})}}};export{Se as default}; diff --git a/public/build/assets/Index.857b8662.js b/public/build/assets/Index.9163b87f.js similarity index 98% rename from public/build/assets/Index.857b8662.js rename to public/build/assets/Index.9163b87f.js index 392874345..61abca87a 100644 --- a/public/build/assets/Index.857b8662.js +++ b/public/build/assets/Index.9163b87f.js @@ -1 +1 @@ -import{J as G,G as oe,aN as M,ah as re,r as o,o as p,l as f,w as t,u as n,f as a,i as g,t as d,B as b,a0 as ue,k as D,C as ie,D as ce,aS as de,h as B,q as T,ag as z,m as V,j as E,V as me,x as H}from"./vendor.01d0adc5.js";import{u as O}from"./users.73a3faa4.js";import{j as W,u as q,e as J}from"./main.75722495.js";import{_ as pe}from"./AstronautIcon.948728ac.js";const fe={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(U){const $=U,u=W();q();const{t:_}=G();J();const y=oe();M();const k=O();re("utils");function m(i){u.openDialog({title:_("general.are_you_sure"),message:_("users.confirm_delete",1),yesLabel:_("general.ok"),noLabel:_("general.cancel"),variant:"danger",size:"lg",hideNoButton:!1}).then(l=>{l&&k.deleteUser({ids:[i]}).then(h=>{h&&$.loadData&&$.loadData()})})}return(i,l)=>{const h=o("BaseIcon"),C=o("BaseButton"),v=o("BaseDropdownItem"),w=o("router-link"),x=o("BaseDropdown");return p(),f(x,null,{activator:t(()=>[n(y).name==="users.view"?(p(),f(C,{key:0,variant:"primary"},{default:t(()=>[a(h,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(p(),f(h,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:t(()=>[a(w,{to:`/admin/users/${U.row.id}/edit`},{default:t(()=>[a(v,null,{default:t(()=>[a(h,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),g(" "+d(i.$t("general.edit")),1)]),_:1})]),_:1},8,["to"]),a(v,{onClick:l[0]||(l[0]=S=>m(U.row.id))},{default:t(()=>[a(h,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),g(" "+d(i.$t("general.delete")),1)]),_:1})]),_:1})}}},_e={class:"flex items-center justify-end space-x-5"},he={class:"relative table-container"},ge={class:"relative flex items-center justify-end h-5 border-gray-200 border-solid"},Be={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},ye={class:"absolute z-10 items-center left-6 top-2.5 select-none"},ve={class:"custom-control custom-checkbox"},Ue={setup(U){q();const $=W(),u=O(),_=J();M();let y=b(!1),k=b(!0);b(null),b("created_at"),b(!1);const{t:m}=G();let i=b(null),l=ue({name:"",email:"",phone:""});const h=D(()=>[{key:"status",thClass:"extra",tdClass:"font-medium text-gray-900",sortable:!1},{key:"name",label:m("users.name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"email",label:"Email"},{key:"phone",label:m("users.phone")},{key:"created_at",label:m("users.added_on")},{key:"actions",tdClass:"text-right text-sm font-medium",sortable:!1}]),C=D(()=>!u.totalUsers&&!k.value),v=D({get:()=>u.selectedUsers,set:s=>u.selectUser(s)}),w=D({get:()=>u.selectAllField,set:s=>u.setSelectAllState(s)});ie(l,()=>{x()},{deep:!0}),ce(()=>{u.fetchUsers(),u.fetchRoles()}),de(()=>{u.selectAllField&&u.selectAllUsers()});function x(){S()}function S(){i.value&&i.value.refresh()}async function X({page:s,filter:r,sort:I}){let F={display_name:l.name!==null?l.name:"",phone:l.phone!==null?l.phone:"",email:l.email!==null?l.email:"",orderByField:I.fieldName||"created_at",orderBy:I.order||"desc",page:s};k.value=!0;let c=await u.fetchUsers(F);return k.value=!1,{data:c.data.data,pagination:{totalPages:c.data.meta.last_page,currentPage:s,totalCount:c.data.meta.total,limit:10}}}function L(){l.name="",l.email="",l.phone=null}function K(){y.value&&L(),y.value=!y.value}function Q(){$.openDialog({title:m("general.are_you_sure"),message:m("users.confirm_delete",2),yesLabel:m("general.ok"),noLabel:m("general.cancel"),variant:"danger",size:"lg",hideNoButton:!1}).then(s=>{s&&u.deleteMultipleUsers().then(r=>{r.data.success&&i.value&&i.value.refresh()})})}return(s,r)=>{const I=o("BaseBreadcrumbItem"),F=o("BaseBreadcrumb"),c=o("BaseIcon"),j=o("BaseButton"),Y=o("BasePageHeader"),P=o("BaseInput"),N=o("BaseInputGroup"),Z=o("BaseFilterWrapper"),ee=o("BaseEmptyPlaceholder"),te=o("BaseDropdownItem"),ae=o("BaseDropdown"),R=o("BaseCheckbox"),se=o("router-link"),le=o("BaseTable"),ne=o("BasePage");return p(),f(ne,null,{default:t(()=>[a(Y,{title:s.$t("users.title")},{actions:t(()=>[B("div",_e,[T(a(j,{variant:"primary-outline",onClick:K},{right:t(e=>[n(y)?(p(),f(c,{key:1,name:"XIcon",class:V(e.class)},null,8,["class"])):(p(),f(c,{key:0,name:"FilterIcon",class:V(e.class)},null,8,["class"]))]),default:t(()=>[g(d(s.$t("general.filter"))+" ",1)]),_:1},512),[[z,n(u).totalUsers]]),n(_).currentUser.is_owner?(p(),f(j,{key:0,onClick:r[0]||(r[0]=e=>s.$router.push("users/create"))},{left:t(e=>[a(c,{name:"PlusIcon",class:V(e.class),"aria-hidden":"true"},null,8,["class"])]),default:t(()=>[g(" "+d(s.$t("users.add_user")),1)]),_:1})):E("",!0)])]),default:t(()=>[a(F,null,{default:t(()=>[a(I,{title:s.$t("general.home"),to:"dashboard"},null,8,["title"]),a(I,{title:s.$tc("users.title",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),a(Z,{show:n(y),class:"mt-3",onClear:L},{default:t(()=>[a(N,{label:s.$tc("users.name"),class:"flex-1 mt-2 mr-4"},{default:t(()=>[a(P,{modelValue:n(l).name,"onUpdate:modelValue":r[1]||(r[1]=e=>n(l).name=e),type:"text",name:"name",autocomplete:"off"},null,8,["modelValue"])]),_:1},8,["label"]),a(N,{label:s.$tc("users.email"),class:"flex-1 mt-2 mr-4"},{default:t(()=>[a(P,{modelValue:n(l).email,"onUpdate:modelValue":r[2]||(r[2]=e=>n(l).email=e),type:"text",name:"email",autocomplete:"off"},null,8,["modelValue"])]),_:1},8,["label"]),a(N,{class:"flex-1 mt-2",label:s.$tc("users.phone")},{default:t(()=>[a(P,{modelValue:n(l).phone,"onUpdate:modelValue":r[3]||(r[3]=e=>n(l).phone=e),type:"text",name:"phone",autocomplete:"off"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["show"]),T(a(ee,{title:s.$t("users.no_users"),description:s.$t("users.list_of_users")},{actions:t(()=>[n(_).currentUser.is_owner?(p(),f(j,{key:0,variant:"primary-outline",onClick:r[4]||(r[4]=e=>s.$router.push("/admin/users/create"))},{left:t(e=>[a(c,{name:"PlusIcon",class:V(e.class)},null,8,["class"])]),default:t(()=>[g(" "+d(s.$t("users.add_user")),1)]),_:1})):E("",!0)]),default:t(()=>[a(pe,{class:"mt-5 mb-4"})]),_:1},8,["title","description"]),[[z,n(C)]]),T(B("div",he,[B("div",ge,[n(u).selectedUsers.length?(p(),f(ae,{key:0},{activator:t(()=>[B("span",Be,[g(d(s.$t("general.actions"))+" ",1),a(c,{name:"ChevronDownIcon",class:"h-5"})])]),default:t(()=>[a(te,{onClick:Q},{default:t(()=>[a(c,{name:"TrashIcon",class:"h-5 mr-3 text-gray-600"}),g(" "+d(s.$t("general.delete")),1)]),_:1})]),_:1})):E("",!0)]),a(le,{ref:(e,A)=>{A.table=e,H(i)?i.value=e:i=e},data:X,columns:n(h),class:"mt-3"},me({header:t(()=>[B("div",ye,[a(R,{modelValue:n(w),"onUpdate:modelValue":r[5]||(r[5]=e=>H(w)?w.value=e:null),variant:"primary",onChange:n(u).selectAllUsers},null,8,["modelValue","onChange"])])]),"cell-status":t(({row:e})=>[B("div",ve,[a(R,{id:e.data.id,modelValue:n(v),"onUpdate:modelValue":r[6]||(r[6]=A=>H(v)?v.value=A:null),value:e.data.id,variant:"primary"},null,8,["id","modelValue","value"])])]),"cell-name":t(({row:e})=>[a(se,{to:{path:`users/${e.data.id}/edit`},class:"font-medium text-primary-500"},{default:t(()=>[g(d(e.data.name),1)]),_:2},1032,["to"])]),"cell-phone":t(({row:e})=>[B("span",null,d(e.data.phone?e.data.phone:"-"),1)]),"cell-created_at":t(({row:e})=>[B("span",null,d(e.data.formatted_created_at),1)]),_:2},[n(_).currentUser.is_owner?{name:"cell-actions",fn:t(({row:e})=>[a(fe,{row:e.data,table:n(i),"load-data":S},null,8,["row","table"])])}:void 0]),1032,["columns"])],512),[[z,!n(C)]])]),_:1})}}};export{Ue as default}; +import{J as G,G as oe,aN as M,ah as re,r as o,o as p,l as f,w as t,u as n,f as a,i as g,t as d,B as b,a0 as ue,k as D,C as ie,D as ce,aS as de,h as B,q as T,ag as z,m as V,j as E,V as me,x as H}from"./vendor.01d0adc5.js";import{u as O}from"./users.e0b660dd.js";import{j as W,u as q,e as J}from"./main.24f7a84b.js";import{_ as pe}from"./AstronautIcon.948728ac.js";const fe={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(U){const $=U,u=W();q();const{t:_}=G();J();const y=oe();M();const k=O();re("utils");function m(i){u.openDialog({title:_("general.are_you_sure"),message:_("users.confirm_delete",1),yesLabel:_("general.ok"),noLabel:_("general.cancel"),variant:"danger",size:"lg",hideNoButton:!1}).then(l=>{l&&k.deleteUser({ids:[i]}).then(h=>{h&&$.loadData&&$.loadData()})})}return(i,l)=>{const h=o("BaseIcon"),C=o("BaseButton"),v=o("BaseDropdownItem"),w=o("router-link"),x=o("BaseDropdown");return p(),f(x,null,{activator:t(()=>[n(y).name==="users.view"?(p(),f(C,{key:0,variant:"primary"},{default:t(()=>[a(h,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(p(),f(h,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:t(()=>[a(w,{to:`/admin/users/${U.row.id}/edit`},{default:t(()=>[a(v,null,{default:t(()=>[a(h,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),g(" "+d(i.$t("general.edit")),1)]),_:1})]),_:1},8,["to"]),a(v,{onClick:l[0]||(l[0]=S=>m(U.row.id))},{default:t(()=>[a(h,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),g(" "+d(i.$t("general.delete")),1)]),_:1})]),_:1})}}},_e={class:"flex items-center justify-end space-x-5"},he={class:"relative table-container"},ge={class:"relative flex items-center justify-end h-5 border-gray-200 border-solid"},Be={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},ye={class:"absolute z-10 items-center left-6 top-2.5 select-none"},ve={class:"custom-control custom-checkbox"},Ue={setup(U){q();const $=W(),u=O(),_=J();M();let y=b(!1),k=b(!0);b(null),b("created_at"),b(!1);const{t:m}=G();let i=b(null),l=ue({name:"",email:"",phone:""});const h=D(()=>[{key:"status",thClass:"extra",tdClass:"font-medium text-gray-900",sortable:!1},{key:"name",label:m("users.name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"email",label:"Email"},{key:"phone",label:m("users.phone")},{key:"created_at",label:m("users.added_on")},{key:"actions",tdClass:"text-right text-sm font-medium",sortable:!1}]),C=D(()=>!u.totalUsers&&!k.value),v=D({get:()=>u.selectedUsers,set:s=>u.selectUser(s)}),w=D({get:()=>u.selectAllField,set:s=>u.setSelectAllState(s)});ie(l,()=>{x()},{deep:!0}),ce(()=>{u.fetchUsers(),u.fetchRoles()}),de(()=>{u.selectAllField&&u.selectAllUsers()});function x(){S()}function S(){i.value&&i.value.refresh()}async function X({page:s,filter:r,sort:I}){let F={display_name:l.name!==null?l.name:"",phone:l.phone!==null?l.phone:"",email:l.email!==null?l.email:"",orderByField:I.fieldName||"created_at",orderBy:I.order||"desc",page:s};k.value=!0;let c=await u.fetchUsers(F);return k.value=!1,{data:c.data.data,pagination:{totalPages:c.data.meta.last_page,currentPage:s,totalCount:c.data.meta.total,limit:10}}}function L(){l.name="",l.email="",l.phone=null}function K(){y.value&&L(),y.value=!y.value}function Q(){$.openDialog({title:m("general.are_you_sure"),message:m("users.confirm_delete",2),yesLabel:m("general.ok"),noLabel:m("general.cancel"),variant:"danger",size:"lg",hideNoButton:!1}).then(s=>{s&&u.deleteMultipleUsers().then(r=>{r.data.success&&i.value&&i.value.refresh()})})}return(s,r)=>{const I=o("BaseBreadcrumbItem"),F=o("BaseBreadcrumb"),c=o("BaseIcon"),j=o("BaseButton"),Y=o("BasePageHeader"),P=o("BaseInput"),N=o("BaseInputGroup"),Z=o("BaseFilterWrapper"),ee=o("BaseEmptyPlaceholder"),te=o("BaseDropdownItem"),ae=o("BaseDropdown"),R=o("BaseCheckbox"),se=o("router-link"),le=o("BaseTable"),ne=o("BasePage");return p(),f(ne,null,{default:t(()=>[a(Y,{title:s.$t("users.title")},{actions:t(()=>[B("div",_e,[T(a(j,{variant:"primary-outline",onClick:K},{right:t(e=>[n(y)?(p(),f(c,{key:1,name:"XIcon",class:V(e.class)},null,8,["class"])):(p(),f(c,{key:0,name:"FilterIcon",class:V(e.class)},null,8,["class"]))]),default:t(()=>[g(d(s.$t("general.filter"))+" ",1)]),_:1},512),[[z,n(u).totalUsers]]),n(_).currentUser.is_owner?(p(),f(j,{key:0,onClick:r[0]||(r[0]=e=>s.$router.push("users/create"))},{left:t(e=>[a(c,{name:"PlusIcon",class:V(e.class),"aria-hidden":"true"},null,8,["class"])]),default:t(()=>[g(" "+d(s.$t("users.add_user")),1)]),_:1})):E("",!0)])]),default:t(()=>[a(F,null,{default:t(()=>[a(I,{title:s.$t("general.home"),to:"dashboard"},null,8,["title"]),a(I,{title:s.$tc("users.title",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),a(Z,{show:n(y),class:"mt-3",onClear:L},{default:t(()=>[a(N,{label:s.$tc("users.name"),class:"flex-1 mt-2 mr-4"},{default:t(()=>[a(P,{modelValue:n(l).name,"onUpdate:modelValue":r[1]||(r[1]=e=>n(l).name=e),type:"text",name:"name",autocomplete:"off"},null,8,["modelValue"])]),_:1},8,["label"]),a(N,{label:s.$tc("users.email"),class:"flex-1 mt-2 mr-4"},{default:t(()=>[a(P,{modelValue:n(l).email,"onUpdate:modelValue":r[2]||(r[2]=e=>n(l).email=e),type:"text",name:"email",autocomplete:"off"},null,8,["modelValue"])]),_:1},8,["label"]),a(N,{class:"flex-1 mt-2",label:s.$tc("users.phone")},{default:t(()=>[a(P,{modelValue:n(l).phone,"onUpdate:modelValue":r[3]||(r[3]=e=>n(l).phone=e),type:"text",name:"phone",autocomplete:"off"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["show"]),T(a(ee,{title:s.$t("users.no_users"),description:s.$t("users.list_of_users")},{actions:t(()=>[n(_).currentUser.is_owner?(p(),f(j,{key:0,variant:"primary-outline",onClick:r[4]||(r[4]=e=>s.$router.push("/admin/users/create"))},{left:t(e=>[a(c,{name:"PlusIcon",class:V(e.class)},null,8,["class"])]),default:t(()=>[g(" "+d(s.$t("users.add_user")),1)]),_:1})):E("",!0)]),default:t(()=>[a(pe,{class:"mt-5 mb-4"})]),_:1},8,["title","description"]),[[z,n(C)]]),T(B("div",he,[B("div",ge,[n(u).selectedUsers.length?(p(),f(ae,{key:0},{activator:t(()=>[B("span",Be,[g(d(s.$t("general.actions"))+" ",1),a(c,{name:"ChevronDownIcon",class:"h-5"})])]),default:t(()=>[a(te,{onClick:Q},{default:t(()=>[a(c,{name:"TrashIcon",class:"h-5 mr-3 text-gray-600"}),g(" "+d(s.$t("general.delete")),1)]),_:1})]),_:1})):E("",!0)]),a(le,{ref:(e,A)=>{A.table=e,H(i)?i.value=e:i=e},data:X,columns:n(h),class:"mt-3"},me({header:t(()=>[B("div",ye,[a(R,{modelValue:n(w),"onUpdate:modelValue":r[5]||(r[5]=e=>H(w)?w.value=e:null),variant:"primary",onChange:n(u).selectAllUsers},null,8,["modelValue","onChange"])])]),"cell-status":t(({row:e})=>[B("div",ve,[a(R,{id:e.data.id,modelValue:n(v),"onUpdate:modelValue":r[6]||(r[6]=A=>H(v)?v.value=A:null),value:e.data.id,variant:"primary"},null,8,["id","modelValue","value"])])]),"cell-name":t(({row:e})=>[a(se,{to:{path:`users/${e.data.id}/edit`},class:"font-medium text-primary-500"},{default:t(()=>[g(d(e.data.name),1)]),_:2},1032,["to"])]),"cell-phone":t(({row:e})=>[B("span",null,d(e.data.phone?e.data.phone:"-"),1)]),"cell-created_at":t(({row:e})=>[B("span",null,d(e.data.formatted_created_at),1)]),_:2},[n(_).currentUser.is_owner?{name:"cell-actions",fn:t(({row:e})=>[a(fe,{row:e.data,table:n(i),"load-data":S},null,8,["row","table"])])}:void 0]),1032,["columns"])],512),[[z,!n(C)]])]),_:1})}}};export{Ue as default}; diff --git a/public/build/assets/Index.97b641ce.js b/public/build/assets/Index.b974602b.js similarity index 94% rename from public/build/assets/Index.97b641ce.js rename to public/build/assets/Index.b974602b.js index 4be5dceea..5e436fd20 100644 --- a/public/build/assets/Index.97b641ce.js +++ b/public/build/assets/Index.b974602b.js @@ -1 +1 @@ -import{J as A,B as b,a0 as K,ah as O,G as Q,k as I,aR as Y,r as o,o as B,l as h,w as t,f as n,q as P,ag as C,u as l,m as M,i as v,t as c,j as Z,h as g,x as ee}from"./vendor.01d0adc5.js";import te from"./BaseTable.6e206ca7.js";import{_ as ae}from"./CapsuleIcon.dc769b69.js";import{x as ne,w as le}from"./main.75722495.js";import{u as oe}from"./payment.037dd620.js";import{u as se}from"./global.08b6a984.js";import"./auth.4644c288.js";const me={class:"relative table-container"},re=["innerHTML"],Be={setup(ce){const{tm:ue,t:u}=A();let i=b(!1);b("created_at");let $=b(!0),y=b(null);const s=K({payment_mode:"",payment_number:""}),D=O("utils");Q();const d=oe(),_=se(),w=I(()=>!d.totalPayments&&!$.value),H=I(()=>_.currency),N=I(()=>[{key:"payment_date",label:u("payments.date"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"payment_number",label:u("payments.payment_number")},{key:"payment_mode",label:u("payments.payment_mode")},{key:"invoice_number",label:u("invoices.invoice_number")},{key:"amount",label:u("payments.amount")},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);Y(s,()=>{R()},{debounce:500});async function T(a){return(await d.fetchPaymentModes(a,_.companySlug)).data.data}async function E({page:a,filter:r,sort:p}){let k={payment_method_id:s.payment_mode!==null?s.payment_mode:"",payment_number:s.payment_number,orderByField:p.fieldName||"created_at",orderBy:p.order||"desc",page:a};$.value=!0;let m=await d.fetchPayments(k,_.companySlug);return $.value=!1,{data:m.data.data,pagination:{totalPages:m.data.meta.last_page,currentPage:a,totalCount:m.data.meta.total,limit:10}}}function G(){y.value.refresh()}function R(){G()}function S(){s.customer="",s.payment_mode="",s.payment_number=""}function W(){i.value&&S(),i.value=!i.value}return(a,r)=>{const p=o("BaseBreadcrumbItem"),k=o("BaseBreadcrumb"),m=o("BaseIcon"),x=o("BaseButton"),z=o("BasePageHeader"),L=o("BaseInput"),V=o("BaseInputGroup"),U=o("BaseMultiselect"),q=o("BaseFilterWrapper"),J=o("BaseEmptyPlaceholder"),j=o("router-link"),X=o("BasePage");return B(),h(X,null,{default:t(()=>[n(z,{title:a.$t("payments.title")},{actions:t(()=>[P(n(x,{variant:"primary-outline",onClick:W},{right:t(e=>[l(i)?(B(),h(m,{key:1,class:M(e.class),name:"XIcon"},null,8,["class"])):(B(),h(m,{key:0,class:M(e.class),name:"FilterIcon"},null,8,["class"]))]),default:t(()=>[v(c(a.$t("general.filter"))+" ",1)]),_:1},512),[[C,l(d).totalPayments]])]),default:t(()=>[n(k,{slot:"breadcrumbs"},{default:t(()=>[n(p,{title:a.$t("general.home"),to:`/${l(_).companySlug}/customer/dashboard`},null,8,["title","to"]),n(p,{title:a.$tc("payments.payment",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),P(n(q,{onClear:S},{default:t(()=>[n(V,{label:a.$t("payments.payment_number"),class:"px-3"},{default:t(()=>[n(L,{modelValue:l(s).payment_number,"onUpdate:modelValue":r[0]||(r[0]=e=>l(s).payment_number=e),placeholder:a.$t("payments.payment_number")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),n(V,{label:a.$t("payments.payment_mode"),class:"px-3"},{default:t(()=>[n(U,{modelValue:l(s).payment_mode,"onUpdate:modelValue":r[1]||(r[1]=e=>l(s).payment_mode=e),"value-prop":"id","track-by":"name","filter-results":!1,label:"name","resolve-on-load":"",delay:100,searchable:"",options:T,placeholder:a.$t("payments.payment_mode")},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},512),[[C,l(i)]]),l(w)?(B(),h(J,{key:0,title:a.$t("payments.no_payments"),description:a.$t("payments.list_of_payments")},{default:t(()=>[n(ae,{class:"mt-5 mb-4"})]),_:1},8,["title","description"])):Z("",!0),P(g("div",me,[n(te,{ref:(e,f)=>{f.table=e,ee(y)?y.value=e:y=e},data:E,columns:l(N),"placeholder-count":l(d).totalPayments>=20?10:5,class:"mt-10"},{"cell-payment_date":t(({row:e})=>[v(c(e.data.formatted_payment_date),1)]),"cell-payment_number":t(({row:e})=>[n(j,{to:{path:`payments/${e.data.id}/view`},class:"font-medium text-primary-500"},{default:t(()=>[v(c(e.data.payment_number),1)]),_:2},1032,["to"])]),"cell-payment_mode":t(({row:e})=>[g("span",null,c(e.data.payment_method?e.data.payment_method.name:a.$t("payments.not_selected")),1)]),"cell-invoice_number":t(({row:e})=>{var f,F;return[g("span",null,c(((f=e.data.invoice)==null?void 0:f.invoice_number)?(F=e.data.invoice)==null?void 0:F.invoice_number:a.$t("payments.no_invoice")),1)]}),"cell-amount":t(({row:e})=>[g("div",{innerHTML:l(D).formatMoney(e.data.amount,l(H))},null,8,re)]),"cell-actions":t(({row:e})=>[n(ne,null,{activator:t(()=>[n(m,{name:"DotsHorizontalIcon",class:"w-5 text-gray-500"})]),default:t(()=>[n(j,{to:`payments/${e.data.id}/view`},{default:t(()=>[n(le,null,{default:t(()=>[n(m,{name:"EyeIcon",class:"h-5 mr-3 text-gray-600"}),v(" "+c(a.$t("general.view")),1)]),_:1})]),_:2},1032,["to"])]),_:2},1024)]),_:1},8,["columns","placeholder-count"])],512),[[C,!l(w)]])]),_:1})}}};export{Be as default}; +import{J as A,B as b,a0 as K,ah as O,G as Q,k as I,aR as Y,r as o,o as B,l as h,w as t,f as n,q as P,ag as C,u as l,m as M,i as v,t as c,j as Z,h as g,x as ee}from"./vendor.01d0adc5.js";import te from"./BaseTable.ab76526e.js";import{_ as ae}from"./CapsuleIcon.dc769b69.js";import{x as ne,w as le}from"./main.24f7a84b.js";import{u as oe}from"./payment.b9d460da.js";import{u as se}from"./global.ab8f317c.js";import"./auth.0e030165.js";const me={class:"relative table-container"},re=["innerHTML"],Be={setup(ce){const{tm:ue,t:u}=A();let i=b(!1);b("created_at");let $=b(!0),y=b(null);const s=K({payment_mode:"",payment_number:""}),D=O("utils");Q();const d=oe(),_=se(),w=I(()=>!d.totalPayments&&!$.value),H=I(()=>_.currency),N=I(()=>[{key:"payment_date",label:u("payments.date"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"payment_number",label:u("payments.payment_number")},{key:"payment_mode",label:u("payments.payment_mode")},{key:"invoice_number",label:u("invoices.invoice_number")},{key:"amount",label:u("payments.amount")},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);Y(s,()=>{R()},{debounce:500});async function T(a){return(await d.fetchPaymentModes(a,_.companySlug)).data.data}async function E({page:a,filter:r,sort:p}){let k={payment_method_id:s.payment_mode!==null?s.payment_mode:"",payment_number:s.payment_number,orderByField:p.fieldName||"created_at",orderBy:p.order||"desc",page:a};$.value=!0;let m=await d.fetchPayments(k,_.companySlug);return $.value=!1,{data:m.data.data,pagination:{totalPages:m.data.meta.last_page,currentPage:a,totalCount:m.data.meta.total,limit:10}}}function G(){y.value.refresh()}function R(){G()}function S(){s.customer="",s.payment_mode="",s.payment_number=""}function W(){i.value&&S(),i.value=!i.value}return(a,r)=>{const p=o("BaseBreadcrumbItem"),k=o("BaseBreadcrumb"),m=o("BaseIcon"),x=o("BaseButton"),z=o("BasePageHeader"),L=o("BaseInput"),V=o("BaseInputGroup"),U=o("BaseMultiselect"),q=o("BaseFilterWrapper"),J=o("BaseEmptyPlaceholder"),j=o("router-link"),X=o("BasePage");return B(),h(X,null,{default:t(()=>[n(z,{title:a.$t("payments.title")},{actions:t(()=>[P(n(x,{variant:"primary-outline",onClick:W},{right:t(e=>[l(i)?(B(),h(m,{key:1,class:M(e.class),name:"XIcon"},null,8,["class"])):(B(),h(m,{key:0,class:M(e.class),name:"FilterIcon"},null,8,["class"]))]),default:t(()=>[v(c(a.$t("general.filter"))+" ",1)]),_:1},512),[[C,l(d).totalPayments]])]),default:t(()=>[n(k,{slot:"breadcrumbs"},{default:t(()=>[n(p,{title:a.$t("general.home"),to:`/${l(_).companySlug}/customer/dashboard`},null,8,["title","to"]),n(p,{title:a.$tc("payments.payment",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),P(n(q,{onClear:S},{default:t(()=>[n(V,{label:a.$t("payments.payment_number"),class:"px-3"},{default:t(()=>[n(L,{modelValue:l(s).payment_number,"onUpdate:modelValue":r[0]||(r[0]=e=>l(s).payment_number=e),placeholder:a.$t("payments.payment_number")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),n(V,{label:a.$t("payments.payment_mode"),class:"px-3"},{default:t(()=>[n(U,{modelValue:l(s).payment_mode,"onUpdate:modelValue":r[1]||(r[1]=e=>l(s).payment_mode=e),"value-prop":"id","track-by":"name","filter-results":!1,label:"name","resolve-on-load":"",delay:100,searchable:"",options:T,placeholder:a.$t("payments.payment_mode")},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},512),[[C,l(i)]]),l(w)?(B(),h(J,{key:0,title:a.$t("payments.no_payments"),description:a.$t("payments.list_of_payments")},{default:t(()=>[n(ae,{class:"mt-5 mb-4"})]),_:1},8,["title","description"])):Z("",!0),P(g("div",me,[n(te,{ref:(e,f)=>{f.table=e,ee(y)?y.value=e:y=e},data:E,columns:l(N),"placeholder-count":l(d).totalPayments>=20?10:5,class:"mt-10"},{"cell-payment_date":t(({row:e})=>[v(c(e.data.formatted_payment_date),1)]),"cell-payment_number":t(({row:e})=>[n(j,{to:{path:`payments/${e.data.id}/view`},class:"font-medium text-primary-500"},{default:t(()=>[v(c(e.data.payment_number),1)]),_:2},1032,["to"])]),"cell-payment_mode":t(({row:e})=>[g("span",null,c(e.data.payment_method?e.data.payment_method.name:a.$t("payments.not_selected")),1)]),"cell-invoice_number":t(({row:e})=>{var f,F;return[g("span",null,c(((f=e.data.invoice)==null?void 0:f.invoice_number)?(F=e.data.invoice)==null?void 0:F.invoice_number:a.$t("payments.no_invoice")),1)]}),"cell-amount":t(({row:e})=>[g("div",{innerHTML:l(D).formatMoney(e.data.amount,l(H))},null,8,re)]),"cell-actions":t(({row:e})=>[n(ne,null,{activator:t(()=>[n(m,{name:"DotsHorizontalIcon",class:"w-5 text-gray-500"})]),default:t(()=>[n(j,{to:`payments/${e.data.id}/view`},{default:t(()=>[n(le,null,{default:t(()=>[n(m,{name:"EyeIcon",class:"h-5 mr-3 text-gray-600"}),v(" "+c(a.$t("general.view")),1)]),_:1})]),_:2},1032,["to"])]),_:2},1024)]),_:1},8,["columns","placeholder-count"])],512),[[C,!l(w)]])]),_:1})}}};export{Be as default}; diff --git a/public/build/assets/Index.9d0bbfbe.js b/public/build/assets/Index.bfe16422.js similarity index 98% rename from public/build/assets/Index.9d0bbfbe.js rename to public/build/assets/Index.bfe16422.js index 38f97757f..611e0640c 100644 --- a/public/build/assets/Index.9d0bbfbe.js +++ b/public/build/assets/Index.bfe16422.js @@ -1 +1 @@ -var ge=Object.defineProperty,he=Object.defineProperties;var Ce=Object.getOwnPropertyDescriptors;var G=Object.getOwnPropertySymbols;var be=Object.prototype.hasOwnProperty,xe=Object.prototype.propertyIsEnumerable;var W=(r,s,u)=>s in r?ge(r,s,{enumerable:!0,configurable:!0,writable:!0,value:u}):r[s]=u,O=(r,s)=>{for(var u in s||(s={}))be.call(s,u)&&W(r,u,s[u]);if(G)for(var u of G(s))xe.call(s,u)&&W(r,u,s[u]);return r},q=(r,s)=>he(r,Ce(s));import{o as m,e as ve,h as c,m as y,J,G as Be,aN as Ee,ah as ke,r as o,l as _,w as t,u as a,f as l,i as b,t as g,j as I,B as M,a0 as we,k as F,aR as Se,aS as De,D as Ie,q as j,ag as X,V as K,x as U}from"./vendor.01d0adc5.js";import{u as Q}from"./expense.e270a61c.js";import{u as $e}from"./category.4b37f0ed.js";import{j as Y,u as Fe,e as ee,g as v,b as Ve}from"./main.75722495.js";const Pe={width:"110",height:"110",viewBox:"0 0 110 110",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Le={props:{primaryFillColor:{type:String,default:"fill-primary-500"},secondaryFillColor:{type:String,default:"fill-gray-600"}},setup(r){return(s,u)=>(m(),ve("svg",Pe,[c("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M55 13.75C24.6245 13.75 0 22.9848 0 34.375C0 45.7652 24.6245 55 55 55C85.3755 55 110 45.7652 110 34.375C110 22.9848 85.3755 13.75 55 13.75ZM55 15.4688C86.8708 15.4688 108.281 25.245 108.281 34.375C108.281 43.505 86.8708 53.2812 55 53.2812C23.1292 53.2812 1.71875 43.505 1.71875 34.375C1.71875 25.245 23.1292 15.4688 55 15.4688Z",class:y(r.secondaryFillColor)},null,2),c("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M54.9999 1.71875C66.0842 1.71875 75.7452 7.92172 80.697 17.038L82.732 17.2081C77.6737 7.01078 67.1549 0 54.9999 0C42.7985 0 32.2454 7.06406 27.2095 17.3267L29.2479 17.1411C34.1824 7.96812 43.8745 1.71875 54.9999 1.71875Z",class:y(r.primaryFillColor)},null,2),c("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M55 96.25C40.7619 96.25 25.7812 99.3283 25.7812 103.125C25.7812 106.922 40.7619 110 55 110C69.2381 110 84.2188 106.922 84.2188 103.125C84.2188 99.3283 69.2381 96.25 55 96.25ZM55 97.9688C70.4602 97.9688 81.5959 101.317 82.4811 103.125C81.5959 104.933 70.4602 108.281 55 108.281C39.5398 108.281 28.4041 104.933 27.5189 103.125C28.4041 101.317 39.5398 97.9688 55 97.9688Z",class:y(r.primaryFillColor)},null,2),c("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M27.4756 103.328L25.8049 102.922L41.2737 39.3286L42.9443 39.7342L27.4756 103.328Z",class:y(r.primaryFillColor)},null,2),c("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M82.5247 103.328L67.0559 39.7342L68.7265 39.3286L84.1953 102.922L82.5247 103.328Z",class:y(r.primaryFillColor)},null,2),c("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M68.75 39.5312C68.75 42.3792 62.5934 44.6875 55 44.6875C47.4066 44.6875 41.25 42.3792 41.25 39.5312C41.25 36.6833 47.4066 34.375 55 34.375C62.5934 34.375 68.75 36.6833 68.75 39.5312Z",class:y(r.secondaryFillColor)},null,2)]))}},Ne={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(r){const s=r,u=Y();Fe();const{t:B}=J(),E=Q(),w=Be();Ee();const x=ee();ke("utils");function d(h){u.openDialog({title:B("general.are_you_sure"),message:B("expenses.confirm_delete",1),yesLabel:B("general.ok"),noLabel:B("general.cancel"),variant:"danger",size:"lg",hideNoButton:!1}).then(p=>{p&&E.deleteExpense({ids:[h]}).then(C=>{C&&s.loadData&&s.loadData()})})}return(h,p)=>{const C=o("BaseIcon"),S=o("BaseButton"),k=o("BaseDropdownItem"),V=o("router-link"),P=o("BaseDropdown");return m(),_(P,null,{activator:t(()=>[a(w).name==="expenses.view"?(m(),_(S,{key:0,variant:"primary"},{default:t(()=>[l(C,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(m(),_(C,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:t(()=>[a(x).hasAbilities(a(v).EDIT_EXPENSE)?(m(),_(V,{key:0,to:`/admin/expenses/${r.row.id}/edit`},{default:t(()=>[l(k,null,{default:t(()=>[l(C,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),b(" "+g(h.$t("general.edit")),1)]),_:1})]),_:1},8,["to"])):I("",!0),a(x).hasAbilities(a(v).DELETE_EXPENSE)?(m(),_(k,{key:1,onClick:p[0]||(p[0]=Z=>d(r.row.id))},{default:t(()=>[l(C,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),b(" "+g(h.$t("general.delete")),1)]),_:1})):I("",!0)]),_:1})}}},Ae=c("div",{class:"hidden w-8 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"1.5rem"}},null,-1),Te={class:"relative table-container"},Me={class:"relative flex items-center justify-end h-5"},je={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},Xe={class:"absolute items-center left-6 top-2.5 select-none"},Ue={class:"relative block"},Ze={class:"notes"},Re={class:"truncate note w-60"},qe={setup(r){Ve();const s=Q(),u=Y(),B=$e(),E=ee();let w=M(!0),x=M(null);const d=we({expense_category_id:"",from_date:"",to_date:"",customer_id:""}),{t:h}=J();let p=M(null);const C=F(()=>!s.totalExpenses&&!w.value),S=F({get:()=>s.selectedExpenses,set:n=>s.selectExpense(n)}),k=F({get:()=>s.selectAllField,set:n=>s.setSelectAllState(n)}),V=F(()=>[{key:"status",thClass:"extra w-10",tdClass:"font-medium text-gray-900",placeholderClass:"w-10",sortable:!1},{key:"expense_date",label:"Date",thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"name",label:"Category",thClass:"extra",tdClass:"cursor-pointer font-medium text-primary-500"},{key:"user_name",label:"Customer"},{key:"notes",label:"Note"},{key:"amount",label:"Amount"},{key:"actions",sortable:!1,tdClass:"text-right text-sm font-medium"}]);Se(d,()=>{te()},{debounce:500}),De(()=>{s.selectAllField&&s.selectAllExpenses()}),Ie(()=>{B.fetchCategories({limit:"all"})});async function P(n){return(await B.fetchCategories({search:n})).data.data}async function Z({page:n,filter:i,sort:D}){let N=q(O({},d),{orderByField:D.fieldName||"created_at",orderBy:D.order||"desc",page:n});w.value=!0;let f=await s.fetchExpenses(N);return w.value=!1,{data:f.data.data,pagination:{data:f.data.data,totalPages:f.data.meta.last_page,currentPage:n,totalCount:f.data.meta.total,limit:10}}}function L(){p.value&&p.value.refresh()}function te(){L()}function R(){d.expense_category_id="",d.from_date="",d.to_date="",d.customer_id=""}function ae(){x.value&&R(),x.value=!x.value}function le(){return E.hasAbilities([v.DELETE_EXPENSE,v.EDIT_EXPENSE])}function se(){u.openDialog({title:h("general.are_you_sure"),message:h("expenses.confirm_delete",2),yesLabel:h("general.ok"),noLabel:h("general.cancel"),variant:"danger",size:"lg",hideNoButton:!1}).then(n=>{n&&s.deleteMultipleExpenses().then(i=>{i.data&&L()})})}return(n,i)=>{const D=o("BaseBreadcrumbItem"),N=o("BaseBreadcrumb"),f=o("BaseIcon"),A=o("BaseButton"),ne=o("BasePageHeader"),oe=o("BaseCustomerSelectInput"),$=o("BaseInputGroup"),re=o("BaseMultiselect"),z=o("BaseDatePicker"),ie=o("BaseFilterWrapper"),de=o("BaseEmptyPlaceholder"),ue=o("BaseDropdownItem"),ce=o("BaseDropdown"),H=o("BaseCheckbox"),me=o("router-link"),pe=o("BaseFormatMoney"),fe=o("BaseText"),_e=o("BaseTable"),ye=o("BasePage");return m(),_(ye,null,{default:t(()=>[l(ne,{title:n.$t("expenses.title")},{actions:t(()=>[j(l(A,{variant:"primary-outline",onClick:ae},{right:t(e=>[a(x)?(m(),_(f,{key:1,name:"XIcon",class:y(e.class)},null,8,["class"])):(m(),_(f,{key:0,name:"FilterIcon",class:y(e.class)},null,8,["class"]))]),default:t(()=>[b(g(n.$t("general.filter"))+" ",1)]),_:1},512),[[X,a(s).totalExpenses]]),a(E).hasAbilities(a(v).CREATE_EXPENSE)?(m(),_(A,{key:0,class:"ml-4",variant:"primary",onClick:i[0]||(i[0]=e=>n.$router.push("expenses/create"))},{left:t(e=>[l(f,{name:"PlusIcon",class:y(e.class)},null,8,["class"])]),default:t(()=>[b(" "+g(n.$t("expenses.add_expense")),1)]),_:1})):I("",!0)]),default:t(()=>[l(N,null,{default:t(()=>[l(D,{title:n.$t("general.home"),to:"dashboard"},null,8,["title"]),l(D,{title:n.$tc("expenses.expense",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),l(ie,{show:a(x),class:"mt-5",onClear:R},{default:t(()=>[l($,{label:n.$t("expenses.customer")},{default:t(()=>[l(oe,{modelValue:a(d).customer_id,"onUpdate:modelValue":i[1]||(i[1]=e=>a(d).customer_id=e),placeholder:n.$t("customers.type_or_click"),"value-prop":"id",label:"name"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),l($,{label:n.$t("expenses.category")},{default:t(()=>[l(re,{modelValue:a(d).expense_category_id,"onUpdate:modelValue":i[2]||(i[2]=e=>a(d).expense_category_id=e),"value-prop":"id",label:"name","track-by":"name","filter-results":!1,"resolve-on-load":"",delay:500,options:P,searchable:"",placeholder:n.$t("expenses.categories.select_a_category")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),l($,{label:n.$t("expenses.from_date")},{default:t(()=>[l(z,{modelValue:a(d).from_date,"onUpdate:modelValue":i[3]||(i[3]=e=>a(d).from_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),Ae,l($,{label:n.$t("expenses.to_date")},{default:t(()=>[l(z,{modelValue:a(d).to_date,"onUpdate:modelValue":i[4]||(i[4]=e=>a(d).to_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["show"]),j(l(de,{title:n.$t("expenses.no_expenses"),description:n.$t("expenses.list_of_expenses")},K({default:t(()=>[l(Le,{class:"mt-5 mb-4"})]),_:2},[a(E).hasAbilities(a(v).CREATE_EXPENSE)?{name:"actions",fn:t(()=>[l(A,{variant:"primary-outline",onClick:i[5]||(i[5]=e=>n.$router.push("/admin/expenses/create"))},{left:t(e=>[l(f,{name:"PlusIcon",class:y(e.class)},null,8,["class"])]),default:t(()=>[b(" "+g(n.$t("expenses.add_new_expense")),1)]),_:1})])}:void 0]),1032,["title","description"]),[[X,a(C)]]),j(c("div",Te,[c("div",Me,[a(s).selectedExpenses.length&&a(E).hasAbilities(a(v).DELETE_EXPENSE)?(m(),_(ce,{key:0},{activator:t(()=>[c("span",je,[b(g(n.$t("general.actions"))+" ",1),l(f,{name:"ChevronDownIcon"})])]),default:t(()=>[a(E).hasAbilities(a(v).DELETE_EXPENSE)?(m(),_(ue,{key:0,onClick:se},{default:t(()=>[l(f,{name:"TrashIcon",class:"h-5 mr-3 text-gray-600"}),b(" "+g(n.$t("general.delete")),1)]),_:1})):I("",!0)]),_:1})):I("",!0)]),l(_e,{ref:(e,T)=>{T.tableComponent=e,U(p)?p.value=e:p=e},data:Z,columns:a(V),class:"mt-3"},K({header:t(()=>[c("div",Xe,[l(H,{modelValue:a(k),"onUpdate:modelValue":i[6]||(i[6]=e=>U(k)?k.value=e:null),variant:"primary",onChange:a(s).selectAllExpenses},null,8,["modelValue","onChange"])])]),"cell-status":t(({row:e})=>[c("div",Ue,[l(H,{id:e.id,modelValue:a(S),"onUpdate:modelValue":i[7]||(i[7]=T=>U(S)?S.value=T:null),value:e.data.id,variant:"primary"},null,8,["id","modelValue","value"])])]),"cell-name":t(({row:e})=>[l(me,{to:{path:`expenses/${e.data.id}/edit`},class:"font-medium text-primary-500"},{default:t(()=>[b(g(e.data.expense_category.name),1)]),_:2},1032,["to"])]),"cell-amount":t(({row:e})=>[l(pe,{amount:e.data.amount,currency:e.data.currency},null,8,["amount","currency"])]),"cell-expense_date":t(({row:e})=>[b(g(e.data.formatted_expense_date),1)]),"cell-user_name":t(({row:e})=>[l(fe,{text:e.data.customer?e.data.customer.name:"-",length:30},null,8,["text"])]),"cell-notes":t(({row:e})=>[c("div",Ze,[c("div",Re,g(e.data.notes?e.data.notes:"-"),1)])]),_:2},[le()?{name:"cell-actions",fn:t(({row:e})=>[l(Ne,{row:e.data,table:a(p),"load-data":L},null,8,["row","table"])])}:void 0]),1032,["columns"])],512),[[X,!a(C)]])]),_:1})}}};export{qe as default}; +var ge=Object.defineProperty,he=Object.defineProperties;var Ce=Object.getOwnPropertyDescriptors;var G=Object.getOwnPropertySymbols;var be=Object.prototype.hasOwnProperty,xe=Object.prototype.propertyIsEnumerable;var W=(r,s,u)=>s in r?ge(r,s,{enumerable:!0,configurable:!0,writable:!0,value:u}):r[s]=u,O=(r,s)=>{for(var u in s||(s={}))be.call(s,u)&&W(r,u,s[u]);if(G)for(var u of G(s))xe.call(s,u)&&W(r,u,s[u]);return r},q=(r,s)=>he(r,Ce(s));import{o as m,e as ve,h as c,m as y,J,G as Be,aN as Ee,ah as ke,r as o,l as _,w as t,u as a,f as l,i as b,t as g,j as I,B as M,a0 as we,k as F,aR as Se,aS as De,D as Ie,q as j,ag as X,V as K,x as U}from"./vendor.01d0adc5.js";import{u as Q}from"./expense.6f364fe1.js";import{u as $e}from"./category.5ef2a7e7.js";import{j as Y,u as Fe,e as ee,g as v,b as Ve}from"./main.24f7a84b.js";const Pe={width:"110",height:"110",viewBox:"0 0 110 110",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Le={props:{primaryFillColor:{type:String,default:"fill-primary-500"},secondaryFillColor:{type:String,default:"fill-gray-600"}},setup(r){return(s,u)=>(m(),ve("svg",Pe,[c("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M55 13.75C24.6245 13.75 0 22.9848 0 34.375C0 45.7652 24.6245 55 55 55C85.3755 55 110 45.7652 110 34.375C110 22.9848 85.3755 13.75 55 13.75ZM55 15.4688C86.8708 15.4688 108.281 25.245 108.281 34.375C108.281 43.505 86.8708 53.2812 55 53.2812C23.1292 53.2812 1.71875 43.505 1.71875 34.375C1.71875 25.245 23.1292 15.4688 55 15.4688Z",class:y(r.secondaryFillColor)},null,2),c("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M54.9999 1.71875C66.0842 1.71875 75.7452 7.92172 80.697 17.038L82.732 17.2081C77.6737 7.01078 67.1549 0 54.9999 0C42.7985 0 32.2454 7.06406 27.2095 17.3267L29.2479 17.1411C34.1824 7.96812 43.8745 1.71875 54.9999 1.71875Z",class:y(r.primaryFillColor)},null,2),c("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M55 96.25C40.7619 96.25 25.7812 99.3283 25.7812 103.125C25.7812 106.922 40.7619 110 55 110C69.2381 110 84.2188 106.922 84.2188 103.125C84.2188 99.3283 69.2381 96.25 55 96.25ZM55 97.9688C70.4602 97.9688 81.5959 101.317 82.4811 103.125C81.5959 104.933 70.4602 108.281 55 108.281C39.5398 108.281 28.4041 104.933 27.5189 103.125C28.4041 101.317 39.5398 97.9688 55 97.9688Z",class:y(r.primaryFillColor)},null,2),c("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M27.4756 103.328L25.8049 102.922L41.2737 39.3286L42.9443 39.7342L27.4756 103.328Z",class:y(r.primaryFillColor)},null,2),c("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M82.5247 103.328L67.0559 39.7342L68.7265 39.3286L84.1953 102.922L82.5247 103.328Z",class:y(r.primaryFillColor)},null,2),c("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M68.75 39.5312C68.75 42.3792 62.5934 44.6875 55 44.6875C47.4066 44.6875 41.25 42.3792 41.25 39.5312C41.25 36.6833 47.4066 34.375 55 34.375C62.5934 34.375 68.75 36.6833 68.75 39.5312Z",class:y(r.secondaryFillColor)},null,2)]))}},Ne={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(r){const s=r,u=Y();Fe();const{t:B}=J(),E=Q(),w=Be();Ee();const x=ee();ke("utils");function d(h){u.openDialog({title:B("general.are_you_sure"),message:B("expenses.confirm_delete",1),yesLabel:B("general.ok"),noLabel:B("general.cancel"),variant:"danger",size:"lg",hideNoButton:!1}).then(p=>{p&&E.deleteExpense({ids:[h]}).then(C=>{C&&s.loadData&&s.loadData()})})}return(h,p)=>{const C=o("BaseIcon"),S=o("BaseButton"),k=o("BaseDropdownItem"),V=o("router-link"),P=o("BaseDropdown");return m(),_(P,null,{activator:t(()=>[a(w).name==="expenses.view"?(m(),_(S,{key:0,variant:"primary"},{default:t(()=>[l(C,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(m(),_(C,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:t(()=>[a(x).hasAbilities(a(v).EDIT_EXPENSE)?(m(),_(V,{key:0,to:`/admin/expenses/${r.row.id}/edit`},{default:t(()=>[l(k,null,{default:t(()=>[l(C,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),b(" "+g(h.$t("general.edit")),1)]),_:1})]),_:1},8,["to"])):I("",!0),a(x).hasAbilities(a(v).DELETE_EXPENSE)?(m(),_(k,{key:1,onClick:p[0]||(p[0]=Z=>d(r.row.id))},{default:t(()=>[l(C,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),b(" "+g(h.$t("general.delete")),1)]),_:1})):I("",!0)]),_:1})}}},Ae=c("div",{class:"hidden w-8 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"1.5rem"}},null,-1),Te={class:"relative table-container"},Me={class:"relative flex items-center justify-end h-5"},je={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},Xe={class:"absolute items-center left-6 top-2.5 select-none"},Ue={class:"relative block"},Ze={class:"notes"},Re={class:"truncate note w-60"},qe={setup(r){Ve();const s=Q(),u=Y(),B=$e(),E=ee();let w=M(!0),x=M(null);const d=we({expense_category_id:"",from_date:"",to_date:"",customer_id:""}),{t:h}=J();let p=M(null);const C=F(()=>!s.totalExpenses&&!w.value),S=F({get:()=>s.selectedExpenses,set:n=>s.selectExpense(n)}),k=F({get:()=>s.selectAllField,set:n=>s.setSelectAllState(n)}),V=F(()=>[{key:"status",thClass:"extra w-10",tdClass:"font-medium text-gray-900",placeholderClass:"w-10",sortable:!1},{key:"expense_date",label:"Date",thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"name",label:"Category",thClass:"extra",tdClass:"cursor-pointer font-medium text-primary-500"},{key:"user_name",label:"Customer"},{key:"notes",label:"Note"},{key:"amount",label:"Amount"},{key:"actions",sortable:!1,tdClass:"text-right text-sm font-medium"}]);Se(d,()=>{te()},{debounce:500}),De(()=>{s.selectAllField&&s.selectAllExpenses()}),Ie(()=>{B.fetchCategories({limit:"all"})});async function P(n){return(await B.fetchCategories({search:n})).data.data}async function Z({page:n,filter:i,sort:D}){let N=q(O({},d),{orderByField:D.fieldName||"created_at",orderBy:D.order||"desc",page:n});w.value=!0;let f=await s.fetchExpenses(N);return w.value=!1,{data:f.data.data,pagination:{data:f.data.data,totalPages:f.data.meta.last_page,currentPage:n,totalCount:f.data.meta.total,limit:10}}}function L(){p.value&&p.value.refresh()}function te(){L()}function R(){d.expense_category_id="",d.from_date="",d.to_date="",d.customer_id=""}function ae(){x.value&&R(),x.value=!x.value}function le(){return E.hasAbilities([v.DELETE_EXPENSE,v.EDIT_EXPENSE])}function se(){u.openDialog({title:h("general.are_you_sure"),message:h("expenses.confirm_delete",2),yesLabel:h("general.ok"),noLabel:h("general.cancel"),variant:"danger",size:"lg",hideNoButton:!1}).then(n=>{n&&s.deleteMultipleExpenses().then(i=>{i.data&&L()})})}return(n,i)=>{const D=o("BaseBreadcrumbItem"),N=o("BaseBreadcrumb"),f=o("BaseIcon"),A=o("BaseButton"),ne=o("BasePageHeader"),oe=o("BaseCustomerSelectInput"),$=o("BaseInputGroup"),re=o("BaseMultiselect"),z=o("BaseDatePicker"),ie=o("BaseFilterWrapper"),de=o("BaseEmptyPlaceholder"),ue=o("BaseDropdownItem"),ce=o("BaseDropdown"),H=o("BaseCheckbox"),me=o("router-link"),pe=o("BaseFormatMoney"),fe=o("BaseText"),_e=o("BaseTable"),ye=o("BasePage");return m(),_(ye,null,{default:t(()=>[l(ne,{title:n.$t("expenses.title")},{actions:t(()=>[j(l(A,{variant:"primary-outline",onClick:ae},{right:t(e=>[a(x)?(m(),_(f,{key:1,name:"XIcon",class:y(e.class)},null,8,["class"])):(m(),_(f,{key:0,name:"FilterIcon",class:y(e.class)},null,8,["class"]))]),default:t(()=>[b(g(n.$t("general.filter"))+" ",1)]),_:1},512),[[X,a(s).totalExpenses]]),a(E).hasAbilities(a(v).CREATE_EXPENSE)?(m(),_(A,{key:0,class:"ml-4",variant:"primary",onClick:i[0]||(i[0]=e=>n.$router.push("expenses/create"))},{left:t(e=>[l(f,{name:"PlusIcon",class:y(e.class)},null,8,["class"])]),default:t(()=>[b(" "+g(n.$t("expenses.add_expense")),1)]),_:1})):I("",!0)]),default:t(()=>[l(N,null,{default:t(()=>[l(D,{title:n.$t("general.home"),to:"dashboard"},null,8,["title"]),l(D,{title:n.$tc("expenses.expense",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),l(ie,{show:a(x),class:"mt-5",onClear:R},{default:t(()=>[l($,{label:n.$t("expenses.customer")},{default:t(()=>[l(oe,{modelValue:a(d).customer_id,"onUpdate:modelValue":i[1]||(i[1]=e=>a(d).customer_id=e),placeholder:n.$t("customers.type_or_click"),"value-prop":"id",label:"name"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),l($,{label:n.$t("expenses.category")},{default:t(()=>[l(re,{modelValue:a(d).expense_category_id,"onUpdate:modelValue":i[2]||(i[2]=e=>a(d).expense_category_id=e),"value-prop":"id",label:"name","track-by":"name","filter-results":!1,"resolve-on-load":"",delay:500,options:P,searchable:"",placeholder:n.$t("expenses.categories.select_a_category")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),l($,{label:n.$t("expenses.from_date")},{default:t(()=>[l(z,{modelValue:a(d).from_date,"onUpdate:modelValue":i[3]||(i[3]=e=>a(d).from_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),Ae,l($,{label:n.$t("expenses.to_date")},{default:t(()=>[l(z,{modelValue:a(d).to_date,"onUpdate:modelValue":i[4]||(i[4]=e=>a(d).to_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["show"]),j(l(de,{title:n.$t("expenses.no_expenses"),description:n.$t("expenses.list_of_expenses")},K({default:t(()=>[l(Le,{class:"mt-5 mb-4"})]),_:2},[a(E).hasAbilities(a(v).CREATE_EXPENSE)?{name:"actions",fn:t(()=>[l(A,{variant:"primary-outline",onClick:i[5]||(i[5]=e=>n.$router.push("/admin/expenses/create"))},{left:t(e=>[l(f,{name:"PlusIcon",class:y(e.class)},null,8,["class"])]),default:t(()=>[b(" "+g(n.$t("expenses.add_new_expense")),1)]),_:1})])}:void 0]),1032,["title","description"]),[[X,a(C)]]),j(c("div",Te,[c("div",Me,[a(s).selectedExpenses.length&&a(E).hasAbilities(a(v).DELETE_EXPENSE)?(m(),_(ce,{key:0},{activator:t(()=>[c("span",je,[b(g(n.$t("general.actions"))+" ",1),l(f,{name:"ChevronDownIcon"})])]),default:t(()=>[a(E).hasAbilities(a(v).DELETE_EXPENSE)?(m(),_(ue,{key:0,onClick:se},{default:t(()=>[l(f,{name:"TrashIcon",class:"h-5 mr-3 text-gray-600"}),b(" "+g(n.$t("general.delete")),1)]),_:1})):I("",!0)]),_:1})):I("",!0)]),l(_e,{ref:(e,T)=>{T.tableComponent=e,U(p)?p.value=e:p=e},data:Z,columns:a(V),class:"mt-3"},K({header:t(()=>[c("div",Xe,[l(H,{modelValue:a(k),"onUpdate:modelValue":i[6]||(i[6]=e=>U(k)?k.value=e:null),variant:"primary",onChange:a(s).selectAllExpenses},null,8,["modelValue","onChange"])])]),"cell-status":t(({row:e})=>[c("div",Ue,[l(H,{id:e.id,modelValue:a(S),"onUpdate:modelValue":i[7]||(i[7]=T=>U(S)?S.value=T:null),value:e.data.id,variant:"primary"},null,8,["id","modelValue","value"])])]),"cell-name":t(({row:e})=>[l(me,{to:{path:`expenses/${e.data.id}/edit`},class:"font-medium text-primary-500"},{default:t(()=>[b(g(e.data.expense_category.name),1)]),_:2},1032,["to"])]),"cell-amount":t(({row:e})=>[l(pe,{amount:e.data.amount,currency:e.data.currency},null,8,["amount","currency"])]),"cell-expense_date":t(({row:e})=>[b(g(e.data.formatted_expense_date),1)]),"cell-user_name":t(({row:e})=>[l(fe,{text:e.data.customer?e.data.customer.name:"-",length:30},null,8,["text"])]),"cell-notes":t(({row:e})=>[c("div",Ze,[c("div",Re,g(e.data.notes?e.data.notes:"-"),1)])]),_:2},[le()?{name:"cell-actions",fn:t(({row:e})=>[l(Ne,{row:e.data,table:a(p),"load-data":L},null,8,["row","table"])])}:void 0]),1032,["columns"])],512),[[X,!a(C)]])]),_:1})}}};export{qe as default}; diff --git a/public/build/assets/Index.56add046.js b/public/build/assets/Index.cfd59198.js similarity index 97% rename from public/build/assets/Index.56add046.js rename to public/build/assets/Index.cfd59198.js index b6a0eea22..30fd06d40 100644 --- a/public/build/assets/Index.56add046.js +++ b/public/build/assets/Index.cfd59198.js @@ -1 +1 @@ -import{J as ve,ah as pe,B,aN as fe,a0 as be,k as F,aR as ge,aS as Be,r as i,o as I,l as h,w as l,f as t,q as D,ag as V,u as o,m as y,i as m,t as _,j as L,V as M,h as p,x as Ie}from"./vendor.01d0adc5.js";import{i as he,j as ye,u as ke,e as Ee,g as f}from"./main.75722495.js";import{_ as Ce}from"./MoonwalkerIcon.ab503573.js";import{_ as De}from"./InvoiceIndexDropdown.430bc329.js";import{_ as Ve}from"./SendInvoiceModal.89e6012d.js";import"./mail-driver.4ea1af6b.js";const Te=p("div",{class:"hidden w-8 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"1.5rem"}},null,-1),Ae={class:"relative table-container"},$e={class:"relative flex items-center justify-between h-10 mt-5 list-none border-b-2 border-gray-200 border-solid"},Se={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},Pe={class:"absolute items-center left-6 top-2.5 select-none"},we={class:"relative block"},Fe={class:"flex justify-between"},Me={setup(Ne){const c=he(),W=ye();ke();const{t:n}=ve();pe("$utils");const k=B(null),b=B(!1),G=B([{label:"Status",options:["DRAFT","DUE","SENT","VIEWED","OVERDUE","COMPLETED"]},{label:"Paid Status",options:["UNPAID","PAID","PARTIALLY_PAID"]},,]),T=B(!0),u=B("general.draft");fe();const E=Ee();let s=be({customer_id:"",status:"DRAFT",from_date:"",to_date:"",invoice_number:""});const N=F(()=>!c.invoiceTotalCount&&!T.value),A=F({get:()=>c.selectedInvoices,set:a=>c.selectInvoice(a)}),H=F(()=>[{key:"checkbox",thClass:"extra w-10",tdClass:"font-medium text-gray-900",placeholderClass:"w-10",sortable:!1},{key:"invoice_date",label:n("invoices.date"),thClass:"extra",tdClass:"font-medium"},{key:"invoice_number",label:n("invoices.number")},{key:"name",label:n("invoices.customer")},{key:"status",label:n("invoices.status")},{key:"due_amount",label:n("dashboard.recent_invoices_card.amount_due")},{key:"total",label:n("invoices.total"),tdClass:"font-medium text-gray-900"},{key:"actions",label:n("invoices.action"),tdClass:"text-right text-sm font-medium",thClass:"text-right",sortable:!1}]);ge(s,()=>{X()},{debounce:500}),Be(()=>{c.selectAllField&&c.selectAllInvoices()});function q(){return E.hasAbilities([f.DELETE_INVOICE,f.EDIT_INVOICE,f.VIEW_INVOICE,f.SEND_INVOICE])}async function z(a,r){s.status="",$()}function $(){k.value&&k.value.refresh()}async function Y({page:a,filter:r,sort:v}){let S={customer_id:s.customer_id,status:s.status,from_date:s.from_date,to_date:s.to_date,invoice_number:s.invoice_number,orderByField:v.fieldName||"created_at",orderBy:v.order||"desc",page:a};T.value=!0;let d=await c.fetchInvoices(S);return T.value=!1,{data:d.data.data,pagination:{totalPages:d.data.meta.last_page,currentPage:a,totalCount:d.data.meta.total,limit:10}}}function J(a){if(u.value==a.title)return!0;switch(u.value=a.title,a.title){case n("general.draft"):s.status="DRAFT";break;case n("general.sent"):s.status="SENT";break;case n("general.due"):s.status="DUE";break;default:s.status="";break}}function X(){c.$patch(a=>{a.selectedInvoices=[],a.selectAllField=!1}),$()}function U(){s.customer_id="",s.status="",s.from_date="",s.to_date="",s.invoice_number="",u.value=n("general.all")}async function K(){W.openDialog({title:n("general.are_you_sure"),message:n("invoices.confirm_delete"),yesLabel:n("general.ok"),noLabel:n("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async a=>{a&&await c.deleteMultipleInvoices().then(r=>{r.data.success&&($(),c.$patch(v=>{v.selectedInvoices=[],v.selectAllField=!1}))})})}function Q(){b.value&&U(),b.value=!b.value}function Z(a){switch(a){case"DRAFT":u.value=n("general.draft");break;case"SENT":u.value=n("general.sent");break;case"DUE":u.value=n("general.due");break;case"COMPLETED":u.value=n("invoices.completed");break;case"PAID":u.value=n("invoices.paid");break;case"UNPAID":u.value=n("invoices.unpaid");break;case"PARTIALLY_PAID":u.value=n("invoices.partially_paid");break;case"VIEWED":u.value=n("invoices.viewed");break;case"OVERDUE":u.value=n("invoices.overdue");break;default:u.value=n("general.all");break}}return(a,r)=>{const v=i("BaseBreadcrumbItem"),S=i("BaseBreadcrumb"),d=i("BaseIcon"),P=i("BaseButton"),R=i("router-link"),ee=i("BasePageHeader"),te=i("BaseCustomerSelectInput"),g=i("BaseInputGroup"),ae=i("BaseMultiselect"),O=i("BaseDatePicker"),le=i("BaseInput"),se=i("BaseFilterWrapper"),oe=i("BaseEmptyPlaceholder"),C=i("BaseTab"),ne=i("BaseTabGroup"),ie=i("BaseDropdownItem"),re=i("BaseDropdown"),j=i("BaseCheckbox"),ce=i("BaseText"),x=i("BaseFormatMoney"),ue=i("BaseInvoiceStatusBadge"),de=i("BasePaidStatusBadge"),me=i("BaseTable"),_e=i("BasePage");return I(),h(_e,null,{default:l(()=>[t(Ve),t(ee,{title:a.$t("invoices.title")},{actions:l(()=>[D(t(P,{variant:"primary-outline",onClick:Q},{right:l(e=>[b.value?(I(),h(d,{key:1,name:"XIcon",class:y(e.class)},null,8,["class"])):(I(),h(d,{key:0,name:"FilterIcon",class:y(e.class)},null,8,["class"]))]),default:l(()=>[m(_(a.$t("general.filter"))+" ",1)]),_:1},512),[[V,o(c).invoiceTotalCount]]),o(E).hasAbilities(o(f).CREATE_INVOICE)?(I(),h(R,{key:0,to:"invoices/create"},{default:l(()=>[t(P,{variant:"primary",class:"ml-4"},{left:l(e=>[t(d,{name:"PlusIcon",class:y(e.class)},null,8,["class"])]),default:l(()=>[m(" "+_(a.$t("invoices.new_invoice")),1)]),_:1})]),_:1})):L("",!0)]),default:l(()=>[t(S,null,{default:l(()=>[t(v,{title:a.$t("general.home"),to:"dashboard"},null,8,["title"]),t(v,{title:a.$tc("invoices.invoice",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),D(t(se,{"row-on-xl":!0,onClear:U},{default:l(()=>[t(g,{label:a.$tc("customers.customer",1)},{default:l(()=>[t(te,{modelValue:o(s).customer_id,"onUpdate:modelValue":r[0]||(r[0]=e=>o(s).customer_id=e),placeholder:a.$t("customers.type_or_click"),"value-prop":"id",label:"name"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(g,{label:a.$t("invoices.status")},{default:l(()=>[t(ae,{modelValue:o(s).status,"onUpdate:modelValue":[r[1]||(r[1]=e=>o(s).status=e),Z],groups:!0,options:G.value,searchable:"",placeholder:a.$t("general.select_a_status"),onRemove:r[2]||(r[2]=e=>z())},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),t(g,{label:a.$t("general.from")},{default:l(()=>[t(O,{modelValue:o(s).from_date,"onUpdate:modelValue":r[3]||(r[3]=e=>o(s).from_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),Te,t(g,{label:a.$t("general.to"),class:"mt-2"},{default:l(()=>[t(O,{modelValue:o(s).to_date,"onUpdate:modelValue":r[4]||(r[4]=e=>o(s).to_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),t(g,{label:a.$t("invoices.invoice_number")},{default:l(()=>[t(le,{modelValue:o(s).invoice_number,"onUpdate:modelValue":r[5]||(r[5]=e=>o(s).invoice_number=e)},{left:l(e=>[t(d,{name:"HashtagIcon",class:y(e.class)},null,8,["class"])]),_:1},8,["modelValue"])]),_:1},8,["label"])]),_:1},512),[[V,b.value]]),D(t(oe,{title:a.$t("invoices.no_invoices"),description:a.$t("invoices.list_of_invoices")},M({default:l(()=>[t(Ce,{class:"mt-5 mb-4"})]),_:2},[o(E).hasAbilities(o(f).CREATE_INVOICE)?{name:"actions",fn:l(()=>[t(P,{variant:"primary-outline",onClick:r[6]||(r[6]=e=>a.$router.push("/admin/invoices/create"))},{left:l(e=>[t(d,{name:"PlusIcon",class:y(e.class)},null,8,["class"])]),default:l(()=>[m(" "+_(a.$t("invoices.add_new_invoice")),1)]),_:1})])}:void 0]),1032,["title","description"]),[[V,o(N)]]),D(p("div",Ae,[p("div",$e,[t(ne,{class:"-mb-5",onChange:J},{default:l(()=>[t(C,{title:a.$t("general.draft"),filter:"DRAFT"},null,8,["title"]),t(C,{title:a.$t("general.due"),filter:"DUE"},null,8,["title"]),t(C,{title:a.$t("general.sent"),filter:"SENT"},null,8,["title"]),t(C,{title:a.$t("general.all"),filter:""},null,8,["title"])]),_:1}),o(c).selectedInvoices.length&&o(E).hasAbilities(o(f).DELETE_INVOICE)?(I(),h(re,{key:0,class:"absolute float-right"},{activator:l(()=>[p("span",Se,[m(_(a.$t("general.actions"))+" ",1),t(d,{name:"ChevronDownIcon"})])]),default:l(()=>[t(ie,{onClick:K},{default:l(()=>[t(d,{name:"TrashIcon",class:"mr-3 text-gray-600"}),m(" "+_(a.$t("general.delete")),1)]),_:1})]),_:1})):L("",!0)]),t(me,{ref:(e,w)=>{w.table=e,k.value=e},data:Y,columns:o(H),"placeholder-count":o(c).invoiceTotalCount>=20?10:5,class:"mt-10"},M({header:l(()=>[p("div",Pe,[t(j,{modelValue:o(c).selectAllField,"onUpdate:modelValue":r[7]||(r[7]=e=>o(c).selectAllField=e),variant:"primary",onChange:o(c).selectAllInvoices},null,8,["modelValue","onChange"])])]),"cell-checkbox":l(({row:e})=>[p("div",we,[t(j,{id:e.id,modelValue:o(A),"onUpdate:modelValue":r[8]||(r[8]=w=>Ie(A)?A.value=w:null),value:e.data.id},null,8,["id","modelValue","value"])])]),"cell-name":l(({row:e})=>[t(ce,{text:e.data.customer.name,length:30},null,8,["text"])]),"cell-invoice_number":l(({row:e})=>[t(R,{to:{path:`invoices/${e.data.id}/view`},class:"font-medium text-primary-500"},{default:l(()=>[m(_(e.data.invoice_number),1)]),_:2},1032,["to"])]),"cell-invoice_date":l(({row:e})=>[m(_(e.data.formatted_invoice_date),1)]),"cell-total":l(({row:e})=>[t(x,{amount:e.data.total,currency:e.data.customer.currency},null,8,["amount","currency"])]),"cell-status":l(({row:e})=>[t(ue,{status:e.data.status,class:"px-3 py-1"},{default:l(()=>[m(_(e.data.status),1)]),_:2},1032,["status"])]),"cell-due_amount":l(({row:e})=>[p("div",Fe,[t(x,{amount:e.data.due_amount,currency:e.data.currency},null,8,["amount","currency"]),t(de,{status:e.data.paid_status,class:"px-1 py-0.5 ml-2"},{default:l(()=>[m(_(e.data.paid_status),1)]),_:2},1032,["status"])])]),_:2},[q()?{name:"cell-actions",fn:l(({row:e})=>[t(De,{row:e.data,table:k.value},null,8,["row","table"])])}:void 0]),1032,["columns","placeholder-count"])],512),[[V,!o(N)]])]),_:1})}}};export{Me as default}; +import{J as ve,ah as pe,B,aN as fe,a0 as be,k as F,aR as ge,aS as Be,r as i,o as I,l as h,w as l,f as t,q as D,ag as V,u as o,m as y,i as m,t as _,j as L,V as M,h as p,x as Ie}from"./vendor.01d0adc5.js";import{i as he,j as ye,u as ke,e as Ee,g as f}from"./main.24f7a84b.js";import{_ as Ce}from"./MoonwalkerIcon.ab503573.js";import{_ as De}from"./InvoiceIndexDropdown.a18e118f.js";import{_ as Ve}from"./SendInvoiceModal.1e029d4e.js";import"./mail-driver.69202299.js";const Te=p("div",{class:"hidden w-8 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"1.5rem"}},null,-1),Ae={class:"relative table-container"},$e={class:"relative flex items-center justify-between h-10 mt-5 list-none border-b-2 border-gray-200 border-solid"},Se={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},Pe={class:"absolute items-center left-6 top-2.5 select-none"},we={class:"relative block"},Fe={class:"flex justify-between"},Me={setup(Ne){const c=he(),W=ye();ke();const{t:n}=ve();pe("$utils");const k=B(null),b=B(!1),G=B([{label:"Status",options:["DRAFT","DUE","SENT","VIEWED","OVERDUE","COMPLETED"]},{label:"Paid Status",options:["UNPAID","PAID","PARTIALLY_PAID"]},,]),T=B(!0),u=B("general.draft");fe();const E=Ee();let s=be({customer_id:"",status:"DRAFT",from_date:"",to_date:"",invoice_number:""});const N=F(()=>!c.invoiceTotalCount&&!T.value),A=F({get:()=>c.selectedInvoices,set:a=>c.selectInvoice(a)}),H=F(()=>[{key:"checkbox",thClass:"extra w-10",tdClass:"font-medium text-gray-900",placeholderClass:"w-10",sortable:!1},{key:"invoice_date",label:n("invoices.date"),thClass:"extra",tdClass:"font-medium"},{key:"invoice_number",label:n("invoices.number")},{key:"name",label:n("invoices.customer")},{key:"status",label:n("invoices.status")},{key:"due_amount",label:n("dashboard.recent_invoices_card.amount_due")},{key:"total",label:n("invoices.total"),tdClass:"font-medium text-gray-900"},{key:"actions",label:n("invoices.action"),tdClass:"text-right text-sm font-medium",thClass:"text-right",sortable:!1}]);ge(s,()=>{X()},{debounce:500}),Be(()=>{c.selectAllField&&c.selectAllInvoices()});function q(){return E.hasAbilities([f.DELETE_INVOICE,f.EDIT_INVOICE,f.VIEW_INVOICE,f.SEND_INVOICE])}async function z(a,r){s.status="",$()}function $(){k.value&&k.value.refresh()}async function Y({page:a,filter:r,sort:v}){let S={customer_id:s.customer_id,status:s.status,from_date:s.from_date,to_date:s.to_date,invoice_number:s.invoice_number,orderByField:v.fieldName||"created_at",orderBy:v.order||"desc",page:a};T.value=!0;let d=await c.fetchInvoices(S);return T.value=!1,{data:d.data.data,pagination:{totalPages:d.data.meta.last_page,currentPage:a,totalCount:d.data.meta.total,limit:10}}}function J(a){if(u.value==a.title)return!0;switch(u.value=a.title,a.title){case n("general.draft"):s.status="DRAFT";break;case n("general.sent"):s.status="SENT";break;case n("general.due"):s.status="DUE";break;default:s.status="";break}}function X(){c.$patch(a=>{a.selectedInvoices=[],a.selectAllField=!1}),$()}function U(){s.customer_id="",s.status="",s.from_date="",s.to_date="",s.invoice_number="",u.value=n("general.all")}async function K(){W.openDialog({title:n("general.are_you_sure"),message:n("invoices.confirm_delete"),yesLabel:n("general.ok"),noLabel:n("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async a=>{a&&await c.deleteMultipleInvoices().then(r=>{r.data.success&&($(),c.$patch(v=>{v.selectedInvoices=[],v.selectAllField=!1}))})})}function Q(){b.value&&U(),b.value=!b.value}function Z(a){switch(a){case"DRAFT":u.value=n("general.draft");break;case"SENT":u.value=n("general.sent");break;case"DUE":u.value=n("general.due");break;case"COMPLETED":u.value=n("invoices.completed");break;case"PAID":u.value=n("invoices.paid");break;case"UNPAID":u.value=n("invoices.unpaid");break;case"PARTIALLY_PAID":u.value=n("invoices.partially_paid");break;case"VIEWED":u.value=n("invoices.viewed");break;case"OVERDUE":u.value=n("invoices.overdue");break;default:u.value=n("general.all");break}}return(a,r)=>{const v=i("BaseBreadcrumbItem"),S=i("BaseBreadcrumb"),d=i("BaseIcon"),P=i("BaseButton"),R=i("router-link"),ee=i("BasePageHeader"),te=i("BaseCustomerSelectInput"),g=i("BaseInputGroup"),ae=i("BaseMultiselect"),O=i("BaseDatePicker"),le=i("BaseInput"),se=i("BaseFilterWrapper"),oe=i("BaseEmptyPlaceholder"),C=i("BaseTab"),ne=i("BaseTabGroup"),ie=i("BaseDropdownItem"),re=i("BaseDropdown"),j=i("BaseCheckbox"),ce=i("BaseText"),x=i("BaseFormatMoney"),ue=i("BaseInvoiceStatusBadge"),de=i("BasePaidStatusBadge"),me=i("BaseTable"),_e=i("BasePage");return I(),h(_e,null,{default:l(()=>[t(Ve),t(ee,{title:a.$t("invoices.title")},{actions:l(()=>[D(t(P,{variant:"primary-outline",onClick:Q},{right:l(e=>[b.value?(I(),h(d,{key:1,name:"XIcon",class:y(e.class)},null,8,["class"])):(I(),h(d,{key:0,name:"FilterIcon",class:y(e.class)},null,8,["class"]))]),default:l(()=>[m(_(a.$t("general.filter"))+" ",1)]),_:1},512),[[V,o(c).invoiceTotalCount]]),o(E).hasAbilities(o(f).CREATE_INVOICE)?(I(),h(R,{key:0,to:"invoices/create"},{default:l(()=>[t(P,{variant:"primary",class:"ml-4"},{left:l(e=>[t(d,{name:"PlusIcon",class:y(e.class)},null,8,["class"])]),default:l(()=>[m(" "+_(a.$t("invoices.new_invoice")),1)]),_:1})]),_:1})):L("",!0)]),default:l(()=>[t(S,null,{default:l(()=>[t(v,{title:a.$t("general.home"),to:"dashboard"},null,8,["title"]),t(v,{title:a.$tc("invoices.invoice",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),D(t(se,{"row-on-xl":!0,onClear:U},{default:l(()=>[t(g,{label:a.$tc("customers.customer",1)},{default:l(()=>[t(te,{modelValue:o(s).customer_id,"onUpdate:modelValue":r[0]||(r[0]=e=>o(s).customer_id=e),placeholder:a.$t("customers.type_or_click"),"value-prop":"id",label:"name"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(g,{label:a.$t("invoices.status")},{default:l(()=>[t(ae,{modelValue:o(s).status,"onUpdate:modelValue":[r[1]||(r[1]=e=>o(s).status=e),Z],groups:!0,options:G.value,searchable:"",placeholder:a.$t("general.select_a_status"),onRemove:r[2]||(r[2]=e=>z())},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),t(g,{label:a.$t("general.from")},{default:l(()=>[t(O,{modelValue:o(s).from_date,"onUpdate:modelValue":r[3]||(r[3]=e=>o(s).from_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),Te,t(g,{label:a.$t("general.to"),class:"mt-2"},{default:l(()=>[t(O,{modelValue:o(s).to_date,"onUpdate:modelValue":r[4]||(r[4]=e=>o(s).to_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),t(g,{label:a.$t("invoices.invoice_number")},{default:l(()=>[t(le,{modelValue:o(s).invoice_number,"onUpdate:modelValue":r[5]||(r[5]=e=>o(s).invoice_number=e)},{left:l(e=>[t(d,{name:"HashtagIcon",class:y(e.class)},null,8,["class"])]),_:1},8,["modelValue"])]),_:1},8,["label"])]),_:1},512),[[V,b.value]]),D(t(oe,{title:a.$t("invoices.no_invoices"),description:a.$t("invoices.list_of_invoices")},M({default:l(()=>[t(Ce,{class:"mt-5 mb-4"})]),_:2},[o(E).hasAbilities(o(f).CREATE_INVOICE)?{name:"actions",fn:l(()=>[t(P,{variant:"primary-outline",onClick:r[6]||(r[6]=e=>a.$router.push("/admin/invoices/create"))},{left:l(e=>[t(d,{name:"PlusIcon",class:y(e.class)},null,8,["class"])]),default:l(()=>[m(" "+_(a.$t("invoices.add_new_invoice")),1)]),_:1})])}:void 0]),1032,["title","description"]),[[V,o(N)]]),D(p("div",Ae,[p("div",$e,[t(ne,{class:"-mb-5",onChange:J},{default:l(()=>[t(C,{title:a.$t("general.draft"),filter:"DRAFT"},null,8,["title"]),t(C,{title:a.$t("general.due"),filter:"DUE"},null,8,["title"]),t(C,{title:a.$t("general.sent"),filter:"SENT"},null,8,["title"]),t(C,{title:a.$t("general.all"),filter:""},null,8,["title"])]),_:1}),o(c).selectedInvoices.length&&o(E).hasAbilities(o(f).DELETE_INVOICE)?(I(),h(re,{key:0,class:"absolute float-right"},{activator:l(()=>[p("span",Se,[m(_(a.$t("general.actions"))+" ",1),t(d,{name:"ChevronDownIcon"})])]),default:l(()=>[t(ie,{onClick:K},{default:l(()=>[t(d,{name:"TrashIcon",class:"mr-3 text-gray-600"}),m(" "+_(a.$t("general.delete")),1)]),_:1})]),_:1})):L("",!0)]),t(me,{ref:(e,w)=>{w.table=e,k.value=e},data:Y,columns:o(H),"placeholder-count":o(c).invoiceTotalCount>=20?10:5,class:"mt-10"},M({header:l(()=>[p("div",Pe,[t(j,{modelValue:o(c).selectAllField,"onUpdate:modelValue":r[7]||(r[7]=e=>o(c).selectAllField=e),variant:"primary",onChange:o(c).selectAllInvoices},null,8,["modelValue","onChange"])])]),"cell-checkbox":l(({row:e})=>[p("div",we,[t(j,{id:e.id,modelValue:o(A),"onUpdate:modelValue":r[8]||(r[8]=w=>Ie(A)?A.value=w:null),value:e.data.id},null,8,["id","modelValue","value"])])]),"cell-name":l(({row:e})=>[t(ce,{text:e.data.customer.name,length:30},null,8,["text"])]),"cell-invoice_number":l(({row:e})=>[t(R,{to:{path:`invoices/${e.data.id}/view`},class:"font-medium text-primary-500"},{default:l(()=>[m(_(e.data.invoice_number),1)]),_:2},1032,["to"])]),"cell-invoice_date":l(({row:e})=>[m(_(e.data.formatted_invoice_date),1)]),"cell-total":l(({row:e})=>[t(x,{amount:e.data.total,currency:e.data.customer.currency},null,8,["amount","currency"])]),"cell-status":l(({row:e})=>[t(ue,{status:e.data.status,class:"px-3 py-1"},{default:l(()=>[m(_(e.data.status),1)]),_:2},1032,["status"])]),"cell-due_amount":l(({row:e})=>[p("div",Fe,[t(x,{amount:e.data.due_amount,currency:e.data.currency},null,8,["amount","currency"]),t(de,{status:e.data.paid_status,class:"px-1 py-0.5 ml-2"},{default:l(()=>[m(_(e.data.paid_status),1)]),_:2},1032,["status"])])]),_:2},[q()?{name:"cell-actions",fn:l(({row:e})=>[t(De,{row:e.data,table:k.value},null,8,["row","table"])])}:void 0]),1032,["columns","placeholder-count"])],512),[[V,!o(N)]])]),_:1})}}};export{Me as default}; diff --git a/public/build/assets/Index.83e96e3c.js b/public/build/assets/Index.d28beda3.js similarity index 87% rename from public/build/assets/Index.83e96e3c.js rename to public/build/assets/Index.d28beda3.js index 3831b75d5..d63a592d8 100644 --- a/public/build/assets/Index.83e96e3c.js +++ b/public/build/assets/Index.d28beda3.js @@ -1 +1 @@ -import{B as g,J as le,a0 as oe,k as b,aR as ne,aS as re,I as ue,r as n,o as p,l as _,w as t,f as a,h as i,q as F,ag as A,u as l,m as v,i as B,t as d,j as U,V as ce,x as M}from"./vendor.01d0adc5.js";import{b as me,j as ie,l as de,e as pe,g as C}from"./main.75722495.js";import{_ as _e}from"./CustomerIndexDropdown.3adf4218.js";import{_ as fe}from"./AstronautIcon.948728ac.js";const he={class:"flex items-center justify-end space-x-5"},ye={class:"relative table-container"},Be={class:"relative flex items-center justify-end h-5"},Ce={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},ge={class:"absolute z-10 items-center left-6 top-2.5 select-none"},be={class:"relative block"},Se={setup(ve){me();const W=ie(),u=de(),k=pe();let f=g(null),h=g(!1),x=g(!0);const{t:m}=le();let r=oe({display_name:"",contact_name:"",phone:""});const P=b(()=>!u.totalCustomers&&!x.value),I=b({get:()=>u.selectedCustomers,set:s=>u.selectCustomer(s)}),V=b({get:()=>u.selectAllField,set:s=>u.setSelectAllState(s)}),Y=b(()=>[{key:"status",thClass:"extra w-10 pr-0",sortable:!1,tdClass:"font-medium text-gray-900 pr-0"},{key:"name",label:m("customers.name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"phone",label:m("customers.phone")},{key:"due_amount",label:m("customers.amount_due")},{key:"created_at",label:m("items.added_on")},{key:"actions",tdClass:"text-right text-sm font-medium pl-0",thClass:"pl-0",sortable:!1}]);ne(r,()=>{z()},{debounce:500}),re(()=>{u.selectAllField&&u.selectAllCustomers()});function S(){f.value.refresh()}function z(){S()}function L(){return k.hasAbilities([C.DELETE_CUSTOMER,C.EDIT_CUSTOMER,C.VIEW_CUSTOMER])}async function G({page:s,filter:o,sort:y}){let $={display_name:r.display_name,contact_name:r.contact_name,phone:r.phone,orderByField:y.fieldName||"created_at",orderBy:y.order||"desc",page:s};x.value=!0;let c=await u.fetchCustomers($);return x.value=!1,{data:c.data.data,pagination:{totalPages:c.data.meta.last_page,currentPage:s,totalCount:c.data.meta.total,limit:10}}}function R(){r.display_name="",r.contact_name="",r.phone=""}function H(){h.value&&R(),h.value=!h.value}let j=g(new Date);j.value=ue(j).format("YYYY-MM-DD");function q(){W.openDialog({title:m("general.are_you_sure"),message:m("customers.confirm_delete",2),yesLabel:m("general.ok"),noLabel:m("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(s=>{s&&u.deleteMultipleCustomers().then(o=>{o.data&&S()})})}return(s,o)=>{const y=n("BaseBreadcrumbItem"),$=n("BaseBreadcrumb"),c=n("BaseIcon"),D=n("BaseButton"),J=n("BasePageHeader"),E=n("BaseInput"),w=n("BaseInputGroup"),X=n("BaseFilterWrapper"),K=n("BaseEmptyPlaceholder"),Q=n("BaseDropdownItem"),Z=n("BaseDropdown"),N=n("BaseCheckbox"),O=n("BaseText"),ee=n("router-link"),te=n("BaseFormatMoney"),ae=n("BaseTable"),se=n("BasePage");return p(),_(se,null,{default:t(()=>[a(J,{title:s.$t("customers.title")},{actions:t(()=>[i("div",he,[F(a(D,{variant:"primary-outline",onClick:H},{right:t(e=>[l(h)?(p(),_(c,{key:1,name:"XIcon",class:v(e.class)},null,8,["class"])):(p(),_(c,{key:0,name:"FilterIcon",class:v(e.class)},null,8,["class"]))]),default:t(()=>[B(d(s.$t("general.filter"))+" ",1)]),_:1},512),[[A,l(u).totalCustomers]]),l(k).hasAbilities(l(C).CREATE_CUSTOMER)?(p(),_(D,{key:0,onClick:o[0]||(o[0]=e=>s.$router.push("customers/create"))},{left:t(e=>[a(c,{name:"PlusIcon",class:v(e.class)},null,8,["class"])]),default:t(()=>[B(" "+d(s.$t("customers.new_customer")),1)]),_:1})):U("",!0)])]),default:t(()=>[a($,null,{default:t(()=>[a(y,{title:s.$t("general.home"),to:"dashboard"},null,8,["title"]),a(y,{title:s.$tc("customers.customer",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),a(X,{show:l(h),class:"mt-5",onClear:R},{default:t(()=>[a(w,{label:s.$t("customers.display_name"),class:"text-left"},{default:t(()=>[a(E,{modelValue:l(r).display_name,"onUpdate:modelValue":o[1]||(o[1]=e=>l(r).display_name=e),type:"text",name:"name",autocomplete:"off"},null,8,["modelValue"])]),_:1},8,["label"]),a(w,{label:s.$t("customers.contact_name"),class:"text-left"},{default:t(()=>[a(E,{modelValue:l(r).contact_name,"onUpdate:modelValue":o[2]||(o[2]=e=>l(r).contact_name=e),type:"text",name:"address_name",autocomplete:"off"},null,8,["modelValue"])]),_:1},8,["label"]),a(w,{label:s.$t("customers.phone"),class:"text-left"},{default:t(()=>[a(E,{modelValue:l(r).phone,"onUpdate:modelValue":o[3]||(o[3]=e=>l(r).phone=e),type:"text",name:"phone",autocomplete:"off"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["show"]),F(a(K,{title:s.$t("customers.no_customers"),description:s.$t("customers.list_of_customers")},{actions:t(()=>[l(k).hasAbilities(l(C).CREATE_CUSTOMER)?(p(),_(D,{key:0,variant:"primary-outline",onClick:o[4]||(o[4]=e=>s.$router.push("/admin/customers/create"))},{left:t(e=>[a(c,{name:"PlusIcon",class:v(e.class)},null,8,["class"])]),default:t(()=>[B(" "+d(s.$t("customers.add_new_customer")),1)]),_:1})):U("",!0)]),default:t(()=>[a(fe,{class:"mt-5 mb-4"})]),_:1},8,["title","description"]),[[A,l(P)]]),F(i("div",ye,[i("div",Be,[l(u).selectedCustomers.length?(p(),_(Z,{key:0},{activator:t(()=>[i("span",Ce,[B(d(s.$t("general.actions"))+" ",1),a(c,{name:"ChevronDownIcon"})])]),default:t(()=>[a(Q,{onClick:q},{default:t(()=>[a(c,{name:"TrashIcon",class:"mr-3 text-gray-600"}),B(" "+d(s.$t("general.delete")),1)]),_:1})]),_:1})):U("",!0)]),a(ae,{ref:(e,T)=>{T.tableComponent=e,M(f)?f.value=e:f=e},class:"mt-3",data:G,columns:l(Y)},ce({header:t(()=>[i("div",ge,[a(N,{modelValue:l(V),"onUpdate:modelValue":o[5]||(o[5]=e=>M(V)?V.value=e:null),variant:"primary",onChange:l(u).selectAllCustomers},null,8,["modelValue","onChange"])])]),"cell-status":t(({row:e})=>[i("div",be,[a(N,{id:e.data.id,modelValue:l(I),"onUpdate:modelValue":o[6]||(o[6]=T=>M(I)?I.value=T:null),value:e.data.id,variant:"primary"},null,8,["id","modelValue","value"])])]),"cell-name":t(({row:e})=>[a(ee,{to:{path:`customers/${e.data.id}/view`}},{default:t(()=>[a(O,{text:e.data.name,length:30,tag:"span",class:"font-medium text-primary-500 flex flex-col"},null,8,["text"]),a(O,{text:e.data.contact_name?e.data.contact_name:"",length:30,tag:"span",class:"text-xs text-gray-400"},null,8,["text"])]),_:2},1032,["to"])]),"cell-phone":t(({row:e})=>[i("span",null,d(e.data.phone?e.data.phone:"-"),1)]),"cell-due_amount":t(({row:e})=>[a(te,{amount:e.data.due_amount||0,currency:e.data.currency},null,8,["amount","currency"])]),"cell-created_at":t(({row:e})=>[i("span",null,d(e.data.formatted_created_at),1)]),_:2},[L()?{name:"cell-actions",fn:t(({row:e})=>[a(_e,{row:e.data,table:l(f),"load-data":S},null,8,["row","table"])])}:void 0]),1032,["columns"])],512),[[A,!l(P)]])]),_:1})}}};export{Se as default}; +import{B as b,J as le,a0 as oe,k as g,aR as ne,aS as re,I as ue,r as n,o as p,l as _,w as t,f as a,h as i,q as F,ag as A,u as l,m as v,i as B,t as d,j as U,V as ce,x as M}from"./vendor.01d0adc5.js";import{b as me,j as ie,l as de,e as pe,g as C}from"./main.24f7a84b.js";import{_ as _e}from"./CustomerIndexDropdown.34ba7779.js";import{_ as fe}from"./AstronautIcon.948728ac.js";const he={class:"flex items-center justify-end space-x-5"},ye={class:"relative table-container"},Be={class:"relative flex items-center justify-end h-5"},Ce={class:"flex text-sm font-medium cursor-pointer select-none text-primary-400"},be={class:"absolute z-10 items-center left-6 top-2.5 select-none"},ge={class:"relative block"},Se={setup(ve){me();const W=ie(),u=de(),k=pe();let f=b(null),h=b(!1),x=b(!0);const{t:m}=le();let r=oe({display_name:"",contact_name:"",phone:""});const P=g(()=>!u.totalCustomers&&!x.value),I=g({get:()=>u.selectedCustomers,set:s=>u.selectCustomer(s)}),V=g({get:()=>u.selectAllField,set:s=>u.setSelectAllState(s)}),Y=g(()=>[{key:"status",thClass:"extra w-10 pr-0",sortable:!1,tdClass:"font-medium text-gray-900 pr-0"},{key:"name",label:m("customers.name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"phone",label:m("customers.phone")},{key:"due_amount",label:m("customers.amount_due")},{key:"created_at",label:m("items.added_on")},{key:"actions",tdClass:"text-right text-sm font-medium pl-0",thClass:"pl-0",sortable:!1}]);ne(r,()=>{z()},{debounce:500}),re(()=>{u.selectAllField&&u.selectAllCustomers()});function S(){f.value.refresh()}function z(){S()}function L(){return k.hasAbilities([C.DELETE_CUSTOMER,C.EDIT_CUSTOMER,C.VIEW_CUSTOMER])}async function G({page:s,filter:o,sort:y}){let $={display_name:r.display_name,contact_name:r.contact_name,phone:r.phone,orderByField:y.fieldName||"created_at",orderBy:y.order||"desc",page:s};x.value=!0;let c=await u.fetchCustomers($);return x.value=!1,{data:c.data.data,pagination:{totalPages:c.data.meta.last_page,currentPage:s,totalCount:c.data.meta.total,limit:10}}}function R(){r.display_name="",r.contact_name="",r.phone=""}function H(){h.value&&R(),h.value=!h.value}let j=b(new Date);j.value=ue(j).format("YYYY-MM-DD");function q(){W.openDialog({title:m("general.are_you_sure"),message:m("customers.confirm_delete",2),yesLabel:m("general.ok"),noLabel:m("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(s=>{s&&u.deleteMultipleCustomers().then(o=>{o.data&&S()})})}return(s,o)=>{const y=n("BaseBreadcrumbItem"),$=n("BaseBreadcrumb"),c=n("BaseIcon"),D=n("BaseButton"),J=n("BasePageHeader"),E=n("BaseInput"),w=n("BaseInputGroup"),X=n("BaseFilterWrapper"),K=n("BaseEmptyPlaceholder"),Q=n("BaseDropdownItem"),Z=n("BaseDropdown"),N=n("BaseCheckbox"),O=n("BaseText"),ee=n("router-link"),te=n("BaseFormatMoney"),ae=n("BaseTable"),se=n("BasePage");return p(),_(se,null,{default:t(()=>[a(J,{title:s.$t("customers.title")},{actions:t(()=>[i("div",he,[F(a(D,{variant:"primary-outline",onClick:H},{right:t(e=>[l(h)?(p(),_(c,{key:1,name:"XIcon",class:v(e.class)},null,8,["class"])):(p(),_(c,{key:0,name:"FilterIcon",class:v(e.class)},null,8,["class"]))]),default:t(()=>[B(d(s.$t("general.filter"))+" ",1)]),_:1},512),[[A,l(u).totalCustomers]]),l(k).hasAbilities(l(C).CREATE_CUSTOMER)?(p(),_(D,{key:0,onClick:o[0]||(o[0]=e=>s.$router.push("customers/create"))},{left:t(e=>[a(c,{name:"PlusIcon",class:v(e.class)},null,8,["class"])]),default:t(()=>[B(" "+d(s.$t("customers.new_customer")),1)]),_:1})):U("",!0)])]),default:t(()=>[a($,null,{default:t(()=>[a(y,{title:s.$t("general.home"),to:"dashboard"},null,8,["title"]),a(y,{title:s.$tc("customers.customer",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),a(X,{show:l(h),class:"mt-5",onClear:R},{default:t(()=>[a(w,{label:s.$t("customers.display_name"),class:"text-left"},{default:t(()=>[a(E,{modelValue:l(r).display_name,"onUpdate:modelValue":o[1]||(o[1]=e=>l(r).display_name=e),type:"text",name:"name",autocomplete:"off"},null,8,["modelValue"])]),_:1},8,["label"]),a(w,{label:s.$t("customers.contact_name"),class:"text-left"},{default:t(()=>[a(E,{modelValue:l(r).contact_name,"onUpdate:modelValue":o[2]||(o[2]=e=>l(r).contact_name=e),type:"text",name:"address_name",autocomplete:"off"},null,8,["modelValue"])]),_:1},8,["label"]),a(w,{label:s.$t("customers.phone"),class:"text-left"},{default:t(()=>[a(E,{modelValue:l(r).phone,"onUpdate:modelValue":o[3]||(o[3]=e=>l(r).phone=e),type:"text",name:"phone",autocomplete:"off"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["show"]),F(a(K,{title:s.$t("customers.no_customers"),description:s.$t("customers.list_of_customers")},{actions:t(()=>[l(k).hasAbilities(l(C).CREATE_CUSTOMER)?(p(),_(D,{key:0,variant:"primary-outline",onClick:o[4]||(o[4]=e=>s.$router.push("/admin/customers/create"))},{left:t(e=>[a(c,{name:"PlusIcon",class:v(e.class)},null,8,["class"])]),default:t(()=>[B(" "+d(s.$t("customers.add_new_customer")),1)]),_:1})):U("",!0)]),default:t(()=>[a(fe,{class:"mt-5 mb-4"})]),_:1},8,["title","description"]),[[A,l(P)]]),F(i("div",ye,[i("div",Be,[l(u).selectedCustomers.length?(p(),_(Z,{key:0},{activator:t(()=>[i("span",Ce,[B(d(s.$t("general.actions"))+" ",1),a(c,{name:"ChevronDownIcon"})])]),default:t(()=>[a(Q,{onClick:q},{default:t(()=>[a(c,{name:"TrashIcon",class:"mr-3 text-gray-600"}),B(" "+d(s.$t("general.delete")),1)]),_:1})]),_:1})):U("",!0)]),a(ae,{ref:(e,T)=>{T.tableComponent=e,M(f)?f.value=e:f=e},class:"mt-3",data:G,columns:l(Y)},ce({header:t(()=>[i("div",be,[a(N,{modelValue:l(V),"onUpdate:modelValue":o[5]||(o[5]=e=>M(V)?V.value=e:null),variant:"primary",onChange:l(u).selectAllCustomers},null,8,["modelValue","onChange"])])]),"cell-status":t(({row:e})=>[i("div",ge,[a(N,{id:e.data.id,modelValue:l(I),"onUpdate:modelValue":o[6]||(o[6]=T=>M(I)?I.value=T:null),value:e.data.id,variant:"primary"},null,8,["id","modelValue","value"])])]),"cell-name":t(({row:e})=>[a(ee,{to:{path:`customers/${e.data.id}/view`}},{default:t(()=>[a(O,{text:e.data.name,length:30,tag:"span",class:"font-medium text-primary-500 flex flex-col"},null,8,["text"]),a(O,{text:e.data.contact_name?e.data.contact_name:"",length:30,tag:"span",class:"text-xs text-gray-400"},null,8,["text"])]),_:2},1032,["to"])]),"cell-phone":t(({row:e})=>[i("span",null,d(e.data.phone?e.data.phone:"-"),1)]),"cell-due_amount":t(({row:e})=>[a(te,{amount:e.data.due_amount||0,currency:e.data.currency},null,8,["amount","currency"])]),"cell-created_at":t(({row:e})=>[i("span",null,d(e.data.formatted_created_at),1)]),_:2},[L()?{name:"cell-actions",fn:t(({row:e})=>[a(_e,{row:e.data,table:l(f),"load-data":S},null,8,["row","table"])])}:void 0]),1032,["columns"])],512),[[A,!l(P)]])]),_:1})}}};export{Se as default}; diff --git a/public/build/assets/Index.de1759af.js b/public/build/assets/Index.e5c8e723.js similarity index 87% rename from public/build/assets/Index.de1759af.js rename to public/build/assets/Index.e5c8e723.js index ccf39d9c4..4dba3d3bc 100644 --- a/public/build/assets/Index.de1759af.js +++ b/public/build/assets/Index.e5c8e723.js @@ -1 +1 @@ -import{J as I,k as v,r as l,o as n,e as i,t as c,j as y,h as t,f as e,u as r,l as $,w as u,B as k,L as j,M as J,N as O,T as K,F as Q,y as W,U as X,m as Y,i as P}from"./vendor.01d0adc5.js";import{_ as Z,r as ee,d as te}from"./main.75722495.js";const se={key:0,class:"absolute mt-5 px-6 w-full flex justify-end"},ae={key:0,class:"bg-white bg-opacity-75 text-xs px-3 py-1 font-semibold tracking-wide rounded"},ne={key:1,class:"ml-2 bg-white bg-opacity-75 text-xs px-3 py-1 font-semibold tracking-wide rounded"},oe={key:0},le={key:1},re=["src"],ie={class:"px-6 py-5 flex flex-col bg-gray-50 flex-1 justify-between"},de={class:"text-lg sm:text-2xl font-medium whitespace-nowrap truncate text-primary-500"},ce={key:0,class:"flex items-center mt-2"},ue=["src"],me=t("span",null,"by",-1),_e={class:"ml-2 text-base font-semibold truncate"},he={class:"flex justify-between mt-4 flex-col space-y-2 sm:space-y-0 sm:flex-row"},pe={class:"text-xl md:text-2xl font-semibold whitespace-nowrap text-primary-500"},fe={props:{data:{type:Object,default:null,required:!0}},setup(a){const o=a;I();let m=v(()=>parseInt(o.data.average_rating));return(d,_)=>{const h=l("base-text"),g=l("BaseRating");return n(),i("div",{class:"relative shadow-md border-2 border-gray-200 border-opacity-60 rounded-lg cursor-pointer overflow-hidden h-100",onClick:_[0]||(_[0]=w=>d.$router.push(`/admin/modules/${a.data.slug}`))},[a.data.purchased?(n(),i("div",se,[a.data.purchased?(n(),i("label",ae,c(d.$t("modules.purchased")),1)):y("",!0),a.data.installed?(n(),i("label",ne,[a.data.update_available?(n(),i("span",oe,c(d.$t("modules.update_available")),1)):(n(),i("span",le,c(d.$t("modules.installed")),1))])):y("",!0)])):y("",!0),t("img",{class:"lg:h-64 md:h-48 w-full object-cover object-center",src:a.data.cover,alt:"cover"},null,8,re),t("div",ie,[t("span",de,c(a.data.name),1),a.data.author_avatar?(n(),i("div",ce,[t("img",{class:"hidden h-10 w-10 rounded-full sm:inline-block mr-2",src:a.data.author_avatar?a.data.author_avatar:"http://localhost:3000/img/default-avatar.jpg",alt:""},null,8,ue),me,t("span",_e,c(a.data.author_name),1)])):y("",!0),e(h,{text:a.data.short_description,class:"pt-4 text-gray-500 h-16 line-clamp-2",length:110},null,8,["text"]),t("div",he,[t("div",null,[e(g,{rating:r(m)},null,8,["rating"])]),t("div",pe," $ "+c(a.data.monthly_price?a.data.monthly_price/100:a.data.yearly_price/100),1)])])])}}},ge={},ve={class:"shadow-md border-2 border-gray-200 border-opacity-60 rounded-lg cursor-pointer overflow-hidden h-100"},be={class:"px-6 py-5 flex flex-col bg-gray-50 flex-1 justify-between"},ye={class:"flex items-center mt-2"},xe={class:"flex justify-between mt-4 flex-col space-y-2 sm:space-y-0 sm:flex-row"};function $e(a,o){const m=l("BaseContentPlaceholdersBox"),d=l("BaseContentPlaceholdersText"),_=l("BaseContentPlaceholders");return n(),$(_,null,{default:u(()=>[t("div",ve,[e(m,{class:"h-48 lg:h-64 md:h-48 w-full",rounded:""}),t("div",be,[e(d,{class:"w-32 h-8",lines:1,rounded:""}),t("div",ye,[e(m,{class:"h-10 w-10 rounded-full sm:inline-block mr-2"}),t("div",null,[e(d,{class:"w-32 h-8 ml-2",lines:1,rounded:""})])]),e(d,{class:"pt-4 w-full h-16",lines:1,rounded:""}),t("div",xe,[e(d,{class:"w-32 h-8",lines:1,rounded:""}),e(d,{class:"w-32 h-8",lines:1,rounded:""})])])])]),_:1})}var B=Z(ge,[["render",$e]]);const ke={key:0},Be={key:0,class:"grid mt-6 w-full grid-cols-1 items-start gap-6 lg:grid-cols-2 xl:grid-cols-3"},we={key:1},Te={key:0,class:"grid mt-6 w-full grid-cols-1 items-start gap-6 lg:grid-cols-2 xl:grid-cols-3"},Ce={key:1,class:"mt-24"},Se={class:"flex items-center justify-center text-gray-500"},Ie={class:"text-gray-900 text-lg font-medium"},je={class:"mt-1 text-sm text-gray-500"},Pe={class:"grid lg:grid-cols-2 mt-6"},Me=["onSubmit"],Le={class:"flex space-x-2"},Ue=["href"],Ve=P(" Sign up & Get Token "),Ae={setup(a){const o=ee(),m=te(),d=k(""),{t:_}=I();let h=k(!1),g=k(!1);const w=v(()=>({api_token:{required:j.withMessage(_("validation.required"),J),minLength:j.withMessage(_("validation.name_min_length",{count:3}),O(3))}})),M=v(()=>o.apiToken?(L(),!0):!1),p=K(w,v(()=>o.currentUser)),x=v(()=>d.value==="INSTALLED"?o.modules.filter(s=>s.installed):o.modules);async function L(){g.value=!0,await o.fetchModules().then(()=>{g.value=!1})}async function U(){if(p.value.$touch(),p.value.$invalid)return!0;h.value=!0,o.checkApiToken(o.currentUser.api_token).then(s=>{if(s.data.success){V();return}h.value=!1})}async function V(){try{await m.updateGlobalSettings({data:{settings:{api_token:o.currentUser.api_token}},message:"settings.preferences.updated_message"}).then(s=>{if(s.data.success){o.apiToken=o.currentUser.api_token;return}}),h.value=!1}catch(s){h.value=!1,console.error(s);return}}function G(s){d.value=s.filter}return(s,b)=>{const T=l("BaseBreadcrumbItem"),N=l("BaseBreadcrumb"),A=l("BasePageHeader"),C=l("BaseTab"),q=l("BaseTabGroup"),D=l("BaseInput"),F=l("BaseInputGroup"),E=l("BaseIcon"),S=l("BaseButton"),R=l("BaseCard"),H=l("BasePage");return n(),$(H,null,{default:u(()=>[e(A,{title:s.$t("modules.title")},{default:u(()=>[e(N,null,{default:u(()=>[e(T,{title:s.$t("general.home"),to:"dashboard"},null,8,["title"]),e(T,{title:s.$tc("modules.module",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),r(M)&&r(o).modules?(n(),i("div",ke,[e(q,{class:"-mb-5",onChange:G},{default:u(()=>[e(C,{title:s.$t("general.all"),filter:""},null,8,["title"]),e(C,{title:s.$t("modules.installed"),filter:"INSTALLED"},null,8,["title"])]),_:1}),r(g)?(n(),i("div",Be,[e(B),e(B),e(B)])):(n(),i("div",we,[r(x)&&r(x).length?(n(),i("div",Te,[(n(!0),i(Q,null,W(r(x),(f,z)=>(n(),i("div",{key:z},[e(fe,{data:f},null,8,["data"])]))),128))])):(n(),i("div",Ce,[t("label",Se,c(s.$t("modules.no_modules_installed")),1)]))]))])):(n(),$(R,{key:1,class:"mt-6"},{default:u(()=>[t("h6",Ie,c(s.$t("modules.connect_installation")),1),t("p",je,c(s.$t("modules.api_token_description",{url:r(m).config.base_url.replace(/^http:\/\//,"")})),1),t("div",Pe,[t("form",{action:"",class:"mt-6",onSubmit:X(U,["prevent"])},[e(F,{label:s.$t("modules.api_token"),required:"",error:r(p).api_token.$error&&r(p).api_token.$errors[0].$message},{default:u(()=>[e(D,{modelValue:r(o).currentUser.api_token,"onUpdate:modelValue":b[0]||(b[0]=f=>r(o).currentUser.api_token=f),invalid:r(p).api_token.$error,onInput:b[1]||(b[1]=f=>r(p).api_token.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t("div",Le,[e(S,{class:"mt-6",loading:r(h),type:"submit"},{left:u(f=>[e(E,{name:"SaveIcon",class:Y(f.class)},null,8,["class"])]),default:u(()=>[P(" "+c(s.$t("general.save")),1)]),_:1},8,["loading"]),t("a",{href:`${r(m).config.base_url}/auth/customer/register`,class:"mt-6 block",target:"_blank"},[e(S,{variant:"primary-outline",type:"button"},{default:u(()=>[Ve]),_:1})],8,Ue)])],40,Me)])]),_:1}))]),_:1})}}};export{Ae as default}; +import{J as I,k as v,r as l,o as n,e as i,t as c,j as y,h as t,f as e,u as r,l as $,w as u,B as k,L as j,M as J,N as O,T as K,F as Q,y as W,U as X,m as Y,i as P}from"./vendor.01d0adc5.js";import{_ as Z,r as ee,d as te}from"./main.24f7a84b.js";const se={key:0,class:"absolute mt-5 px-6 w-full flex justify-end"},ae={key:0,class:"bg-white bg-opacity-75 text-xs px-3 py-1 font-semibold tracking-wide rounded"},ne={key:1,class:"ml-2 bg-white bg-opacity-75 text-xs px-3 py-1 font-semibold tracking-wide rounded"},oe={key:0},le={key:1},re=["src"],ie={class:"px-6 py-5 flex flex-col bg-gray-50 flex-1 justify-between"},de={class:"text-lg sm:text-2xl font-medium whitespace-nowrap truncate text-primary-500"},ce={key:0,class:"flex items-center mt-2"},ue=["src"],me=t("span",null,"by",-1),_e={class:"ml-2 text-base font-semibold truncate"},he={class:"flex justify-between mt-4 flex-col space-y-2 sm:space-y-0 sm:flex-row"},fe={class:"text-xl md:text-2xl font-semibold whitespace-nowrap text-primary-500"},pe={props:{data:{type:Object,default:null,required:!0}},setup(a){const o=a;I();let m=v(()=>parseInt(o.data.average_rating));return(d,_)=>{const h=l("base-text"),g=l("BaseRating");return n(),i("div",{class:"relative shadow-md border-2 border-gray-200 border-opacity-60 rounded-lg cursor-pointer overflow-hidden h-100",onClick:_[0]||(_[0]=w=>d.$router.push(`/admin/modules/${a.data.slug}`))},[a.data.purchased?(n(),i("div",se,[a.data.purchased?(n(),i("label",ae,c(d.$t("modules.purchased")),1)):y("",!0),a.data.installed?(n(),i("label",ne,[a.data.update_available?(n(),i("span",oe,c(d.$t("modules.update_available")),1)):(n(),i("span",le,c(d.$t("modules.installed")),1))])):y("",!0)])):y("",!0),t("img",{class:"lg:h-64 md:h-48 w-full object-cover object-center",src:a.data.cover,alt:"cover"},null,8,re),t("div",ie,[t("span",de,c(a.data.name),1),a.data.author_avatar?(n(),i("div",ce,[t("img",{class:"hidden h-10 w-10 rounded-full sm:inline-block mr-2",src:a.data.author_avatar?a.data.author_avatar:"http://localhost:3000/img/default-avatar.jpg",alt:""},null,8,ue),me,t("span",_e,c(a.data.author_name),1)])):y("",!0),e(h,{text:a.data.short_description,class:"pt-4 text-gray-500 h-16 line-clamp-2",length:110},null,8,["text"]),t("div",he,[t("div",null,[e(g,{rating:r(m)},null,8,["rating"])]),t("div",fe," $ "+c(a.data.monthly_price?a.data.monthly_price/100:a.data.yearly_price/100),1)])])])}}},ge={},ve={class:"shadow-md border-2 border-gray-200 border-opacity-60 rounded-lg cursor-pointer overflow-hidden h-100"},be={class:"px-6 py-5 flex flex-col bg-gray-50 flex-1 justify-between"},ye={class:"flex items-center mt-2"},xe={class:"flex justify-between mt-4 flex-col space-y-2 sm:space-y-0 sm:flex-row"};function $e(a,o){const m=l("BaseContentPlaceholdersBox"),d=l("BaseContentPlaceholdersText"),_=l("BaseContentPlaceholders");return n(),$(_,null,{default:u(()=>[t("div",ve,[e(m,{class:"h-48 lg:h-64 md:h-48 w-full",rounded:""}),t("div",be,[e(d,{class:"w-32 h-8",lines:1,rounded:""}),t("div",ye,[e(m,{class:"h-10 w-10 rounded-full sm:inline-block mr-2"}),t("div",null,[e(d,{class:"w-32 h-8 ml-2",lines:1,rounded:""})])]),e(d,{class:"pt-4 w-full h-16",lines:1,rounded:""}),t("div",xe,[e(d,{class:"w-32 h-8",lines:1,rounded:""}),e(d,{class:"w-32 h-8",lines:1,rounded:""})])])])]),_:1})}var B=Z(ge,[["render",$e]]);const ke={key:0},Be={key:0,class:"grid mt-6 w-full grid-cols-1 items-start gap-6 lg:grid-cols-2 xl:grid-cols-3"},we={key:1},Te={key:0,class:"grid mt-6 w-full grid-cols-1 items-start gap-6 lg:grid-cols-2 xl:grid-cols-3"},Ce={key:1,class:"mt-24"},Se={class:"flex items-center justify-center text-gray-500"},Ie={class:"text-gray-900 text-lg font-medium"},je={class:"mt-1 text-sm text-gray-500"},Pe={class:"grid lg:grid-cols-2 mt-6"},Me=["onSubmit"],Le={class:"flex space-x-2"},Ue=["href"],Ve=P(" Sign up & Get Token "),Ae={setup(a){const o=ee(),m=te(),d=k(""),{t:_}=I();let h=k(!1),g=k(!1);const w=v(()=>({api_token:{required:j.withMessage(_("validation.required"),J),minLength:j.withMessage(_("validation.name_min_length",{count:3}),O(3))}})),M=v(()=>o.apiToken?(L(),!0):!1),f=K(w,v(()=>o.currentUser)),x=v(()=>d.value==="INSTALLED"?o.modules.filter(s=>s.installed):o.modules);async function L(){g.value=!0,await o.fetchModules().then(()=>{g.value=!1})}async function U(){if(f.value.$touch(),f.value.$invalid)return!0;h.value=!0,o.checkApiToken(o.currentUser.api_token).then(s=>{if(s.data.success){V();return}h.value=!1})}async function V(){try{await m.updateGlobalSettings({data:{settings:{api_token:o.currentUser.api_token}},message:"settings.preferences.updated_message"}).then(s=>{if(s.data.success){o.apiToken=o.currentUser.api_token;return}}),h.value=!1}catch(s){h.value=!1,console.error(s);return}}function G(s){d.value=s.filter}return(s,b)=>{const T=l("BaseBreadcrumbItem"),N=l("BaseBreadcrumb"),A=l("BasePageHeader"),C=l("BaseTab"),q=l("BaseTabGroup"),D=l("BaseInput"),F=l("BaseInputGroup"),E=l("BaseIcon"),S=l("BaseButton"),R=l("BaseCard"),H=l("BasePage");return n(),$(H,null,{default:u(()=>[e(A,{title:s.$t("modules.title")},{default:u(()=>[e(N,null,{default:u(()=>[e(T,{title:s.$t("general.home"),to:"dashboard"},null,8,["title"]),e(T,{title:s.$tc("modules.module",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),r(M)&&r(o).modules?(n(),i("div",ke,[e(q,{class:"-mb-5",onChange:G},{default:u(()=>[e(C,{title:s.$t("general.all"),filter:""},null,8,["title"]),e(C,{title:s.$t("modules.installed"),filter:"INSTALLED"},null,8,["title"])]),_:1}),r(g)?(n(),i("div",Be,[e(B),e(B),e(B)])):(n(),i("div",we,[r(x)&&r(x).length?(n(),i("div",Te,[(n(!0),i(Q,null,W(r(x),(p,z)=>(n(),i("div",{key:z},[e(pe,{data:p},null,8,["data"])]))),128))])):(n(),i("div",Ce,[t("label",Se,c(s.$t("modules.no_modules_installed")),1)]))]))])):(n(),$(R,{key:1,class:"mt-6"},{default:u(()=>[t("h6",Ie,c(s.$t("modules.connect_installation")),1),t("p",je,c(s.$t("modules.api_token_description",{url:r(m).config.base_url.replace(/^http:\/\//,"")})),1),t("div",Pe,[t("form",{action:"",class:"mt-6",onSubmit:X(U,["prevent"])},[e(F,{label:s.$t("modules.api_token"),required:"",error:r(f).api_token.$error&&r(f).api_token.$errors[0].$message},{default:u(()=>[e(D,{modelValue:r(o).currentUser.api_token,"onUpdate:modelValue":b[0]||(b[0]=p=>r(o).currentUser.api_token=p),invalid:r(f).api_token.$error,onInput:b[1]||(b[1]=p=>r(f).api_token.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t("div",Le,[e(S,{class:"mt-6",loading:r(h),type:"submit"},{left:u(p=>[e(E,{name:"SaveIcon",class:Y(p.class)},null,8,["class"])]),default:u(()=>[P(" "+c(s.$t("general.save")),1)]),_:1},8,["loading"]),t("a",{href:`${r(m).config.base_url}/auth/customer/register`,class:"mt-6 block",target:"_blank"},[e(S,{variant:"primary-outline",type:"button"},{default:u(()=>[Ve]),_:1})],8,Ue)])],40,Me)])]),_:1}))]),_:1})}}};export{Ae as default}; diff --git a/public/build/assets/Index.36ae4778.js b/public/build/assets/Index.fe0e7efd.js similarity index 95% rename from public/build/assets/Index.36ae4778.js rename to public/build/assets/Index.fe0e7efd.js index 2087ae5a3..4faa06a44 100644 --- a/public/build/assets/Index.36ae4778.js +++ b/public/build/assets/Index.fe0e7efd.js @@ -1 +1 @@ -import{J as Q,ah as Y,G as Z,B as y,a0 as ee,k as I,aR as te,r as l,o as c,l as d,w as a,f as t,u as o,m as w,i as _,t as p,j as C,q as S,ag as F,h as P}from"./vendor.01d0adc5.js";import ae from"./BaseTable.6e206ca7.js";import{u as se}from"./global.08b6a984.js";import{u as le}from"./estimate.e6573e64.js";import{_ as oe}from"./ObservatoryIcon.1877bd3e.js";import"./main.75722495.js";import"./auth.4644c288.js";const ne=P("div",{class:"hidden w-8 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"1.5rem"}},null,-1),re={class:"relative table-container"},be={setup(me){const{t:f}=Q();Y("utils"),Z();const E=y(null);let u=y(!1),h=y(!0);const j=y(["DRAFT","SENT","VIEWED","EXPIRED","ACCEPTED","REJECTED"]),s=ee({status:"",from_date:"",to_date:"",estimate_number:""}),v=se(),b=le(),x=I(()=>[{key:"estimate_date",label:f("estimates.date"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"estimate_number",label:f("estimates.number",2)},{key:"status",label:f("estimates.status")},{key:"total",label:f("estimates.total")},{key:"actions",thClass:"text-right",tdClass:"text-right text-sm font-medium",sortable:!1}]),k=I(()=>!b.totalEstimates&&!h.value);I(()=>v.currency),te(s,()=>{N()},{debounce:500});function T(){E.value.refresh()}function N(){T()}function D(){s.status="",s.from_date="",s.to_date="",s.estimate_number=""}function H(){u.value&&D(),u.value=!u.value}async function R({page:n,sort:r}){let B={status:s.status,estimate_number:s.estimate_number,from_date:s.from_date,to_date:s.to_date,orderByField:r.fieldName||"created_at",orderBy:r.order||"desc",page:n};h.value=!0;let i=await b.fetchEstimate(B,v.companySlug);return h.value=!1,{data:i.data.data,pagination:{totalPages:i.data.meta.last_page,currentPage:n,totalCount:i.data.meta.total,limit:10}}}return(n,r)=>{const B=l("BaseBreadcrumbItem"),i=l("BaseBreadcrumb"),m=l("BaseIcon"),G=l("BaseButton"),U=l("BasePageHeader"),W=l("BaseSelectInput"),g=l("BaseInputGroup"),z=l("BaseInput"),V=l("BaseDatePicker"),A=l("BaseFilterWrapper"),J=l("BaseEmptyPlaceholder"),$=l("router-link"),M=l("BaseEstimateStatusBadge"),X=l("BaseFormatMoney"),q=l("BaseDropdownItem"),O=l("BaseDropdown"),K=l("BasePage");return c(),d(K,null,{default:a(()=>[t(U,{title:n.$t("estimates.title")},{actions:a(()=>[o(b).totalEstimates?(c(),d(G,{key:0,variant:"primary-outline",onClick:H},{right:a(e=>[o(u)?(c(),d(m,{key:1,name:"XIcon",class:w(e.class)},null,8,["class"])):(c(),d(m,{key:0,name:"FilterIcon",class:w(e.class)},null,8,["class"]))]),default:a(()=>[_(p(n.$t("general.filter"))+" ",1)]),_:1})):C("",!0)]),default:a(()=>[t(i,null,{default:a(()=>[t(B,{title:n.$t("general.home"),to:`/${o(v).companySlug}/customer/dashboard`},null,8,["title","to"]),t(B,{title:n.$tc("estimates.estimate",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),S(t(A,{onClear:D},{default:a(()=>[t(g,{label:n.$t("estimates.status"),class:"px-3"},{default:a(()=>[t(W,{modelValue:o(s).status,"onUpdate:modelValue":r[0]||(r[0]=e=>o(s).status=e),options:j.value,searchable:"","show-labels":!1,"allow-empty":!1,placeholder:n.$t("general.select_a_status")},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),t(g,{label:n.$t("estimates.estimate_number"),color:"black-light",class:"px-3 mt-2"},{default:a(()=>[t(z,{modelValue:o(s).estimate_number,"onUpdate:modelValue":r[1]||(r[1]=e=>o(s).estimate_number=e)},{default:a(()=>[t(m,{name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}),t(m,{name:"HashtagIcon",class:"h-5 mr-3 text-gray-600"})]),_:1},8,["modelValue"])]),_:1},8,["label"]),t(g,{label:n.$t("general.from"),class:"px-3"},{default:a(()=>[t(V,{modelValue:o(s).from_date,"onUpdate:modelValue":r[2]||(r[2]=e=>o(s).from_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),ne,t(g,{label:n.$t("general.to"),class:"px-3"},{default:a(()=>[t(V,{modelValue:o(s).to_date,"onUpdate:modelValue":r[3]||(r[3]=e=>o(s).to_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},512),[[F,o(u)]]),o(k)?(c(),d(J,{key:0,title:n.$t("estimates.no_estimates"),description:n.$t("estimates.list_of_estimates")},{default:a(()=>[t(oe,{class:"mt-5 mb-4"})]),_:1},8,["title","description"])):C("",!0),S(P("div",re,[t(ae,{ref:(e,L)=>{L.table=e,E.value=e},data:R,columns:o(x),"placeholder-count":o(b).totalEstimates>=20?10:5,class:"mt-10"},{"cell-estimate_date":a(({row:e})=>[_(p(e.data.formatted_estimate_date),1)]),"cell-estimate_number":a(({row:e})=>[t($,{to:{path:`estimates/${e.data.id}/view`},class:"font-medium text-primary-500"},{default:a(()=>[_(p(e.data.estimate_number),1)]),_:2},1032,["to"])]),"cell-status":a(({row:e})=>[t(M,{status:e.data.status,class:"px-3 py-1"},{default:a(()=>[_(p(e.data.status),1)]),_:2},1032,["status"])]),"cell-total":a(({row:e})=>[t(X,{amount:e.data.total},null,8,["amount"])]),"cell-actions":a(({row:e})=>[t(O,null,{activator:a(()=>[t(m,{name:"DotsHorizontalIcon",class:"h-5 text-gray-500"})]),default:a(()=>[t($,{to:`estimates/${e.data.id}/view`},{default:a(()=>[t(q,null,{default:a(()=>[t(m,{name:"EyeIcon",class:"h-5 mr-3 text-gray-600"}),_(" "+p(n.$t("general.view")),1)]),_:1})]),_:2},1032,["to"])]),_:2},1024)]),_:1},8,["columns","placeholder-count"])],512),[[F,!o(k)]])]),_:1})}}};export{be as default}; +import{J as Q,ah as Y,G as Z,B as y,a0 as ee,k as I,aR as te,r as l,o as c,l as d,w as a,f as t,u as o,m as w,i as _,t as p,j as C,q as S,ag as F,h as P}from"./vendor.01d0adc5.js";import ae from"./BaseTable.ab76526e.js";import{u as se}from"./global.ab8f317c.js";import{u as le}from"./estimate.d7337943.js";import{_ as oe}from"./ObservatoryIcon.1877bd3e.js";import"./main.24f7a84b.js";import"./auth.0e030165.js";const ne=P("div",{class:"hidden w-8 h-0 mx-4 border border-gray-400 border-solid xl:block",style:{"margin-top":"1.5rem"}},null,-1),re={class:"relative table-container"},be={setup(me){const{t:f}=Q();Y("utils"),Z();const E=y(null);let u=y(!1),h=y(!0);const j=y(["DRAFT","SENT","VIEWED","EXPIRED","ACCEPTED","REJECTED"]),s=ee({status:"",from_date:"",to_date:"",estimate_number:""}),v=se(),b=le(),x=I(()=>[{key:"estimate_date",label:f("estimates.date"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"estimate_number",label:f("estimates.number",2)},{key:"status",label:f("estimates.status")},{key:"total",label:f("estimates.total")},{key:"actions",thClass:"text-right",tdClass:"text-right text-sm font-medium",sortable:!1}]),k=I(()=>!b.totalEstimates&&!h.value);I(()=>v.currency),te(s,()=>{N()},{debounce:500});function T(){E.value.refresh()}function N(){T()}function D(){s.status="",s.from_date="",s.to_date="",s.estimate_number=""}function H(){u.value&&D(),u.value=!u.value}async function R({page:n,sort:r}){let B={status:s.status,estimate_number:s.estimate_number,from_date:s.from_date,to_date:s.to_date,orderByField:r.fieldName||"created_at",orderBy:r.order||"desc",page:n};h.value=!0;let i=await b.fetchEstimate(B,v.companySlug);return h.value=!1,{data:i.data.data,pagination:{totalPages:i.data.meta.last_page,currentPage:n,totalCount:i.data.meta.total,limit:10}}}return(n,r)=>{const B=l("BaseBreadcrumbItem"),i=l("BaseBreadcrumb"),m=l("BaseIcon"),G=l("BaseButton"),U=l("BasePageHeader"),W=l("BaseSelectInput"),g=l("BaseInputGroup"),z=l("BaseInput"),V=l("BaseDatePicker"),A=l("BaseFilterWrapper"),J=l("BaseEmptyPlaceholder"),$=l("router-link"),M=l("BaseEstimateStatusBadge"),X=l("BaseFormatMoney"),q=l("BaseDropdownItem"),O=l("BaseDropdown"),K=l("BasePage");return c(),d(K,null,{default:a(()=>[t(U,{title:n.$t("estimates.title")},{actions:a(()=>[o(b).totalEstimates?(c(),d(G,{key:0,variant:"primary-outline",onClick:H},{right:a(e=>[o(u)?(c(),d(m,{key:1,name:"XIcon",class:w(e.class)},null,8,["class"])):(c(),d(m,{key:0,name:"FilterIcon",class:w(e.class)},null,8,["class"]))]),default:a(()=>[_(p(n.$t("general.filter"))+" ",1)]),_:1})):C("",!0)]),default:a(()=>[t(i,null,{default:a(()=>[t(B,{title:n.$t("general.home"),to:`/${o(v).companySlug}/customer/dashboard`},null,8,["title","to"]),t(B,{title:n.$tc("estimates.estimate",2),to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),S(t(A,{onClear:D},{default:a(()=>[t(g,{label:n.$t("estimates.status"),class:"px-3"},{default:a(()=>[t(W,{modelValue:o(s).status,"onUpdate:modelValue":r[0]||(r[0]=e=>o(s).status=e),options:j.value,searchable:"","show-labels":!1,"allow-empty":!1,placeholder:n.$t("general.select_a_status")},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),t(g,{label:n.$t("estimates.estimate_number"),color:"black-light",class:"px-3 mt-2"},{default:a(()=>[t(z,{modelValue:o(s).estimate_number,"onUpdate:modelValue":r[1]||(r[1]=e=>o(s).estimate_number=e)},{default:a(()=>[t(m,{name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}),t(m,{name:"HashtagIcon",class:"h-5 mr-3 text-gray-600"})]),_:1},8,["modelValue"])]),_:1},8,["label"]),t(g,{label:n.$t("general.from"),class:"px-3"},{default:a(()=>[t(V,{modelValue:o(s).from_date,"onUpdate:modelValue":r[2]||(r[2]=e=>o(s).from_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"]),ne,t(g,{label:n.$t("general.to"),class:"px-3"},{default:a(()=>[t(V,{modelValue:o(s).to_date,"onUpdate:modelValue":r[3]||(r[3]=e=>o(s).to_date=e),"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},512),[[F,o(u)]]),o(k)?(c(),d(J,{key:0,title:n.$t("estimates.no_estimates"),description:n.$t("estimates.list_of_estimates")},{default:a(()=>[t(oe,{class:"mt-5 mb-4"})]),_:1},8,["title","description"])):C("",!0),S(P("div",re,[t(ae,{ref:(e,L)=>{L.table=e,E.value=e},data:R,columns:o(x),"placeholder-count":o(b).totalEstimates>=20?10:5,class:"mt-10"},{"cell-estimate_date":a(({row:e})=>[_(p(e.data.formatted_estimate_date),1)]),"cell-estimate_number":a(({row:e})=>[t($,{to:{path:`estimates/${e.data.id}/view`},class:"font-medium text-primary-500"},{default:a(()=>[_(p(e.data.estimate_number),1)]),_:2},1032,["to"])]),"cell-status":a(({row:e})=>[t(M,{status:e.data.status,class:"px-3 py-1"},{default:a(()=>[_(p(e.data.status),1)]),_:2},1032,["status"])]),"cell-total":a(({row:e})=>[t(X,{amount:e.data.total},null,8,["amount"])]),"cell-actions":a(({row:e})=>[t(O,null,{activator:a(()=>[t(m,{name:"DotsHorizontalIcon",class:"h-5 text-gray-500"})]),default:a(()=>[t($,{to:`estimates/${e.data.id}/view`},{default:a(()=>[t(q,null,{default:a(()=>[t(m,{name:"EyeIcon",class:"h-5 mr-3 text-gray-600"}),_(" "+p(n.$t("general.view")),1)]),_:1})]),_:2},1032,["to"])]),_:2},1024)]),_:1},8,["columns","placeholder-count"])],512),[[F,!o(k)]])]),_:1})}}};export{be as default}; diff --git a/public/build/assets/Installation.e5762019.js b/public/build/assets/Installation.85c2b6a4.js similarity index 99% rename from public/build/assets/Installation.e5762019.js rename to public/build/assets/Installation.85c2b6a4.js index dc0fa7756..5ccd723b9 100644 --- a/public/build/assets/Installation.e5762019.js +++ b/public/build/assets/Installation.85c2b6a4.js @@ -1 +1 @@ -var $e=Object.defineProperty;var ue=Object.getOwnPropertySymbols;var we=Object.prototype.hasOwnProperty,he=Object.prototype.propertyIsEnumerable;var me=(n,q,d)=>q in n?$e(n,q,{enumerable:!0,configurable:!0,writable:!0,value:d}):n[q]=d,ce=(n,q)=>{for(var d in q||(q={}))we.call(q,d)&&me(n,d,q[d]);if(ue)for(var d of ue(q))he.call(q,d)&&me(n,d,q[d]);return n};import{a as L,d as ye,B as M,k as z,r as b,o as B,l as F,w as u,h as V,e as k,t as U,i as P,j as E,F as ne,y as ie,u as e,f as t,m as O,J as G,D as Q,q as oe,ag as re,a0 as j,ah as ee,L as I,M as D,aT as ae,T as W,U as T,aj as le,Q as H,x as Z,N as Ie,O as qe,P as Be,S as ge,aN as pe}from"./vendor.01d0adc5.js";import{h as R,b as te,j as fe,_ as se,u as de,e as ve,d as _e,L as Ce}from"./main.75722495.js";import{u as X}from"./mail-driver.4ea1af6b.js";const A=(n=!1)=>{const q=n?window.pinia.defineStore:ye,d=te();return q({id:"installation",state:()=>({currentDataBaseData:{database_connection:"mysql",database_hostname:"127.0.0.1",database_port:"3306",database_name:null,database_username:null,database_password:null,app_url:window.location.origin}}),actions:{fetchInstallationRequirements(){return new Promise((r,i)=>{L.get("/api/v1/installation/requirements").then(c=>{r(c)}).catch(c=>{R(c),i(c)})})},fetchInstallationStep(){return new Promise((r,i)=>{L.get("/api/v1/installation/wizard-step").then(c=>{r(c)}).catch(c=>{R(c),i(c)})})},addInstallationStep(r){return new Promise((i,c)=>{L.post("/api/v1/installation/wizard-step",r).then(o=>{i(o)}).catch(o=>{R(o),c(o)})})},fetchInstallationPermissions(){return new Promise((r,i)=>{L.get("/api/v1/installation/permissions").then(c=>{r(c)}).catch(c=>{R(c),i(c)})})},fetchInstallationDatabase(r){return new Promise((i,c)=>{L.get("/api/v1/installation/database/config",{params:r}).then(o=>{i(o)}).catch(o=>{R(o),c(o)})})},addInstallationDatabase(r){return new Promise((i,c)=>{L.post("/api/v1/installation/database/config",r).then(o=>{i(o)}).catch(o=>{R(o),c(o)})})},addInstallationFinish(){return new Promise((r,i)=>{L.post("/api/v1/installation/finish").then(c=>{r(c)}).catch(c=>{R(c),i(c)})})},setInstallationDomain(r){return new Promise((i,c)=>{L.put("/api/v1/installation/set-domain",r).then(o=>{i(o)}).catch(o=>{R(o),c(o)})})},installationLogin(){return new Promise((r,i)=>{L.get("/sanctum/csrf-cookie").then(c=>{c&&L.post("/api/v1/installation/login").then(o=>{d.setSelectedCompany(o.data.company),r(o)}).catch(o=>{R(o),i(o)})})})},checkAutheticated(){return new Promise((r,i)=>{L.get("/api/v1/auth/check").then(c=>{r(c)}).catch(c=>{i(c)})})}}})()},Ve={class:"w-full md:w-2/3"},De={class:"mb-6"},Se={key:0,class:"grid grid-flow-row grid-cols-3 p-3 border border-gray-200 lg:gap-24 sm:gap-4"},Fe={class:"col-span-2 text-sm"},Me={class:"text-right"},ze={key:0,class:"inline-block w-4 h-4 ml-3 mr-2 bg-green-500 rounded-full"},ke={key:1,class:"inline-block w-4 h-4 ml-3 mr-2 bg-red-500 rounded-full"},Ue={key:1},Pe={class:"col-span-2 text-sm"},Ne={class:"text-right"},Ee={key:0,class:"inline-block w-4 h-4 ml-3 mr-2 bg-green-500 rounded-full"},Ge={key:1,class:"inline-block w-4 h-4 ml-3 mr-2 bg-red-500 rounded-full"},Oe={emits:["next"],setup(n,{emit:q}){const d=M(""),r=M(""),i=M(!1);M(!0);const c=A(),o=z(()=>{if(d.value){let m=!0;for(const s in d.value)return d.value[s]||(m=!1),d.value&&r.value.supported&&m}return!1});async function f(){var s,h,a,g;i.value=!0;const m=await c.fetchInstallationRequirements();m.data&&(d.value=(a=(h=(s=m==null?void 0:m.data)==null?void 0:s.requirements)==null?void 0:h.requirements)==null?void 0:a.php,r.value=(g=m==null?void 0:m.data)==null?void 0:g.phpSupportInfo)}function l(){i.value=!0,q("next"),i.value=!1}return(m,s)=>{const h=b("BaseIcon"),a=b("BaseButton"),g=b("BaseWizardStep");return B(),F(g,{title:m.$t("wizard.req.system_req"),description:m.$t("wizard.req.system_req_desc")},{default:u(()=>[V("div",Ve,[V("div",De,[r.value?(B(),k("div",Se,[V("div",Fe,U(m.$t("wizard.req.php_req_version",{version:r.value.minimum})),1),V("div",Me,[P(U(r.value.current)+" ",1),r.value.supported?(B(),k("span",ze)):(B(),k("span",ke))])])):E("",!0),d.value?(B(),k("div",Ue,[(B(!0),k(ne,null,ie(d.value,($,C)=>(B(),k("div",{key:C,class:"grid grid-flow-row grid-cols-3 p-3 border border-gray-200 lg:gap-24 sm:gap-4"},[V("div",Pe,U(C),1),V("div",Ne,[$?(B(),k("span",Ee)):(B(),k("span",Ge))])]))),128))])):E("",!0)]),e(o)?(B(),F(a,{key:0,onClick:l},{left:u($=>[t(h,{name:"ArrowRightIcon",class:O($.class)},null,8,["class"])]),default:u(()=>[P(U(m.$t("wizard.continue"))+" ",1)]),_:1})):E("",!0),d.value?E("",!0):(B(),F(a,{key:1,loading:i.value,disabled:i.value,onClick:f},{default:u(()=>[P(U(m.$t("wizard.req.check_req")),1)]),_:1},8,["loading","disabled"]))])]),_:1},8,["title","description"])}}},xe={key:1,class:"relative"},Le={class:"grid grid-flow-row grid-cols-3 lg:gap-24 sm:gap-4"},We={class:"col-span-2 p-3"},Te={class:"p-3 text-right"},je={key:0,class:"inline-block w-4 h-4 ml-3 mr-2 rounded-full bg-green-500"},Re={key:1,class:"inline-block w-4 h-4 ml-3 mr-2 rounded-full bg-red-500"},Ae={emits:["next"],setup(n,{emit:q}){let d=M(!1),r=M(!1),i=M([]);const{tm:c,t:o}=G(),f=A(),l=fe();Q(()=>{m()});async function m(){d.value=!0;const h=await f.fetchInstallationPermissions();i.value=h.data.permissions.permissions,h.data&&h.data.permissions.errors&&setTimeout(()=>{l.openDialog({title:c("wizard.permissions.permission_confirm_title"),message:o("wizard.permissions.permission_confirm_desc"),yesLabel:"OK",noLabel:"Cancel",variant:"danger",hideNoButton:!1,size:"lg"}).then(a=>{a.data&&(d.value=!1)})},500),d.value=!1}function s(){r.value=!0,q("next"),r.value=!1}return(h,a)=>{const g=b("BaseContentPlaceholdersText"),$=b("BaseContentPlaceholdersBox"),C=b("BaseContentPlaceholders"),p=b("BaseIcon"),_=b("BaseButton"),v=b("BaseWizardStep");return B(),F(v,{title:h.$t("wizard.permissions.permissions"),description:h.$t("wizard.permissions.permission_desc")},{default:u(()=>[e(d)?(B(),F(C,{key:0},{default:u(()=>[(B(),k(ne,null,ie(3,(w,y)=>V("div",{key:y,class:"grid grid-flow-row grid-cols-3 lg:gap-24 sm:gap-4 border border-gray-200"},[t(g,{lines:1,class:"col-span-4 p-3"})])),64)),t($,{rounded:!0,class:"mt-10",style:{width:"96px",height:"42px"}})]),_:1})):(B(),k("div",xe,[(B(!0),k(ne,null,ie(e(i),(w,y)=>(B(),k("div",{key:y,class:"border border-gray-200"},[V("div",Le,[V("div",We,U(w.folder),1),V("div",Te,[w.isSet?(B(),k("span",je)):(B(),k("span",Re)),V("span",null,U(w.permission),1)])])]))),128)),oe(t(_,{class:"mt-10",loading:e(r),disabled:e(r),onClick:s},{left:u(w=>[t(p,{name:"ArrowRightIcon",class:O(w.class)},null,8,["class"])]),default:u(()=>[P(" "+U(h.$t("wizard.continue")),1)]),_:1},8,["loading","disabled"]),[[re,!e(d)]])]))]),_:1},8,["title","description"])}}},Ye=["onSubmit"],Je={class:"grid grid-cols-1 gap-5 md:grid-cols-2 lg:mb-6 md:mb-6"},Ze={props:{configData:{type:Object,require:!0,default:Object},isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,default:!1}},emits:["submit-data","on-change-driver"],setup(n,{emit:q}){const d=n,r=j(["sqlite","mysql","pgsql"]),{t:i}=G(),c=ee("utils"),o=A();Q(()=>{for(const g in f.value)d.configData.hasOwnProperty(g)&&(f.value[g]=d.configData[g])});const f=z(()=>o.currentDataBaseData),l=g=>c.checkValidUrl(g),m={database_connection:{required:I.withMessage(i("validation.required"),D)},database_hostname:{required:I.withMessage(i("validation.required"),D)},database_port:{required:I.withMessage(i("validation.required"),D),numeric:ae},database_name:{required:I.withMessage(i("validation.required"),D)},database_username:{required:I.withMessage(i("validation.required"),D)},app_url:{required:I.withMessage(i("validation.required"),D),isUrl:I.withMessage(i("validation.invalid_url"),l)}},s=W(m,f.value);function h(){if(s.value.$touch(),s.value.$invalid)return!0;q("submit-data",f.value)}function a(){s.value.database_connection.$touch(),q("on-change-driver",f.value.database_connection)}return(g,$)=>{const C=b("BaseInput"),p=b("BaseInputGroup"),_=b("BaseMultiselect"),v=b("BaseIcon"),w=b("BaseButton");return B(),k("form",{action:"",onSubmit:T(h,["prevent"])},[V("div",Je,[t(p,{label:g.$t("wizard.database.app_url"),error:e(s).app_url.$error&&e(s).app_url.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).app_url,"onUpdate:modelValue":$[0]||($[0]=y=>e(f).app_url=y),invalid:e(s).app_url.$error,type:"text"},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t(p,{label:g.$t("wizard.database.connection"),error:e(s).database_connection.$error&&e(s).database_connection.$errors[0].$message,required:""},{default:u(()=>[t(_,{modelValue:e(f).database_connection,"onUpdate:modelValue":[$[1]||($[1]=y=>e(f).database_connection=y),a],invalid:e(s).database_connection.$error,options:e(r),"can-deselect":!1,"can-clear":!1},null,8,["modelValue","invalid","options"])]),_:1},8,["label","error"]),t(p,{label:g.$t("wizard.database.port"),error:e(s).database_port.$error&&e(s).database_port.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_port,"onUpdate:modelValue":$[2]||($[2]=y=>e(f).database_port=y),invalid:e(s).database_port.$error},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t(p,{label:g.$t("wizard.database.db_name"),error:e(s).database_name.$error&&e(s).database_name.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_name,"onUpdate:modelValue":$[3]||($[3]=y=>e(f).database_name=y),invalid:e(s).database_name.$error},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t(p,{label:g.$t("wizard.database.username"),error:e(s).database_username.$error&&e(s).database_username.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_username,"onUpdate:modelValue":$[4]||($[4]=y=>e(f).database_username=y),invalid:e(s).database_username.$error},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t(p,{label:g.$t("wizard.database.password")},{default:u(()=>[t(C,{modelValue:e(f).database_password,"onUpdate:modelValue":$[5]||($[5]=y=>e(f).database_password=y),type:"password"},null,8,["modelValue"])]),_:1},8,["label"]),t(p,{label:g.$t("wizard.database.host"),error:e(s).database_hostname.$error&&e(s).database_hostname.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_hostname,"onUpdate:modelValue":$[6]||($[6]=y=>e(f).database_hostname=y),invalid:e(s).database_hostname.$error},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),t(w,{type:"submit",class:"mt-4",loading:n.isSaving,disabled:n.isSaving},{left:u(y=>[n.isSaving?E("",!0):(B(),F(v,{key:0,name:"SaveIcon",class:O(y.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(g.$t("wizard.save_cont")),1)]),_:1},8,["loading","disabled"])],40,Ye)}}},Ke=["onSubmit"],Qe={class:"grid grid-cols-1 gap-5 md:grid-cols-2 lg:mb-6 md:mb-6"},He={props:{configData:{type:Object,require:!0,default:Object},isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1}},emits:["submit-data","on-change-driver"],setup(n,{emit:q}){const d=n,r=j(["sqlite","mysql","pgsql"]),{t:i}=G(),c=ee("utils"),o=A(),f=z(()=>o.currentDataBaseData);Q(()=>{for(const g in f.value)d.configData.hasOwnProperty(g)&&(f.value[g]=d.configData[g])});const l=g=>c.checkValidUrl(g),m={database_connection:{required:I.withMessage(i("validation.required"),D)},database_hostname:{required:I.withMessage(i("validation.required"),D)},database_port:{required:I.withMessage(i("validation.required"),D),numeric:ae},database_name:{required:I.withMessage(i("validation.required"),D)},database_username:{required:I.withMessage(i("validation.required"),D)},app_url:{required:I.withMessage(i("validation.required"),D),isUrl:I.withMessage(i("validation.invalid_url"),l)}},s=W(m,f.value);function h(){if(s.value.$touch(),s.value.$invalid)return!0;q("submit-data",f.value)}function a(){s.value.database_connection.$touch(),q("on-change-driver",f.value.database_connection)}return(g,$)=>{const C=b("BaseInput"),p=b("BaseInputGroup"),_=b("BaseMultiselect"),v=b("BaseIcon"),w=b("BaseButton");return B(),k("form",{action:"",onSubmit:T(h,["prevent"])},[V("div",Qe,[t(p,{label:g.$t("wizard.database.app_url"),"content-loading":n.isFetchingInitialData,error:e(s).app_url.$error&&e(s).app_url.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).app_url,"onUpdate:modelValue":$[0]||($[0]=y=>e(f).app_url=y),"content-loading":n.isFetchingInitialData,invalid:e(s).app_url.$error,type:"text"},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),t(p,{label:g.$t("wizard.database.connection"),"content-loading":n.isFetchingInitialData,error:e(s).database_connection.$error&&e(s).database_connection.$errors[0].$message,required:""},{default:u(()=>[t(_,{modelValue:e(f).database_connection,"onUpdate:modelValue":[$[1]||($[1]=y=>e(f).database_connection=y),a],"content-loading":n.isFetchingInitialData,invalid:e(s).database_connection.$error,options:e(r),"can-deselect":!1,"can-clear":!1},null,8,["modelValue","content-loading","invalid","options"])]),_:1},8,["label","content-loading","error"]),t(p,{label:g.$t("wizard.database.port"),"content-loading":n.isFetchingInitialData,error:e(s).database_port.$error&&e(s).database_port.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_port,"onUpdate:modelValue":$[2]||($[2]=y=>e(f).database_port=y),"content-loading":n.isFetchingInitialData,invalid:e(s).database_port.$error},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),t(p,{label:g.$t("wizard.database.db_name"),"content-loading":n.isFetchingInitialData,error:e(s).database_name.$error&&e(s).database_name.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_name,"onUpdate:modelValue":$[3]||($[3]=y=>e(f).database_name=y),"content-loading":n.isFetchingInitialData,invalid:e(s).database_name.$error},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),t(p,{label:g.$t("wizard.database.username"),"content-loading":n.isFetchingInitialData,error:e(s).database_username.$error&&e(s).database_username.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_username,"onUpdate:modelValue":$[4]||($[4]=y=>e(f).database_username=y),"content-loading":n.isFetchingInitialData,invalid:e(s).database_username.$error},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),t(p,{"content-loading":n.isFetchingInitialData,label:g.$t("wizard.database.password")},{default:u(()=>[t(C,{modelValue:e(f).database_password,"onUpdate:modelValue":$[5]||($[5]=y=>e(f).database_password=y),"content-loading":n.isFetchingInitialData,type:"password"},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"]),t(p,{label:g.$t("wizard.database.host"),"content-loading":n.isFetchingInitialData,error:e(s).database_hostname.$error&&e(s).database_hostname.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_hostname,"onUpdate:modelValue":$[6]||($[6]=y=>e(f).database_hostname=y),"content-loading":n.isFetchingInitialData,invalid:e(s).database_hostname.$error},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"])]),oe(t(w,{"content-loading":n.isFetchingInitialData,type:"submit",class:"mt-4",loading:n.isSaving,disabled:n.isSaving},{left:u(y=>[n.isSaving?E("",!0):(B(),F(v,{key:0,name:"SaveIcon",class:O(y.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(g.$t("wizard.save_cont")),1)]),_:1},8,["content-loading","loading","disabled"]),[[re,!n.isFetchingInitialData]])],40,Ke)}}},Xe=["onSubmit"],ea={class:"grid grid-cols-1 gap-5 md:grid-cols-2 lg:mb-6 md:mb-6"},aa={props:{configData:{type:Object,require:!0,default:Object},isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1}},emits:["submit-data","on-change-driver"],setup(n,{emit:q}){const d=n,r=j(["sqlite","mysql","pgsql"]),{t:i}=G(),c=ee("utils"),o=A(),f=z(()=>o.currentDataBaseData);Q(()=>{for(const g in f.value)d.configData.hasOwnProperty(g)&&(f.value[g]=d.configData[g])});const l=g=>c.checkValidUrl(g),m={database_connection:{required:I.withMessage(i("validation.required"),D)},database_name:{required:I.withMessage(i("validation.required"),D)},app_url:{required:I.withMessage(i("validation.required"),D),isUrl:I.withMessage(i("validation.invalid_url"),l)}},s=W(m,f.value);function h(){if(s.value.$touch(),s.value.$invalid)return!0;q("submit-data",f.value)}function a(){s.value.database_connection.$touch(),q("on-change-driver",f.value.database_connection)}return(g,$)=>{const C=b("BaseInput"),p=b("BaseInputGroup"),_=b("BaseMultiselect"),v=b("BaseIcon"),w=b("BaseButton");return B(),k("form",{action:"",onSubmit:T(h,["prevent"])},[V("div",ea,[t(p,{label:g.$t("wizard.database.app_url"),"content-loading":n.isFetchingInitialData,error:e(s).app_url.$error&&e(s).app_url.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).app_url,"onUpdate:modelValue":$[0]||($[0]=y=>e(f).app_url=y),"content-loading":n.isFetchingInitialData,invalid:e(s).app_url.$error,type:"text"},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),t(p,{label:g.$t("wizard.database.connection"),"content-loading":n.isFetchingInitialData,error:e(s).database_connection.$error&&e(s).database_connection.$errors[0].$message,required:""},{default:u(()=>[t(_,{modelValue:e(f).database_connection,"onUpdate:modelValue":[$[1]||($[1]=y=>e(f).database_connection=y),a],"content-loading":n.isFetchingInitialData,invalid:e(s).database_connection.$error,options:e(r),"can-deselect":!1,"can-clear":!1},null,8,["modelValue","content-loading","invalid","options"])]),_:1},8,["label","content-loading","error"]),t(p,{label:g.$t("wizard.database.db_path"),error:e(s).database_name.$error&&e(s).database_name.$errors[0].$message,"content-loading":n.isFetchingInitialData,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_name,"onUpdate:modelValue":$[2]||($[2]=y=>e(f).database_name=y),"content-loading":n.isFetchingInitialData,invalid:e(s).database_name.$error},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","error","content-loading"])]),oe(t(w,{"content-loading":n.isFetchingInitialData,type:"submit",class:"mt-4",loading:n.isSaving,disabled:n.isSaving},{left:u(y=>[n.isSaving?E("",!0):(B(),F(v,{key:0,name:"SaveIcon",class:O(y.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(g.$t("wizard.save_cont")),1)]),_:1},8,["content-loading","loading","disabled"]),[[re,!n.isFetchingInitialData]])],40,Xe)}}},ta={components:{Mysql:Ze,Pgsql:He,Sqlite:aa},emits:["next"],setup(n,{emit:q}){const d=M("mysql"),r=M(!1),{t:i}=G(),c=de(),o=A(),f=z(()=>o.currentDataBaseData);async function l(s){let h={connection:s};const a=await o.fetchInstallationDatabase(h);a.data.success&&(f.value.database_connection=a.data.config.database_connection),s==="sqlite"?f.value.database_name=a.data.config.database_name:f.value.database_name=null}async function m(s){r.value=!0;try{let h=await o.addInstallationDatabase(s);if(r.value=!1,h.data.success){await o.addInstallationFinish(),q("next",3),c.showNotification({type:"success",message:i("wizard.success."+h.data.success)});return}else if(h.data.error){if(h.data.requirement){c.showNotification({type:"error",message:i("wizard.errors."+h.data.error,{version:h.data.requirement.minimum,name:s.value.database_connection})});return}c.showNotification({type:"error",message:i("wizard.errors."+h.data.error)})}else h.data.errors?c.showNotification({type:"error",message:h.data.errors[0]}):h.data.error_message&&c.showNotification({type:"error",message:h.data.error_message})}catch{c.showNotification({type:"error",message:i("validation.something_went_wrong")}),r.value=!1}finally{r.value=!1}}return{databaseData:f,database_connection:d,isSaving:r,getDatabaseConfig:l,next:m}}};function na(n,q,d,r,i,c){const o=b("BaseWizardStep");return B(),F(o,{title:n.$t("wizard.database.database"),description:n.$t("wizard.database.desc"),"step-container":"w-full p-8 mb-8 bg-white border border-gray-200 border-solid rounded md:w-full"},{default:u(()=>[(B(),F(le(r.databaseData.database_connection),{"config-data":r.databaseData,"is-saving":r.isSaving,onOnChangeDriver:r.getDatabaseConfig,onSubmitData:r.next},null,8,["config-data","is-saving","onOnChangeDriver","onSubmitData"]))]),_:1},8,["title","description"])}var ia=se(ta,[["render",na]]);const oa={class:"w-full md:w-2/3"},ra=V("p",{class:"mt-4 mb-0 text-sm text-gray-600"},"Notes:",-1),la=V("ul",{class:"w-full text-gray-600 list-disc list-inside"},[V("li",{class:"text-sm leading-8"},[P(" App domain should not contain "),V("b",{class:"inline-block px-1 bg-gray-100 rounded-sm"},"https://"),P(" or "),V("b",{class:"inline-block px-1 bg-gray-100 rounded-sm"},"http"),P(" in front of the domain. ")]),V("li",{class:"text-sm leading-8"},[P(" If you're accessing the website on a different port, please mention the port. For example: "),V("b",{class:"inline-block px-1 bg-gray-100"},"localhost:8080")])],-1),sa={emits:["next"],setup(n,{emit:q}){const d=j({app_domain:window.location.origin.replace(/(^\w+:|^)\/\//,"")}),r=M(!1),{t:i}=G(),c=ee("utils"),o=a=>c.checkValidDomainUrl(a),f=A(),l=de(),m={app_domain:{required:I.withMessage(i("validation.required"),D),isUrl:I.withMessage(i("validation.invalid_domain_url"),o)}},s=W(m,z(()=>d));async function h(){if(s.value.$touch(),s.value.$invalid)return!0;r.value=!0;try{await f.setInstallationDomain(d),await f.installationLogin(),(await f.checkAutheticated()).data&&q("next",4),r.value=!1}catch{l.showNotification({type:"error",message:i("wizard.verify_domain.failed")}),r.value=!1}}return(a,g)=>{const $=b("BaseInput"),C=b("BaseInputGroup"),p=b("BaseButton"),_=b("BaseWizardStep");return B(),F(_,{title:a.$t("wizard.verify_domain.title"),description:a.$t("wizard.verify_domain.desc")},{default:u(()=>[V("div",oa,[t(C,{label:a.$t("wizard.verify_domain.app_domain"),error:e(s).app_domain.$error&&e(s).app_domain.$errors[0].$message,required:""},{default:u(()=>[t($,{modelValue:e(d).app_domain,"onUpdate:modelValue":g[0]||(g[0]=v=>e(d).app_domain=v),invalid:e(s).app_domain.$error,type:"text",onInput:g[1]||(g[1]=v=>e(s).app_domain.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),ra,la,t(p,{loading:r.value,disabled:r.value,class:"mt-8",onClick:h},{default:u(()=>[P(U(a.$t("wizard.verify_domain.verify_now")),1)]),_:1},8,["loading","disabled"])]),_:1},8,["title","description"])}}},da=["onSubmit"],ua={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},ma={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},ca={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},ga={class:"grid grid-cols-1 gap-4 mb-6 md:grid-cols-2"},pa={props:{isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1}},emits:["submit-data","on-change-driver"],setup(n,{emit:q}){let d=M(!1);const r=j(["tls","ssl","starttls"]),{t:i}=G(),c=X(),o=z(()=>c.smtpConfig),f=z(()=>d.value?"text":"password");o.value.mail_driver="smtp";const l=z(()=>({smtpConfig:{mail_driver:{required:I.withMessage(i("validation.required"),D)},mail_host:{required:I.withMessage(i("validation.required"),D)},mail_port:{required:I.withMessage(i("validation.required"),D),numeric:I.withMessage(i("validation.numbers_only"),ae)},mail_encryption:{required:I.withMessage(i("validation.required"),D)},from_mail:{required:I.withMessage(i("validation.required"),D),email:I.withMessage(i("validation.email_incorrect"),H)},from_name:{required:I.withMessage(i("validation.required"),D)}}})),m=W(l,z(()=>c));async function s(){return m.value.$touch(),m.value.$invalid||q("submit-data",c.smtpConfig),!1}function h(){m.value.smtpConfig.mail_driver.$touch(),q("on-change-driver",c.smtpConfig.mail_driver)}return(a,g)=>{const $=b("BaseMultiselect"),C=b("BaseInputGroup"),p=b("BaseInput"),_=b("BaseIcon"),v=b("BaseButton");return B(),k("form",{onSubmit:T(s,["prevent"])},[V("div",ua,[t(C,{label:a.$t("wizard.mail.driver"),"content-loading":n.isFetchingInitialData,error:e(m).smtpConfig.mail_driver.$error&&e(m).smtpConfig.mail_driver.$errors[0].$message,required:""},{default:u(()=>[t($,{modelValue:e(o).mail_driver,"onUpdate:modelValue":[g[0]||(g[0]=w=>e(o).mail_driver=w),h],options:e(c).mail_drivers,"can-deselect":!1,"content-loading":n.isFetchingInitialData,invalid:e(m).smtpConfig.mail_driver.$error},null,8,["modelValue","options","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),t(C,{label:a.$t("wizard.mail.host"),"content-loading":n.isFetchingInitialData,error:e(m).smtpConfig.mail_host.$error&&e(m).smtpConfig.mail_host.$errors[0].$message,required:""},{default:u(()=>[t(p,{modelValue:e(o).mail_host,"onUpdate:modelValue":g[1]||(g[1]=w=>e(o).mail_host=w),modelModifiers:{trim:!0},invalid:e(m).smtpConfig.mail_host.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"mail_host",onInput:g[2]||(g[2]=w=>e(m).smtpConfig.mail_host.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"])]),V("div",ma,[t(C,{label:a.$t("wizard.mail.username"),"content-loading":n.isFetchingInitialData},{default:u(()=>[t(p,{modelValue:e(o).mail_username,"onUpdate:modelValue":g[3]||(g[3]=w=>e(o).mail_username=w),modelModifiers:{trim:!0},"content-loading":n.isFetchingInitialData,type:"text",name:"db_name"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),t(C,{label:a.$t("wizard.mail.password"),"content-loading":n.isFetchingInitialData},{default:u(()=>[t(p,{modelValue:e(o).mail_password,"onUpdate:modelValue":g[6]||(g[6]=w=>e(o).mail_password=w),modelModifiers:{trim:!0},type:e(f),"content-loading":n.isFetchingInitialData,autocomplete:"off","data-lpignore":"true",name:"password"},{right:u(()=>[e(d)?(B(),F(_,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:g[4]||(g[4]=w=>Z(d)?d.value=!e(d):d=!e(d))})):(B(),F(_,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:g[5]||(g[5]=w=>Z(d)?d.value=!e(d):d=!e(d))}))]),_:1},8,["modelValue","type","content-loading"])]),_:1},8,["label","content-loading"])]),V("div",ca,[t(C,{label:a.$t("wizard.mail.port"),error:e(m).smtpConfig.mail_port.$error&&e(m).smtpConfig.mail_port.$errors[0].$message,"content-loading":n.isFetchingInitialData,required:""},{default:u(()=>[t(p,{modelValue:e(o).mail_port,"onUpdate:modelValue":g[7]||(g[7]=w=>e(o).mail_port=w),modelModifiers:{trim:!0},invalid:e(m).smtpConfig.mail_port.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"mail_port",onInput:g[8]||(g[8]=w=>e(m).smtpConfig.mail_port.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","error","content-loading"]),t(C,{label:a.$t("wizard.mail.encryption"),error:e(m).smtpConfig.mail_encryption.$error&&e(m).smtpConfig.mail_encryption.$errors[0].$message,"content-loading":n.isFetchingInitialData,required:""},{default:u(()=>[t($,{modelValue:e(o).mail_encryption,"onUpdate:modelValue":g[9]||(g[9]=w=>e(o).mail_encryption=w),modelModifiers:{trim:!0},options:e(r),"can-deselect":!1,invalid:e(m).smtpConfig.mail_encryption.$error,"content-loading":n.isFetchingInitialData,onInput:g[10]||(g[10]=w=>e(m).smtpConfig.mail_encryption.$touch())},null,8,["modelValue","options","invalid","content-loading"])]),_:1},8,["label","error","content-loading"])]),V("div",ga,[t(C,{label:a.$t("wizard.mail.from_mail"),error:e(m).smtpConfig.from_mail.$error&&e(m).smtpConfig.from_mail.$errors[0].$message,"content-loading":n.isFetchingInitialData,required:""},{default:u(()=>[t(p,{modelValue:e(o).from_mail,"onUpdate:modelValue":g[11]||(g[11]=w=>e(o).from_mail=w),modelModifiers:{trim:!0},invalid:e(m).smtpConfig.from_mail.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"from_mail",onInput:g[12]||(g[12]=w=>e(m).smtpConfig.from_mail.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","error","content-loading"]),t(C,{label:a.$t("wizard.mail.from_name"),error:e(m).smtpConfig.from_name.$error&&e(m).smtpConfig.from_name.$errors[0].$message,"content-loading":n.isFetchingInitialData,required:""},{default:u(()=>[t(p,{modelValue:e(o).from_name,"onUpdate:modelValue":g[13]||(g[13]=w=>e(o).from_name=w),modelModifiers:{trim:!0},invalid:e(m).smtpConfig.from_name.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"from_name",onInput:g[14]||(g[14]=w=>e(m).smtpConfig.from_name.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","error","content-loading"])]),t(v,{loading:n.isSaving,disabled:n.isSaving,"content-loading":n.isFetchingInitialData,class:"mt-4"},{left:u(w=>[n.isSaving?E("",!0):(B(),F(_,{key:0,name:"SaveIcon",class:O(w.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(a.$t("general.save")),1)]),_:1},8,["loading","disabled","content-loading"])],40,da)}}},fa=["onSubmit"],va={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 lg:mb-6 md:mb-6"},_a={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 lg:mb-6 md:mb-6"},ba={class:"grid grid-cols-1 gap-4 mb-6 md:grid-cols-2"},$a={props:{isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1}},emits:["submit-data","on-change-driver"],setup(n,{emit:q}){let d=M(!1);const r=X(),{t:i}=G(),c=z(()=>r.mailgunConfig),o=z(()=>d.value?"text":"password");c.value.mail_driver="mailgun";const f=z(()=>({mailgunConfig:{mail_driver:{required:I.withMessage(i("validation.required"),D)},mail_mailgun_domain:{required:I.withMessage(i("validation.required"),D)},mail_mailgun_endpoint:{required:I.withMessage(i("validation.required"),D)},mail_mailgun_secret:{required:I.withMessage(i("validation.required"),D)},from_mail:{required:I.withMessage(i("validation.required"),D),email:H},from_name:{required:I.withMessage(i("validation.required"),D)}}})),l=W(f,z(()=>r));function m(){return l.value.$touch(),l.value.$invalid||q("submit-data",r.mailgunConfig),!1}function s(){l.value.mailgunConfig.mail_driver.$touch(),q("on-change-driver",r.mailgunConfig.mail_driver)}return(h,a)=>{const g=b("BaseMultiselect"),$=b("BaseInputGroup"),C=b("BaseInput"),p=b("BaseIcon"),_=b("BaseButton");return B(),k("form",{onSubmit:T(m,["prevent"])},[V("div",va,[t($,{label:h.$t("wizard.mail.driver"),"content-loading":n.isFetchingInitialData,error:e(l).mailgunConfig.mail_driver.$error&&e(l).mailgunConfig.mail_driver.$errors[0].$message,required:""},{default:u(()=>[t(g,{modelValue:e(c).mail_driver,"onUpdate:modelValue":[a[0]||(a[0]=v=>e(c).mail_driver=v),s],options:e(r).mail_drivers,"can-deselect":!1,invalid:e(l).mailgunConfig.mail_driver.$error,"content-loading":n.isFetchingInitialData},null,8,["modelValue","options","invalid","content-loading"])]),_:1},8,["label","content-loading","error"]),t($,{label:h.$t("wizard.mail.mailgun_domain"),"content-loading":n.isFetchingInitialData,error:e(l).mailgunConfig.mail_mailgun_domain.$error&&e(l).mailgunConfig.mail_mailgun_domain.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(c).mail_mailgun_domain,"onUpdate:modelValue":a[1]||(a[1]=v=>e(c).mail_mailgun_domain=v),modelModifiers:{trim:!0},invalid:e(l).mailgunConfig.mail_mailgun_domain.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"mailgun_domain",onInput:a[2]||(a[2]=v=>e(l).mailgunConfig.mail_mailgun_domain.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"])]),V("div",_a,[t($,{label:h.$t("wizard.mail.mailgun_secret"),"content-loading":n.isFetchingInitialData,error:e(l).mailgunConfig.mail_mailgun_secret.$error&&e(l).mailgunConfig.mail_mailgun_secret.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(c).mail_mailgun_secret,"onUpdate:modelValue":a[5]||(a[5]=v=>e(c).mail_mailgun_secret=v),modelModifiers:{trim:!0},invalid:e(l).mailgunConfig.mail_mailgun_secret.$error,type:e(o),"content-loading":n.isFetchingInitialData,name:"mailgun_secret",autocomplete:"off","data-lpignore":"true",onInput:a[6]||(a[6]=v=>e(l).mailgunConfig.mail_mailgun_secret.$touch())},{right:u(()=>[e(d)?(B(),F(p,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:a[3]||(a[3]=v=>Z(d)?d.value=!e(d):d=!e(d))})):(B(),F(p,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:a[4]||(a[4]=v=>Z(d)?d.value=!e(d):d=!e(d))}))]),_:1},8,["modelValue","invalid","type","content-loading"])]),_:1},8,["label","content-loading","error"]),t($,{label:h.$t("wizard.mail.mailgun_endpoint"),"content-loading":n.isFetchingInitialData,error:e(l).mailgunConfig.mail_mailgun_endpoint.$error&&e(l).mailgunConfig.mail_mailgun_endpoint.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(c).mail_mailgun_endpoint,"onUpdate:modelValue":a[7]||(a[7]=v=>e(c).mail_mailgun_endpoint=v),modelModifiers:{trim:!0},invalid:e(l).mailgunConfig.mail_mailgun_endpoint.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"mailgun_endpoint",onInput:a[8]||(a[8]=v=>e(l).mailgunConfig.mail_mailgun_endpoint.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"])]),V("div",ba,[t($,{label:h.$t("wizard.mail.from_mail"),"content-loading":n.isFetchingInitialData,error:e(l).mailgunConfig.from_mail.$error&&e(l).mailgunConfig.from_mail.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(c).from_mail,"onUpdate:modelValue":a[9]||(a[9]=v=>e(c).from_mail=v),modelModifiers:{trim:!0},name:"from_mail",type:"text",invalid:e(l).mailgunConfig.from_mail.$error,"content-loading":n.isFetchingInitialData,onInput:a[10]||(a[10]=v=>e(l).mailgunConfig.from_mail.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"]),t($,{label:h.$t("wizard.mail.from_name"),"content-loading":n.isFetchingInitialData,error:e(l).mailgunConfig.from_name.$error&&e(l).mailgunConfig.from_name.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(c).from_name,"onUpdate:modelValue":a[11]||(a[11]=v=>e(c).from_name=v),modelModifiers:{trim:!0},invalid:e(l).mailgunConfig.from_name.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"from_name",onInput:a[12]||(a[12]=v=>e(l).mailgunConfig.from_name.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"])]),t(_,{loading:h.loading,disabled:n.isSaving,"content-loading":n.isFetchingInitialData,class:"mt-4"},{left:u(v=>[n.isSaving?E("",!0):(B(),F(p,{key:0,name:"SaveIcon",class:O(v.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(h.$t("general.save")),1)]),_:1},8,["loading","disabled","content-loading"])],40,fa)}}},wa=["onSubmit"],ha={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},ya={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},Ia={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},qa={class:"grid grid-cols-1 gap-4 mb-6 md:grid-cols-2"},Ba={props:{isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1}},emits:["submit-data","on-change-driver"],setup(n,{emit:q}){const{t:d}=G(),r=j(["tls","ssl","starttls"]);let i=M(!1);const c=X(),o=z(()=>c.sesConfig);o.value.mail_driver="ses";const f=z(()=>({sesConfig:{mail_driver:{required:I.withMessage(d("validation.required"),D)},mail_host:{required:I.withMessage(d("validation.required"),D)},mail_port:{required:I.withMessage(d("validation.required"),D),numeric:ae},mail_ses_key:{required:I.withMessage(d("validation.required"),D)},mail_ses_secret:{required:I.withMessage(d("validation.required"),D)},mail_encryption:{required:I.withMessage(d("validation.required"),D)},from_mail:{required:I.withMessage(d("validation.required"),D),email:I.withMessage(d("validation.email_incorrect"),H)},from_name:{required:I.withMessage(d("validation.required"),D)}}})),l=W(f,z(()=>c));async function m(){return l.value.$touch(),l.value.$invalid||q("submit-data",c.sesConfig),!1}function s(){l.value.sesConfig.mail_driver.$touch(),q("on-change-driver",c.sesConfig.mail_driver)}return(h,a)=>{const g=b("BaseMultiselect"),$=b("BaseInputGroup"),C=b("BaseInput"),p=b("BaseIcon"),_=b("BaseButton");return B(),k("form",{onSubmit:T(m,["prevent"])},[V("div",ha,[t($,{label:h.$t("wizard.mail.driver"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.mail_driver.$error&&e(l).sesConfig.mail_driver.$errors[0].$message,required:""},{default:u(()=>[t(g,{modelValue:e(o).mail_driver,"onUpdate:modelValue":[a[0]||(a[0]=v=>e(o).mail_driver=v),s],options:e(c).mail_drivers,"can-deselect":!1,"content-loading":n.isFetchingInitialData,invalid:e(l).sesConfig.mail_driver.$error},null,8,["modelValue","options","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),t($,{label:h.$t("wizard.mail.host"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.mail_host.$error&&e(l).sesConfig.mail_host.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(o).mail_host,"onUpdate:modelValue":a[1]||(a[1]=v=>e(o).mail_host=v),modelModifiers:{trim:!0},invalid:e(l).sesConfig.mail_host.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"mail_host",onInput:a[2]||(a[2]=v=>e(l).sesConfig.mail_host.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"])]),V("div",ya,[t($,{label:h.$t("wizard.mail.port"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.mail_port.$error&&e(l).sesConfig.mail_port.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(o).mail_port,"onUpdate:modelValue":a[3]||(a[3]=v=>e(o).mail_port=v),modelModifiers:{trim:!0},invalid:e(l).sesConfig.mail_port.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"mail_port",onInput:a[4]||(a[4]=v=>e(l).sesConfig.mail_port.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"]),t($,{label:h.$t("wizard.mail.encryption"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.mail_encryption.$error&&e(l).sesConfig.mail_encryption.$errors[0].$message,required:""},{default:u(()=>[t(g,{modelValue:e(o).mail_encryption,"onUpdate:modelValue":a[5]||(a[5]=v=>e(o).mail_encryption=v),modelModifiers:{trim:!0},invalid:e(l).sesConfig.mail_encryption.$error,options:e(r),"content-loading":n.isFetchingInitialData,onInput:a[6]||(a[6]=v=>e(l).sesConfig.mail_encryption.$touch())},null,8,["modelValue","invalid","options","content-loading"])]),_:1},8,["label","content-loading","error"])]),V("div",Ia,[t($,{label:h.$t("wizard.mail.from_mail"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.from_mail.$error&&e(l).sesConfig.from_mail.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(o).from_mail,"onUpdate:modelValue":a[7]||(a[7]=v=>e(o).from_mail=v),modelModifiers:{trim:!0},invalid:e(l).sesConfig.from_mail.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"from_mail",onInput:a[8]||(a[8]=v=>e(l).sesConfig.from_mail.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"]),t($,{label:h.$t("wizard.mail.from_name"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.from_name.$error&&e(l).sesConfig.from_name.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(o).from_name,"onUpdate:modelValue":a[9]||(a[9]=v=>e(o).from_name=v),modelModifiers:{trim:!0},invalid:e(l).sesConfig.from_name.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"name",onInput:a[10]||(a[10]=v=>e(l).sesConfig.from_name.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"])]),V("div",qa,[t($,{label:h.$t("wizard.mail.ses_key"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.mail_ses_key.$error&&e(l).sesConfig.mail_ses_key.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(o).mail_ses_key,"onUpdate:modelValue":a[11]||(a[11]=v=>e(o).mail_ses_key=v),modelModifiers:{trim:!0},invalid:e(l).sesConfig.mail_ses_key.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"mail_ses_key",onInput:a[12]||(a[12]=v=>e(l).sesConfig.mail_ses_key.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"]),t($,{label:h.$t("wizard.mail.ses_secret"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.mail_ses_secret.$error&&e(l).sesConfig.mail_ses_secret.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(o).mail_ses_secret,"onUpdate:modelValue":a[15]||(a[15]=v=>e(o).mail_ses_secret=v),modelModifiers:{trim:!0},invalid:e(l).sesConfig.mail_ses_secret.$error,type:h.getInputType,"content-loading":n.isFetchingInitialData,name:"mail_ses_secret",autocomplete:"off","data-lpignore":"true",onInput:a[16]||(a[16]=v=>e(l).sesConfig.mail_ses_secret.$touch())},{right:u(()=>[e(i)?(B(),F(p,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:a[13]||(a[13]=v=>Z(i)?i.value=!e(i):i=!e(i))})):(B(),F(p,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:a[14]||(a[14]=v=>Z(i)?i.value=!e(i):i=!e(i))}))]),_:1},8,["modelValue","invalid","type","content-loading"])]),_:1},8,["label","content-loading","error"])]),t(_,{loading:n.isSaving,disabled:n.isSaving,"content-loading":n.isFetchingInitialData,class:"mt-4"},{left:u(v=>[n.isSaving?E("",!0):(B(),F(p,{key:0,name:"SaveIcon",class:O(v.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(h.$t("general.save")),1)]),_:1},8,["loading","disabled","content-loading"])],40,wa)}}},Ca=["onSubmit"],Va={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},Da={class:"grid grid-cols-1 gap-4 mb-6 md:grid-cols-2"},be={props:{isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1}},emits:["submit-data","on-change-driver"],setup(n,{emit:q}){const{t:d}=G(),r=X(),i=z(()=>r.basicMailConfig);z(()=>r.mail_drivers),i.value.mail_driver="mail";const c=z(()=>({basicMailConfig:{mail_driver:{required:I.withMessage(d("validation.required"),D)},from_mail:{required:I.withMessage(d("validation.required"),D),email:I.withMessage(d("validation.email_incorrect"),H)},from_name:{required:I.withMessage(d("validation.required"),D)}}})),o=W(c,z(()=>r));function f(){return o.value.$touch(),o.value.$invalid||q("submit-data",r.basicMailConfig),!1}function l(){var m;o.value.basicMailConfig.mail_driver.$touch(),q("on-change-driver",(m=r==null?void 0:r.basicMailConfig)==null?void 0:m.mail_driver)}return(m,s)=>{const h=b("BaseMultiselect"),a=b("BaseInputGroup"),g=b("BaseInput"),$=b("BaseIcon"),C=b("BaseButton");return B(),k("form",{onSubmit:T(f,["prevent"])},[V("div",Va,[t(a,{label:m.$t("wizard.mail.driver"),"content-loading":n.isFetchingInitialData,error:e(o).basicMailConfig.mail_driver.$error&&e(o).basicMailConfig.mail_driver.$errors[0].$message,required:""},{default:u(()=>[t(h,{modelValue:e(i).mail_driver,"onUpdate:modelValue":[s[0]||(s[0]=p=>e(i).mail_driver=p),l],invalid:e(o).basicMailConfig.mail_driver.$error,options:e(r).mail_drivers,"can-deselect":!1,"content-loading":n.isFetchingInitialData},null,8,["modelValue","invalid","options","content-loading"])]),_:1},8,["label","content-loading","error"])]),V("div",Da,[t(a,{label:m.$t("wizard.mail.from_name"),"content-loading":n.isFetchingInitialData,error:e(o).basicMailConfig.from_name.$error&&e(o).basicMailConfig.from_name.$errors[0].$message,required:""},{default:u(()=>[t(g,{modelValue:e(i).from_name,"onUpdate:modelValue":s[1]||(s[1]=p=>e(i).from_name=p),modelModifiers:{trim:!0},invalid:e(o).basicMailConfig.from_name.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"name",onInput:s[2]||(s[2]=p=>e(o).basicMailConfig.from_name.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"]),t(a,{label:m.$t("wizard.mail.from_mail"),"content-loading":n.isFetchingInitialData,error:e(o).basicMailConfig.from_mail.$error&&e(o).basicMailConfig.from_mail.$errors[0].$message,required:""},{default:u(()=>[t(g,{modelValue:e(i).from_mail,"onUpdate:modelValue":s[3]||(s[3]=p=>e(i).from_mail=p),modelModifiers:{trim:!0},invalid:e(o).basicMailConfig.from_mail.$error,"content-loading":n.isFetchingInitialData,type:"text",onInput:s[4]||(s[4]=p=>e(o).basicMailConfig.from_mail.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"])]),t(C,{loading:n.isSaving,disabled:n.isSaving,"content-loading":n.isFetchingInitialData,class:"mt-4"},{left:u(p=>[n.isSaving?E("",!0):(B(),F($,{key:0,name:"SaveIcon",class:O(p.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(m.$t("general.save")),1)]),_:1},8,["loading","disabled","content-loading"])],40,Ca)}}},Sa={components:{Smtp:pa,Mailgun:$a,Ses:Ba,sendmail:be,Mail:be},emits:["next"],setup(n,{emit:q}){const d=M(!1),r=M(!1),i=X();i.mail_driver="mail",o();function c(l){i.mail_driver=l}async function o(){r.value=!0,await i.fetchMailDrivers(),r.value=!1}async function f(l){d.value=!0;let m=await i.updateMailConfig(l);d.value=!1,m.data.success&&await q("next",5)}return{mailDriverStore:i,isSaving:d,isFetchingInitialData:r,changeDriver:c,next:f}}};function Fa(n,q,d,r,i,c){const o=b("BaseWizardStep");return B(),F(o,{title:n.$t("wizard.mail.mail_config"),description:n.$t("wizard.mail.mail_config_desc")},{default:u(()=>[V("form",{action:"",onSubmit:q[1]||(q[1]=T((...f)=>r.next&&r.next(...f),["prevent"]))},[(B(),F(le(r.mailDriverStore.mail_driver),{"config-data":r.mailDriverStore.mailConfigData,"is-saving":r.isSaving,"is-fetching-initial-data":r.isFetchingInitialData,onOnChangeDriver:q[0]||(q[0]=f=>r.changeDriver(f)),onSubmitData:r.next},null,8,["config-data","is-saving","is-fetching-initial-data","onSubmitData"]))],32)]),_:1},8,["title","description"])}var Ma=se(Sa,[["render",Fa]]);const za=["onSubmit"],ka={class:"grid grid-cols-1 mb-4 md:grid-cols-2 md:mb-6"},Ua={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},Pa={class:"grid grid-cols-1 gap-4 mb-6 md:grid-cols-2"},Na={emits:["next"],setup(n,{emit:q}){let d=M(!1);const r=M(!1),i=M(!1);let c=M(""),o=M(null);const f=ve(),l=te(),{t:m}=G(),s=z(()=>f.userForm),h=z(()=>({userForm:{name:{required:I.withMessage(m("validation.required"),D)},email:{required:I.withMessage(m("validation.required"),D),email:I.withMessage(m("validation.email_incorrect"),H)},password:{required:I.withMessage(m("validation.required"),D),minLength:I.withMessage(m("validation.password_min_length",{count:8}),Ie(8))},confirm_password:{required:I.withMessage(m("validation.required"),qe(f.userForm.password)),sameAsPassword:I.withMessage(m("validation.password_incorrect"),Be(f.userForm.password))}}})),a=W(h,z(()=>f));function g(p,_){o.value=_}function $(){o.value=null}async function C(){if(a.value.userForm.$touch(),a.value.userForm.$invalid)return!0;d.value=!0;let p=await f.updateCurrentUser(s.value);if(d.value=!1,p.data.data){if(o.value){let v=new FormData;v.append("admin_avatar",o.value),await f.uploadAvatar(v)}const _=p.data.data.companies[0];await l.setSelectedCompany(_),q("next",6)}}return(p,_)=>{const v=b("BaseFileUploader"),w=b("BaseInputGroup"),y=b("BaseInput"),x=b("EyeOffIcon"),Y=b("EyeIcon"),J=b("BaseIcon"),K=b("BaseButton"),N=b("BaseWizardStep");return B(),F(N,{title:p.$t("wizard.account_info"),description:p.$t("wizard.account_info_desc")},{default:u(()=>[V("form",{action:"",onSubmit:T(C,["prevent"])},[V("div",ka,[t(w,{label:p.$tc("settings.account_settings.profile_picture")},{default:u(()=>[t(v,{avatar:!0,"preview-image":e(c),onChange:g,onRemove:$},null,8,["preview-image"])]),_:1},8,["label"])]),V("div",Ua,[t(w,{label:p.$t("wizard.name"),error:e(a).userForm.name.$error&&e(a).userForm.name.$errors[0].$message,required:""},{default:u(()=>[t(y,{modelValue:e(s).name,"onUpdate:modelValue":_[0]||(_[0]=S=>e(s).name=S),modelModifiers:{trim:!0},invalid:e(a).userForm.name.$error,type:"text",name:"name",onInput:_[1]||(_[1]=S=>e(a).userForm.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t(w,{label:p.$t("wizard.email"),error:e(a).userForm.email.$error&&e(a).userForm.email.$errors[0].$message,required:""},{default:u(()=>[t(y,{modelValue:e(s).email,"onUpdate:modelValue":_[2]||(_[2]=S=>e(s).email=S),modelModifiers:{trim:!0},invalid:e(a).userForm.email.$error,type:"text",name:"email",onInput:_[3]||(_[3]=S=>e(a).userForm.email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),V("div",Pa,[t(w,{label:p.$t("wizard.password"),error:e(a).userForm.password.$error&&e(a).userForm.password.$errors[0].$message,required:""},{default:u(()=>[t(y,{modelValue:e(s).password,"onUpdate:modelValue":_[6]||(_[6]=S=>e(s).password=S),modelModifiers:{trim:!0},invalid:e(a).userForm.password.$error,type:r.value?"text":"password",name:"password",onInput:_[7]||(_[7]=S=>e(a).userForm.password.$touch())},{right:u(()=>[r.value?(B(),F(x,{key:0,class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:_[4]||(_[4]=S=>r.value=!r.value)})):(B(),F(Y,{key:1,class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:_[5]||(_[5]=S=>r.value=!r.value)}))]),_:1},8,["modelValue","invalid","type"])]),_:1},8,["label","error"]),t(w,{label:p.$t("wizard.confirm_password"),error:e(a).userForm.confirm_password.$error&&e(a).userForm.confirm_password.$errors[0].$message,required:""},{default:u(()=>[t(y,{modelValue:e(s).confirm_password,"onUpdate:modelValue":_[10]||(_[10]=S=>e(s).confirm_password=S),modelModifiers:{trim:!0},invalid:e(a).userForm.confirm_password.$error,type:i.value?"text":"password",name:"confirm_password",onInput:_[11]||(_[11]=S=>e(a).userForm.confirm_password.$touch())},{right:u(()=>[i.value?(B(),F(J,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:_[8]||(_[8]=S=>i.value=!i.value)})):(B(),F(J,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:_[9]||(_[9]=S=>i.value=!i.value)}))]),_:1},8,["modelValue","invalid","type"])]),_:1},8,["label","error"])]),t(K,{loading:e(d),disabled:e(d),class:"mt-4"},{left:u(S=>[e(d)?E("",!0):(B(),F(J,{key:0,name:"SaveIcon",class:O(S.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(p.$t("wizard.save_cont")),1)]),_:1},8,["loading","disabled"])],40,za)]),_:1},8,["title","description"])}}},Ea=["onSubmit"],Ga={class:"grid grid-cols-1 mb-4 md:grid-cols-2 md:mb-6"},Oa={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},xa={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},La={class:"grid grid-cols-1 gap-4 mb-6 md:grid-cols-2"},Wa={emits:["next"],setup(n,{emit:q}){let d=M(!1),r=M(!1);const{t:i}=G();let c=M(null),o=M(null),f=M(null);const l=j({name:null,address:{address_street_1:"",address_street_2:"",website:"",country_id:null,state:"",city:"",phone:"",zip:""}}),m=te(),s=_e();Q(async()=>{d.value=!0,await s.fetchCountries(),d.value=!1});const h={companyForm:{name:{required:I.withMessage(i("validation.required"),D)},address:{country_id:{required:I.withMessage(i("validation.required"),D)},address_street_1:{maxLength:I.withMessage(i("validation.address_maxlength",{count:255}),ge(255))},address_street_2:{maxLength:I.withMessage(i("validation.address_maxlength",{count:255}),ge(255))}}}},a=W(h,{companyForm:l});function g(p,_,v,w){f.value=w.name,o.value=_}function $(){o.value=null}async function C(){if(a.value.companyForm.$touch(),a.value.$invalid)return!0;if(r.value=!0,m.updateCompany(l)){if(o.value){let _=new FormData;_.append("company_logo",JSON.stringify({name:f.value,data:o.value})),await m.updateCompanyLogo(_)}r.value=!1,q("next",7)}}return(p,_)=>{const v=b("BaseFileUploader"),w=b("BaseInputGroup"),y=b("BaseInput"),x=b("BaseMultiselect"),Y=b("BaseTextarea"),J=b("BaseIcon"),K=b("BaseButton"),N=b("BaseWizardStep");return B(),F(N,{title:p.$t("wizard.company_info"),description:p.$t("wizard.company_info_desc"),"step-container":"bg-white border border-gray-200 border-solid mb-8 md:w-full p-8 rounded w-full"},{default:u(()=>[V("form",{action:"",onSubmit:T(C,["prevent"])},[V("div",Ga,[t(w,{label:p.$tc("settings.company_info.company_logo")},{default:u(()=>[t(v,{base64:"","preview-image":e(c),onChange:g,onRemove:$},null,8,["preview-image"])]),_:1},8,["label"])]),V("div",Oa,[t(w,{label:p.$t("wizard.company_name"),error:e(a).companyForm.name.$error&&e(a).companyForm.name.$errors[0].$message,required:""},{default:u(()=>[t(y,{modelValue:e(l).name,"onUpdate:modelValue":_[0]||(_[0]=S=>e(l).name=S),modelModifiers:{trim:!0},invalid:e(a).companyForm.name.$error,type:"text",name:"name",onInput:_[1]||(_[1]=S=>e(a).companyForm.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t(w,{label:p.$t("wizard.country"),error:e(a).companyForm.address.country_id.$error&&e(a).companyForm.address.country_id.$errors[0].$message,"content-loading":e(d),required:""},{default:u(()=>[t(x,{modelValue:e(l).address.country_id,"onUpdate:modelValue":_[2]||(_[2]=S=>e(l).address.country_id=S),label:"name",invalid:e(a).companyForm.address.country_id.$error,options:e(s).countries,"value-prop":"id","can-deselect":!1,"can-clear":!1,"content-loading":e(d),placeholder:p.$t("general.select_country"),searchable:"","track-by":"name"},null,8,["modelValue","invalid","options","content-loading","placeholder"])]),_:1},8,["label","error","content-loading"])]),V("div",xa,[t(w,{label:p.$t("wizard.state")},{default:u(()=>[t(y,{modelValue:e(l).address.state,"onUpdate:modelValue":_[3]||(_[3]=S=>e(l).address.state=S),name:"state",type:"text"},null,8,["modelValue"])]),_:1},8,["label"]),t(w,{label:p.$t("wizard.city")},{default:u(()=>[t(y,{modelValue:e(l).address.city,"onUpdate:modelValue":_[4]||(_[4]=S=>e(l).address.city=S),name:"city",type:"text"},null,8,["modelValue"])]),_:1},8,["label"])]),V("div",La,[V("div",null,[t(w,{label:p.$t("wizard.address"),error:e(a).companyForm.address.address_street_1.$error&&e(a).companyForm.address.address_street_1.$errors[0].$message},{default:u(()=>[t(Y,{modelValue:e(l).address.address_street_1,"onUpdate:modelValue":_[5]||(_[5]=S=>e(l).address.address_street_1=S),modelModifiers:{trim:!0},invalid:e(a).companyForm.address.address_street_1.$error,placeholder:p.$t("general.street_1"),name:"billing_street1",rows:"2",onInput:_[6]||(_[6]=S=>e(a).companyForm.address.address_street_1.$touch())},null,8,["modelValue","invalid","placeholder"])]),_:1},8,["label","error"]),t(w,{error:e(a).companyForm.address.address_street_2.$error&&e(a).companyForm.address.address_street_2.$errors[0].$message,class:"mt-1 lg:mt-2 md:mt-2"},{default:u(()=>[t(Y,{modelValue:e(l).address.address_street_2,"onUpdate:modelValue":_[7]||(_[7]=S=>e(l).address.address_street_2=S),invalid:e(a).companyForm.address.address_street_2.$error,placeholder:p.$t("general.street_2"),name:"billing_street2",rows:"2",onInput:_[8]||(_[8]=S=>e(a).companyForm.address.address_street_2.$touch())},null,8,["modelValue","invalid","placeholder"])]),_:1},8,["error"])]),V("div",null,[t(w,{label:p.$t("wizard.zip_code")},{default:u(()=>[t(y,{modelValue:e(l).address.zip,"onUpdate:modelValue":_[9]||(_[9]=S=>e(l).address.zip=S),modelModifiers:{trim:!0},type:"text",name:"zip"},null,8,["modelValue"])]),_:1},8,["label"]),t(w,{label:p.$t("wizard.phone"),class:"mt-4"},{default:u(()=>[t(y,{modelValue:e(l).address.phone,"onUpdate:modelValue":_[10]||(_[10]=S=>e(l).address.phone=S),modelModifiers:{trim:!0},type:"text",name:"phone"},null,8,["modelValue"])]),_:1},8,["label"])])]),t(K,{loading:e(r),disabled:e(r),class:"mt-4"},{left:u(S=>[e(r)?E("",!0):(B(),F(J,{key:0,name:"SaveIcon",class:O(S.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(p.$t("wizard.save_cont")),1)]),_:1},8,["loading","disabled"])],40,Ea)]),_:1},8,["title","description"])}}},Ta=["onSubmit"],ja={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},Ra={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},Aa={class:"grid grid-cols-1 gap-4 mb-6 md:grid-cols-2"},Ya={emits:["next"],setup(n,{emit:q}){const d=M(!1);let r=M(!1),i=j({currency:1,language:"en",carbon_date_format:"d M Y",time_zone:"UTC",fiscal_year:"1-12"});const{tm:c,t:o}=G(),f=pe();r.value=!0,j([{title:c("settings.customization.invoices.allow"),value:"allow"},{title:c("settings.customization.invoices.disable_on_invoice_partial_paid"),value:"disable_on_invoice_partial_paid"},{title:c("settings.customization.invoices.disable_on_invoice_paid"),value:"disable_on_invoice_paid"},{title:c("settings.customization.invoices.disable_on_invoice_sent"),value:"disable_on_invoice_sent"}]);const l=fe(),m=_e(),s=te(),h=ve(),a=de();let g={key:"fiscal_years"},$={key:"languages"};r.value=!0,Promise.all([m.fetchCurrencies(),m.fetchDateFormats(),m.fetchTimeZones(),m.fetchCountries(),m.fetchConfig(g),m.fetchConfig($)]).then(([v])=>{r.value=!1});const C=z(()=>({currentPreferences:{currency:{required:I.withMessage(o("validation.required"),D)},language:{required:I.withMessage(o("validation.required"),D)},carbon_date_format:{required:I.withMessage(o("validation.required"),D)},time_zone:{required:I.withMessage(o("validation.required"),D)},fiscal_year:{required:I.withMessage(o("validation.required"),D)}}})),p=W(C,{currentPreferences:i});async function _(){if(p.value.currentPreferences.$touch(),p.value.$invalid)return!0;l.openDialog({title:o("general.do_you_wish_to_continue"),message:o("wizard.currency_set_alert"),yesLabel:o("general.ok"),noLabel:o("general.cancel"),variant:"danger",size:"lg",hideNoButton:!1}).then(async v=>{if(v){let w={settings:ce({},i)};d.value=!0,delete w.settings.discount_per_item;let y=await s.updateCompanySettings({data:w});if(y.data){d.value=!1;let x={settings:{language:i.language}};(await h.updateUserSettings(x)).data&&(q("next","COMPLETED"),a.showNotification({type:"success",message:"Login Successful"}),f.push("/admin/dashboard")),Ce.set("auth.token",y.data.token)}return!0}return d.value=!1,!0})}return(v,w)=>{const y=b("BaseMultiselect"),x=b("BaseInputGroup"),Y=b("BaseIcon"),J=b("BaseButton"),K=b("BaseWizardStep");return B(),F(K,{title:v.$t("wizard.preferences"),description:v.$t("wizard.preferences_desc"),"step-container":"bg-white border border-gray-200 border-solid mb-8 md:w-full p-8 rounded w-full"},{default:u(()=>[V("form",{action:"",onSubmit:T(_,["prevent"])},[V("div",null,[V("div",ja,[t(x,{label:v.$t("wizard.currency"),error:e(p).currentPreferences.currency.$error&&e(p).currentPreferences.currency.$errors[0].$message,"content-loading":e(r),required:""},{default:u(()=>[t(y,{modelValue:e(i).currency,"onUpdate:modelValue":w[0]||(w[0]=N=>e(i).currency=N),"content-loading":e(r),options:e(m).currencies,label:"name","value-prop":"id",searchable:!0,"track-by":"name",placeholder:v.$tc("settings.currencies.select_currency"),invalid:e(p).currentPreferences.currency.$error,class:"w-full"},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","error","content-loading"]),t(x,{label:v.$t("settings.preferences.default_language"),error:e(p).currentPreferences.language.$error&&e(p).currentPreferences.language.$errors[0].$message,"content-loading":e(r),required:""},{default:u(()=>[t(y,{modelValue:e(i).language,"onUpdate:modelValue":w[1]||(w[1]=N=>e(i).language=N),"content-loading":e(r),options:e(m).languages,label:"name","value-prop":"code",placeholder:v.$tc("settings.preferences.select_language"),class:"w-full","track-by":"code",searchable:!0,invalid:e(p).currentPreferences.language.$error},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","error","content-loading"])]),V("div",Ra,[t(x,{label:v.$t("wizard.date_format"),error:e(p).currentPreferences.carbon_date_format.$error&&e(p).currentPreferences.carbon_date_format.$errors[0].$message,"content-loading":e(r),required:""},{default:u(()=>[t(y,{modelValue:e(i).carbon_date_format,"onUpdate:modelValue":w[2]||(w[2]=N=>e(i).carbon_date_format=N),"content-loading":e(r),options:e(m).dateFormats,label:"display_date","value-prop":"carbon_format_value",placeholder:v.$tc("settings.preferences.select_date_format"),"track-by":"display_date",searchable:"",invalid:e(p).currentPreferences.carbon_date_format.$error,class:"w-full"},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","error","content-loading"]),t(x,{label:v.$t("wizard.time_zone"),error:e(p).currentPreferences.time_zone.$error&&e(p).currentPreferences.time_zone.$errors[0].$message,"content-loading":e(r),required:""},{default:u(()=>[t(y,{modelValue:e(i).time_zone,"onUpdate:modelValue":w[3]||(w[3]=N=>e(i).time_zone=N),"content-loading":e(r),options:e(m).timeZones,label:"key","value-prop":"value",placeholder:v.$tc("settings.preferences.select_time_zone"),"track-by":"value",searchable:!0,invalid:e(p).currentPreferences.time_zone.$error},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","error","content-loading"])]),V("div",Aa,[t(x,{label:v.$t("wizard.fiscal_year"),error:e(p).currentPreferences.fiscal_year.$error&&e(p).currentPreferences.fiscal_year.$errors[0].$message,"content-loading":e(r),required:""},{default:u(()=>[t(y,{modelValue:e(i).fiscal_year,"onUpdate:modelValue":w[4]||(w[4]=N=>e(i).fiscal_year=N),"content-loading":e(r),options:e(m).fiscalYears,label:"key","value-prop":"value",placeholder:v.$tc("settings.preferences.select_financial_year"),invalid:e(p).currentPreferences.fiscal_year.$error,"track-by":"key",searchable:!0,class:"w-full"},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","error","content-loading"])]),t(J,{loading:d.value,disabled:d.value,"content-loading":e(r),class:"mt-4"},{left:u(N=>[t(Y,{name:"SaveIcon",class:O(N.class)},null,8,["class"])]),default:u(()=>[P(" "+U(v.$t("wizard.save_cont")),1)]),_:1},8,["loading","disabled","content-loading"])])],40,Ta)]),_:1},8,["title","description"])}}};var Ja="/build/img/crater-logo.png";const Za={components:{step_1:Oe,step_2:Ae,step_3:ia,step_4:sa,step_5:Ma,step_6:Na,step_7:Wa,step_8:Ya},setup(){let n=M("step_1"),q=M(1);const d=pe(),r=A();i();async function i(){let l=await r.fetchInstallationStep();if(l.data.profile_complete==="COMPLETED"){d.push("/admin/dashboard");return}let m=parseInt(l.data.profile_complete);m&&(q.value=m+1,n.value=`step_${m+1}`)}async function c(l){var s,h;let m={profile_complete:l};try{return await r.addInstallationStep(m),!0}catch(a){return((h=(s=a==null?void 0:a.response)==null?void 0:s.data)==null?void 0:h.message)==="The MAC is invalid."&&window.location.reload(),!1}}async function o(l){if(l&&!await c(l))return!1;q.value++,q.value<=8&&(n.value="step_"+q.value)}function f(l){}return{stepComponent:n,currentStepNumber:q,onStepChange:o,saveStepProgress:c,onNavClick:f}}},Ka={class:"flex flex-col items-center justify-between w-full pt-10"},Qa=V("img",{id:"logo-crater",src:Ja,alt:"Crater Logo",class:"h-12 mb-5 md:mb-10"},null,-1);function Ha(n,q,d,r,i,c){const o=b("BaseWizard");return B(),k("div",Ka,[Qa,t(o,{steps:7,"current-step":r.currentStepNumber,onClick:r.onNavClick},{default:u(()=>[(B(),F(le(r.stepComponent),{onNext:r.onStepChange},null,8,["onNext"]))]),_:1},8,["current-step","onClick"])])}var nt=se(Za,[["render",Ha]]);export{nt as default}; +var $e=Object.defineProperty;var ue=Object.getOwnPropertySymbols;var we=Object.prototype.hasOwnProperty,he=Object.prototype.propertyIsEnumerable;var me=(n,q,d)=>q in n?$e(n,q,{enumerable:!0,configurable:!0,writable:!0,value:d}):n[q]=d,ce=(n,q)=>{for(var d in q||(q={}))we.call(q,d)&&me(n,d,q[d]);if(ue)for(var d of ue(q))he.call(q,d)&&me(n,d,q[d]);return n};import{a as L,d as ye,B as M,k as z,r as b,o as B,l as F,w as u,h as V,e as k,t as U,i as P,j as E,F as ne,y as ie,u as e,f as t,m as O,J as G,D as Q,q as oe,ag as re,a0 as j,ah as ee,L as I,M as D,aT as ae,T as W,U as T,aj as le,Q as H,x as Z,N as Ie,O as qe,P as Be,S as ge,aN as pe}from"./vendor.01d0adc5.js";import{h as R,b as te,j as fe,_ as se,u as de,e as ve,d as _e,L as Ce}from"./main.24f7a84b.js";import{u as X}from"./mail-driver.69202299.js";const A=(n=!1)=>{const q=n?window.pinia.defineStore:ye,d=te();return q({id:"installation",state:()=>({currentDataBaseData:{database_connection:"mysql",database_hostname:"127.0.0.1",database_port:"3306",database_name:null,database_username:null,database_password:null,app_url:window.location.origin}}),actions:{fetchInstallationRequirements(){return new Promise((r,i)=>{L.get("/api/v1/installation/requirements").then(c=>{r(c)}).catch(c=>{R(c),i(c)})})},fetchInstallationStep(){return new Promise((r,i)=>{L.get("/api/v1/installation/wizard-step").then(c=>{r(c)}).catch(c=>{R(c),i(c)})})},addInstallationStep(r){return new Promise((i,c)=>{L.post("/api/v1/installation/wizard-step",r).then(o=>{i(o)}).catch(o=>{R(o),c(o)})})},fetchInstallationPermissions(){return new Promise((r,i)=>{L.get("/api/v1/installation/permissions").then(c=>{r(c)}).catch(c=>{R(c),i(c)})})},fetchInstallationDatabase(r){return new Promise((i,c)=>{L.get("/api/v1/installation/database/config",{params:r}).then(o=>{i(o)}).catch(o=>{R(o),c(o)})})},addInstallationDatabase(r){return new Promise((i,c)=>{L.post("/api/v1/installation/database/config",r).then(o=>{i(o)}).catch(o=>{R(o),c(o)})})},addInstallationFinish(){return new Promise((r,i)=>{L.post("/api/v1/installation/finish").then(c=>{r(c)}).catch(c=>{R(c),i(c)})})},setInstallationDomain(r){return new Promise((i,c)=>{L.put("/api/v1/installation/set-domain",r).then(o=>{i(o)}).catch(o=>{R(o),c(o)})})},installationLogin(){return new Promise((r,i)=>{L.get("/sanctum/csrf-cookie").then(c=>{c&&L.post("/api/v1/installation/login").then(o=>{d.setSelectedCompany(o.data.company),r(o)}).catch(o=>{R(o),i(o)})})})},checkAutheticated(){return new Promise((r,i)=>{L.get("/api/v1/auth/check").then(c=>{r(c)}).catch(c=>{i(c)})})}}})()},Ve={class:"w-full md:w-2/3"},De={class:"mb-6"},Se={key:0,class:"grid grid-flow-row grid-cols-3 p-3 border border-gray-200 lg:gap-24 sm:gap-4"},Fe={class:"col-span-2 text-sm"},Me={class:"text-right"},ze={key:0,class:"inline-block w-4 h-4 ml-3 mr-2 bg-green-500 rounded-full"},ke={key:1,class:"inline-block w-4 h-4 ml-3 mr-2 bg-red-500 rounded-full"},Ue={key:1},Pe={class:"col-span-2 text-sm"},Ne={class:"text-right"},Ee={key:0,class:"inline-block w-4 h-4 ml-3 mr-2 bg-green-500 rounded-full"},Ge={key:1,class:"inline-block w-4 h-4 ml-3 mr-2 bg-red-500 rounded-full"},Oe={emits:["next"],setup(n,{emit:q}){const d=M(""),r=M(""),i=M(!1);M(!0);const c=A(),o=z(()=>{if(d.value){let m=!0;for(const s in d.value)return d.value[s]||(m=!1),d.value&&r.value.supported&&m}return!1});async function f(){var s,h,a,g;i.value=!0;const m=await c.fetchInstallationRequirements();m.data&&(d.value=(a=(h=(s=m==null?void 0:m.data)==null?void 0:s.requirements)==null?void 0:h.requirements)==null?void 0:a.php,r.value=(g=m==null?void 0:m.data)==null?void 0:g.phpSupportInfo)}function l(){i.value=!0,q("next"),i.value=!1}return(m,s)=>{const h=b("BaseIcon"),a=b("BaseButton"),g=b("BaseWizardStep");return B(),F(g,{title:m.$t("wizard.req.system_req"),description:m.$t("wizard.req.system_req_desc")},{default:u(()=>[V("div",Ve,[V("div",De,[r.value?(B(),k("div",Se,[V("div",Fe,U(m.$t("wizard.req.php_req_version",{version:r.value.minimum})),1),V("div",Me,[P(U(r.value.current)+" ",1),r.value.supported?(B(),k("span",ze)):(B(),k("span",ke))])])):E("",!0),d.value?(B(),k("div",Ue,[(B(!0),k(ne,null,ie(d.value,($,C)=>(B(),k("div",{key:C,class:"grid grid-flow-row grid-cols-3 p-3 border border-gray-200 lg:gap-24 sm:gap-4"},[V("div",Pe,U(C),1),V("div",Ne,[$?(B(),k("span",Ee)):(B(),k("span",Ge))])]))),128))])):E("",!0)]),e(o)?(B(),F(a,{key:0,onClick:l},{left:u($=>[t(h,{name:"ArrowRightIcon",class:O($.class)},null,8,["class"])]),default:u(()=>[P(U(m.$t("wizard.continue"))+" ",1)]),_:1})):E("",!0),d.value?E("",!0):(B(),F(a,{key:1,loading:i.value,disabled:i.value,onClick:f},{default:u(()=>[P(U(m.$t("wizard.req.check_req")),1)]),_:1},8,["loading","disabled"]))])]),_:1},8,["title","description"])}}},xe={key:1,class:"relative"},Le={class:"grid grid-flow-row grid-cols-3 lg:gap-24 sm:gap-4"},We={class:"col-span-2 p-3"},Te={class:"p-3 text-right"},je={key:0,class:"inline-block w-4 h-4 ml-3 mr-2 rounded-full bg-green-500"},Re={key:1,class:"inline-block w-4 h-4 ml-3 mr-2 rounded-full bg-red-500"},Ae={emits:["next"],setup(n,{emit:q}){let d=M(!1),r=M(!1),i=M([]);const{tm:c,t:o}=G(),f=A(),l=fe();Q(()=>{m()});async function m(){d.value=!0;const h=await f.fetchInstallationPermissions();i.value=h.data.permissions.permissions,h.data&&h.data.permissions.errors&&setTimeout(()=>{l.openDialog({title:c("wizard.permissions.permission_confirm_title"),message:o("wizard.permissions.permission_confirm_desc"),yesLabel:"OK",noLabel:"Cancel",variant:"danger",hideNoButton:!1,size:"lg"}).then(a=>{a.data&&(d.value=!1)})},500),d.value=!1}function s(){r.value=!0,q("next"),r.value=!1}return(h,a)=>{const g=b("BaseContentPlaceholdersText"),$=b("BaseContentPlaceholdersBox"),C=b("BaseContentPlaceholders"),p=b("BaseIcon"),_=b("BaseButton"),v=b("BaseWizardStep");return B(),F(v,{title:h.$t("wizard.permissions.permissions"),description:h.$t("wizard.permissions.permission_desc")},{default:u(()=>[e(d)?(B(),F(C,{key:0},{default:u(()=>[(B(),k(ne,null,ie(3,(w,y)=>V("div",{key:y,class:"grid grid-flow-row grid-cols-3 lg:gap-24 sm:gap-4 border border-gray-200"},[t(g,{lines:1,class:"col-span-4 p-3"})])),64)),t($,{rounded:!0,class:"mt-10",style:{width:"96px",height:"42px"}})]),_:1})):(B(),k("div",xe,[(B(!0),k(ne,null,ie(e(i),(w,y)=>(B(),k("div",{key:y,class:"border border-gray-200"},[V("div",Le,[V("div",We,U(w.folder),1),V("div",Te,[w.isSet?(B(),k("span",je)):(B(),k("span",Re)),V("span",null,U(w.permission),1)])])]))),128)),oe(t(_,{class:"mt-10",loading:e(r),disabled:e(r),onClick:s},{left:u(w=>[t(p,{name:"ArrowRightIcon",class:O(w.class)},null,8,["class"])]),default:u(()=>[P(" "+U(h.$t("wizard.continue")),1)]),_:1},8,["loading","disabled"]),[[re,!e(d)]])]))]),_:1},8,["title","description"])}}},Ye=["onSubmit"],Je={class:"grid grid-cols-1 gap-5 md:grid-cols-2 lg:mb-6 md:mb-6"},Ze={props:{configData:{type:Object,require:!0,default:Object},isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,default:!1}},emits:["submit-data","on-change-driver"],setup(n,{emit:q}){const d=n,r=j(["sqlite","mysql","pgsql"]),{t:i}=G(),c=ee("utils"),o=A();Q(()=>{for(const g in f.value)d.configData.hasOwnProperty(g)&&(f.value[g]=d.configData[g])});const f=z(()=>o.currentDataBaseData),l=g=>c.checkValidUrl(g),m={database_connection:{required:I.withMessage(i("validation.required"),D)},database_hostname:{required:I.withMessage(i("validation.required"),D)},database_port:{required:I.withMessage(i("validation.required"),D),numeric:ae},database_name:{required:I.withMessage(i("validation.required"),D)},database_username:{required:I.withMessage(i("validation.required"),D)},app_url:{required:I.withMessage(i("validation.required"),D),isUrl:I.withMessage(i("validation.invalid_url"),l)}},s=W(m,f.value);function h(){if(s.value.$touch(),s.value.$invalid)return!0;q("submit-data",f.value)}function a(){s.value.database_connection.$touch(),q("on-change-driver",f.value.database_connection)}return(g,$)=>{const C=b("BaseInput"),p=b("BaseInputGroup"),_=b("BaseMultiselect"),v=b("BaseIcon"),w=b("BaseButton");return B(),k("form",{action:"",onSubmit:T(h,["prevent"])},[V("div",Je,[t(p,{label:g.$t("wizard.database.app_url"),error:e(s).app_url.$error&&e(s).app_url.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).app_url,"onUpdate:modelValue":$[0]||($[0]=y=>e(f).app_url=y),invalid:e(s).app_url.$error,type:"text"},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t(p,{label:g.$t("wizard.database.connection"),error:e(s).database_connection.$error&&e(s).database_connection.$errors[0].$message,required:""},{default:u(()=>[t(_,{modelValue:e(f).database_connection,"onUpdate:modelValue":[$[1]||($[1]=y=>e(f).database_connection=y),a],invalid:e(s).database_connection.$error,options:e(r),"can-deselect":!1,"can-clear":!1},null,8,["modelValue","invalid","options"])]),_:1},8,["label","error"]),t(p,{label:g.$t("wizard.database.port"),error:e(s).database_port.$error&&e(s).database_port.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_port,"onUpdate:modelValue":$[2]||($[2]=y=>e(f).database_port=y),invalid:e(s).database_port.$error},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t(p,{label:g.$t("wizard.database.db_name"),error:e(s).database_name.$error&&e(s).database_name.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_name,"onUpdate:modelValue":$[3]||($[3]=y=>e(f).database_name=y),invalid:e(s).database_name.$error},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t(p,{label:g.$t("wizard.database.username"),error:e(s).database_username.$error&&e(s).database_username.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_username,"onUpdate:modelValue":$[4]||($[4]=y=>e(f).database_username=y),invalid:e(s).database_username.$error},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t(p,{label:g.$t("wizard.database.password")},{default:u(()=>[t(C,{modelValue:e(f).database_password,"onUpdate:modelValue":$[5]||($[5]=y=>e(f).database_password=y),type:"password"},null,8,["modelValue"])]),_:1},8,["label"]),t(p,{label:g.$t("wizard.database.host"),error:e(s).database_hostname.$error&&e(s).database_hostname.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_hostname,"onUpdate:modelValue":$[6]||($[6]=y=>e(f).database_hostname=y),invalid:e(s).database_hostname.$error},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),t(w,{type:"submit",class:"mt-4",loading:n.isSaving,disabled:n.isSaving},{left:u(y=>[n.isSaving?E("",!0):(B(),F(v,{key:0,name:"SaveIcon",class:O(y.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(g.$t("wizard.save_cont")),1)]),_:1},8,["loading","disabled"])],40,Ye)}}},Ke=["onSubmit"],Qe={class:"grid grid-cols-1 gap-5 md:grid-cols-2 lg:mb-6 md:mb-6"},He={props:{configData:{type:Object,require:!0,default:Object},isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1}},emits:["submit-data","on-change-driver"],setup(n,{emit:q}){const d=n,r=j(["sqlite","mysql","pgsql"]),{t:i}=G(),c=ee("utils"),o=A(),f=z(()=>o.currentDataBaseData);Q(()=>{for(const g in f.value)d.configData.hasOwnProperty(g)&&(f.value[g]=d.configData[g])});const l=g=>c.checkValidUrl(g),m={database_connection:{required:I.withMessage(i("validation.required"),D)},database_hostname:{required:I.withMessage(i("validation.required"),D)},database_port:{required:I.withMessage(i("validation.required"),D),numeric:ae},database_name:{required:I.withMessage(i("validation.required"),D)},database_username:{required:I.withMessage(i("validation.required"),D)},app_url:{required:I.withMessage(i("validation.required"),D),isUrl:I.withMessage(i("validation.invalid_url"),l)}},s=W(m,f.value);function h(){if(s.value.$touch(),s.value.$invalid)return!0;q("submit-data",f.value)}function a(){s.value.database_connection.$touch(),q("on-change-driver",f.value.database_connection)}return(g,$)=>{const C=b("BaseInput"),p=b("BaseInputGroup"),_=b("BaseMultiselect"),v=b("BaseIcon"),w=b("BaseButton");return B(),k("form",{action:"",onSubmit:T(h,["prevent"])},[V("div",Qe,[t(p,{label:g.$t("wizard.database.app_url"),"content-loading":n.isFetchingInitialData,error:e(s).app_url.$error&&e(s).app_url.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).app_url,"onUpdate:modelValue":$[0]||($[0]=y=>e(f).app_url=y),"content-loading":n.isFetchingInitialData,invalid:e(s).app_url.$error,type:"text"},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),t(p,{label:g.$t("wizard.database.connection"),"content-loading":n.isFetchingInitialData,error:e(s).database_connection.$error&&e(s).database_connection.$errors[0].$message,required:""},{default:u(()=>[t(_,{modelValue:e(f).database_connection,"onUpdate:modelValue":[$[1]||($[1]=y=>e(f).database_connection=y),a],"content-loading":n.isFetchingInitialData,invalid:e(s).database_connection.$error,options:e(r),"can-deselect":!1,"can-clear":!1},null,8,["modelValue","content-loading","invalid","options"])]),_:1},8,["label","content-loading","error"]),t(p,{label:g.$t("wizard.database.port"),"content-loading":n.isFetchingInitialData,error:e(s).database_port.$error&&e(s).database_port.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_port,"onUpdate:modelValue":$[2]||($[2]=y=>e(f).database_port=y),"content-loading":n.isFetchingInitialData,invalid:e(s).database_port.$error},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),t(p,{label:g.$t("wizard.database.db_name"),"content-loading":n.isFetchingInitialData,error:e(s).database_name.$error&&e(s).database_name.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_name,"onUpdate:modelValue":$[3]||($[3]=y=>e(f).database_name=y),"content-loading":n.isFetchingInitialData,invalid:e(s).database_name.$error},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),t(p,{label:g.$t("wizard.database.username"),"content-loading":n.isFetchingInitialData,error:e(s).database_username.$error&&e(s).database_username.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_username,"onUpdate:modelValue":$[4]||($[4]=y=>e(f).database_username=y),"content-loading":n.isFetchingInitialData,invalid:e(s).database_username.$error},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),t(p,{"content-loading":n.isFetchingInitialData,label:g.$t("wizard.database.password")},{default:u(()=>[t(C,{modelValue:e(f).database_password,"onUpdate:modelValue":$[5]||($[5]=y=>e(f).database_password=y),"content-loading":n.isFetchingInitialData,type:"password"},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"]),t(p,{label:g.$t("wizard.database.host"),"content-loading":n.isFetchingInitialData,error:e(s).database_hostname.$error&&e(s).database_hostname.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_hostname,"onUpdate:modelValue":$[6]||($[6]=y=>e(f).database_hostname=y),"content-loading":n.isFetchingInitialData,invalid:e(s).database_hostname.$error},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"])]),oe(t(w,{"content-loading":n.isFetchingInitialData,type:"submit",class:"mt-4",loading:n.isSaving,disabled:n.isSaving},{left:u(y=>[n.isSaving?E("",!0):(B(),F(v,{key:0,name:"SaveIcon",class:O(y.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(g.$t("wizard.save_cont")),1)]),_:1},8,["content-loading","loading","disabled"]),[[re,!n.isFetchingInitialData]])],40,Ke)}}},Xe=["onSubmit"],ea={class:"grid grid-cols-1 gap-5 md:grid-cols-2 lg:mb-6 md:mb-6"},aa={props:{configData:{type:Object,require:!0,default:Object},isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1}},emits:["submit-data","on-change-driver"],setup(n,{emit:q}){const d=n,r=j(["sqlite","mysql","pgsql"]),{t:i}=G(),c=ee("utils"),o=A(),f=z(()=>o.currentDataBaseData);Q(()=>{for(const g in f.value)d.configData.hasOwnProperty(g)&&(f.value[g]=d.configData[g])});const l=g=>c.checkValidUrl(g),m={database_connection:{required:I.withMessage(i("validation.required"),D)},database_name:{required:I.withMessage(i("validation.required"),D)},app_url:{required:I.withMessage(i("validation.required"),D),isUrl:I.withMessage(i("validation.invalid_url"),l)}},s=W(m,f.value);function h(){if(s.value.$touch(),s.value.$invalid)return!0;q("submit-data",f.value)}function a(){s.value.database_connection.$touch(),q("on-change-driver",f.value.database_connection)}return(g,$)=>{const C=b("BaseInput"),p=b("BaseInputGroup"),_=b("BaseMultiselect"),v=b("BaseIcon"),w=b("BaseButton");return B(),k("form",{action:"",onSubmit:T(h,["prevent"])},[V("div",ea,[t(p,{label:g.$t("wizard.database.app_url"),"content-loading":n.isFetchingInitialData,error:e(s).app_url.$error&&e(s).app_url.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(f).app_url,"onUpdate:modelValue":$[0]||($[0]=y=>e(f).app_url=y),"content-loading":n.isFetchingInitialData,invalid:e(s).app_url.$error,type:"text"},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),t(p,{label:g.$t("wizard.database.connection"),"content-loading":n.isFetchingInitialData,error:e(s).database_connection.$error&&e(s).database_connection.$errors[0].$message,required:""},{default:u(()=>[t(_,{modelValue:e(f).database_connection,"onUpdate:modelValue":[$[1]||($[1]=y=>e(f).database_connection=y),a],"content-loading":n.isFetchingInitialData,invalid:e(s).database_connection.$error,options:e(r),"can-deselect":!1,"can-clear":!1},null,8,["modelValue","content-loading","invalid","options"])]),_:1},8,["label","content-loading","error"]),t(p,{label:g.$t("wizard.database.db_path"),error:e(s).database_name.$error&&e(s).database_name.$errors[0].$message,"content-loading":n.isFetchingInitialData,required:""},{default:u(()=>[t(C,{modelValue:e(f).database_name,"onUpdate:modelValue":$[2]||($[2]=y=>e(f).database_name=y),"content-loading":n.isFetchingInitialData,invalid:e(s).database_name.$error},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","error","content-loading"])]),oe(t(w,{"content-loading":n.isFetchingInitialData,type:"submit",class:"mt-4",loading:n.isSaving,disabled:n.isSaving},{left:u(y=>[n.isSaving?E("",!0):(B(),F(v,{key:0,name:"SaveIcon",class:O(y.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(g.$t("wizard.save_cont")),1)]),_:1},8,["content-loading","loading","disabled"]),[[re,!n.isFetchingInitialData]])],40,Xe)}}},ta={components:{Mysql:Ze,Pgsql:He,Sqlite:aa},emits:["next"],setup(n,{emit:q}){const d=M("mysql"),r=M(!1),{t:i}=G(),c=de(),o=A(),f=z(()=>o.currentDataBaseData);async function l(s){let h={connection:s};const a=await o.fetchInstallationDatabase(h);a.data.success&&(f.value.database_connection=a.data.config.database_connection),s==="sqlite"?f.value.database_name=a.data.config.database_name:f.value.database_name=null}async function m(s){r.value=!0;try{let h=await o.addInstallationDatabase(s);if(r.value=!1,h.data.success){await o.addInstallationFinish(),q("next",3),c.showNotification({type:"success",message:i("wizard.success."+h.data.success)});return}else if(h.data.error){if(h.data.requirement){c.showNotification({type:"error",message:i("wizard.errors."+h.data.error,{version:h.data.requirement.minimum,name:s.value.database_connection})});return}c.showNotification({type:"error",message:i("wizard.errors."+h.data.error)})}else h.data.errors?c.showNotification({type:"error",message:h.data.errors[0]}):h.data.error_message&&c.showNotification({type:"error",message:h.data.error_message})}catch{c.showNotification({type:"error",message:i("validation.something_went_wrong")}),r.value=!1}finally{r.value=!1}}return{databaseData:f,database_connection:d,isSaving:r,getDatabaseConfig:l,next:m}}};function na(n,q,d,r,i,c){const o=b("BaseWizardStep");return B(),F(o,{title:n.$t("wizard.database.database"),description:n.$t("wizard.database.desc"),"step-container":"w-full p-8 mb-8 bg-white border border-gray-200 border-solid rounded md:w-full"},{default:u(()=>[(B(),F(le(r.databaseData.database_connection),{"config-data":r.databaseData,"is-saving":r.isSaving,onOnChangeDriver:r.getDatabaseConfig,onSubmitData:r.next},null,8,["config-data","is-saving","onOnChangeDriver","onSubmitData"]))]),_:1},8,["title","description"])}var ia=se(ta,[["render",na]]);const oa={class:"w-full md:w-2/3"},ra=V("p",{class:"mt-4 mb-0 text-sm text-gray-600"},"Notes:",-1),la=V("ul",{class:"w-full text-gray-600 list-disc list-inside"},[V("li",{class:"text-sm leading-8"},[P(" App domain should not contain "),V("b",{class:"inline-block px-1 bg-gray-100 rounded-sm"},"https://"),P(" or "),V("b",{class:"inline-block px-1 bg-gray-100 rounded-sm"},"http"),P(" in front of the domain. ")]),V("li",{class:"text-sm leading-8"},[P(" If you're accessing the website on a different port, please mention the port. For example: "),V("b",{class:"inline-block px-1 bg-gray-100"},"localhost:8080")])],-1),sa={emits:["next"],setup(n,{emit:q}){const d=j({app_domain:window.location.origin.replace(/(^\w+:|^)\/\//,"")}),r=M(!1),{t:i}=G(),c=ee("utils"),o=a=>c.checkValidDomainUrl(a),f=A(),l=de(),m={app_domain:{required:I.withMessage(i("validation.required"),D),isUrl:I.withMessage(i("validation.invalid_domain_url"),o)}},s=W(m,z(()=>d));async function h(){if(s.value.$touch(),s.value.$invalid)return!0;r.value=!0;try{await f.setInstallationDomain(d),await f.installationLogin(),(await f.checkAutheticated()).data&&q("next",4),r.value=!1}catch{l.showNotification({type:"error",message:i("wizard.verify_domain.failed")}),r.value=!1}}return(a,g)=>{const $=b("BaseInput"),C=b("BaseInputGroup"),p=b("BaseButton"),_=b("BaseWizardStep");return B(),F(_,{title:a.$t("wizard.verify_domain.title"),description:a.$t("wizard.verify_domain.desc")},{default:u(()=>[V("div",oa,[t(C,{label:a.$t("wizard.verify_domain.app_domain"),error:e(s).app_domain.$error&&e(s).app_domain.$errors[0].$message,required:""},{default:u(()=>[t($,{modelValue:e(d).app_domain,"onUpdate:modelValue":g[0]||(g[0]=v=>e(d).app_domain=v),invalid:e(s).app_domain.$error,type:"text",onInput:g[1]||(g[1]=v=>e(s).app_domain.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),ra,la,t(p,{loading:r.value,disabled:r.value,class:"mt-8",onClick:h},{default:u(()=>[P(U(a.$t("wizard.verify_domain.verify_now")),1)]),_:1},8,["loading","disabled"])]),_:1},8,["title","description"])}}},da=["onSubmit"],ua={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},ma={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},ca={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},ga={class:"grid grid-cols-1 gap-4 mb-6 md:grid-cols-2"},pa={props:{isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1}},emits:["submit-data","on-change-driver"],setup(n,{emit:q}){let d=M(!1);const r=j(["tls","ssl","starttls"]),{t:i}=G(),c=X(),o=z(()=>c.smtpConfig),f=z(()=>d.value?"text":"password");o.value.mail_driver="smtp";const l=z(()=>({smtpConfig:{mail_driver:{required:I.withMessage(i("validation.required"),D)},mail_host:{required:I.withMessage(i("validation.required"),D)},mail_port:{required:I.withMessage(i("validation.required"),D),numeric:I.withMessage(i("validation.numbers_only"),ae)},mail_encryption:{required:I.withMessage(i("validation.required"),D)},from_mail:{required:I.withMessage(i("validation.required"),D),email:I.withMessage(i("validation.email_incorrect"),H)},from_name:{required:I.withMessage(i("validation.required"),D)}}})),m=W(l,z(()=>c));async function s(){return m.value.$touch(),m.value.$invalid||q("submit-data",c.smtpConfig),!1}function h(){m.value.smtpConfig.mail_driver.$touch(),q("on-change-driver",c.smtpConfig.mail_driver)}return(a,g)=>{const $=b("BaseMultiselect"),C=b("BaseInputGroup"),p=b("BaseInput"),_=b("BaseIcon"),v=b("BaseButton");return B(),k("form",{onSubmit:T(s,["prevent"])},[V("div",ua,[t(C,{label:a.$t("wizard.mail.driver"),"content-loading":n.isFetchingInitialData,error:e(m).smtpConfig.mail_driver.$error&&e(m).smtpConfig.mail_driver.$errors[0].$message,required:""},{default:u(()=>[t($,{modelValue:e(o).mail_driver,"onUpdate:modelValue":[g[0]||(g[0]=w=>e(o).mail_driver=w),h],options:e(c).mail_drivers,"can-deselect":!1,"content-loading":n.isFetchingInitialData,invalid:e(m).smtpConfig.mail_driver.$error},null,8,["modelValue","options","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),t(C,{label:a.$t("wizard.mail.host"),"content-loading":n.isFetchingInitialData,error:e(m).smtpConfig.mail_host.$error&&e(m).smtpConfig.mail_host.$errors[0].$message,required:""},{default:u(()=>[t(p,{modelValue:e(o).mail_host,"onUpdate:modelValue":g[1]||(g[1]=w=>e(o).mail_host=w),modelModifiers:{trim:!0},invalid:e(m).smtpConfig.mail_host.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"mail_host",onInput:g[2]||(g[2]=w=>e(m).smtpConfig.mail_host.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"])]),V("div",ma,[t(C,{label:a.$t("wizard.mail.username"),"content-loading":n.isFetchingInitialData},{default:u(()=>[t(p,{modelValue:e(o).mail_username,"onUpdate:modelValue":g[3]||(g[3]=w=>e(o).mail_username=w),modelModifiers:{trim:!0},"content-loading":n.isFetchingInitialData,type:"text",name:"db_name"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),t(C,{label:a.$t("wizard.mail.password"),"content-loading":n.isFetchingInitialData},{default:u(()=>[t(p,{modelValue:e(o).mail_password,"onUpdate:modelValue":g[6]||(g[6]=w=>e(o).mail_password=w),modelModifiers:{trim:!0},type:e(f),"content-loading":n.isFetchingInitialData,autocomplete:"off","data-lpignore":"true",name:"password"},{right:u(()=>[e(d)?(B(),F(_,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:g[4]||(g[4]=w=>Z(d)?d.value=!e(d):d=!e(d))})):(B(),F(_,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:g[5]||(g[5]=w=>Z(d)?d.value=!e(d):d=!e(d))}))]),_:1},8,["modelValue","type","content-loading"])]),_:1},8,["label","content-loading"])]),V("div",ca,[t(C,{label:a.$t("wizard.mail.port"),error:e(m).smtpConfig.mail_port.$error&&e(m).smtpConfig.mail_port.$errors[0].$message,"content-loading":n.isFetchingInitialData,required:""},{default:u(()=>[t(p,{modelValue:e(o).mail_port,"onUpdate:modelValue":g[7]||(g[7]=w=>e(o).mail_port=w),modelModifiers:{trim:!0},invalid:e(m).smtpConfig.mail_port.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"mail_port",onInput:g[8]||(g[8]=w=>e(m).smtpConfig.mail_port.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","error","content-loading"]),t(C,{label:a.$t("wizard.mail.encryption"),error:e(m).smtpConfig.mail_encryption.$error&&e(m).smtpConfig.mail_encryption.$errors[0].$message,"content-loading":n.isFetchingInitialData,required:""},{default:u(()=>[t($,{modelValue:e(o).mail_encryption,"onUpdate:modelValue":g[9]||(g[9]=w=>e(o).mail_encryption=w),modelModifiers:{trim:!0},options:e(r),"can-deselect":!1,invalid:e(m).smtpConfig.mail_encryption.$error,"content-loading":n.isFetchingInitialData,onInput:g[10]||(g[10]=w=>e(m).smtpConfig.mail_encryption.$touch())},null,8,["modelValue","options","invalid","content-loading"])]),_:1},8,["label","error","content-loading"])]),V("div",ga,[t(C,{label:a.$t("wizard.mail.from_mail"),error:e(m).smtpConfig.from_mail.$error&&e(m).smtpConfig.from_mail.$errors[0].$message,"content-loading":n.isFetchingInitialData,required:""},{default:u(()=>[t(p,{modelValue:e(o).from_mail,"onUpdate:modelValue":g[11]||(g[11]=w=>e(o).from_mail=w),modelModifiers:{trim:!0},invalid:e(m).smtpConfig.from_mail.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"from_mail",onInput:g[12]||(g[12]=w=>e(m).smtpConfig.from_mail.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","error","content-loading"]),t(C,{label:a.$t("wizard.mail.from_name"),error:e(m).smtpConfig.from_name.$error&&e(m).smtpConfig.from_name.$errors[0].$message,"content-loading":n.isFetchingInitialData,required:""},{default:u(()=>[t(p,{modelValue:e(o).from_name,"onUpdate:modelValue":g[13]||(g[13]=w=>e(o).from_name=w),modelModifiers:{trim:!0},invalid:e(m).smtpConfig.from_name.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"from_name",onInput:g[14]||(g[14]=w=>e(m).smtpConfig.from_name.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","error","content-loading"])]),t(v,{loading:n.isSaving,disabled:n.isSaving,"content-loading":n.isFetchingInitialData,class:"mt-4"},{left:u(w=>[n.isSaving?E("",!0):(B(),F(_,{key:0,name:"SaveIcon",class:O(w.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(a.$t("general.save")),1)]),_:1},8,["loading","disabled","content-loading"])],40,da)}}},fa=["onSubmit"],va={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 lg:mb-6 md:mb-6"},_a={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 lg:mb-6 md:mb-6"},ba={class:"grid grid-cols-1 gap-4 mb-6 md:grid-cols-2"},$a={props:{isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1}},emits:["submit-data","on-change-driver"],setup(n,{emit:q}){let d=M(!1);const r=X(),{t:i}=G(),c=z(()=>r.mailgunConfig),o=z(()=>d.value?"text":"password");c.value.mail_driver="mailgun";const f=z(()=>({mailgunConfig:{mail_driver:{required:I.withMessage(i("validation.required"),D)},mail_mailgun_domain:{required:I.withMessage(i("validation.required"),D)},mail_mailgun_endpoint:{required:I.withMessage(i("validation.required"),D)},mail_mailgun_secret:{required:I.withMessage(i("validation.required"),D)},from_mail:{required:I.withMessage(i("validation.required"),D),email:H},from_name:{required:I.withMessage(i("validation.required"),D)}}})),l=W(f,z(()=>r));function m(){return l.value.$touch(),l.value.$invalid||q("submit-data",r.mailgunConfig),!1}function s(){l.value.mailgunConfig.mail_driver.$touch(),q("on-change-driver",r.mailgunConfig.mail_driver)}return(h,a)=>{const g=b("BaseMultiselect"),$=b("BaseInputGroup"),C=b("BaseInput"),p=b("BaseIcon"),_=b("BaseButton");return B(),k("form",{onSubmit:T(m,["prevent"])},[V("div",va,[t($,{label:h.$t("wizard.mail.driver"),"content-loading":n.isFetchingInitialData,error:e(l).mailgunConfig.mail_driver.$error&&e(l).mailgunConfig.mail_driver.$errors[0].$message,required:""},{default:u(()=>[t(g,{modelValue:e(c).mail_driver,"onUpdate:modelValue":[a[0]||(a[0]=v=>e(c).mail_driver=v),s],options:e(r).mail_drivers,"can-deselect":!1,invalid:e(l).mailgunConfig.mail_driver.$error,"content-loading":n.isFetchingInitialData},null,8,["modelValue","options","invalid","content-loading"])]),_:1},8,["label","content-loading","error"]),t($,{label:h.$t("wizard.mail.mailgun_domain"),"content-loading":n.isFetchingInitialData,error:e(l).mailgunConfig.mail_mailgun_domain.$error&&e(l).mailgunConfig.mail_mailgun_domain.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(c).mail_mailgun_domain,"onUpdate:modelValue":a[1]||(a[1]=v=>e(c).mail_mailgun_domain=v),modelModifiers:{trim:!0},invalid:e(l).mailgunConfig.mail_mailgun_domain.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"mailgun_domain",onInput:a[2]||(a[2]=v=>e(l).mailgunConfig.mail_mailgun_domain.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"])]),V("div",_a,[t($,{label:h.$t("wizard.mail.mailgun_secret"),"content-loading":n.isFetchingInitialData,error:e(l).mailgunConfig.mail_mailgun_secret.$error&&e(l).mailgunConfig.mail_mailgun_secret.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(c).mail_mailgun_secret,"onUpdate:modelValue":a[5]||(a[5]=v=>e(c).mail_mailgun_secret=v),modelModifiers:{trim:!0},invalid:e(l).mailgunConfig.mail_mailgun_secret.$error,type:e(o),"content-loading":n.isFetchingInitialData,name:"mailgun_secret",autocomplete:"off","data-lpignore":"true",onInput:a[6]||(a[6]=v=>e(l).mailgunConfig.mail_mailgun_secret.$touch())},{right:u(()=>[e(d)?(B(),F(p,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:a[3]||(a[3]=v=>Z(d)?d.value=!e(d):d=!e(d))})):(B(),F(p,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:a[4]||(a[4]=v=>Z(d)?d.value=!e(d):d=!e(d))}))]),_:1},8,["modelValue","invalid","type","content-loading"])]),_:1},8,["label","content-loading","error"]),t($,{label:h.$t("wizard.mail.mailgun_endpoint"),"content-loading":n.isFetchingInitialData,error:e(l).mailgunConfig.mail_mailgun_endpoint.$error&&e(l).mailgunConfig.mail_mailgun_endpoint.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(c).mail_mailgun_endpoint,"onUpdate:modelValue":a[7]||(a[7]=v=>e(c).mail_mailgun_endpoint=v),modelModifiers:{trim:!0},invalid:e(l).mailgunConfig.mail_mailgun_endpoint.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"mailgun_endpoint",onInput:a[8]||(a[8]=v=>e(l).mailgunConfig.mail_mailgun_endpoint.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"])]),V("div",ba,[t($,{label:h.$t("wizard.mail.from_mail"),"content-loading":n.isFetchingInitialData,error:e(l).mailgunConfig.from_mail.$error&&e(l).mailgunConfig.from_mail.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(c).from_mail,"onUpdate:modelValue":a[9]||(a[9]=v=>e(c).from_mail=v),modelModifiers:{trim:!0},name:"from_mail",type:"text",invalid:e(l).mailgunConfig.from_mail.$error,"content-loading":n.isFetchingInitialData,onInput:a[10]||(a[10]=v=>e(l).mailgunConfig.from_mail.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"]),t($,{label:h.$t("wizard.mail.from_name"),"content-loading":n.isFetchingInitialData,error:e(l).mailgunConfig.from_name.$error&&e(l).mailgunConfig.from_name.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(c).from_name,"onUpdate:modelValue":a[11]||(a[11]=v=>e(c).from_name=v),modelModifiers:{trim:!0},invalid:e(l).mailgunConfig.from_name.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"from_name",onInput:a[12]||(a[12]=v=>e(l).mailgunConfig.from_name.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"])]),t(_,{loading:h.loading,disabled:n.isSaving,"content-loading":n.isFetchingInitialData,class:"mt-4"},{left:u(v=>[n.isSaving?E("",!0):(B(),F(p,{key:0,name:"SaveIcon",class:O(v.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(h.$t("general.save")),1)]),_:1},8,["loading","disabled","content-loading"])],40,fa)}}},wa=["onSubmit"],ha={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},ya={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},Ia={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},qa={class:"grid grid-cols-1 gap-4 mb-6 md:grid-cols-2"},Ba={props:{isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1}},emits:["submit-data","on-change-driver"],setup(n,{emit:q}){const{t:d}=G(),r=j(["tls","ssl","starttls"]);let i=M(!1);const c=X(),o=z(()=>c.sesConfig);o.value.mail_driver="ses";const f=z(()=>({sesConfig:{mail_driver:{required:I.withMessage(d("validation.required"),D)},mail_host:{required:I.withMessage(d("validation.required"),D)},mail_port:{required:I.withMessage(d("validation.required"),D),numeric:ae},mail_ses_key:{required:I.withMessage(d("validation.required"),D)},mail_ses_secret:{required:I.withMessage(d("validation.required"),D)},mail_encryption:{required:I.withMessage(d("validation.required"),D)},from_mail:{required:I.withMessage(d("validation.required"),D),email:I.withMessage(d("validation.email_incorrect"),H)},from_name:{required:I.withMessage(d("validation.required"),D)}}})),l=W(f,z(()=>c));async function m(){return l.value.$touch(),l.value.$invalid||q("submit-data",c.sesConfig),!1}function s(){l.value.sesConfig.mail_driver.$touch(),q("on-change-driver",c.sesConfig.mail_driver)}return(h,a)=>{const g=b("BaseMultiselect"),$=b("BaseInputGroup"),C=b("BaseInput"),p=b("BaseIcon"),_=b("BaseButton");return B(),k("form",{onSubmit:T(m,["prevent"])},[V("div",ha,[t($,{label:h.$t("wizard.mail.driver"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.mail_driver.$error&&e(l).sesConfig.mail_driver.$errors[0].$message,required:""},{default:u(()=>[t(g,{modelValue:e(o).mail_driver,"onUpdate:modelValue":[a[0]||(a[0]=v=>e(o).mail_driver=v),s],options:e(c).mail_drivers,"can-deselect":!1,"content-loading":n.isFetchingInitialData,invalid:e(l).sesConfig.mail_driver.$error},null,8,["modelValue","options","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),t($,{label:h.$t("wizard.mail.host"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.mail_host.$error&&e(l).sesConfig.mail_host.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(o).mail_host,"onUpdate:modelValue":a[1]||(a[1]=v=>e(o).mail_host=v),modelModifiers:{trim:!0},invalid:e(l).sesConfig.mail_host.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"mail_host",onInput:a[2]||(a[2]=v=>e(l).sesConfig.mail_host.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"])]),V("div",ya,[t($,{label:h.$t("wizard.mail.port"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.mail_port.$error&&e(l).sesConfig.mail_port.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(o).mail_port,"onUpdate:modelValue":a[3]||(a[3]=v=>e(o).mail_port=v),modelModifiers:{trim:!0},invalid:e(l).sesConfig.mail_port.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"mail_port",onInput:a[4]||(a[4]=v=>e(l).sesConfig.mail_port.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"]),t($,{label:h.$t("wizard.mail.encryption"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.mail_encryption.$error&&e(l).sesConfig.mail_encryption.$errors[0].$message,required:""},{default:u(()=>[t(g,{modelValue:e(o).mail_encryption,"onUpdate:modelValue":a[5]||(a[5]=v=>e(o).mail_encryption=v),modelModifiers:{trim:!0},invalid:e(l).sesConfig.mail_encryption.$error,options:e(r),"content-loading":n.isFetchingInitialData,onInput:a[6]||(a[6]=v=>e(l).sesConfig.mail_encryption.$touch())},null,8,["modelValue","invalid","options","content-loading"])]),_:1},8,["label","content-loading","error"])]),V("div",Ia,[t($,{label:h.$t("wizard.mail.from_mail"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.from_mail.$error&&e(l).sesConfig.from_mail.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(o).from_mail,"onUpdate:modelValue":a[7]||(a[7]=v=>e(o).from_mail=v),modelModifiers:{trim:!0},invalid:e(l).sesConfig.from_mail.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"from_mail",onInput:a[8]||(a[8]=v=>e(l).sesConfig.from_mail.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"]),t($,{label:h.$t("wizard.mail.from_name"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.from_name.$error&&e(l).sesConfig.from_name.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(o).from_name,"onUpdate:modelValue":a[9]||(a[9]=v=>e(o).from_name=v),modelModifiers:{trim:!0},invalid:e(l).sesConfig.from_name.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"name",onInput:a[10]||(a[10]=v=>e(l).sesConfig.from_name.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"])]),V("div",qa,[t($,{label:h.$t("wizard.mail.ses_key"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.mail_ses_key.$error&&e(l).sesConfig.mail_ses_key.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(o).mail_ses_key,"onUpdate:modelValue":a[11]||(a[11]=v=>e(o).mail_ses_key=v),modelModifiers:{trim:!0},invalid:e(l).sesConfig.mail_ses_key.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"mail_ses_key",onInput:a[12]||(a[12]=v=>e(l).sesConfig.mail_ses_key.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"]),t($,{label:h.$t("wizard.mail.ses_secret"),"content-loading":n.isFetchingInitialData,error:e(l).sesConfig.mail_ses_secret.$error&&e(l).sesConfig.mail_ses_secret.$errors[0].$message,required:""},{default:u(()=>[t(C,{modelValue:e(o).mail_ses_secret,"onUpdate:modelValue":a[15]||(a[15]=v=>e(o).mail_ses_secret=v),modelModifiers:{trim:!0},invalid:e(l).sesConfig.mail_ses_secret.$error,type:h.getInputType,"content-loading":n.isFetchingInitialData,name:"mail_ses_secret",autocomplete:"off","data-lpignore":"true",onInput:a[16]||(a[16]=v=>e(l).sesConfig.mail_ses_secret.$touch())},{right:u(()=>[e(i)?(B(),F(p,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:a[13]||(a[13]=v=>Z(i)?i.value=!e(i):i=!e(i))})):(B(),F(p,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:a[14]||(a[14]=v=>Z(i)?i.value=!e(i):i=!e(i))}))]),_:1},8,["modelValue","invalid","type","content-loading"])]),_:1},8,["label","content-loading","error"])]),t(_,{loading:n.isSaving,disabled:n.isSaving,"content-loading":n.isFetchingInitialData,class:"mt-4"},{left:u(v=>[n.isSaving?E("",!0):(B(),F(p,{key:0,name:"SaveIcon",class:O(v.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(h.$t("general.save")),1)]),_:1},8,["loading","disabled","content-loading"])],40,wa)}}},Ca=["onSubmit"],Va={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},Da={class:"grid grid-cols-1 gap-4 mb-6 md:grid-cols-2"},be={props:{isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1}},emits:["submit-data","on-change-driver"],setup(n,{emit:q}){const{t:d}=G(),r=X(),i=z(()=>r.basicMailConfig);z(()=>r.mail_drivers),i.value.mail_driver="mail";const c=z(()=>({basicMailConfig:{mail_driver:{required:I.withMessage(d("validation.required"),D)},from_mail:{required:I.withMessage(d("validation.required"),D),email:I.withMessage(d("validation.email_incorrect"),H)},from_name:{required:I.withMessage(d("validation.required"),D)}}})),o=W(c,z(()=>r));function f(){return o.value.$touch(),o.value.$invalid||q("submit-data",r.basicMailConfig),!1}function l(){var m;o.value.basicMailConfig.mail_driver.$touch(),q("on-change-driver",(m=r==null?void 0:r.basicMailConfig)==null?void 0:m.mail_driver)}return(m,s)=>{const h=b("BaseMultiselect"),a=b("BaseInputGroup"),g=b("BaseInput"),$=b("BaseIcon"),C=b("BaseButton");return B(),k("form",{onSubmit:T(f,["prevent"])},[V("div",Va,[t(a,{label:m.$t("wizard.mail.driver"),"content-loading":n.isFetchingInitialData,error:e(o).basicMailConfig.mail_driver.$error&&e(o).basicMailConfig.mail_driver.$errors[0].$message,required:""},{default:u(()=>[t(h,{modelValue:e(i).mail_driver,"onUpdate:modelValue":[s[0]||(s[0]=p=>e(i).mail_driver=p),l],invalid:e(o).basicMailConfig.mail_driver.$error,options:e(r).mail_drivers,"can-deselect":!1,"content-loading":n.isFetchingInitialData},null,8,["modelValue","invalid","options","content-loading"])]),_:1},8,["label","content-loading","error"])]),V("div",Da,[t(a,{label:m.$t("wizard.mail.from_name"),"content-loading":n.isFetchingInitialData,error:e(o).basicMailConfig.from_name.$error&&e(o).basicMailConfig.from_name.$errors[0].$message,required:""},{default:u(()=>[t(g,{modelValue:e(i).from_name,"onUpdate:modelValue":s[1]||(s[1]=p=>e(i).from_name=p),modelModifiers:{trim:!0},invalid:e(o).basicMailConfig.from_name.$error,"content-loading":n.isFetchingInitialData,type:"text",name:"name",onInput:s[2]||(s[2]=p=>e(o).basicMailConfig.from_name.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"]),t(a,{label:m.$t("wizard.mail.from_mail"),"content-loading":n.isFetchingInitialData,error:e(o).basicMailConfig.from_mail.$error&&e(o).basicMailConfig.from_mail.$errors[0].$message,required:""},{default:u(()=>[t(g,{modelValue:e(i).from_mail,"onUpdate:modelValue":s[3]||(s[3]=p=>e(i).from_mail=p),modelModifiers:{trim:!0},invalid:e(o).basicMailConfig.from_mail.$error,"content-loading":n.isFetchingInitialData,type:"text",onInput:s[4]||(s[4]=p=>e(o).basicMailConfig.from_mail.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","content-loading","error"])]),t(C,{loading:n.isSaving,disabled:n.isSaving,"content-loading":n.isFetchingInitialData,class:"mt-4"},{left:u(p=>[n.isSaving?E("",!0):(B(),F($,{key:0,name:"SaveIcon",class:O(p.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(m.$t("general.save")),1)]),_:1},8,["loading","disabled","content-loading"])],40,Ca)}}},Sa={components:{Smtp:pa,Mailgun:$a,Ses:Ba,sendmail:be,Mail:be},emits:["next"],setup(n,{emit:q}){const d=M(!1),r=M(!1),i=X();i.mail_driver="mail",o();function c(l){i.mail_driver=l}async function o(){r.value=!0,await i.fetchMailDrivers(),r.value=!1}async function f(l){d.value=!0;let m=await i.updateMailConfig(l);d.value=!1,m.data.success&&await q("next",5)}return{mailDriverStore:i,isSaving:d,isFetchingInitialData:r,changeDriver:c,next:f}}};function Fa(n,q,d,r,i,c){const o=b("BaseWizardStep");return B(),F(o,{title:n.$t("wizard.mail.mail_config"),description:n.$t("wizard.mail.mail_config_desc")},{default:u(()=>[V("form",{action:"",onSubmit:q[1]||(q[1]=T((...f)=>r.next&&r.next(...f),["prevent"]))},[(B(),F(le(r.mailDriverStore.mail_driver),{"config-data":r.mailDriverStore.mailConfigData,"is-saving":r.isSaving,"is-fetching-initial-data":r.isFetchingInitialData,onOnChangeDriver:q[0]||(q[0]=f=>r.changeDriver(f)),onSubmitData:r.next},null,8,["config-data","is-saving","is-fetching-initial-data","onSubmitData"]))],32)]),_:1},8,["title","description"])}var Ma=se(Sa,[["render",Fa]]);const za=["onSubmit"],ka={class:"grid grid-cols-1 mb-4 md:grid-cols-2 md:mb-6"},Ua={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},Pa={class:"grid grid-cols-1 gap-4 mb-6 md:grid-cols-2"},Na={emits:["next"],setup(n,{emit:q}){let d=M(!1);const r=M(!1),i=M(!1);let c=M(""),o=M(null);const f=ve(),l=te(),{t:m}=G(),s=z(()=>f.userForm),h=z(()=>({userForm:{name:{required:I.withMessage(m("validation.required"),D)},email:{required:I.withMessage(m("validation.required"),D),email:I.withMessage(m("validation.email_incorrect"),H)},password:{required:I.withMessage(m("validation.required"),D),minLength:I.withMessage(m("validation.password_min_length",{count:8}),Ie(8))},confirm_password:{required:I.withMessage(m("validation.required"),qe(f.userForm.password)),sameAsPassword:I.withMessage(m("validation.password_incorrect"),Be(f.userForm.password))}}})),a=W(h,z(()=>f));function g(p,_){o.value=_}function $(){o.value=null}async function C(){if(a.value.userForm.$touch(),a.value.userForm.$invalid)return!0;d.value=!0;let p=await f.updateCurrentUser(s.value);if(d.value=!1,p.data.data){if(o.value){let v=new FormData;v.append("admin_avatar",o.value),await f.uploadAvatar(v)}const _=p.data.data.companies[0];await l.setSelectedCompany(_),q("next",6)}}return(p,_)=>{const v=b("BaseFileUploader"),w=b("BaseInputGroup"),y=b("BaseInput"),x=b("EyeOffIcon"),Y=b("EyeIcon"),J=b("BaseIcon"),K=b("BaseButton"),N=b("BaseWizardStep");return B(),F(N,{title:p.$t("wizard.account_info"),description:p.$t("wizard.account_info_desc")},{default:u(()=>[V("form",{action:"",onSubmit:T(C,["prevent"])},[V("div",ka,[t(w,{label:p.$tc("settings.account_settings.profile_picture")},{default:u(()=>[t(v,{avatar:!0,"preview-image":e(c),onChange:g,onRemove:$},null,8,["preview-image"])]),_:1},8,["label"])]),V("div",Ua,[t(w,{label:p.$t("wizard.name"),error:e(a).userForm.name.$error&&e(a).userForm.name.$errors[0].$message,required:""},{default:u(()=>[t(y,{modelValue:e(s).name,"onUpdate:modelValue":_[0]||(_[0]=S=>e(s).name=S),modelModifiers:{trim:!0},invalid:e(a).userForm.name.$error,type:"text",name:"name",onInput:_[1]||(_[1]=S=>e(a).userForm.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t(w,{label:p.$t("wizard.email"),error:e(a).userForm.email.$error&&e(a).userForm.email.$errors[0].$message,required:""},{default:u(()=>[t(y,{modelValue:e(s).email,"onUpdate:modelValue":_[2]||(_[2]=S=>e(s).email=S),modelModifiers:{trim:!0},invalid:e(a).userForm.email.$error,type:"text",name:"email",onInput:_[3]||(_[3]=S=>e(a).userForm.email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),V("div",Pa,[t(w,{label:p.$t("wizard.password"),error:e(a).userForm.password.$error&&e(a).userForm.password.$errors[0].$message,required:""},{default:u(()=>[t(y,{modelValue:e(s).password,"onUpdate:modelValue":_[6]||(_[6]=S=>e(s).password=S),modelModifiers:{trim:!0},invalid:e(a).userForm.password.$error,type:r.value?"text":"password",name:"password",onInput:_[7]||(_[7]=S=>e(a).userForm.password.$touch())},{right:u(()=>[r.value?(B(),F(x,{key:0,class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:_[4]||(_[4]=S=>r.value=!r.value)})):(B(),F(Y,{key:1,class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:_[5]||(_[5]=S=>r.value=!r.value)}))]),_:1},8,["modelValue","invalid","type"])]),_:1},8,["label","error"]),t(w,{label:p.$t("wizard.confirm_password"),error:e(a).userForm.confirm_password.$error&&e(a).userForm.confirm_password.$errors[0].$message,required:""},{default:u(()=>[t(y,{modelValue:e(s).confirm_password,"onUpdate:modelValue":_[10]||(_[10]=S=>e(s).confirm_password=S),modelModifiers:{trim:!0},invalid:e(a).userForm.confirm_password.$error,type:i.value?"text":"password",name:"confirm_password",onInput:_[11]||(_[11]=S=>e(a).userForm.confirm_password.$touch())},{right:u(()=>[i.value?(B(),F(J,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:_[8]||(_[8]=S=>i.value=!i.value)})):(B(),F(J,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:_[9]||(_[9]=S=>i.value=!i.value)}))]),_:1},8,["modelValue","invalid","type"])]),_:1},8,["label","error"])]),t(K,{loading:e(d),disabled:e(d),class:"mt-4"},{left:u(S=>[e(d)?E("",!0):(B(),F(J,{key:0,name:"SaveIcon",class:O(S.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(p.$t("wizard.save_cont")),1)]),_:1},8,["loading","disabled"])],40,za)]),_:1},8,["title","description"])}}},Ea=["onSubmit"],Ga={class:"grid grid-cols-1 mb-4 md:grid-cols-2 md:mb-6"},Oa={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},xa={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},La={class:"grid grid-cols-1 gap-4 mb-6 md:grid-cols-2"},Wa={emits:["next"],setup(n,{emit:q}){let d=M(!1),r=M(!1);const{t:i}=G();let c=M(null),o=M(null),f=M(null);const l=j({name:null,address:{address_street_1:"",address_street_2:"",website:"",country_id:null,state:"",city:"",phone:"",zip:""}}),m=te(),s=_e();Q(async()=>{d.value=!0,await s.fetchCountries(),d.value=!1});const h={companyForm:{name:{required:I.withMessage(i("validation.required"),D)},address:{country_id:{required:I.withMessage(i("validation.required"),D)},address_street_1:{maxLength:I.withMessage(i("validation.address_maxlength",{count:255}),ge(255))},address_street_2:{maxLength:I.withMessage(i("validation.address_maxlength",{count:255}),ge(255))}}}},a=W(h,{companyForm:l});function g(p,_,v,w){f.value=w.name,o.value=_}function $(){o.value=null}async function C(){if(a.value.companyForm.$touch(),a.value.$invalid)return!0;if(r.value=!0,m.updateCompany(l)){if(o.value){let _=new FormData;_.append("company_logo",JSON.stringify({name:f.value,data:o.value})),await m.updateCompanyLogo(_)}r.value=!1,q("next",7)}}return(p,_)=>{const v=b("BaseFileUploader"),w=b("BaseInputGroup"),y=b("BaseInput"),x=b("BaseMultiselect"),Y=b("BaseTextarea"),J=b("BaseIcon"),K=b("BaseButton"),N=b("BaseWizardStep");return B(),F(N,{title:p.$t("wizard.company_info"),description:p.$t("wizard.company_info_desc"),"step-container":"bg-white border border-gray-200 border-solid mb-8 md:w-full p-8 rounded w-full"},{default:u(()=>[V("form",{action:"",onSubmit:T(C,["prevent"])},[V("div",Ga,[t(w,{label:p.$tc("settings.company_info.company_logo")},{default:u(()=>[t(v,{base64:"","preview-image":e(c),onChange:g,onRemove:$},null,8,["preview-image"])]),_:1},8,["label"])]),V("div",Oa,[t(w,{label:p.$t("wizard.company_name"),error:e(a).companyForm.name.$error&&e(a).companyForm.name.$errors[0].$message,required:""},{default:u(()=>[t(y,{modelValue:e(l).name,"onUpdate:modelValue":_[0]||(_[0]=S=>e(l).name=S),modelModifiers:{trim:!0},invalid:e(a).companyForm.name.$error,type:"text",name:"name",onInput:_[1]||(_[1]=S=>e(a).companyForm.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),t(w,{label:p.$t("wizard.country"),error:e(a).companyForm.address.country_id.$error&&e(a).companyForm.address.country_id.$errors[0].$message,"content-loading":e(d),required:""},{default:u(()=>[t(x,{modelValue:e(l).address.country_id,"onUpdate:modelValue":_[2]||(_[2]=S=>e(l).address.country_id=S),label:"name",invalid:e(a).companyForm.address.country_id.$error,options:e(s).countries,"value-prop":"id","can-deselect":!1,"can-clear":!1,"content-loading":e(d),placeholder:p.$t("general.select_country"),searchable:"","track-by":"name"},null,8,["modelValue","invalid","options","content-loading","placeholder"])]),_:1},8,["label","error","content-loading"])]),V("div",xa,[t(w,{label:p.$t("wizard.state")},{default:u(()=>[t(y,{modelValue:e(l).address.state,"onUpdate:modelValue":_[3]||(_[3]=S=>e(l).address.state=S),name:"state",type:"text"},null,8,["modelValue"])]),_:1},8,["label"]),t(w,{label:p.$t("wizard.city")},{default:u(()=>[t(y,{modelValue:e(l).address.city,"onUpdate:modelValue":_[4]||(_[4]=S=>e(l).address.city=S),name:"city",type:"text"},null,8,["modelValue"])]),_:1},8,["label"])]),V("div",La,[V("div",null,[t(w,{label:p.$t("wizard.address"),error:e(a).companyForm.address.address_street_1.$error&&e(a).companyForm.address.address_street_1.$errors[0].$message},{default:u(()=>[t(Y,{modelValue:e(l).address.address_street_1,"onUpdate:modelValue":_[5]||(_[5]=S=>e(l).address.address_street_1=S),modelModifiers:{trim:!0},invalid:e(a).companyForm.address.address_street_1.$error,placeholder:p.$t("general.street_1"),name:"billing_street1",rows:"2",onInput:_[6]||(_[6]=S=>e(a).companyForm.address.address_street_1.$touch())},null,8,["modelValue","invalid","placeholder"])]),_:1},8,["label","error"]),t(w,{error:e(a).companyForm.address.address_street_2.$error&&e(a).companyForm.address.address_street_2.$errors[0].$message,class:"mt-1 lg:mt-2 md:mt-2"},{default:u(()=>[t(Y,{modelValue:e(l).address.address_street_2,"onUpdate:modelValue":_[7]||(_[7]=S=>e(l).address.address_street_2=S),invalid:e(a).companyForm.address.address_street_2.$error,placeholder:p.$t("general.street_2"),name:"billing_street2",rows:"2",onInput:_[8]||(_[8]=S=>e(a).companyForm.address.address_street_2.$touch())},null,8,["modelValue","invalid","placeholder"])]),_:1},8,["error"])]),V("div",null,[t(w,{label:p.$t("wizard.zip_code")},{default:u(()=>[t(y,{modelValue:e(l).address.zip,"onUpdate:modelValue":_[9]||(_[9]=S=>e(l).address.zip=S),modelModifiers:{trim:!0},type:"text",name:"zip"},null,8,["modelValue"])]),_:1},8,["label"]),t(w,{label:p.$t("wizard.phone"),class:"mt-4"},{default:u(()=>[t(y,{modelValue:e(l).address.phone,"onUpdate:modelValue":_[10]||(_[10]=S=>e(l).address.phone=S),modelModifiers:{trim:!0},type:"text",name:"phone"},null,8,["modelValue"])]),_:1},8,["label"])])]),t(K,{loading:e(r),disabled:e(r),class:"mt-4"},{left:u(S=>[e(r)?E("",!0):(B(),F(J,{key:0,name:"SaveIcon",class:O(S.class)},null,8,["class"]))]),default:u(()=>[P(" "+U(p.$t("wizard.save_cont")),1)]),_:1},8,["loading","disabled"])],40,Ea)]),_:1},8,["title","description"])}}},Ta=["onSubmit"],ja={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},Ra={class:"grid grid-cols-1 gap-4 mb-4 md:grid-cols-2 md:mb-6"},Aa={class:"grid grid-cols-1 gap-4 mb-6 md:grid-cols-2"},Ya={emits:["next"],setup(n,{emit:q}){const d=M(!1);let r=M(!1),i=j({currency:1,language:"en",carbon_date_format:"d M Y",time_zone:"UTC",fiscal_year:"1-12"});const{tm:c,t:o}=G(),f=pe();r.value=!0,j([{title:c("settings.customization.invoices.allow"),value:"allow"},{title:c("settings.customization.invoices.disable_on_invoice_partial_paid"),value:"disable_on_invoice_partial_paid"},{title:c("settings.customization.invoices.disable_on_invoice_paid"),value:"disable_on_invoice_paid"},{title:c("settings.customization.invoices.disable_on_invoice_sent"),value:"disable_on_invoice_sent"}]);const l=fe(),m=_e(),s=te(),h=ve(),a=de();let g={key:"fiscal_years"},$={key:"languages"};r.value=!0,Promise.all([m.fetchCurrencies(),m.fetchDateFormats(),m.fetchTimeZones(),m.fetchCountries(),m.fetchConfig(g),m.fetchConfig($)]).then(([v])=>{r.value=!1});const C=z(()=>({currentPreferences:{currency:{required:I.withMessage(o("validation.required"),D)},language:{required:I.withMessage(o("validation.required"),D)},carbon_date_format:{required:I.withMessage(o("validation.required"),D)},time_zone:{required:I.withMessage(o("validation.required"),D)},fiscal_year:{required:I.withMessage(o("validation.required"),D)}}})),p=W(C,{currentPreferences:i});async function _(){if(p.value.currentPreferences.$touch(),p.value.$invalid)return!0;l.openDialog({title:o("general.do_you_wish_to_continue"),message:o("wizard.currency_set_alert"),yesLabel:o("general.ok"),noLabel:o("general.cancel"),variant:"danger",size:"lg",hideNoButton:!1}).then(async v=>{if(v){let w={settings:ce({},i)};d.value=!0,delete w.settings.discount_per_item;let y=await s.updateCompanySettings({data:w});if(y.data){d.value=!1;let x={settings:{language:i.language}};(await h.updateUserSettings(x)).data&&(q("next","COMPLETED"),a.showNotification({type:"success",message:"Login Successful"}),f.push("/admin/dashboard")),Ce.set("auth.token",y.data.token)}return!0}return d.value=!1,!0})}return(v,w)=>{const y=b("BaseMultiselect"),x=b("BaseInputGroup"),Y=b("BaseIcon"),J=b("BaseButton"),K=b("BaseWizardStep");return B(),F(K,{title:v.$t("wizard.preferences"),description:v.$t("wizard.preferences_desc"),"step-container":"bg-white border border-gray-200 border-solid mb-8 md:w-full p-8 rounded w-full"},{default:u(()=>[V("form",{action:"",onSubmit:T(_,["prevent"])},[V("div",null,[V("div",ja,[t(x,{label:v.$t("wizard.currency"),error:e(p).currentPreferences.currency.$error&&e(p).currentPreferences.currency.$errors[0].$message,"content-loading":e(r),required:""},{default:u(()=>[t(y,{modelValue:e(i).currency,"onUpdate:modelValue":w[0]||(w[0]=N=>e(i).currency=N),"content-loading":e(r),options:e(m).currencies,label:"name","value-prop":"id",searchable:!0,"track-by":"name",placeholder:v.$tc("settings.currencies.select_currency"),invalid:e(p).currentPreferences.currency.$error,class:"w-full"},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","error","content-loading"]),t(x,{label:v.$t("settings.preferences.default_language"),error:e(p).currentPreferences.language.$error&&e(p).currentPreferences.language.$errors[0].$message,"content-loading":e(r),required:""},{default:u(()=>[t(y,{modelValue:e(i).language,"onUpdate:modelValue":w[1]||(w[1]=N=>e(i).language=N),"content-loading":e(r),options:e(m).languages,label:"name","value-prop":"code",placeholder:v.$tc("settings.preferences.select_language"),class:"w-full","track-by":"code",searchable:!0,invalid:e(p).currentPreferences.language.$error},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","error","content-loading"])]),V("div",Ra,[t(x,{label:v.$t("wizard.date_format"),error:e(p).currentPreferences.carbon_date_format.$error&&e(p).currentPreferences.carbon_date_format.$errors[0].$message,"content-loading":e(r),required:""},{default:u(()=>[t(y,{modelValue:e(i).carbon_date_format,"onUpdate:modelValue":w[2]||(w[2]=N=>e(i).carbon_date_format=N),"content-loading":e(r),options:e(m).dateFormats,label:"display_date","value-prop":"carbon_format_value",placeholder:v.$tc("settings.preferences.select_date_format"),"track-by":"display_date",searchable:"",invalid:e(p).currentPreferences.carbon_date_format.$error,class:"w-full"},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","error","content-loading"]),t(x,{label:v.$t("wizard.time_zone"),error:e(p).currentPreferences.time_zone.$error&&e(p).currentPreferences.time_zone.$errors[0].$message,"content-loading":e(r),required:""},{default:u(()=>[t(y,{modelValue:e(i).time_zone,"onUpdate:modelValue":w[3]||(w[3]=N=>e(i).time_zone=N),"content-loading":e(r),options:e(m).timeZones,label:"key","value-prop":"value",placeholder:v.$tc("settings.preferences.select_time_zone"),"track-by":"value",searchable:!0,invalid:e(p).currentPreferences.time_zone.$error},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","error","content-loading"])]),V("div",Aa,[t(x,{label:v.$t("wizard.fiscal_year"),error:e(p).currentPreferences.fiscal_year.$error&&e(p).currentPreferences.fiscal_year.$errors[0].$message,"content-loading":e(r),required:""},{default:u(()=>[t(y,{modelValue:e(i).fiscal_year,"onUpdate:modelValue":w[4]||(w[4]=N=>e(i).fiscal_year=N),"content-loading":e(r),options:e(m).fiscalYears,label:"key","value-prop":"value",placeholder:v.$tc("settings.preferences.select_financial_year"),invalid:e(p).currentPreferences.fiscal_year.$error,"track-by":"key",searchable:!0,class:"w-full"},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","error","content-loading"])]),t(J,{loading:d.value,disabled:d.value,"content-loading":e(r),class:"mt-4"},{left:u(N=>[t(Y,{name:"SaveIcon",class:O(N.class)},null,8,["class"])]),default:u(()=>[P(" "+U(v.$t("wizard.save_cont")),1)]),_:1},8,["loading","disabled","content-loading"])])],40,Ta)]),_:1},8,["title","description"])}}};var Ja="/build/img/crater-logo.png";const Za={components:{step_1:Oe,step_2:Ae,step_3:ia,step_4:sa,step_5:Ma,step_6:Na,step_7:Wa,step_8:Ya},setup(){let n=M("step_1"),q=M(1);const d=pe(),r=A();i();async function i(){let l=await r.fetchInstallationStep();if(l.data.profile_complete==="COMPLETED"){d.push("/admin/dashboard");return}let m=parseInt(l.data.profile_complete);m&&(q.value=m+1,n.value=`step_${m+1}`)}async function c(l){var s,h;let m={profile_complete:l};try{return await r.addInstallationStep(m),!0}catch(a){return((h=(s=a==null?void 0:a.response)==null?void 0:s.data)==null?void 0:h.message)==="The MAC is invalid."&&window.location.reload(),!1}}async function o(l){if(l&&!await c(l))return!1;q.value++,q.value<=8&&(n.value="step_"+q.value)}function f(l){}return{stepComponent:n,currentStepNumber:q,onStepChange:o,saveStepProgress:c,onNavClick:f}}},Ka={class:"flex flex-col items-center justify-between w-full pt-10"},Qa=V("img",{id:"logo-crater",src:Ja,alt:"Crater Logo",class:"h-12 mb-5 md:mb-10"},null,-1);function Ha(n,q,d,r,i,c){const o=b("BaseWizard");return B(),k("div",Ka,[Qa,t(o,{steps:7,"current-step":r.currentStepNumber,onClick:r.onNavClick},{default:u(()=>[(B(),F(le(r.stepComponent),{onNext:r.onStepChange},null,8,["onNext"]))]),_:1},8,["current-step","onClick"])])}var nt=se(Za,[["render",Ha]]);export{nt as default}; diff --git a/public/build/assets/InvoiceCreate.8ae6be7c.js b/public/build/assets/InvoiceCreate.6a7669bf.js similarity index 59% rename from public/build/assets/InvoiceCreate.8ae6be7c.js rename to public/build/assets/InvoiceCreate.6a7669bf.js index 633ccbd2e..46d3440aa 100644 --- a/public/build/assets/InvoiceCreate.8ae6be7c.js +++ b/public/build/assets/InvoiceCreate.6a7669bf.js @@ -1 +1 @@ -var A=Object.defineProperty,K=Object.defineProperties;var Q=Object.getOwnPropertyDescriptors;var k=Object.getOwnPropertySymbols;var W=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var j=(t,e,i)=>e in t?A(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i,q=(t,e)=>{for(var i in e||(e={}))W.call(e,i)&&j(t,i,e[i]);if(k)for(var i of k(e))X.call(e,i)&&j(t,i,e[i]);return t},L=(t,e)=>K(t,Q(e));import{r as l,o as u,e as T,f as o,u as n,w as c,J as Z,G as ee,aN as ne,B as x,k as I,L as p,M as y,S as te,O as oe,aP as ie,T as ae,C as se,l as b,j as C,h as $,t as P,m as le,i as ce,U as re,F as de}from"./vendor.01d0adc5.js";import{i as M,b as ue,m as me,r as ve}from"./main.75722495.js";import{_ as ge,a as pe,b as fe,c as _e,d as Ie,e as be,f as we}from"./SalesTax.0ff2d954.js";import{_ as ye}from"./ExchangeRateConverter.7d8c4309.js";import{_ as $e}from"./CreateCustomFields.a3a572c4.js";import{_ as Be}from"./TaxTypeModal.bf6662b3.js";import"./DragIcon.213b1d78.js";import"./SelectNotePopup.781ad74a.js";import"./NoteModal.f6d01f84.js";import"./payment.5c57bec3.js";import"./exchange-rate.dffa79b6.js";const Se={class:"grid grid-cols-12 gap-8 mt-6 mb-8"},he={props:{v:{type:Object,default:null},isLoading:{type:Boolean,default:!1},isEdit:{type:Boolean,default:!1}},setup(t){const e=M();return(i,r)=>{const B=l("BaseCustomerSelectPopup"),d=l("BaseDatePicker"),m=l("BaseInputGroup"),S=l("BaseInput"),f=l("BaseInputGrid");return u(),T("div",Se,[o(B,{modelValue:n(e).newInvoice.customer,"onUpdate:modelValue":r[0]||(r[0]=a=>n(e).newInvoice.customer=a),valid:t.v.customer_id,"content-loading":t.isLoading,type:"invoice",class:"col-span-12 lg:col-span-5 pr-0"},null,8,["modelValue","valid","content-loading"]),o(f,{class:"col-span-12 lg:col-span-7"},{default:c(()=>[o(m,{label:i.$t("invoices.invoice_date"),"content-loading":t.isLoading,required:"",error:t.v.invoice_date.$error&&t.v.invoice_date.$errors[0].$message},{default:c(()=>[o(d,{modelValue:n(e).newInvoice.invoice_date,"onUpdate:modelValue":r[1]||(r[1]=a=>n(e).newInvoice.invoice_date=a),"content-loading":t.isLoading,"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading","error"]),o(m,{label:i.$t("invoices.due_date"),"content-loading":t.isLoading},{default:c(()=>[o(d,{modelValue:n(e).newInvoice.due_date,"onUpdate:modelValue":r[2]||(r[2]=a=>n(e).newInvoice.due_date=a),"content-loading":t.isLoading,"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),o(m,{label:i.$t("invoices.invoice_number"),"content-loading":t.isLoading,error:t.v.invoice_number.$error&&t.v.invoice_number.$errors[0].$message,required:""},{default:c(()=>[o(S,{modelValue:n(e).newInvoice.invoice_number,"onUpdate:modelValue":r[3]||(r[3]=a=>n(e).newInvoice.invoice_number=a),"content-loading":t.isLoading,onInput:r[4]||(r[4]=a=>t.v.invoice_number.$touch())},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading","error"]),o(ye,{store:n(e),"store-prop":"newInvoice",v:t.v,"is-loading":t.isLoading,"is-edit":t.isEdit,"customer-currency":n(e).newInvoice.currency_id},null,8,["store","v","is-loading","is-edit","customer-currency"])]),_:1})])}}},Ce=["onSubmit"],Ve={class:"flex"},ke={class:"block mt-10 invoice-foot lg:flex lg:justify-between lg:items-start"},je={class:"relative w-full lg:w-1/2 lg:mr-4"},Re={setup(t){const e=M(),i=ue(),r=me(),B=ve(),{t:d}=Z();let m=ee(),S=ne();const f="newInvoice";let a=x(!1);const F=x(["customer","company","customerCustom","invoice","invoiceCustom"]);let _=I(()=>e.isFetchingInvoice||e.isFetchingInitialSettings),E=I(()=>v.value?d("invoices.edit_invoice"):d("invoices.new_invoice"));const N=I(()=>i.selectedCompanySettings.sales_tax_us_enabled==="YES"&&B.salesTaxUSEnabled);let v=I(()=>m.name==="invoices.edit");const U={invoice_date:{required:p.withMessage(d("validation.required"),y)},reference_number:{maxLength:p.withMessage(d("validation.price_maxlength"),te(255))},customer_id:{required:p.withMessage(d("validation.required"),y)},invoice_number:{required:p.withMessage(d("validation.required"),y)},exchange_rate:{required:oe(function(){return p.withMessage(d("validation.required"),y),e.showExchangeRate}),decimal:p.withMessage(d("validation.valid_exchange_rate"),ie)}},w=ae(U,I(()=>e.newInvoice),{$scope:f});r.resetCustomFields(),w.value.$reset,e.resetCurrentInvoice(),e.fetchInvoiceInitialSettings(v.value),se(()=>e.newInvoice.customer,s=>{s&&s.currency?e.newInvoice.selectedCurrency=s.currency:e.newInvoice.selectedCurrency=i.selectedCompanyCurrency});async function G(){if(w.value.$touch(),w.value.$invalid)return!1;a.value=!0;let s=L(q({},e.newInvoice),{sub_total:e.getSubTotal,total:e.getTotal,tax:e.getTotalTax});try{const g=await(v.value?e.updateInvoice:e.addInvoice)(s);S.push(`/admin/invoices/${g.data.data.id}/view`)}catch(h){console.error(h)}a.value=!1}return(s,h)=>{const g=l("BaseBreadcrumbItem"),D=l("BaseBreadcrumb"),V=l("BaseButton"),R=l("router-link"),H=l("BaseIcon"),O=l("BasePageHeader"),z=l("BaseScrollPane"),J=l("BasePage");return u(),T(de,null,[o(ge),o(pe),o(Be),n(N)&&(!n(_)||n(m).query.customer)?(u(),b(fe,{key:0,store:n(e),"is-edit":n(v),"store-prop":"newInvoice",customer:n(e).newInvoice.customer},null,8,["store","is-edit","customer"])):C("",!0),o(J,{class:"relative invoice-create-page"},{default:c(()=>[$("form",{onSubmit:re(G,["prevent"])},[o(O,{title:n(E)},{actions:c(()=>[s.$route.name==="invoices.edit"?(u(),b(R,{key:0,to:`/invoices/pdf/${n(e).newInvoice.unique_hash}`,target:"_blank"},{default:c(()=>[o(V,{class:"mr-3",variant:"primary-outline",type:"button"},{default:c(()=>[$("span",Ve,P(s.$t("general.view_pdf")),1)]),_:1})]),_:1},8,["to"])):C("",!0),o(V,{loading:n(a),disabled:n(a),variant:"primary",type:"submit"},{left:c(Y=>[n(a)?C("",!0):(u(),b(H,{key:0,name:"SaveIcon",class:le(Y.class)},null,8,["class"]))]),default:c(()=>[ce(" "+P(s.$t("invoices.save_invoice")),1)]),_:1},8,["loading","disabled"])]),default:c(()=>[o(D,null,{default:c(()=>[o(g,{title:s.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),o(g,{title:s.$tc("invoices.invoice",2),to:"/admin/invoices"},null,8,["title"]),s.$route.name==="invoices.edit"?(u(),b(g,{key:0,title:s.$t("invoices.edit_invoice"),to:"#",active:""},null,8,["title"])):(u(),b(g,{key:1,title:s.$t("invoices.new_invoice"),to:"#",active:""},null,8,["title"]))]),_:1})]),_:1},8,["title"]),o(he,{v:n(w),"is-loading":n(_),"is-edit":n(v)},null,8,["v","is-loading","is-edit"]),o(z,null,{default:c(()=>[o(_e,{currency:n(e).newInvoice.selectedCurrency,"is-loading":n(_),"item-validation-scope":f,store:n(e),"store-prop":"newInvoice"},null,8,["currency","is-loading","store"]),$("div",ke,[$("div",je,[o(Ie,{store:n(e),"store-prop":"newInvoice",fields:F.value,type:"Invoice"},null,8,["store","fields"]),o($e,{type:"Invoice","is-edit":n(v),"is-loading":n(_),store:n(e),"store-prop":"newInvoice","custom-field-scope":f,class:"mb-6"},null,8,["is-edit","is-loading","store"]),o(be,{store:n(e),"store-prop":"newInvoice","component-name":"InvoiceTemplate"},null,8,["store"])]),o(we,{currency:n(e).newInvoice.selectedCurrency,"is-loading":n(_),store:n(e),"store-prop":"newInvoice","tax-popup-type":"invoice"},null,8,["currency","is-loading","store"])])]),_:1})],40,Ce)]),_:1})],64)}}};export{Re as default}; +var A=Object.defineProperty,K=Object.defineProperties;var Q=Object.getOwnPropertyDescriptors;var k=Object.getOwnPropertySymbols;var W=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var j=(t,e,i)=>e in t?A(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i,q=(t,e)=>{for(var i in e||(e={}))W.call(e,i)&&j(t,i,e[i]);if(k)for(var i of k(e))X.call(e,i)&&j(t,i,e[i]);return t},L=(t,e)=>K(t,Q(e));import{r as c,o as u,e as T,f as o,u as n,w as l,J as Z,G as ee,aN as ne,B as x,k as b,L as p,M as y,S as te,O as oe,aP as ie,T as ae,C as se,l as I,j as C,h as $,t as P,m as ce,i as le,U as re,F as de}from"./vendor.01d0adc5.js";import{i as M,b as ue,m as me,r as ve}from"./main.24f7a84b.js";import{_ as ge,a as pe,b as _e,c as fe,d as be,e as Ie,f as we}from"./SalesTax.7ce396b6.js";import{_ as ye}from"./ExchangeRateConverter.285065a4.js";import{_ as $e}from"./CreateCustomFields.8531ebe0.js";import{_ as Be}from"./TaxTypeModal.5b98d9fc.js";import"./DragIcon.0a950eb9.js";import"./SelectNotePopup.5f004c2c.js";import"./NoteModal.5bd3cf32.js";import"./payment.bb0c6e9e.js";import"./exchange-rate.3b3d35e2.js";const Se={class:"grid grid-cols-12 gap-8 mt-6 mb-8"},he={props:{v:{type:Object,default:null},isLoading:{type:Boolean,default:!1},isEdit:{type:Boolean,default:!1}},setup(t){const e=M();return(i,r)=>{const B=c("BaseCustomerSelectPopup"),d=c("BaseDatePicker"),m=c("BaseInputGroup"),S=c("BaseInput"),_=c("BaseInputGrid");return u(),T("div",Se,[o(B,{modelValue:n(e).newInvoice.customer,"onUpdate:modelValue":r[0]||(r[0]=a=>n(e).newInvoice.customer=a),valid:t.v.customer_id,"content-loading":t.isLoading,type:"invoice",class:"col-span-12 lg:col-span-5 pr-0"},null,8,["modelValue","valid","content-loading"]),o(_,{class:"col-span-12 lg:col-span-7"},{default:l(()=>[o(m,{label:i.$t("invoices.invoice_date"),"content-loading":t.isLoading,required:"",error:t.v.invoice_date.$error&&t.v.invoice_date.$errors[0].$message},{default:l(()=>[o(d,{modelValue:n(e).newInvoice.invoice_date,"onUpdate:modelValue":r[1]||(r[1]=a=>n(e).newInvoice.invoice_date=a),"content-loading":t.isLoading,"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading","error"]),o(m,{label:i.$t("invoices.due_date"),"content-loading":t.isLoading},{default:l(()=>[o(d,{modelValue:n(e).newInvoice.due_date,"onUpdate:modelValue":r[2]||(r[2]=a=>n(e).newInvoice.due_date=a),"content-loading":t.isLoading,"calendar-button":!0,"calendar-button-icon":"calendar"},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading"]),o(m,{label:i.$t("invoices.invoice_number"),"content-loading":t.isLoading,error:t.v.invoice_number.$error&&t.v.invoice_number.$errors[0].$message,required:""},{default:l(()=>[o(S,{modelValue:n(e).newInvoice.invoice_number,"onUpdate:modelValue":r[3]||(r[3]=a=>n(e).newInvoice.invoice_number=a),"content-loading":t.isLoading,onInput:r[4]||(r[4]=a=>t.v.invoice_number.$touch())},null,8,["modelValue","content-loading"])]),_:1},8,["label","content-loading","error"]),o(ye,{store:n(e),"store-prop":"newInvoice",v:t.v,"is-loading":t.isLoading,"is-edit":t.isEdit,"customer-currency":n(e).newInvoice.currency_id},null,8,["store","v","is-loading","is-edit","customer-currency"])]),_:1})])}}},Ce=["onSubmit"],Ve={class:"flex"},ke={class:"block mt-10 invoice-foot lg:flex lg:justify-between lg:items-start"},je={class:"relative w-full lg:w-1/2 lg:mr-4"},Re={setup(t){const e=M(),i=ue(),r=me(),B=ve(),{t:d}=Z();let m=ee(),S=ne();const _="newInvoice";let a=x(!1);const F=x(["customer","company","customerCustom","invoice","invoiceCustom"]);let f=b(()=>e.isFetchingInvoice||e.isFetchingInitialSettings),E=b(()=>v.value?d("invoices.edit_invoice"):d("invoices.new_invoice"));const N=b(()=>i.selectedCompanySettings.sales_tax_us_enabled==="YES"&&B.salesTaxUSEnabled);let v=b(()=>m.name==="invoices.edit");const U={invoice_date:{required:p.withMessage(d("validation.required"),y)},reference_number:{maxLength:p.withMessage(d("validation.price_maxlength"),te(255))},customer_id:{required:p.withMessage(d("validation.required"),y)},invoice_number:{required:p.withMessage(d("validation.required"),y)},exchange_rate:{required:oe(function(){return p.withMessage(d("validation.required"),y),e.showExchangeRate}),decimal:p.withMessage(d("validation.valid_exchange_rate"),ie)}},w=ae(U,b(()=>e.newInvoice),{$scope:_});r.resetCustomFields(),w.value.$reset,e.resetCurrentInvoice(),e.fetchInvoiceInitialSettings(v.value),se(()=>e.newInvoice.customer,s=>{s&&s.currency?e.newInvoice.selectedCurrency=s.currency:e.newInvoice.selectedCurrency=i.selectedCompanyCurrency});async function G(){if(w.value.$touch(),w.value.$invalid)return!1;a.value=!0;let s=L(q({},e.newInvoice),{sub_total:e.getSubTotal,total:e.getTotal,tax:e.getTotalTax});try{const g=await(v.value?e.updateInvoice:e.addInvoice)(s);S.push(`/admin/invoices/${g.data.data.id}/view`)}catch(h){console.error(h)}a.value=!1}return(s,h)=>{const g=c("BaseBreadcrumbItem"),D=c("BaseBreadcrumb"),V=c("BaseButton"),R=c("router-link"),H=c("BaseIcon"),O=c("BasePageHeader"),z=c("BaseScrollPane"),J=c("BasePage");return u(),T(de,null,[o(ge),o(pe),o(Be),n(N)&&(!n(f)||n(m).query.customer)?(u(),I(_e,{key:0,store:n(e),"is-edit":n(v),"store-prop":"newInvoice",customer:n(e).newInvoice.customer},null,8,["store","is-edit","customer"])):C("",!0),o(J,{class:"relative invoice-create-page"},{default:l(()=>[$("form",{onSubmit:re(G,["prevent"])},[o(O,{title:n(E)},{actions:l(()=>[s.$route.name==="invoices.edit"?(u(),I(R,{key:0,to:`/invoices/pdf/${n(e).newInvoice.unique_hash}`,target:"_blank"},{default:l(()=>[o(V,{class:"mr-3",variant:"primary-outline",type:"button"},{default:l(()=>[$("span",Ve,P(s.$t("general.view_pdf")),1)]),_:1})]),_:1},8,["to"])):C("",!0),o(V,{loading:n(a),disabled:n(a),variant:"primary",type:"submit"},{left:l(Y=>[n(a)?C("",!0):(u(),I(H,{key:0,name:"SaveIcon",class:ce(Y.class)},null,8,["class"]))]),default:l(()=>[le(" "+P(s.$t("invoices.save_invoice")),1)]),_:1},8,["loading","disabled"])]),default:l(()=>[o(D,null,{default:l(()=>[o(g,{title:s.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),o(g,{title:s.$tc("invoices.invoice",2),to:"/admin/invoices"},null,8,["title"]),s.$route.name==="invoices.edit"?(u(),I(g,{key:0,title:s.$t("invoices.edit_invoice"),to:"#",active:""},null,8,["title"])):(u(),I(g,{key:1,title:s.$t("invoices.new_invoice"),to:"#",active:""},null,8,["title"]))]),_:1})]),_:1},8,["title"]),o(he,{v:n(w),"is-loading":n(f),"is-edit":n(v)},null,8,["v","is-loading","is-edit"]),o(z,null,{default:l(()=>[o(fe,{currency:n(e).newInvoice.selectedCurrency,"is-loading":n(f),"item-validation-scope":_,store:n(e),"store-prop":"newInvoice"},null,8,["currency","is-loading","store"]),$("div",ke,[$("div",je,[o(be,{store:n(e),"store-prop":"newInvoice",fields:F.value,type:"Invoice"},null,8,["store","fields"]),o($e,{type:"Invoice","is-edit":n(v),"is-loading":n(f),store:n(e),"store-prop":"newInvoice","custom-field-scope":_,class:"mb-6"},null,8,["is-edit","is-loading","store"]),o(Ie,{store:n(e),"store-prop":"newInvoice","component-name":"InvoiceTemplate"},null,8,["store"])]),o(we,{currency:n(e).newInvoice.selectedCurrency,"is-loading":n(f),store:n(e),"store-prop":"newInvoice","tax-popup-type":"invoice"},null,8,["currency","is-loading","store"])])]),_:1})],40,Ce)]),_:1})],64)}}};export{Re as default}; diff --git a/public/build/assets/InvoiceIndexDropdown.430bc329.js b/public/build/assets/InvoiceIndexDropdown.a18e118f.js similarity index 98% rename from public/build/assets/InvoiceIndexDropdown.430bc329.js rename to public/build/assets/InvoiceIndexDropdown.a18e118f.js index fe5fcc5ff..5a784eaa4 100644 --- a/public/build/assets/InvoiceIndexDropdown.430bc329.js +++ b/public/build/assets/InvoiceIndexDropdown.a18e118f.js @@ -1 +1 @@ -import{J as O,G as j,aN as z,ah as R,r as I,o as r,l,w as o,u as c,f as s,q as M,ag as P,i as d,t as m,j as v}from"./vendor.01d0adc5.js";import{i as F,c as U,u as q,j as H,e as W,g as y}from"./main.75722495.js";const K={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:()=>{}}},setup(a){const f=a,p=F(),N=U(),$=q(),b=H(),g=W(),{t:i}=O(),w=j(),C=z(),x=R("utils");function _(e){return(e.status=="SENT"||e.status=="VIEWED")&&g.hasAbilities(y.SEND_INVOICE)}function D(e){return e.status=="DRAFT"&&w.name!=="invoices.view"&&g.hasAbilities(y.SEND_INVOICE)}async function B(e){b.openDialog({title:i("general.are_you_sure"),message:i("invoices.confirm_delete"),yesLabel:i("general.ok"),noLabel:i("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(n=>{e=e,n&&p.deleteInvoice({ids:[e]}).then(t=>{t.data.success&&(C.push("/admin/invoices"),f.table&&f.table.refresh(),p.$patch(h=>{h.selectedInvoices=[],h.selectAllField=!1}))})})}async function A(e){b.openDialog({title:i("general.are_you_sure"),message:i("invoices.confirm_clone"),yesLabel:i("general.ok"),noLabel:i("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(n=>{n&&p.cloneInvoice(e).then(t=>{C.push(`/admin/invoices/${t.data.data.id}/edit`)})})}async function T(e){b.openDialog({title:i("general.are_you_sure"),message:i("invoices.invoice_mark_as_sent"),yesLabel:i("general.ok"),noLabel:i("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(n=>{const t={id:e,status:"SENT"};n&&p.markAsSent(t).then(h=>{f.table&&f.table.refresh()})})}async function E(e){N.openModal({title:i("invoices.send_invoice"),componentName:"SendInvoiceModal",id:e.id,data:e,variant:"sm"})}function V(){let e=`${window.location.origin}/invoices/pdf/${f.row.unique_hash}`;x.copyTextToClipboard(e),$.showNotification({type:"success",message:i("general.copied_pdf_url_clipboard")})}return(e,n)=>{const t=I("BaseIcon"),h=I("BaseButton"),u=I("BaseDropdownItem"),S=I("router-link"),L=I("BaseDropdown");return r(),l(L,null,{activator:o(()=>[c(w).name==="invoices.view"?(r(),l(h,{key:0,variant:"primary"},{default:o(()=>[s(t,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(r(),l(t,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:o(()=>[c(g).hasAbilities(c(y).EDIT_INVOICE)?(r(),l(S,{key:0,to:`/admin/invoices/${a.row.id}/edit`},{default:o(()=>[M(s(u,null,{default:o(()=>[s(t,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("general.edit")),1)]),_:1},512),[[P,a.row.allow_edit]])]),_:1},8,["to"])):v("",!0),c(w).name==="invoices.view"?(r(),l(u,{key:1,onClick:V},{default:o(()=>[s(t,{name:"LinkIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("general.copy_pdf_url")),1)]),_:1})):v("",!0),c(w).name!=="invoices.view"&&c(g).hasAbilities(c(y).VIEW_INVOICE)?(r(),l(S,{key:2,to:`/admin/invoices/${a.row.id}/view`},{default:o(()=>[s(u,null,{default:o(()=>[s(t,{name:"EyeIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("general.view")),1)]),_:1})]),_:1},8,["to"])):v("",!0),D(a.row)?(r(),l(u,{key:3,onClick:n[0]||(n[0]=k=>E(a.row))},{default:o(()=>[s(t,{name:"PaperAirplaneIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("invoices.send_invoice")),1)]),_:1})):v("",!0),_(a.row)?(r(),l(u,{key:4,onClick:n[1]||(n[1]=k=>E(a.row))},{default:o(()=>[s(t,{name:"PaperAirplaneIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("invoices.resend_invoice")),1)]),_:1})):v("",!0),s(S,{to:`/admin/payments/${a.row.id}/create`},{default:o(()=>[a.row.status=="SENT"&&c(w).name!=="invoices.view"?(r(),l(u,{key:0},{default:o(()=>[s(t,{name:"CreditCardIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("invoices.record_payment")),1)]),_:1})):v("",!0)]),_:1},8,["to"]),D(a.row)?(r(),l(u,{key:5,onClick:n[2]||(n[2]=k=>T(a.row.id))},{default:o(()=>[s(t,{name:"CheckCircleIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("invoices.mark_as_sent")),1)]),_:1})):v("",!0),c(g).hasAbilities(c(y).CREATE_INVOICE)?(r(),l(u,{key:6,onClick:n[3]||(n[3]=k=>A(a.row))},{default:o(()=>[s(t,{name:"DocumentTextIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("invoices.clone_invoice")),1)]),_:1})):v("",!0),c(g).hasAbilities(c(y).DELETE_INVOICE)?(r(),l(u,{key:7,onClick:n[4]||(n[4]=k=>B(a.row.id))},{default:o(()=>[s(t,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("general.delete")),1)]),_:1})):v("",!0)]),_:1})}}};export{K as _}; +import{J as O,G as j,aN as z,ah as R,r as I,o as r,l,w as o,u as c,f as s,q as M,ag as P,i as d,t as m,j as v}from"./vendor.01d0adc5.js";import{i as F,c as U,u as q,j as H,e as W,g as y}from"./main.24f7a84b.js";const K={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:()=>{}}},setup(a){const f=a,p=F(),N=U(),$=q(),b=H(),g=W(),{t:i}=O(),w=j(),C=z(),x=R("utils");function _(e){return(e.status=="SENT"||e.status=="VIEWED")&&g.hasAbilities(y.SEND_INVOICE)}function D(e){return e.status=="DRAFT"&&w.name!=="invoices.view"&&g.hasAbilities(y.SEND_INVOICE)}async function B(e){b.openDialog({title:i("general.are_you_sure"),message:i("invoices.confirm_delete"),yesLabel:i("general.ok"),noLabel:i("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(n=>{e=e,n&&p.deleteInvoice({ids:[e]}).then(t=>{t.data.success&&(C.push("/admin/invoices"),f.table&&f.table.refresh(),p.$patch(h=>{h.selectedInvoices=[],h.selectAllField=!1}))})})}async function A(e){b.openDialog({title:i("general.are_you_sure"),message:i("invoices.confirm_clone"),yesLabel:i("general.ok"),noLabel:i("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(n=>{n&&p.cloneInvoice(e).then(t=>{C.push(`/admin/invoices/${t.data.data.id}/edit`)})})}async function T(e){b.openDialog({title:i("general.are_you_sure"),message:i("invoices.invoice_mark_as_sent"),yesLabel:i("general.ok"),noLabel:i("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(n=>{const t={id:e,status:"SENT"};n&&p.markAsSent(t).then(h=>{f.table&&f.table.refresh()})})}async function E(e){N.openModal({title:i("invoices.send_invoice"),componentName:"SendInvoiceModal",id:e.id,data:e,variant:"sm"})}function V(){let e=`${window.location.origin}/invoices/pdf/${f.row.unique_hash}`;x.copyTextToClipboard(e),$.showNotification({type:"success",message:i("general.copied_pdf_url_clipboard")})}return(e,n)=>{const t=I("BaseIcon"),h=I("BaseButton"),u=I("BaseDropdownItem"),S=I("router-link"),L=I("BaseDropdown");return r(),l(L,null,{activator:o(()=>[c(w).name==="invoices.view"?(r(),l(h,{key:0,variant:"primary"},{default:o(()=>[s(t,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(r(),l(t,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:o(()=>[c(g).hasAbilities(c(y).EDIT_INVOICE)?(r(),l(S,{key:0,to:`/admin/invoices/${a.row.id}/edit`},{default:o(()=>[M(s(u,null,{default:o(()=>[s(t,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("general.edit")),1)]),_:1},512),[[P,a.row.allow_edit]])]),_:1},8,["to"])):v("",!0),c(w).name==="invoices.view"?(r(),l(u,{key:1,onClick:V},{default:o(()=>[s(t,{name:"LinkIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("general.copy_pdf_url")),1)]),_:1})):v("",!0),c(w).name!=="invoices.view"&&c(g).hasAbilities(c(y).VIEW_INVOICE)?(r(),l(S,{key:2,to:`/admin/invoices/${a.row.id}/view`},{default:o(()=>[s(u,null,{default:o(()=>[s(t,{name:"EyeIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("general.view")),1)]),_:1})]),_:1},8,["to"])):v("",!0),D(a.row)?(r(),l(u,{key:3,onClick:n[0]||(n[0]=k=>E(a.row))},{default:o(()=>[s(t,{name:"PaperAirplaneIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("invoices.send_invoice")),1)]),_:1})):v("",!0),_(a.row)?(r(),l(u,{key:4,onClick:n[1]||(n[1]=k=>E(a.row))},{default:o(()=>[s(t,{name:"PaperAirplaneIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("invoices.resend_invoice")),1)]),_:1})):v("",!0),s(S,{to:`/admin/payments/${a.row.id}/create`},{default:o(()=>[a.row.status=="SENT"&&c(w).name!=="invoices.view"?(r(),l(u,{key:0},{default:o(()=>[s(t,{name:"CreditCardIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("invoices.record_payment")),1)]),_:1})):v("",!0)]),_:1},8,["to"]),D(a.row)?(r(),l(u,{key:5,onClick:n[2]||(n[2]=k=>T(a.row.id))},{default:o(()=>[s(t,{name:"CheckCircleIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("invoices.mark_as_sent")),1)]),_:1})):v("",!0),c(g).hasAbilities(c(y).CREATE_INVOICE)?(r(),l(u,{key:6,onClick:n[3]||(n[3]=k=>A(a.row))},{default:o(()=>[s(t,{name:"DocumentTextIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("invoices.clone_invoice")),1)]),_:1})):v("",!0),c(g).hasAbilities(c(y).DELETE_INVOICE)?(r(),l(u,{key:7,onClick:n[4]||(n[4]=k=>B(a.row.id))},{default:o(()=>[s(t,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),d(" "+m(e.$t("general.delete")),1)]),_:1})):v("",!0)]),_:1})}}};export{K as _}; diff --git a/public/build/assets/ItemUnitModal.01494bfb.js b/public/build/assets/ItemUnitModal.98d168e7.js similarity index 88% rename from public/build/assets/ItemUnitModal.01494bfb.js rename to public/build/assets/ItemUnitModal.98d168e7.js index 80b85c826..5e9d0fd12 100644 --- a/public/build/assets/ItemUnitModal.01494bfb.js +++ b/public/build/assets/ItemUnitModal.98d168e7.js @@ -1 +1 @@ -import{J as S,B as V,k as h,L as g,M as C,N as k,T as N,r as i,o as B,l as b,w as r,h as c,i as p,t as f,u as e,f as l,m as j,j as x,U as q}from"./vendor.01d0adc5.js";import{p as z,c as D}from"./main.75722495.js";const L={class:"flex justify-between w-full"},T=["onSubmit"],E={class:"p-8 sm:p-6"},G={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid border-modal-bg"},F={setup(J){const t=z(),a=D(),{t:v}=S();let s=V(!1);const $=h(()=>({name:{required:g.withMessage(v("validation.required"),C),minLength:g.withMessage(v("validation.name_min_length",{count:3}),k(3))}})),n=N($,h(()=>t.currentItemUnit));async function U(){if(n.value.$touch(),n.value.$invalid)return!0;try{const o=t.isItemUnitEdit?t.updateItemUnit:t.addItemUnit;s.value=!0,await o(t.currentItemUnit),a.refreshData&&a.refreshData(),u(),s.value=!1}catch{return s.value=!1,!0}}function u(){a.closeModal(),setTimeout(()=>{t.currentItemUnit={id:null,name:""},a.$reset(),n.value.$reset()},300)}return(o,m)=>{const _=i("BaseIcon"),y=i("BaseInput"),w=i("BaseInputGroup"),I=i("BaseButton"),M=i("BaseModal");return B(),b(M,{show:e(a).active&&e(a).componentName==="ItemUnitModal",onClose:u},{header:r(()=>[c("div",L,[p(f(e(a).title)+" ",1),l(_,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:u})])]),default:r(()=>[c("form",{action:"",onSubmit:q(U,["prevent"])},[c("div",E,[l(w,{label:o.$t("settings.customization.items.unit_name"),error:e(n).name.$error&&e(n).name.$errors[0].$message,variant:"horizontal",required:""},{default:r(()=>[l(y,{modelValue:e(t).currentItemUnit.name,"onUpdate:modelValue":m[0]||(m[0]=d=>e(t).currentItemUnit.name=d),invalid:e(n).name.$error,type:"text",onInput:m[1]||(m[1]=d=>e(n).name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),c("div",G,[l(I,{type:"button",variant:"primary-outline",class:"mr-3 text-sm",onClick:u},{default:r(()=>[p(f(o.$t("general.cancel")),1)]),_:1}),l(I,{loading:e(s),disabled:e(s),variant:"primary",type:"submit"},{left:r(d=>[e(s)?x("",!0):(B(),b(_,{key:0,name:"SaveIcon",class:j(d.class)},null,8,["class"]))]),default:r(()=>[p(" "+f(e(t).isItemUnitEdit?o.$t("general.update"):o.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,T)]),_:1},8,["show"])}}};export{F as _}; +import{J as S,B as V,k as h,L as g,M as C,N as k,T as N,r as i,o as b,l as B,w as r,h as c,i as p,t as f,u as e,f as l,m as j,j as x,U as q}from"./vendor.01d0adc5.js";import{p as z,c as D}from"./main.24f7a84b.js";const L={class:"flex justify-between w-full"},T=["onSubmit"],E={class:"p-8 sm:p-6"},G={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid border-modal-bg"},F={setup(J){const t=z(),a=D(),{t:v}=S();let s=V(!1);const $=h(()=>({name:{required:g.withMessage(v("validation.required"),C),minLength:g.withMessage(v("validation.name_min_length",{count:3}),k(3))}})),n=N($,h(()=>t.currentItemUnit));async function U(){if(n.value.$touch(),n.value.$invalid)return!0;try{const o=t.isItemUnitEdit?t.updateItemUnit:t.addItemUnit;s.value=!0,await o(t.currentItemUnit),a.refreshData&&a.refreshData(),u(),s.value=!1}catch{return s.value=!1,!0}}function u(){a.closeModal(),setTimeout(()=>{t.currentItemUnit={id:null,name:""},a.$reset(),n.value.$reset()},300)}return(o,m)=>{const _=i("BaseIcon"),y=i("BaseInput"),w=i("BaseInputGroup"),I=i("BaseButton"),M=i("BaseModal");return b(),B(M,{show:e(a).active&&e(a).componentName==="ItemUnitModal",onClose:u},{header:r(()=>[c("div",L,[p(f(e(a).title)+" ",1),l(_,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:u})])]),default:r(()=>[c("form",{action:"",onSubmit:q(U,["prevent"])},[c("div",E,[l(w,{label:o.$t("settings.customization.items.unit_name"),error:e(n).name.$error&&e(n).name.$errors[0].$message,variant:"horizontal",required:""},{default:r(()=>[l(y,{modelValue:e(t).currentItemUnit.name,"onUpdate:modelValue":m[0]||(m[0]=d=>e(t).currentItemUnit.name=d),invalid:e(n).name.$error,type:"text",onInput:m[1]||(m[1]=d=>e(n).name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),c("div",G,[l(I,{type:"button",variant:"primary-outline",class:"mr-3 text-sm",onClick:u},{default:r(()=>[p(f(o.$t("general.cancel")),1)]),_:1}),l(I,{loading:e(s),disabled:e(s),variant:"primary",type:"submit"},{left:r(d=>[e(s)?x("",!0):(b(),B(_,{key:0,name:"SaveIcon",class:j(d.class)},null,8,["class"]))]),default:r(()=>[p(" "+f(e(t).isItemUnitEdit?o.$t("general.update"):o.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,T)]),_:1},8,["show"])}}};export{F as _}; diff --git a/public/build/assets/LayoutBasic.e1f34a75.js b/public/build/assets/LayoutBasic.7688bb12.js similarity index 99% rename from public/build/assets/LayoutBasic.e1f34a75.js rename to public/build/assets/LayoutBasic.7688bb12.js index f9ba56eb7..08e12b110 100644 --- a/public/build/assets/LayoutBasic.e1f34a75.js +++ b/public/build/assets/LayoutBasic.7688bb12.js @@ -1 +1 @@ -import{aN as q,J as z,B as k,a0 as _e,k as P,L as N,M as J,N as he,T as ae,r as y,o as a,l as C,w as s,h as n,i as U,t as u,u as e,f as t,e as i,m as L,j as B,U as H,G as X,C as oe,aO as se,F as V,y as R,Y as ne,A as ye,a5 as fe,a2 as K,a3 as ge,a6 as ve,aP as be,D as xe}from"./vendor.01d0adc5.js";import{b as Y,c as W,d as D,e as Q,S as we,a as $e,f as re,g as j,u as ke}from"./main.75722495.js";import{u as le}from"./exchange-rate.dffa79b6.js";import{u as Ce}from"./users.73a3faa4.js";import{N as Be}from"./NotificationRoot.a98180ab.js";import{V as Se}from"./index.esm.998a6eeb.js";const Ie={class:"flex justify-between w-full"},Me=["onSubmit"],Ue={class:"p-4 mb-16 sm:p-6 space-y-4"},Ee={key:1,class:"flex flex-col items-center"},Ve={class:"z-0 flex justify-end p-4 bg-gray-50 border-modal-bg"},Ae={setup(F){const m=q(),r=Y(),d=W(),f=D(),{t:_}=z();let g=k(!1),b=k(null),c=k(!1),l=k(null),p=k(null);const h=_e({name:null,currency:"",address:{country_id:null}}),v=P(()=>d.active&&d.componentName==="CompanyModal"),x={newCompanyForm:{name:{required:N.withMessage(_("validation.required"),J),minLength:N.withMessage(_("validation.name_min_length",{count:3}),he(3))},address:{country_id:{required:N.withMessage(_("validation.required"),J)}},currency:{required:N.withMessage(_("validation.required"),J)}}},o=ae(x,{newCompanyForm:h});async function w(){c.value=!0,await f.fetchCurrencies(),await f.fetchCountries(),h.currency=r.selectedCompanyCurrency.id,h.address.country_id=r.selectedCompany.address.country_id,c.value=!1}function S(I,M){p.value=I,l.value=M}function $(){p.value=null,l.value=null}async function E(){if(o.value.newCompanyForm.$touch(),o.value.$invalid)return!0;g.value=!0;try{const I=await r.addNewCompany(h);if(I.data.data){if(await r.setSelectedCompany(I.data.data),l&&l.value){let M=new FormData;M.append("company_logo",JSON.stringify({name:p.value,data:l.value})),await r.updateCompanyLogo(M),m.push("/admin/dashboard")}await f.setIsAppLoaded(!1),await f.bootstrap(),O()}g.value=!1}catch{g.value=!1}}function T(){h.name="",h.currency="",h.address.country_id="",o.value.$reset()}function O(){d.closeModal(),setTimeout(()=>{T(),o.value.$reset()},300)}return(I,M)=>{const Z=y("BaseIcon"),ie=y("BaseContentPlaceholdersBox"),ce=y("BaseContentPlaceholders"),de=y("BaseFileUploader"),G=y("BaseInputGroup"),ue=y("BaseInput"),ee=y("BaseMultiselect"),me=y("BaseInputGrid"),te=y("BaseButton"),pe=y("BaseModal");return a(),C(pe,{show:e(v),onClose:O,onOpen:w},{header:s(()=>[n("div",Ie,[U(u(e(d).title)+" ",1),t(Z,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:O})])]),default:s(()=>[n("form",{action:"",onSubmit:H(E,["prevent"])},[n("div",Ue,[t(me,{layout:"one-column"},{default:s(()=>[t(G,{"content-loading":e(c),label:I.$tc("settings.company_info.company_logo")},{default:s(()=>[e(c)?(a(),C(ce,{key:0},{default:s(()=>[t(ie,{rounded:!0,class:"w-full h-24"})]),_:1})):(a(),i("div",Ee,[t(de,{"preview-image":e(b),base64:"",onRemove:$,onChange:S},null,8,["preview-image"])]))]),_:1},8,["content-loading","label"]),t(G,{label:I.$tc("settings.company_info.company_name"),error:e(o).newCompanyForm.name.$error&&e(o).newCompanyForm.name.$errors[0].$message,"content-loading":e(c),required:""},{default:s(()=>[t(ue,{modelValue:e(h).name,"onUpdate:modelValue":M[0]||(M[0]=A=>e(h).name=A),invalid:e(o).newCompanyForm.name.$error,"content-loading":e(c),onInput:M[1]||(M[1]=A=>e(o).newCompanyForm.name.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","error","content-loading"]),t(G,{"content-loading":e(c),label:I.$tc("settings.company_info.country"),error:e(o).newCompanyForm.address.country_id.$error&&e(o).newCompanyForm.address.country_id.$errors[0].$message,required:""},{default:s(()=>[t(ee,{modelValue:e(h).address.country_id,"onUpdate:modelValue":M[2]||(M[2]=A=>e(h).address.country_id=A),"content-loading":e(c),label:"name",invalid:e(o).newCompanyForm.address.country_id.$error,options:e(f).countries,"value-prop":"id","can-deselect":!0,"can-clear":!1,searchable:"","track-by":"name"},null,8,["modelValue","content-loading","invalid","options"])]),_:1},8,["content-loading","label","error"]),t(G,{label:I.$t("wizard.currency"),error:e(o).newCompanyForm.currency.$error&&e(o).newCompanyForm.currency.$errors[0].$message,"content-loading":e(c),"help-text":I.$t("wizard.currency_set_alert"),required:""},{default:s(()=>[t(ee,{modelValue:e(h).currency,"onUpdate:modelValue":M[3]||(M[3]=A=>e(h).currency=A),"content-loading":e(c),options:e(f).currencies,label:"name","value-prop":"id",searchable:!0,"track-by":"name",placeholder:I.$tc("settings.currencies.select_currency"),invalid:e(o).newCompanyForm.currency.$error,class:"w-full"},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","error","content-loading","help-text"])]),_:1})]),n("div",Ve,[t(te,{class:"mr-3 text-sm",variant:"primary-outline",outline:"",type:"button",onClick:O},{default:s(()=>[U(u(I.$t("general.cancel")),1)]),_:1}),t(te,{loading:e(g),disabled:e(g),variant:"primary",type:"submit"},{left:s(A=>[e(g)?B("",!0):(a(),C(Z,{key:0,name:"SaveIcon",class:L(A.class)},null,8,["class"]))]),default:s(()=>[U(" "+u(I.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,Me)]),_:1},8,["show"])}}},Re={key:0,class:"w-16 text-sm font-medium truncate sm:w-auto"},Fe={key:0,class:"absolute right-0 mt-2 bg-white rounded-md shadow-lg"},Le={class:"overflow-y-auto scrollbar-thin scrollbar-thumb-rounded-full w-[250px] max-h-[350px] scrollbar-thumb-gray-300 scrollbar-track-gray-10 pb-4"},je={class:"px-3 py-2 text-xs font-semibold text-gray-400 mb-0.5 block uppercase"},Ne={key:0,class:"flex flex-col items-center justify-center p-2 px-3 mt-4 text-base text-gray-400"},Te={key:1},De={key:0},Oe=["onClick"],Ge={class:"flex items-center"},qe={class:"flex items-center justify-center mr-3 overflow-hidden text-base font-semibold bg-gray-200 rounded-md w-9 h-9 text-primary-500"},ze={key:0},Pe=["src"],Je={class:"flex flex-col"},Xe={class:"text-sm"},Ye={class:"font-medium"},We={setup(F){const m=Y(),r=W(),d=X(),f=q(),_=D(),{t:g}=z(),b=Q(),c=k(!1),l=k(""),p=k(null);oe(d,()=>{c.value=!1,l.value=""}),se(p,()=>{c.value=!1});function h(o){if(o)return o.split(" ")[0].charAt(0).toUpperCase()}function v(){r.openModal({title:g("company_switcher.new_company"),componentName:"CompanyModal",size:"sm"})}async function x(o){await m.setSelectedCompany(o),f.push("/admin/dashboard"),await _.setIsAppLoaded(!1),await _.bootstrap()}return(o,w)=>{const S=y("BaseIcon");return a(),i("div",{ref:($,E)=>{E.companySwitchBar=$,p.value=$},class:"relative rounded"},[t(Ae),n("div",{class:"flex items-center justify-center px-3 h-8 md:h-9 ml-2 text-sm text-white bg-white rounded cursor-pointer bg-opacity-20",onClick:w[0]||(w[0]=$=>c.value=!c.value)},[e(m).selectedCompany?(a(),i("span",Re,u(e(m).selectedCompany.name),1)):B("",!0),t(S,{name:"ChevronDownIcon",class:"h-5 ml-1 text-white"})]),t(ne,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"translate-y-1 opacity-0","enter-to-class":"translate-y-0 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"translate-y-0 opacity-100","leave-to-class":"translate-y-1 opacity-0"},{default:s(()=>[c.value?(a(),i("div",Fe,[n("div",Le,[n("label",je,u(o.$t("company_switcher.label")),1),e(m).companies.length<1?(a(),i("div",Ne,[t(S,{name:"ExclamationCircleIcon",class:"h-5 text-gray-400"}),U(" "+u(o.$t("company_switcher.no_results_found")),1)])):(a(),i("div",Te,[e(m).companies.length>0?(a(),i("div",De,[(a(!0),i(V,null,R(e(m).companies,($,E)=>(a(),i("div",{key:E,class:L(["p-2 px-3 rounded-md cursor-pointer hover:bg-gray-100 hover:text-primary-500",{"bg-gray-100 text-primary-500":e(m).selectedCompany.id===$.id}]),onClick:T=>x($)},[n("div",Ge,[n("span",qe,[$.logo?(a(),i("img",{key:1,src:$.logo,alt:"Company logo",class:"w-full h-full object-contain"},null,8,Pe)):(a(),i("span",ze,u(h($.name)),1))]),n("div",Je,[n("span",Xe,u($.name),1)])])],10,Oe))),128))])):B("",!0)]))]),e(b).currentUser.is_owner?(a(),i("div",{key:0,class:"flex items-center justify-center p-4 pl-3 border-t-2 border-gray-100 cursor-pointer text-primary-400 hover:text-primary-500",onClick:v},[t(S,{name:"PlusIcon",class:"h-5 mr-2"}),n("span",Ye,u(o.$t("company_switcher.add_new_company")),1)])):B("",!0)])):B("",!0)]),_:1})],512)}}},He={key:0,class:"scrollbar-thin scrollbar-thumb-rounded-full scrollbar-thumb-gray-300 scrollbar-track-gray-100 overflow-y-auto bg-white rounded-md mt-2 shadow-lg p-3 absolute w-[300px] h-[200px] right-0"},Ke={key:0,class:"flex items-center justify-center text-gray-400 text-base flex-col mt-4"},Qe={key:1},Ze={key:0},et={class:"text-sm text-gray-400 mb-0.5 block px-2 uppercase"},tt={class:"flex items-center justify-center w-9 h-9 mr-3 text-base font-semibold bg-gray-200 rounded-full text-primary-500"},at={class:"flex flex-col"},ot={class:"text-sm"},st={key:0,class:"text-xs text-gray-400"},nt={key:1,class:"text-xs text-gray-400"},rt={key:1,class:"mt-2"},lt={class:"text-sm text-gray-400 mb-2 block px-2 mb-0.5 uppercase"},it={class:"flex items-center justify-center w-9 h-9 mr-3 text-base font-semibold bg-gray-200 rounded-full text-primary-500"},ct={class:"flex flex-col"},dt={class:"text-sm"},ut={class:"text-xs text-gray-400"},mt={setup(F){const m=Ce(),r=k(!1),d=k(""),f=k(null),_=k(!1),g=X();oe(g,()=>{r.value=!1,d.value=""}),b=ye.exports.debounce(b,500),se(f,()=>{r.value=!1,d.value=""});function b(){let l={search:d.value};d.value&&(_.value=!0,m.searchUsers(l).then(()=>{r.value=!0}),_.value=!1),d.value===""&&(r.value=!1)}function c(l){if(l)return l.split(" ")[0].charAt(0).toUpperCase()}return(l,p)=>{const h=y("BaseIcon"),v=y("BaseInput"),x=y("router-link");return a(),i("div",{ref:(o,w)=>{w.searchBar=o,f.value=o},class:"hidden rounded md:block relative"},[n("div",null,[t(v,{modelValue:d.value,"onUpdate:modelValue":p[0]||(p[0]=o=>d.value=o),placeholder:"Search...","container-class":"!rounded",class:"h-8 md:h-9 !rounded",onInput:b},{left:s(()=>[t(h,{name:"SearchIcon",class:"text-gray-400"})]),right:s(()=>[_.value?(a(),C(we,{key:0,class:"h-5 text-primary-500"})):B("",!0)]),_:1},8,["modelValue"])]),t(ne,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"translate-y-1 opacity-0","enter-to-class":"translate-y-0 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"translate-y-0 opacity-100","leave-to-class":"translate-y-1 opacity-0"},{default:s(()=>[r.value?(a(),i("div",He,[e(m).userList.length<1&&e(m).customerList.length<1?(a(),i("div",Ke,[t(h,{name:"ExclamationCircleIcon",class:"text-gray-400"}),U(" "+u(l.$t("global_search.no_results_found")),1)])):(a(),i("div",Qe,[e(m).customerList.length>0?(a(),i("div",Ze,[n("label",et,u(l.$t("global_search.customers")),1),(a(!0),i(V,null,R(e(m).customerList,(o,w)=>(a(),i("div",{key:w,class:"p-2 hover:bg-gray-100 cursor-pointer rounded-md"},[t(x,{to:{path:`/admin/customers/${o.id}/view`},class:"flex items-center"},{default:s(()=>[n("span",tt,u(c(o.name)),1),n("div",at,[n("span",ot,u(o.name),1),o.contact_name?(a(),i("span",st,u(o.contact_name),1)):(a(),i("span",nt,u(o.email),1))])]),_:2},1032,["to"])]))),128))])):B("",!0),e(m).userList.length>0?(a(),i("div",rt,[n("label",lt,u(l.$t("global_search.users")),1),(a(!0),i(V,null,R(e(m).userList,(o,w)=>(a(),i("div",{key:w,class:"p-2 hover:bg-gray-100 cursor-pointer rounded-md"},[t(x,{to:{path:`/admin/users/${o.id}/edit`},class:"flex items-center"},{default:s(()=>[n("span",it,u(c(o.name)),1),n("div",ct,[n("span",dt,u(o.name),1),n("span",ut,u(o.email),1)])]),_:2},1032,["to"])]))),128))])):B("",!0)]))])):B("",!0)]),_:1})],512)}}},pt={class:"fixed top-0 left-0 z-20 flex items-center justify-between w-full px-4 py-3 md:h-16 md:px-8 bg-gradient-to-r from-primary-500 to-primary-400"},_t=["onClick"],ht={class:"flex float-right h-8 m-0 list-none md:h-9"},yt={key:0,class:"relative hidden float-left m-0 md:block"},ft={class:"flex items-center justify-center w-8 h-8 ml-2 text-sm text-black bg-white rounded md:h-9 md:w-9"},gt={class:"ml-2"},vt={class:"relative block float-left ml-2"},bt=["src"],xt={setup(F){const m=$e(),r=Q(),d=D(),f=q(),_=P(()=>r.currentUser&&r.currentUser.avatar!==0?r.currentUser.avatar:g());function g(){return new URL("/build/img/default-avatar.jpg",self.location)}function b(){return r.hasAbilities([j.CREATE_INVOICE,j.CREATE_ESTIMATE,j.CREATE_CUSTOMER])}async function c(){await m.logout(),f.push("/login")}function l(){d.setSidebarVisibility(!0)}return(p,h)=>{const v=y("router-link"),x=y("BaseIcon"),o=y("BaseDropdownItem"),w=y("BaseDropdown");return a(),i("header",pt,[t(v,{to:"/admin/dashboard",class:"float-none text-lg not-italic font-black tracking-wider text-white brand-main md:float-left font-base hidden md:block"},{default:s(()=>[t(re,{class:"h-6","light-color":"white","dark-color":"white"})]),_:1}),n("div",{class:L([{"is-active":e(d).isSidebarOpen},"flex float-left p-1 overflow-visible text-sm ease-linear bg-white border-0 rounded cursor-pointer md:hidden md:ml-0 hover:bg-gray-100"]),onClick:H(l,["prevent"])},[t(x,{name:"MenuIcon",class:"!w-6 !h-6 text-gray-500"})],10,_t),n("ul",ht,[b?(a(),i("li",yt,[t(w,{"width-class":"w-48"},{activator:s(()=>[n("div",ft,[t(x,{name:"PlusIcon",class:"w-5 h-5 text-gray-600"})])]),default:s(()=>[t(v,{to:"/admin/invoices/create"},{default:s(()=>[e(r).hasAbilities(e(j).CREATE_INVOICE)?(a(),C(o,{key:0},{default:s(()=>[t(x,{name:"DocumentTextIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500","aria-hidden":"true"}),U(" "+u(p.$t("invoices.new_invoice")),1)]),_:1})):B("",!0)]),_:1}),t(v,{to:"/admin/estimates/create"},{default:s(()=>[e(r).hasAbilities(e(j).CREATE_ESTIMATE)?(a(),C(o,{key:0},{default:s(()=>[t(x,{name:"DocumentIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500","aria-hidden":"true"}),U(" "+u(p.$t("estimates.new_estimate")),1)]),_:1})):B("",!0)]),_:1}),t(v,{to:"/admin/customers/create"},{default:s(()=>[e(r).hasAbilities(e(j).CREATE_CUSTOMER)?(a(),C(o,{key:0},{default:s(()=>[t(x,{name:"UserIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500","aria-hidden":"true"}),U(" "+u(p.$t("customers.new_customer")),1)]),_:1})):B("",!0)]),_:1})]),_:1})])):B("",!0),n("li",gt,[e(r).currentUser.is_owner||e(r).hasAbilities(e(j).VIEW_CUSTOMER)?(a(),C(mt,{key:0})):B("",!0)]),n("li",null,[t(We)]),n("li",vt,[t(w,{"width-class":"w-48"},{activator:s(()=>[n("img",{src:e(_),class:"block w-8 h-8 rounded md:h-9 md:w-9"},null,8,bt)]),default:s(()=>[t(v,{to:"/admin/settings/account-settings"},{default:s(()=>[t(o,null,{default:s(()=>[t(x,{name:"CogIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500","aria-hidden":"true"}),U(" "+u(p.$t("navigation.settings")),1)]),_:1})]),_:1}),t(o,{onClick:c},{default:s(()=>[t(x,{name:"LogoutIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500","aria-hidden":"true"}),U(" "+u(p.$t("navigation.logout")),1)]),_:1})]),_:1})])])])}}},wt={class:"relative flex flex-col flex-1 w-full max-w-xs bg-white"},$t={class:"absolute top-0 right-0 pt-2 -mr-12"},kt=n("span",{class:"sr-only"},"Close sidebar",-1),Ct={class:"flex-1 h-0 pt-5 pb-4 overflow-y-auto"},Bt={class:"flex items-center shrink-0 px-4 mb-10"},St=n("div",{class:"shrink-0 w-14"},null,-1),It={class:"hidden w-56 h-screen h-screen-ios pb-32 overflow-y-auto bg-white border-r border-gray-200 border-solid xl:w-64 md:fixed md:flex md:flex-col md:inset-y-0 pt-16"},Mt={setup(F){const m=X(),r=D();function d(f){return m.path.indexOf(f)>-1}return(f,_)=>{const g=y("BaseIcon"),b=y("router-link");return a(),i(V,null,[t(e(ve),{as:"template",show:e(r).isSidebarOpen},{default:s(()=>[t(e(fe),{as:"div",class:"fixed inset-0 z-40 flex md:hidden",onClose:_[3]||(_[3]=c=>e(r).setSidebarVisibility(!1))},{default:s(()=>[t(e(K),{as:"template",enter:"transition-opacity ease-linear duration-300","enter-from":"opacity-0","enter-to":"opacity-100",leave:"transition-opacity ease-linear duration-300","leave-from":"opacity-100","leave-to":"opacity-0"},{default:s(()=>[t(e(ge),{class:"fixed inset-0 bg-gray-600 bg-opacity-75"})]),_:1}),t(e(K),{as:"template",enter:"transition ease-in-out duration-300","enter-from":"-translate-x-full","enter-to":"translate-x-0",leave:"transition ease-in-out duration-300","leave-from":"translate-x-0","leave-to":"-translate-x-full"},{default:s(()=>[n("div",wt,[t(e(K),{as:"template",enter:"ease-in-out duration-300","enter-from":"opacity-0","enter-to":"opacity-100",leave:"ease-in-out duration-300","leave-from":"opacity-100","leave-to":"opacity-0"},{default:s(()=>[n("div",$t,[n("button",{class:"flex items-center justify-center w-10 h-10 ml-1 rounded-full focus:outline-none focus:ring-2 focus:ring-inset focus:ring-white",onClick:_[0]||(_[0]=c=>e(r).setSidebarVisibility(!1))},[kt,t(g,{name:"XIcon",class:"w-6 h-6 text-white","aria-hidden":"true"})])])]),_:1}),n("div",Ct,[n("div",Bt,[t(re,{class:"block h-auto max-w-full w-36 text-primary-400",alt:"Crater Logo"})]),(a(!0),i(V,null,R(e(r).menuGroups,c=>(a(),i("nav",{key:c,class:"mt-5 space-y-1"},[(a(!0),i(V,null,R(c,l=>(a(),C(b,{key:l.name,to:l.link,class:L([d(l.link)?"text-primary-500 border-primary-500 bg-gray-100 ":"text-black","cursor-pointer px-0 pl-4 py-3 border-transparent flex items-center border-l-4 border-solid text-sm not-italic font-medium"]),onClick:_[2]||(_[2]=p=>e(r).setSidebarVisibility(!1))},{default:s(()=>[t(g,{name:l.icon,class:L([d(l.link)?"text-primary-500 ":"text-gray-400","mr-4 shrink-0 h-5 w-5"]),onClick:_[1]||(_[1]=p=>e(r).setSidebarVisibility(!1))},null,8,["name","class"]),U(" "+u(f.$t(l.title)),1)]),_:2},1032,["to","class"]))),128))]))),128))])])]),_:1}),St]),_:1})]),_:1},8,["show"]),n("div",It,[(a(!0),i(V,null,R(e(r).menuGroups,c=>(a(),i("div",{key:c,class:"p-0 m-0 mt-6 list-none"},[(a(!0),i(V,null,R(c,l=>(a(),C(b,{key:l,to:l.link,class:L([d(l.link)?"text-primary-500 border-primary-500 bg-gray-100 ":"text-black","cursor-pointer px-0 pl-6 hover:bg-gray-50 py-3 group flex items-center border-l-4 border-solid border-transparent text-sm not-italic font-medium"])},{default:s(()=>[t(g,{name:l.icon,class:L([d(l.link)?"text-primary-500 group-hover:text-primary-500 ":"text-gray-400 group-hover:text-black","mr-4 shrink-0 h-5 w-5 "])},null,8,["name","class"]),U(" "+u(f.$t(l.title)),1)]),_:2},1032,["to","class"]))),128))]))),128))])],64)}}},Ut={class:"font-medium text-lg text-left"},Et={class:"mt-2 text-sm leading-snug text-gray-500",style:{"max-width":"680px"}},Vt=["onSubmit"],At={class:"text-gray-500 sm:text-sm"},Rt={class:"text-gray-400 text-xs mt-2 font-light"},Ft={slot:"footer",class:"z-0 flex justify-end mt-4 pt-4 border-t border-gray-200 border-solid border-modal-bg"},Lt={emits:["update"],setup(F,{emit:m}){const r=le();ke();const d=Y(),{t:f,tm:_}=z();let g=k(!1);k(!1);const b={exchange_rate:{required:N.withMessage(f("validation.required"),J),decimal:N.withMessage(f("validation.valid_exchange_rate"),be)}},c=ae();async function l(){if(c.value.$touch(),c.value.$invalid)return!0;g.value=!0;let p=r.bulkCurrencies.map(v=>({id:v.id,exchange_rate:v.exchange_rate})),h=await r.updateBulkExchangeRate({currencies:p});h.data.success&&m("update",h.data.success),g.value=!1}return(p,h)=>{const v=y("BaseInput"),x=y("BaseInputGroup"),o=y("BaseButton"),w=y("BaseCard");return a(),C(w,null,{default:s(()=>[n("h6",Ut,u(p.$t("settings.exchange_rate.title")),1),n("p",Et,u(p.$t("settings.exchange_rate.description",{currency:e(d).selectedCompanyCurrency.name})),1),n("form",{action:"",onSubmit:H(l,["prevent"])},[(a(!0),i(V,null,R(e(r).bulkCurrencies,(S,$)=>(a(),C(e(Se),{key:$,state:S,rules:b},{default:s(({v:E})=>[t(x,{class:"my-5",label:`${S.code} to ${e(d).selectedCompanyCurrency.code}`,error:E.exchange_rate.$error&&E.exchange_rate.$errors[0].$message,required:""},{default:s(()=>[t(v,{modelValue:S.exchange_rate,"onUpdate:modelValue":T=>S.exchange_rate=T,addon:`1 ${S.code} =`,invalid:E.exchange_rate.$error,onInput:T=>E.exchange_rate.$touch()},{right:s(()=>[n("span",At,u(e(d).selectedCompanyCurrency.code),1)]),_:2},1032,["modelValue","onUpdate:modelValue","addon","invalid","onInput"]),n("span",Rt,u(p.$t("settings.exchange_rate.exchange_help_text",{currency:S.code,baseCurrency:e(d).selectedCompanyCurrency.code})),1)]),_:2},1032,["label","error"])]),_:2},1032,["state"]))),128)),n("div",Ft,[t(o,{loading:e(g),variant:"primary",type:"submit"},{default:s(()=>[U(u(p.$t("general.save")),1)]),_:1},8,["loading"])])],40,Vt)]),_:1})}}},jt={setup(F){const m=W(),r=P(()=>m.active&&m.componentName==="ExchangeRateBulkUpdateModal");function d(){m.closeModal()}return(f,_)=>{const g=y("BaseModal");return a(),C(g,{show:e(r)},{default:s(()=>[t(Lt,{onUpdate:_[0]||(_[0]=b=>d())})]),_:1},8,["show"])}}},Nt={key:0,class:"h-full"},Tt={class:"pt-16 pb-16 h-screen h-screen-ios overflow-y-auto md:pl-56 xl:pl-64 min-h-0"},Jt={setup(F){const m=D(),r=X(),d=Q(),f=q(),_=W();z();const g=le(),b=Y(),c=P(()=>m.isAppLoaded);return xe(()=>{m.bootstrap().then(l=>{r.meta.ability&&!d.hasAbilities(r.meta.ability)?f.push({name:"account.settings"}):r.meta.isOwner&&!d.currentUser.is_owner&&f.push({name:"account.settings"}),l.data.current_company_settings.bulk_exchange_rate_configured==="NO"&&g.fetchBulkCurrencies().then(p=>{if(p.data.currencies.length)_.openModal({componentName:"ExchangeRateBulkUpdateModal",size:"sm"});else{let h={settings:{bulk_exchange_rate_configured:"YES"}};b.updateCompanySettings({data:h})}})})}),(l,p)=>{const h=y("router-view"),v=y("BaseGlobalLoader");return e(c)?(a(),i("div",Nt,[t(Be),t(xt),t(Mt),t(jt),n("main",Tt,[t(h)])])):(a(),C(v,{key:1}))}}};export{Jt as default}; +import{aN as q,J as z,B as k,a0 as _e,k as P,L as N,M as J,N as he,T as ae,r as y,o as a,l as C,w as s,h as n,i as U,t as u,u as e,f as t,e as i,m as L,j as B,U as H,G as X,C as oe,aO as se,F as V,y as R,Y as ne,A as ye,a5 as fe,a2 as K,a3 as ge,a6 as ve,aP as be,D as xe}from"./vendor.01d0adc5.js";import{b as Y,c as W,d as D,e as Q,S as we,a as $e,f as re,g as j,u as ke}from"./main.24f7a84b.js";import{u as le}from"./exchange-rate.3b3d35e2.js";import{u as Ce}from"./users.e0b660dd.js";import{N as Be}from"./NotificationRoot.79eede9f.js";import{V as Se}from"./index.esm.998a6eeb.js";const Ie={class:"flex justify-between w-full"},Me=["onSubmit"],Ue={class:"p-4 mb-16 sm:p-6 space-y-4"},Ee={key:1,class:"flex flex-col items-center"},Ve={class:"z-0 flex justify-end p-4 bg-gray-50 border-modal-bg"},Ae={setup(F){const m=q(),r=Y(),d=W(),f=D(),{t:_}=z();let g=k(!1),b=k(null),c=k(!1),l=k(null),p=k(null);const h=_e({name:null,currency:"",address:{country_id:null}}),v=P(()=>d.active&&d.componentName==="CompanyModal"),x={newCompanyForm:{name:{required:N.withMessage(_("validation.required"),J),minLength:N.withMessage(_("validation.name_min_length",{count:3}),he(3))},address:{country_id:{required:N.withMessage(_("validation.required"),J)}},currency:{required:N.withMessage(_("validation.required"),J)}}},o=ae(x,{newCompanyForm:h});async function w(){c.value=!0,await f.fetchCurrencies(),await f.fetchCountries(),h.currency=r.selectedCompanyCurrency.id,h.address.country_id=r.selectedCompany.address.country_id,c.value=!1}function S(I,M){p.value=I,l.value=M}function $(){p.value=null,l.value=null}async function E(){if(o.value.newCompanyForm.$touch(),o.value.$invalid)return!0;g.value=!0;try{const I=await r.addNewCompany(h);if(I.data.data){if(await r.setSelectedCompany(I.data.data),l&&l.value){let M=new FormData;M.append("company_logo",JSON.stringify({name:p.value,data:l.value})),await r.updateCompanyLogo(M),m.push("/admin/dashboard")}await f.setIsAppLoaded(!1),await f.bootstrap(),O()}g.value=!1}catch{g.value=!1}}function T(){h.name="",h.currency="",h.address.country_id="",o.value.$reset()}function O(){d.closeModal(),setTimeout(()=>{T(),o.value.$reset()},300)}return(I,M)=>{const Z=y("BaseIcon"),ie=y("BaseContentPlaceholdersBox"),ce=y("BaseContentPlaceholders"),de=y("BaseFileUploader"),G=y("BaseInputGroup"),ue=y("BaseInput"),ee=y("BaseMultiselect"),me=y("BaseInputGrid"),te=y("BaseButton"),pe=y("BaseModal");return a(),C(pe,{show:e(v),onClose:O,onOpen:w},{header:s(()=>[n("div",Ie,[U(u(e(d).title)+" ",1),t(Z,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:O})])]),default:s(()=>[n("form",{action:"",onSubmit:H(E,["prevent"])},[n("div",Ue,[t(me,{layout:"one-column"},{default:s(()=>[t(G,{"content-loading":e(c),label:I.$tc("settings.company_info.company_logo")},{default:s(()=>[e(c)?(a(),C(ce,{key:0},{default:s(()=>[t(ie,{rounded:!0,class:"w-full h-24"})]),_:1})):(a(),i("div",Ee,[t(de,{"preview-image":e(b),base64:"",onRemove:$,onChange:S},null,8,["preview-image"])]))]),_:1},8,["content-loading","label"]),t(G,{label:I.$tc("settings.company_info.company_name"),error:e(o).newCompanyForm.name.$error&&e(o).newCompanyForm.name.$errors[0].$message,"content-loading":e(c),required:""},{default:s(()=>[t(ue,{modelValue:e(h).name,"onUpdate:modelValue":M[0]||(M[0]=A=>e(h).name=A),invalid:e(o).newCompanyForm.name.$error,"content-loading":e(c),onInput:M[1]||(M[1]=A=>e(o).newCompanyForm.name.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","error","content-loading"]),t(G,{"content-loading":e(c),label:I.$tc("settings.company_info.country"),error:e(o).newCompanyForm.address.country_id.$error&&e(o).newCompanyForm.address.country_id.$errors[0].$message,required:""},{default:s(()=>[t(ee,{modelValue:e(h).address.country_id,"onUpdate:modelValue":M[2]||(M[2]=A=>e(h).address.country_id=A),"content-loading":e(c),label:"name",invalid:e(o).newCompanyForm.address.country_id.$error,options:e(f).countries,"value-prop":"id","can-deselect":!0,"can-clear":!1,searchable:"","track-by":"name"},null,8,["modelValue","content-loading","invalid","options"])]),_:1},8,["content-loading","label","error"]),t(G,{label:I.$t("wizard.currency"),error:e(o).newCompanyForm.currency.$error&&e(o).newCompanyForm.currency.$errors[0].$message,"content-loading":e(c),"help-text":I.$t("wizard.currency_set_alert"),required:""},{default:s(()=>[t(ee,{modelValue:e(h).currency,"onUpdate:modelValue":M[3]||(M[3]=A=>e(h).currency=A),"content-loading":e(c),options:e(f).currencies,label:"name","value-prop":"id",searchable:!0,"track-by":"name",placeholder:I.$tc("settings.currencies.select_currency"),invalid:e(o).newCompanyForm.currency.$error,class:"w-full"},null,8,["modelValue","content-loading","options","placeholder","invalid"])]),_:1},8,["label","error","content-loading","help-text"])]),_:1})]),n("div",Ve,[t(te,{class:"mr-3 text-sm",variant:"primary-outline",outline:"",type:"button",onClick:O},{default:s(()=>[U(u(I.$t("general.cancel")),1)]),_:1}),t(te,{loading:e(g),disabled:e(g),variant:"primary",type:"submit"},{left:s(A=>[e(g)?B("",!0):(a(),C(Z,{key:0,name:"SaveIcon",class:L(A.class)},null,8,["class"]))]),default:s(()=>[U(" "+u(I.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,Me)]),_:1},8,["show"])}}},Re={key:0,class:"w-16 text-sm font-medium truncate sm:w-auto"},Fe={key:0,class:"absolute right-0 mt-2 bg-white rounded-md shadow-lg"},Le={class:"overflow-y-auto scrollbar-thin scrollbar-thumb-rounded-full w-[250px] max-h-[350px] scrollbar-thumb-gray-300 scrollbar-track-gray-10 pb-4"},je={class:"px-3 py-2 text-xs font-semibold text-gray-400 mb-0.5 block uppercase"},Ne={key:0,class:"flex flex-col items-center justify-center p-2 px-3 mt-4 text-base text-gray-400"},Te={key:1},De={key:0},Oe=["onClick"],Ge={class:"flex items-center"},qe={class:"flex items-center justify-center mr-3 overflow-hidden text-base font-semibold bg-gray-200 rounded-md w-9 h-9 text-primary-500"},ze={key:0},Pe=["src"],Je={class:"flex flex-col"},Xe={class:"text-sm"},Ye={class:"font-medium"},We={setup(F){const m=Y(),r=W(),d=X(),f=q(),_=D(),{t:g}=z(),b=Q(),c=k(!1),l=k(""),p=k(null);oe(d,()=>{c.value=!1,l.value=""}),se(p,()=>{c.value=!1});function h(o){if(o)return o.split(" ")[0].charAt(0).toUpperCase()}function v(){r.openModal({title:g("company_switcher.new_company"),componentName:"CompanyModal",size:"sm"})}async function x(o){await m.setSelectedCompany(o),f.push("/admin/dashboard"),await _.setIsAppLoaded(!1),await _.bootstrap()}return(o,w)=>{const S=y("BaseIcon");return a(),i("div",{ref:($,E)=>{E.companySwitchBar=$,p.value=$},class:"relative rounded"},[t(Ae),n("div",{class:"flex items-center justify-center px-3 h-8 md:h-9 ml-2 text-sm text-white bg-white rounded cursor-pointer bg-opacity-20",onClick:w[0]||(w[0]=$=>c.value=!c.value)},[e(m).selectedCompany?(a(),i("span",Re,u(e(m).selectedCompany.name),1)):B("",!0),t(S,{name:"ChevronDownIcon",class:"h-5 ml-1 text-white"})]),t(ne,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"translate-y-1 opacity-0","enter-to-class":"translate-y-0 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"translate-y-0 opacity-100","leave-to-class":"translate-y-1 opacity-0"},{default:s(()=>[c.value?(a(),i("div",Fe,[n("div",Le,[n("label",je,u(o.$t("company_switcher.label")),1),e(m).companies.length<1?(a(),i("div",Ne,[t(S,{name:"ExclamationCircleIcon",class:"h-5 text-gray-400"}),U(" "+u(o.$t("company_switcher.no_results_found")),1)])):(a(),i("div",Te,[e(m).companies.length>0?(a(),i("div",De,[(a(!0),i(V,null,R(e(m).companies,($,E)=>(a(),i("div",{key:E,class:L(["p-2 px-3 rounded-md cursor-pointer hover:bg-gray-100 hover:text-primary-500",{"bg-gray-100 text-primary-500":e(m).selectedCompany.id===$.id}]),onClick:T=>x($)},[n("div",Ge,[n("span",qe,[$.logo?(a(),i("img",{key:1,src:$.logo,alt:"Company logo",class:"w-full h-full object-contain"},null,8,Pe)):(a(),i("span",ze,u(h($.name)),1))]),n("div",Je,[n("span",Xe,u($.name),1)])])],10,Oe))),128))])):B("",!0)]))]),e(b).currentUser.is_owner?(a(),i("div",{key:0,class:"flex items-center justify-center p-4 pl-3 border-t-2 border-gray-100 cursor-pointer text-primary-400 hover:text-primary-500",onClick:v},[t(S,{name:"PlusIcon",class:"h-5 mr-2"}),n("span",Ye,u(o.$t("company_switcher.add_new_company")),1)])):B("",!0)])):B("",!0)]),_:1})],512)}}},He={key:0,class:"scrollbar-thin scrollbar-thumb-rounded-full scrollbar-thumb-gray-300 scrollbar-track-gray-100 overflow-y-auto bg-white rounded-md mt-2 shadow-lg p-3 absolute w-[300px] h-[200px] right-0"},Ke={key:0,class:"flex items-center justify-center text-gray-400 text-base flex-col mt-4"},Qe={key:1},Ze={key:0},et={class:"text-sm text-gray-400 mb-0.5 block px-2 uppercase"},tt={class:"flex items-center justify-center w-9 h-9 mr-3 text-base font-semibold bg-gray-200 rounded-full text-primary-500"},at={class:"flex flex-col"},ot={class:"text-sm"},st={key:0,class:"text-xs text-gray-400"},nt={key:1,class:"text-xs text-gray-400"},rt={key:1,class:"mt-2"},lt={class:"text-sm text-gray-400 mb-2 block px-2 mb-0.5 uppercase"},it={class:"flex items-center justify-center w-9 h-9 mr-3 text-base font-semibold bg-gray-200 rounded-full text-primary-500"},ct={class:"flex flex-col"},dt={class:"text-sm"},ut={class:"text-xs text-gray-400"},mt={setup(F){const m=Ce(),r=k(!1),d=k(""),f=k(null),_=k(!1),g=X();oe(g,()=>{r.value=!1,d.value=""}),b=ye.exports.debounce(b,500),se(f,()=>{r.value=!1,d.value=""});function b(){let l={search:d.value};d.value&&(_.value=!0,m.searchUsers(l).then(()=>{r.value=!0}),_.value=!1),d.value===""&&(r.value=!1)}function c(l){if(l)return l.split(" ")[0].charAt(0).toUpperCase()}return(l,p)=>{const h=y("BaseIcon"),v=y("BaseInput"),x=y("router-link");return a(),i("div",{ref:(o,w)=>{w.searchBar=o,f.value=o},class:"hidden rounded md:block relative"},[n("div",null,[t(v,{modelValue:d.value,"onUpdate:modelValue":p[0]||(p[0]=o=>d.value=o),placeholder:"Search...","container-class":"!rounded",class:"h-8 md:h-9 !rounded",onInput:b},{left:s(()=>[t(h,{name:"SearchIcon",class:"text-gray-400"})]),right:s(()=>[_.value?(a(),C(we,{key:0,class:"h-5 text-primary-500"})):B("",!0)]),_:1},8,["modelValue"])]),t(ne,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"translate-y-1 opacity-0","enter-to-class":"translate-y-0 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"translate-y-0 opacity-100","leave-to-class":"translate-y-1 opacity-0"},{default:s(()=>[r.value?(a(),i("div",He,[e(m).userList.length<1&&e(m).customerList.length<1?(a(),i("div",Ke,[t(h,{name:"ExclamationCircleIcon",class:"text-gray-400"}),U(" "+u(l.$t("global_search.no_results_found")),1)])):(a(),i("div",Qe,[e(m).customerList.length>0?(a(),i("div",Ze,[n("label",et,u(l.$t("global_search.customers")),1),(a(!0),i(V,null,R(e(m).customerList,(o,w)=>(a(),i("div",{key:w,class:"p-2 hover:bg-gray-100 cursor-pointer rounded-md"},[t(x,{to:{path:`/admin/customers/${o.id}/view`},class:"flex items-center"},{default:s(()=>[n("span",tt,u(c(o.name)),1),n("div",at,[n("span",ot,u(o.name),1),o.contact_name?(a(),i("span",st,u(o.contact_name),1)):(a(),i("span",nt,u(o.email),1))])]),_:2},1032,["to"])]))),128))])):B("",!0),e(m).userList.length>0?(a(),i("div",rt,[n("label",lt,u(l.$t("global_search.users")),1),(a(!0),i(V,null,R(e(m).userList,(o,w)=>(a(),i("div",{key:w,class:"p-2 hover:bg-gray-100 cursor-pointer rounded-md"},[t(x,{to:{path:`/admin/users/${o.id}/edit`},class:"flex items-center"},{default:s(()=>[n("span",it,u(c(o.name)),1),n("div",ct,[n("span",dt,u(o.name),1),n("span",ut,u(o.email),1)])]),_:2},1032,["to"])]))),128))])):B("",!0)]))])):B("",!0)]),_:1})],512)}}},pt={class:"fixed top-0 left-0 z-20 flex items-center justify-between w-full px-4 py-3 md:h-16 md:px-8 bg-gradient-to-r from-primary-500 to-primary-400"},_t=["onClick"],ht={class:"flex float-right h-8 m-0 list-none md:h-9"},yt={key:0,class:"relative hidden float-left m-0 md:block"},ft={class:"flex items-center justify-center w-8 h-8 ml-2 text-sm text-black bg-white rounded md:h-9 md:w-9"},gt={class:"ml-2"},vt={class:"relative block float-left ml-2"},bt=["src"],xt={setup(F){const m=$e(),r=Q(),d=D(),f=q(),_=P(()=>r.currentUser&&r.currentUser.avatar!==0?r.currentUser.avatar:g());function g(){return new URL("/build/img/default-avatar.jpg",self.location)}function b(){return r.hasAbilities([j.CREATE_INVOICE,j.CREATE_ESTIMATE,j.CREATE_CUSTOMER])}async function c(){await m.logout(),f.push("/login")}function l(){d.setSidebarVisibility(!0)}return(p,h)=>{const v=y("router-link"),x=y("BaseIcon"),o=y("BaseDropdownItem"),w=y("BaseDropdown");return a(),i("header",pt,[t(v,{to:"/admin/dashboard",class:"float-none text-lg not-italic font-black tracking-wider text-white brand-main md:float-left font-base hidden md:block"},{default:s(()=>[t(re,{class:"h-6","light-color":"white","dark-color":"white"})]),_:1}),n("div",{class:L([{"is-active":e(d).isSidebarOpen},"flex float-left p-1 overflow-visible text-sm ease-linear bg-white border-0 rounded cursor-pointer md:hidden md:ml-0 hover:bg-gray-100"]),onClick:H(l,["prevent"])},[t(x,{name:"MenuIcon",class:"!w-6 !h-6 text-gray-500"})],10,_t),n("ul",ht,[b?(a(),i("li",yt,[t(w,{"width-class":"w-48"},{activator:s(()=>[n("div",ft,[t(x,{name:"PlusIcon",class:"w-5 h-5 text-gray-600"})])]),default:s(()=>[t(v,{to:"/admin/invoices/create"},{default:s(()=>[e(r).hasAbilities(e(j).CREATE_INVOICE)?(a(),C(o,{key:0},{default:s(()=>[t(x,{name:"DocumentTextIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500","aria-hidden":"true"}),U(" "+u(p.$t("invoices.new_invoice")),1)]),_:1})):B("",!0)]),_:1}),t(v,{to:"/admin/estimates/create"},{default:s(()=>[e(r).hasAbilities(e(j).CREATE_ESTIMATE)?(a(),C(o,{key:0},{default:s(()=>[t(x,{name:"DocumentIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500","aria-hidden":"true"}),U(" "+u(p.$t("estimates.new_estimate")),1)]),_:1})):B("",!0)]),_:1}),t(v,{to:"/admin/customers/create"},{default:s(()=>[e(r).hasAbilities(e(j).CREATE_CUSTOMER)?(a(),C(o,{key:0},{default:s(()=>[t(x,{name:"UserIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500","aria-hidden":"true"}),U(" "+u(p.$t("customers.new_customer")),1)]),_:1})):B("",!0)]),_:1})]),_:1})])):B("",!0),n("li",gt,[e(r).currentUser.is_owner||e(r).hasAbilities(e(j).VIEW_CUSTOMER)?(a(),C(mt,{key:0})):B("",!0)]),n("li",null,[t(We)]),n("li",vt,[t(w,{"width-class":"w-48"},{activator:s(()=>[n("img",{src:e(_),class:"block w-8 h-8 rounded md:h-9 md:w-9"},null,8,bt)]),default:s(()=>[t(v,{to:"/admin/settings/account-settings"},{default:s(()=>[t(o,null,{default:s(()=>[t(x,{name:"CogIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500","aria-hidden":"true"}),U(" "+u(p.$t("navigation.settings")),1)]),_:1})]),_:1}),t(o,{onClick:c},{default:s(()=>[t(x,{name:"LogoutIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500","aria-hidden":"true"}),U(" "+u(p.$t("navigation.logout")),1)]),_:1})]),_:1})])])])}}},wt={class:"relative flex flex-col flex-1 w-full max-w-xs bg-white"},$t={class:"absolute top-0 right-0 pt-2 -mr-12"},kt=n("span",{class:"sr-only"},"Close sidebar",-1),Ct={class:"flex-1 h-0 pt-5 pb-4 overflow-y-auto"},Bt={class:"flex items-center shrink-0 px-4 mb-10"},St=n("div",{class:"shrink-0 w-14"},null,-1),It={class:"hidden w-56 h-screen h-screen-ios pb-32 overflow-y-auto bg-white border-r border-gray-200 border-solid xl:w-64 md:fixed md:flex md:flex-col md:inset-y-0 pt-16"},Mt={setup(F){const m=X(),r=D();function d(f){return m.path.indexOf(f)>-1}return(f,_)=>{const g=y("BaseIcon"),b=y("router-link");return a(),i(V,null,[t(e(ve),{as:"template",show:e(r).isSidebarOpen},{default:s(()=>[t(e(fe),{as:"div",class:"fixed inset-0 z-40 flex md:hidden",onClose:_[3]||(_[3]=c=>e(r).setSidebarVisibility(!1))},{default:s(()=>[t(e(K),{as:"template",enter:"transition-opacity ease-linear duration-300","enter-from":"opacity-0","enter-to":"opacity-100",leave:"transition-opacity ease-linear duration-300","leave-from":"opacity-100","leave-to":"opacity-0"},{default:s(()=>[t(e(ge),{class:"fixed inset-0 bg-gray-600 bg-opacity-75"})]),_:1}),t(e(K),{as:"template",enter:"transition ease-in-out duration-300","enter-from":"-translate-x-full","enter-to":"translate-x-0",leave:"transition ease-in-out duration-300","leave-from":"translate-x-0","leave-to":"-translate-x-full"},{default:s(()=>[n("div",wt,[t(e(K),{as:"template",enter:"ease-in-out duration-300","enter-from":"opacity-0","enter-to":"opacity-100",leave:"ease-in-out duration-300","leave-from":"opacity-100","leave-to":"opacity-0"},{default:s(()=>[n("div",$t,[n("button",{class:"flex items-center justify-center w-10 h-10 ml-1 rounded-full focus:outline-none focus:ring-2 focus:ring-inset focus:ring-white",onClick:_[0]||(_[0]=c=>e(r).setSidebarVisibility(!1))},[kt,t(g,{name:"XIcon",class:"w-6 h-6 text-white","aria-hidden":"true"})])])]),_:1}),n("div",Ct,[n("div",Bt,[t(re,{class:"block h-auto max-w-full w-36 text-primary-400",alt:"Crater Logo"})]),(a(!0),i(V,null,R(e(r).menuGroups,c=>(a(),i("nav",{key:c,class:"mt-5 space-y-1"},[(a(!0),i(V,null,R(c,l=>(a(),C(b,{key:l.name,to:l.link,class:L([d(l.link)?"text-primary-500 border-primary-500 bg-gray-100 ":"text-black","cursor-pointer px-0 pl-4 py-3 border-transparent flex items-center border-l-4 border-solid text-sm not-italic font-medium"]),onClick:_[2]||(_[2]=p=>e(r).setSidebarVisibility(!1))},{default:s(()=>[t(g,{name:l.icon,class:L([d(l.link)?"text-primary-500 ":"text-gray-400","mr-4 shrink-0 h-5 w-5"]),onClick:_[1]||(_[1]=p=>e(r).setSidebarVisibility(!1))},null,8,["name","class"]),U(" "+u(f.$t(l.title)),1)]),_:2},1032,["to","class"]))),128))]))),128))])])]),_:1}),St]),_:1})]),_:1},8,["show"]),n("div",It,[(a(!0),i(V,null,R(e(r).menuGroups,c=>(a(),i("div",{key:c,class:"p-0 m-0 mt-6 list-none"},[(a(!0),i(V,null,R(c,l=>(a(),C(b,{key:l,to:l.link,class:L([d(l.link)?"text-primary-500 border-primary-500 bg-gray-100 ":"text-black","cursor-pointer px-0 pl-6 hover:bg-gray-50 py-3 group flex items-center border-l-4 border-solid border-transparent text-sm not-italic font-medium"])},{default:s(()=>[t(g,{name:l.icon,class:L([d(l.link)?"text-primary-500 group-hover:text-primary-500 ":"text-gray-400 group-hover:text-black","mr-4 shrink-0 h-5 w-5 "])},null,8,["name","class"]),U(" "+u(f.$t(l.title)),1)]),_:2},1032,["to","class"]))),128))]))),128))])],64)}}},Ut={class:"font-medium text-lg text-left"},Et={class:"mt-2 text-sm leading-snug text-gray-500",style:{"max-width":"680px"}},Vt=["onSubmit"],At={class:"text-gray-500 sm:text-sm"},Rt={class:"text-gray-400 text-xs mt-2 font-light"},Ft={slot:"footer",class:"z-0 flex justify-end mt-4 pt-4 border-t border-gray-200 border-solid border-modal-bg"},Lt={emits:["update"],setup(F,{emit:m}){const r=le();ke();const d=Y(),{t:f,tm:_}=z();let g=k(!1);k(!1);const b={exchange_rate:{required:N.withMessage(f("validation.required"),J),decimal:N.withMessage(f("validation.valid_exchange_rate"),be)}},c=ae();async function l(){if(c.value.$touch(),c.value.$invalid)return!0;g.value=!0;let p=r.bulkCurrencies.map(v=>({id:v.id,exchange_rate:v.exchange_rate})),h=await r.updateBulkExchangeRate({currencies:p});h.data.success&&m("update",h.data.success),g.value=!1}return(p,h)=>{const v=y("BaseInput"),x=y("BaseInputGroup"),o=y("BaseButton"),w=y("BaseCard");return a(),C(w,null,{default:s(()=>[n("h6",Ut,u(p.$t("settings.exchange_rate.title")),1),n("p",Et,u(p.$t("settings.exchange_rate.description",{currency:e(d).selectedCompanyCurrency.name})),1),n("form",{action:"",onSubmit:H(l,["prevent"])},[(a(!0),i(V,null,R(e(r).bulkCurrencies,(S,$)=>(a(),C(e(Se),{key:$,state:S,rules:b},{default:s(({v:E})=>[t(x,{class:"my-5",label:`${S.code} to ${e(d).selectedCompanyCurrency.code}`,error:E.exchange_rate.$error&&E.exchange_rate.$errors[0].$message,required:""},{default:s(()=>[t(v,{modelValue:S.exchange_rate,"onUpdate:modelValue":T=>S.exchange_rate=T,addon:`1 ${S.code} =`,invalid:E.exchange_rate.$error,onInput:T=>E.exchange_rate.$touch()},{right:s(()=>[n("span",At,u(e(d).selectedCompanyCurrency.code),1)]),_:2},1032,["modelValue","onUpdate:modelValue","addon","invalid","onInput"]),n("span",Rt,u(p.$t("settings.exchange_rate.exchange_help_text",{currency:S.code,baseCurrency:e(d).selectedCompanyCurrency.code})),1)]),_:2},1032,["label","error"])]),_:2},1032,["state"]))),128)),n("div",Ft,[t(o,{loading:e(g),variant:"primary",type:"submit"},{default:s(()=>[U(u(p.$t("general.save")),1)]),_:1},8,["loading"])])],40,Vt)]),_:1})}}},jt={setup(F){const m=W(),r=P(()=>m.active&&m.componentName==="ExchangeRateBulkUpdateModal");function d(){m.closeModal()}return(f,_)=>{const g=y("BaseModal");return a(),C(g,{show:e(r)},{default:s(()=>[t(Lt,{onUpdate:_[0]||(_[0]=b=>d())})]),_:1},8,["show"])}}},Nt={key:0,class:"h-full"},Tt={class:"pt-16 pb-16 h-screen h-screen-ios overflow-y-auto md:pl-56 xl:pl-64 min-h-0"},Jt={setup(F){const m=D(),r=X(),d=Q(),f=q(),_=W();z();const g=le(),b=Y(),c=P(()=>m.isAppLoaded);return xe(()=>{m.bootstrap().then(l=>{r.meta.ability&&!d.hasAbilities(r.meta.ability)?f.push({name:"account.settings"}):r.meta.isOwner&&!d.currentUser.is_owner&&f.push({name:"account.settings"}),l.data.current_company_settings.bulk_exchange_rate_configured==="NO"&&g.fetchBulkCurrencies().then(p=>{if(p.data.currencies.length)_.openModal({componentName:"ExchangeRateBulkUpdateModal",size:"sm"});else{let h={settings:{bulk_exchange_rate_configured:"YES"}};b.updateCompanySettings({data:h})}})})}),(l,p)=>{const h=y("router-view"),v=y("BaseGlobalLoader");return e(c)?(a(),i("div",Nt,[t(Be),t(xt),t(Mt),t(jt),n("main",Tt,[t(h)])])):(a(),C(v,{key:1}))}}};export{Jt as default}; diff --git a/public/build/assets/LayoutBasic.d42d886d.js b/public/build/assets/LayoutBasic.d42d886d.js new file mode 100644 index 000000000..e50b96b85 --- /dev/null +++ b/public/build/assets/LayoutBasic.d42d886d.js @@ -0,0 +1 @@ +import{u as M}from"./auth.0e030165.js";import{J as V,G as j,aN as I,B as z,k as b,C as F,r as h,o as n,l as c,w as a,h as t,u as e,e as u,y as v,m as x,i as d,t as l,F as w,f as r,a9 as G,b4 as O,b5 as E,ab as J,b6 as P,b7 as T,b8 as q,b9 as H,ba as K,j as Q}from"./vendor.01d0adc5.js";import{u as N}from"./global.ab8f317c.js";import{f as W}from"./main.24f7a84b.js";import{N as X}from"./NotificationRoot.79eede9f.js";const Y={class:"mx-auto px-8"},Z={class:"flex justify-between h-16 w-full"},tt={class:"flex"},et={class:"shrink-0 flex items-center"},st=["href"],ot=["src"],rt={class:"hidden sm:-my-px sm:ml-6 sm:flex sm:space-x-8"},at={class:"hidden sm:ml-6 sm:flex sm:items-center"},nt=t("button",{type:"button",class:"bg-white p-1 rounded-full text-gray-400 hover:text-gray-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-500"},null,-1),it=["src"],lt={class:"-mr-2 flex items-center sm:hidden"},ct=t("span",{class:"sr-only"},"Open main menu",-1),ut={class:"pt-2 pb-3 space-y-1"},dt={class:"pt-4 pb-3 border-t border-gray-200"},mt={class:"flex items-center px-4"},ft={class:"shrink-0"},pt=["src"],ht={class:"ml-3"},_t={class:"text-base font-medium text-gray-800"},gt={class:"text-sm font-medium text-gray-500"},yt=t("button",{type:"button",class:"ml-auto bg-white shrink-0 p-1 rounded-full text-gray-400 hover:text-gray-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-500"},null,-1),bt={class:"mt-3 space-y-1"},vt={setup(U){const{t:m}=V(),f=j(),o=N(),_=[{title:m("navigation.logout"),link:`/${o.companySlug}/customer/login`}],k=M(),$=I(),g=z(""),B=b(()=>o.currentUser&&o.currentUser.avatar!==0?o.currentUser.avatar:A());function A(){return new URL("/build/img/default-avatar.jpg",self.location)}F(f,i=>{g.value=i.path},{immediate:!0});const S=b(()=>window.customer_logo?window.customer_logo:!1);function y(i){return f.path.indexOf(i)>-1}function C(){k.logout(o.companySlug).then(i=>{i&&$.push({name:"customer.login"})})}return(i,kt)=>{const p=h("router-link"),D=h("BaseDropdownItem"),R=h("BaseDropdown");return n(),c(e(K),{as:"nav",class:"bg-white shadow-sm fixed top-0 left-0 z-20 w-full"},{default:a(({open:L})=>[t("div",Y,[t("div",Z,[t("div",tt,[t("div",et,[t("a",{href:`/${e(o).companySlug}/customer/dashboard`,class:"float-none text-lg not-italic font-black tracking-wider text-white brand-main md:float-left font-base"},[e(S)?(n(),u("img",{key:1,src:e(S),class:"h-6"},null,8,ot)):(n(),c(W,{key:0,class:"h-6"}))],8,st)]),t("div",rt,[(n(!0),u(w,null,v(e(o).mainMenu,s=>(n(),c(p,{key:s.title,to:`/${e(o).companySlug}${s.link}`,class:x([y(s.link)?"border-primary-500 text-primary-600":"border-transparent text-gray-500 hover:text-gray-700 hover:border-gray-300","inline-flex items-center px-1 pt-1 border-b-2 text-sm font-medium"])},{default:a(()=>[d(l(s.title),1)]),_:2},1032,["to","class"]))),128))])]),t("div",at,[nt,r(e(J),{as:"div",class:"ml-3 relative"},{default:a(()=>[r(R,{"width-class":"w-48"},{activator:a(()=>[r(e(G),{class:"bg-white flex text-sm rounded-full focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-500"},{default:a(()=>[t("img",{class:"h-8 w-8 rounded-full",src:e(B),alt:""},null,8,it)]),_:1})]),default:a(()=>[r(p,{to:{name:"customer.profile"}},{default:a(()=>[r(D,null,{default:a(()=>[r(e(O),{class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500","aria-hidden":"true"}),d(" "+l(i.$t("navigation.settings")),1)]),_:1})]),_:1},8,["to"]),r(D,{onClick:C},{default:a(()=>[r(e(E),{class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500","aria-hidden":"true"}),d(" "+l(i.$t("navigation.logout")),1)]),_:1})]),_:1})]),_:1})]),t("div",lt,[r(e(q),{class:"bg-white inline-flex items-center justify-center p-2 rounded-md text-gray-400 hover:text-gray-500 hover:bg-gray-100 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-500"},{default:a(()=>[ct,L?(n(),c(e(T),{key:1,class:"block h-6 w-6","aria-hidden":"true"})):(n(),c(e(P),{key:0,class:"block h-6 w-6","aria-hidden":"true"}))]),_:2},1024)])])]),r(e(H),{class:"sm:hidden"},{default:a(()=>[t("div",ut,[(n(!0),u(w,null,v(e(o).mainMenu,s=>(n(),c(p,{key:s.title,to:`/${e(o).companySlug}${s.link}`,class:x([y(s.link)?"bg-primary-50 border-primary-500 text-primary-700":"border-transparent text-gray-600 hover:bg-gray-50 hover:border-gray-300 hover:text-gray-800","block pl-3 pr-4 py-2 border-l-4 text-base font-medium"]),"aria-current":s.current?"page":void 0},{default:a(()=>[d(l(s.title),1)]),_:2},1032,["to","class","aria-current"]))),128))]),t("div",dt,[t("div",mt,[t("div",ft,[t("img",{class:"h-10 w-10 rounded-full",src:e(B),alt:""},null,8,pt)]),t("div",ht,[t("div",_t,l(e(o).currentUser.title),1),t("div",gt,l(e(o).currentUser.email),1)]),yt]),t("div",bt,[(n(),u(w,null,v(_,s=>r(p,{key:s.title,to:s.link,class:x([y(s.link)?"bg-primary-50 border-primary-500 text-primary-700":"border-transparent text-gray-600 hover:bg-gray-50 hover:border-gray-300 hover:text-gray-800","block pl-3 pr-4 py-2 border-l-4 text-base font-medium"])},{default:a(()=>[d(l(s.title),1)]),_:2},1032,["to","class"])),64))])])]),_:1})]),_:1})}}},xt={key:0,class:"h-full"},wt={class:"mt-16 pb-16 h-screen h-screen-ios overflow-y-auto min-h-0"},Nt={setup(U){const m=N(),f=j(),o=b(()=>m.isAppLoaded);_();async function _(){await m.bootstrap(f.params.company)}return(k,$)=>{const g=h("router-view");return e(o)?(n(),u("div",xt,[r(X),r(vt),t("main",wt,[r(g)])])):Q("",!0)}}};export{Nt as default}; diff --git a/public/build/assets/LayoutBasic.df06fd51.js b/public/build/assets/LayoutBasic.df06fd51.js deleted file mode 100644 index dfd2f3fe1..000000000 --- a/public/build/assets/LayoutBasic.df06fd51.js +++ /dev/null @@ -1 +0,0 @@ -import{u as V}from"./auth.4644c288.js";import{J as I,G as N,aN as z,B as F,k as b,C as G,r as p,o as n,l as c,w as a,h as t,u as e,e as u,y as v,m as x,i as d,t as l,F as w,f as r,a9 as O,b4 as E,b5 as J,ab as P,b6 as T,b7 as q,b8 as H,b9 as K,ba as Q,j as W}from"./vendor.01d0adc5.js";import{u as U}from"./global.08b6a984.js";import{f as X}from"./main.75722495.js";import{N as Y}from"./NotificationRoot.a98180ab.js";const Z={class:"mx-auto px-8"},tt={class:"flex justify-between h-16 w-full"},et={class:"flex"},st={class:"shrink-0 flex items-center"},ot=["href"],rt=["src"],at={class:"hidden sm:-my-px sm:ml-6 sm:flex sm:space-x-8"},nt={class:"hidden sm:ml-6 sm:flex sm:items-center"},it=t("button",{type:"button",class:"bg-white p-1 rounded-full text-gray-400 hover:text-gray-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-500"},null,-1),lt=["src"],ct={class:"-mr-2 flex items-center sm:hidden"},ut=t("span",{class:"sr-only"},"Open main menu",-1),dt={class:"pt-2 pb-3 space-y-1"},mt={class:"pt-4 pb-3 border-t border-gray-200"},ft={class:"flex items-center px-4"},pt={class:"shrink-0"},ht=["src"],gt={class:"ml-3"},_t={class:"text-base font-medium text-gray-800"},yt={class:"text-sm font-medium text-gray-500"},bt=t("button",{type:"button",class:"ml-auto bg-white shrink-0 p-1 rounded-full text-gray-400 hover:text-gray-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-500"},null,-1),vt={class:"mt-3 space-y-1"},xt={setup(C){const{t:m}=I(),f=N(),o=U(),h=[{title:m("navigation.logout"),link:`/${o.companySlug}/customer/login`}],k=V(),$=z(),g=F(""),B=b(()=>o.currentUser&&o.currentUser.avatar!==0?o.currentUser.avatar:A());function A(){return new URL("/build/img/default-avatar.jpg",self.location)}G(f,i=>{g.value=i.path},{immediate:!0});const S=b(()=>window.customer_logo?window.customer_logo:!1);function _(i){return f.path.indexOf(i)>-1}function R(){k.logout(o.companySlug).then(i=>{i&&$.push({name:"customer.login"})})}return(i,D)=>{const y=p("router-link"),j=p("BaseDropdownItem"),L=p("BaseDropdown");return n(),c(e(Q),{as:"nav",class:"bg-white shadow-sm fixed top-0 left-0 z-20 w-full"},{default:a(({open:M})=>[t("div",Z,[t("div",tt,[t("div",et,[t("div",st,[t("a",{href:`/${e(o).companySlug}/customer/dashboard`,class:"float-none text-lg not-italic font-black tracking-wider text-white brand-main md:float-left font-base"},[e(S)?(n(),u("img",{key:1,src:e(S),class:"h-6"},null,8,rt)):(n(),c(X,{key:0,class:"h-6"}))],8,ot)]),t("div",at,[(n(!0),u(w,null,v(e(o).mainMenu,s=>(n(),c(y,{key:s.title,to:`/${e(o).companySlug}${s.link}`,class:x([_(s.link)?"border-primary-500 text-primary-600":"border-transparent text-gray-500 hover:text-gray-700 hover:border-gray-300","inline-flex items-center px-1 pt-1 border-b-2 text-sm font-medium"])},{default:a(()=>[d(l(s.title),1)]),_:2},1032,["to","class"]))),128))])]),t("div",nt,[it,r(e(P),{as:"div",class:"ml-3 relative"},{default:a(()=>[r(L,{"width-class":"w-48"},{activator:a(()=>[r(e(O),{class:"bg-white flex text-sm rounded-full focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-500"},{default:a(()=>[t("img",{class:"h-8 w-8 rounded-full",src:e(B),alt:""},null,8,lt)]),_:1})]),default:a(()=>[r(j,{onClick:D[0]||(D[0]=s=>i.$router.push({name:"customer.profile"}))},{default:a(()=>[r(e(E),{class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500","aria-hidden":"true"}),d(" "+l(i.$t("navigation.settings")),1)]),_:1}),r(j,{onClick:R},{default:a(()=>[r(e(J),{class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500","aria-hidden":"true"}),d(" "+l(i.$t("navigation.logout")),1)]),_:1})]),_:1})]),_:1})]),t("div",ct,[r(e(H),{class:"bg-white inline-flex items-center justify-center p-2 rounded-md text-gray-400 hover:text-gray-500 hover:bg-gray-100 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-500"},{default:a(()=>[ut,M?(n(),c(e(q),{key:1,class:"block h-6 w-6","aria-hidden":"true"})):(n(),c(e(T),{key:0,class:"block h-6 w-6","aria-hidden":"true"}))]),_:2},1024)])])]),r(e(K),{class:"sm:hidden"},{default:a(()=>[t("div",dt,[(n(!0),u(w,null,v(e(o).mainMenu,s=>(n(),c(y,{key:s.title,to:`/${e(o).companySlug}${s.link}`,class:x([_(s.link)?"bg-primary-50 border-primary-500 text-primary-700":"border-transparent text-gray-600 hover:bg-gray-50 hover:border-gray-300 hover:text-gray-800","block pl-3 pr-4 py-2 border-l-4 text-base font-medium"]),"aria-current":s.current?"page":void 0},{default:a(()=>[d(l(s.title),1)]),_:2},1032,["to","class","aria-current"]))),128))]),t("div",mt,[t("div",ft,[t("div",pt,[t("img",{class:"h-10 w-10 rounded-full",src:e(B),alt:""},null,8,ht)]),t("div",gt,[t("div",_t,l(e(o).currentUser.title),1),t("div",yt,l(e(o).currentUser.email),1)]),bt]),t("div",vt,[(n(),u(w,null,v(h,s=>r(y,{key:s.title,to:s.link,class:x([_(s.link)?"bg-primary-50 border-primary-500 text-primary-700":"border-transparent text-gray-600 hover:bg-gray-50 hover:border-gray-300 hover:text-gray-800","block pl-3 pr-4 py-2 border-l-4 text-base font-medium"])},{default:a(()=>[d(l(s.title),1)]),_:2},1032,["to","class"])),64))])])]),_:1})]),_:1})}}},wt={key:0,class:"h-full"},kt={class:"mt-16 pb-16 h-screen h-screen-ios overflow-y-auto min-h-0"},Nt={setup(C){const m=U(),f=N(),o=b(()=>m.isAppLoaded);h();async function h(){await m.bootstrap(f.params.company)}return(k,$)=>{const g=p("router-view");return e(o)?(n(),u("div",wt,[r(Y),r(xt),t("main",kt,[r(g)])])):W("",!0)}}};export{Nt as default}; diff --git a/public/build/assets/LayoutInstallation.46a8b6d2.js b/public/build/assets/LayoutInstallation.46a8b6d2.js deleted file mode 100644 index a80d68a2e..000000000 --- a/public/build/assets/LayoutInstallation.46a8b6d2.js +++ /dev/null @@ -1 +0,0 @@ -import{N as t}from"./NotificationRoot.a98180ab.js";import{r as s,o as a,e as r,f as o,h as c}from"./vendor.01d0adc5.js";import"./main.75722495.js";const n={class:"h-screen h-screen-ios overflow-y-auto text-base"},i={class:"container mx-auto px-4"},u={setup(_){return(m,p)=>{const e=s("router-view");return a(),r("div",n,[o(t),c("div",i,[o(e)])])}}};export{u as default}; diff --git a/public/build/assets/LayoutInstallation.9dd005dc.js b/public/build/assets/LayoutInstallation.9dd005dc.js new file mode 100644 index 000000000..eb13e7fb5 --- /dev/null +++ b/public/build/assets/LayoutInstallation.9dd005dc.js @@ -0,0 +1 @@ +import{N as t}from"./NotificationRoot.79eede9f.js";import{r as s,o as a,e as r,f as e,h as c}from"./vendor.01d0adc5.js";import"./main.24f7a84b.js";const n={class:"h-screen h-screen-ios overflow-y-auto text-base"},i={class:"container mx-auto px-4"},u={setup(_){return(d,m)=>{const o=s("router-view");return a(),r("div",n,[e(t),c("div",i,[e(o)])])}}};export{u as default}; diff --git a/public/build/assets/LayoutLogin.65e9ed77.js b/public/build/assets/LayoutLogin.65e9ed77.js new file mode 100644 index 000000000..be49b9e17 --- /dev/null +++ b/public/build/assets/LayoutLogin.65e9ed77.js @@ -0,0 +1 @@ +import{N as r}from"./NotificationRoot.79eede9f.js";import{f as l}from"./main.24f7a84b.js";import{k as i,r as n,o,e as t,f as a,h as s,u as c,l as u}from"./vendor.01d0adc5.js";const d={class:"min-h-screen bg-gray-200 flex flex-col justify-center py-12 sm:px-6 lg:px-8"},p={class:"sm:mx-auto sm:w-full sm:max-w-md px-4 sm:px-0"},_=["src"],f={class:"mt-8 sm:mx-auto sm:w-full sm:max-w-md px-4 sm:px-0"},x={class:"bg-white py-8 px-4 shadow rounded-lg sm:px-10"},b={setup(w){const e=i(()=>window.customer_logo?window.customer_logo:!1);return(h,g)=>{const m=n("router-view");return o(),t("div",d,[a(r),s("div",p,[c(e)?(o(),t("img",{key:1,src:c(e),class:"block w-48 h-auto max-w-full text-primary-400 mx-auto"},null,8,_)):(o(),u(l,{key:0,class:"block w-48 h-auto max-w-full text-primary-400 mx-auto"}))]),s("div",f,[s("div",x,[a(m)])])])}}};export{b as default}; diff --git a/public/build/assets/LayoutLogin.805658ef.js b/public/build/assets/LayoutLogin.805658ef.js new file mode 100644 index 000000000..56acebf0f --- /dev/null +++ b/public/build/assets/LayoutLogin.805658ef.js @@ -0,0 +1 @@ +import{N as n}from"./NotificationRoot.79eede9f.js";import{_ as r,f as p}from"./main.24f7a84b.js";import{o as e,e as a,h as t,ai as d,r as h,f as l,t as C,i}from"./vendor.01d0adc5.js";const f={},_={viewBox:"0 0 1012 1023",fill:"none",xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"none",class:"text-primary-500"},m=t("path",{d:"M116.21 472.5C55.1239 693.5 78.5219 837.5 114.349 1023H1030.5V-1L0 -106C147.5 21.5 172.311 269.536 116.21 472.5Z",fill:"url(#paint0_linear)"},null,-1),g=t("defs",null,[t("linearGradient",{id:"paint0_linear",x1:"515.25",y1:"-106",x2:"515.25",y2:"1023",gradientUnits:"userSpaceOnUse"},[t("stop",{"stop-color":"rgba(var(--color-primary-500), var(--tw-text-opacity))"}),t("stop",{offset:"1","stop-color":"rgba(var(--color-primary-400), var(--tw-text-opacity))"})])],-1),y=[m,g];function x(o,s){return e(),a("svg",_,y)}var w=r(f,[["render",x]]);const u={},v={width:"422",height:"290",viewBox:"0 0 422 290",fill:"none",xmlns:"http://www.w3.org/2000/svg"},b=d('',2),$=[b];function M(o,s){return e(),a("svg",v,$)}var Z=r(u,[["render",M]]);const L={},B={viewBox:"0 0 1170 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},k=t("path",{d:"M690 4.08004C518 -9.91998 231 4.08004 -6 176.361L231 197.08L1170 219.08C1113.33 175.747 909.275 21.928 690 4.08004Z",fill:"white","fill-opacity":"0.1"},null,-1),N=[k];function V(o,s){return e(),a("svg",B,N)}var S=r(L,[["render",V]]);const j={},I={width:"1122",height:"1017",viewBox:"0 0 1122 1017",preserveAspectRatio:"none",fill:"none",xmlns:"http://www.w3.org/2000/svg"},R=t("path",{d:"M226.002 466.5C164.935 687.5 188.326 831.5 224.141 1017H1140V-7L0 -109.5C142.5 -7.5 282.085 263.536 226.002 466.5Z",fill:"url(#paint0_linear)","fill-opacity":"0.1"},null,-1),U=t("defs",null,[t("linearGradient",{id:"paint0_linear",x1:"649.5",y1:"-7",x2:"649.5",y2:"1017",gradientUnits:"userSpaceOnUse"},[t("stop",{"stop-color":"rgba(var(--color-primary-500), var(--tw-text-opacity))"}),t("stop",{offset:"1","stop-color":"rgba(var(--color-primary-400), var(--tw-text-opacity))"})])],-1),z=[R,U];function O(o,s){return e(),a("svg",I,z)}var P=r(j,[["render",O]]);const A={class:"grid h-screen h-screen-ios grid-cols-12 overflow-y-hidden bg-gray-100"},D={class:"flex items-center justify-center w-full max-w-sm col-span-12 p-4 mx-auto text-gray-900 md:p-8 md:col-span-6 lg:col-span-4 flex-2 md:pb-48 md:pt-40"},G={class:"w-full"},H={class:"pt-24 mt-0 text-sm not-italic font-medium leading-relaxed text-left text-gray-400 md:pt-40"},E={class:"mb-3"},F={class:"relative flex-col items-center justify-center hidden w-full h-full pl-10 bg-no-repeat bg-cover md:col-span-6 lg:col-span-8 md:flex content-box overflow-hidden"},T=t("div",{class:"pl-20 xl:pl-0 relative z-50"},[t("h1",{class:"hidden mb-3 text-3xl leading-normal text-left text-white xl:text-5xl xl:leading-tight md:none lg:block"},[t("b",{class:"font-bold"},"Simple Invoicing"),i(),t("br"),i(" for Individuals & "),t("br"),i(" Small Businesses "),t("br")]),t("p",{class:"hidden text-sm not-italic font-normal leading-normal text-left text-gray-100 xl:text-base xl:leading-6 md:none lg:block"},[i(" Crater helps you track expenses, record payments & generate beautiful "),t("br"),i(" invoices & estimates. "),t("br")])],-1),Q={setup(o){return(s,Y)=>{const c=h("router-view");return e(),a("div",A,[l(n),t("div",D,[t("div",G,[l(p,{class:"block w-48 h-auto max-w-full mb-32 text-primary-500"}),l(c),t("div",H,[t("p",E," Copyright @ Crater Invoice, Inc. "+C(new Date().getFullYear()),1)])])]),t("div",F,[l(w,{class:"absolute h-full w-full"}),l(Z,{class:"absolute z-10 top-0 right-0 h-[300px] w-[420px]"}),l(P,{class:"absolute h-full w-full right-[7.5%]"}),T,l(S,{class:"absolute z-50 w-full bg-no-repeat content-bottom h-[15vw] lg:h-[22vw] right-[32%] bottom-0"})])])}}};export{Q as default}; diff --git a/public/build/assets/LayoutLogin.96ca0d8f.js b/public/build/assets/LayoutLogin.96ca0d8f.js deleted file mode 100644 index e62ab6303..000000000 --- a/public/build/assets/LayoutLogin.96ca0d8f.js +++ /dev/null @@ -1 +0,0 @@ -import{N as r}from"./NotificationRoot.a98180ab.js";import{f as l}from"./main.75722495.js";import{k as i,r as n,o,e,f as a,h as s,u as c,l as u}from"./vendor.01d0adc5.js";const d={class:"min-h-screen bg-gray-200 flex flex-col justify-center py-12 sm:px-6 lg:px-8"},p={class:"sm:mx-auto sm:w-full sm:max-w-md px-4 sm:px-0"},_=["src"],x={class:"mt-8 sm:mx-auto sm:w-full sm:max-w-md px-4 sm:px-0"},f={class:"bg-white py-8 px-4 shadow rounded-lg sm:px-10"},b={setup(w){const t=i(()=>window.customer_logo?window.customer_logo:!1);return(h,g)=>{const m=n("router-view");return o(),e("div",d,[a(r),s("div",p,[c(t)?(o(),e("img",{key:1,src:c(t),class:"block w-48 h-auto max-w-full text-primary-400 mx-auto"},null,8,_)):(o(),u(l,{key:0,class:"block w-48 h-auto max-w-full text-primary-400 mx-auto"}))]),s("div",x,[s("div",f,[a(m)])])])}}};export{b as default}; diff --git a/public/build/assets/LayoutLogin.d574a04a.js b/public/build/assets/LayoutLogin.d574a04a.js deleted file mode 100644 index c895a0598..000000000 --- a/public/build/assets/LayoutLogin.d574a04a.js +++ /dev/null @@ -1 +0,0 @@ -import{N as n}from"./NotificationRoot.a98180ab.js";import{_ as r,f as p}from"./main.75722495.js";import{o as a,e,h as t,ai as d,r as h,f as l,t as C,i}from"./vendor.01d0adc5.js";const f={},_={viewBox:"0 0 1012 1023",fill:"none",xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"none",class:"text-primary-500"},m=t("path",{d:"M116.21 472.5C55.1239 693.5 78.5219 837.5 114.349 1023H1030.5V-1L0 -106C147.5 21.5 172.311 269.536 116.21 472.5Z",fill:"url(#paint0_linear)"},null,-1),g=t("defs",null,[t("linearGradient",{id:"paint0_linear",x1:"515.25",y1:"-106",x2:"515.25",y2:"1023",gradientUnits:"userSpaceOnUse"},[t("stop",{"stop-color":"rgba(var(--color-primary-500), var(--tw-text-opacity))"}),t("stop",{offset:"1","stop-color":"rgba(var(--color-primary-400), var(--tw-text-opacity))"})])],-1),y=[m,g];function x(o,s){return a(),e("svg",_,y)}var w=r(f,[["render",x]]);const u={},v={width:"422",height:"290",viewBox:"0 0 422 290",fill:"none",xmlns:"http://www.w3.org/2000/svg"},b=d('',2),$=[b];function M(o,s){return a(),e("svg",v,$)}var Z=r(u,[["render",M]]);const L={},B={viewBox:"0 0 1170 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},k=t("path",{d:"M690 4.08004C518 -9.91998 231 4.08004 -6 176.361L231 197.08L1170 219.08C1113.33 175.747 909.275 21.928 690 4.08004Z",fill:"white","fill-opacity":"0.1"},null,-1),N=[k];function V(o,s){return a(),e("svg",B,N)}var S=r(L,[["render",V]]);const j={},I={width:"1122",height:"1017",viewBox:"0 0 1122 1017",preserveAspectRatio:"none",fill:"none",xmlns:"http://www.w3.org/2000/svg"},R=t("path",{d:"M226.002 466.5C164.935 687.5 188.326 831.5 224.141 1017H1140V-7L0 -109.5C142.5 -7.5 282.085 263.536 226.002 466.5Z",fill:"url(#paint0_linear)","fill-opacity":"0.1"},null,-1),U=t("defs",null,[t("linearGradient",{id:"paint0_linear",x1:"649.5",y1:"-7",x2:"649.5",y2:"1017",gradientUnits:"userSpaceOnUse"},[t("stop",{"stop-color":"rgba(var(--color-primary-500), var(--tw-text-opacity))"}),t("stop",{offset:"1","stop-color":"rgba(var(--color-primary-400), var(--tw-text-opacity))"})])],-1),z=[R,U];function O(o,s){return a(),e("svg",I,z)}var P=r(j,[["render",O]]);const A={class:"grid h-screen h-screen-ios grid-cols-12 overflow-y-hidden bg-gray-100"},D={class:"flex items-center justify-center w-full max-w-sm col-span-12 p-4 mx-auto text-gray-900 md:p-8 md:col-span-6 lg:col-span-4 flex-2 md:pb-48 md:pt-40"},G={class:"w-full"},H={class:"pt-24 mt-0 text-sm not-italic font-medium leading-relaxed text-left text-gray-400 md:pt-40"},E={class:"mb-3"},F={class:"relative flex-col items-center justify-center hidden w-full h-full pl-10 bg-no-repeat bg-cover md:col-span-6 lg:col-span-8 md:flex content-box overflow-hidden"},T=t("div",{class:"pl-20 xl:pl-0 relative z-50"},[t("h1",{class:"hidden mb-3 text-3xl leading-normal text-left text-white xl:text-5xl xl:leading-tight md:none lg:block"},[t("b",{class:"font-bold"},"Simple Invoicing"),i(),t("br"),i(" for Individuals & "),t("br"),i(" Small Businesses "),t("br")]),t("p",{class:"hidden text-sm not-italic font-normal leading-normal text-left text-gray-100 xl:text-base xl:leading-6 md:none lg:block"},[i(" Crater helps you track expenses, record payments & generate beautiful "),t("br"),i(" invoices & estimates. "),t("br")])],-1),Q={setup(o){return(s,Y)=>{const c=h("router-view");return a(),e("div",A,[l(n),t("div",D,[t("div",G,[l(p,{class:"block w-48 h-auto max-w-full mb-32 text-primary-500"}),l(c),t("div",H,[t("p",E," Copyright @ Crater Invoice, Inc. "+C(new Date().getFullYear()),1)])])]),t("div",F,[l(w,{class:"absolute h-full w-full"}),l(Z,{class:"absolute z-10 top-0 right-0 h-[300px] w-[420px]"}),l(P,{class:"absolute h-full w-full right-[7.5%]"}),T,l(S,{class:"absolute z-50 w-full bg-no-repeat content-bottom h-[15vw] lg:h-[22vw] right-[32%] bottom-0"})])])}}};export{Q as default}; diff --git a/public/build/assets/LineChart.a92f3bea.js b/public/build/assets/LineChart.f87804e4.js similarity index 99% rename from public/build/assets/LineChart.a92f3bea.js rename to public/build/assets/LineChart.f87804e4.js index 29ca0702f..491ac713b 100644 --- a/public/build/assets/LineChart.a92f3bea.js +++ b/public/build/assets/LineChart.f87804e4.js @@ -1,4 +1,4 @@ -import{aQ as Zi,ah as Ji,B as Qi,k as eo,a7 as to,D as ro,a0 as ea,o as ao,e as no,h as io}from"./vendor.01d0adc5.js";import{b as oo}from"./main.75722495.js";var ta={exports:{}};/*! +import{aQ as Zi,ah as Ji,B as Qi,k as eo,a7 as to,D as ro,a0 as ea,o as ao,e as no,h as io}from"./vendor.01d0adc5.js";import{b as oo}from"./main.24f7a84b.js";var ta={exports:{}};/*! * Chart.js v2.9.4 * https://www.chartjs.org * (c) 2020 Chart.js Contributors diff --git a/public/build/assets/LoadingIcon.44a6304d.js b/public/build/assets/LoadingIcon.e09a5e28.js similarity index 81% rename from public/build/assets/LoadingIcon.44a6304d.js rename to public/build/assets/LoadingIcon.e09a5e28.js index 2d101ba21..cd67e626a 100644 --- a/public/build/assets/LoadingIcon.44a6304d.js +++ b/public/build/assets/LoadingIcon.e09a5e28.js @@ -1 +1 @@ -import{_ as e}from"./main.75722495.js";import{o as c,e as s,h as o}from"./vendor.01d0adc5.js";const t={},r={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},n=o("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),a=o("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1),l=[n,a];function i(_,d){return c(),s("svg",r,l)}var p=e(t,[["render",i]]);export{p as L}; +import{_ as e}from"./main.24f7a84b.js";import{o as c,e as s,h as o}from"./vendor.01d0adc5.js";const t={},r={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},n=o("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),a=o("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1),l=[n,a];function i(_,d){return c(),s("svg",r,l)}var m=e(t,[["render",i]]);export{m as L}; diff --git a/public/build/assets/Login.e5a5b4de.js b/public/build/assets/Login.9a626b8a.js similarity index 79% rename from public/build/assets/Login.e5a5b4de.js rename to public/build/assets/Login.9a626b8a.js index 1100fc0e5..2acbd4365 100644 --- a/public/build/assets/Login.e5a5b4de.js +++ b/public/build/assets/Login.9a626b8a.js @@ -1 +1 @@ -var E=Object.defineProperty,G=Object.defineProperties;var L=Object.getOwnPropertyDescriptors;var D=Object.getOwnPropertySymbols;var U=Object.prototype.hasOwnProperty,O=Object.prototype.propertyIsEnumerable;var B=(s,a,t)=>a in s?E(s,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[a]=t,b=(s,a)=>{for(var t in a||(a={}))U.call(a,t)&&B(s,t,a[t]);if(D)for(var t of D(a))O.call(a,t)&&B(s,t,a[t]);return s},I=(s,a)=>G(s,L(a));import{aN as P,G as R,J as z,B as _,k as h,L as f,M as k,Q as A,T as F,r as c,o as w,e as J,f as i,w as m,u as e,l as V,h as S,i as q,t as x,m as Q,U as H}from"./vendor.01d0adc5.js";import{u as K}from"./auth.4644c288.js";import"./main.75722495.js";const W=["onSubmit"],X={class:"flex items-center justify-between"},oe={setup(s){const a=P(),t=R(),l=K(),{t:g}=z();let p=_(!1);const u=_(!1),C=h(()=>u.value?"text":"password"),j=h(()=>({loginData:{email:{required:f.withMessage(g("validation.required"),k),email:f.withMessage(g("validation.email_incorrect"),A)},password:{required:f.withMessage(g("validation.required"),k)}}})),r=F(j,l);async function M(){if(r.value.loginData.$touch(),r.value.loginData.$invalid)return!0;p.value=!0;let d=I(b({},l.loginData),{company:t.params.company});try{return await l.login(d),p.value=!1,a.push({name:"customer.dashboard"});l.$reset()}catch{p.value=!1}}return(d,o)=>{const $=c("BaseInput"),y=c("BaseInputGroup"),v=c("BaseIcon"),N=c("router-link"),T=c("BaseButton");return w(),J("form",{id:"loginForm",class:"space-y-6",action:"#",method:"POST",onSubmit:H(M,["prevent"])},[i(y,{error:e(r).loginData.email.$error&&e(r).loginData.email.$errors[0].$message,label:d.$t("login.email"),class:"mb-4",required:""},{default:m(()=>[i($,{modelValue:e(l).loginData.email,"onUpdate:modelValue":o[0]||(o[0]=n=>e(l).loginData.email=n),type:"email",invalid:e(r).loginData.email.$error,onInput:o[1]||(o[1]=n=>e(r).loginData.email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),i(y,{error:e(r).loginData.password.$error&&e(r).loginData.password.$errors[0].$message,label:d.$t("login.password"),class:"mb-4",required:""},{default:m(()=>[i($,{modelValue:e(l).loginData.password,"onUpdate:modelValue":o[4]||(o[4]=n=>e(l).loginData.password=n),type:e(C),invalid:e(r).loginData.password.$error,onInput:o[5]||(o[5]=n=>e(r).loginData.password.$touch())},{right:m(()=>[u.value?(w(),V(v,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:o[2]||(o[2]=n=>u.value=!u.value)})):(w(),V(v,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:o[3]||(o[3]=n=>u.value=!u.value)}))]),_:1},8,["modelValue","type","invalid"])]),_:1},8,["error","label"]),S("div",X,[i(N,{to:{name:"customer.forgot-password"},class:"text-sm text-primary-600 hover:text-gray-500"},{default:m(()=>[q(x(d.$t("login.forgot_password")),1)]),_:1},8,["to"])]),S("div",null,[i(T,{loading:e(p),disabled:e(p),type:"submit",class:"w-full justify-center"},{left:m(n=>[i(v,{name:"LockClosedIcon",class:Q(n.class)},null,8,["class"])]),default:m(()=>[q(" "+x(d.$t("login.login")),1)]),_:1},8,["loading","disabled"])])],40,W)}}};export{oe as default}; +var E=Object.defineProperty,G=Object.defineProperties;var L=Object.getOwnPropertyDescriptors;var D=Object.getOwnPropertySymbols;var U=Object.prototype.hasOwnProperty,O=Object.prototype.propertyIsEnumerable;var B=(s,a,t)=>a in s?E(s,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[a]=t,b=(s,a)=>{for(var t in a||(a={}))U.call(a,t)&&B(s,t,a[t]);if(D)for(var t of D(a))O.call(a,t)&&B(s,t,a[t]);return s},I=(s,a)=>G(s,L(a));import{aN as P,G as R,J as z,B as _,k as h,L as v,M as k,Q as A,T as F,r as c,o as w,e as J,f as i,w as m,u as e,l as V,h as S,i as q,t as x,m as Q,U as H}from"./vendor.01d0adc5.js";import{u as K}from"./auth.0e030165.js";import"./main.24f7a84b.js";const W=["onSubmit"],X={class:"flex items-center justify-between"},oe={setup(s){const a=P(),t=R(),l=K(),{t:g}=z();let p=_(!1);const u=_(!1),C=h(()=>u.value?"text":"password"),j=h(()=>({loginData:{email:{required:v.withMessage(g("validation.required"),k),email:v.withMessage(g("validation.email_incorrect"),A)},password:{required:v.withMessage(g("validation.required"),k)}}})),r=F(j,l);async function M(){if(r.value.loginData.$touch(),r.value.loginData.$invalid)return!0;p.value=!0;let d=I(b({},l.loginData),{company:t.params.company});try{return await l.login(d),p.value=!1,a.push({name:"customer.dashboard"});l.$reset()}catch{p.value=!1}}return(d,o)=>{const $=c("BaseInput"),y=c("BaseInputGroup"),f=c("BaseIcon"),N=c("router-link"),T=c("BaseButton");return w(),J("form",{id:"loginForm",class:"space-y-6",action:"#",method:"POST",onSubmit:H(M,["prevent"])},[i(y,{error:e(r).loginData.email.$error&&e(r).loginData.email.$errors[0].$message,label:d.$t("login.email"),class:"mb-4",required:""},{default:m(()=>[i($,{modelValue:e(l).loginData.email,"onUpdate:modelValue":o[0]||(o[0]=n=>e(l).loginData.email=n),type:"email",invalid:e(r).loginData.email.$error,onInput:o[1]||(o[1]=n=>e(r).loginData.email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),i(y,{error:e(r).loginData.password.$error&&e(r).loginData.password.$errors[0].$message,label:d.$t("login.password"),class:"mb-4",required:""},{default:m(()=>[i($,{modelValue:e(l).loginData.password,"onUpdate:modelValue":o[4]||(o[4]=n=>e(l).loginData.password=n),type:e(C),invalid:e(r).loginData.password.$error,onInput:o[5]||(o[5]=n=>e(r).loginData.password.$touch())},{right:m(()=>[u.value?(w(),V(f,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:o[2]||(o[2]=n=>u.value=!u.value)})):(w(),V(f,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:o[3]||(o[3]=n=>u.value=!u.value)}))]),_:1},8,["modelValue","type","invalid"])]),_:1},8,["error","label"]),S("div",X,[i(N,{to:{name:"customer.forgot-password"},class:"text-sm text-primary-600 hover:text-gray-500"},{default:m(()=>[q(x(d.$t("login.forgot_password")),1)]),_:1},8,["to"])]),S("div",null,[i(T,{loading:e(p),disabled:e(p),type:"submit",class:"w-full justify-center"},{left:m(n=>[i(f,{name:"LockClosedIcon",class:Q(n.class)},null,8,["class"])]),default:m(()=>[q(" "+x(d.$t("login.login")),1)]),_:1},8,["loading","disabled"])])],40,W)}}};export{oe as default}; diff --git a/public/build/assets/Login.9abd1acb.js b/public/build/assets/Login.f6c16d98.js similarity index 81% rename from public/build/assets/Login.9abd1acb.js rename to public/build/assets/Login.f6c16d98.js index 66174dff2..da056bbf5 100644 --- a/public/build/assets/Login.9abd1acb.js +++ b/public/build/assets/Login.f6c16d98.js @@ -1 +1 @@ -import{J as C,aN as M,B as w,L as p,M as $,Q as E,T as L,k as y,r as l,o as c,e as T,f as n,w as u,u as e,l as B,x as _,h as b,i as h,t as I,U,a as j}from"./vendor.01d0adc5.js";import{u as G,a as R}from"./main.75722495.js";const A=["onSubmit"],F={class:"mt-5 mb-8"},J={class:"mb-4"},z={setup(O){const k=G(),s=R(),{t:m}=C(),V=M(),d=w(!1);let o=w(!1);const x={email:{required:p.withMessage(m("validation.required"),$),email:p.withMessage(m("validation.email_incorrect"),E)},password:{required:p.withMessage(m("validation.required"),$)}},t=L(x,y(()=>s.loginData)),S=y(()=>o.value?"text":"password");async function q(){if(j.defaults.withCredentials=!0,t.value.$touch(),t.value.$invalid)return!0;d.value=!0;try{d.value=!0,await s.login(s.loginData),V.push("/admin/dashboard"),k.showNotification({type:"success",message:"Logged in successfully."})}catch{d.value=!1}}return(i,a)=>{const g=l("BaseInput"),f=l("BaseInputGroup"),v=l("BaseIcon"),D=l("router-link"),N=l("BaseButton");return c(),T("form",{id:"loginForm",class:"mt-12 text-left",onSubmit:U(q,["prevent"])},[n(f,{error:e(t).email.$error&&e(t).email.$errors[0].$message,label:i.$t("login.email"),class:"mb-4",required:""},{default:u(()=>[n(g,{modelValue:e(s).loginData.email,"onUpdate:modelValue":a[0]||(a[0]=r=>e(s).loginData.email=r),invalid:e(t).email.$error,focus:"",type:"email",name:"email",onInput:a[1]||(a[1]=r=>e(t).email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),n(f,{error:e(t).password.$error&&e(t).password.$errors[0].$message,label:i.$t("login.password"),class:"mb-4",required:""},{default:u(()=>[n(g,{modelValue:e(s).loginData.password,"onUpdate:modelValue":a[4]||(a[4]=r=>e(s).loginData.password=r),invalid:e(t).password.$error,type:e(S),name:"password",onInput:a[5]||(a[5]=r=>e(t).password.$touch())},{right:u(()=>[e(o)?(c(),B(v,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:a[2]||(a[2]=r=>_(o)?o.value=!e(o):o=!e(o))})):(c(),B(v,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:a[3]||(a[3]=r=>_(o)?o.value=!e(o):o=!e(o))}))]),_:1},8,["modelValue","invalid","type"])]),_:1},8,["error","label"]),b("div",F,[b("div",J,[n(D,{to:"forgot-password",class:"text-sm text-primary-400 hover:text-gray-700"},{default:u(()=>[h(I(i.$t("login.forgot_password")),1)]),_:1})])]),n(N,{loading:d.value,type:"submit"},{default:u(()=>[h(I(i.$t("login.login")),1)]),_:1},8,["loading"])],40,A)}}};export{z as default}; +import{J as C,aN as M,B as w,L as p,M as $,Q as E,T as L,k as y,r as l,o as c,e as T,f as n,w as u,u as e,l as B,x as _,h as b,i as h,t as I,U,a as j}from"./vendor.01d0adc5.js";import{u as G,a as R}from"./main.24f7a84b.js";const A=["onSubmit"],F={class:"mt-5 mb-8"},J={class:"mb-4"},z={setup(O){const k=G(),s=R(),{t:m}=C(),V=M(),d=w(!1);let o=w(!1);const x={email:{required:p.withMessage(m("validation.required"),$),email:p.withMessage(m("validation.email_incorrect"),E)},password:{required:p.withMessage(m("validation.required"),$)}},t=L(x,y(()=>s.loginData)),S=y(()=>o.value?"text":"password");async function q(){if(j.defaults.withCredentials=!0,t.value.$touch(),t.value.$invalid)return!0;d.value=!0;try{d.value=!0,await s.login(s.loginData),V.push("/admin/dashboard"),k.showNotification({type:"success",message:"Logged in successfully."})}catch{d.value=!1}}return(i,a)=>{const f=l("BaseInput"),g=l("BaseInputGroup"),v=l("BaseIcon"),D=l("router-link"),N=l("BaseButton");return c(),T("form",{id:"loginForm",class:"mt-12 text-left",onSubmit:U(q,["prevent"])},[n(g,{error:e(t).email.$error&&e(t).email.$errors[0].$message,label:i.$t("login.email"),class:"mb-4",required:""},{default:u(()=>[n(f,{modelValue:e(s).loginData.email,"onUpdate:modelValue":a[0]||(a[0]=r=>e(s).loginData.email=r),invalid:e(t).email.$error,focus:"",type:"email",name:"email",onInput:a[1]||(a[1]=r=>e(t).email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),n(g,{error:e(t).password.$error&&e(t).password.$errors[0].$message,label:i.$t("login.password"),class:"mb-4",required:""},{default:u(()=>[n(f,{modelValue:e(s).loginData.password,"onUpdate:modelValue":a[4]||(a[4]=r=>e(s).loginData.password=r),invalid:e(t).password.$error,type:e(S),name:"password",onInput:a[5]||(a[5]=r=>e(t).password.$touch())},{right:u(()=>[e(o)?(c(),B(v,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:a[2]||(a[2]=r=>_(o)?o.value=!e(o):o=!e(o))})):(c(),B(v,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:a[3]||(a[3]=r=>_(o)?o.value=!e(o):o=!e(o))}))]),_:1},8,["modelValue","invalid","type"])]),_:1},8,["error","label"]),b("div",F,[b("div",J,[n(D,{to:"forgot-password",class:"text-sm text-primary-400 hover:text-gray-700"},{default:u(()=>[h(I(i.$t("login.forgot_password")),1)]),_:1})])]),n(N,{loading:d.value,type:"submit"},{default:u(()=>[h(I(i.$t("login.login")),1)]),_:1},8,["loading"])],40,A)}}};export{z as default}; diff --git a/public/build/assets/MailConfigSetting.91f66b99.js b/public/build/assets/MailConfigSetting.4b59b903.js similarity index 99% rename from public/build/assets/MailConfigSetting.91f66b99.js rename to public/build/assets/MailConfigSetting.4b59b903.js index 4b9ace1a1..c16657282 100644 --- a/public/build/assets/MailConfigSetting.91f66b99.js +++ b/public/build/assets/MailConfigSetting.4b59b903.js @@ -1 +1 @@ -import{J as j,B as G,a0 as Q,k as B,L as f,M as C,aT as R,Q as A,T as P,D as L,r as c,o as q,e as O,f as l,w as s,u as e,l as V,x as T,h as F,m as z,j as E,i as S,t as k,g as J,U as N,S as X,aj as Z,F as ee}from"./vendor.01d0adc5.js";import{u as x}from"./mail-driver.4ea1af6b.js";import{c as H}from"./main.75722495.js";const ie=["onSubmit"],ne={class:"flex my-10"},K={props:{configData:{type:Object,require:!0,default:Object},isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1},mailDrivers:{type:Array,require:!0,default:Array}},emits:["submit-data","on-change-driver"],setup(a,{emit:D}){const $=a,i=x(),{t:u}=j();let m=G(!1);const b=Q(["tls","ssl","starttls"]),w=B(()=>m.value?"text":"password"),t=B(()=>({smtpConfig:{mail_driver:{required:f.withMessage(u("validation.required"),C)},mail_host:{required:f.withMessage(u("validation.required"),C)},mail_port:{required:f.withMessage(u("validation.required"),C),numeric:f.withMessage(u("validation.numbers_only"),R)},mail_encryption:{required:f.withMessage(u("validation.required"),C)},from_mail:{required:f.withMessage(u("validation.required"),C),email:f.withMessage(u("validation.email_incorrect"),A)},from_name:{required:f.withMessage(u("validation.required"),C)}}})),d=P(t,B(()=>i));L(()=>{for(const o in i.smtpConfig)$.configData.hasOwnProperty(o)&&(i.smtpConfig[o]=$.configData[o])});async function I(){return d.value.smtpConfig.$touch(),d.value.smtpConfig.$invalid||D("submit-data",i.smtpConfig),!1}function g(){d.value.smtpConfig.mail_driver.$touch(),D("on-change-driver",i.smtpConfig.mail_driver)}return(o,n)=>{const M=c("BaseMultiselect"),v=c("BaseInputGroup"),y=c("BaseInput"),_=c("BaseIcon"),U=c("BaseInputGrid"),p=c("BaseButton");return q(),O("form",{onSubmit:N(I,["prevent"])},[l(U,null,{default:s(()=>[l(v,{label:o.$t("settings.mail.driver"),"content-loading":a.isFetchingInitialData,error:e(d).smtpConfig.mail_driver.$error&&e(d).smtpConfig.mail_driver.$errors[0].$message,required:""},{default:s(()=>[l(M,{modelValue:e(i).smtpConfig.mail_driver,"onUpdate:modelValue":[n[0]||(n[0]=r=>e(i).smtpConfig.mail_driver=r),g],"content-loading":a.isFetchingInitialData,options:a.mailDrivers,"can-deselect":!1,invalid:e(d).smtpConfig.mail_driver.$error},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.host"),"content-loading":a.isFetchingInitialData,error:e(d).smtpConfig.mail_host.$error&&e(d).smtpConfig.mail_host.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).smtpConfig.mail_host,"onUpdate:modelValue":n[1]||(n[1]=r=>e(i).smtpConfig.mail_host=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"mail_host",invalid:e(d).smtpConfig.mail_host.$error,onInput:n[2]||(n[2]=r=>e(d).smtpConfig.mail_host.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{"content-loading":a.isFetchingInitialData,label:o.$t("settings.mail.username")},{default:s(()=>[l(y,{modelValue:e(i).smtpConfig.mail_username,"onUpdate:modelValue":n[3]||(n[3]=r=>e(i).smtpConfig.mail_username=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"db_name"},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"]),l(v,{"content-loading":a.isFetchingInitialData,label:o.$t("settings.mail.password")},{default:s(()=>[l(y,{modelValue:e(i).smtpConfig.mail_password,"onUpdate:modelValue":n[6]||(n[6]=r=>e(i).smtpConfig.mail_password=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:e(w),name:"password"},{right:s(()=>[e(m)?(q(),V(_,{key:0,class:"mr-1 text-gray-500 cursor-pointer",name:"EyeOffIcon",onClick:n[4]||(n[4]=r=>T(m)?m.value=!e(m):m=!e(m))})):(q(),V(_,{key:1,class:"mr-1 text-gray-500 cursor-pointer",name:"EyeIcon",onClick:n[5]||(n[5]=r=>T(m)?m.value=!e(m):m=!e(m))}))]),_:1},8,["modelValue","content-loading","type"])]),_:1},8,["content-loading","label"]),l(v,{label:o.$t("settings.mail.port"),"content-loading":a.isFetchingInitialData,error:e(d).smtpConfig.mail_port.$error&&e(d).smtpConfig.mail_port.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).smtpConfig.mail_port,"onUpdate:modelValue":n[7]||(n[7]=r=>e(i).smtpConfig.mail_port=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"mail_port",invalid:e(d).smtpConfig.mail_port.$error,onInput:n[8]||(n[8]=r=>e(d).smtpConfig.mail_port.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.encryption"),"content-loading":a.isFetchingInitialData,error:e(d).smtpConfig.mail_encryption.$error&&e(d).smtpConfig.mail_encryption.$errors[0].$message,required:""},{default:s(()=>[l(M,{modelValue:e(i).smtpConfig.mail_encryption,"onUpdate:modelValue":n[9]||(n[9]=r=>e(i).smtpConfig.mail_encryption=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,options:e(b),searchable:!0,"show-labels":!1,placeholder:"Select option",invalid:e(d).smtpConfig.mail_encryption.$error,onInput:n[10]||(n[10]=r=>e(d).smtpConfig.mail_encryption.$touch())},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.from_mail"),"content-loading":a.isFetchingInitialData,error:e(d).smtpConfig.from_mail.$error&&e(d).smtpConfig.from_mail.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).smtpConfig.from_mail,"onUpdate:modelValue":n[11]||(n[11]=r=>e(i).smtpConfig.from_mail=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"from_mail",invalid:e(d).smtpConfig.from_mail.$error,onInput:n[12]||(n[12]=r=>e(d).smtpConfig.from_mail.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.from_name"),"content-loading":a.isFetchingInitialData,error:e(d).smtpConfig.from_name.$error&&e(d).smtpConfig.from_name.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).smtpConfig.from_name,"onUpdate:modelValue":n[13]||(n[13]=r=>e(i).smtpConfig.from_name=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"from_name",invalid:e(d).smtpConfig.from_name.$error,onInput:n[14]||(n[14]=r=>e(d).smtpConfig.from_name.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"])]),_:1}),F("div",ne,[l(p,{disabled:a.isSaving,"content-loading":a.isFetchingInitialData,loading:a.isSaving,type:"submit",variant:"primary"},{left:s(r=>[a.isSaving?E("",!0):(q(),V(_,{key:0,name:"SaveIcon",class:z(r.class)},null,8,["class"]))]),default:s(()=>[S(" "+k(o.$t("general.save")),1)]),_:1},8,["disabled","content-loading","loading"]),J(o.$slots,"default")])],40,ie)}}},te=["onSubmit"],ae={class:"flex my-10"},oe={props:{configData:{type:Object,require:!0,default:Object},isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1},mailDrivers:{type:Array,require:!0,default:Array}},emits:["submit-data","on-change-driver"],setup(a,{emit:D}){const $=a,i=x(),{t:u}=j();let m=G(!1);const b=B(()=>m.value?"text":"password"),w=B(()=>({mailgunConfig:{mail_driver:{required:f.withMessage(u("validation.required"),C)},mail_mailgun_domain:{required:f.withMessage(u("validation.required"),C)},mail_mailgun_endpoint:{required:f.withMessage(u("validation.required"),C)},mail_mailgun_secret:{required:f.withMessage(u("validation.required"),C)},from_mail:{required:f.withMessage(u("validation.required"),C),email:A},from_name:{required:f.withMessage(u("validation.required"),C)}}})),t=P(w,B(()=>i));L(()=>{for(const g in i.mailgunConfig)$.configData.hasOwnProperty(g)&&(i.mailgunConfig[g]=$.configData[g])});async function d(){return t.value.mailgunConfig.$touch(),t.value.mailgunConfig.$invalid||D("submit-data",i.mailgunConfig),!1}function I(){t.value.mailgunConfig.mail_driver.$touch(),D("on-change-driver",i.mailgunConfig.mail_driver)}return(g,o)=>{const n=c("BaseMultiselect"),M=c("BaseInputGroup"),v=c("BaseInput"),y=c("BaseIcon"),_=c("BaseInputGrid"),U=c("BaseButton");return q(),O("form",{onSubmit:N(d,["prevent"])},[l(_,null,{default:s(()=>[l(M,{label:g.$t("settings.mail.driver"),"content-loading":a.isFetchingInitialData,error:e(t).mailgunConfig.mail_driver.$error&&e(t).mailgunConfig.mail_driver.$errors[0].$message,required:""},{default:s(()=>[l(n,{modelValue:e(i).mailgunConfig.mail_driver,"onUpdate:modelValue":[o[0]||(o[0]=p=>e(i).mailgunConfig.mail_driver=p),I],"content-loading":a.isFetchingInitialData,options:a.mailDrivers,"can-deselect":!1,invalid:e(t).mailgunConfig.mail_driver.$error},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),l(M,{label:g.$t("settings.mail.mailgun_domain"),"content-loading":a.isFetchingInitialData,error:e(t).mailgunConfig.mail_mailgun_domain.$error&&e(t).mailgunConfig.mail_mailgun_domain.$errors[0].$message,required:""},{default:s(()=>[l(v,{modelValue:e(i).mailgunConfig.mail_mailgun_domain,"onUpdate:modelValue":o[1]||(o[1]=p=>e(i).mailgunConfig.mail_mailgun_domain=p),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"mailgun_domain",invalid:e(t).mailgunConfig.mail_mailgun_domain.$error,onInput:o[2]||(o[2]=p=>e(t).mailgunConfig.mail_mailgun_domain.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(M,{label:g.$t("settings.mail.mailgun_secret"),"content-loading":a.isFetchingInitialData,error:e(t).mailgunConfig.mail_mailgun_secret.$error&&e(t).mailgunConfig.mail_mailgun_secret.$errors[0].$message,required:""},{default:s(()=>[l(v,{modelValue:e(i).mailgunConfig.mail_mailgun_secret,"onUpdate:modelValue":o[5]||(o[5]=p=>e(i).mailgunConfig.mail_mailgun_secret=p),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:e(b),name:"mailgun_secret",autocomplete:"off",invalid:e(t).mailgunConfig.mail_mailgun_secret.$error,onInput:o[6]||(o[6]=p=>e(t).mailgunConfig.mail_mailgun_secret.$touch())},{right:s(()=>[e(m)?(q(),V(y,{key:0,class:"mr-1 text-gray-500 cursor-pointer",name:"EyeOffIcon",onClick:o[3]||(o[3]=p=>T(m)?m.value=!e(m):m=!e(m))})):(q(),V(y,{key:1,class:"mr-1 text-gray-500 cursor-pointer",name:"EyeIcon",onClick:o[4]||(o[4]=p=>T(m)?m.value=!e(m):m=!e(m))}))]),_:1},8,["modelValue","content-loading","type","invalid"])]),_:1},8,["label","content-loading","error"]),l(M,{label:g.$t("settings.mail.mailgun_endpoint"),"content-loading":a.isFetchingInitialData,error:e(t).mailgunConfig.mail_mailgun_endpoint.$error&&e(t).mailgunConfig.mail_mailgun_endpoint.$errors[0].$message,required:""},{default:s(()=>[l(v,{modelValue:e(i).mailgunConfig.mail_mailgun_endpoint,"onUpdate:modelValue":o[7]||(o[7]=p=>e(i).mailgunConfig.mail_mailgun_endpoint=p),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"mailgun_endpoint",invalid:e(t).mailgunConfig.mail_mailgun_endpoint.$error,onInput:o[8]||(o[8]=p=>e(t).mailgunConfig.mail_mailgun_endpoint.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(M,{label:g.$t("settings.mail.from_mail"),"content-loading":a.isFetchingInitialData,error:e(t).mailgunConfig.from_mail.$error&&e(t).mailgunConfig.from_mail.$errors[0].$message,required:""},{default:s(()=>[l(v,{modelValue:e(i).mailgunConfig.from_mail,"onUpdate:modelValue":o[9]||(o[9]=p=>e(i).mailgunConfig.from_mail=p),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"from_mail",invalid:e(t).mailgunConfig.from_mail.$error,onInput:o[10]||(o[10]=p=>e(t).mailgunConfig.from_mail.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(M,{label:g.$t("settings.mail.from_name"),"content-loading":a.isFetchingInitialData,error:e(t).mailgunConfig.from_name.$error&&e(t).mailgunConfig.from_name.$errors[0].$message,required:""},{default:s(()=>[l(v,{modelValue:e(i).mailgunConfig.from_name,"onUpdate:modelValue":o[11]||(o[11]=p=>e(i).mailgunConfig.from_name=p),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"from_name",invalid:e(t).mailgunConfig.from_name.$error,onInput:o[12]||(o[12]=p=>e(t).mailgunConfig.from_name.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"])]),_:1}),F("div",ae,[l(U,{disabled:a.isSaving,"content-loading":a.isFetchingInitialData,loading:a.isSaving,variant:"primary",type:"submit"},{left:s(p=>[a.isSaving?E("",!0):(q(),V(y,{key:0,name:"SaveIcon",class:z(p.class)},null,8,["class"]))]),default:s(()=>[S(" "+k(g.$t("general.save")),1)]),_:1},8,["disabled","content-loading","loading"]),J(g.$slots,"default")])],40,te)}}},le=["onSubmit"],re={class:"flex my-10"},se={props:{configData:{type:Object,require:!0,default:Object},isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1},mailDrivers:{type:Array,require:!0,default:Array}},emits:["submit-data","on-change-driver"],setup(a,{emit:D}){const $=a,i=x(),{t:u}=j();let m=G(!1);const b=Q(["tls","ssl","starttls"]),w=B(()=>({sesConfig:{mail_driver:{required:f.withMessage(u("validation.required"),C)},mail_host:{required:f.withMessage(u("validation.required"),C)},mail_port:{required:f.withMessage(u("validation.required"),C),numeric:R},mail_ses_key:{required:f.withMessage(u("validation.required"),C)},mail_ses_secret:{required:f.withMessage(u("validation.required"),C)},mail_encryption:{required:f.withMessage(u("validation.required"),C)},from_mail:{required:f.withMessage(u("validation.required"),C),email:f.withMessage(u("validation.email_incorrect"),A)},from_name:{required:f.withMessage(u("validation.required"),C)}}})),t=P(w,B(()=>i)),d=B(()=>m.value?"text":"password");L(()=>{for(const o in i.sesConfig)$.configData.hasOwnProperty(o)&&(i.sesConfig[o]=$.configData[o])});async function I(){return t.value.sesConfig.$touch(),t.value.sesConfig.$invalid||D("submit-data",i.sesConfig),!1}function g(){t.value.sesConfig.mail_driver.$touch(),D("on-change-driver",i.sesConfig.mail_driver)}return(o,n)=>{const M=c("BaseMultiselect"),v=c("BaseInputGroup"),y=c("BaseInput"),_=c("BaseIcon"),U=c("BaseInputGrid"),p=c("BaseButton");return q(),O("form",{onSubmit:N(I,["prevent"])},[l(U,null,{default:s(()=>[l(v,{label:o.$t("settings.mail.driver"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.mail_driver.$error&&e(t).sesConfig.mail_driver.$errors[0].$message,required:""},{default:s(()=>[l(M,{modelValue:e(i).sesConfig.mail_driver,"onUpdate:modelValue":[n[0]||(n[0]=r=>e(i).sesConfig.mail_driver=r),g],"content-loading":a.isFetchingInitialData,options:a.mailDrivers,"can-deselect":!1,invalid:e(t).sesConfig.mail_driver.$error},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.host"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.mail_host.$error&&e(t).sesConfig.mail_host.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).sesConfig.mail_host,"onUpdate:modelValue":n[1]||(n[1]=r=>e(i).sesConfig.mail_host=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"mail_host",invalid:e(t).sesConfig.mail_host.$error,onInput:n[2]||(n[2]=r=>e(t).sesConfig.mail_host.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.port"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.mail_port.$error&&e(t).sesConfig.mail_port.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).sesConfig.mail_port,"onUpdate:modelValue":n[3]||(n[3]=r=>e(i).sesConfig.mail_port=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"mail_port",invalid:e(t).sesConfig.mail_port.$error,onInput:n[4]||(n[4]=r=>e(t).sesConfig.mail_port.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.encryption"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.mail_encryption.$error&&e(t).sesConfig.mail_encryption.$errors[0].$message,required:""},{default:s(()=>[l(M,{modelValue:e(i).sesConfig.mail_encryption,"onUpdate:modelValue":n[5]||(n[5]=r=>e(i).sesConfig.mail_encryption=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,options:e(b),invalid:e(t).sesConfig.mail_encryption.$error,placeholder:"Select option",onInput:n[6]||(n[6]=r=>e(t).sesConfig.mail_encryption.$touch())},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.from_mail"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.from_mail.$error&&e(t).sesConfig.from_mail.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).sesConfig.from_mail,"onUpdate:modelValue":n[7]||(n[7]=r=>e(i).sesConfig.from_mail=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"from_mail",invalid:e(t).sesConfig.from_mail.$error,onInput:n[8]||(n[8]=r=>e(t).sesConfig.from_mail.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.from_name"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.from_name.$error&&e(t).sesConfig.from_name.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).sesConfig.from_name,"onUpdate:modelValue":n[9]||(n[9]=r=>e(i).sesConfig.from_name=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"name",invalid:e(t).sesConfig.from_name.$error,onInput:n[10]||(n[10]=r=>e(t).sesConfig.from_name.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.ses_key"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.mail_ses_key.$error&&e(t).sesConfig.mail_ses_key.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).sesConfig.mail_ses_key,"onUpdate:modelValue":n[11]||(n[11]=r=>e(i).sesConfig.mail_ses_key=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"mail_ses_key",invalid:e(t).sesConfig.mail_ses_key.$error,onInput:n[12]||(n[12]=r=>e(t).sesConfig.mail_ses_key.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.ses_secret"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.mail_ses_secret.$error&&e(t).mail_ses_secret.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).sesConfig.mail_ses_secret,"onUpdate:modelValue":n[15]||(n[15]=r=>e(i).sesConfig.mail_ses_secret=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:e(d),name:"mail_ses_secret",autocomplete:"off",invalid:e(t).sesConfig.mail_ses_secret.$error,onInput:n[16]||(n[16]=r=>e(t).sesConfig.mail_ses_secret.$touch())},{right:s(()=>[e(m)?(q(),V(_,{key:0,class:"mr-1 text-gray-500 cursor-pointer",name:"EyeOffIcon",onClick:n[13]||(n[13]=r=>T(m)?m.value=!e(m):m=!e(m))})):(q(),V(_,{key:1,class:"mr-1 text-gray-500 cursor-pointer",name:"EyeIcon",onClick:n[14]||(n[14]=r=>T(m)?m.value=!e(m):m=!e(m))}))]),_:1},8,["modelValue","content-loading","type","invalid"])]),_:1},8,["label","content-loading","error"])]),_:1}),F("div",re,[l(p,{disabled:a.isSaving,"content-loading":a.isFetchingInitialData,loading:a.isSaving,variant:"primary",type:"submit"},{left:s(r=>[a.isSaving?E("",!0):(q(),V(_,{key:0,name:"SaveIcon",class:z(r.class)},null,8,["class"]))]),default:s(()=>[S(" "+k(o.$t("general.save")),1)]),_:1},8,["disabled","content-loading","loading"]),J(o.$slots,"default")])],40,le)}}},me=["onSubmit"],de={class:"flex mt-8"},W={props:{configData:{type:Object,require:!0,default:Object},isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1},mailDrivers:{type:Array,require:!0,default:Array}},emits:["submit-data","on-change-driver"],setup(a,{emit:D}){const $=a,i=x(),{t:u}=j(),m=B(()=>({basicMailConfig:{mail_driver:{required:f.withMessage(u("validation.required"),C)},from_mail:{required:f.withMessage(u("validation.required"),C),email:f.withMessage(u("validation.email_incorrect"),A)},from_name:{required:f.withMessage(u("validation.required"),C)}}})),b=P(m,B(()=>i));L(()=>{for(const d in i.basicMailConfig)$.configData.hasOwnProperty(d)&&i.$patch(I=>{I.basicMailConfig[d]=$.configData[d]})});async function w(){return b.value.basicMailConfig.$touch(),b.value.basicMailConfig.$invalid||D("submit-data",i.basicMailConfig),!1}function t(){b.value.basicMailConfig.mail_driver.$touch(),D("on-change-driver",i.basicMailConfig.mail_driver)}return(d,I)=>{const g=c("BaseMultiselect"),o=c("BaseInputGroup"),n=c("BaseInput"),M=c("BaseInputGrid"),v=c("BaseIcon"),y=c("BaseButton");return q(),O("form",{onSubmit:N(w,["prevent"])},[l(M,null,{default:s(()=>[l(o,{label:d.$t("settings.mail.driver"),"content-loading":a.isFetchingInitialData,error:e(b).basicMailConfig.mail_driver.$error&&e(b).basicMailConfig.mail_driver.$errors[0].$message,required:""},{default:s(()=>[l(g,{modelValue:e(i).basicMailConfig.mail_driver,"onUpdate:modelValue":[I[0]||(I[0]=_=>e(i).basicMailConfig.mail_driver=_),t],"content-loading":a.isFetchingInitialData,options:a.mailDrivers,"can-deselect":!1,invalid:e(b).basicMailConfig.mail_driver.$error},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),l(o,{label:d.$t("settings.mail.from_mail"),"content-loading":a.isFetchingInitialData,error:e(b).basicMailConfig.from_mail.$error&&e(b).basicMailConfig.from_mail.$errors[0].$message,required:""},{default:s(()=>[l(n,{modelValue:e(i).basicMailConfig.from_mail,"onUpdate:modelValue":I[1]||(I[1]=_=>e(i).basicMailConfig.from_mail=_),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"from_mail",invalid:e(b).basicMailConfig.from_mail.$error,onInput:I[2]||(I[2]=_=>e(b).basicMailConfig.from_mail.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(o,{label:d.$t("settings.mail.from_name"),"content-loading":a.isFetchingInitialData,error:e(b).basicMailConfig.from_name.$error&&e(b).basicMailConfig.from_name.$errors[0].$message,required:""},{default:s(()=>[l(n,{modelValue:e(i).basicMailConfig.from_name,"onUpdate:modelValue":I[3]||(I[3]=_=>e(i).basicMailConfig.from_name=_),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"name",invalid:e(b).basicMailConfig.from_name.$error,onInput:I[4]||(I[4]=_=>e(b).basicMailConfig.from_name.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"])]),_:1}),F("div",de,[l(y,{"content-loading":a.isFetchingInitialData,disabled:a.isSaving,loading:a.isSaving,variant:"primary",type:"submit"},{left:s(_=>[a.isSaving?E("",!0):(q(),V(v,{key:0,class:z(_.class),name:"SaveIcon"},null,8,["class"]))]),default:s(()=>[S(" "+k(d.$t("general.save")),1)]),_:1},8,["content-loading","disabled","loading"]),J(d.$slots,"default")])],40,me)}}},ue={class:"flex justify-between w-full"},ge=["onSubmit"],fe={class:"p-4 md:p-8"},ce={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},ve={setup(a){let D=G(!1),$=Q({to:"",subject:"",message:""});const i=H(),u=x(),{t:m}=j(),b=B(()=>i.active&&i.componentName==="MailTestModal"),w={formData:{to:{required:f.withMessage(m("validation.required"),C),email:f.withMessage(m("validation.email_incorrect"),A)},subject:{required:f.withMessage(m("validation.required"),C),maxLength:f.withMessage(m("validation.subject_maxlength"),X(100))},message:{required:f.withMessage(m("validation.required"),C),maxLength:f.withMessage(m("validation.message_maxlength"),X(255))}}},t=P(w,{formData:$});function d(){$.id="",$.to="",$.subject="",$.message="",t.value.$reset()}async function I(){if(t.value.formData.$touch(),t.value.$invalid)return!0;D.value=!0,(await u.sendTestMail($)).data&&(g(),D.value=!1)}function g(){i.closeModal(),setTimeout(()=>{i.resetModalData(),d()},300)}return(o,n)=>{const M=c("BaseIcon"),v=c("BaseInput"),y=c("BaseInputGroup"),_=c("BaseTextarea"),U=c("BaseInputGrid"),p=c("BaseButton"),r=c("BaseModal");return q(),V(r,{show:e(b),onClose:g},{header:s(()=>[F("div",ue,[S(k(e(i).title)+" ",1),l(M,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:g})])]),default:s(()=>[F("form",{action:"",onSubmit:N(I,["prevent"])},[F("div",fe,[l(U,{layout:"one-column"},{default:s(()=>[l(y,{label:o.$t("general.to"),error:e(t).formData.to.$error&&e(t).formData.to.$errors[0].$message,variant:"horizontal",required:""},{default:s(()=>[l(v,{ref:(h,Y)=>{Y.to=h},modelValue:e($).to,"onUpdate:modelValue":n[0]||(n[0]=h=>e($).to=h),type:"text",invalid:e(t).formData.to.$error,onInput:n[1]||(n[1]=h=>e(t).formData.to.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),l(y,{label:o.$t("general.subject"),error:e(t).formData.subject.$error&&e(t).formData.subject.$errors[0].$message,variant:"horizontal",required:""},{default:s(()=>[l(v,{modelValue:e($).subject,"onUpdate:modelValue":n[2]||(n[2]=h=>e($).subject=h),type:"text",invalid:e(t).formData.subject.$error,onInput:n[3]||(n[3]=h=>e(t).formData.subject.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),l(y,{label:o.$t("general.message"),error:e(t).formData.message.$error&&e(t).formData.message.$errors[0].$message,variant:"horizontal",required:""},{default:s(()=>[l(_,{modelValue:e($).message,"onUpdate:modelValue":n[4]||(n[4]=h=>e($).message=h),rows:"4",cols:"50",invalid:e(t).formData.message.$error,onInput:n[5]||(n[5]=h=>e(t).formData.message.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1})]),F("div",ce,[l(p,{variant:"primary-outline",type:"button",class:"mr-3",onClick:n[6]||(n[6]=h=>g())},{default:s(()=>[S(k(o.$t("general.cancel")),1)]),_:1}),l(p,{loading:e(D),variant:"primary",type:"submit"},{left:s(h=>[e(D)?E("",!0):(q(),V(M,{key:0,name:"PaperAirplaneIcon",class:z(h.class)},null,8,["class"]))]),default:s(()=>[S(" "+k(o.$t("general.send")),1)]),_:1},8,["loading"])])],40,ge)]),_:1},8,["show"])}}},$e={key:0,class:"mt-14"},ye={setup(a){let D=G(!1),$=G(!1);const i=x(),u=H(),{t:m}=j();w();function b(g){i.mail_driver=g,i.mailConfigData.mail_driver=g}async function w(){$.value=!0,Promise.all([await i.fetchMailDrivers(),await i.fetchMailConfig()]).then(([g])=>{$.value=!1})}const t=B(()=>i.mail_driver=="smtp"?K:i.mail_driver=="mailgun"?oe:i.mail_driver=="sendmail"?W:i.mail_driver=="ses"?se:i.mail_driver=="mail"?W:K);async function d(g){try{return D.value=!0,await i.updateMailConfig(g),D.value=!1,!0}catch(o){console.error(o)}}function I(){u.openModal({title:m("general.test_mail_conf"),componentName:"MailTestModal",size:"sm"})}return(g,o)=>{const n=c("BaseButton"),M=c("BaseSettingCard");return q(),O(ee,null,[l(ve),l(M,{title:g.$t("settings.mail.mail_config"),description:g.$t("settings.mail.mail_config_desc")},{default:s(()=>[e(i)&&e(i).mailConfigData?(q(),O("div",$e,[(q(),V(Z(e(t)),{"config-data":e(i).mailConfigData,"is-saving":e(D),"mail-drivers":e(i).mail_drivers,"is-fetching-initial-data":e($),onOnChangeDriver:o[0]||(o[0]=v=>b(v)),onSubmitData:d},{default:s(()=>[l(n,{variant:"primary-outline",type:"button",class:"ml-2","content-loading":e($),onClick:I},{default:s(()=>[S(k(g.$t("general.test_mail_conf")),1)]),_:1},8,["content-loading"])]),_:1},8,["config-data","is-saving","mail-drivers","is-fetching-initial-data"]))])):E("",!0)]),_:1},8,["title","description"])],64)}}};export{ye as default}; +import{J as j,B as G,a0 as Q,k as B,L as f,M as C,aT as R,Q as A,T as P,D as L,r as c,o as q,e as O,f as l,w as s,u as e,l as V,x as T,h as F,m as z,j as E,i as S,t as k,g as J,U as N,S as X,aj as Z,F as ee}from"./vendor.01d0adc5.js";import{u as x}from"./mail-driver.69202299.js";import{c as H}from"./main.24f7a84b.js";const ie=["onSubmit"],ne={class:"flex my-10"},K={props:{configData:{type:Object,require:!0,default:Object},isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1},mailDrivers:{type:Array,require:!0,default:Array}},emits:["submit-data","on-change-driver"],setup(a,{emit:D}){const $=a,i=x(),{t:u}=j();let m=G(!1);const b=Q(["tls","ssl","starttls"]),w=B(()=>m.value?"text":"password"),t=B(()=>({smtpConfig:{mail_driver:{required:f.withMessage(u("validation.required"),C)},mail_host:{required:f.withMessage(u("validation.required"),C)},mail_port:{required:f.withMessage(u("validation.required"),C),numeric:f.withMessage(u("validation.numbers_only"),R)},mail_encryption:{required:f.withMessage(u("validation.required"),C)},from_mail:{required:f.withMessage(u("validation.required"),C),email:f.withMessage(u("validation.email_incorrect"),A)},from_name:{required:f.withMessage(u("validation.required"),C)}}})),d=P(t,B(()=>i));L(()=>{for(const o in i.smtpConfig)$.configData.hasOwnProperty(o)&&(i.smtpConfig[o]=$.configData[o])});async function I(){return d.value.smtpConfig.$touch(),d.value.smtpConfig.$invalid||D("submit-data",i.smtpConfig),!1}function g(){d.value.smtpConfig.mail_driver.$touch(),D("on-change-driver",i.smtpConfig.mail_driver)}return(o,n)=>{const M=c("BaseMultiselect"),v=c("BaseInputGroup"),y=c("BaseInput"),_=c("BaseIcon"),U=c("BaseInputGrid"),p=c("BaseButton");return q(),O("form",{onSubmit:N(I,["prevent"])},[l(U,null,{default:s(()=>[l(v,{label:o.$t("settings.mail.driver"),"content-loading":a.isFetchingInitialData,error:e(d).smtpConfig.mail_driver.$error&&e(d).smtpConfig.mail_driver.$errors[0].$message,required:""},{default:s(()=>[l(M,{modelValue:e(i).smtpConfig.mail_driver,"onUpdate:modelValue":[n[0]||(n[0]=r=>e(i).smtpConfig.mail_driver=r),g],"content-loading":a.isFetchingInitialData,options:a.mailDrivers,"can-deselect":!1,invalid:e(d).smtpConfig.mail_driver.$error},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.host"),"content-loading":a.isFetchingInitialData,error:e(d).smtpConfig.mail_host.$error&&e(d).smtpConfig.mail_host.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).smtpConfig.mail_host,"onUpdate:modelValue":n[1]||(n[1]=r=>e(i).smtpConfig.mail_host=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"mail_host",invalid:e(d).smtpConfig.mail_host.$error,onInput:n[2]||(n[2]=r=>e(d).smtpConfig.mail_host.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{"content-loading":a.isFetchingInitialData,label:o.$t("settings.mail.username")},{default:s(()=>[l(y,{modelValue:e(i).smtpConfig.mail_username,"onUpdate:modelValue":n[3]||(n[3]=r=>e(i).smtpConfig.mail_username=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"db_name"},null,8,["modelValue","content-loading"])]),_:1},8,["content-loading","label"]),l(v,{"content-loading":a.isFetchingInitialData,label:o.$t("settings.mail.password")},{default:s(()=>[l(y,{modelValue:e(i).smtpConfig.mail_password,"onUpdate:modelValue":n[6]||(n[6]=r=>e(i).smtpConfig.mail_password=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:e(w),name:"password"},{right:s(()=>[e(m)?(q(),V(_,{key:0,class:"mr-1 text-gray-500 cursor-pointer",name:"EyeOffIcon",onClick:n[4]||(n[4]=r=>T(m)?m.value=!e(m):m=!e(m))})):(q(),V(_,{key:1,class:"mr-1 text-gray-500 cursor-pointer",name:"EyeIcon",onClick:n[5]||(n[5]=r=>T(m)?m.value=!e(m):m=!e(m))}))]),_:1},8,["modelValue","content-loading","type"])]),_:1},8,["content-loading","label"]),l(v,{label:o.$t("settings.mail.port"),"content-loading":a.isFetchingInitialData,error:e(d).smtpConfig.mail_port.$error&&e(d).smtpConfig.mail_port.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).smtpConfig.mail_port,"onUpdate:modelValue":n[7]||(n[7]=r=>e(i).smtpConfig.mail_port=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"mail_port",invalid:e(d).smtpConfig.mail_port.$error,onInput:n[8]||(n[8]=r=>e(d).smtpConfig.mail_port.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.encryption"),"content-loading":a.isFetchingInitialData,error:e(d).smtpConfig.mail_encryption.$error&&e(d).smtpConfig.mail_encryption.$errors[0].$message,required:""},{default:s(()=>[l(M,{modelValue:e(i).smtpConfig.mail_encryption,"onUpdate:modelValue":n[9]||(n[9]=r=>e(i).smtpConfig.mail_encryption=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,options:e(b),searchable:!0,"show-labels":!1,placeholder:"Select option",invalid:e(d).smtpConfig.mail_encryption.$error,onInput:n[10]||(n[10]=r=>e(d).smtpConfig.mail_encryption.$touch())},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.from_mail"),"content-loading":a.isFetchingInitialData,error:e(d).smtpConfig.from_mail.$error&&e(d).smtpConfig.from_mail.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).smtpConfig.from_mail,"onUpdate:modelValue":n[11]||(n[11]=r=>e(i).smtpConfig.from_mail=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"from_mail",invalid:e(d).smtpConfig.from_mail.$error,onInput:n[12]||(n[12]=r=>e(d).smtpConfig.from_mail.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.from_name"),"content-loading":a.isFetchingInitialData,error:e(d).smtpConfig.from_name.$error&&e(d).smtpConfig.from_name.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).smtpConfig.from_name,"onUpdate:modelValue":n[13]||(n[13]=r=>e(i).smtpConfig.from_name=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"from_name",invalid:e(d).smtpConfig.from_name.$error,onInput:n[14]||(n[14]=r=>e(d).smtpConfig.from_name.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"])]),_:1}),F("div",ne,[l(p,{disabled:a.isSaving,"content-loading":a.isFetchingInitialData,loading:a.isSaving,type:"submit",variant:"primary"},{left:s(r=>[a.isSaving?E("",!0):(q(),V(_,{key:0,name:"SaveIcon",class:z(r.class)},null,8,["class"]))]),default:s(()=>[S(" "+k(o.$t("general.save")),1)]),_:1},8,["disabled","content-loading","loading"]),J(o.$slots,"default")])],40,ie)}}},te=["onSubmit"],ae={class:"flex my-10"},oe={props:{configData:{type:Object,require:!0,default:Object},isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1},mailDrivers:{type:Array,require:!0,default:Array}},emits:["submit-data","on-change-driver"],setup(a,{emit:D}){const $=a,i=x(),{t:u}=j();let m=G(!1);const b=B(()=>m.value?"text":"password"),w=B(()=>({mailgunConfig:{mail_driver:{required:f.withMessage(u("validation.required"),C)},mail_mailgun_domain:{required:f.withMessage(u("validation.required"),C)},mail_mailgun_endpoint:{required:f.withMessage(u("validation.required"),C)},mail_mailgun_secret:{required:f.withMessage(u("validation.required"),C)},from_mail:{required:f.withMessage(u("validation.required"),C),email:A},from_name:{required:f.withMessage(u("validation.required"),C)}}})),t=P(w,B(()=>i));L(()=>{for(const g in i.mailgunConfig)$.configData.hasOwnProperty(g)&&(i.mailgunConfig[g]=$.configData[g])});async function d(){return t.value.mailgunConfig.$touch(),t.value.mailgunConfig.$invalid||D("submit-data",i.mailgunConfig),!1}function I(){t.value.mailgunConfig.mail_driver.$touch(),D("on-change-driver",i.mailgunConfig.mail_driver)}return(g,o)=>{const n=c("BaseMultiselect"),M=c("BaseInputGroup"),v=c("BaseInput"),y=c("BaseIcon"),_=c("BaseInputGrid"),U=c("BaseButton");return q(),O("form",{onSubmit:N(d,["prevent"])},[l(_,null,{default:s(()=>[l(M,{label:g.$t("settings.mail.driver"),"content-loading":a.isFetchingInitialData,error:e(t).mailgunConfig.mail_driver.$error&&e(t).mailgunConfig.mail_driver.$errors[0].$message,required:""},{default:s(()=>[l(n,{modelValue:e(i).mailgunConfig.mail_driver,"onUpdate:modelValue":[o[0]||(o[0]=p=>e(i).mailgunConfig.mail_driver=p),I],"content-loading":a.isFetchingInitialData,options:a.mailDrivers,"can-deselect":!1,invalid:e(t).mailgunConfig.mail_driver.$error},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),l(M,{label:g.$t("settings.mail.mailgun_domain"),"content-loading":a.isFetchingInitialData,error:e(t).mailgunConfig.mail_mailgun_domain.$error&&e(t).mailgunConfig.mail_mailgun_domain.$errors[0].$message,required:""},{default:s(()=>[l(v,{modelValue:e(i).mailgunConfig.mail_mailgun_domain,"onUpdate:modelValue":o[1]||(o[1]=p=>e(i).mailgunConfig.mail_mailgun_domain=p),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"mailgun_domain",invalid:e(t).mailgunConfig.mail_mailgun_domain.$error,onInput:o[2]||(o[2]=p=>e(t).mailgunConfig.mail_mailgun_domain.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(M,{label:g.$t("settings.mail.mailgun_secret"),"content-loading":a.isFetchingInitialData,error:e(t).mailgunConfig.mail_mailgun_secret.$error&&e(t).mailgunConfig.mail_mailgun_secret.$errors[0].$message,required:""},{default:s(()=>[l(v,{modelValue:e(i).mailgunConfig.mail_mailgun_secret,"onUpdate:modelValue":o[5]||(o[5]=p=>e(i).mailgunConfig.mail_mailgun_secret=p),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:e(b),name:"mailgun_secret",autocomplete:"off",invalid:e(t).mailgunConfig.mail_mailgun_secret.$error,onInput:o[6]||(o[6]=p=>e(t).mailgunConfig.mail_mailgun_secret.$touch())},{right:s(()=>[e(m)?(q(),V(y,{key:0,class:"mr-1 text-gray-500 cursor-pointer",name:"EyeOffIcon",onClick:o[3]||(o[3]=p=>T(m)?m.value=!e(m):m=!e(m))})):(q(),V(y,{key:1,class:"mr-1 text-gray-500 cursor-pointer",name:"EyeIcon",onClick:o[4]||(o[4]=p=>T(m)?m.value=!e(m):m=!e(m))}))]),_:1},8,["modelValue","content-loading","type","invalid"])]),_:1},8,["label","content-loading","error"]),l(M,{label:g.$t("settings.mail.mailgun_endpoint"),"content-loading":a.isFetchingInitialData,error:e(t).mailgunConfig.mail_mailgun_endpoint.$error&&e(t).mailgunConfig.mail_mailgun_endpoint.$errors[0].$message,required:""},{default:s(()=>[l(v,{modelValue:e(i).mailgunConfig.mail_mailgun_endpoint,"onUpdate:modelValue":o[7]||(o[7]=p=>e(i).mailgunConfig.mail_mailgun_endpoint=p),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"mailgun_endpoint",invalid:e(t).mailgunConfig.mail_mailgun_endpoint.$error,onInput:o[8]||(o[8]=p=>e(t).mailgunConfig.mail_mailgun_endpoint.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(M,{label:g.$t("settings.mail.from_mail"),"content-loading":a.isFetchingInitialData,error:e(t).mailgunConfig.from_mail.$error&&e(t).mailgunConfig.from_mail.$errors[0].$message,required:""},{default:s(()=>[l(v,{modelValue:e(i).mailgunConfig.from_mail,"onUpdate:modelValue":o[9]||(o[9]=p=>e(i).mailgunConfig.from_mail=p),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"from_mail",invalid:e(t).mailgunConfig.from_mail.$error,onInput:o[10]||(o[10]=p=>e(t).mailgunConfig.from_mail.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(M,{label:g.$t("settings.mail.from_name"),"content-loading":a.isFetchingInitialData,error:e(t).mailgunConfig.from_name.$error&&e(t).mailgunConfig.from_name.$errors[0].$message,required:""},{default:s(()=>[l(v,{modelValue:e(i).mailgunConfig.from_name,"onUpdate:modelValue":o[11]||(o[11]=p=>e(i).mailgunConfig.from_name=p),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"from_name",invalid:e(t).mailgunConfig.from_name.$error,onInput:o[12]||(o[12]=p=>e(t).mailgunConfig.from_name.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"])]),_:1}),F("div",ae,[l(U,{disabled:a.isSaving,"content-loading":a.isFetchingInitialData,loading:a.isSaving,variant:"primary",type:"submit"},{left:s(p=>[a.isSaving?E("",!0):(q(),V(y,{key:0,name:"SaveIcon",class:z(p.class)},null,8,["class"]))]),default:s(()=>[S(" "+k(g.$t("general.save")),1)]),_:1},8,["disabled","content-loading","loading"]),J(g.$slots,"default")])],40,te)}}},le=["onSubmit"],re={class:"flex my-10"},se={props:{configData:{type:Object,require:!0,default:Object},isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1},mailDrivers:{type:Array,require:!0,default:Array}},emits:["submit-data","on-change-driver"],setup(a,{emit:D}){const $=a,i=x(),{t:u}=j();let m=G(!1);const b=Q(["tls","ssl","starttls"]),w=B(()=>({sesConfig:{mail_driver:{required:f.withMessage(u("validation.required"),C)},mail_host:{required:f.withMessage(u("validation.required"),C)},mail_port:{required:f.withMessage(u("validation.required"),C),numeric:R},mail_ses_key:{required:f.withMessage(u("validation.required"),C)},mail_ses_secret:{required:f.withMessage(u("validation.required"),C)},mail_encryption:{required:f.withMessage(u("validation.required"),C)},from_mail:{required:f.withMessage(u("validation.required"),C),email:f.withMessage(u("validation.email_incorrect"),A)},from_name:{required:f.withMessage(u("validation.required"),C)}}})),t=P(w,B(()=>i)),d=B(()=>m.value?"text":"password");L(()=>{for(const o in i.sesConfig)$.configData.hasOwnProperty(o)&&(i.sesConfig[o]=$.configData[o])});async function I(){return t.value.sesConfig.$touch(),t.value.sesConfig.$invalid||D("submit-data",i.sesConfig),!1}function g(){t.value.sesConfig.mail_driver.$touch(),D("on-change-driver",i.sesConfig.mail_driver)}return(o,n)=>{const M=c("BaseMultiselect"),v=c("BaseInputGroup"),y=c("BaseInput"),_=c("BaseIcon"),U=c("BaseInputGrid"),p=c("BaseButton");return q(),O("form",{onSubmit:N(I,["prevent"])},[l(U,null,{default:s(()=>[l(v,{label:o.$t("settings.mail.driver"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.mail_driver.$error&&e(t).sesConfig.mail_driver.$errors[0].$message,required:""},{default:s(()=>[l(M,{modelValue:e(i).sesConfig.mail_driver,"onUpdate:modelValue":[n[0]||(n[0]=r=>e(i).sesConfig.mail_driver=r),g],"content-loading":a.isFetchingInitialData,options:a.mailDrivers,"can-deselect":!1,invalid:e(t).sesConfig.mail_driver.$error},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.host"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.mail_host.$error&&e(t).sesConfig.mail_host.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).sesConfig.mail_host,"onUpdate:modelValue":n[1]||(n[1]=r=>e(i).sesConfig.mail_host=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"mail_host",invalid:e(t).sesConfig.mail_host.$error,onInput:n[2]||(n[2]=r=>e(t).sesConfig.mail_host.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.port"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.mail_port.$error&&e(t).sesConfig.mail_port.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).sesConfig.mail_port,"onUpdate:modelValue":n[3]||(n[3]=r=>e(i).sesConfig.mail_port=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"mail_port",invalid:e(t).sesConfig.mail_port.$error,onInput:n[4]||(n[4]=r=>e(t).sesConfig.mail_port.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.encryption"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.mail_encryption.$error&&e(t).sesConfig.mail_encryption.$errors[0].$message,required:""},{default:s(()=>[l(M,{modelValue:e(i).sesConfig.mail_encryption,"onUpdate:modelValue":n[5]||(n[5]=r=>e(i).sesConfig.mail_encryption=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,options:e(b),invalid:e(t).sesConfig.mail_encryption.$error,placeholder:"Select option",onInput:n[6]||(n[6]=r=>e(t).sesConfig.mail_encryption.$touch())},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.from_mail"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.from_mail.$error&&e(t).sesConfig.from_mail.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).sesConfig.from_mail,"onUpdate:modelValue":n[7]||(n[7]=r=>e(i).sesConfig.from_mail=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"from_mail",invalid:e(t).sesConfig.from_mail.$error,onInput:n[8]||(n[8]=r=>e(t).sesConfig.from_mail.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.from_name"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.from_name.$error&&e(t).sesConfig.from_name.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).sesConfig.from_name,"onUpdate:modelValue":n[9]||(n[9]=r=>e(i).sesConfig.from_name=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"name",invalid:e(t).sesConfig.from_name.$error,onInput:n[10]||(n[10]=r=>e(t).sesConfig.from_name.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.ses_key"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.mail_ses_key.$error&&e(t).sesConfig.mail_ses_key.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).sesConfig.mail_ses_key,"onUpdate:modelValue":n[11]||(n[11]=r=>e(i).sesConfig.mail_ses_key=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"mail_ses_key",invalid:e(t).sesConfig.mail_ses_key.$error,onInput:n[12]||(n[12]=r=>e(t).sesConfig.mail_ses_key.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(v,{label:o.$t("settings.mail.ses_secret"),"content-loading":a.isFetchingInitialData,error:e(t).sesConfig.mail_ses_secret.$error&&e(t).mail_ses_secret.$errors[0].$message,required:""},{default:s(()=>[l(y,{modelValue:e(i).sesConfig.mail_ses_secret,"onUpdate:modelValue":n[15]||(n[15]=r=>e(i).sesConfig.mail_ses_secret=r),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:e(d),name:"mail_ses_secret",autocomplete:"off",invalid:e(t).sesConfig.mail_ses_secret.$error,onInput:n[16]||(n[16]=r=>e(t).sesConfig.mail_ses_secret.$touch())},{right:s(()=>[e(m)?(q(),V(_,{key:0,class:"mr-1 text-gray-500 cursor-pointer",name:"EyeOffIcon",onClick:n[13]||(n[13]=r=>T(m)?m.value=!e(m):m=!e(m))})):(q(),V(_,{key:1,class:"mr-1 text-gray-500 cursor-pointer",name:"EyeIcon",onClick:n[14]||(n[14]=r=>T(m)?m.value=!e(m):m=!e(m))}))]),_:1},8,["modelValue","content-loading","type","invalid"])]),_:1},8,["label","content-loading","error"])]),_:1}),F("div",re,[l(p,{disabled:a.isSaving,"content-loading":a.isFetchingInitialData,loading:a.isSaving,variant:"primary",type:"submit"},{left:s(r=>[a.isSaving?E("",!0):(q(),V(_,{key:0,name:"SaveIcon",class:z(r.class)},null,8,["class"]))]),default:s(()=>[S(" "+k(o.$t("general.save")),1)]),_:1},8,["disabled","content-loading","loading"]),J(o.$slots,"default")])],40,le)}}},me=["onSubmit"],de={class:"flex mt-8"},W={props:{configData:{type:Object,require:!0,default:Object},isSaving:{type:Boolean,require:!0,default:!1},isFetchingInitialData:{type:Boolean,require:!0,default:!1},mailDrivers:{type:Array,require:!0,default:Array}},emits:["submit-data","on-change-driver"],setup(a,{emit:D}){const $=a,i=x(),{t:u}=j(),m=B(()=>({basicMailConfig:{mail_driver:{required:f.withMessage(u("validation.required"),C)},from_mail:{required:f.withMessage(u("validation.required"),C),email:f.withMessage(u("validation.email_incorrect"),A)},from_name:{required:f.withMessage(u("validation.required"),C)}}})),b=P(m,B(()=>i));L(()=>{for(const d in i.basicMailConfig)$.configData.hasOwnProperty(d)&&i.$patch(I=>{I.basicMailConfig[d]=$.configData[d]})});async function w(){return b.value.basicMailConfig.$touch(),b.value.basicMailConfig.$invalid||D("submit-data",i.basicMailConfig),!1}function t(){b.value.basicMailConfig.mail_driver.$touch(),D("on-change-driver",i.basicMailConfig.mail_driver)}return(d,I)=>{const g=c("BaseMultiselect"),o=c("BaseInputGroup"),n=c("BaseInput"),M=c("BaseInputGrid"),v=c("BaseIcon"),y=c("BaseButton");return q(),O("form",{onSubmit:N(w,["prevent"])},[l(M,null,{default:s(()=>[l(o,{label:d.$t("settings.mail.driver"),"content-loading":a.isFetchingInitialData,error:e(b).basicMailConfig.mail_driver.$error&&e(b).basicMailConfig.mail_driver.$errors[0].$message,required:""},{default:s(()=>[l(g,{modelValue:e(i).basicMailConfig.mail_driver,"onUpdate:modelValue":[I[0]||(I[0]=_=>e(i).basicMailConfig.mail_driver=_),t],"content-loading":a.isFetchingInitialData,options:a.mailDrivers,"can-deselect":!1,invalid:e(b).basicMailConfig.mail_driver.$error},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),l(o,{label:d.$t("settings.mail.from_mail"),"content-loading":a.isFetchingInitialData,error:e(b).basicMailConfig.from_mail.$error&&e(b).basicMailConfig.from_mail.$errors[0].$message,required:""},{default:s(()=>[l(n,{modelValue:e(i).basicMailConfig.from_mail,"onUpdate:modelValue":I[1]||(I[1]=_=>e(i).basicMailConfig.from_mail=_),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"from_mail",invalid:e(b).basicMailConfig.from_mail.$error,onInput:I[2]||(I[2]=_=>e(b).basicMailConfig.from_mail.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),l(o,{label:d.$t("settings.mail.from_name"),"content-loading":a.isFetchingInitialData,error:e(b).basicMailConfig.from_name.$error&&e(b).basicMailConfig.from_name.$errors[0].$message,required:""},{default:s(()=>[l(n,{modelValue:e(i).basicMailConfig.from_name,"onUpdate:modelValue":I[3]||(I[3]=_=>e(i).basicMailConfig.from_name=_),modelModifiers:{trim:!0},"content-loading":a.isFetchingInitialData,type:"text",name:"name",invalid:e(b).basicMailConfig.from_name.$error,onInput:I[4]||(I[4]=_=>e(b).basicMailConfig.from_name.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"])]),_:1}),F("div",de,[l(y,{"content-loading":a.isFetchingInitialData,disabled:a.isSaving,loading:a.isSaving,variant:"primary",type:"submit"},{left:s(_=>[a.isSaving?E("",!0):(q(),V(v,{key:0,class:z(_.class),name:"SaveIcon"},null,8,["class"]))]),default:s(()=>[S(" "+k(d.$t("general.save")),1)]),_:1},8,["content-loading","disabled","loading"]),J(d.$slots,"default")])],40,me)}}},ue={class:"flex justify-between w-full"},ge=["onSubmit"],fe={class:"p-4 md:p-8"},ce={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},ve={setup(a){let D=G(!1),$=Q({to:"",subject:"",message:""});const i=H(),u=x(),{t:m}=j(),b=B(()=>i.active&&i.componentName==="MailTestModal"),w={formData:{to:{required:f.withMessage(m("validation.required"),C),email:f.withMessage(m("validation.email_incorrect"),A)},subject:{required:f.withMessage(m("validation.required"),C),maxLength:f.withMessage(m("validation.subject_maxlength"),X(100))},message:{required:f.withMessage(m("validation.required"),C),maxLength:f.withMessage(m("validation.message_maxlength"),X(255))}}},t=P(w,{formData:$});function d(){$.id="",$.to="",$.subject="",$.message="",t.value.$reset()}async function I(){if(t.value.formData.$touch(),t.value.$invalid)return!0;D.value=!0,(await u.sendTestMail($)).data&&(g(),D.value=!1)}function g(){i.closeModal(),setTimeout(()=>{i.resetModalData(),d()},300)}return(o,n)=>{const M=c("BaseIcon"),v=c("BaseInput"),y=c("BaseInputGroup"),_=c("BaseTextarea"),U=c("BaseInputGrid"),p=c("BaseButton"),r=c("BaseModal");return q(),V(r,{show:e(b),onClose:g},{header:s(()=>[F("div",ue,[S(k(e(i).title)+" ",1),l(M,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:g})])]),default:s(()=>[F("form",{action:"",onSubmit:N(I,["prevent"])},[F("div",fe,[l(U,{layout:"one-column"},{default:s(()=>[l(y,{label:o.$t("general.to"),error:e(t).formData.to.$error&&e(t).formData.to.$errors[0].$message,variant:"horizontal",required:""},{default:s(()=>[l(v,{ref:(h,Y)=>{Y.to=h},modelValue:e($).to,"onUpdate:modelValue":n[0]||(n[0]=h=>e($).to=h),type:"text",invalid:e(t).formData.to.$error,onInput:n[1]||(n[1]=h=>e(t).formData.to.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),l(y,{label:o.$t("general.subject"),error:e(t).formData.subject.$error&&e(t).formData.subject.$errors[0].$message,variant:"horizontal",required:""},{default:s(()=>[l(v,{modelValue:e($).subject,"onUpdate:modelValue":n[2]||(n[2]=h=>e($).subject=h),type:"text",invalid:e(t).formData.subject.$error,onInput:n[3]||(n[3]=h=>e(t).formData.subject.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),l(y,{label:o.$t("general.message"),error:e(t).formData.message.$error&&e(t).formData.message.$errors[0].$message,variant:"horizontal",required:""},{default:s(()=>[l(_,{modelValue:e($).message,"onUpdate:modelValue":n[4]||(n[4]=h=>e($).message=h),rows:"4",cols:"50",invalid:e(t).formData.message.$error,onInput:n[5]||(n[5]=h=>e(t).formData.message.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1})]),F("div",ce,[l(p,{variant:"primary-outline",type:"button",class:"mr-3",onClick:n[6]||(n[6]=h=>g())},{default:s(()=>[S(k(o.$t("general.cancel")),1)]),_:1}),l(p,{loading:e(D),variant:"primary",type:"submit"},{left:s(h=>[e(D)?E("",!0):(q(),V(M,{key:0,name:"PaperAirplaneIcon",class:z(h.class)},null,8,["class"]))]),default:s(()=>[S(" "+k(o.$t("general.send")),1)]),_:1},8,["loading"])])],40,ge)]),_:1},8,["show"])}}},$e={key:0,class:"mt-14"},ye={setup(a){let D=G(!1),$=G(!1);const i=x(),u=H(),{t:m}=j();w();function b(g){i.mail_driver=g,i.mailConfigData.mail_driver=g}async function w(){$.value=!0,Promise.all([await i.fetchMailDrivers(),await i.fetchMailConfig()]).then(([g])=>{$.value=!1})}const t=B(()=>i.mail_driver=="smtp"?K:i.mail_driver=="mailgun"?oe:i.mail_driver=="sendmail"?W:i.mail_driver=="ses"?se:i.mail_driver=="mail"?W:K);async function d(g){try{return D.value=!0,await i.updateMailConfig(g),D.value=!1,!0}catch(o){console.error(o)}}function I(){u.openModal({title:m("general.test_mail_conf"),componentName:"MailTestModal",size:"sm"})}return(g,o)=>{const n=c("BaseButton"),M=c("BaseSettingCard");return q(),O(ee,null,[l(ve),l(M,{title:g.$t("settings.mail.mail_config"),description:g.$t("settings.mail.mail_config_desc")},{default:s(()=>[e(i)&&e(i).mailConfigData?(q(),O("div",$e,[(q(),V(Z(e(t)),{"config-data":e(i).mailConfigData,"is-saving":e(D),"mail-drivers":e(i).mail_drivers,"is-fetching-initial-data":e($),onOnChangeDriver:o[0]||(o[0]=v=>b(v)),onSubmitData:d},{default:s(()=>[l(n,{variant:"primary-outline",type:"button",class:"ml-2","content-loading":e($),onClick:I},{default:s(()=>[S(k(g.$t("general.test_mail_conf")),1)]),_:1},8,["content-loading"])]),_:1},8,["config-data","is-saving","mail-drivers","is-fetching-initial-data"]))])):E("",!0)]),_:1},8,["title","description"])],64)}}};export{ye as default}; diff --git a/public/build/assets/NoteModal.f6d01f84.js b/public/build/assets/NoteModal.5bd3cf32.js similarity index 97% rename from public/build/assets/NoteModal.f6d01f84.js rename to public/build/assets/NoteModal.5bd3cf32.js index baa1e32fb..70e266853 100644 --- a/public/build/assets/NoteModal.f6d01f84.js +++ b/public/build/assets/NoteModal.5bd3cf32.js @@ -1 +1 @@ -var O=Object.defineProperty;var E=Object.getOwnPropertySymbols;var R=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var x=(d,s,a)=>s in d?O(d,s,{enumerable:!0,configurable:!0,writable:!0,value:a}):d[s]=a,z=(d,s)=>{for(var a in s||(s={}))R.call(s,a)&&x(d,a,s[a]);if(E)for(var a of E(s))X.call(s,a)&&x(d,a,s[a]);return d};import{a as g,d as H,G as K,J as Q,B as k,a0 as W,k as S,L as w,M as b,N as Y,T as Z,C as ee,D as te,r as f,o as ae,l as oe,w as p,h as I,i as C,t as M,u as o,f as c,m as ne,U as se}from"./vendor.01d0adc5.js";import{h as $,c as re,u as ie,i as ue,k as le}from"./main.75722495.js";import{u as ce}from"./payment.5c57bec3.js";const de=(d=!1)=>(d?window.pinia.defineStore:H)({id:"notes",state:()=>({notes:[],currentNote:{id:null,type:"",name:"",notes:""}}),getters:{isEdit:a=>!!a.currentNote.id},actions:{resetCurrentNote(){this.currentNote={type:"",name:"",notes:""}},fetchNotes(a){return new Promise((e,l)=>{g.get("/api/v1/notes",{params:a}).then(t=>{this.notes=t.data.data,e(t)}).catch(t=>{$(t),l(t)})})},fetchNote(a){return new Promise((e,l)=>{g.get(`/api/v1/notes/${a}`).then(t=>{this.currentNote=t.data.data,e(t)}).catch(t=>{$(t),l(t)})})},addNote(a){return new Promise((e,l)=>{g.post("/api/v1/notes",a).then(t=>{this.notes.push(t.data),e(t)}).catch(t=>{$(t),l(t)})})},updateNote(a){return new Promise((e,l)=>{g.put(`/api/v1/notes/${a.id}`,a).then(t=>{if(t.data){let y=this.notes.findIndex(u=>u.id===t.data.data.id);this.notes[y]=a.notes}e(t)}).catch(t=>{$(t),l(t)})})},deleteNote(a){return new Promise((e,l)=>{g.delete(`/api/v1/notes/${a}`).then(t=>{let y=this.notes.findIndex(u=>u.id===a);this.notes.splice(y,1),e(t)}).catch(t=>{$(t),l(t)})})}}})();const me={class:"flex justify-between w-full"},pe=["onSubmit"],fe={class:"px-8 py-8 sm:p-6"},ve={class:"z-0 flex justify-end px-4 py-4 border-t border-solid border-gray-light"},ge={setup(d){const s=re(),a=ie(),e=de(),l=ue(),t=ce(),y=le(),u=K(),{t:N}=Q();let v=k(!1);const D=W(["Invoice","Estimate","Payment"]);let h=k(["customer","customerCustom"]);const j=S(()=>s.active&&s.componentName==="NoteModal"),G=S(()=>({currentNote:{name:{required:w.withMessage(N("validation.required"),b),minLength:w.withMessage(N("validation.name_min_length",{count:3}),Y(3))},notes:{required:w.withMessage(N("validation.required"),b)},type:{required:w.withMessage(N("validation.required"),b)}}})),r=Z(G,S(()=>e));ee(()=>e.currentNote.type,n=>{V()}),te(()=>{u.name==="estimates.create"?e.currentNote.type="Estimate":u.name==="invoices.create"?e.currentNote.type="Invoice":e.currentNote.type="Payment"});function V(){h.value=["customer","customerCustom"],e.currentNote.type=="Invoice"&&h.value.push("invoice","invoiceCustom"),e.currentNote.type=="Estimate"&&h.value.push("estimate","estimateCustom"),e.currentNote.type=="Payment"&&h.value.push("payment","paymentCustom")}async function U(){if(r.value.currentNote.$touch(),r.value.currentNote.$invalid)return!0;if(v.value=!0,e.isEdit){let n=z({id:e.currentNote.id},e.currentNote);await e.updateNote(n).then(i=>{v.value=!1,i.data&&(a.showNotification({type:"success",message:N("settings.customization.notes.note_updated")}),s.refreshData&&s.refreshData(),_())}).catch(i=>{v.value=!1})}else await e.addNote(e.currentNote).then(n=>{v.value=!1,n.data&&(a.showNotification({type:"success",message:N("settings.customization.notes.note_added")}),(u.name==="invoices.create"&&n.data.data.type==="Invoice"||u.name==="invoices.edit"&&n.data.data.type==="Invoice")&&l.selectNote(n.data.data),(u.name==="estimates.create"&&n.data.data.type==="Estimate"||u.name==="estimates.edit"&&n.data.data.type==="Estimate")&&y.selectNote(n.data.data),(u.name==="payments.create"&&n.data.data.type==="Payment"||u.name==="payments.edit"&&n.data.data.type==="Payment")&&t.selectNote(n.data.data)),s.refreshData&&s.refreshData(),_()}).catch(n=>{v.value=!1})}function _(){s.closeModal(),setTimeout(()=>{e.resetCurrentNote(),r.value.$reset()},300)}return(n,i)=>{const P=f("BaseIcon"),F=f("BaseInput"),B=f("BaseInputGroup"),L=f("BaseMultiselect"),T=f("BaseCustomInput"),A=f("BaseInputGrid"),q=f("BaseButton"),J=f("BaseModal");return ae(),oe(J,{show:o(j),onClose:_,onOpen:V},{header:p(()=>[I("div",me,[C(M(o(s).title)+" ",1),c(P,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:_})])]),default:p(()=>[I("form",{action:"",onSubmit:se(U,["prevent"])},[I("div",fe,[c(A,{layout:"one-column"},{default:p(()=>[c(B,{label:n.$t("settings.customization.notes.name"),variant:"vertical",error:o(r).currentNote.name.$error&&o(r).currentNote.name.$errors[0].$message,required:""},{default:p(()=>[c(F,{modelValue:o(e).currentNote.name,"onUpdate:modelValue":i[0]||(i[0]=m=>o(e).currentNote.name=m),invalid:o(r).currentNote.name.$error,type:"text",onInput:i[1]||(i[1]=m=>o(r).currentNote.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),c(B,{label:n.$t("settings.customization.notes.type"),error:o(r).currentNote.type.$error&&o(r).currentNote.type.$errors[0].$message,required:""},{default:p(()=>[c(L,{modelValue:o(e).currentNote.type,"onUpdate:modelValue":i[2]||(i[2]=m=>o(e).currentNote.type=m),options:o(D),"value-prop":"type",class:"mt-2"},null,8,["modelValue","options"])]),_:1},8,["label","error"]),c(B,{label:n.$t("settings.customization.notes.notes"),error:o(r).currentNote.notes.$error&&o(r).currentNote.notes.$errors[0].$message,required:""},{default:p(()=>[c(T,{modelValue:o(e).currentNote.notes,"onUpdate:modelValue":i[3]||(i[3]=m=>o(e).currentNote.notes=m),invalid:o(r).currentNote.notes.$error,fields:o(h),onInput:i[4]||(i[4]=m=>o(r).currentNote.notes.$touch())},null,8,["modelValue","invalid","fields"])]),_:1},8,["label","error"])]),_:1})]),I("div",ve,[c(q,{class:"mr-2",variant:"primary-outline",type:"button",onClick:_},{default:p(()=>[C(M(n.$t("general.cancel")),1)]),_:1}),c(q,{loading:o(v),disabled:o(v),variant:"primary",type:"submit"},{left:p(m=>[c(P,{name:"SaveIcon",class:ne(m.class)},null,8,["class"])]),default:p(()=>[C(" "+M(o(e).isEdit?n.$t("general.update"):n.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,pe)]),_:1},8,["show"])}}};export{ge as _,de as u}; +var O=Object.defineProperty;var E=Object.getOwnPropertySymbols;var R=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var x=(d,s,a)=>s in d?O(d,s,{enumerable:!0,configurable:!0,writable:!0,value:a}):d[s]=a,z=(d,s)=>{for(var a in s||(s={}))R.call(s,a)&&x(d,a,s[a]);if(E)for(var a of E(s))X.call(s,a)&&x(d,a,s[a]);return d};import{a as g,d as H,G as K,J as Q,B as k,a0 as W,k as S,L as w,M as b,N as Y,T as Z,C as ee,D as te,r as f,o as ae,l as oe,w as p,h as I,i as C,t as M,u as o,f as c,m as ne,U as se}from"./vendor.01d0adc5.js";import{h as $,c as re,u as ie,i as ue,k as le}from"./main.24f7a84b.js";import{u as ce}from"./payment.bb0c6e9e.js";const de=(d=!1)=>(d?window.pinia.defineStore:H)({id:"notes",state:()=>({notes:[],currentNote:{id:null,type:"",name:"",notes:""}}),getters:{isEdit:a=>!!a.currentNote.id},actions:{resetCurrentNote(){this.currentNote={type:"",name:"",notes:""}},fetchNotes(a){return new Promise((e,l)=>{g.get("/api/v1/notes",{params:a}).then(t=>{this.notes=t.data.data,e(t)}).catch(t=>{$(t),l(t)})})},fetchNote(a){return new Promise((e,l)=>{g.get(`/api/v1/notes/${a}`).then(t=>{this.currentNote=t.data.data,e(t)}).catch(t=>{$(t),l(t)})})},addNote(a){return new Promise((e,l)=>{g.post("/api/v1/notes",a).then(t=>{this.notes.push(t.data),e(t)}).catch(t=>{$(t),l(t)})})},updateNote(a){return new Promise((e,l)=>{g.put(`/api/v1/notes/${a.id}`,a).then(t=>{if(t.data){let y=this.notes.findIndex(u=>u.id===t.data.data.id);this.notes[y]=a.notes}e(t)}).catch(t=>{$(t),l(t)})})},deleteNote(a){return new Promise((e,l)=>{g.delete(`/api/v1/notes/${a}`).then(t=>{let y=this.notes.findIndex(u=>u.id===a);this.notes.splice(y,1),e(t)}).catch(t=>{$(t),l(t)})})}}})();const me={class:"flex justify-between w-full"},pe=["onSubmit"],fe={class:"px-8 py-8 sm:p-6"},ve={class:"z-0 flex justify-end px-4 py-4 border-t border-solid border-gray-light"},ge={setup(d){const s=re(),a=ie(),e=de(),l=ue(),t=ce(),y=le(),u=K(),{t:N}=Q();let v=k(!1);const D=W(["Invoice","Estimate","Payment"]);let h=k(["customer","customerCustom"]);const j=S(()=>s.active&&s.componentName==="NoteModal"),G=S(()=>({currentNote:{name:{required:w.withMessage(N("validation.required"),b),minLength:w.withMessage(N("validation.name_min_length",{count:3}),Y(3))},notes:{required:w.withMessage(N("validation.required"),b)},type:{required:w.withMessage(N("validation.required"),b)}}})),r=Z(G,S(()=>e));ee(()=>e.currentNote.type,n=>{V()}),te(()=>{u.name==="estimates.create"?e.currentNote.type="Estimate":u.name==="invoices.create"?e.currentNote.type="Invoice":e.currentNote.type="Payment"});function V(){h.value=["customer","customerCustom"],e.currentNote.type=="Invoice"&&h.value.push("invoice","invoiceCustom"),e.currentNote.type=="Estimate"&&h.value.push("estimate","estimateCustom"),e.currentNote.type=="Payment"&&h.value.push("payment","paymentCustom")}async function U(){if(r.value.currentNote.$touch(),r.value.currentNote.$invalid)return!0;if(v.value=!0,e.isEdit){let n=z({id:e.currentNote.id},e.currentNote);await e.updateNote(n).then(i=>{v.value=!1,i.data&&(a.showNotification({type:"success",message:N("settings.customization.notes.note_updated")}),s.refreshData&&s.refreshData(),_())}).catch(i=>{v.value=!1})}else await e.addNote(e.currentNote).then(n=>{v.value=!1,n.data&&(a.showNotification({type:"success",message:N("settings.customization.notes.note_added")}),(u.name==="invoices.create"&&n.data.data.type==="Invoice"||u.name==="invoices.edit"&&n.data.data.type==="Invoice")&&l.selectNote(n.data.data),(u.name==="estimates.create"&&n.data.data.type==="Estimate"||u.name==="estimates.edit"&&n.data.data.type==="Estimate")&&y.selectNote(n.data.data),(u.name==="payments.create"&&n.data.data.type==="Payment"||u.name==="payments.edit"&&n.data.data.type==="Payment")&&t.selectNote(n.data.data)),s.refreshData&&s.refreshData(),_()}).catch(n=>{v.value=!1})}function _(){s.closeModal(),setTimeout(()=>{e.resetCurrentNote(),r.value.$reset()},300)}return(n,i)=>{const P=f("BaseIcon"),F=f("BaseInput"),B=f("BaseInputGroup"),L=f("BaseMultiselect"),T=f("BaseCustomInput"),A=f("BaseInputGrid"),q=f("BaseButton"),J=f("BaseModal");return ae(),oe(J,{show:o(j),onClose:_,onOpen:V},{header:p(()=>[I("div",me,[C(M(o(s).title)+" ",1),c(P,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:_})])]),default:p(()=>[I("form",{action:"",onSubmit:se(U,["prevent"])},[I("div",fe,[c(A,{layout:"one-column"},{default:p(()=>[c(B,{label:n.$t("settings.customization.notes.name"),variant:"vertical",error:o(r).currentNote.name.$error&&o(r).currentNote.name.$errors[0].$message,required:""},{default:p(()=>[c(F,{modelValue:o(e).currentNote.name,"onUpdate:modelValue":i[0]||(i[0]=m=>o(e).currentNote.name=m),invalid:o(r).currentNote.name.$error,type:"text",onInput:i[1]||(i[1]=m=>o(r).currentNote.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),c(B,{label:n.$t("settings.customization.notes.type"),error:o(r).currentNote.type.$error&&o(r).currentNote.type.$errors[0].$message,required:""},{default:p(()=>[c(L,{modelValue:o(e).currentNote.type,"onUpdate:modelValue":i[2]||(i[2]=m=>o(e).currentNote.type=m),options:o(D),"value-prop":"type",class:"mt-2"},null,8,["modelValue","options"])]),_:1},8,["label","error"]),c(B,{label:n.$t("settings.customization.notes.notes"),error:o(r).currentNote.notes.$error&&o(r).currentNote.notes.$errors[0].$message,required:""},{default:p(()=>[c(T,{modelValue:o(e).currentNote.notes,"onUpdate:modelValue":i[3]||(i[3]=m=>o(e).currentNote.notes=m),invalid:o(r).currentNote.notes.$error,fields:o(h),onInput:i[4]||(i[4]=m=>o(r).currentNote.notes.$touch())},null,8,["modelValue","invalid","fields"])]),_:1},8,["label","error"])]),_:1})]),I("div",ve,[c(q,{class:"mr-2",variant:"primary-outline",type:"button",onClick:_},{default:p(()=>[C(M(n.$t("general.cancel")),1)]),_:1}),c(q,{loading:o(v),disabled:o(v),variant:"primary",type:"submit"},{left:p(m=>[c(P,{name:"SaveIcon",class:ne(m.class)},null,8,["class"])]),default:p(()=>[C(" "+M(o(e).isEdit?n.$t("general.update"):n.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,pe)]),_:1},8,["show"])}}};export{ge as _,de as u}; diff --git a/public/build/assets/NotesSetting.2f08acf1.js b/public/build/assets/NotesSetting.6010dd94.js similarity index 96% rename from public/build/assets/NotesSetting.2f08acf1.js rename to public/build/assets/NotesSetting.6010dd94.js index 819d56134..3c7fe21ef 100644 --- a/public/build/assets/NotesSetting.2f08acf1.js +++ b/public/build/assets/NotesSetting.6010dd94.js @@ -1 +1 @@ -import{J as k,G as $,ah as T,r,o as p,l as f,w as t,u as c,f as u,i as S,t as z,j as C,B as E,k as O,e as F,m as G,F as P,a0 as V}from"./vendor.01d0adc5.js";import{j as x,u as I,e as M,c as j,g as D}from"./main.75722495.js";import{u as A,_ as H}from"./NoteModal.f6d01f84.js";import"./payment.5c57bec3.js";const L={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(g){const d=g,h=x(),_=I(),{t:a}=k(),o=A(),N=$(),y=M(),b=j();T("utils");function w(n){o.fetchNote(n),b.openModal({title:a("settings.customization.notes.edit_note"),componentName:"NoteModal",size:"md",refreshData:d.loadData})}function s(n){h.openDialog({title:a("general.are_you_sure"),message:a("settings.customization.notes.note_confirm_delete"),yesLabel:a("general.yes"),noLabel:a("general.no"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async()=>{(await o.deleteNote(n)).data.success?_.showNotification({type:"success",message:a("settings.customization.notes.deleted_message")}):_.showNotification({type:"error",message:a("settings.customization.notes.already_in_use")}),d.loadData&&d.loadData()})}return(n,e)=>{const i=r("BaseIcon"),m=r("BaseButton"),B=r("BaseDropdownItem"),l=r("BaseDropdown");return p(),f(l,null,{activator:t(()=>[c(N).name==="notes.view"?(p(),f(m,{key:0,variant:"primary"},{default:t(()=>[u(i,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(p(),f(i,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:t(()=>[c(y).hasAbilities(c(D).MANAGE_NOTE)?(p(),f(B,{key:0,onClick:e[0]||(e[0]=v=>w(g.row.id))},{default:t(()=>[u(i,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),S(" "+z(n.$t("general.edit")),1)]),_:1})):C("",!0),c(y).hasAbilities(c(D).MANAGE_NOTE)?(p(),f(B,{key:1,onClick:e[1]||(e[1]=v=>s(g.row.id))},{default:t(()=>[u(i,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),S(" "+z(n.$t("general.delete")),1)]),_:1})):C("",!0)]),_:1})}}},K={setup(g){const{t:d}=k(),h=j();x();const _=A();I();const a=M(),o=E(""),N=O(()=>[{key:"name",label:d("settings.customization.notes.name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"type",label:d("settings.customization.notes.type"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function y({page:s,filter:n,sort:e}){let i=V({orderByField:e.fieldName||"created_at",orderBy:e.order||"desc",page:s}),m=await _.fetchNotes(i);return{data:m.data.data,pagination:{totalPages:m.data.meta.last_page,currentPage:s,totalCount:m.data.meta.total,limit:5}}}async function b(){await h.openModal({title:d("settings.customization.notes.add_note"),componentName:"NoteModal",size:"md",refreshData:o.value&&o.value.refresh})}async function w(){o.value&&o.value.refresh()}return(s,n)=>{const e=r("BaseIcon"),i=r("BaseButton"),m=r("BaseTable"),B=r("BaseSettingCard");return p(),F(P,null,[u(H),u(B,{title:s.$t("settings.customization.notes.title"),description:s.$t("settings.customization.notes.description")},{action:t(()=>[c(a).hasAbilities(c(D).MANAGE_NOTE)?(p(),f(i,{key:0,variant:"primary-outline",onClick:b},{left:t(l=>[u(e,{class:G(l.class),name:"PlusIcon"},null,8,["class"])]),default:t(()=>[S(" "+z(s.$t("settings.customization.notes.add_note")),1)]),_:1})):C("",!0)]),default:t(()=>[u(m,{ref:(l,v)=>{v.table=l,o.value=l},data:y,columns:c(N),class:"mt-14"},{"cell-actions":t(({row:l})=>[u(L,{row:l.data,table:o.value,"load-data":w},null,8,["row","table"])]),_:1},8,["columns"])]),_:1},8,["title","description"])],64)}}};export{K as default}; +import{J as k,G as $,ah as T,r,o as p,l as f,w as t,u as c,f as u,i as S,t as z,j as C,B as E,k as O,e as F,m as G,F as P,a0 as V}from"./vendor.01d0adc5.js";import{j as x,u as I,e as M,c as j,g as D}from"./main.24f7a84b.js";import{u as A,_ as H}from"./NoteModal.5bd3cf32.js";import"./payment.bb0c6e9e.js";const L={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(g){const d=g,h=x(),_=I(),{t:a}=k(),o=A(),N=$(),y=M(),b=j();T("utils");function w(n){o.fetchNote(n),b.openModal({title:a("settings.customization.notes.edit_note"),componentName:"NoteModal",size:"md",refreshData:d.loadData})}function s(n){h.openDialog({title:a("general.are_you_sure"),message:a("settings.customization.notes.note_confirm_delete"),yesLabel:a("general.yes"),noLabel:a("general.no"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async()=>{(await o.deleteNote(n)).data.success?_.showNotification({type:"success",message:a("settings.customization.notes.deleted_message")}):_.showNotification({type:"error",message:a("settings.customization.notes.already_in_use")}),d.loadData&&d.loadData()})}return(n,e)=>{const i=r("BaseIcon"),m=r("BaseButton"),B=r("BaseDropdownItem"),l=r("BaseDropdown");return p(),f(l,null,{activator:t(()=>[c(N).name==="notes.view"?(p(),f(m,{key:0,variant:"primary"},{default:t(()=>[u(i,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(p(),f(i,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:t(()=>[c(y).hasAbilities(c(D).MANAGE_NOTE)?(p(),f(B,{key:0,onClick:e[0]||(e[0]=v=>w(g.row.id))},{default:t(()=>[u(i,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),S(" "+z(n.$t("general.edit")),1)]),_:1})):C("",!0),c(y).hasAbilities(c(D).MANAGE_NOTE)?(p(),f(B,{key:1,onClick:e[1]||(e[1]=v=>s(g.row.id))},{default:t(()=>[u(i,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),S(" "+z(n.$t("general.delete")),1)]),_:1})):C("",!0)]),_:1})}}},K={setup(g){const{t:d}=k(),h=j();x();const _=A();I();const a=M(),o=E(""),N=O(()=>[{key:"name",label:d("settings.customization.notes.name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"type",label:d("settings.customization.notes.type"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function y({page:s,filter:n,sort:e}){let i=V({orderByField:e.fieldName||"created_at",orderBy:e.order||"desc",page:s}),m=await _.fetchNotes(i);return{data:m.data.data,pagination:{totalPages:m.data.meta.last_page,currentPage:s,totalCount:m.data.meta.total,limit:5}}}async function b(){await h.openModal({title:d("settings.customization.notes.add_note"),componentName:"NoteModal",size:"md",refreshData:o.value&&o.value.refresh})}async function w(){o.value&&o.value.refresh()}return(s,n)=>{const e=r("BaseIcon"),i=r("BaseButton"),m=r("BaseTable"),B=r("BaseSettingCard");return p(),F(P,null,[u(H),u(B,{title:s.$t("settings.customization.notes.title"),description:s.$t("settings.customization.notes.description")},{action:t(()=>[c(a).hasAbilities(c(D).MANAGE_NOTE)?(p(),f(i,{key:0,variant:"primary-outline",onClick:b},{left:t(l=>[u(e,{class:G(l.class),name:"PlusIcon"},null,8,["class"])]),default:t(()=>[S(" "+z(s.$t("settings.customization.notes.add_note")),1)]),_:1})):C("",!0)]),default:t(()=>[u(m,{ref:(l,v)=>{v.table=l,o.value=l},data:y,columns:c(N),class:"mt-14"},{"cell-actions":t(({row:l})=>[u(L,{row:l.data,table:o.value,"load-data":w},null,8,["row","table"])]),_:1},8,["columns"])]),_:1},8,["title","description"])],64)}}};export{K as default}; diff --git a/public/build/assets/NotificationRoot.a98180ab.js b/public/build/assets/NotificationRoot.79eede9f.js similarity index 92% rename from public/build/assets/NotificationRoot.a98180ab.js rename to public/build/assets/NotificationRoot.79eede9f.js index de042dd13..bcd2b4a15 100644 --- a/public/build/assets/NotificationRoot.a98180ab.js +++ b/public/build/assets/NotificationRoot.79eede9f.js @@ -1 +1 @@ -import{B as w,k as d,D as g,o as a,e as c,h as t,u as e,j as m,m as u,t as p,U as y,r as k,f as N,w as C,F as M,y as z,l as B,aM as L}from"./vendor.01d0adc5.js";import{u as v,_ as S}from"./main.75722495.js";const $=["onClick"],b={class:"overflow-hidden rounded-lg shadow-xs"},j={class:"p-4"},T={class:"flex items-start"},O={class:"shrink-0"},V={key:0,class:"w-6 h-6 text-green-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},I=t("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"},null,-1),D=[I],E={key:1,class:"w-6 h-6 text-blue-400",fill:"currentColor",viewBox:"0 0 20 20",xmlns:"http://www.w3.org/2000/svg"},F=t("path",{"fill-rule":"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7 4a1 1 0 11-2 0 1 1 0 012 0zm-1-9a1 1 0 00-1 1v4a1 1 0 102 0V6a1 1 0 00-1-1z","clip-rule":"evenodd"},null,-1),A=[F],G={key:2,class:"w-6 h-6 text-red-400",fill:"currentColor",viewBox:"0 0 24 24"},R=t("path",{"fill-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z","clip-rule":"evenodd"},null,-1),U=[R],q={class:"flex-1 w-0 ml-3 text-left"},H={class:"flex shrink-0"},J=t("svg",{class:"w-6 h-6",fill:"currentColor",viewBox:"0 0 20 20",xmlns:"http://www.w3.org/2000/svg"},[t("path",{"fill-rule":"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z","clip-rule":"evenodd"})],-1),K=[J],P={props:{notification:{type:Object,default:null}},setup(o){const i=o,f=v();let l=w("");const s=d(()=>i.notification.type=="success"),h=d(()=>i.notification.type=="error"),n=d(()=>i.notification.type=="info");function r(){f.hideNotification(i.notification)}function x(){clearTimeout(l)}function _(){l=setTimeout(()=>{f.hideNotification(i.notification)},i.notification.time||5e3)}return g(()=>{_()}),(Y,Z)=>(a(),c("div",{class:u([e(s)||e(n)?"bg-white":"bg-red-50","max-w-sm mb-3 rounded-lg shadow-lg cursor-pointer pointer-events-auto w-full md:w-96"]),onClick:y(r,["stop"]),onMouseenter:x,onMouseleave:_},[t("div",b,[t("div",j,[t("div",T,[t("div",O,[e(s)?(a(),c("svg",V,D)):m("",!0),e(n)?(a(),c("svg",E,A)):m("",!0),e(h)?(a(),c("svg",G,U)):m("",!0)]),t("div",q,[t("p",{class:u(`text-sm leading-5 font-medium ${e(s)||e(n)?"text-gray-900":"text-red-800"}`)},p(o.notification.title?o.notification.title:e(s)?"Success!":"Error"),3),t("p",{class:u(`mt-1 text-sm leading-5 ${e(s)||e(n)?"text-gray-500":"text-red-700"}`)},p(o.notification.message?o.notification.message:e(s)?"Successful":"Somthing went wrong"),3)]),t("div",H,[t("button",{class:u([e(s)||e(n)?" text-gray-400 focus:text-gray-500":"text-red-400 focus:text-red-500","inline-flex w-5 h-5 transition duration-150 ease-in-out focus:outline-none"]),onClick:r},K,2)])])])])],42,$))}},Q={components:{NotificationItem:P},setup(){const o=v();return{notifications:d(()=>o.notifications)}}},W={class:"fixed inset-0 z-50 flex flex-col items-end justify-start w-full px-4 py-6 pointer-events-none sm:p-6"};function X(o,i,f,l,s,h){const n=k("NotificationItem");return a(),c("div",W,[N(L,{"enter-active-class":"transition duration-300 ease-out","enter-from-class":"translate-y-2 opacity-0 sm:translate-y-0 sm:translate-x-2","enter-to-class":"translate-y-0 opacity-100 sm:translate-x-0","leave-active-class":"transition duration-100 ease-in","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:C(()=>[(a(!0),c(M,null,z(l.notifications,r=>(a(),B(n,{key:r.id,notification:r},null,8,["notification"]))),128))]),_:1})])}var ot=S(Q,[["render",X]]);export{ot as N}; +import{B as w,k as d,D as g,o as a,e as c,h as t,u as e,j as m,m as u,t as p,U as y,r as k,f as N,w as C,F as M,y as z,l as B,aM as L}from"./vendor.01d0adc5.js";import{u as v,_ as b}from"./main.24f7a84b.js";const S=["onClick"],$={class:"overflow-hidden rounded-lg shadow-xs"},j={class:"p-4"},T={class:"flex items-start"},O={class:"shrink-0"},V={key:0,class:"w-6 h-6 text-green-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},I=t("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"},null,-1),D=[I],E={key:1,class:"w-6 h-6 text-blue-400",fill:"currentColor",viewBox:"0 0 20 20",xmlns:"http://www.w3.org/2000/svg"},F=t("path",{"fill-rule":"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7 4a1 1 0 11-2 0 1 1 0 012 0zm-1-9a1 1 0 00-1 1v4a1 1 0 102 0V6a1 1 0 00-1-1z","clip-rule":"evenodd"},null,-1),A=[F],G={key:2,class:"w-6 h-6 text-red-400",fill:"currentColor",viewBox:"0 0 24 24"},R=t("path",{"fill-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z","clip-rule":"evenodd"},null,-1),U=[R],q={class:"flex-1 w-0 ml-3 text-left"},H={class:"flex shrink-0"},J=t("svg",{class:"w-6 h-6",fill:"currentColor",viewBox:"0 0 20 20",xmlns:"http://www.w3.org/2000/svg"},[t("path",{"fill-rule":"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z","clip-rule":"evenodd"})],-1),K=[J],P={props:{notification:{type:Object,default:null}},setup(o){const i=o,f=v();let l=w("");const s=d(()=>i.notification.type=="success"),h=d(()=>i.notification.type=="error"),n=d(()=>i.notification.type=="info");function r(){f.hideNotification(i.notification)}function x(){clearTimeout(l)}function _(){l=setTimeout(()=>{f.hideNotification(i.notification)},i.notification.time||5e3)}return g(()=>{_()}),(Y,Z)=>(a(),c("div",{class:u([e(s)||e(n)?"bg-white":"bg-red-50","max-w-sm mb-3 rounded-lg shadow-lg cursor-pointer pointer-events-auto w-full md:w-96"]),onClick:y(r,["stop"]),onMouseenter:x,onMouseleave:_},[t("div",$,[t("div",j,[t("div",T,[t("div",O,[e(s)?(a(),c("svg",V,D)):m("",!0),e(n)?(a(),c("svg",E,A)):m("",!0),e(h)?(a(),c("svg",G,U)):m("",!0)]),t("div",q,[t("p",{class:u(`text-sm leading-5 font-medium ${e(s)||e(n)?"text-gray-900":"text-red-800"}`)},p(o.notification.title?o.notification.title:e(s)?"Success!":"Error"),3),t("p",{class:u(`mt-1 text-sm leading-5 ${e(s)||e(n)?"text-gray-500":"text-red-700"}`)},p(o.notification.message?o.notification.message:e(s)?"Successful":"Somthing went wrong"),3)]),t("div",H,[t("button",{class:u([e(s)||e(n)?" text-gray-400 focus:text-gray-500":"text-red-400 focus:text-red-500","inline-flex w-5 h-5 transition duration-150 ease-in-out focus:outline-none"]),onClick:r},K,2)])])])])],42,S))}},Q={components:{NotificationItem:P},setup(){const o=v();return{notifications:d(()=>o.notifications)}}},W={class:"fixed inset-0 z-50 flex flex-col items-end justify-start w-full px-4 py-6 pointer-events-none sm:p-6"};function X(o,i,f,l,s,h){const n=k("NotificationItem");return a(),c("div",W,[N(L,{"enter-active-class":"transition duration-300 ease-out","enter-from-class":"translate-y-2 opacity-0 sm:translate-y-0 sm:translate-x-2","enter-to-class":"translate-y-0 opacity-100 sm:translate-x-0","leave-active-class":"transition duration-100 ease-in","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:C(()=>[(a(!0),c(M,null,z(l.notifications,r=>(a(),B(n,{key:r.id,notification:r},null,8,["notification"]))),128))]),_:1})])}var ot=b(Q,[["render",X]]);export{ot as N}; diff --git a/public/build/assets/NotificationsSetting.90090d1e.js b/public/build/assets/NotificationsSetting.7c27b8ff.js similarity index 97% rename from public/build/assets/NotificationsSetting.90090d1e.js rename to public/build/assets/NotificationsSetting.7c27b8ff.js index 844366ddf..0d42231de 100644 --- a/public/build/assets/NotificationsSetting.90090d1e.js +++ b/public/build/assets/NotificationsSetting.7c27b8ff.js @@ -1 +1 @@ -import{B as M,J as k,a0 as q,k as m,L as y,M as E,Q as F,T as U,r as o,o as w,l as S,w as u,h as v,f as d,u as i,m as Y,j,i as D,t as G,U as O,x as B}from"./vendor.01d0adc5.js";import{b as T}from"./main.75722495.js";const z=["onSubmit"],J={class:"grid-cols-2 col-span-1 mt-14"},L={class:"divide-y divide-gray-200"},H={setup(Q){const s=T();let r=M(!1);const{t:f}=k(),n=q({notify_invoice_viewed:s.selectedCompanySettings.notify_invoice_viewed,notify_estimate_viewed:s.selectedCompanySettings.notify_estimate_viewed,notification_email:s.selectedCompanySettings.notification_email}),$=m(()=>({notification_email:{required:y.withMessage(f("validation.required"),E),email:y.withMessage(f("validation.email_incorrect"),F)}})),l=U($,m(()=>n)),_=m({get:()=>n.notify_invoice_viewed==="YES",set:async e=>{const t=e?"YES":"NO";let c={settings:{notify_invoice_viewed:t}};n.notify_invoice_viewed=t,await s.updateCompanySettings({data:c,message:"general.setting_updated"})}}),p=m({get:()=>n.notify_estimate_viewed==="YES",set:async e=>{const t=e?"YES":"NO";let c={settings:{notify_estimate_viewed:t}};n.notify_estimate_viewed=t,await s.updateCompanySettings({data:c,message:"general.setting_updated"})}});async function V(){if(l.value.$touch(),l.value.$invalid)return!0;r.value=!0;const e={settings:{notification_email:n.notification_email}};await s.updateCompanySettings({data:e,message:"settings.notification.email_save_message"}),r.value=!1}return(e,t)=>{const c=o("BaseInput"),C=o("BaseInputGroup"),b=o("BaseIcon"),I=o("BaseButton"),N=o("BaseDivider"),g=o("BaseSwitchSection"),h=o("BaseSettingCard");return w(),S(h,{title:e.$t("settings.notification.title"),description:e.$t("settings.notification.description")},{default:u(()=>[v("form",{action:"",onSubmit:O(V,["prevent"])},[v("div",J,[d(C,{error:i(l).notification_email.$error&&i(l).notification_email.$errors[0].$message,label:e.$t("settings.notification.email"),class:"my-2",required:""},{default:u(()=>[d(c,{modelValue:i(n).notification_email,"onUpdate:modelValue":t[0]||(t[0]=a=>i(n).notification_email=a),modelModifiers:{trim:!0},invalid:i(l).notification_email.$error,type:"email",onInput:t[1]||(t[1]=a=>i(l).notification_email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),d(I,{disabled:i(r),loading:i(r),variant:"primary",type:"submit",class:"mt-6"},{left:u(a=>[i(r)?j("",!0):(w(),S(b,{key:0,class:Y(a.class),name:"SaveIcon"},null,8,["class"]))]),default:u(()=>[D(" "+G(e.$tc("settings.notification.save")),1)]),_:1},8,["disabled","loading"])])],40,z),d(N,{class:"mt-6 mb-2"}),v("ul",L,[d(g,{modelValue:i(_),"onUpdate:modelValue":t[2]||(t[2]=a=>B(_)?_.value=a:null),title:e.$t("settings.notification.invoice_viewed"),description:e.$t("settings.notification.invoice_viewed_desc")},null,8,["modelValue","title","description"]),d(g,{modelValue:i(p),"onUpdate:modelValue":t[3]||(t[3]=a=>B(p)?p.value=a:null),title:e.$t("settings.notification.estimate_viewed"),description:e.$t("settings.notification.estimate_viewed_desc")},null,8,["modelValue","title","description"])])]),_:1},8,["title","description"])}}};export{H as default}; +import{B as M,J as k,a0 as q,k as m,L as y,M as E,Q as F,T as U,r as o,o as w,l as S,w as u,h as v,f as d,u as i,m as Y,j,i as D,t as G,U as O,x as B}from"./vendor.01d0adc5.js";import{b as T}from"./main.24f7a84b.js";const z=["onSubmit"],J={class:"grid-cols-2 col-span-1 mt-14"},L={class:"divide-y divide-gray-200"},H={setup(Q){const s=T();let r=M(!1);const{t:f}=k(),n=q({notify_invoice_viewed:s.selectedCompanySettings.notify_invoice_viewed,notify_estimate_viewed:s.selectedCompanySettings.notify_estimate_viewed,notification_email:s.selectedCompanySettings.notification_email}),$=m(()=>({notification_email:{required:y.withMessage(f("validation.required"),E),email:y.withMessage(f("validation.email_incorrect"),F)}})),l=U($,m(()=>n)),_=m({get:()=>n.notify_invoice_viewed==="YES",set:async e=>{const t=e?"YES":"NO";let c={settings:{notify_invoice_viewed:t}};n.notify_invoice_viewed=t,await s.updateCompanySettings({data:c,message:"general.setting_updated"})}}),p=m({get:()=>n.notify_estimate_viewed==="YES",set:async e=>{const t=e?"YES":"NO";let c={settings:{notify_estimate_viewed:t}};n.notify_estimate_viewed=t,await s.updateCompanySettings({data:c,message:"general.setting_updated"})}});async function V(){if(l.value.$touch(),l.value.$invalid)return!0;r.value=!0;const e={settings:{notification_email:n.notification_email}};await s.updateCompanySettings({data:e,message:"settings.notification.email_save_message"}),r.value=!1}return(e,t)=>{const c=o("BaseInput"),C=o("BaseInputGroup"),b=o("BaseIcon"),I=o("BaseButton"),N=o("BaseDivider"),g=o("BaseSwitchSection"),h=o("BaseSettingCard");return w(),S(h,{title:e.$t("settings.notification.title"),description:e.$t("settings.notification.description")},{default:u(()=>[v("form",{action:"",onSubmit:O(V,["prevent"])},[v("div",J,[d(C,{error:i(l).notification_email.$error&&i(l).notification_email.$errors[0].$message,label:e.$t("settings.notification.email"),class:"my-2",required:""},{default:u(()=>[d(c,{modelValue:i(n).notification_email,"onUpdate:modelValue":t[0]||(t[0]=a=>i(n).notification_email=a),modelModifiers:{trim:!0},invalid:i(l).notification_email.$error,type:"email",onInput:t[1]||(t[1]=a=>i(l).notification_email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),d(I,{disabled:i(r),loading:i(r),variant:"primary",type:"submit",class:"mt-6"},{left:u(a=>[i(r)?j("",!0):(w(),S(b,{key:0,class:Y(a.class),name:"SaveIcon"},null,8,["class"]))]),default:u(()=>[D(" "+G(e.$tc("settings.notification.save")),1)]),_:1},8,["disabled","loading"])])],40,z),d(N,{class:"mt-6 mb-2"}),v("ul",L,[d(g,{modelValue:i(_),"onUpdate:modelValue":t[2]||(t[2]=a=>B(_)?_.value=a:null),title:e.$t("settings.notification.invoice_viewed"),description:e.$t("settings.notification.invoice_viewed_desc")},null,8,["modelValue","title","description"]),d(g,{modelValue:i(p),"onUpdate:modelValue":t[3]||(t[3]=a=>B(p)?p.value=a:null),title:e.$t("settings.notification.estimate_viewed"),description:e.$t("settings.notification.estimate_viewed_desc")},null,8,["modelValue","title","description"])])]),_:1},8,["title","description"])}}};export{H as default}; diff --git a/public/build/assets/PaymentModeModal.9b5fc610.js b/public/build/assets/PaymentModeModal.fb4664cf.js similarity index 56% rename from public/build/assets/PaymentModeModal.9b5fc610.js rename to public/build/assets/PaymentModeModal.fb4664cf.js index a46bc1b61..b4670da03 100644 --- a/public/build/assets/PaymentModeModal.9b5fc610.js +++ b/public/build/assets/PaymentModeModal.fb4664cf.js @@ -1 +1 @@ -import{J as I,B as S,k as p,L as P,M as V,N as C,T as j,r as u,o as k,l as N,w as r,h as c,i as y,t as v,u as t,f as s,m as q,U as x}from"./vendor.01d0adc5.js";import{u as D}from"./payment.5c57bec3.js";import{c as L}from"./main.75722495.js";const T={class:"flex justify-between w-full"},z=["onSubmit"],G={class:"p-4 sm:p-6"},U={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},F={setup(A){const o=L(),e=D(),{t:M}=I(),l=S(!1),h=p(()=>({currentPaymentMode:{name:{required:P.withMessage(M("validation.required"),V),minLength:P.withMessage(M("validation.name_min_length",{count:3}),C(3))}}})),a=j(h,p(()=>e)),g=p(()=>o.active&&o.componentName==="PaymentModeModal");async function B(){if(a.value.currentPaymentMode.$touch(),a.value.currentPaymentMode.$invalid)return!0;try{const n=e.currentPaymentMode.id?e.updatePaymentMode:e.addPaymentMode;l.value=!0,await n(e.currentPaymentMode),l.value=!1,o.refreshData&&o.refreshData(),d()}catch{return l.value=!1,!0}}function d(){o.closeModal(),setTimeout(()=>{a.value.$reset(),e.currentPaymentMode={id:"",name:null}})}return(n,m)=>{const f=u("BaseIcon"),b=u("BaseInput"),$=u("BaseInputGroup"),_=u("BaseButton"),w=u("BaseModal");return k(),N(w,{show:t(g),onClose:d},{header:r(()=>[c("div",T,[y(v(t(o).title)+" ",1),s(f,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:d})])]),default:r(()=>[c("form",{action:"",onSubmit:x(B,["prevent"])},[c("div",G,[s($,{label:n.$t("settings.payment_modes.mode_name"),error:t(a).currentPaymentMode.name.$error&&t(a).currentPaymentMode.name.$errors[0].$message,required:""},{default:r(()=>[s(b,{modelValue:t(e).currentPaymentMode.name,"onUpdate:modelValue":m[0]||(m[0]=i=>t(e).currentPaymentMode.name=i),invalid:t(a).currentPaymentMode.name.$error,onInput:m[1]||(m[1]=i=>t(a).currentPaymentMode.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),c("div",U,[s(_,{variant:"primary-outline",class:"mr-3",type:"button",onClick:d},{default:r(()=>[y(v(n.$t("general.cancel")),1)]),_:1}),s(_,{loading:l.value,disabled:l.value,variant:"primary",type:"submit"},{left:r(i=>[s(f,{name:"SaveIcon",class:q(i.class)},null,8,["class"])]),default:r(()=>[y(" "+v(t(e).currentPaymentMode.id?n.$t("general.update"):n.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,z)]),_:1},8,["show"])}}};export{F as _}; +import{J as I,B as S,k as p,L as P,M as V,N as C,T as j,r as u,o as k,l as N,w as r,h as c,i as y,t as f,u as t,f as s,m as q,U as x}from"./vendor.01d0adc5.js";import{u as D}from"./payment.bb0c6e9e.js";import{c as L}from"./main.24f7a84b.js";const T={class:"flex justify-between w-full"},z=["onSubmit"],G={class:"p-4 sm:p-6"},U={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},F={setup(A){const o=L(),e=D(),{t:v}=I(),l=S(!1),h=p(()=>({currentPaymentMode:{name:{required:P.withMessage(v("validation.required"),V),minLength:P.withMessage(v("validation.name_min_length",{count:3}),C(3))}}})),a=j(h,p(()=>e)),b=p(()=>o.active&&o.componentName==="PaymentModeModal");async function g(){if(a.value.currentPaymentMode.$touch(),a.value.currentPaymentMode.$invalid)return!0;try{const n=e.currentPaymentMode.id?e.updatePaymentMode:e.addPaymentMode;l.value=!0,await n(e.currentPaymentMode),l.value=!1,o.refreshData&&o.refreshData(),d()}catch{return l.value=!1,!0}}function d(){o.closeModal(),setTimeout(()=>{a.value.$reset(),e.currentPaymentMode={id:"",name:null}})}return(n,m)=>{const M=u("BaseIcon"),B=u("BaseInput"),$=u("BaseInputGroup"),_=u("BaseButton"),w=u("BaseModal");return k(),N(w,{show:t(b),onClose:d},{header:r(()=>[c("div",T,[y(f(t(o).title)+" ",1),s(M,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:d})])]),default:r(()=>[c("form",{action:"",onSubmit:x(g,["prevent"])},[c("div",G,[s($,{label:n.$t("settings.payment_modes.mode_name"),error:t(a).currentPaymentMode.name.$error&&t(a).currentPaymentMode.name.$errors[0].$message,required:""},{default:r(()=>[s(B,{modelValue:t(e).currentPaymentMode.name,"onUpdate:modelValue":m[0]||(m[0]=i=>t(e).currentPaymentMode.name=i),invalid:t(a).currentPaymentMode.name.$error,onInput:m[1]||(m[1]=i=>t(a).currentPaymentMode.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),c("div",U,[s(_,{variant:"primary-outline",class:"mr-3",type:"button",onClick:d},{default:r(()=>[y(f(n.$t("general.cancel")),1)]),_:1}),s(_,{loading:l.value,disabled:l.value,variant:"primary",type:"submit"},{left:r(i=>[s(M,{name:"SaveIcon",class:q(i.class)},null,8,["class"])]),default:r(()=>[y(" "+f(t(e).currentPaymentMode.id?n.$t("general.update"):n.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,z)]),_:1},8,["show"])}}};export{F as _}; diff --git a/public/build/assets/PaymentsModeSetting.963d7ca9.js b/public/build/assets/PaymentsModeSetting.09e94b30.js similarity index 79% rename from public/build/assets/PaymentsModeSetting.963d7ca9.js rename to public/build/assets/PaymentsModeSetting.09e94b30.js index f88092481..264a371e2 100644 --- a/public/build/assets/PaymentsModeSetting.963d7ca9.js +++ b/public/build/assets/PaymentsModeSetting.09e94b30.js @@ -1 +1 @@ -import{J as D,G as I,ah as x,r as d,o as p,l as b,w as a,u as M,f as t,i as v,t as w,B as $,k as j,e as N,m as z,F as T}from"./vendor.01d0adc5.js";import{u as P}from"./payment.5c57bec3.js";import{j as C,u as F,e as H,c as S}from"./main.75722495.js";import{_ as L}from"./PaymentModeModal.9b5fc610.js";const O={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(u){const c=u,y=C();F();const{t:s}=D(),o=P(),f=I();H();const _=S();x("utils");function g(e){o.fetchPaymentMode(e),_.openModal({title:s("settings.payment_modes.edit_payment_mode"),componentName:"PaymentModeModal",refreshData:c.loadData&&c.loadData,size:"sm"})}function B(e){y.openDialog({title:s("general.are_you_sure"),message:s("settings.payment_modes.payment_mode_confirm_delete"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async l=>{l&&(await o.deletePaymentMode(e),c.loadData&&c.loadData())})}return(e,l)=>{const n=d("BaseIcon"),i=d("BaseButton"),r=d("BaseDropdownItem"),h=d("BaseDropdown");return p(),b(h,null,{activator:a(()=>[M(f).name==="paymentModes.view"?(p(),b(i,{key:0,variant:"primary"},{default:a(()=>[t(n,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(p(),b(n,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:a(()=>[t(r,{onClick:l[0]||(l[0]=m=>g(u.row.id))},{default:a(()=>[t(n,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),v(" "+w(e.$t("general.edit")),1)]),_:1}),t(r,{onClick:l[1]||(l[1]=m=>B(u.row.id))},{default:a(()=>[t(n,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),v(" "+w(e.$t("general.delete")),1)]),_:1})]),_:1})}}},R={setup(u){const c=S();C();const y=P(),{t:s}=D(),o=$(null),f=j(()=>[{key:"name",label:s("settings.payment_modes.mode_name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function _(){o.value&&o.value.refresh()}async function g({page:e,filter:l,sort:n}){let i={orderByField:n.fieldName||"created_at",orderBy:n.order||"desc",page:e},r=await y.fetchPaymentModes(i);return{data:r.data.data,pagination:{totalPages:r.data.meta.last_page,currentPage:e,totalCount:r.data.meta.total,limit:5}}}function B(){c.openModal({title:s("settings.payment_modes.add_payment_mode"),componentName:"PaymentModeModal",refreshData:o.value&&o.value.refresh,size:"sm"})}return(e,l)=>{const n=d("BaseIcon"),i=d("BaseButton"),r=d("BaseTable"),h=d("BaseSettingCard");return p(),N(T,null,[t(L),t(h,{title:e.$t("settings.payment_modes.title"),description:e.$t("settings.payment_modes.description")},{action:a(()=>[t(i,{type:"submit",variant:"primary-outline",onClick:B},{left:a(m=>[t(n,{class:z(m.class),name:"PlusIcon"},null,8,["class"])]),default:a(()=>[v(" "+w(e.$t("settings.payment_modes.add_payment_mode")),1)]),_:1})]),default:a(()=>[t(r,{ref:(m,k)=>{k.table=m,o.value=m},data:g,columns:M(f),class:"mt-16"},{"cell-actions":a(({row:m})=>[t(O,{row:m.data,table:o.value,"load-data":_},null,8,["row","table"])]),_:1},8,["columns"])]),_:1},8,["title","description"])],64)}}};export{R as default}; +import{J as D,G as I,ah as x,r as d,o as p,l as h,w as a,u as M,f as t,i as v,t as w,B as $,k as j,e as N,m as z,F as T}from"./vendor.01d0adc5.js";import{u as P}from"./payment.bb0c6e9e.js";import{j as C,u as F,e as H,c as S}from"./main.24f7a84b.js";import{_ as L}from"./PaymentModeModal.fb4664cf.js";const O={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(u){const c=u,y=C();F();const{t:s}=D(),o=P(),f=I();H();const _=S();x("utils");function g(e){o.fetchPaymentMode(e),_.openModal({title:s("settings.payment_modes.edit_payment_mode"),componentName:"PaymentModeModal",refreshData:c.loadData&&c.loadData,size:"sm"})}function B(e){y.openDialog({title:s("general.are_you_sure"),message:s("settings.payment_modes.payment_mode_confirm_delete"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async l=>{l&&(await o.deletePaymentMode(e),c.loadData&&c.loadData())})}return(e,l)=>{const n=d("BaseIcon"),i=d("BaseButton"),r=d("BaseDropdownItem"),b=d("BaseDropdown");return p(),h(b,null,{activator:a(()=>[M(f).name==="paymentModes.view"?(p(),h(i,{key:0,variant:"primary"},{default:a(()=>[t(n,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(p(),h(n,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:a(()=>[t(r,{onClick:l[0]||(l[0]=m=>g(u.row.id))},{default:a(()=>[t(n,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),v(" "+w(e.$t("general.edit")),1)]),_:1}),t(r,{onClick:l[1]||(l[1]=m=>B(u.row.id))},{default:a(()=>[t(n,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),v(" "+w(e.$t("general.delete")),1)]),_:1})]),_:1})}}},R={setup(u){const c=S();C();const y=P(),{t:s}=D(),o=$(null),f=j(()=>[{key:"name",label:s("settings.payment_modes.mode_name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function _(){o.value&&o.value.refresh()}async function g({page:e,filter:l,sort:n}){let i={orderByField:n.fieldName||"created_at",orderBy:n.order||"desc",page:e},r=await y.fetchPaymentModes(i);return{data:r.data.data,pagination:{totalPages:r.data.meta.last_page,currentPage:e,totalCount:r.data.meta.total,limit:5}}}function B(){c.openModal({title:s("settings.payment_modes.add_payment_mode"),componentName:"PaymentModeModal",refreshData:o.value&&o.value.refresh,size:"sm"})}return(e,l)=>{const n=d("BaseIcon"),i=d("BaseButton"),r=d("BaseTable"),b=d("BaseSettingCard");return p(),N(T,null,[t(L),t(b,{title:e.$t("settings.payment_modes.title"),description:e.$t("settings.payment_modes.description")},{action:a(()=>[t(i,{type:"submit",variant:"primary-outline",onClick:B},{left:a(m=>[t(n,{class:z(m.class),name:"PlusIcon"},null,8,["class"])]),default:a(()=>[v(" "+w(e.$t("settings.payment_modes.add_payment_mode")),1)]),_:1})]),default:a(()=>[t(r,{ref:(m,k)=>{k.table=m,o.value=m},data:g,columns:M(f),class:"mt-16"},{"cell-actions":a(({row:m})=>[t(O,{row:m.data,table:o.value,"load-data":_},null,8,["row","table"])]),_:1},8,["columns"])]),_:1},8,["title","description"])],64)}}};export{R as default}; diff --git a/public/build/assets/PreferencesSetting.abc39a72.js b/public/build/assets/PreferencesSetting.5c1b78a2.js similarity index 99% rename from public/build/assets/PreferencesSetting.abc39a72.js rename to public/build/assets/PreferencesSetting.5c1b78a2.js index 096a97513..bb4511f85 100644 --- a/public/build/assets/PreferencesSetting.abc39a72.js +++ b/public/build/assets/PreferencesSetting.5c1b78a2.js @@ -1 +1 @@ -var J=Object.defineProperty;var C=Object.getOwnPropertySymbols;var L=Object.prototype.hasOwnProperty,R=Object.prototype.propertyIsEnumerable;var M=(p,d,l)=>d in p?J(p,d,{enumerable:!0,configurable:!0,writable:!0,value:l}):p[d]=l,S=(p,d)=>{for(var l in d||(d={}))L.call(d,l)&&M(p,l,d[l]);if(C)for(var l of C(d))R.call(d,l)&&M(p,l,d[l]);return p};import{J as A,B,a0 as H,k as y,C as K,L as f,M as b,T as Q,r as m,o as D,e as W,f as s,w as u,u as e,m as U,i as z,t as F,h as N,U as x,x as E,l as X,j as ee}from"./vendor.01d0adc5.js";import{b as te,d as ae}from"./main.75722495.js";const ne=["onSubmit"],le=["onSubmit"],de={setup(p){const d=te(),l=ae(),{t:g,tm:se}=A();let v=B(!1),$=B(!1),i=B(!1);const a=H(S({},d.selectedCompanySettings));y(()=>l.config.retrospective_edits.map(t=>(t.title=g(t.key),t))),K(()=>a.carbon_date_format,t=>{if(t){const n=l.dateFormats.find(c=>c.carbon_format_value===t);a.moment_date_format=n.moment_format_value}});const k=y({get:()=>a.discount_per_item==="YES",set:async t=>{const n=t?"YES":"NO";let c={settings:{discount_per_item:n}};a.discount_per_item=n,await d.updateCompanySettings({data:c,message:"general.setting_updated"})}}),V=y({get:()=>a.automatically_expire_public_links==="YES",set:async t=>{const n=t?"YES":"NO";a.automatically_expire_public_links=n}}),G=y(()=>({currency:{required:f.withMessage(g("validation.required"),b)},language:{required:f.withMessage(g("validation.required"),b)},carbon_date_format:{required:f.withMessage(g("validation.required"),b)},moment_date_format:{required:f.withMessage(g("validation.required"),b)},time_zone:{required:f.withMessage(g("validation.required"),b)},fiscal_year:{required:f.withMessage(g("validation.required"),b)}})),r=Q(G,y(()=>a));j();async function j(){i.value=!0,Promise.all([l.fetchCurrencies(),l.fetchDateFormats(),l.fetchTimeZones()]).then(([t])=>{i.value=!1})}async function O(){if(r.value.$touch(),r.value.$invalid)return;let t={settings:S({},a)};v.value=!0,delete t.settings.link_expiry_days,await d.updateCompanySettings({data:t,message:"settings.preferences.updated_message"}),v.value=!1}async function P(){$.value=!0,await d.updateCompanySettings({data:{settings:{link_expiry_days:a.link_expiry_days,automatically_expire_public_links:a.automatically_expire_public_links}},message:"settings.preferences.updated_message"}),$.value=!1}return(t,n)=>{const c=m("BaseMultiselect"),_=m("BaseInputGroup"),Y=m("BaseInputGrid"),w=m("BaseIcon"),q=m("BaseButton"),I=m("BaseDivider"),h=m("BaseSwitchSection"),T=m("BaseInput"),Z=m("BaseSettingCard");return D(),W("form",{action:"",class:"relative",onSubmit:x(O,["prevent"])},[s(Z,{title:t.$t("settings.menu_title.preferences"),description:t.$t("settings.preferences.general_settings")},{default:u(()=>[s(Y,{class:"mt-5"},{default:u(()=>[s(_,{"content-loading":e(i),label:t.$tc("settings.preferences.currency"),"help-text":t.$t("settings.preferences.company_currency_unchangeable"),error:e(r).currency.$error&&e(r).currency.$errors[0].$message,required:""},{default:u(()=>[s(c,{modelValue:e(a).currency,"onUpdate:modelValue":n[0]||(n[0]=o=>e(a).currency=o),"content-loading":e(i),options:e(l).currencies,label:"name","value-prop":"id",searchable:!0,"track-by":"name",invalid:e(r).currency.$error,disabled:"",class:"w-full"},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["content-loading","label","help-text","error"]),s(_,{label:t.$tc("settings.preferences.default_language"),"content-loading":e(i),error:e(r).language.$error&&e(r).language.$errors[0].$message,required:""},{default:u(()=>[s(c,{modelValue:e(a).language,"onUpdate:modelValue":n[1]||(n[1]=o=>e(a).language=o),"content-loading":e(i),options:e(l).config.languages,label:"name","value-prop":"code",class:"w-full","track-by":"code",searchable:!0,invalid:e(r).language.$error},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),s(_,{label:t.$tc("settings.preferences.time_zone"),"content-loading":e(i),error:e(r).time_zone.$error&&e(r).time_zone.$errors[0].$message,required:""},{default:u(()=>[s(c,{modelValue:e(a).time_zone,"onUpdate:modelValue":n[2]||(n[2]=o=>e(a).time_zone=o),"content-loading":e(i),options:e(l).timeZones,label:"key","value-prop":"value","track-by":"key",searchable:!0,invalid:e(r).time_zone.$error},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),s(_,{label:t.$tc("settings.preferences.date_format"),"content-loading":e(i),error:e(r).carbon_date_format.$error&&e(r).carbon_date_format.$errors[0].$message,required:""},{default:u(()=>[s(c,{modelValue:e(a).carbon_date_format,"onUpdate:modelValue":n[3]||(n[3]=o=>e(a).carbon_date_format=o),"content-loading":e(i),options:e(l).dateFormats,label:"display_date","value-prop":"carbon_format_value","track-by":"carbon_format_value",searchable:"",invalid:e(r).carbon_date_format.$error,class:"w-full"},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),s(_,{"content-loading":e(i),error:e(r).fiscal_year.$error&&e(r).fiscal_year.$errors[0].$message,label:t.$tc("settings.preferences.fiscal_year"),required:""},{default:u(()=>[s(c,{modelValue:e(a).fiscal_year,"onUpdate:modelValue":n[4]||(n[4]=o=>e(a).fiscal_year=o),"content-loading":e(i),options:e(l).config.fiscal_years,label:"key","value-prop":"value",invalid:e(r).fiscal_year.$error,"track-by":"key",searchable:!0,class:"w-full"},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["content-loading","error","label"])]),_:1}),s(q,{"content-loading":e(i),disabled:e(v),loading:e(v),type:"submit",class:"mt-6"},{left:u(o=>[s(w,{name:"SaveIcon",class:U(o.class)},null,8,["class"])]),default:u(()=>[z(" "+F(t.$tc("settings.company_info.save")),1)]),_:1},8,["content-loading","disabled","loading"]),s(I,{class:"mt-6 mb-2"}),N("ul",null,[N("form",{onSubmit:x(P,["prevent"])},[s(h,{modelValue:e(V),"onUpdate:modelValue":n[5]||(n[5]=o=>E(V)?V.value=o:null),title:t.$t("settings.preferences.expire_public_links"),description:t.$t("settings.preferences.expire_setting_description")},null,8,["modelValue","title","description"]),e(V)?(D(),X(_,{key:0,"content-loading":e(i),label:t.$t("settings.preferences.expire_public_links"),class:"mt-2 mb-4"},{default:u(()=>[s(T,{modelValue:e(a).link_expiry_days,"onUpdate:modelValue":n[6]||(n[6]=o=>e(a).link_expiry_days=o),disabled:e(a).automatically_expire_public_links==="NO","content-loading":e(i),type:"number"},null,8,["modelValue","disabled","content-loading"])]),_:1},8,["content-loading","label"])):ee("",!0),s(q,{"content-loading":e(i),disabled:e($),loading:e($),type:"submit",class:"mt-6"},{left:u(o=>[s(w,{name:"SaveIcon",class:U(o.class)},null,8,["class"])]),default:u(()=>[z(" "+F(t.$tc("general.save")),1)]),_:1},8,["content-loading","disabled","loading"])],40,le),s(I,{class:"mt-6 mb-2"}),s(h,{modelValue:e(k),"onUpdate:modelValue":n[7]||(n[7]=o=>E(k)?k.value=o:null),title:t.$t("settings.preferences.discount_per_item"),description:t.$t("settings.preferences.discount_setting_description")},null,8,["modelValue","title","description"])])]),_:1},8,["title","description"])],40,ne)}}};export{de as default}; +var J=Object.defineProperty;var C=Object.getOwnPropertySymbols;var L=Object.prototype.hasOwnProperty,R=Object.prototype.propertyIsEnumerable;var M=(p,d,l)=>d in p?J(p,d,{enumerable:!0,configurable:!0,writable:!0,value:l}):p[d]=l,S=(p,d)=>{for(var l in d||(d={}))L.call(d,l)&&M(p,l,d[l]);if(C)for(var l of C(d))R.call(d,l)&&M(p,l,d[l]);return p};import{J as A,B,a0 as H,k as y,C as K,L as f,M as b,T as Q,r as m,o as D,e as W,f as s,w as u,u as e,m as U,i as z,t as F,h as N,U as x,x as E,l as X,j as ee}from"./vendor.01d0adc5.js";import{b as te,d as ae}from"./main.24f7a84b.js";const ne=["onSubmit"],le=["onSubmit"],de={setup(p){const d=te(),l=ae(),{t:g,tm:se}=A();let v=B(!1),$=B(!1),i=B(!1);const a=H(S({},d.selectedCompanySettings));y(()=>l.config.retrospective_edits.map(t=>(t.title=g(t.key),t))),K(()=>a.carbon_date_format,t=>{if(t){const n=l.dateFormats.find(c=>c.carbon_format_value===t);a.moment_date_format=n.moment_format_value}});const k=y({get:()=>a.discount_per_item==="YES",set:async t=>{const n=t?"YES":"NO";let c={settings:{discount_per_item:n}};a.discount_per_item=n,await d.updateCompanySettings({data:c,message:"general.setting_updated"})}}),V=y({get:()=>a.automatically_expire_public_links==="YES",set:async t=>{const n=t?"YES":"NO";a.automatically_expire_public_links=n}}),G=y(()=>({currency:{required:f.withMessage(g("validation.required"),b)},language:{required:f.withMessage(g("validation.required"),b)},carbon_date_format:{required:f.withMessage(g("validation.required"),b)},moment_date_format:{required:f.withMessage(g("validation.required"),b)},time_zone:{required:f.withMessage(g("validation.required"),b)},fiscal_year:{required:f.withMessage(g("validation.required"),b)}})),r=Q(G,y(()=>a));j();async function j(){i.value=!0,Promise.all([l.fetchCurrencies(),l.fetchDateFormats(),l.fetchTimeZones()]).then(([t])=>{i.value=!1})}async function O(){if(r.value.$touch(),r.value.$invalid)return;let t={settings:S({},a)};v.value=!0,delete t.settings.link_expiry_days,await d.updateCompanySettings({data:t,message:"settings.preferences.updated_message"}),v.value=!1}async function P(){$.value=!0,await d.updateCompanySettings({data:{settings:{link_expiry_days:a.link_expiry_days,automatically_expire_public_links:a.automatically_expire_public_links}},message:"settings.preferences.updated_message"}),$.value=!1}return(t,n)=>{const c=m("BaseMultiselect"),_=m("BaseInputGroup"),Y=m("BaseInputGrid"),w=m("BaseIcon"),q=m("BaseButton"),I=m("BaseDivider"),h=m("BaseSwitchSection"),T=m("BaseInput"),Z=m("BaseSettingCard");return D(),W("form",{action:"",class:"relative",onSubmit:x(O,["prevent"])},[s(Z,{title:t.$t("settings.menu_title.preferences"),description:t.$t("settings.preferences.general_settings")},{default:u(()=>[s(Y,{class:"mt-5"},{default:u(()=>[s(_,{"content-loading":e(i),label:t.$tc("settings.preferences.currency"),"help-text":t.$t("settings.preferences.company_currency_unchangeable"),error:e(r).currency.$error&&e(r).currency.$errors[0].$message,required:""},{default:u(()=>[s(c,{modelValue:e(a).currency,"onUpdate:modelValue":n[0]||(n[0]=o=>e(a).currency=o),"content-loading":e(i),options:e(l).currencies,label:"name","value-prop":"id",searchable:!0,"track-by":"name",invalid:e(r).currency.$error,disabled:"",class:"w-full"},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["content-loading","label","help-text","error"]),s(_,{label:t.$tc("settings.preferences.default_language"),"content-loading":e(i),error:e(r).language.$error&&e(r).language.$errors[0].$message,required:""},{default:u(()=>[s(c,{modelValue:e(a).language,"onUpdate:modelValue":n[1]||(n[1]=o=>e(a).language=o),"content-loading":e(i),options:e(l).config.languages,label:"name","value-prop":"code",class:"w-full","track-by":"code",searchable:!0,invalid:e(r).language.$error},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),s(_,{label:t.$tc("settings.preferences.time_zone"),"content-loading":e(i),error:e(r).time_zone.$error&&e(r).time_zone.$errors[0].$message,required:""},{default:u(()=>[s(c,{modelValue:e(a).time_zone,"onUpdate:modelValue":n[2]||(n[2]=o=>e(a).time_zone=o),"content-loading":e(i),options:e(l).timeZones,label:"key","value-prop":"value","track-by":"key",searchable:!0,invalid:e(r).time_zone.$error},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),s(_,{label:t.$tc("settings.preferences.date_format"),"content-loading":e(i),error:e(r).carbon_date_format.$error&&e(r).carbon_date_format.$errors[0].$message,required:""},{default:u(()=>[s(c,{modelValue:e(a).carbon_date_format,"onUpdate:modelValue":n[3]||(n[3]=o=>e(a).carbon_date_format=o),"content-loading":e(i),options:e(l).dateFormats,label:"display_date","value-prop":"carbon_format_value","track-by":"carbon_format_value",searchable:"",invalid:e(r).carbon_date_format.$error,class:"w-full"},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),s(_,{"content-loading":e(i),error:e(r).fiscal_year.$error&&e(r).fiscal_year.$errors[0].$message,label:t.$tc("settings.preferences.fiscal_year"),required:""},{default:u(()=>[s(c,{modelValue:e(a).fiscal_year,"onUpdate:modelValue":n[4]||(n[4]=o=>e(a).fiscal_year=o),"content-loading":e(i),options:e(l).config.fiscal_years,label:"key","value-prop":"value",invalid:e(r).fiscal_year.$error,"track-by":"key",searchable:!0,class:"w-full"},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["content-loading","error","label"])]),_:1}),s(q,{"content-loading":e(i),disabled:e(v),loading:e(v),type:"submit",class:"mt-6"},{left:u(o=>[s(w,{name:"SaveIcon",class:U(o.class)},null,8,["class"])]),default:u(()=>[z(" "+F(t.$tc("settings.company_info.save")),1)]),_:1},8,["content-loading","disabled","loading"]),s(I,{class:"mt-6 mb-2"}),N("ul",null,[N("form",{onSubmit:x(P,["prevent"])},[s(h,{modelValue:e(V),"onUpdate:modelValue":n[5]||(n[5]=o=>E(V)?V.value=o:null),title:t.$t("settings.preferences.expire_public_links"),description:t.$t("settings.preferences.expire_setting_description")},null,8,["modelValue","title","description"]),e(V)?(D(),X(_,{key:0,"content-loading":e(i),label:t.$t("settings.preferences.expire_public_links"),class:"mt-2 mb-4"},{default:u(()=>[s(T,{modelValue:e(a).link_expiry_days,"onUpdate:modelValue":n[6]||(n[6]=o=>e(a).link_expiry_days=o),disabled:e(a).automatically_expire_public_links==="NO","content-loading":e(i),type:"number"},null,8,["modelValue","disabled","content-loading"])]),_:1},8,["content-loading","label"])):ee("",!0),s(q,{"content-loading":e(i),disabled:e($),loading:e($),type:"submit",class:"mt-6"},{left:u(o=>[s(w,{name:"SaveIcon",class:U(o.class)},null,8,["class"])]),default:u(()=>[z(" "+F(t.$tc("general.save")),1)]),_:1},8,["content-loading","disabled","loading"])],40,le),s(I,{class:"mt-6 mb-2"}),s(h,{modelValue:e(k),"onUpdate:modelValue":n[7]||(n[7]=o=>E(k)?k.value=o:null),title:t.$t("settings.preferences.discount_per_item"),description:t.$t("settings.preferences.discount_setting_description")},null,8,["modelValue","title","description"])])]),_:1},8,["title","description"])],40,ne)}}};export{de as default}; diff --git a/public/build/assets/RecurringInvoiceCreate.e076e6ab.js b/public/build/assets/RecurringInvoiceCreate.8ea74176.js similarity index 85% rename from public/build/assets/RecurringInvoiceCreate.e076e6ab.js rename to public/build/assets/RecurringInvoiceCreate.8ea74176.js index 41ad4a0b0..7d7e66718 100644 --- a/public/build/assets/RecurringInvoiceCreate.e076e6ab.js +++ b/public/build/assets/RecurringInvoiceCreate.8ea74176.js @@ -1 +1 @@ -var Z=Object.defineProperty,ee=Object.defineProperties;var ne=Object.getOwnPropertyDescriptors;var N=Object.getOwnPropertySymbols;var ie=Object.prototype.hasOwnProperty,te=Object.prototype.propertyIsEnumerable;var j=(e,i,u)=>i in e?Z(e,i,{enumerable:!0,configurable:!0,writable:!0,value:u}):e[i]=u,D=(e,i)=>{for(var u in i||(i={}))ie.call(i,u)&&j(e,u,i[u]);if(N)for(var u of N(i))te.call(i,u)&&j(e,u,i[u]);return e},E=(e,i)=>ee(e,ne(i));import{G as P,B as k,a0 as re,k as q,C as O,D as ae,r as g,o as b,e as A,h as v,f as r,u as n,t as L,w as c,l as _,j as B,F as G,$ as oe,J as le,aN as se,L as I,M as p,O as U,aP as ce,T as ue,m as de,i as ge,U as ve}from"./vendor.01d0adc5.js";import{_ as me,a as fe,b as ye,c as be,d as Ie,e as $e,f as we}from"./SalesTax.0ff2d954.js";import{t as H,d as _e,b as Re,m as qe,r as pe}from"./main.75722495.js";import{_ as Be}from"./ExchangeRateConverter.7d8c4309.js";import{_ as he}from"./CreateCustomFields.a3a572c4.js";import{_ as Se}from"./TaxTypeModal.bf6662b3.js";import"./DragIcon.213b1d78.js";import"./SelectNotePopup.781ad74a.js";import"./NoteModal.f6d01f84.js";import"./payment.5c57bec3.js";import"./exchange-rate.dffa79b6.js";const Ve={class:"col-span-5 pr-0"},Ce={class:"flex mt-7"},Fe={class:"relative w-20 mt-8"},Le={class:"ml-2"},Te={class:"p-0 mb-1 leading-snug text-left text-black"},Me={class:"p-0 m-0 text-xs leading-tight text-left text-gray-500",style:{"max-width":"480px"}},ke={class:"grid grid-cols-1 col-span-7 gap-4 mt-8 lg:gap-6 lg:mt-0 lg:grid-cols-2"},Ue={props:{v:{type:Object,default:null},isLoading:{type:Boolean,default:!1},isEdit:{type:Boolean,default:!1}},setup(e){const i=e,u=P(),t=H(),V=_e(),$=k(!1),d=re([{label:"None",value:"NONE"},{label:"Date",value:"DATE"},{label:"Count",value:"COUNT"}]),m=q(()=>t.newRecurringInvoice.selectedFrequency&&t.newRecurringInvoice.selectedFrequency.value==="CUSTOM"),T=q(()=>i.isEdit?V.config.recurring_invoice_status.update_status:V.config.recurring_invoice_status.create_status);O(()=>t.newRecurringInvoice.selectedFrequency,l=>{t.isFetchingInitialSettings||(l&&l.value!=="CUSTOM"?t.newRecurringInvoice.frequency=l.value:t.newRecurringInvoice.frequency=null)}),ae(()=>{u.params.id||f()});function R(l){return t.newRecurringInvoice.limit_by===l}const C=oe(()=>{f()},500);async function f(){const l=t.newRecurringInvoice.frequency;if(!l)return;$.value=!0;let a={starts_at:t.newRecurringInvoice.starts_at,frequency:l};try{await t.fetchRecurringInvoiceFrequencyDate(a)}catch(h){console.error(h),$.value=!1}$.value=!1}return(l,a)=>{const h=g("BaseCustomerSelectPopup"),M=g("BaseSwitch"),w=g("BaseDatePicker"),y=g("BaseInputGroup"),S=g("BaseMultiselect"),s=g("BaseInput");return b(),A(G,null,[v("div",Ve,[r(h,{modelValue:n(t).newRecurringInvoice.customer,"onUpdate:modelValue":a[0]||(a[0]=o=>n(t).newRecurringInvoice.customer=o),valid:e.v.customer_id,"content-loading":e.isLoading,type:"recurring-invoice"},null,8,["modelValue","valid","content-loading"]),v("div",Ce,[v("div",Fe,[r(M,{modelValue:n(t).newRecurringInvoice.send_automatically,"onUpdate:modelValue":a[1]||(a[1]=o=>n(t).newRecurringInvoice.send_automatically=o),class:"absolute -top-4"},null,8,["modelValue"])]),v("div",Le,[v("p",Te,L(l.$t("recurring_invoices.send_automatically")),1),v("p",Me,L(l.$t("recurring_invoices.send_automatically_desc")),1)])])]),v("div",ke,[r(y,{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:c(()=>[r(w,{modelValue:n(t).newRecurringInvoice.starts_at,"onUpdate:modelValue":a[2]||(a[2]=o=>n(t).newRecurringInvoice.starts_at=o),"content-loading":e.isLoading,"calendar-button":!0,"calendar-button-icon":"calendar",invalid:e.v.starts_at.$error,onChange:a[3]||(a[3]=o=>f())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),r(y,{label:l.$t("recurring_invoices.next_invoice_date"),"content-loading":e.isLoading,required:""},{default:c(()=>[r(w,{modelValue:n(t).newRecurringInvoice.next_invoice_at,"onUpdate:modelValue":a[4]||(a[4]=o=>n(t).newRecurringInvoice.next_invoice_at=o),"content-loading":e.isLoading,"calendar-button":!0,disabled:!0,loading:$.value,"calendar-button-icon":"calendar"},null,8,["modelValue","content-loading","loading"])]),_:1},8,["label","content-loading"]),r(y,{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:c(()=>[r(S,{modelValue:n(t).newRecurringInvoice.limit_by,"onUpdate:modelValue":a[5]||(a[5]=o=>n(t).newRecurringInvoice.limit_by=o),"content-loading":e.isLoading,options:n(d),label:"label",invalid:e.v.limit_by.$error,"value-prop":"value"},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),R("DATE")?(b(),_(y,{key:0,label:l.$t("recurring_invoices.limit_date"),"content-loading":e.isLoading,required:R("DATE"),error:e.v.limit_date.$error&&e.v.limit_date.$errors[0].$message},{default:c(()=>[r(w,{modelValue:n(t).newRecurringInvoice.limit_date,"onUpdate:modelValue":a[6]||(a[6]=o=>n(t).newRecurringInvoice.limit_date=o),"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"])):B("",!0),R("COUNT")?(b(),_(y,{key:1,label:l.$t("recurring_invoices.count"),"content-loading":e.isLoading,required:R("COUNT"),error:e.v.limit_count.$error&&e.v.limit_count.$errors[0].$message},{default:c(()=>[r(s,{modelValue:n(t).newRecurringInvoice.limit_count,"onUpdate:modelValue":a[7]||(a[7]=o=>n(t).newRecurringInvoice.limit_count=o),"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"])):B("",!0),r(y,{label:l.$t("recurring_invoices.status"),required:"","content-loading":e.isLoading,error:e.v.status.$error&&e.v.status.$errors[0].$message},{default:c(()=>[r(S,{modelValue:n(t).newRecurringInvoice.status,"onUpdate:modelValue":a[8]||(a[8]=o=>n(t).newRecurringInvoice.status=o),options:n(T),"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(y,{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:c(()=>[r(S,{modelValue:n(t).newRecurringInvoice.selectedFrequency,"onUpdate:modelValue":a[9]||(a[9]=o=>n(t).newRecurringInvoice.selectedFrequency=o),"content-loading":e.isLoading,options:n(t).frequencies,label:"label",invalid:e.v.selectedFrequency.$error,object:"",onChange:f},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),n(m)?(b(),_(y,{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:c(()=>[r(s,{modelValue:n(t).newRecurringInvoice.frequency,"onUpdate:modelValue":[a[10]||(a[10]=o=>n(t).newRecurringInvoice.frequency=o),n(C)],"content-loading":e.isLoading,disabled:!n(m),invalid:e.v.frequency.$error,loading:$.value},null,8,["modelValue","content-loading","disabled","invalid","loading","onUpdate:modelValue"])]),_:1},8,["label","content-loading","error"])):B("",!0),r(Be,{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)}}},xe=["onSubmit"],Ne={class:"flex"},je={class:"grid-cols-12 gap-8 mt-6 mb-8 lg:grid"},De={class:"block mt-10 invoice-foot lg:flex lg:justify-between lg:items-start"},Ee={class:"w-full relative lg:w-1/2"},Ze={setup(e){const i=H(),u=Re(),t=qe(),V=pe(),$="newRecurringInvoice",{t:d}=le();let m=k(!1);const T=k(["customer","company","customerCustom","invoice","invoiceCustom"]);let R=P(),C=se(),f=q(()=>i.isFetchingInvoice||i.isFetchingInitialSettings),l=q(()=>a.value?d("recurring_invoices.edit_invoice"):d("recurring_invoices.new_invoice")),a=q(()=>R.name==="recurring-invoices.edit");const h=q(()=>u.selectedCompanySettings.sales_tax_us_enabled==="YES"&&V.salesTaxUSEnabled),M={starts_at:{required:I.withMessage(d("validation.required"),p)},status:{required:I.withMessage(d("validation.required"),p)},frequency:{required:I.withMessage(d("validation.required"),p)},limit_by:{required:I.withMessage(d("validation.required"),p)},limit_date:{required:I.withMessage(d("validation.required"),U(function(){return i.newRecurringInvoice.limit_by==="DATE"}))},limit_count:{required:I.withMessage(d("validation.required"),U(function(){return i.newRecurringInvoice.limit_by==="COUNT"}))},selectedFrequency:{required:I.withMessage(d("validation.required"),p)},customer_id:{required:I.withMessage(d("validation.required"),p)},exchange_rate:{required:U(function(){return I.withMessage(d("validation.required"),p),i.showExchangeRate}),decimal:I.withMessage(d("validation.valid_exchange_rate"),ce)}},w=ue(M,q(()=>i.newRecurringInvoice),{$scope:$});i.resetCurrentRecurringInvoice(),i.fetchRecurringInvoiceInitialSettings(a.value),t.resetCustomFields(),w.value.$reset,O(()=>i.newRecurringInvoice.customer,s=>{s&&s.currency?i.newRecurringInvoice.currency=s.currency:i.newRecurringInvoice.currency=u.selectedCompanyCurrency});async function y(){if(w.value.$touch(),w.value.$invalid)return!1;m.value=!0;let s=E(D({},i.newRecurringInvoice),{sub_total:i.getSubTotal,total:i.getTotal,tax:i.getTotalTax});R.params.id?i.updateRecurringInvoice(s).then(o=>{o.data.data&&C.push(`/admin/recurring-invoices/${o.data.data.id}/view`),m.value=!1}).catch(o=>{m.value=!1}):S(s)}function S(s){i.addRecurringInvoice(s).then(o=>{o.data.data&&C.push(`/admin/recurring-invoices/${o.data.data.id}/view`),m.value=!1}).catch(o=>{m.value=!1})}return(s,o)=>{const F=g("BaseBreadcrumbItem"),z=g("BaseBreadcrumb"),x=g("BaseButton"),J=g("router-link"),Y=g("BaseIcon"),K=g("BasePageHeader"),Q=g("BaseScrollPane"),W=g("BasePage");return b(),A(G,null,[r(me),r(fe),r(Se),n(h)&&!n(f)?(b(),_(ye,{key:0,store:n(i),"store-prop":"newRecurringInvoice","is-edit":n(a),customer:n(i).newRecurringInvoice.customer},null,8,["store","is-edit","customer"])):B("",!0),r(W,{class:"relative invoice-create-page"},{default:c(()=>[v("form",{onSubmit:ve(y,["prevent"])},[r(K,{title:n(l)},{actions:c(()=>[r(J,{to:`/invoices/pdf/${n(i).newRecurringInvoice.unique_hash}`},{default:c(()=>[s.$route.name==="invoices.edit"?(b(),_(x,{key:0,target:"_blank",class:"mr-3",variant:"primary-outline",type:"button"},{default:c(()=>[v("span",Ne,L(s.$t("general.view_pdf")),1)]),_:1})):B("",!0)]),_:1},8,["to"]),r(x,{loading:n(m),disabled:n(m),variant:"primary",type:"submit"},{left:c(X=>[n(m)?B("",!0):(b(),_(Y,{key:0,name:"SaveIcon",class:de(X.class)},null,8,["class"]))]),default:c(()=>[ge(" "+L(s.$t("recurring_invoices.save_invoice")),1)]),_:1},8,["loading","disabled"])]),default:c(()=>[r(z,null,{default:c(()=>[r(F,{title:s.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),r(F,{title:s.$t("recurring_invoices.title",2),to:"/admin/recurring-invoices"},null,8,["title"]),s.$route.name==="invoices.edit"?(b(),_(F,{key:0,title:s.$t("recurring_invoices.edit_invoice"),to:"#",active:""},null,8,["title"])):(b(),_(F,{key:1,title:n(l),to:"#",active:""},null,8,["title"]))]),_:1})]),_:1},8,["title"]),v("div",je,[r(Ue,{v:n(w),"is-loading":n(f),"is-edit":n(a)},null,8,["v","is-loading","is-edit"])]),r(Q,null,{default:c(()=>[r(be,{currency:n(i).newRecurringInvoice.currency,"is-loading":n(f),"item-validation-scope":$,store:n(i),"store-prop":"newRecurringInvoice"},null,8,["currency","is-loading","store"]),v("div",De,[v("div",Ee,[r(Ie,{store:n(i),"store-prop":"newRecurringInvoice",fields:T.value,type:"Invoice"},null,8,["store","fields"]),r(he,{type:"Invoice","is-edit":n(a),"is-loading":n(f),store:n(i),"store-prop":"newRecurringInvoice","custom-field-scope":$,class:"mb-6"},null,8,["is-edit","is-loading","store"]),r($e,{store:n(i),"store-prop":"newRecurringInvoice"},null,8,["store"])]),r(we,{currency:n(i).newRecurringInvoice.currency,"is-loading":n(f),store:n(i),"store-prop":"newRecurringInvoice","tax-popup-type":"invoice"},null,8,["currency","is-loading","store"])])]),_:1})],40,xe)]),_:1})],64)}}};export{Ze as default}; +var Z=Object.defineProperty,ee=Object.defineProperties;var ne=Object.getOwnPropertyDescriptors;var N=Object.getOwnPropertySymbols;var ie=Object.prototype.hasOwnProperty,te=Object.prototype.propertyIsEnumerable;var j=(e,i,u)=>i in e?Z(e,i,{enumerable:!0,configurable:!0,writable:!0,value:u}):e[i]=u,D=(e,i)=>{for(var u in i||(i={}))ie.call(i,u)&&j(e,u,i[u]);if(N)for(var u of N(i))te.call(i,u)&&j(e,u,i[u]);return e},E=(e,i)=>ee(e,ne(i));import{G as P,B as k,a0 as re,k as q,C as O,D as ae,r as g,o as y,e as A,h as v,f as r,u as n,t as L,w as c,l as _,j as B,F as G,$ as oe,J as le,aN as se,L as I,M as p,O as U,aP as ce,T as ue,m as de,i as ge,U as ve}from"./vendor.01d0adc5.js";import{_ as me,a as fe,b as be,c as ye,d as Ie,e as $e,f as we}from"./SalesTax.7ce396b6.js";import{t as H,d as _e,b as Re,m as qe,r as pe}from"./main.24f7a84b.js";import{_ as Be}from"./ExchangeRateConverter.285065a4.js";import{_ as he}from"./CreateCustomFields.8531ebe0.js";import{_ as Se}from"./TaxTypeModal.5b98d9fc.js";import"./DragIcon.0a950eb9.js";import"./SelectNotePopup.5f004c2c.js";import"./NoteModal.5bd3cf32.js";import"./payment.bb0c6e9e.js";import"./exchange-rate.3b3d35e2.js";const Ve={class:"col-span-5 pr-0"},Ce={class:"flex mt-7"},Fe={class:"relative w-20 mt-8"},Le={class:"ml-2"},Te={class:"p-0 mb-1 leading-snug text-left text-black"},Me={class:"p-0 m-0 text-xs leading-tight text-left text-gray-500",style:{"max-width":"480px"}},ke={class:"grid grid-cols-1 col-span-7 gap-4 mt-8 lg:gap-6 lg:mt-0 lg:grid-cols-2"},Ue={props:{v:{type:Object,default:null},isLoading:{type:Boolean,default:!1},isEdit:{type:Boolean,default:!1}},setup(e){const i=e,u=P(),t=H(),V=_e(),$=k(!1),d=re([{label:"None",value:"NONE"},{label:"Date",value:"DATE"},{label:"Count",value:"COUNT"}]),m=q(()=>t.newRecurringInvoice.selectedFrequency&&t.newRecurringInvoice.selectedFrequency.value==="CUSTOM"),T=q(()=>i.isEdit?V.config.recurring_invoice_status.update_status:V.config.recurring_invoice_status.create_status);O(()=>t.newRecurringInvoice.selectedFrequency,l=>{t.isFetchingInitialSettings||(l&&l.value!=="CUSTOM"?t.newRecurringInvoice.frequency=l.value:t.newRecurringInvoice.frequency=null)}),ae(()=>{u.params.id||f()});function R(l){return t.newRecurringInvoice.limit_by===l}const C=oe(()=>{f()},500);async function f(){const l=t.newRecurringInvoice.frequency;if(!l)return;$.value=!0;let a={starts_at:t.newRecurringInvoice.starts_at,frequency:l};try{await t.fetchRecurringInvoiceFrequencyDate(a)}catch(h){console.error(h),$.value=!1}$.value=!1}return(l,a)=>{const h=g("BaseCustomerSelectPopup"),M=g("BaseSwitch"),w=g("BaseDatePicker"),b=g("BaseInputGroup"),S=g("BaseMultiselect"),s=g("BaseInput");return y(),A(G,null,[v("div",Ve,[r(h,{modelValue:n(t).newRecurringInvoice.customer,"onUpdate:modelValue":a[0]||(a[0]=o=>n(t).newRecurringInvoice.customer=o),valid:e.v.customer_id,"content-loading":e.isLoading,type:"recurring-invoice"},null,8,["modelValue","valid","content-loading"]),v("div",Ce,[v("div",Fe,[r(M,{modelValue:n(t).newRecurringInvoice.send_automatically,"onUpdate:modelValue":a[1]||(a[1]=o=>n(t).newRecurringInvoice.send_automatically=o),class:"absolute -top-4"},null,8,["modelValue"])]),v("div",Le,[v("p",Te,L(l.$t("recurring_invoices.send_automatically")),1),v("p",Me,L(l.$t("recurring_invoices.send_automatically_desc")),1)])])]),v("div",ke,[r(b,{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:c(()=>[r(w,{modelValue:n(t).newRecurringInvoice.starts_at,"onUpdate:modelValue":a[2]||(a[2]=o=>n(t).newRecurringInvoice.starts_at=o),"content-loading":e.isLoading,"calendar-button":!0,"calendar-button-icon":"calendar",invalid:e.v.starts_at.$error,onChange:a[3]||(a[3]=o=>f())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","content-loading","error"]),r(b,{label:l.$t("recurring_invoices.next_invoice_date"),"content-loading":e.isLoading,required:""},{default:c(()=>[r(w,{modelValue:n(t).newRecurringInvoice.next_invoice_at,"onUpdate:modelValue":a[4]||(a[4]=o=>n(t).newRecurringInvoice.next_invoice_at=o),"content-loading":e.isLoading,"calendar-button":!0,disabled:!0,loading:$.value,"calendar-button-icon":"calendar"},null,8,["modelValue","content-loading","loading"])]),_:1},8,["label","content-loading"]),r(b,{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:c(()=>[r(S,{modelValue:n(t).newRecurringInvoice.limit_by,"onUpdate:modelValue":a[5]||(a[5]=o=>n(t).newRecurringInvoice.limit_by=o),"content-loading":e.isLoading,options:n(d),label:"label",invalid:e.v.limit_by.$error,"value-prop":"value"},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),R("DATE")?(y(),_(b,{key:0,label:l.$t("recurring_invoices.limit_date"),"content-loading":e.isLoading,required:R("DATE"),error:e.v.limit_date.$error&&e.v.limit_date.$errors[0].$message},{default:c(()=>[r(w,{modelValue:n(t).newRecurringInvoice.limit_date,"onUpdate:modelValue":a[6]||(a[6]=o=>n(t).newRecurringInvoice.limit_date=o),"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"])):B("",!0),R("COUNT")?(y(),_(b,{key:1,label:l.$t("recurring_invoices.count"),"content-loading":e.isLoading,required:R("COUNT"),error:e.v.limit_count.$error&&e.v.limit_count.$errors[0].$message},{default:c(()=>[r(s,{modelValue:n(t).newRecurringInvoice.limit_count,"onUpdate:modelValue":a[7]||(a[7]=o=>n(t).newRecurringInvoice.limit_count=o),"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"])):B("",!0),r(b,{label:l.$t("recurring_invoices.status"),required:"","content-loading":e.isLoading,error:e.v.status.$error&&e.v.status.$errors[0].$message},{default:c(()=>[r(S,{modelValue:n(t).newRecurringInvoice.status,"onUpdate:modelValue":a[8]||(a[8]=o=>n(t).newRecurringInvoice.status=o),options:n(T),"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(b,{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:c(()=>[r(S,{modelValue:n(t).newRecurringInvoice.selectedFrequency,"onUpdate:modelValue":a[9]||(a[9]=o=>n(t).newRecurringInvoice.selectedFrequency=o),"content-loading":e.isLoading,options:n(t).frequencies,label:"label",invalid:e.v.selectedFrequency.$error,object:"",onChange:f},null,8,["modelValue","content-loading","options","invalid"])]),_:1},8,["label","content-loading","error"]),n(m)?(y(),_(b,{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:c(()=>[r(s,{modelValue:n(t).newRecurringInvoice.frequency,"onUpdate:modelValue":[a[10]||(a[10]=o=>n(t).newRecurringInvoice.frequency=o),n(C)],"content-loading":e.isLoading,disabled:!n(m),invalid:e.v.frequency.$error,loading:$.value},null,8,["modelValue","content-loading","disabled","invalid","loading","onUpdate:modelValue"])]),_:1},8,["label","content-loading","error"])):B("",!0),r(Be,{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)}}},xe=["onSubmit"],Ne={class:"flex"},je={class:"grid-cols-12 gap-8 mt-6 mb-8 lg:grid"},De={class:"block mt-10 invoice-foot lg:flex lg:justify-between lg:items-start"},Ee={class:"w-full relative lg:w-1/2"},Ze={setup(e){const i=H(),u=Re(),t=qe(),V=pe(),$="newRecurringInvoice",{t:d}=le();let m=k(!1);const T=k(["customer","company","customerCustom","invoice","invoiceCustom"]);let R=P(),C=se(),f=q(()=>i.isFetchingInvoice||i.isFetchingInitialSettings),l=q(()=>a.value?d("recurring_invoices.edit_invoice"):d("recurring_invoices.new_invoice")),a=q(()=>R.name==="recurring-invoices.edit");const h=q(()=>u.selectedCompanySettings.sales_tax_us_enabled==="YES"&&V.salesTaxUSEnabled),M={starts_at:{required:I.withMessage(d("validation.required"),p)},status:{required:I.withMessage(d("validation.required"),p)},frequency:{required:I.withMessage(d("validation.required"),p)},limit_by:{required:I.withMessage(d("validation.required"),p)},limit_date:{required:I.withMessage(d("validation.required"),U(function(){return i.newRecurringInvoice.limit_by==="DATE"}))},limit_count:{required:I.withMessage(d("validation.required"),U(function(){return i.newRecurringInvoice.limit_by==="COUNT"}))},selectedFrequency:{required:I.withMessage(d("validation.required"),p)},customer_id:{required:I.withMessage(d("validation.required"),p)},exchange_rate:{required:U(function(){return I.withMessage(d("validation.required"),p),i.showExchangeRate}),decimal:I.withMessage(d("validation.valid_exchange_rate"),ce)}},w=ue(M,q(()=>i.newRecurringInvoice),{$scope:$});i.resetCurrentRecurringInvoice(),i.fetchRecurringInvoiceInitialSettings(a.value),t.resetCustomFields(),w.value.$reset,O(()=>i.newRecurringInvoice.customer,s=>{s&&s.currency?i.newRecurringInvoice.currency=s.currency:i.newRecurringInvoice.currency=u.selectedCompanyCurrency});async function b(){if(w.value.$touch(),w.value.$invalid)return!1;m.value=!0;let s=E(D({},i.newRecurringInvoice),{sub_total:i.getSubTotal,total:i.getTotal,tax:i.getTotalTax});R.params.id?i.updateRecurringInvoice(s).then(o=>{o.data.data&&C.push(`/admin/recurring-invoices/${o.data.data.id}/view`),m.value=!1}).catch(o=>{m.value=!1}):S(s)}function S(s){i.addRecurringInvoice(s).then(o=>{o.data.data&&C.push(`/admin/recurring-invoices/${o.data.data.id}/view`),m.value=!1}).catch(o=>{m.value=!1})}return(s,o)=>{const F=g("BaseBreadcrumbItem"),z=g("BaseBreadcrumb"),x=g("BaseButton"),J=g("router-link"),Y=g("BaseIcon"),K=g("BasePageHeader"),Q=g("BaseScrollPane"),W=g("BasePage");return y(),A(G,null,[r(me),r(fe),r(Se),n(h)&&!n(f)?(y(),_(be,{key:0,store:n(i),"store-prop":"newRecurringInvoice","is-edit":n(a),customer:n(i).newRecurringInvoice.customer},null,8,["store","is-edit","customer"])):B("",!0),r(W,{class:"relative invoice-create-page"},{default:c(()=>[v("form",{onSubmit:ve(b,["prevent"])},[r(K,{title:n(l)},{actions:c(()=>[r(J,{to:`/invoices/pdf/${n(i).newRecurringInvoice.unique_hash}`},{default:c(()=>[s.$route.name==="invoices.edit"?(y(),_(x,{key:0,target:"_blank",class:"mr-3",variant:"primary-outline",type:"button"},{default:c(()=>[v("span",Ne,L(s.$t("general.view_pdf")),1)]),_:1})):B("",!0)]),_:1},8,["to"]),r(x,{loading:n(m),disabled:n(m),variant:"primary",type:"submit"},{left:c(X=>[n(m)?B("",!0):(y(),_(Y,{key:0,name:"SaveIcon",class:de(X.class)},null,8,["class"]))]),default:c(()=>[ge(" "+L(s.$t("recurring_invoices.save_invoice")),1)]),_:1},8,["loading","disabled"])]),default:c(()=>[r(z,null,{default:c(()=>[r(F,{title:s.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),r(F,{title:s.$t("recurring_invoices.title",2),to:"/admin/recurring-invoices"},null,8,["title"]),s.$route.name==="invoices.edit"?(y(),_(F,{key:0,title:s.$t("recurring_invoices.edit_invoice"),to:"#",active:""},null,8,["title"])):(y(),_(F,{key:1,title:n(l),to:"#",active:""},null,8,["title"]))]),_:1})]),_:1},8,["title"]),v("div",je,[r(Ue,{v:n(w),"is-loading":n(f),"is-edit":n(a)},null,8,["v","is-loading","is-edit"])]),r(Q,null,{default:c(()=>[r(ye,{currency:n(i).newRecurringInvoice.currency,"is-loading":n(f),"item-validation-scope":$,store:n(i),"store-prop":"newRecurringInvoice"},null,8,["currency","is-loading","store"]),v("div",De,[v("div",Ee,[r(Ie,{store:n(i),"store-prop":"newRecurringInvoice",fields:T.value,type:"Invoice"},null,8,["store","fields"]),r(he,{type:"Invoice","is-edit":n(a),"is-loading":n(f),store:n(i),"store-prop":"newRecurringInvoice","custom-field-scope":$,class:"mb-6"},null,8,["is-edit","is-loading","store"]),r($e,{store:n(i),"store-prop":"newRecurringInvoice"},null,8,["store"])]),r(we,{currency:n(i).newRecurringInvoice.currency,"is-loading":n(f),store:n(i),"store-prop":"newRecurringInvoice","tax-popup-type":"invoice"},null,8,["currency","is-loading","store"])])]),_:1})],40,xe)]),_:1})],64)}}};export{Ze as default}; diff --git a/public/build/assets/RecurringInvoiceIndexDropdown.37d4a992.js b/public/build/assets/RecurringInvoiceIndexDropdown.44561f32.js similarity index 91% rename from public/build/assets/RecurringInvoiceIndexDropdown.37d4a992.js rename to public/build/assets/RecurringInvoiceIndexDropdown.44561f32.js index 264f6a816..80f02b41e 100644 --- a/public/build/assets/RecurringInvoiceIndexDropdown.37d4a992.js +++ b/public/build/assets/RecurringInvoiceIndexDropdown.44561f32.js @@ -1 +1 @@ -import{J as E,G as b,aN as k,ah as C,r as c,o as a,l as n,w as o,u as t,f as r,i as p,t as I,j as v}from"./vendor.01d0adc5.js";import{t as x,u as S,j as V,e as j,g as y}from"./main.75722495.js";const G={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:()=>{}}},setup(l){const _=l,g=x(),h=S(),N=V(),m=j(),{t:s}=E(),w=b();k(),C("utils");async function B(i=null){N.openDialog({title:s("general.are_you_sure"),message:s("invoices.confirm_delete"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async u=>{u&&await g.deleteMultipleRecurringInvoices(i).then(e=>{e.data.success?(_.table&&_.table.refresh(),g.$patch(d=>{d.selectedRecurringInvoices=[],d.selectAllField=!1}),h.showNotification({type:"success",message:s("recurring_invoices.deleted_message",2)})):e.data.error&&h.showNotification({type:"error",message:e.data.message})})})}return(i,u)=>{const e=c("BaseIcon"),d=c("BaseButton"),f=c("BaseDropdownItem"),R=c("router-link"),D=c("BaseDropdown");return a(),n(D,{"content-loading":t(g).isFetchingViewData},{activator:o(()=>[t(w).name==="recurring-invoices.view"?(a(),n(d,{key:0,variant:"primary"},{default:o(()=>[r(e,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(a(),n(e,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:o(()=>[t(m).hasAbilities(t(y).EDIT_RECURRING_INVOICE)?(a(),n(R,{key:0,to:`/admin/recurring-invoices/${l.row.id}/edit`},{default:o(()=>[r(f,null,{default:o(()=>[r(e,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),p(" "+I(i.$t("general.edit")),1)]),_:1})]),_:1},8,["to"])):v("",!0),t(w).name!=="recurring-invoices.view"&&t(m).hasAbilities(t(y).VIEW_RECURRING_INVOICE)?(a(),n(R,{key:1,to:`recurring-invoices/${l.row.id}/view`},{default:o(()=>[r(f,null,{default:o(()=>[r(e,{name:"EyeIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),p(" "+I(i.$t("general.view")),1)]),_:1})]),_:1},8,["to"])):v("",!0),t(m).hasAbilities(t(y).DELETE_RECURRING_INVOICE)?(a(),n(f,{key:2,onClick:u[0]||(u[0]=$=>B(l.row.id))},{default:o(()=>[r(e,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),p(" "+I(i.$t("general.delete")),1)]),_:1})):v("",!0)]),_:1},8,["content-loading"])}}};export{G as _}; +import{J as b,G as E,aN as k,ah as C,r as c,o as a,l as n,w as o,u as t,f as r,i as p,t as I,j as v}from"./vendor.01d0adc5.js";import{t as x,u as S,j as V,e as j,g as y}from"./main.24f7a84b.js";const G={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:()=>{}}},setup(l){const _=l,g=x(),h=S(),N=V(),m=j(),{t:s}=b(),w=E();k(),C("utils");async function B(i=null){N.openDialog({title:s("general.are_you_sure"),message:s("invoices.confirm_delete"),yesLabel:s("general.ok"),noLabel:s("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async u=>{u&&await g.deleteMultipleRecurringInvoices(i).then(e=>{e.data.success?(_.table&&_.table.refresh(),g.$patch(d=>{d.selectedRecurringInvoices=[],d.selectAllField=!1}),h.showNotification({type:"success",message:s("recurring_invoices.deleted_message",2)})):e.data.error&&h.showNotification({type:"error",message:e.data.message})})})}return(i,u)=>{const e=c("BaseIcon"),d=c("BaseButton"),f=c("BaseDropdownItem"),R=c("router-link"),D=c("BaseDropdown");return a(),n(D,{"content-loading":t(g).isFetchingViewData},{activator:o(()=>[t(w).name==="recurring-invoices.view"?(a(),n(d,{key:0,variant:"primary"},{default:o(()=>[r(e,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(a(),n(e,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:o(()=>[t(m).hasAbilities(t(y).EDIT_RECURRING_INVOICE)?(a(),n(R,{key:0,to:`/admin/recurring-invoices/${l.row.id}/edit`},{default:o(()=>[r(f,null,{default:o(()=>[r(e,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),p(" "+I(i.$t("general.edit")),1)]),_:1})]),_:1},8,["to"])):v("",!0),t(w).name!=="recurring-invoices.view"&&t(m).hasAbilities(t(y).VIEW_RECURRING_INVOICE)?(a(),n(R,{key:1,to:`recurring-invoices/${l.row.id}/view`},{default:o(()=>[r(f,null,{default:o(()=>[r(e,{name:"EyeIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),p(" "+I(i.$t("general.view")),1)]),_:1})]),_:1},8,["to"])):v("",!0),t(m).hasAbilities(t(y).DELETE_RECURRING_INVOICE)?(a(),n(f,{key:2,onClick:u[0]||(u[0]=$=>B(l.row.id))},{default:o(()=>[r(e,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),p(" "+I(i.$t("general.delete")),1)]),_:1})):v("",!0)]),_:1},8,["content-loading"])}}};export{G as _}; diff --git a/public/build/assets/ResetPassword.970ec316.js b/public/build/assets/ResetPassword.1eebc8d4.js similarity index 97% rename from public/build/assets/ResetPassword.970ec316.js rename to public/build/assets/ResetPassword.1eebc8d4.js index 389521304..fcc6be4ad 100644 --- a/public/build/assets/ResetPassword.970ec316.js +++ b/public/build/assets/ResetPassword.1eebc8d4.js @@ -1 +1 @@ -import{J as q,G as I,aN as h,a0 as N,B as S,k as d,M as w,Q as k,N as L,P,T as U,r as f,o as A,e as C,f as n,w as m,u as r,i as E,t as G,U as j,a as D}from"./vendor.01d0adc5.js";import{u as M,h as R}from"./main.75722495.js";const T=["onSubmit"],Q={setup(x){const v=M(),{t}=q(),c=I(),$=h(),o=N({email:"",password:"",password_confirmation:""}),u=S(!1),_=d(()=>({email:{required:w,email:k},password:{required:w,minLength:L(8)},password_confirmation:{sameAsPassword:P(o.password)}})),a=U(_,o),g=d(()=>a.value.email.$error?a.value.email.required.$invalid?t("validation.required"):a.value.email.email?t("validation.email_incorrect"):!1:""),b=d(()=>a.value.password.$error?a.value.password.required.$invalid?t("validation.required"):a.value.password.minLength?t("validation.password_min_length",{count:a.value.password.minLength.$params.min}):!1:""),V=d(()=>a.value.password_confirmation.$error?a.value.password_confirmation.sameAsPassword.$invalid?t("validation.password_incorrect"):!1:"");async function y(i){if(a.value.$touch(),!a.value.$invalid)try{let e={email:o.email,password:o.password,password_confirmation:o.password_confirmation,token:c.params.token};u.value=!0;let l=await D.post("/api/v1/auth/reset/password",e);u.value=!1,l.data&&(v.showNotification({type:"success",message:t("login.password_reset_successfully")}),$.push("/login"))}catch(e){R(e),u.value=!1,e.response&&e.response.status===403}}return(i,e)=>{const l=f("BaseInput"),p=f("BaseInputGroup"),B=f("BaseButton");return A(),C("form",{id:"loginForm",onSubmit:j(y,["prevent"])},[n(p,{error:r(g),label:i.$t("login.email"),class:"mb-4",required:""},{default:m(()=>[n(l,{modelValue:r(o).email,"onUpdate:modelValue":e[0]||(e[0]=s=>r(o).email=s),invalid:r(a).email.$error,focus:"",type:"email",name:"email",onInput:e[1]||(e[1]=s=>r(a).email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),n(p,{error:r(b),label:i.$t("login.password"),class:"mb-4",required:""},{default:m(()=>[n(l,{modelValue:r(o).password,"onUpdate:modelValue":e[2]||(e[2]=s=>r(o).password=s),invalid:r(a).password.$error,type:"password",name:"password",onInput:e[3]||(e[3]=s=>r(a).password.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),n(p,{error:r(V),label:i.$t("login.retype_password"),class:"mb-4",required:""},{default:m(()=>[n(l,{modelValue:r(o).password_confirmation,"onUpdate:modelValue":e[4]||(e[4]=s=>r(o).password_confirmation=s),invalid:r(a).password_confirmation.$error,type:"password",name:"password",onInput:e[5]||(e[5]=s=>r(a).password_confirmation.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),n(B,{loading:u.value,type:"submit",variant:"primary"},{default:m(()=>[E(G(i.$t("login.reset_password")),1)]),_:1},8,["loading"])],40,T)}}};export{Q as default}; +import{J as q,G as I,aN as h,a0 as N,B as S,k as d,M as w,Q as k,N as L,P,T as U,r as f,o as A,e as C,f as n,w as m,u as r,i as E,t as G,U as j,a as D}from"./vendor.01d0adc5.js";import{u as M,h as R}from"./main.24f7a84b.js";const T=["onSubmit"],Q={setup(x){const v=M(),{t}=q(),c=I(),$=h(),o=N({email:"",password:"",password_confirmation:""}),u=S(!1),_=d(()=>({email:{required:w,email:k},password:{required:w,minLength:L(8)},password_confirmation:{sameAsPassword:P(o.password)}})),a=U(_,o),g=d(()=>a.value.email.$error?a.value.email.required.$invalid?t("validation.required"):a.value.email.email?t("validation.email_incorrect"):!1:""),b=d(()=>a.value.password.$error?a.value.password.required.$invalid?t("validation.required"):a.value.password.minLength?t("validation.password_min_length",{count:a.value.password.minLength.$params.min}):!1:""),V=d(()=>a.value.password_confirmation.$error?a.value.password_confirmation.sameAsPassword.$invalid?t("validation.password_incorrect"):!1:"");async function y(i){if(a.value.$touch(),!a.value.$invalid)try{let e={email:o.email,password:o.password,password_confirmation:o.password_confirmation,token:c.params.token};u.value=!0;let l=await D.post("/api/v1/auth/reset/password",e);u.value=!1,l.data&&(v.showNotification({type:"success",message:t("login.password_reset_successfully")}),$.push("/login"))}catch(e){R(e),u.value=!1,e.response&&e.response.status===403}}return(i,e)=>{const l=f("BaseInput"),p=f("BaseInputGroup"),B=f("BaseButton");return A(),C("form",{id:"loginForm",onSubmit:j(y,["prevent"])},[n(p,{error:r(g),label:i.$t("login.email"),class:"mb-4",required:""},{default:m(()=>[n(l,{modelValue:r(o).email,"onUpdate:modelValue":e[0]||(e[0]=s=>r(o).email=s),invalid:r(a).email.$error,focus:"",type:"email",name:"email",onInput:e[1]||(e[1]=s=>r(a).email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),n(p,{error:r(b),label:i.$t("login.password"),class:"mb-4",required:""},{default:m(()=>[n(l,{modelValue:r(o).password,"onUpdate:modelValue":e[2]||(e[2]=s=>r(o).password=s),invalid:r(a).password.$error,type:"password",name:"password",onInput:e[3]||(e[3]=s=>r(a).password.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),n(p,{error:r(V),label:i.$t("login.retype_password"),class:"mb-4",required:""},{default:m(()=>[n(l,{modelValue:r(o).password_confirmation,"onUpdate:modelValue":e[4]||(e[4]=s=>r(o).password_confirmation=s),invalid:r(a).password_confirmation.$error,type:"password",name:"password",onInput:e[5]||(e[5]=s=>r(a).password_confirmation.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),n(B,{loading:u.value,type:"submit",variant:"primary"},{default:m(()=>[E(G(i.$t("login.reset_password")),1)]),_:1},8,["loading"])],40,T)}}};export{Q as default}; diff --git a/public/build/assets/ResetPassword.485b38b4.js b/public/build/assets/ResetPassword.485b38b4.js deleted file mode 100644 index d542443a6..000000000 --- a/public/build/assets/ResetPassword.485b38b4.js +++ /dev/null @@ -1 +0,0 @@ -import{G as S,aN as M,J as E,a0 as j,B as $,k as x,L as m,M as g,Q as C,N as G,P as L,T as N,r as u,o as c,e as P,f as n,w as p,u as e,l as _,x as y,i as U,t as A,U as R}from"./vendor.01d0adc5.js";import{u as D}from"./global.08b6a984.js";import{u as O}from"./auth.4644c288.js";import"./main.75722495.js";const T=["onSubmit"],K={setup(F){const f=S(),b=M(),B=O(),{t:i}=E(),r=j({email:"",password:"",password_confirmation:""});D();let a=$(!1),v=$(!1);const I=x(()=>({email:{required:m.withMessage(i("validation.required"),g),email:m.withMessage(i("validation.email_incorrect"),C)},password:{required:m.withMessage(i("validation.required"),g),minLength:m.withMessage(i("validation.password_min_length",{count:8}),G(8))},password_confirmation:{sameAsPassword:m.withMessage(i("validation.password_incorrect"),L(r.password))}})),s=N(I,r);async function V(l){if(s.value.$touch(),!s.value.$invalid){let o={email:r.email,password:r.password,password_confirmation:r.password_confirmation,token:f.params.token};v.value=!0;let d=B.resetPassword(o,f.params.company);v.value=!1,d.data&&b.push({name:"customer.login"})}}return(l,o)=>{const d=u("BaseInput"),w=u("BaseInputGroup"),k=u("EyeOffIcon"),h=u("EyeIcon"),q=u("BaseButton");return c(),P("form",{id:"loginForm",onSubmit:R(V,["prevent"])},[n(w,{error:e(s).email.$error&&e(s).email.$errors[0].$message,label:l.$t("login.email"),class:"mb-4",required:""},{default:p(()=>[n(d,{modelValue:e(r).email,"onUpdate:modelValue":o[0]||(o[0]=t=>e(r).email=t),type:"email",name:"email",invalid:e(s).email.$error,onInput:o[1]||(o[1]=t=>e(s).email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),n(w,{error:e(s).password.$error&&e(s).password.$errors[0].$message,label:l.$t("login.password"),class:"mb-4",required:""},{default:p(()=>[n(d,{modelValue:e(r).password,"onUpdate:modelValue":o[4]||(o[4]=t=>e(r).password=t),type:e(a)?"text":"password",name:"password",invalid:e(s).password.$error,onInput:o[5]||(o[5]=t=>e(s).password.$touch())},{right:p(()=>[e(a)?(c(),_(k,{key:0,class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:o[2]||(o[2]=t=>y(a)?a.value=!e(a):a=!e(a))})):(c(),_(h,{key:1,class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:o[3]||(o[3]=t=>y(a)?a.value=!e(a):a=!e(a))}))]),_:1},8,["modelValue","type","invalid"])]),_:1},8,["error","label"]),n(w,{error:e(s).password_confirmation.$error&&e(s).password_confirmation.$errors[0].$message,label:l.$t("login.retype_password"),class:"mb-4",required:""},{default:p(()=>[n(d,{modelValue:e(r).password_confirmation,"onUpdate:modelValue":o[6]||(o[6]=t=>e(r).password_confirmation=t),type:"password",name:"password",invalid:e(s).password_confirmation.$error,onInput:o[7]||(o[7]=t=>e(s).password_confirmation.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),n(q,{type:"submit",variant:"primary"},{default:p(()=>[U(A(l.$t("login.reset_password")),1)]),_:1})],40,T)}}};export{K as default}; diff --git a/public/build/assets/ResetPassword.d34fd48c.js b/public/build/assets/ResetPassword.d34fd48c.js new file mode 100644 index 000000000..d243b91e6 --- /dev/null +++ b/public/build/assets/ResetPassword.d34fd48c.js @@ -0,0 +1 @@ +import{G as S,aN as M,J as E,a0 as j,B as $,k as x,L as m,M as g,Q as C,N as G,P as L,T as N,r as u,o as f,e as P,f as n,w as p,u as e,l as _,x as y,i as U,t as A,U as R}from"./vendor.01d0adc5.js";import{u as D}from"./global.ab8f317c.js";import{u as O}from"./auth.0e030165.js";import"./main.24f7a84b.js";const T=["onSubmit"],K={setup(F){const c=S(),b=M(),B=O(),{t:i}=E(),r=j({email:"",password:"",password_confirmation:""});D();let s=$(!1),v=$(!1);const I=x(()=>({email:{required:m.withMessage(i("validation.required"),g),email:m.withMessage(i("validation.email_incorrect"),C)},password:{required:m.withMessage(i("validation.required"),g),minLength:m.withMessage(i("validation.password_min_length",{count:8}),G(8))},password_confirmation:{sameAsPassword:m.withMessage(i("validation.password_incorrect"),L(r.password))}})),a=N(I,r);async function V(l){if(a.value.$touch(),!a.value.$invalid){let o={email:r.email,password:r.password,password_confirmation:r.password_confirmation,token:c.params.token};v.value=!0;let d=B.resetPassword(o,c.params.company);v.value=!1,d.data&&b.push({name:"customer.login"})}}return(l,o)=>{const d=u("BaseInput"),w=u("BaseInputGroup"),k=u("EyeOffIcon"),h=u("EyeIcon"),q=u("BaseButton");return f(),P("form",{id:"loginForm",onSubmit:R(V,["prevent"])},[n(w,{error:e(a).email.$error&&e(a).email.$errors[0].$message,label:l.$t("login.email"),class:"mb-4",required:""},{default:p(()=>[n(d,{modelValue:e(r).email,"onUpdate:modelValue":o[0]||(o[0]=t=>e(r).email=t),type:"email",name:"email",invalid:e(a).email.$error,onInput:o[1]||(o[1]=t=>e(a).email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),n(w,{error:e(a).password.$error&&e(a).password.$errors[0].$message,label:l.$t("login.password"),class:"mb-4",required:""},{default:p(()=>[n(d,{modelValue:e(r).password,"onUpdate:modelValue":o[4]||(o[4]=t=>e(r).password=t),type:e(s)?"text":"password",name:"password",invalid:e(a).password.$error,onInput:o[5]||(o[5]=t=>e(a).password.$touch())},{right:p(()=>[e(s)?(f(),_(k,{key:0,class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:o[2]||(o[2]=t=>y(s)?s.value=!e(s):s=!e(s))})):(f(),_(h,{key:1,class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:o[3]||(o[3]=t=>y(s)?s.value=!e(s):s=!e(s))}))]),_:1},8,["modelValue","type","invalid"])]),_:1},8,["error","label"]),n(w,{error:e(a).password_confirmation.$error&&e(a).password_confirmation.$errors[0].$message,label:l.$t("login.retype_password"),class:"mb-4",required:""},{default:p(()=>[n(d,{modelValue:e(r).password_confirmation,"onUpdate:modelValue":o[6]||(o[6]=t=>e(r).password_confirmation=t),type:"password",name:"password",invalid:e(a).password_confirmation.$error,onInput:o[7]||(o[7]=t=>e(a).password_confirmation.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),n(q,{type:"submit",variant:"primary"},{default:p(()=>[U(A(l.$t("login.reset_password")),1)]),_:1})],40,T)}}};export{K as default}; diff --git a/public/build/assets/RolesSettings.3be3bc63.js b/public/build/assets/RolesSettings.94da2291.js similarity index 99% rename from public/build/assets/RolesSettings.3be3bc63.js rename to public/build/assets/RolesSettings.94da2291.js index 5324208ea..c103be8a9 100644 --- a/public/build/assets/RolesSettings.3be3bc63.js +++ b/public/build/assets/RolesSettings.94da2291.js @@ -1 +1 @@ -var te=Object.defineProperty;var J=Object.getOwnPropertySymbols;var se=Object.prototype.hasOwnProperty,ae=Object.prototype.propertyIsEnumerable;var X=(f,n,e)=>n in f?te(f,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):f[n]=e,K=(f,n)=>{for(var e in n||(n={}))se.call(n,e)&&X(f,e,n[e]);if(J)for(var e of J(n))ae.call(n,e)&&X(f,e,n[e]);return f};import{h as L,u as j,j as oe,e as Q,c as P,b as ie}from"./main.75722495.js";import{_ as ne,a as D,d as le,J as O,G as re,ah as de,r as g,o as _,l as I,w as m,u as c,f as h,i as C,t as w,j as V,B as z,k as U,L as T,M as W,N as ce,T as ue,h as y,e as E,y as Y,F,m as Z,U as me,V as fe}from"./vendor.01d0adc5.js";const q=(f=!1)=>{const n=f?window.pinia.defineStore:le,{global:e}=window.i18n;return n({id:"role",state:()=>({roles:[],allAbilities:[],selectedRoles:[],currentRole:{id:null,name:"",abilities:[]}}),getters:{isEdit:a=>!!a.currentRole.id,abilitiesList:a=>{let i=a.allAbilities.map(l=>K({modelName:l.model?l.model.substring(l.model.lastIndexOf("\\")+1):"Common",disabled:!1},l));return ne.groupBy(i,"modelName")}},actions:{fetchRoles(a){return new Promise((i,l)=>{D.get("/api/v1/roles",{params:a}).then(t=>{this.roles=t.data.data,i(t)}).catch(t=>{L(t),l(t)})})},fetchRole(a){return new Promise((i,l)=>{D.get(`/api/v1/roles/${a}`).then(t=>{this.currentRole.name=t.data.data.name,this.currentRole.id=t.data.data.id,t.data.data.abilities.forEach(r=>{for(const u in this.abilitiesList)this.abilitiesList[u].forEach(v=>{v.ability===r.name&&this.currentRole.abilities.push(v)})}),i(t)}).catch(t=>{L(t),l(t)})})},addRole(a){const i=j();return new Promise((l,t)=>{D.post("/api/v1/roles",a).then(r=>{this.roles.push(r.data.role),i.showNotification({type:"success",message:e.t("settings.roles.created_message")}),l(r)}).catch(r=>{L(r),t(r)})})},updateRole(a){const i=j();return new Promise((l,t)=>{D.put(`/api/v1/roles/${a.id}`,a).then(r=>{if(r.data){let u=this.roles.findIndex(v=>v.id===r.data.data.id);this.roles[u]=a.role,i.showNotification({type:"success",message:e.t("settings.roles.updated_message")})}l(r)}).catch(r=>{L(r),t(r)})})},fetchAbilities(a){return new Promise((i,l)=>{this.allAbilities.length?i(this.allAbilities):D.get("/api/v1/abilities",{params:a}).then(t=>{this.allAbilities=t.data.abilities,i(t)}).catch(t=>{L(t),l(t)})})},deleteRole(a){const i=j();return new Promise((l,t)=>{D.delete(`/api/v1/roles/${a}`).then(r=>{let u=this.roles.findIndex(v=>v.id===a);this.roles.splice(u,1),i.showNotification({type:"success",message:e.t("settings.roles.deleted_message")}),l(r)}).catch(r=>{L(r),t(r)})})}}})()},pe={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(f){const n=f,e=oe();j();const{t:a}=O(),i=q(),l=re(),t=Q(),r=P();de("utils");async function u(x){Promise.all([await i.fetchAbilities(),await i.fetchRole(x)]).then(()=>{r.openModal({title:a("settings.roles.edit_role"),componentName:"RolesModal",size:"lg",refreshData:n.loadData})})}async function v(x){e.openDialog({title:a("general.are_you_sure"),message:a("settings.roles.confirm_delete"),yesLabel:a("general.ok"),noLabel:a("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async b=>{b&&await i.deleteRole(x).then(R=>{R.data&&n.loadData&&n.loadData()})})}return(x,b)=>{const R=g("BaseIcon"),B=g("BaseButton"),s=g("BaseDropdownItem"),d=g("BaseDropdown");return _(),I(d,null,{activator:m(()=>[c(l).name==="roles.view"?(_(),I(B,{key:0,variant:"primary"},{default:m(()=>[h(R,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(_(),I(R,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:m(()=>[c(t).currentUser.is_owner?(_(),I(s,{key:0,onClick:b[0]||(b[0]=p=>u(f.row.id))},{default:m(()=>[h(R,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),C(" "+w(x.$t("general.edit")),1)]),_:1})):V("",!0),c(t).currentUser.is_owner?(_(),I(s,{key:1,onClick:b[1]||(b[1]=p=>v(f.row.id))},{default:m(()=>[h(R,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),C(" "+w(x.$t("general.delete")),1)]),_:1})):V("",!0)]),_:1})}}},he={class:"flex justify-between w-full"},be=["onSubmit"],ge={class:"px-4 md:px-8 py-4 md:py-6"},_e={class:"flex justify-between"},ye={class:"text-sm not-italic font-medium text-gray-800 px-4 md:px-8 py-1.5"},ve=y("span",{class:"text-sm text-red-500"}," *",-1),we={class:"text-sm not-italic font-medium text-gray-300 px-4 md:px-8 py-1.5"},Be=C(" / "),xe={class:"border-t border-gray-200 py-3"},Re={class:"grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-4 px-8 sm:px-8"},$e={class:"text-sm text-gray-500 border-b border-gray-200 pb-1 mb-2"},Se={key:0,class:"block mt-0.5 text-sm text-red-500"},ke={class:"z-0 flex justify-end p-4 border-t border-solid border--200 border-modal-bg"},Ce={setup(f){const n=P(),e=q(),{t:a}=O();let i=z(!1),l=z(!1);const t=U(()=>n.active&&n.componentName==="RolesModal"),r=U(()=>({name:{required:T.withMessage(a("validation.required"),W),minLength:T.withMessage(a("validation.name_min_length",{count:3}),ce(3))},abilities:{required:T.withMessage(a("validation.at_least_one_ability"),W)}})),u=ue(r,U(()=>e.currentRole));async function v(){if(u.value.$touch(),u.value.$invalid)return!0;try{const s=e.isEdit?e.updateRole:e.addRole;i.value=!0,await s(e.currentRole),i.value=!1,n.refreshData&&n.refreshData(),B()}catch{return i.value=!1,!0}}function x(s){var p,o;if(!e.currentRole.abilities.find($=>$.ability===s.ability)&&((p=s==null?void 0:s.depends_on)==null?void 0:p.length)){R(s);return}(o=s==null?void 0:s.depends_on)==null||o.forEach($=>{Object.keys(e.abilitiesList).forEach(M=>{e.abilitiesList[M].forEach(k=>{$===k.ability&&(k.disabled=!0,e.currentRole.abilities.find(S=>S.ability===$)||e.currentRole.abilities.push(k))})})})}function b(s){let d=[];Object.keys(e.abilitiesList).forEach(p=>{e.abilitiesList[p].forEach(o=>{(o==null?void 0:o.depends_on)&&(d=[...d,...o.depends_on])})}),Object.keys(e.abilitiesList).forEach(p=>{e.abilitiesList[p].forEach(o=>{d.includes(o.ability)&&(s?o.disabled=!0:o.disabled=!1),e.currentRole.abilities.push(o)})}),s||(e.currentRole.abilities=[])}function R(s){s.depends_on.forEach(d=>{Object.keys(e.abilitiesList).forEach(p=>{e.abilitiesList[p].forEach(o=>{let $=e.currentRole.abilities.find(M=>{var k;return(k=M.depends_on)==null?void 0:k.includes(o.ability)});d===o.ability&&!$&&(o.disabled=!1)})})})}function B(){n.closeModal(),setTimeout(()=>{e.currentRole={id:null,name:"",abilities:[]},Object.keys(e.abilitiesList).forEach(s=>{e.abilitiesList[s].forEach(d=>{d.disabled=!1})}),u.value.$reset()},300)}return(s,d)=>{const p=g("BaseIcon"),o=g("BaseInput"),$=g("BaseInputGroup"),M=g("BaseCheckbox"),k=g("BaseButton"),G=g("BaseModal");return _(),I(G,{show:c(t),onClose:B},{header:m(()=>[y("div",he,[C(w(c(n).title)+" ",1),h(p,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:B})])]),default:m(()=>[y("form",{onSubmit:me(v,["prevent"])},[y("div",ge,[h($,{label:s.$t("settings.roles.name"),class:"mt-3",error:c(u).name.$error&&c(u).name.$errors[0].$message,required:"","content-loading":c(l)},{default:m(()=>[h(o,{modelValue:c(e).currentRole.name,"onUpdate:modelValue":d[0]||(d[0]=S=>c(e).currentRole.name=S),invalid:c(u).name.$error,type:"text","content-loading":c(l),onInput:d[1]||(d[1]=S=>c(u).name.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","error","content-loading"])]),y("div",_e,[y("h6",ye,[C(w(s.$tc("settings.roles.permission",2))+" ",1),ve]),y("div",we,[y("a",{class:"cursor-pointer text-primary-400",onClick:d[2]||(d[2]=S=>b(!0))},w(s.$t("settings.roles.select_all")),1),Be,y("a",{class:"cursor-pointer text-primary-400",onClick:d[3]||(d[3]=S=>b(!1))},w(s.$t("settings.roles.none")),1)])]),y("div",xe,[y("div",Re,[(_(!0),E(F,null,Y(c(e).abilitiesList,(S,H)=>(_(),E("div",{key:H,class:"flex flex-col space-y-1"},[y("p",$e,w(H),1),(_(!0),E(F,null,Y(S,(N,ee)=>(_(),E("div",{key:ee,class:"flex"},[h(M,{modelValue:c(e).currentRole.abilities,"onUpdate:modelValue":[d[4]||(d[4]=A=>c(e).currentRole.abilities=A),A=>x(N)],"set-initial-value":!0,variant:"primary",disabled:N.disabled,label:N.name,value:N},null,8,["modelValue","disabled","label","value","onUpdate:modelValue"])]))),128))]))),128)),c(u).abilities.$error?(_(),E("span",Se,w(c(u).abilities.$errors[0].$message),1)):V("",!0)])]),y("div",ke,[h(k,{class:"mr-3 text-sm",variant:"primary-outline",type:"button",onClick:B},{default:m(()=>[C(w(s.$t("general.cancel")),1)]),_:1}),h(k,{loading:c(i),disabled:c(i),variant:"primary",type:"submit"},{left:m(S=>[h(p,{name:"SaveIcon",class:Z(S.class)},null,8,["class"])]),default:m(()=>[C(" "+w(c(e).isEdit?s.$t("general.update"):s.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,be)]),_:1},8,["show"])}}},Ee={setup(f){const n=P(),e=q(),a=Q(),i=ie(),{t:l}=O(),t=z(null),r=U(()=>[{key:"name",label:l("settings.roles.role_name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"created_at",label:l("settings.roles.added_on"),tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function u({page:b,filter:R,sort:B}){let s={orderByField:B.fieldName||"created_at",orderBy:B.order||"desc",company_id:i.selectedCompany.id};return{data:(await e.fetchRoles(s)).data.data}}async function v(){t.value&&t.value.refresh()}async function x(){await e.fetchAbilities(),n.openModal({title:l("settings.roles.add_role"),componentName:"RolesModal",size:"lg",refreshData:t.value&&t.value.refresh})}return(b,R)=>{const B=g("BaseIcon"),s=g("BaseButton"),d=g("BaseTable"),p=g("BaseSettingCard");return _(),E(F,null,[h(Ce),h(p,{title:b.$t("settings.roles.title"),description:b.$t("settings.roles.description")},fe({default:m(()=>[h(d,{ref:(o,$)=>{$.table=o,t.value=o},data:u,columns:c(r),class:"mt-14"},{"cell-created_at":m(({row:o})=>[C(w(o.data.formatted_created_at),1)]),"cell-actions":m(({row:o})=>[c(a).currentUser.is_owner&&o.data.name!=="super admin"?(_(),I(pe,{key:0,row:o.data,table:t.value,"load-data":v},null,8,["row","table"])):V("",!0)]),_:1},8,["columns"])]),_:2},[c(a).currentUser.is_owner?{name:"action",fn:m(()=>[h(s,{variant:"primary-outline",onClick:x},{left:m(o=>[h(B,{name:"PlusIcon",class:Z(o.class)},null,8,["class"])]),default:m(()=>[C(" "+w(b.$t("settings.roles.add_new_role")),1)]),_:1})])}:void 0]),1032,["title","description"])],64)}}};export{Ee as default}; +var te=Object.defineProperty;var J=Object.getOwnPropertySymbols;var se=Object.prototype.hasOwnProperty,ae=Object.prototype.propertyIsEnumerable;var X=(f,n,e)=>n in f?te(f,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):f[n]=e,K=(f,n)=>{for(var e in n||(n={}))se.call(n,e)&&X(f,e,n[e]);if(J)for(var e of J(n))ae.call(n,e)&&X(f,e,n[e]);return f};import{h as L,u as j,j as oe,e as Q,c as P,b as ie}from"./main.24f7a84b.js";import{_ as ne,a as D,d as le,J as O,G as re,ah as de,r as g,o as _,l as I,w as m,u as c,f as h,i as C,t as w,j as V,B as z,k as U,L as T,M as W,N as ce,T as ue,h as y,e as E,y as Y,F,m as Z,U as me,V as fe}from"./vendor.01d0adc5.js";const q=(f=!1)=>{const n=f?window.pinia.defineStore:le,{global:e}=window.i18n;return n({id:"role",state:()=>({roles:[],allAbilities:[],selectedRoles:[],currentRole:{id:null,name:"",abilities:[]}}),getters:{isEdit:a=>!!a.currentRole.id,abilitiesList:a=>{let i=a.allAbilities.map(l=>K({modelName:l.model?l.model.substring(l.model.lastIndexOf("\\")+1):"Common",disabled:!1},l));return ne.groupBy(i,"modelName")}},actions:{fetchRoles(a){return new Promise((i,l)=>{D.get("/api/v1/roles",{params:a}).then(t=>{this.roles=t.data.data,i(t)}).catch(t=>{L(t),l(t)})})},fetchRole(a){return new Promise((i,l)=>{D.get(`/api/v1/roles/${a}`).then(t=>{this.currentRole.name=t.data.data.name,this.currentRole.id=t.data.data.id,t.data.data.abilities.forEach(r=>{for(const u in this.abilitiesList)this.abilitiesList[u].forEach(v=>{v.ability===r.name&&this.currentRole.abilities.push(v)})}),i(t)}).catch(t=>{L(t),l(t)})})},addRole(a){const i=j();return new Promise((l,t)=>{D.post("/api/v1/roles",a).then(r=>{this.roles.push(r.data.role),i.showNotification({type:"success",message:e.t("settings.roles.created_message")}),l(r)}).catch(r=>{L(r),t(r)})})},updateRole(a){const i=j();return new Promise((l,t)=>{D.put(`/api/v1/roles/${a.id}`,a).then(r=>{if(r.data){let u=this.roles.findIndex(v=>v.id===r.data.data.id);this.roles[u]=a.role,i.showNotification({type:"success",message:e.t("settings.roles.updated_message")})}l(r)}).catch(r=>{L(r),t(r)})})},fetchAbilities(a){return new Promise((i,l)=>{this.allAbilities.length?i(this.allAbilities):D.get("/api/v1/abilities",{params:a}).then(t=>{this.allAbilities=t.data.abilities,i(t)}).catch(t=>{L(t),l(t)})})},deleteRole(a){const i=j();return new Promise((l,t)=>{D.delete(`/api/v1/roles/${a}`).then(r=>{let u=this.roles.findIndex(v=>v.id===a);this.roles.splice(u,1),i.showNotification({type:"success",message:e.t("settings.roles.deleted_message")}),l(r)}).catch(r=>{L(r),t(r)})})}}})()},pe={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(f){const n=f,e=oe();j();const{t:a}=O(),i=q(),l=re(),t=Q(),r=P();de("utils");async function u(x){Promise.all([await i.fetchAbilities(),await i.fetchRole(x)]).then(()=>{r.openModal({title:a("settings.roles.edit_role"),componentName:"RolesModal",size:"lg",refreshData:n.loadData})})}async function v(x){e.openDialog({title:a("general.are_you_sure"),message:a("settings.roles.confirm_delete"),yesLabel:a("general.ok"),noLabel:a("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async b=>{b&&await i.deleteRole(x).then(R=>{R.data&&n.loadData&&n.loadData()})})}return(x,b)=>{const R=g("BaseIcon"),B=g("BaseButton"),s=g("BaseDropdownItem"),d=g("BaseDropdown");return _(),I(d,null,{activator:m(()=>[c(l).name==="roles.view"?(_(),I(B,{key:0,variant:"primary"},{default:m(()=>[h(R,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(_(),I(R,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:m(()=>[c(t).currentUser.is_owner?(_(),I(s,{key:0,onClick:b[0]||(b[0]=p=>u(f.row.id))},{default:m(()=>[h(R,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),C(" "+w(x.$t("general.edit")),1)]),_:1})):V("",!0),c(t).currentUser.is_owner?(_(),I(s,{key:1,onClick:b[1]||(b[1]=p=>v(f.row.id))},{default:m(()=>[h(R,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),C(" "+w(x.$t("general.delete")),1)]),_:1})):V("",!0)]),_:1})}}},he={class:"flex justify-between w-full"},be=["onSubmit"],ge={class:"px-4 md:px-8 py-4 md:py-6"},_e={class:"flex justify-between"},ye={class:"text-sm not-italic font-medium text-gray-800 px-4 md:px-8 py-1.5"},ve=y("span",{class:"text-sm text-red-500"}," *",-1),we={class:"text-sm not-italic font-medium text-gray-300 px-4 md:px-8 py-1.5"},Be=C(" / "),xe={class:"border-t border-gray-200 py-3"},Re={class:"grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-4 px-8 sm:px-8"},$e={class:"text-sm text-gray-500 border-b border-gray-200 pb-1 mb-2"},Se={key:0,class:"block mt-0.5 text-sm text-red-500"},ke={class:"z-0 flex justify-end p-4 border-t border-solid border--200 border-modal-bg"},Ce={setup(f){const n=P(),e=q(),{t:a}=O();let i=z(!1),l=z(!1);const t=U(()=>n.active&&n.componentName==="RolesModal"),r=U(()=>({name:{required:T.withMessage(a("validation.required"),W),minLength:T.withMessage(a("validation.name_min_length",{count:3}),ce(3))},abilities:{required:T.withMessage(a("validation.at_least_one_ability"),W)}})),u=ue(r,U(()=>e.currentRole));async function v(){if(u.value.$touch(),u.value.$invalid)return!0;try{const s=e.isEdit?e.updateRole:e.addRole;i.value=!0,await s(e.currentRole),i.value=!1,n.refreshData&&n.refreshData(),B()}catch{return i.value=!1,!0}}function x(s){var p,o;if(!e.currentRole.abilities.find($=>$.ability===s.ability)&&((p=s==null?void 0:s.depends_on)==null?void 0:p.length)){R(s);return}(o=s==null?void 0:s.depends_on)==null||o.forEach($=>{Object.keys(e.abilitiesList).forEach(M=>{e.abilitiesList[M].forEach(k=>{$===k.ability&&(k.disabled=!0,e.currentRole.abilities.find(S=>S.ability===$)||e.currentRole.abilities.push(k))})})})}function b(s){let d=[];Object.keys(e.abilitiesList).forEach(p=>{e.abilitiesList[p].forEach(o=>{(o==null?void 0:o.depends_on)&&(d=[...d,...o.depends_on])})}),Object.keys(e.abilitiesList).forEach(p=>{e.abilitiesList[p].forEach(o=>{d.includes(o.ability)&&(s?o.disabled=!0:o.disabled=!1),e.currentRole.abilities.push(o)})}),s||(e.currentRole.abilities=[])}function R(s){s.depends_on.forEach(d=>{Object.keys(e.abilitiesList).forEach(p=>{e.abilitiesList[p].forEach(o=>{let $=e.currentRole.abilities.find(M=>{var k;return(k=M.depends_on)==null?void 0:k.includes(o.ability)});d===o.ability&&!$&&(o.disabled=!1)})})})}function B(){n.closeModal(),setTimeout(()=>{e.currentRole={id:null,name:"",abilities:[]},Object.keys(e.abilitiesList).forEach(s=>{e.abilitiesList[s].forEach(d=>{d.disabled=!1})}),u.value.$reset()},300)}return(s,d)=>{const p=g("BaseIcon"),o=g("BaseInput"),$=g("BaseInputGroup"),M=g("BaseCheckbox"),k=g("BaseButton"),G=g("BaseModal");return _(),I(G,{show:c(t),onClose:B},{header:m(()=>[y("div",he,[C(w(c(n).title)+" ",1),h(p,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:B})])]),default:m(()=>[y("form",{onSubmit:me(v,["prevent"])},[y("div",ge,[h($,{label:s.$t("settings.roles.name"),class:"mt-3",error:c(u).name.$error&&c(u).name.$errors[0].$message,required:"","content-loading":c(l)},{default:m(()=>[h(o,{modelValue:c(e).currentRole.name,"onUpdate:modelValue":d[0]||(d[0]=S=>c(e).currentRole.name=S),invalid:c(u).name.$error,type:"text","content-loading":c(l),onInput:d[1]||(d[1]=S=>c(u).name.$touch())},null,8,["modelValue","invalid","content-loading"])]),_:1},8,["label","error","content-loading"])]),y("div",_e,[y("h6",ye,[C(w(s.$tc("settings.roles.permission",2))+" ",1),ve]),y("div",we,[y("a",{class:"cursor-pointer text-primary-400",onClick:d[2]||(d[2]=S=>b(!0))},w(s.$t("settings.roles.select_all")),1),Be,y("a",{class:"cursor-pointer text-primary-400",onClick:d[3]||(d[3]=S=>b(!1))},w(s.$t("settings.roles.none")),1)])]),y("div",xe,[y("div",Re,[(_(!0),E(F,null,Y(c(e).abilitiesList,(S,H)=>(_(),E("div",{key:H,class:"flex flex-col space-y-1"},[y("p",$e,w(H),1),(_(!0),E(F,null,Y(S,(N,ee)=>(_(),E("div",{key:ee,class:"flex"},[h(M,{modelValue:c(e).currentRole.abilities,"onUpdate:modelValue":[d[4]||(d[4]=A=>c(e).currentRole.abilities=A),A=>x(N)],"set-initial-value":!0,variant:"primary",disabled:N.disabled,label:N.name,value:N},null,8,["modelValue","disabled","label","value","onUpdate:modelValue"])]))),128))]))),128)),c(u).abilities.$error?(_(),E("span",Se,w(c(u).abilities.$errors[0].$message),1)):V("",!0)])]),y("div",ke,[h(k,{class:"mr-3 text-sm",variant:"primary-outline",type:"button",onClick:B},{default:m(()=>[C(w(s.$t("general.cancel")),1)]),_:1}),h(k,{loading:c(i),disabled:c(i),variant:"primary",type:"submit"},{left:m(S=>[h(p,{name:"SaveIcon",class:Z(S.class)},null,8,["class"])]),default:m(()=>[C(" "+w(c(e).isEdit?s.$t("general.update"):s.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,be)]),_:1},8,["show"])}}},Ee={setup(f){const n=P(),e=q(),a=Q(),i=ie(),{t:l}=O(),t=z(null),r=U(()=>[{key:"name",label:l("settings.roles.role_name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"created_at",label:l("settings.roles.added_on"),tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function u({page:b,filter:R,sort:B}){let s={orderByField:B.fieldName||"created_at",orderBy:B.order||"desc",company_id:i.selectedCompany.id};return{data:(await e.fetchRoles(s)).data.data}}async function v(){t.value&&t.value.refresh()}async function x(){await e.fetchAbilities(),n.openModal({title:l("settings.roles.add_role"),componentName:"RolesModal",size:"lg",refreshData:t.value&&t.value.refresh})}return(b,R)=>{const B=g("BaseIcon"),s=g("BaseButton"),d=g("BaseTable"),p=g("BaseSettingCard");return _(),E(F,null,[h(Ce),h(p,{title:b.$t("settings.roles.title"),description:b.$t("settings.roles.description")},fe({default:m(()=>[h(d,{ref:(o,$)=>{$.table=o,t.value=o},data:u,columns:c(r),class:"mt-14"},{"cell-created_at":m(({row:o})=>[C(w(o.data.formatted_created_at),1)]),"cell-actions":m(({row:o})=>[c(a).currentUser.is_owner&&o.data.name!=="super admin"?(_(),I(pe,{key:0,row:o.data,table:t.value,"load-data":v},null,8,["row","table"])):V("",!0)]),_:1},8,["columns"])]),_:2},[c(a).currentUser.is_owner?{name:"action",fn:m(()=>[h(s,{variant:"primary-outline",onClick:x},{left:m(o=>[h(B,{name:"PlusIcon",class:Z(o.class)},null,8,["class"])]),default:m(()=>[C(" "+w(b.$t("settings.roles.add_new_role")),1)]),_:1})])}:void 0]),1032,["title","description"])],64)}}};export{Ee as default}; diff --git a/public/build/assets/SalesTax.0ff2d954.js b/public/build/assets/SalesTax.7ce396b6.js similarity index 99% rename from public/build/assets/SalesTax.0ff2d954.js rename to public/build/assets/SalesTax.7ce396b6.js index 3ddf5b5a2..23c28cced 100644 --- a/public/build/assets/SalesTax.0ff2d954.js +++ b/public/build/assets/SalesTax.7ce396b6.js @@ -1 +1 @@ -var Ie=Object.defineProperty,Se=Object.defineProperties;var Pe=Object.getOwnPropertyDescriptors;var me=Object.getOwnPropertySymbols;var Te=Object.prototype.hasOwnProperty,ke=Object.prototype.propertyIsEnumerable;var pe=(t,s,e)=>s in t?Ie(t,s,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[s]=e,N=(t,s)=>{for(var e in s||(s={}))Te.call(s,e)&&pe(t,e,s[e]);if(me)for(var e of me(s))ke.call(s,e)&&pe(t,e,s[e]);return t},G=(t,s)=>Se(t,Pe(s));import{q as ee,c as H,e as ye,b as te,p as xe,g as ne,T as Ce,k as Me,u as De,d as Ve}from"./main.75722495.js";import{D as je,d as qe}from"./DragIcon.213b1d78.js";import{B as W,a0 as fe,ah as ae,J,k as B,C as re,r as p,o as l,e as v,h as a,t as _,f as n,V as Le,u as o,w as c,i as E,l as j,j as A,G as Ee,A as Z,L as U,M as R,b2 as ge,S as oe,aX as Ae,T as le,x as K,F as Q,y as se,H as he,a7 as Oe,W as Ue,m as X,Y as ze,X as Ne,Z as Fe,N as Ye,D as _e,U as be}from"./vendor.01d0adc5.js";import{_ as Ge}from"./SelectNotePopup.781ad74a.js";const We={class:"flex items-center justify-between mb-3"},Re={class:"flex items-center text-base",style:{flex:"4"}},Xe={class:"pr-2 mb-0",align:"right"},He={class:"absolute left-3.5"},Je={class:"ml-2 text-sm leading-none text-primary-400 cursor-pointer"},Ze=a("br",null,null,-1),Ke={class:"text-sm text-right",style:{flex:"3"}},Qe={class:"flex items-center justify-center w-6 h-10 mx-2 cursor-pointer"},et={props:{ability:{type:String,default:""},store:{type:Object,default:null},storeProp:{type:String,default:""},itemIndex:{type:Number,required:!0},index:{type:Number,required:!0},taxData:{type:Object,required:!0},taxes:{type:Array,default:[]},total:{type:Number,default:0},totalTax:{type:Number,default:0},currency:{type:[Object,String],required:!0},updateItems:{type:Function,default:()=>{}}},emits:["remove","update"],setup(t,{emit:s}){const e=t,d=ee(),w=H(),$=ye(),I=W(null),y=fe(N({},e.taxData));ae("utils");const{t:C}=J(),m=B(()=>d.taxTypes.map(h=>N({},h)).map(h=>(e.taxes.find(x=>x.tax_type_id===h.id)?h.disabled=!0:h.disabled=!1,h))),q=B(()=>y.compound_tax&&e.total?(e.total+e.totalTax)*y.percent/100:e.total&&y.percent?e.total*y.percent/100:0);re(()=>e.total,()=>{T()}),re(()=>e.totalTax,()=>{T()}),e.taxData.tax_type_id>0&&(I.value=d.taxTypes.find(u=>u.id===e.taxData.tax_type_id)),T();function V(u){y.percent=u.percent,y.tax_type_id=u.id,y.compound_tax=u.compound_tax,y.name=u.name,T()}function T(){y.tax_type_id!==0&&s("update",{index:e.index,item:G(N({},y),{amount:q.value})})}function i(){let u={itemIndex:e.itemIndex,taxIndex:e.index};w.openModal({title:C("settings.tax_types.add_tax"),componentName:"TaxTypeModal",data:u,size:"sm"})}function r(u){e.store.$patch(h=>{h[e.storeProp].items[e.itemIndex].taxes.splice(u,1)})}return(u,h)=>{const M=p("BaseIcon"),x=p("BaseMultiselect"),D=p("BaseFormatMoney");return l(),v("div",We,[a("div",Re,[a("label",Xe,_(u.$t("invoices.item.tax")),1),n(x,{modelValue:I.value,"onUpdate:modelValue":[h[0]||(h[0]=k=>I.value=k),h[1]||(h[1]=k=>V(k))],"value-prop":"id",options:o(m),placeholder:u.$t("general.select_a_tax"),"open-direction":"top","track-by":"name",searchable:"",object:"",label:"name"},Le({singlelabel:c(({value:k})=>[a("div",He,_(k.name)+" - "+_(k.percent)+" % ",1)]),option:c(({option:k})=>[E(_(k.name)+" - "+_(k.percent)+" % ",1)]),_:2},[o($).hasAbilities(t.ability)?{name:"action",fn:c(()=>[a("button",{type:"button",class:"flex items-center justify-center w-full px-2 cursor-pointer py-2 bg-gray-200 border-none outline-none",onClick:i},[n(M,{name:"CheckCircleIcon",class:"h-5 text-primary-400"}),a("label",Je,_(u.$t("invoices.add_new_tax")),1)])])}:void 0]),1032,["modelValue","options","placeholder"]),Ze]),a("div",Ke,[n(D,{amount:o(q),currency:t.currency},null,8,["amount","currency"])]),a("div",Qe,[t.taxes.length&&t.index!==t.taxes.length-1?(l(),j(M,{key:0,name:"TrashIcon",class:"h-5 text-gray-700 cursor-pointer",onClick:h[2]||(h[2]=k=>r(t.index))})):A("",!0)])])}}},tt={class:"box-border bg-white border border-gray-200 border-solid rounded-b"},st={colspan:"5",class:"p-0 text-left align-top"},ot={class:"w-full"},nt=a("col",{style:{width:"40%","min-width":"280px"}},null,-1),at=a("col",{style:{width:"10%","min-width":"120px"}},null,-1),rt=a("col",{style:{width:"15%","min-width":"120px"}},null,-1),lt={key:0,style:{width:"15%","min-width":"160px"}},it=a("col",{style:{width:"15%","min-width":"120px"}},null,-1),dt={class:"px-5 py-4 text-left align-top"},ct={class:"flex justify-start"},ut={class:"flex items-center justify-center w-5 h-5 mt-2 text-gray-300 cursor-move handle mr-2"},mt={class:"px-5 py-4 text-right align-top"},pt={class:"px-5 py-4 text-left align-top"},yt={class:"flex flex-col"},xt={class:"flex-auto flex-fill bd-highlight"},ft={class:"relative w-full"},gt={key:0,class:"px-5 py-4 text-left align-top"},ht={class:"flex flex-col"},_t={class:"flex",style:{width:"120px"},role:"group"},bt={class:"flex items-center"},vt={class:"px-5 py-4 text-right align-top"},$t={class:"flex items-center justify-end text-sm"},wt={class:"flex items-center justify-center w-6 h-10 mx-2"},Bt={key:0},It=a("td",{class:"px-5 py-4 text-left align-top"},null,-1),St={colspan:"4",class:"px-5 py-4 text-left align-top"},Pt={props:{store:{type:Object,default:null},storeProp:{type:String,default:""},itemData:{type:Object,default:null},index:{type:Number,default:null},type:{type:String,default:""},loading:{type:Boolean,default:!1},currency:{type:[Object,String],required:!0},invoiceItems:{type:Array,required:!0},itemValidationScope:{type:String,default:""}},emits:["update","remove","itemValidate"],setup(t,{emit:s}){const e=t,d=te(),w=xe();Ee();const{t:$}=J(),I=B({get:()=>e.itemData.quantity,set:g=>{L("quantity",parseFloat(g))}}),y=B({get:()=>{const g=e.itemData.price;return parseFloat(g)>0?g/100:g},set:g=>{if(parseFloat(g)>0){let P=Math.round(g*100);L("price",P)}else L("price",g)}}),C=B(()=>e.itemData.price*e.itemData.quantity),m=B({get:()=>e.itemData.discount,set:g=>{e.itemData.discount_type==="percentage"?L("discount_val",C.value*g/100):L("discount_val",Math.round(g*100)),L("discount",g)}}),q=B(()=>C.value-e.itemData.discount_val),V=B(()=>e.currency?e.currency:d.selectedCompanyCurrency),T=B(()=>e.store[e.storeProp].items.length!=1),i=B(()=>Math.round(Z.exports.sumBy(e.itemData.taxes,function(g){return g.compound_tax?0:g.amount}))),r=B(()=>Math.round(Z.exports.sumBy(e.itemData.taxes,function(g){return g.compound_tax?g.amount:0}))),u=B(()=>i.value+r.value),h={name:{required:U.withMessage($("validation.required"),R)},quantity:{required:U.withMessage($("validation.required"),R),minValue:U.withMessage($("validation.qty_must_greater_than_zero"),ge(0)),maxLength:U.withMessage($("validation.amount_maxlength"),oe(20))},price:{required:U.withMessage($("validation.required"),R),minValue:U.withMessage($("validation.number_length_minvalue"),ge(1)),maxLength:U.withMessage($("validation.price_maxlength"),oe(20))},discount_val:{between:U.withMessage($("validation.discount_maxlength"),Ae(0,B(()=>C.value)))},description:{maxLength:U.withMessage($("validation.notes_maxlength"),oe(65e3))}},M=le(h,B(()=>e.store[e.storeProp].items[e.index]),{$scope:e.itemValidationScope});function x(g){e.store.$patch(O=>{O[e.storeProp].items[e.index].taxes[g.index]=g.item});let P=e.itemData.taxes[e.itemData.taxes.length-1];(P==null?void 0:P.tax_type_id)!==0&&e.store.$patch(O=>{O[e.storeProp].items[e.index].taxes.push(G(N({},Ce),{id:he.raw()}))}),S()}function D(g){L("name",g)}function k(g){e.store.$patch(P=>{if(P[e.storeProp].items[e.index].name=g.name,P[e.storeProp].items[e.index].price=g.price,P[e.storeProp].items[e.index].item_id=g.id,P[e.storeProp].items[e.index].description=g.description,g.unit&&(P[e.storeProp].items[e.index].unit_name=g.unit.name),e.store[e.storeProp].tax_per_item==="YES"&&g.taxes){let O=0;g.taxes.forEach(Y=>{x({index:O,item:N({},Y)}),O++})}P[e.storeProp].exchange_rate&&(P[e.storeProp].items[e.index].price/=P[e.storeProp].exchange_rate)}),w.fetchItems(),S()}function f(){e.itemData.discount_type!=="fixed"&&(L("discount_val",Math.round(e.itemData.discount*100)),L("discount_type","fixed"))}function b(){e.itemData.discount_type!=="percentage"&&(L("discount_val",C.value*e.itemData.discount/100),L("discount_type","percentage"))}function S(){var O,Y;let g=(Y=(O=e.store[e.storeProp])==null?void 0:O.items[e.index])==null?void 0:Y.taxes;g||(g=[]);let P=G(N({},e.store[e.storeProp].items[e.index]),{index:e.index,total:q.value,sub_total:C.value,totalSimpleTax:i.value,totalCompoundTax:r.value,totalTax:u.value,tax:u.value,taxes:[...g]});e.store.updateItem(P)}function L(g,P){e.store.$patch(O=>{O[e.storeProp].items[e.index][g]=P}),S()}return(g,P)=>{const O=p("BaseItemSelect"),Y=p("BaseInput"),z=p("BaseMoney"),ie=p("BaseIcon"),ve=p("BaseButton"),de=p("BaseDropdownItem"),$e=p("BaseDropdown"),ce=p("BaseContentPlaceholdersText"),ue=p("BaseContentPlaceholders"),we=p("BaseFormatMoney");return l(),v("tr",tt,[a("td",st,[a("table",ot,[a("colgroup",null,[nt,at,rt,t.store[t.storeProp].discount_per_item==="YES"?(l(),v("col",lt)):A("",!0),it]),a("tbody",null,[a("tr",null,[a("td",dt,[a("div",ct,[a("div",ut,[n(je)]),n(O,{type:"Invoice",item:t.itemData,invalid:o(M).name.$error,"invalid-description":o(M).description.$error,taxes:t.itemData.taxes,index:t.index,"store-prop":t.storeProp,store:t.store,onSearch:D,onSelect:k},null,8,["item","invalid","invalid-description","taxes","index","store-prop","store"])])]),a("td",mt,[n(Y,{modelValue:o(I),"onUpdate:modelValue":P[0]||(P[0]=F=>K(I)?I.value=F:null),invalid:o(M).quantity.$error,"content-loading":t.loading,type:"number",small:"",min:"0",step:"any",onChange:P[1]||(P[1]=F=>S()),onInput:P[2]||(P[2]=F=>o(M).quantity.$touch())},null,8,["modelValue","invalid","content-loading"])]),a("td",pt,[a("div",yt,[a("div",xt,[a("div",ft,[n(z,{key:o(V),modelValue:o(y),"onUpdate:modelValue":P[3]||(P[3]=F=>K(y)?y.value=F:null),invalid:o(M).price.$error,"content-loading":t.loading,currency:o(V)},null,8,["modelValue","invalid","content-loading","currency"])])])])]),t.store[t.storeProp].discount_per_item==="YES"?(l(),v("td",gt,[a("div",ht,[a("div",_t,[n(Y,{modelValue:o(m),"onUpdate:modelValue":P[4]||(P[4]=F=>K(m)?m.value=F:null),invalid:o(M).discount_val.$error,"content-loading":t.loading,class:"border-r-0 focus:border-r-2 rounded-tr-sm rounded-br-sm h-[38px]"},null,8,["modelValue","invalid","content-loading"]),n($e,{position:"bottom-end"},{activator:c(()=>[n(ve,{"content-loading":t.loading,class:"rounded-tr-md rounded-br-md !p-2 rounded-none",type:"button",variant:"white"},{default:c(()=>[a("span",bt,[E(_(t.itemData.discount_type=="fixed"?t.currency.symbol:"%")+" ",1),n(ie,{name:"ChevronDownIcon",class:"w-4 h-4 text-gray-500 ml-1"})])]),_:1},8,["content-loading"])]),default:c(()=>[n(de,{onClick:f},{default:c(()=>[E(_(g.$t("general.fixed")),1)]),_:1}),n(de,{onClick:b},{default:c(()=>[E(_(g.$t("general.percentage")),1)]),_:1})]),_:1})])])])):A("",!0),a("td",vt,[a("div",$t,[a("span",null,[t.loading?(l(),j(ue,{key:0},{default:c(()=>[n(ce,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),j(we,{key:1,amount:o(q),currency:o(V)},null,8,["amount","currency"]))]),a("div",wt,[o(T)?(l(),j(ie,{key:0,class:"h-5 text-gray-700 cursor-pointer",name:"TrashIcon",onClick:P[5]||(P[5]=F=>t.store.removeItem(t.index))})):A("",!0)])])])]),t.store[t.storeProp].tax_per_item==="YES"?(l(),v("tr",Bt,[It,a("td",St,[t.loading?(l(),j(ue,{key:0},{default:c(()=>[n(ce,{lines:1,class:"w-24 h-8 rounded-md border"})]),_:1})):(l(!0),v(Q,{key:1},se(t.itemData.taxes,(F,Be)=>(l(),j(et,{key:F.id,index:Be,"item-index":t.index,"tax-data":F,taxes:t.itemData.taxes,"discounted-total":o(q),"total-tax":o(i),total:o(C),currency:t.currency,"update-items":S,ability:o(ne).CREATE_INVOICE,store:t.store,"store-prop":t.storeProp,onUpdate:x},null,8,["index","item-index","tax-data","taxes","discounted-total","total-tax","total","currency","ability","store","store-prop"]))),128))])])):A("",!0)])])])])}}},Tt={class:"text-center item-table min-w-full"},kt=a("col",{style:{width:"40%","min-width":"280px"}},null,-1),Ct=a("col",{style:{width:"10%","min-width":"120px"}},null,-1),Mt=a("col",{style:{width:"15%","min-width":"120px"}},null,-1),Dt={key:0,style:{width:"15%","min-width":"160px"}},Vt=a("col",{style:{width:"15%","min-width":"120px"}},null,-1),jt={class:"bg-white border border-gray-200 border-solid"},qt={class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-left text-gray-700 border-t border-b border-gray-200 border-solid"},Lt={key:1,class:"pl-7"},Et={class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-right text-gray-700 border-t border-b border-gray-200 border-solid"},At={key:1},Ot={class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-left text-gray-700 border-t border-b border-gray-200 border-solid"},Ut={key:1},zt={key:0,class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-left text-gray-700 border-t border-b border-gray-200 border-solid"},Nt={key:1},Ft={class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-right text-gray-700 border-t border-b border-gray-200 border-solid"},Yt={key:1,class:"pr-10 column-heading"},Zs={props:{store:{type:Object,default:null},storeProp:{type:String,default:""},currency:{type:[Object,String,null],required:!0},isLoading:{type:Boolean,default:!1},itemValidationScope:{type:String,default:""}},setup(t){const s=t,e=te(),d=B(()=>s.currency?s.currency:e.selectedCompanyCurrency);return(w,$)=>{const I=p("BaseContentPlaceholdersText"),y=p("BaseContentPlaceholders"),C=p("BaseIcon");return l(),v(Q,null,[a("table",Tt,[a("colgroup",null,[kt,Ct,Mt,t.store[t.storeProp].discount_per_item==="YES"?(l(),v("col",Dt)):A("",!0),Vt]),a("thead",jt,[a("tr",null,[a("th",qt,[t.isLoading?(l(),j(y,{key:0},{default:c(()=>[n(I,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("span",Lt,_(w.$tc("items.item",2)),1))]),a("th",Et,[t.isLoading?(l(),j(y,{key:0},{default:c(()=>[n(I,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("span",At,_(w.$t("invoices.item.quantity")),1))]),a("th",Ot,[t.isLoading?(l(),j(y,{key:0},{default:c(()=>[n(I,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("span",Ut,_(w.$t("invoices.item.price")),1))]),t.store[t.storeProp].discount_per_item==="YES"?(l(),v("th",zt,[t.isLoading?(l(),j(y,{key:0},{default:c(()=>[n(I,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("span",Nt,_(w.$t("invoices.item.discount")),1))])):A("",!0),a("th",Ft,[t.isLoading?(l(),j(y,{key:0},{default:c(()=>[n(I,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("span",Yt,_(w.$t("invoices.item.amount")),1))])])]),n(o(qe),{modelValue:t.store[t.storeProp].items,"onUpdate:modelValue":$[0]||($[0]=m=>t.store[t.storeProp].items=m),"item-key":"id",tag:"tbody",handle:".handle"},{item:c(({element:m,index:q})=>[n(Pt,{key:m.id,index:q,"item-data":m,loading:t.isLoading,currency:o(d),"item-validation-scope":t.itemValidationScope,"invoice-items":t.store[t.storeProp].items,store:t.store,"store-prop":t.storeProp},null,8,["index","item-data","loading","currency","item-validation-scope","invoice-items","store","store-prop"])]),_:1},8,["modelValue"])]),a("div",{class:"flex items-center justify-center w-full px-6 py-3 text-base border border-t-0 border-gray-200 border-solid cursor-pointer text-primary-400 hover:bg-primary-100",onClick:$[1]||($[1]=(...m)=>t.store.addItem&&t.store.addItem(...m))},[n(C,{name:"PlusCircleIcon",class:"mr-2"}),E(" "+_(w.$t("general.add_new_item")),1)])],64)}}},Gt={class:"flex items-center justify-between w-full mt-2 text-sm"},Wt={class:"font-semibold leading-5 text-gray-500 uppercase"},Rt={class:"flex items-center justify-center text-lg text-black"},Xt={props:{index:{type:Number,required:!0},tax:{type:Object,required:!0},taxes:{type:Array,required:!0},currency:{type:[Object,String],required:!0},store:{type:Object,default:null},data:{type:String,default:""}},emits:["update","remove"],setup(t,{emit:s}){const e=t;ae("$utils");const d=B(()=>e.tax.compound_tax&&e.store.getSubtotalWithDiscount?Math.round((e.store.getSubtotalWithDiscount+e.store.getTotalSimpleTax)*e.tax.percent/100):e.store.getSubtotalWithDiscount&&e.tax.percent?Math.round(e.store.getSubtotalWithDiscount*e.tax.percent/100):0);Oe(()=>{e.store.getSubtotalWithDiscount&&w(),e.store.getTotalSimpleTax&&w()});function w(){s("update",G(N({},e.tax),{amount:d.value}))}return($,I)=>{const y=p("BaseFormatMoney"),C=p("BaseIcon");return l(),v("div",Gt,[a("label",Wt,_(t.tax.name)+" ("+_(t.tax.percent)+" %) ",1),a("label",Rt,[n(y,{amount:t.tax.amount,currency:t.currency},null,8,["amount","currency"]),n(C,{name:"TrashIcon",class:"h-5 ml-2 cursor-pointer",onClick:I[0]||(I[0]=m=>$.$emit("remove",t.tax.id))})])])}}},Ht={class:"w-full mt-4 tax-select"},Jt={class:"relative w-full max-w-md px-4"},Zt={class:"overflow-hidden rounded-md shadow-lg ring-1 ring-black ring-opacity-5"},Kt={class:"relative bg-white"},Qt={class:"relative p-4"},es={key:0,class:"relative flex flex-col overflow-auto list max-h-36 border-t border-gray-200"},ts=["onClick"],ss={class:"flex justify-between px-2"},os={class:"m-0 text-base font-semibold leading-tight text-gray-700 cursor-pointer"},ns={class:"m-0 text-base font-semibold text-gray-700 cursor-pointer"},as={key:1,class:"flex justify-center p-5 text-gray-400"},rs={class:"text-base text-gray-500 cursor-pointer"},ls={class:"m-0 ml-3 text-sm leading-none cursor-pointer font-base text-primary-400"},is={props:{type:{type:String,default:null},store:{type:Object,default:null},storeProp:{type:String,default:""}},emits:["select:taxType"],setup(t,{emit:s}){const e=t,d=H(),w=ee(),$=ye(),{t:I}=J(),y=W(null),C=B(()=>y.value?w.taxTypes.filter(function(T){return T.name.toLowerCase().indexOf(y.value.toLowerCase())!==-1}):w.taxTypes),m=B(()=>e.store[e.storeProp].taxes);function q(T,i){s("select:taxType",N({},T)),i()}function V(){d.openModal({title:I("settings.tax_types.add_tax"),componentName:"TaxTypeModal",size:"sm",refreshData:T=>s("select:taxType",T)})}return(T,i)=>{const r=p("BaseIcon"),u=p("BaseInput");return l(),v("div",Ht,[n(o(Fe),{class:"relative"},{default:c(({isOpen:h})=>[n(o(Ue),{class:X([h?"":"text-opacity-90","flex items-center text-sm font-medium text-primary-400 focus:outline-none focus:border-none"])},{default:c(()=>[n(r,{name:"PlusIcon",class:"w-4 h-4 font-medium text-primary-400"}),E(" "+_(T.$t("settings.tax_types.add_tax")),1)]),_:2},1032,["class"]),a("div",Jt,[n(ze,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"translate-y-1 opacity-0","enter-to-class":"translate-y-0 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"translate-y-0 opacity-100","leave-to-class":"translate-y-1 opacity-0"},{default:c(()=>[n(o(Ne),{style:{"min-width":"350px","margin-left":"62px",top:"-28px"},class:"absolute z-10 px-4 py-2 -translate-x-full sm:px-0"},{default:c(({close:M})=>[a("div",Zt,[a("div",Kt,[a("div",Qt,[n(u,{modelValue:y.value,"onUpdate:modelValue":i[0]||(i[0]=x=>y.value=x),placeholder:T.$t("general.search"),type:"text",class:"text-black"},null,8,["modelValue","placeholder"])]),o(C).length>0?(l(),v("div",es,[(l(!0),v(Q,null,se(o(C),(x,D)=>(l(),v("div",{key:D,class:X([{"bg-gray-100 cursor-not-allowed opacity-50 pointer-events-none":o(m).find(k=>k.tax_type_id===x.id)},"px-6 py-4 border-b border-gray-200 border-solid cursor-pointer hover:bg-gray-100 hover:cursor-pointer last:border-b-0"]),tabindex:"2",onClick:k=>q(x,M)},[a("div",ss,[a("label",os,_(x.name),1),a("label",ns,_(x.percent)+" % ",1)])],10,ts))),128))])):(l(),v("div",as,[a("label",rs,_(T.$t("general.no_tax_found")),1)]))]),o($).hasAbilities(o(ne).CREATE_TAX_TYPE)?(l(),v("button",{key:0,type:"button",class:"flex items-center justify-center w-full h-10 px-2 py-3 bg-gray-200 border-none outline-none",onClick:V},[n(r,{name:"CheckCircleIcon",class:"text-primary-400"}),a("label",ls,_(T.$t("estimates.add_new_tax")),1)])):A("",!0)])]),_:1})]),_:1})])]),_:1})])}}},ds={class:"px-5 py-4 mt-6 bg-white border border-gray-200 border-solid rounded md:min-w-[390px] min-w-[300px] lg:mt-7"},cs={class:"flex items-center justify-between w-full"},us={key:1,class:"text-sm font-semibold leading-5 text-gray-400 uppercase"},ms={key:3,class:"flex items-center justify-center m-0 text-lg text-black uppercase"},ps={key:1,class:"m-0 text-sm font-semibold leading-5 text-gray-500 uppercase"},ys={key:3,class:"flex items-center justify-center m-0 text-lg text-black uppercase"},xs={key:0,class:"flex items-center justify-between w-full mt-2"},fs={key:1,class:"text-sm font-semibold leading-5 text-gray-400 uppercase"},gs={key:3,class:"flex",style:{width:"140px"},role:"group"},hs={class:"flex items-center"},_s={key:1},bs={class:"flex items-center justify-between w-full pt-2 mt-5 border-t border-gray-200 border-solid"},vs={key:1,class:"m-0 text-sm font-semibold leading-5 text-gray-400 uppercase"},$s={key:3,class:"flex items-center justify-center text-lg uppercase text-primary-400"},Ks={props:{store:{type:Object,default:null},storeProp:{type:String,default:""},taxPopupType:{type:String,default:""},currency:{type:[Object,String],default:""},isLoading:{type:Boolean,default:!1}},setup(t){const s=t,e=W(null);ae("$utils");const d=te(),w=B({get:()=>s.store[s.storeProp].discount,set:i=>{s.store[s.storeProp].discount_type==="percentage"?s.store[s.storeProp].discount_val=Math.round(s.store.getSubTotal*i/100):s.store[s.storeProp].discount_val=Math.round(i*100),s.store[s.storeProp].discount=i}}),$=B({get:()=>s.store[s.storeProp].taxes,set:i=>{s.store.$patch(r=>{r[s.storeProp].taxes=i})}}),I=B(()=>{let i=[];return s.store[s.storeProp].items.forEach(r=>{r.taxes&&r.taxes.forEach(u=>{let h=i.find(M=>M.tax_type_id===u.tax_type_id);h?h.amount+=u.amount:u.tax_type_id&&i.push({tax_type_id:u.tax_type_id,amount:u.amount,percent:u.percent,name:u.name})})}),i}),y=B(()=>s.currency?s.currency:d.selectedCompanyCurrency);function C(){s.store[s.storeProp].discount_type!=="fixed"&&(s.store[s.storeProp].discount_val=Math.round(s.store[s.storeProp].discount*100),s.store[s.storeProp].discount_type="fixed")}function m(){s.store[s.storeProp].discount_type!=="percentage"&&(s.store[s.storeProp].discount_val=s.store.getSubTotal*s.store[s.storeProp].discount/100,s.store[s.storeProp].discount_type="percentage")}function q(i){let r=0;i.compound_tax&&s.store.getSubtotalWithDiscount?r=Math.round((s.store.getSubtotalWithDiscount+s.store.getTotalSimpleTax)*i.percent/100):s.store.getSubtotalWithDiscount&&i.percent&&(r=Math.round(s.store.getSubtotalWithDiscount*i.percent/100));let u=G(N({},ne),{id:he.raw(),name:i.name,percent:i.percent,compound_tax:i.compound_tax,tax_type_id:i.id,amount:r});s.store.$patch(h=>{h[s.storeProp].taxes.push(N({},u))})}function V(i){const r=s.store[s.storeProp].taxes.find(u=>u.id===i.id);r&&Object.assign(r,N({},i))}function T(i){const r=s.store[s.storeProp].taxes.findIndex(u=>u.id===i);s.store.$patch(u=>{u[s.storeProp].taxes.splice(r,1)})}return(i,r)=>{const u=p("BaseContentPlaceholdersText"),h=p("BaseContentPlaceholders"),M=p("BaseFormatMoney"),x=p("BaseInput"),D=p("BaseIcon"),k=p("BaseButton"),f=p("BaseDropdownItem"),b=p("BaseDropdown");return l(),v("div",ds,[a("div",cs,[t.isLoading?(l(),j(h,{key:0},{default:c(()=>[n(u,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("label",us,_(i.$t("estimates.sub_total")),1)),t.isLoading?(l(),j(h,{key:2},{default:c(()=>[n(u,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("label",ms,[n(M,{amount:t.store.getSubTotal,currency:o(y)},null,8,["amount","currency"])]))]),(l(!0),v(Q,null,se(o(I),S=>(l(),v("div",{key:S.tax_type_id,class:"flex items-center justify-between w-full"},[t.isLoading?(l(),j(h,{key:0},{default:c(()=>[n(u,{lines:1,class:"w-16 h-5"})]),_:1})):t.store[t.storeProp].tax_per_item==="YES"?(l(),v("label",ps,_(S.name)+" - "+_(S.percent)+"% ",1)):A("",!0),t.isLoading?(l(),j(h,{key:2},{default:c(()=>[n(u,{lines:1,class:"w-16 h-5"})]),_:1})):t.store[t.storeProp].tax_per_item==="YES"?(l(),v("label",ys,[n(M,{amount:S.amount,currency:o(y)},null,8,["amount","currency"])])):A("",!0)]))),128)),t.store[t.storeProp].discount_per_item==="NO"||t.store[t.storeProp].discount_per_item===null?(l(),v("div",xs,[t.isLoading?(l(),j(h,{key:0},{default:c(()=>[n(u,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("label",fs,_(i.$t("estimates.discount")),1)),t.isLoading?(l(),j(h,{key:2},{default:c(()=>[n(u,{lines:1,class:"w-24 h-8 rounded-md border"})]),_:1})):(l(),v("div",gs,[n(x,{modelValue:o(w),"onUpdate:modelValue":r[0]||(r[0]=S=>K(w)?w.value=S:null),class:"border-r-0 focus:border-r-2 rounded-tr-sm rounded-br-sm h-[38px]"},null,8,["modelValue"]),n(b,{position:"bottom-end"},{activator:c(()=>[n(k,{class:"rounded-tr-md rounded-br-md p-2 rounded-none",type:"button",variant:"white"},{default:c(()=>[a("span",hs,[E(_(t.store[t.storeProp].discount_type=="fixed"?o(y).symbol:"%")+" ",1),n(D,{name:"ChevronDownIcon",class:"w-4 h-4 text-gray-500 ml-1"})])]),_:1})]),default:c(()=>[n(f,{onClick:C},{default:c(()=>[E(_(i.$t("general.fixed")),1)]),_:1}),n(f,{onClick:m},{default:c(()=>[E(_(i.$t("general.percentage")),1)]),_:1})]),_:1})]))])):A("",!0),t.store[t.storeProp].tax_per_item==="NO"||t.store[t.storeProp].tax_per_item===null?(l(),v("div",_s,[(l(!0),v(Q,null,se(o($),(S,L)=>(l(),j(Xt,{key:S.id,index:L,tax:S,taxes:o($),currency:t.currency,store:t.store,onRemove:T,onUpdate:V},null,8,["index","tax","taxes","currency","store"]))),128))])):A("",!0),t.store[t.storeProp].tax_per_item==="NO"||t.store[t.storeProp].tax_per_item===null?(l(),v("div",{key:2,ref:(S,L)=>{L.taxModal=S,e.value=S},class:"float-right pt-2 pb-4"},[n(is,{"store-prop":t.storeProp,store:t.store,type:t.taxPopupType,"onSelect:taxType":q},null,8,["store-prop","store","type"])],512)):A("",!0),a("div",bs,[t.isLoading?(l(),j(h,{key:0},{default:c(()=>[n(u,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("label",vs,_(i.$t("estimates.total"))+" "+_(i.$t("estimates.amount"))+":",1)),t.isLoading?(l(),j(h,{key:2},{default:c(()=>[n(u,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("label",$s,[n(M,{amount:t.store.getTotal,currency:o(y)},null,8,["amount","currency"])]))])])}}},ws={class:"flex text-gray-800 font-medium text-sm mb-2"},Bs=a("span",{class:"text-sm text-red-500"}," *",-1),Qs={props:{store:{type:Object,default:null},storeProp:{type:String,default:""}},setup(t){const s=t,e=H(),{t:d}=J();function w(){e.openModal({title:d("general.choose_template"),componentName:"SelectTemplate",data:{templates:s.store.templates,store:s.store,storeProp:s.storeProp}})}return($,I)=>{const y=p("BaseIcon"),C=p("BaseButton");return l(),v("div",null,[a("label",ws,[E(_($.$t("general.select_template"))+" ",1),Bs]),n(C,{type:"button",class:"flex justify-center w-full text-sm lg:w-auto hover:bg-gray-200",variant:"gray",onClick:w},{right:c(m=>[n(y,{name:"PencilIcon",class:X(m.class)},null,8,["class"])]),default:c(()=>[E(" "+_(t.store[t.storeProp].template_name),1)]),_:1})])}}},Is={class:"mb-6"},Ss={class:"z-20 text-sm font-semibold leading-5 text-primary-400 float-right"},Ps={class:"text-gray-800 font-medium mb-4 text-sm"},eo={props:{store:{type:Object,default:null},storeProp:{type:String,default:""},fields:{type:Object,default:null},type:{type:String,default:null}},setup(t){const s=t;function e(d){s.store[s.storeProp].notes=""+d.notes}return(d,w)=>{const $=p("BaseCustomInput");return l(),v("div",Is,[a("div",Ss,[n(Ge,{type:t.type,onSelect:e},null,8,["type"])]),a("label",Ps,_(d.$t("invoices.notes")),1),n($,{modelValue:t.store[t.storeProp].notes,"onUpdate:modelValue":w[0]||(w[0]=I=>t.store[t.storeProp].notes=I),"content-loading":t.store.isFetchingInitialSettings,fields:t.fields,class:"mt-1"},null,8,["modelValue","content-loading","fields"])])}}},Ts={class:"flex justify-between w-full"},ks={class:"px-8 py-8 sm:p-6"},Cs={key:0,class:"grid grid-cols-3 gap-2 p-1 overflow-x-auto"},Ms=["src","alt","onClick"],Ds=["alt","src"],Vs={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},to={setup(t){const s=H(),e=W(""),d=B(()=>s.active&&s.componentName==="SelectTemplate"),w=B(()=>s.title);function $(){s.data.store[s.data.storeProp].template_name?e.value=s.data.store[s.data.storeProp].template_name:e.value=s.data.templates[0]}async function I(){await s.data.store.setTemplate(e.value),C()}function y(){return new URL("/build/img/tick.png",self.location)}function C(){s.closeModal(),setTimeout(()=>{s.$reset()},300)}return(m,q)=>{const V=p("BaseIcon"),T=p("BaseButton"),i=p("BaseModal");return l(),j(i,{show:o(d),onClose:C,onOpen:$},{header:c(()=>[a("div",Ts,[E(_(o(w))+" ",1),n(V,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:C})])]),default:c(()=>[a("div",ks,[o(s).data?(l(),v("div",Cs,[(l(!0),v(Q,null,se(o(s).data.templates,(r,u)=>(l(),v("div",{key:u,class:X([{"border border-solid border-primary-500":e.value===r.name},"relative flex flex-col m-2 border border-gray-200 border-solid cursor-pointer hover:border-primary-300"])},[a("img",{src:r.path,alt:r.name,class:"w-full",onClick:h=>e.value=r.name},null,8,Ms),e.value===r.name?(l(),v("img",{key:0,alt:r.name,class:"absolute z-10 w-5 h-5 text-primary-500",style:{top:"-6px",right:"-5px"},src:y()},null,8,Ds)):A("",!0),a("span",{class:X(["w-full p-1 bg-gray-200 text-sm text-center absolute bottom-0 left-0",{"text-primary-500 bg-primary-100":e.value===r.name,"text-gray-600":e.value!=r.name}])},_(r.name),3)],2))),128))])):A("",!0)]),a("div",Vs,[n(T,{class:"mr-3",variant:"primary-outline",onClick:C},{default:c(()=>[E(_(m.$t("general.cancel")),1)]),_:1}),n(T,{variant:"primary",onClick:q[0]||(q[0]=r=>I())},{left:c(r=>[n(V,{name:"SaveIcon",class:X(r.class)},null,8,["class"])]),default:c(()=>[E(" "+_(m.$t("general.choose")),1)]),_:1})])]),_:1},8,["show"])}}},js={class:"flex justify-between w-full"},qs={class:"item-modal"},Ls=["onSubmit"],Es={class:"px-8 py-8 sm:p-6"},As={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},so={emits:["newItem"],setup(t,{emit:s}){const e=H(),d=xe(),w=te(),$=ee();Me(),De();const{t:I}=J(),y=W(!1),C=W(w.selectedCompanySettings.tax_per_item),m=B(()=>e.active&&e.componentName==="ItemModal"),q=B({get:()=>d.currentItem.price/100,set:x=>{d.currentItem.price=Math.round(x*100)}}),V=B({get:()=>d.currentItem.taxes.map(x=>{if(x)return G(N({},x),{tax_type_id:x.id,tax_name:x.name+" ("+x.percent+"%)"})}),set:x=>{d.$patch(D=>{D.currentItem.taxes=x})}}),T=B(()=>C.value==="YES"),i={name:{required:U.withMessage(I("validation.required"),R),minLength:U.withMessage(I("validation.name_min_length",{count:3}),Ye(3))},description:{maxLength:U.withMessage(I("validation.description_maxlength",{count:255}),oe(255))}},r=le(i,B(()=>d.currentItem)),u=B(()=>$.taxTypes.map(x=>G(N({},x),{tax_name:x.name+" ("+x.percent+"%)"})));_e(()=>{r.value.$reset(),d.fetchItemUnits({limit:"all"})});async function h(){if(r.value.$touch(),r.value.$invalid)return!0;let x=G(N({},d.currentItem),{taxes:d.currentItem.taxes.map(k=>({tax_type_id:k.id,amount:q.value*k.percent/100,percent:k.percent,name:k.name,collective_tax:0}))});y.value=!0,await(d.isEdit?d.updateItem:d.addItem)(x).then(k=>{y.value=!1,k.data.data&&e.data&&e.refreshData(k.data.data),M()})}function M(){e.closeModal(),setTimeout(()=>{d.resetCurrentItem(),e.$reset(),r.value.$reset()},300)}return(x,D)=>{const k=p("BaseIcon"),f=p("BaseInput"),b=p("BaseInputGroup"),S=p("BaseMoney"),L=p("BaseMultiselect"),g=p("BaseTextarea"),P=p("BaseInputGrid"),O=p("BaseButton"),Y=p("BaseModal");return l(),j(Y,{show:o(m),onClose:M},{header:c(()=>[a("div",js,[E(_(o(e).title)+" ",1),n(k,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:M})])]),default:c(()=>[a("div",qs,[a("form",{action:"",onSubmit:be(h,["prevent"])},[a("div",Es,[n(P,{layout:"one-column"},{default:c(()=>[n(b,{label:x.$t("items.name"),required:"",error:o(r).name.$error&&o(r).name.$errors[0].$message},{default:c(()=>[n(f,{modelValue:o(d).currentItem.name,"onUpdate:modelValue":D[0]||(D[0]=z=>o(d).currentItem.name=z),type:"text",invalid:o(r).name.$error,onInput:D[1]||(D[1]=z=>o(r).name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),n(b,{label:x.$t("items.price")},{default:c(()=>[n(S,{key:o(w).selectedCompanyCurrency,modelValue:o(q),"onUpdate:modelValue":D[2]||(D[2]=z=>K(q)?q.value=z:null),currency:o(w).selectedCompanyCurrency,class:"relative w-full focus:border focus:border-solid focus:border-primary"},null,8,["modelValue","currency"])]),_:1},8,["label"]),n(b,{label:x.$t("items.unit")},{default:c(()=>[n(L,{modelValue:o(d).currentItem.unit_id,"onUpdate:modelValue":D[3]||(D[3]=z=>o(d).currentItem.unit_id=z),label:"name",options:o(d).itemUnits,"value-prop":"id","can-deselect":!1,"can-clear":!1,placeholder:x.$t("items.select_a_unit"),searchable:"","track-by":"id"},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),o(T)?(l(),j(b,{key:0,label:x.$t("items.taxes")},{default:c(()=>[n(L,{modelValue:o(V),"onUpdate:modelValue":D[4]||(D[4]=z=>K(V)?V.value=z:null),options:o(u),label:"name","value-prop":"id",class:"w-full","can-deselect":!1,"can-clear":!1,searchable:"","track-by":"id",object:""},null,8,["modelValue","options"])]),_:1},8,["label"])):A("",!0),n(b,{label:x.$t("items.description"),error:o(r).description.$error&&o(r).description.$errors[0].$message},{default:c(()=>[n(g,{modelValue:o(d).currentItem.description,"onUpdate:modelValue":D[5]||(D[5]=z=>o(d).currentItem.description=z),rows:"4",cols:"50",invalid:o(r).description.$error,onInput:D[6]||(D[6]=z=>o(r).description.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1})]),a("div",As,[n(O,{class:"mr-3",variant:"primary-outline",type:"button",onClick:M},{default:c(()=>[E(_(x.$t("general.cancel")),1)]),_:1}),n(O,{loading:y.value,disabled:y.value,variant:"primary",type:"submit"},{left:c(z=>[n(k,{name:"SaveIcon",class:X(z.class)},null,8,["class"])]),default:c(()=>[E(" "+_(o(d).isEdit?x.$t("general.update"):x.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,Ls)])]),_:1},8,["show"])}}},Os={class:"flex justify-between w-full"},Us={class:"flex flex-col"},zs={class:"text-sm text-gray-500 mt-1"},Ns=["onSubmit"],Fs={class:"p-4 sm:p-6"},Ys={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},Gs={emits:["addTax"],setup(t,{emit:s}){const e=H();Ve();const d=fe({state:"",city:"",address_street_1:"",zip:""}),w=W(!1),$=ee(),{t:I}=J(),y=B(()=>e.active&&e.componentName==="TaxationAddressModal"),C=B(()=>({state:{required:U.withMessage(I("validation.required"),R)},city:{required:U.withMessage(I("validation.required"),R)},address_street_1:{required:U.withMessage(I("validation.required"),R)},zip:{required:U.withMessage(I("validation.required"),R)}})),m=le(C,B(()=>d));async function q(){if(m.value.$touch(),m.value.$invalid)return!0;let i={address:d};e.id&&(i.customer_id=e.id),d.address_street_1=d.address_street_1.replace(/(\r\n|\n|\r)/gm,""),w.value=!0,await $.fetchSalesTax(i).then(r=>{w.value=!1,s("addTax",r.data.data),T()}).catch(r=>{w.value=!1})}function V(){var i,r,u,h;d.state=(i=e==null?void 0:e.data)==null?void 0:i.state,d.city=(r=e==null?void 0:e.data)==null?void 0:r.city,d.address_street_1=(u=e==null?void 0:e.data)==null?void 0:u.address_street_1,d.zip=(h=e==null?void 0:e.data)==null?void 0:h.zip}function T(){e.closeModal()}return(i,r)=>{const u=p("BaseIcon"),h=p("BaseInput"),M=p("BaseInputGroup"),x=p("BaseTextarea"),D=p("BaseInputGrid"),k=p("BaseButton"),f=p("BaseModal");return l(),j(f,{show:o(y),onClose:T,onOpen:V},{header:c(()=>[a("div",Os,[a("div",Us,[E(_(o(e).title)+" ",1),a("p",zs,_(o(e).content),1)]),n(u,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:T})])]),default:c(()=>[a("form",{onSubmit:be(q,["prevent"])},[a("div",Fs,[n(D,{layout:"one-column"},{default:c(()=>[n(M,{required:"",error:o(m).state.$error&&o(m).state.$errors[0].$message,label:i.$t("customers.state")},{default:c(()=>[n(h,{modelValue:o(d).state,"onUpdate:modelValue":r[0]||(r[0]=b=>o(d).state=b),type:"text",name:"shippingState",class:"mt-1 md:mt-0",invalid:o(m).state.$error,onInput:r[1]||(r[1]=b=>o(m).state.$touch()),placeholder:i.$t("settings.taxations.state_placeholder")},null,8,["modelValue","invalid","placeholder"])]),_:1},8,["error","label"]),n(M,{required:"",error:o(m).city.$error&&o(m).city.$errors[0].$message,label:i.$t("customers.city")},{default:c(()=>[n(h,{modelValue:o(d).city,"onUpdate:modelValue":r[2]||(r[2]=b=>o(d).city=b),type:"text",name:"shippingCity",class:"mt-1 md:mt-0",invalid:o(m).city.$error,onInput:r[3]||(r[3]=b=>o(m).city.$touch()),placeholder:i.$t("settings.taxations.city_placeholder")},null,8,["modelValue","invalid","placeholder"])]),_:1},8,["error","label"]),n(M,{required:"",error:o(m).address_street_1.$error&&o(m).address_street_1.$errors[0].$message,label:i.$t("customers.address")},{default:c(()=>[n(x,{modelValue:o(d).address_street_1,"onUpdate:modelValue":r[4]||(r[4]=b=>o(d).address_street_1=b),rows:"2",cols:"50",class:"mt-1 md:mt-0",invalid:o(m).address_street_1.$error,onInput:r[5]||(r[5]=b=>o(m).address_street_1.$touch()),placeholder:i.$t("settings.taxations.address_placeholder")},null,8,["modelValue","invalid","placeholder"])]),_:1},8,["error","label"]),n(M,{required:"",error:o(m).zip.$error&&o(m).zip.$errors[0].$message,label:i.$t("customers.zip_code")},{default:c(()=>[n(h,{modelValue:o(d).zip,"onUpdate:modelValue":r[6]||(r[6]=b=>o(d).zip=b),invalid:o(m).zip.$error,onInput:r[7]||(r[7]=b=>o(m).zip.$touch()),type:"text",class:"mt-1 md:mt-0",placeholder:i.$t("settings.taxations.zip_placeholder")},null,8,["modelValue","invalid","placeholder"])]),_:1},8,["error","label"])]),_:1})]),a("div",Ys,[n(k,{class:"mr-3 text-sm",type:"button",variant:"primary-outline",onClick:T},{default:c(()=>[E(_(i.$t("general.cancel")),1)]),_:1}),n(k,{loading:w.value,variant:"primary",type:"submit"},{left:c(b=>[w.value?A("",!0):(l(),j(u,{key:0,name:"SaveIcon",class:X(b.class)},null,8,["class"]))]),default:c(()=>[E(" "+_(i.$t("general.save")),1)]),_:1},8,["loading"])])],40,Ns)]),_:1},8,["show"])}}},oo={props:{isEdit:{type:Boolean,default:null},type:{type:String,default:null},customer:{type:[Object],default:null},store:{type:Object,default:null},storeProp:{type:String,default:null}},setup(t){const s=t,e="Sales Tax",d="MODULE",w=H(),$=te(),I=ee(),{t:y}=J(),C=W(!1),m=B(()=>s.isEdit?s.store[s.storeProp].sales_tax_address_type==="billing":$.selectedCompanySettings.sales_tax_address_type==="billing"),q=B(()=>$.selectedCompanySettings.sales_tax_us_enabled==="YES"),V=B(()=>s.isEdit?s.store[s.storeProp].sales_tax_type==="customer_level":$.selectedCompanySettings.sales_tax_type==="customer_level"),T=B(()=>s.isEdit?s.store[s.storeProp].sales_tax_type==="company_level":$.selectedCompanySettings.sales_tax_type==="company_level"),i=B(()=>{if(V.value&&r.value){let f=m.value?s.customer.billing:s.customer.shipping;return{address:Z.exports.pick(f,["address_street_1","city","state","zip"]),customer_id:s.customer.id}}else if(T.value&&r.value)return{address:Z.exports.pick(address,["address_street_1","city","state","zip"])}}),r=B(()=>{var f,b;if(V.value){let S=m.value?(f=s.customer)==null?void 0:f.billing:(b=s.customer)==null?void 0:b.shipping;return u(S)}else if(T.value)return u($.selectedCompany.address);return!1});re(()=>s.customer,(f,b)=>{if(f&&b&&V.value){h(f,b);return}!r.value&&V.value&&f?setTimeout(()=>{M()},500):V.value&&f?x():V.value&&!f&&k()}),_e(()=>{T.value&&(r.value?x():M())});function u(f){return f?f.address_street_1&&f.city&&f.state&&f.zip:!1}function h(f,b){const S=m.value?f.billing:f.shipping,L=m.value?b.billing:b.shipping,g=Z.exports.pick(S,["address_street_1","city","state","zip"]),P=Z.exports.pick(L,["address_street_1","city","state","zip"]);Z.exports.isEqual(g,P)||x()}function M(){var S,L;if(!q.value)return;let f=null,b="";V.value?m.value?(f=(S=s.customer)==null?void 0:S.billing,b=y("settings.taxations.add_billing_address")):(f=(L=s.customer)==null?void 0:L.shipping,b=y("settings.taxations.add_shipping_address")):(f=$.selectedCompany.address,b=y("settings.taxations.add_company_address")),w.openModal({title:b,content:y("settings.taxations.modal_description"),componentName:"TaxationAddressModal",data:f,id:V.value?s.customer.id:""})}async function x(){!q.value||(C.value=!0,await I.fetchSalesTax(i.value).then(f=>{D(f.data.data),C.value=!1}).catch(f=>{f.response.data.error&&setTimeout(()=>{M()},500),C.value=!1}))}function D(f){f.tax_type_id=f.id;const b=s.store[s.storeProp].taxes.findIndex(S=>S.name===e&&S.type===d);b>-1?Object.assign(s.store[s.storeProp].taxes[b],f):s.store[s.storeProp].taxes.push(f)}function k(){const f=s.store[s.storeProp].taxes.findIndex(S=>S.name===e&&S.type===d);f>-1&&s.store[s.storeProp].taxes.splice(f,1);let b=I.taxTypes.findIndex(S=>S.name===e&&S.type===d);b>-1&&I.taxTypes.splice(b,1)}return(f,b)=>(l(),j(Gs,{onAddTax:D}))}};export{to as _,so as a,oo as b,Zs as c,eo as d,Qs as e,Ks as f}; +var Ie=Object.defineProperty,Se=Object.defineProperties;var Pe=Object.getOwnPropertyDescriptors;var me=Object.getOwnPropertySymbols;var Te=Object.prototype.hasOwnProperty,ke=Object.prototype.propertyIsEnumerable;var pe=(t,s,e)=>s in t?Ie(t,s,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[s]=e,N=(t,s)=>{for(var e in s||(s={}))Te.call(s,e)&&pe(t,e,s[e]);if(me)for(var e of me(s))ke.call(s,e)&&pe(t,e,s[e]);return t},G=(t,s)=>Se(t,Pe(s));import{q as ee,c as H,e as ye,b as te,p as xe,g as ne,T as Ce,k as Me,u as De,d as Ve}from"./main.24f7a84b.js";import{D as je,d as qe}from"./DragIcon.0a950eb9.js";import{B as W,a0 as fe,ah as ae,J,k as B,C as re,r as p,o as l,e as v,h as a,t as _,f as n,V as Le,u as o,w as c,i as E,l as j,j as A,G as Ee,A as Z,L as U,M as R,b2 as ge,S as oe,aX as Ae,T as le,x as K,F as Q,y as se,H as he,a7 as Oe,W as Ue,m as X,Y as ze,X as Ne,Z as Fe,N as Ye,D as _e,U as be}from"./vendor.01d0adc5.js";import{_ as Ge}from"./SelectNotePopup.5f004c2c.js";const We={class:"flex items-center justify-between mb-3"},Re={class:"flex items-center text-base",style:{flex:"4"}},Xe={class:"pr-2 mb-0",align:"right"},He={class:"absolute left-3.5"},Je={class:"ml-2 text-sm leading-none text-primary-400 cursor-pointer"},Ze=a("br",null,null,-1),Ke={class:"text-sm text-right",style:{flex:"3"}},Qe={class:"flex items-center justify-center w-6 h-10 mx-2 cursor-pointer"},et={props:{ability:{type:String,default:""},store:{type:Object,default:null},storeProp:{type:String,default:""},itemIndex:{type:Number,required:!0},index:{type:Number,required:!0},taxData:{type:Object,required:!0},taxes:{type:Array,default:[]},total:{type:Number,default:0},totalTax:{type:Number,default:0},currency:{type:[Object,String],required:!0},updateItems:{type:Function,default:()=>{}}},emits:["remove","update"],setup(t,{emit:s}){const e=t,d=ee(),w=H(),$=ye(),I=W(null),y=fe(N({},e.taxData));ae("utils");const{t:C}=J(),m=B(()=>d.taxTypes.map(h=>N({},h)).map(h=>(e.taxes.find(x=>x.tax_type_id===h.id)?h.disabled=!0:h.disabled=!1,h))),q=B(()=>y.compound_tax&&e.total?(e.total+e.totalTax)*y.percent/100:e.total&&y.percent?e.total*y.percent/100:0);re(()=>e.total,()=>{T()}),re(()=>e.totalTax,()=>{T()}),e.taxData.tax_type_id>0&&(I.value=d.taxTypes.find(u=>u.id===e.taxData.tax_type_id)),T();function V(u){y.percent=u.percent,y.tax_type_id=u.id,y.compound_tax=u.compound_tax,y.name=u.name,T()}function T(){y.tax_type_id!==0&&s("update",{index:e.index,item:G(N({},y),{amount:q.value})})}function i(){let u={itemIndex:e.itemIndex,taxIndex:e.index};w.openModal({title:C("settings.tax_types.add_tax"),componentName:"TaxTypeModal",data:u,size:"sm"})}function r(u){e.store.$patch(h=>{h[e.storeProp].items[e.itemIndex].taxes.splice(u,1)})}return(u,h)=>{const M=p("BaseIcon"),x=p("BaseMultiselect"),D=p("BaseFormatMoney");return l(),v("div",We,[a("div",Re,[a("label",Xe,_(u.$t("invoices.item.tax")),1),n(x,{modelValue:I.value,"onUpdate:modelValue":[h[0]||(h[0]=k=>I.value=k),h[1]||(h[1]=k=>V(k))],"value-prop":"id",options:o(m),placeholder:u.$t("general.select_a_tax"),"open-direction":"top","track-by":"name",searchable:"",object:"",label:"name"},Le({singlelabel:c(({value:k})=>[a("div",He,_(k.name)+" - "+_(k.percent)+" % ",1)]),option:c(({option:k})=>[E(_(k.name)+" - "+_(k.percent)+" % ",1)]),_:2},[o($).hasAbilities(t.ability)?{name:"action",fn:c(()=>[a("button",{type:"button",class:"flex items-center justify-center w-full px-2 cursor-pointer py-2 bg-gray-200 border-none outline-none",onClick:i},[n(M,{name:"CheckCircleIcon",class:"h-5 text-primary-400"}),a("label",Je,_(u.$t("invoices.add_new_tax")),1)])])}:void 0]),1032,["modelValue","options","placeholder"]),Ze]),a("div",Ke,[n(D,{amount:o(q),currency:t.currency},null,8,["amount","currency"])]),a("div",Qe,[t.taxes.length&&t.index!==t.taxes.length-1?(l(),j(M,{key:0,name:"TrashIcon",class:"h-5 text-gray-700 cursor-pointer",onClick:h[2]||(h[2]=k=>r(t.index))})):A("",!0)])])}}},tt={class:"box-border bg-white border border-gray-200 border-solid rounded-b"},st={colspan:"5",class:"p-0 text-left align-top"},ot={class:"w-full"},nt=a("col",{style:{width:"40%","min-width":"280px"}},null,-1),at=a("col",{style:{width:"10%","min-width":"120px"}},null,-1),rt=a("col",{style:{width:"15%","min-width":"120px"}},null,-1),lt={key:0,style:{width:"15%","min-width":"160px"}},it=a("col",{style:{width:"15%","min-width":"120px"}},null,-1),dt={class:"px-5 py-4 text-left align-top"},ct={class:"flex justify-start"},ut={class:"flex items-center justify-center w-5 h-5 mt-2 text-gray-300 cursor-move handle mr-2"},mt={class:"px-5 py-4 text-right align-top"},pt={class:"px-5 py-4 text-left align-top"},yt={class:"flex flex-col"},xt={class:"flex-auto flex-fill bd-highlight"},ft={class:"relative w-full"},gt={key:0,class:"px-5 py-4 text-left align-top"},ht={class:"flex flex-col"},_t={class:"flex",style:{width:"120px"},role:"group"},bt={class:"flex items-center"},vt={class:"px-5 py-4 text-right align-top"},$t={class:"flex items-center justify-end text-sm"},wt={class:"flex items-center justify-center w-6 h-10 mx-2"},Bt={key:0},It=a("td",{class:"px-5 py-4 text-left align-top"},null,-1),St={colspan:"4",class:"px-5 py-4 text-left align-top"},Pt={props:{store:{type:Object,default:null},storeProp:{type:String,default:""},itemData:{type:Object,default:null},index:{type:Number,default:null},type:{type:String,default:""},loading:{type:Boolean,default:!1},currency:{type:[Object,String],required:!0},invoiceItems:{type:Array,required:!0},itemValidationScope:{type:String,default:""}},emits:["update","remove","itemValidate"],setup(t,{emit:s}){const e=t,d=te(),w=xe();Ee();const{t:$}=J(),I=B({get:()=>e.itemData.quantity,set:g=>{L("quantity",parseFloat(g))}}),y=B({get:()=>{const g=e.itemData.price;return parseFloat(g)>0?g/100:g},set:g=>{if(parseFloat(g)>0){let P=Math.round(g*100);L("price",P)}else L("price",g)}}),C=B(()=>e.itemData.price*e.itemData.quantity),m=B({get:()=>e.itemData.discount,set:g=>{e.itemData.discount_type==="percentage"?L("discount_val",C.value*g/100):L("discount_val",Math.round(g*100)),L("discount",g)}}),q=B(()=>C.value-e.itemData.discount_val),V=B(()=>e.currency?e.currency:d.selectedCompanyCurrency),T=B(()=>e.store[e.storeProp].items.length!=1),i=B(()=>Math.round(Z.exports.sumBy(e.itemData.taxes,function(g){return g.compound_tax?0:g.amount}))),r=B(()=>Math.round(Z.exports.sumBy(e.itemData.taxes,function(g){return g.compound_tax?g.amount:0}))),u=B(()=>i.value+r.value),h={name:{required:U.withMessage($("validation.required"),R)},quantity:{required:U.withMessage($("validation.required"),R),minValue:U.withMessage($("validation.qty_must_greater_than_zero"),ge(0)),maxLength:U.withMessage($("validation.amount_maxlength"),oe(20))},price:{required:U.withMessage($("validation.required"),R),minValue:U.withMessage($("validation.number_length_minvalue"),ge(1)),maxLength:U.withMessage($("validation.price_maxlength"),oe(20))},discount_val:{between:U.withMessage($("validation.discount_maxlength"),Ae(0,B(()=>C.value)))},description:{maxLength:U.withMessage($("validation.notes_maxlength"),oe(65e3))}},M=le(h,B(()=>e.store[e.storeProp].items[e.index]),{$scope:e.itemValidationScope});function x(g){e.store.$patch(O=>{O[e.storeProp].items[e.index].taxes[g.index]=g.item});let P=e.itemData.taxes[e.itemData.taxes.length-1];(P==null?void 0:P.tax_type_id)!==0&&e.store.$patch(O=>{O[e.storeProp].items[e.index].taxes.push(G(N({},Ce),{id:he.raw()}))}),S()}function D(g){L("name",g)}function k(g){e.store.$patch(P=>{if(P[e.storeProp].items[e.index].name=g.name,P[e.storeProp].items[e.index].price=g.price,P[e.storeProp].items[e.index].item_id=g.id,P[e.storeProp].items[e.index].description=g.description,g.unit&&(P[e.storeProp].items[e.index].unit_name=g.unit.name),e.store[e.storeProp].tax_per_item==="YES"&&g.taxes){let O=0;g.taxes.forEach(Y=>{x({index:O,item:N({},Y)}),O++})}P[e.storeProp].exchange_rate&&(P[e.storeProp].items[e.index].price/=P[e.storeProp].exchange_rate)}),w.fetchItems(),S()}function f(){e.itemData.discount_type!=="fixed"&&(L("discount_val",Math.round(e.itemData.discount*100)),L("discount_type","fixed"))}function b(){e.itemData.discount_type!=="percentage"&&(L("discount_val",C.value*e.itemData.discount/100),L("discount_type","percentage"))}function S(){var O,Y;let g=(Y=(O=e.store[e.storeProp])==null?void 0:O.items[e.index])==null?void 0:Y.taxes;g||(g=[]);let P=G(N({},e.store[e.storeProp].items[e.index]),{index:e.index,total:q.value,sub_total:C.value,totalSimpleTax:i.value,totalCompoundTax:r.value,totalTax:u.value,tax:u.value,taxes:[...g]});e.store.updateItem(P)}function L(g,P){e.store.$patch(O=>{O[e.storeProp].items[e.index][g]=P}),S()}return(g,P)=>{const O=p("BaseItemSelect"),Y=p("BaseInput"),z=p("BaseMoney"),ie=p("BaseIcon"),ve=p("BaseButton"),de=p("BaseDropdownItem"),$e=p("BaseDropdown"),ce=p("BaseContentPlaceholdersText"),ue=p("BaseContentPlaceholders"),we=p("BaseFormatMoney");return l(),v("tr",tt,[a("td",st,[a("table",ot,[a("colgroup",null,[nt,at,rt,t.store[t.storeProp].discount_per_item==="YES"?(l(),v("col",lt)):A("",!0),it]),a("tbody",null,[a("tr",null,[a("td",dt,[a("div",ct,[a("div",ut,[n(je)]),n(O,{type:"Invoice",item:t.itemData,invalid:o(M).name.$error,"invalid-description":o(M).description.$error,taxes:t.itemData.taxes,index:t.index,"store-prop":t.storeProp,store:t.store,onSearch:D,onSelect:k},null,8,["item","invalid","invalid-description","taxes","index","store-prop","store"])])]),a("td",mt,[n(Y,{modelValue:o(I),"onUpdate:modelValue":P[0]||(P[0]=F=>K(I)?I.value=F:null),invalid:o(M).quantity.$error,"content-loading":t.loading,type:"number",small:"",min:"0",step:"any",onChange:P[1]||(P[1]=F=>S()),onInput:P[2]||(P[2]=F=>o(M).quantity.$touch())},null,8,["modelValue","invalid","content-loading"])]),a("td",pt,[a("div",yt,[a("div",xt,[a("div",ft,[n(z,{key:o(V),modelValue:o(y),"onUpdate:modelValue":P[3]||(P[3]=F=>K(y)?y.value=F:null),invalid:o(M).price.$error,"content-loading":t.loading,currency:o(V)},null,8,["modelValue","invalid","content-loading","currency"])])])])]),t.store[t.storeProp].discount_per_item==="YES"?(l(),v("td",gt,[a("div",ht,[a("div",_t,[n(Y,{modelValue:o(m),"onUpdate:modelValue":P[4]||(P[4]=F=>K(m)?m.value=F:null),invalid:o(M).discount_val.$error,"content-loading":t.loading,class:"border-r-0 focus:border-r-2 rounded-tr-sm rounded-br-sm h-[38px]"},null,8,["modelValue","invalid","content-loading"]),n($e,{position:"bottom-end"},{activator:c(()=>[n(ve,{"content-loading":t.loading,class:"rounded-tr-md rounded-br-md !p-2 rounded-none",type:"button",variant:"white"},{default:c(()=>[a("span",bt,[E(_(t.itemData.discount_type=="fixed"?t.currency.symbol:"%")+" ",1),n(ie,{name:"ChevronDownIcon",class:"w-4 h-4 text-gray-500 ml-1"})])]),_:1},8,["content-loading"])]),default:c(()=>[n(de,{onClick:f},{default:c(()=>[E(_(g.$t("general.fixed")),1)]),_:1}),n(de,{onClick:b},{default:c(()=>[E(_(g.$t("general.percentage")),1)]),_:1})]),_:1})])])])):A("",!0),a("td",vt,[a("div",$t,[a("span",null,[t.loading?(l(),j(ue,{key:0},{default:c(()=>[n(ce,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),j(we,{key:1,amount:o(q),currency:o(V)},null,8,["amount","currency"]))]),a("div",wt,[o(T)?(l(),j(ie,{key:0,class:"h-5 text-gray-700 cursor-pointer",name:"TrashIcon",onClick:P[5]||(P[5]=F=>t.store.removeItem(t.index))})):A("",!0)])])])]),t.store[t.storeProp].tax_per_item==="YES"?(l(),v("tr",Bt,[It,a("td",St,[t.loading?(l(),j(ue,{key:0},{default:c(()=>[n(ce,{lines:1,class:"w-24 h-8 rounded-md border"})]),_:1})):(l(!0),v(Q,{key:1},se(t.itemData.taxes,(F,Be)=>(l(),j(et,{key:F.id,index:Be,"item-index":t.index,"tax-data":F,taxes:t.itemData.taxes,"discounted-total":o(q),"total-tax":o(i),total:o(C),currency:t.currency,"update-items":S,ability:o(ne).CREATE_INVOICE,store:t.store,"store-prop":t.storeProp,onUpdate:x},null,8,["index","item-index","tax-data","taxes","discounted-total","total-tax","total","currency","ability","store","store-prop"]))),128))])])):A("",!0)])])])])}}},Tt={class:"text-center item-table min-w-full"},kt=a("col",{style:{width:"40%","min-width":"280px"}},null,-1),Ct=a("col",{style:{width:"10%","min-width":"120px"}},null,-1),Mt=a("col",{style:{width:"15%","min-width":"120px"}},null,-1),Dt={key:0,style:{width:"15%","min-width":"160px"}},Vt=a("col",{style:{width:"15%","min-width":"120px"}},null,-1),jt={class:"bg-white border border-gray-200 border-solid"},qt={class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-left text-gray-700 border-t border-b border-gray-200 border-solid"},Lt={key:1,class:"pl-7"},Et={class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-right text-gray-700 border-t border-b border-gray-200 border-solid"},At={key:1},Ot={class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-left text-gray-700 border-t border-b border-gray-200 border-solid"},Ut={key:1},zt={key:0,class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-left text-gray-700 border-t border-b border-gray-200 border-solid"},Nt={key:1},Ft={class:"px-5 py-3 text-sm not-italic font-medium leading-5 text-right text-gray-700 border-t border-b border-gray-200 border-solid"},Yt={key:1,class:"pr-10 column-heading"},Zs={props:{store:{type:Object,default:null},storeProp:{type:String,default:""},currency:{type:[Object,String,null],required:!0},isLoading:{type:Boolean,default:!1},itemValidationScope:{type:String,default:""}},setup(t){const s=t,e=te(),d=B(()=>s.currency?s.currency:e.selectedCompanyCurrency);return(w,$)=>{const I=p("BaseContentPlaceholdersText"),y=p("BaseContentPlaceholders"),C=p("BaseIcon");return l(),v(Q,null,[a("table",Tt,[a("colgroup",null,[kt,Ct,Mt,t.store[t.storeProp].discount_per_item==="YES"?(l(),v("col",Dt)):A("",!0),Vt]),a("thead",jt,[a("tr",null,[a("th",qt,[t.isLoading?(l(),j(y,{key:0},{default:c(()=>[n(I,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("span",Lt,_(w.$tc("items.item",2)),1))]),a("th",Et,[t.isLoading?(l(),j(y,{key:0},{default:c(()=>[n(I,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("span",At,_(w.$t("invoices.item.quantity")),1))]),a("th",Ot,[t.isLoading?(l(),j(y,{key:0},{default:c(()=>[n(I,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("span",Ut,_(w.$t("invoices.item.price")),1))]),t.store[t.storeProp].discount_per_item==="YES"?(l(),v("th",zt,[t.isLoading?(l(),j(y,{key:0},{default:c(()=>[n(I,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("span",Nt,_(w.$t("invoices.item.discount")),1))])):A("",!0),a("th",Ft,[t.isLoading?(l(),j(y,{key:0},{default:c(()=>[n(I,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("span",Yt,_(w.$t("invoices.item.amount")),1))])])]),n(o(qe),{modelValue:t.store[t.storeProp].items,"onUpdate:modelValue":$[0]||($[0]=m=>t.store[t.storeProp].items=m),"item-key":"id",tag:"tbody",handle:".handle"},{item:c(({element:m,index:q})=>[n(Pt,{key:m.id,index:q,"item-data":m,loading:t.isLoading,currency:o(d),"item-validation-scope":t.itemValidationScope,"invoice-items":t.store[t.storeProp].items,store:t.store,"store-prop":t.storeProp},null,8,["index","item-data","loading","currency","item-validation-scope","invoice-items","store","store-prop"])]),_:1},8,["modelValue"])]),a("div",{class:"flex items-center justify-center w-full px-6 py-3 text-base border border-t-0 border-gray-200 border-solid cursor-pointer text-primary-400 hover:bg-primary-100",onClick:$[1]||($[1]=(...m)=>t.store.addItem&&t.store.addItem(...m))},[n(C,{name:"PlusCircleIcon",class:"mr-2"}),E(" "+_(w.$t("general.add_new_item")),1)])],64)}}},Gt={class:"flex items-center justify-between w-full mt-2 text-sm"},Wt={class:"font-semibold leading-5 text-gray-500 uppercase"},Rt={class:"flex items-center justify-center text-lg text-black"},Xt={props:{index:{type:Number,required:!0},tax:{type:Object,required:!0},taxes:{type:Array,required:!0},currency:{type:[Object,String],required:!0},store:{type:Object,default:null},data:{type:String,default:""}},emits:["update","remove"],setup(t,{emit:s}){const e=t;ae("$utils");const d=B(()=>e.tax.compound_tax&&e.store.getSubtotalWithDiscount?Math.round((e.store.getSubtotalWithDiscount+e.store.getTotalSimpleTax)*e.tax.percent/100):e.store.getSubtotalWithDiscount&&e.tax.percent?Math.round(e.store.getSubtotalWithDiscount*e.tax.percent/100):0);Oe(()=>{e.store.getSubtotalWithDiscount&&w(),e.store.getTotalSimpleTax&&w()});function w(){s("update",G(N({},e.tax),{amount:d.value}))}return($,I)=>{const y=p("BaseFormatMoney"),C=p("BaseIcon");return l(),v("div",Gt,[a("label",Wt,_(t.tax.name)+" ("+_(t.tax.percent)+" %) ",1),a("label",Rt,[n(y,{amount:t.tax.amount,currency:t.currency},null,8,["amount","currency"]),n(C,{name:"TrashIcon",class:"h-5 ml-2 cursor-pointer",onClick:I[0]||(I[0]=m=>$.$emit("remove",t.tax.id))})])])}}},Ht={class:"w-full mt-4 tax-select"},Jt={class:"relative w-full max-w-md px-4"},Zt={class:"overflow-hidden rounded-md shadow-lg ring-1 ring-black ring-opacity-5"},Kt={class:"relative bg-white"},Qt={class:"relative p-4"},es={key:0,class:"relative flex flex-col overflow-auto list max-h-36 border-t border-gray-200"},ts=["onClick"],ss={class:"flex justify-between px-2"},os={class:"m-0 text-base font-semibold leading-tight text-gray-700 cursor-pointer"},ns={class:"m-0 text-base font-semibold text-gray-700 cursor-pointer"},as={key:1,class:"flex justify-center p-5 text-gray-400"},rs={class:"text-base text-gray-500 cursor-pointer"},ls={class:"m-0 ml-3 text-sm leading-none cursor-pointer font-base text-primary-400"},is={props:{type:{type:String,default:null},store:{type:Object,default:null},storeProp:{type:String,default:""}},emits:["select:taxType"],setup(t,{emit:s}){const e=t,d=H(),w=ee(),$=ye(),{t:I}=J(),y=W(null),C=B(()=>y.value?w.taxTypes.filter(function(T){return T.name.toLowerCase().indexOf(y.value.toLowerCase())!==-1}):w.taxTypes),m=B(()=>e.store[e.storeProp].taxes);function q(T,i){s("select:taxType",N({},T)),i()}function V(){d.openModal({title:I("settings.tax_types.add_tax"),componentName:"TaxTypeModal",size:"sm",refreshData:T=>s("select:taxType",T)})}return(T,i)=>{const r=p("BaseIcon"),u=p("BaseInput");return l(),v("div",Ht,[n(o(Fe),{class:"relative"},{default:c(({isOpen:h})=>[n(o(Ue),{class:X([h?"":"text-opacity-90","flex items-center text-sm font-medium text-primary-400 focus:outline-none focus:border-none"])},{default:c(()=>[n(r,{name:"PlusIcon",class:"w-4 h-4 font-medium text-primary-400"}),E(" "+_(T.$t("settings.tax_types.add_tax")),1)]),_:2},1032,["class"]),a("div",Jt,[n(ze,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"translate-y-1 opacity-0","enter-to-class":"translate-y-0 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"translate-y-0 opacity-100","leave-to-class":"translate-y-1 opacity-0"},{default:c(()=>[n(o(Ne),{style:{"min-width":"350px","margin-left":"62px",top:"-28px"},class:"absolute z-10 px-4 py-2 -translate-x-full sm:px-0"},{default:c(({close:M})=>[a("div",Zt,[a("div",Kt,[a("div",Qt,[n(u,{modelValue:y.value,"onUpdate:modelValue":i[0]||(i[0]=x=>y.value=x),placeholder:T.$t("general.search"),type:"text",class:"text-black"},null,8,["modelValue","placeholder"])]),o(C).length>0?(l(),v("div",es,[(l(!0),v(Q,null,se(o(C),(x,D)=>(l(),v("div",{key:D,class:X([{"bg-gray-100 cursor-not-allowed opacity-50 pointer-events-none":o(m).find(k=>k.tax_type_id===x.id)},"px-6 py-4 border-b border-gray-200 border-solid cursor-pointer hover:bg-gray-100 hover:cursor-pointer last:border-b-0"]),tabindex:"2",onClick:k=>q(x,M)},[a("div",ss,[a("label",os,_(x.name),1),a("label",ns,_(x.percent)+" % ",1)])],10,ts))),128))])):(l(),v("div",as,[a("label",rs,_(T.$t("general.no_tax_found")),1)]))]),o($).hasAbilities(o(ne).CREATE_TAX_TYPE)?(l(),v("button",{key:0,type:"button",class:"flex items-center justify-center w-full h-10 px-2 py-3 bg-gray-200 border-none outline-none",onClick:V},[n(r,{name:"CheckCircleIcon",class:"text-primary-400"}),a("label",ls,_(T.$t("estimates.add_new_tax")),1)])):A("",!0)])]),_:1})]),_:1})])]),_:1})])}}},ds={class:"px-5 py-4 mt-6 bg-white border border-gray-200 border-solid rounded md:min-w-[390px] min-w-[300px] lg:mt-7"},cs={class:"flex items-center justify-between w-full"},us={key:1,class:"text-sm font-semibold leading-5 text-gray-400 uppercase"},ms={key:3,class:"flex items-center justify-center m-0 text-lg text-black uppercase"},ps={key:1,class:"m-0 text-sm font-semibold leading-5 text-gray-500 uppercase"},ys={key:3,class:"flex items-center justify-center m-0 text-lg text-black uppercase"},xs={key:0,class:"flex items-center justify-between w-full mt-2"},fs={key:1,class:"text-sm font-semibold leading-5 text-gray-400 uppercase"},gs={key:3,class:"flex",style:{width:"140px"},role:"group"},hs={class:"flex items-center"},_s={key:1},bs={class:"flex items-center justify-between w-full pt-2 mt-5 border-t border-gray-200 border-solid"},vs={key:1,class:"m-0 text-sm font-semibold leading-5 text-gray-400 uppercase"},$s={key:3,class:"flex items-center justify-center text-lg uppercase text-primary-400"},Ks={props:{store:{type:Object,default:null},storeProp:{type:String,default:""},taxPopupType:{type:String,default:""},currency:{type:[Object,String],default:""},isLoading:{type:Boolean,default:!1}},setup(t){const s=t,e=W(null);ae("$utils");const d=te(),w=B({get:()=>s.store[s.storeProp].discount,set:i=>{s.store[s.storeProp].discount_type==="percentage"?s.store[s.storeProp].discount_val=Math.round(s.store.getSubTotal*i/100):s.store[s.storeProp].discount_val=Math.round(i*100),s.store[s.storeProp].discount=i}}),$=B({get:()=>s.store[s.storeProp].taxes,set:i=>{s.store.$patch(r=>{r[s.storeProp].taxes=i})}}),I=B(()=>{let i=[];return s.store[s.storeProp].items.forEach(r=>{r.taxes&&r.taxes.forEach(u=>{let h=i.find(M=>M.tax_type_id===u.tax_type_id);h?h.amount+=u.amount:u.tax_type_id&&i.push({tax_type_id:u.tax_type_id,amount:u.amount,percent:u.percent,name:u.name})})}),i}),y=B(()=>s.currency?s.currency:d.selectedCompanyCurrency);function C(){s.store[s.storeProp].discount_type!=="fixed"&&(s.store[s.storeProp].discount_val=Math.round(s.store[s.storeProp].discount*100),s.store[s.storeProp].discount_type="fixed")}function m(){s.store[s.storeProp].discount_type!=="percentage"&&(s.store[s.storeProp].discount_val=s.store.getSubTotal*s.store[s.storeProp].discount/100,s.store[s.storeProp].discount_type="percentage")}function q(i){let r=0;i.compound_tax&&s.store.getSubtotalWithDiscount?r=Math.round((s.store.getSubtotalWithDiscount+s.store.getTotalSimpleTax)*i.percent/100):s.store.getSubtotalWithDiscount&&i.percent&&(r=Math.round(s.store.getSubtotalWithDiscount*i.percent/100));let u=G(N({},ne),{id:he.raw(),name:i.name,percent:i.percent,compound_tax:i.compound_tax,tax_type_id:i.id,amount:r});s.store.$patch(h=>{h[s.storeProp].taxes.push(N({},u))})}function V(i){const r=s.store[s.storeProp].taxes.find(u=>u.id===i.id);r&&Object.assign(r,N({},i))}function T(i){const r=s.store[s.storeProp].taxes.findIndex(u=>u.id===i);s.store.$patch(u=>{u[s.storeProp].taxes.splice(r,1)})}return(i,r)=>{const u=p("BaseContentPlaceholdersText"),h=p("BaseContentPlaceholders"),M=p("BaseFormatMoney"),x=p("BaseInput"),D=p("BaseIcon"),k=p("BaseButton"),f=p("BaseDropdownItem"),b=p("BaseDropdown");return l(),v("div",ds,[a("div",cs,[t.isLoading?(l(),j(h,{key:0},{default:c(()=>[n(u,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("label",us,_(i.$t("estimates.sub_total")),1)),t.isLoading?(l(),j(h,{key:2},{default:c(()=>[n(u,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("label",ms,[n(M,{amount:t.store.getSubTotal,currency:o(y)},null,8,["amount","currency"])]))]),(l(!0),v(Q,null,se(o(I),S=>(l(),v("div",{key:S.tax_type_id,class:"flex items-center justify-between w-full"},[t.isLoading?(l(),j(h,{key:0},{default:c(()=>[n(u,{lines:1,class:"w-16 h-5"})]),_:1})):t.store[t.storeProp].tax_per_item==="YES"?(l(),v("label",ps,_(S.name)+" - "+_(S.percent)+"% ",1)):A("",!0),t.isLoading?(l(),j(h,{key:2},{default:c(()=>[n(u,{lines:1,class:"w-16 h-5"})]),_:1})):t.store[t.storeProp].tax_per_item==="YES"?(l(),v("label",ys,[n(M,{amount:S.amount,currency:o(y)},null,8,["amount","currency"])])):A("",!0)]))),128)),t.store[t.storeProp].discount_per_item==="NO"||t.store[t.storeProp].discount_per_item===null?(l(),v("div",xs,[t.isLoading?(l(),j(h,{key:0},{default:c(()=>[n(u,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("label",fs,_(i.$t("estimates.discount")),1)),t.isLoading?(l(),j(h,{key:2},{default:c(()=>[n(u,{lines:1,class:"w-24 h-8 rounded-md border"})]),_:1})):(l(),v("div",gs,[n(x,{modelValue:o(w),"onUpdate:modelValue":r[0]||(r[0]=S=>K(w)?w.value=S:null),class:"border-r-0 focus:border-r-2 rounded-tr-sm rounded-br-sm h-[38px]"},null,8,["modelValue"]),n(b,{position:"bottom-end"},{activator:c(()=>[n(k,{class:"rounded-tr-md rounded-br-md p-2 rounded-none",type:"button",variant:"white"},{default:c(()=>[a("span",hs,[E(_(t.store[t.storeProp].discount_type=="fixed"?o(y).symbol:"%")+" ",1),n(D,{name:"ChevronDownIcon",class:"w-4 h-4 text-gray-500 ml-1"})])]),_:1})]),default:c(()=>[n(f,{onClick:C},{default:c(()=>[E(_(i.$t("general.fixed")),1)]),_:1}),n(f,{onClick:m},{default:c(()=>[E(_(i.$t("general.percentage")),1)]),_:1})]),_:1})]))])):A("",!0),t.store[t.storeProp].tax_per_item==="NO"||t.store[t.storeProp].tax_per_item===null?(l(),v("div",_s,[(l(!0),v(Q,null,se(o($),(S,L)=>(l(),j(Xt,{key:S.id,index:L,tax:S,taxes:o($),currency:t.currency,store:t.store,onRemove:T,onUpdate:V},null,8,["index","tax","taxes","currency","store"]))),128))])):A("",!0),t.store[t.storeProp].tax_per_item==="NO"||t.store[t.storeProp].tax_per_item===null?(l(),v("div",{key:2,ref:(S,L)=>{L.taxModal=S,e.value=S},class:"float-right pt-2 pb-4"},[n(is,{"store-prop":t.storeProp,store:t.store,type:t.taxPopupType,"onSelect:taxType":q},null,8,["store-prop","store","type"])],512)):A("",!0),a("div",bs,[t.isLoading?(l(),j(h,{key:0},{default:c(()=>[n(u,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("label",vs,_(i.$t("estimates.total"))+" "+_(i.$t("estimates.amount"))+":",1)),t.isLoading?(l(),j(h,{key:2},{default:c(()=>[n(u,{lines:1,class:"w-16 h-5"})]),_:1})):(l(),v("label",$s,[n(M,{amount:t.store.getTotal,currency:o(y)},null,8,["amount","currency"])]))])])}}},ws={class:"flex text-gray-800 font-medium text-sm mb-2"},Bs=a("span",{class:"text-sm text-red-500"}," *",-1),Qs={props:{store:{type:Object,default:null},storeProp:{type:String,default:""}},setup(t){const s=t,e=H(),{t:d}=J();function w(){e.openModal({title:d("general.choose_template"),componentName:"SelectTemplate",data:{templates:s.store.templates,store:s.store,storeProp:s.storeProp}})}return($,I)=>{const y=p("BaseIcon"),C=p("BaseButton");return l(),v("div",null,[a("label",ws,[E(_($.$t("general.select_template"))+" ",1),Bs]),n(C,{type:"button",class:"flex justify-center w-full text-sm lg:w-auto hover:bg-gray-200",variant:"gray",onClick:w},{right:c(m=>[n(y,{name:"PencilIcon",class:X(m.class)},null,8,["class"])]),default:c(()=>[E(" "+_(t.store[t.storeProp].template_name),1)]),_:1})])}}},Is={class:"mb-6"},Ss={class:"z-20 text-sm font-semibold leading-5 text-primary-400 float-right"},Ps={class:"text-gray-800 font-medium mb-4 text-sm"},eo={props:{store:{type:Object,default:null},storeProp:{type:String,default:""},fields:{type:Object,default:null},type:{type:String,default:null}},setup(t){const s=t;function e(d){s.store[s.storeProp].notes=""+d.notes}return(d,w)=>{const $=p("BaseCustomInput");return l(),v("div",Is,[a("div",Ss,[n(Ge,{type:t.type,onSelect:e},null,8,["type"])]),a("label",Ps,_(d.$t("invoices.notes")),1),n($,{modelValue:t.store[t.storeProp].notes,"onUpdate:modelValue":w[0]||(w[0]=I=>t.store[t.storeProp].notes=I),"content-loading":t.store.isFetchingInitialSettings,fields:t.fields,class:"mt-1"},null,8,["modelValue","content-loading","fields"])])}}},Ts={class:"flex justify-between w-full"},ks={class:"px-8 py-8 sm:p-6"},Cs={key:0,class:"grid grid-cols-3 gap-2 p-1 overflow-x-auto"},Ms=["src","alt","onClick"],Ds=["alt","src"],Vs={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},to={setup(t){const s=H(),e=W(""),d=B(()=>s.active&&s.componentName==="SelectTemplate"),w=B(()=>s.title);function $(){s.data.store[s.data.storeProp].template_name?e.value=s.data.store[s.data.storeProp].template_name:e.value=s.data.templates[0]}async function I(){await s.data.store.setTemplate(e.value),C()}function y(){return new URL("/build/img/tick.png",self.location)}function C(){s.closeModal(),setTimeout(()=>{s.$reset()},300)}return(m,q)=>{const V=p("BaseIcon"),T=p("BaseButton"),i=p("BaseModal");return l(),j(i,{show:o(d),onClose:C,onOpen:$},{header:c(()=>[a("div",Ts,[E(_(o(w))+" ",1),n(V,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:C})])]),default:c(()=>[a("div",ks,[o(s).data?(l(),v("div",Cs,[(l(!0),v(Q,null,se(o(s).data.templates,(r,u)=>(l(),v("div",{key:u,class:X([{"border border-solid border-primary-500":e.value===r.name},"relative flex flex-col m-2 border border-gray-200 border-solid cursor-pointer hover:border-primary-300"])},[a("img",{src:r.path,alt:r.name,class:"w-full",onClick:h=>e.value=r.name},null,8,Ms),e.value===r.name?(l(),v("img",{key:0,alt:r.name,class:"absolute z-10 w-5 h-5 text-primary-500",style:{top:"-6px",right:"-5px"},src:y()},null,8,Ds)):A("",!0),a("span",{class:X(["w-full p-1 bg-gray-200 text-sm text-center absolute bottom-0 left-0",{"text-primary-500 bg-primary-100":e.value===r.name,"text-gray-600":e.value!=r.name}])},_(r.name),3)],2))),128))])):A("",!0)]),a("div",Vs,[n(T,{class:"mr-3",variant:"primary-outline",onClick:C},{default:c(()=>[E(_(m.$t("general.cancel")),1)]),_:1}),n(T,{variant:"primary",onClick:q[0]||(q[0]=r=>I())},{left:c(r=>[n(V,{name:"SaveIcon",class:X(r.class)},null,8,["class"])]),default:c(()=>[E(" "+_(m.$t("general.choose")),1)]),_:1})])]),_:1},8,["show"])}}},js={class:"flex justify-between w-full"},qs={class:"item-modal"},Ls=["onSubmit"],Es={class:"px-8 py-8 sm:p-6"},As={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},so={emits:["newItem"],setup(t,{emit:s}){const e=H(),d=xe(),w=te(),$=ee();Me(),De();const{t:I}=J(),y=W(!1),C=W(w.selectedCompanySettings.tax_per_item),m=B(()=>e.active&&e.componentName==="ItemModal"),q=B({get:()=>d.currentItem.price/100,set:x=>{d.currentItem.price=Math.round(x*100)}}),V=B({get:()=>d.currentItem.taxes.map(x=>{if(x)return G(N({},x),{tax_type_id:x.id,tax_name:x.name+" ("+x.percent+"%)"})}),set:x=>{d.$patch(D=>{D.currentItem.taxes=x})}}),T=B(()=>C.value==="YES"),i={name:{required:U.withMessage(I("validation.required"),R),minLength:U.withMessage(I("validation.name_min_length",{count:3}),Ye(3))},description:{maxLength:U.withMessage(I("validation.description_maxlength",{count:255}),oe(255))}},r=le(i,B(()=>d.currentItem)),u=B(()=>$.taxTypes.map(x=>G(N({},x),{tax_name:x.name+" ("+x.percent+"%)"})));_e(()=>{r.value.$reset(),d.fetchItemUnits({limit:"all"})});async function h(){if(r.value.$touch(),r.value.$invalid)return!0;let x=G(N({},d.currentItem),{taxes:d.currentItem.taxes.map(k=>({tax_type_id:k.id,amount:q.value*k.percent/100,percent:k.percent,name:k.name,collective_tax:0}))});y.value=!0,await(d.isEdit?d.updateItem:d.addItem)(x).then(k=>{y.value=!1,k.data.data&&e.data&&e.refreshData(k.data.data),M()})}function M(){e.closeModal(),setTimeout(()=>{d.resetCurrentItem(),e.$reset(),r.value.$reset()},300)}return(x,D)=>{const k=p("BaseIcon"),f=p("BaseInput"),b=p("BaseInputGroup"),S=p("BaseMoney"),L=p("BaseMultiselect"),g=p("BaseTextarea"),P=p("BaseInputGrid"),O=p("BaseButton"),Y=p("BaseModal");return l(),j(Y,{show:o(m),onClose:M},{header:c(()=>[a("div",js,[E(_(o(e).title)+" ",1),n(k,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:M})])]),default:c(()=>[a("div",qs,[a("form",{action:"",onSubmit:be(h,["prevent"])},[a("div",Es,[n(P,{layout:"one-column"},{default:c(()=>[n(b,{label:x.$t("items.name"),required:"",error:o(r).name.$error&&o(r).name.$errors[0].$message},{default:c(()=>[n(f,{modelValue:o(d).currentItem.name,"onUpdate:modelValue":D[0]||(D[0]=z=>o(d).currentItem.name=z),type:"text",invalid:o(r).name.$error,onInput:D[1]||(D[1]=z=>o(r).name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),n(b,{label:x.$t("items.price")},{default:c(()=>[n(S,{key:o(w).selectedCompanyCurrency,modelValue:o(q),"onUpdate:modelValue":D[2]||(D[2]=z=>K(q)?q.value=z:null),currency:o(w).selectedCompanyCurrency,class:"relative w-full focus:border focus:border-solid focus:border-primary"},null,8,["modelValue","currency"])]),_:1},8,["label"]),n(b,{label:x.$t("items.unit")},{default:c(()=>[n(L,{modelValue:o(d).currentItem.unit_id,"onUpdate:modelValue":D[3]||(D[3]=z=>o(d).currentItem.unit_id=z),label:"name",options:o(d).itemUnits,"value-prop":"id","can-deselect":!1,"can-clear":!1,placeholder:x.$t("items.select_a_unit"),searchable:"","track-by":"id"},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),o(T)?(l(),j(b,{key:0,label:x.$t("items.taxes")},{default:c(()=>[n(L,{modelValue:o(V),"onUpdate:modelValue":D[4]||(D[4]=z=>K(V)?V.value=z:null),options:o(u),label:"name","value-prop":"id",class:"w-full","can-deselect":!1,"can-clear":!1,searchable:"","track-by":"id",object:""},null,8,["modelValue","options"])]),_:1},8,["label"])):A("",!0),n(b,{label:x.$t("items.description"),error:o(r).description.$error&&o(r).description.$errors[0].$message},{default:c(()=>[n(g,{modelValue:o(d).currentItem.description,"onUpdate:modelValue":D[5]||(D[5]=z=>o(d).currentItem.description=z),rows:"4",cols:"50",invalid:o(r).description.$error,onInput:D[6]||(D[6]=z=>o(r).description.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1})]),a("div",As,[n(O,{class:"mr-3",variant:"primary-outline",type:"button",onClick:M},{default:c(()=>[E(_(x.$t("general.cancel")),1)]),_:1}),n(O,{loading:y.value,disabled:y.value,variant:"primary",type:"submit"},{left:c(z=>[n(k,{name:"SaveIcon",class:X(z.class)},null,8,["class"])]),default:c(()=>[E(" "+_(o(d).isEdit?x.$t("general.update"):x.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,Ls)])]),_:1},8,["show"])}}},Os={class:"flex justify-between w-full"},Us={class:"flex flex-col"},zs={class:"text-sm text-gray-500 mt-1"},Ns=["onSubmit"],Fs={class:"p-4 sm:p-6"},Ys={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},Gs={emits:["addTax"],setup(t,{emit:s}){const e=H();Ve();const d=fe({state:"",city:"",address_street_1:"",zip:""}),w=W(!1),$=ee(),{t:I}=J(),y=B(()=>e.active&&e.componentName==="TaxationAddressModal"),C=B(()=>({state:{required:U.withMessage(I("validation.required"),R)},city:{required:U.withMessage(I("validation.required"),R)},address_street_1:{required:U.withMessage(I("validation.required"),R)},zip:{required:U.withMessage(I("validation.required"),R)}})),m=le(C,B(()=>d));async function q(){if(m.value.$touch(),m.value.$invalid)return!0;let i={address:d};e.id&&(i.customer_id=e.id),d.address_street_1=d.address_street_1.replace(/(\r\n|\n|\r)/gm,""),w.value=!0,await $.fetchSalesTax(i).then(r=>{w.value=!1,s("addTax",r.data.data),T()}).catch(r=>{w.value=!1})}function V(){var i,r,u,h;d.state=(i=e==null?void 0:e.data)==null?void 0:i.state,d.city=(r=e==null?void 0:e.data)==null?void 0:r.city,d.address_street_1=(u=e==null?void 0:e.data)==null?void 0:u.address_street_1,d.zip=(h=e==null?void 0:e.data)==null?void 0:h.zip}function T(){e.closeModal()}return(i,r)=>{const u=p("BaseIcon"),h=p("BaseInput"),M=p("BaseInputGroup"),x=p("BaseTextarea"),D=p("BaseInputGrid"),k=p("BaseButton"),f=p("BaseModal");return l(),j(f,{show:o(y),onClose:T,onOpen:V},{header:c(()=>[a("div",Os,[a("div",Us,[E(_(o(e).title)+" ",1),a("p",zs,_(o(e).content),1)]),n(u,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:T})])]),default:c(()=>[a("form",{onSubmit:be(q,["prevent"])},[a("div",Fs,[n(D,{layout:"one-column"},{default:c(()=>[n(M,{required:"",error:o(m).state.$error&&o(m).state.$errors[0].$message,label:i.$t("customers.state")},{default:c(()=>[n(h,{modelValue:o(d).state,"onUpdate:modelValue":r[0]||(r[0]=b=>o(d).state=b),type:"text",name:"shippingState",class:"mt-1 md:mt-0",invalid:o(m).state.$error,onInput:r[1]||(r[1]=b=>o(m).state.$touch()),placeholder:i.$t("settings.taxations.state_placeholder")},null,8,["modelValue","invalid","placeholder"])]),_:1},8,["error","label"]),n(M,{required:"",error:o(m).city.$error&&o(m).city.$errors[0].$message,label:i.$t("customers.city")},{default:c(()=>[n(h,{modelValue:o(d).city,"onUpdate:modelValue":r[2]||(r[2]=b=>o(d).city=b),type:"text",name:"shippingCity",class:"mt-1 md:mt-0",invalid:o(m).city.$error,onInput:r[3]||(r[3]=b=>o(m).city.$touch()),placeholder:i.$t("settings.taxations.city_placeholder")},null,8,["modelValue","invalid","placeholder"])]),_:1},8,["error","label"]),n(M,{required:"",error:o(m).address_street_1.$error&&o(m).address_street_1.$errors[0].$message,label:i.$t("customers.address")},{default:c(()=>[n(x,{modelValue:o(d).address_street_1,"onUpdate:modelValue":r[4]||(r[4]=b=>o(d).address_street_1=b),rows:"2",cols:"50",class:"mt-1 md:mt-0",invalid:o(m).address_street_1.$error,onInput:r[5]||(r[5]=b=>o(m).address_street_1.$touch()),placeholder:i.$t("settings.taxations.address_placeholder")},null,8,["modelValue","invalid","placeholder"])]),_:1},8,["error","label"]),n(M,{required:"",error:o(m).zip.$error&&o(m).zip.$errors[0].$message,label:i.$t("customers.zip_code")},{default:c(()=>[n(h,{modelValue:o(d).zip,"onUpdate:modelValue":r[6]||(r[6]=b=>o(d).zip=b),invalid:o(m).zip.$error,onInput:r[7]||(r[7]=b=>o(m).zip.$touch()),type:"text",class:"mt-1 md:mt-0",placeholder:i.$t("settings.taxations.zip_placeholder")},null,8,["modelValue","invalid","placeholder"])]),_:1},8,["error","label"])]),_:1})]),a("div",Ys,[n(k,{class:"mr-3 text-sm",type:"button",variant:"primary-outline",onClick:T},{default:c(()=>[E(_(i.$t("general.cancel")),1)]),_:1}),n(k,{loading:w.value,variant:"primary",type:"submit"},{left:c(b=>[w.value?A("",!0):(l(),j(u,{key:0,name:"SaveIcon",class:X(b.class)},null,8,["class"]))]),default:c(()=>[E(" "+_(i.$t("general.save")),1)]),_:1},8,["loading"])])],40,Ns)]),_:1},8,["show"])}}},oo={props:{isEdit:{type:Boolean,default:null},type:{type:String,default:null},customer:{type:[Object],default:null},store:{type:Object,default:null},storeProp:{type:String,default:null}},setup(t){const s=t,e="Sales Tax",d="MODULE",w=H(),$=te(),I=ee(),{t:y}=J(),C=W(!1),m=B(()=>s.isEdit?s.store[s.storeProp].sales_tax_address_type==="billing":$.selectedCompanySettings.sales_tax_address_type==="billing"),q=B(()=>$.selectedCompanySettings.sales_tax_us_enabled==="YES"),V=B(()=>s.isEdit?s.store[s.storeProp].sales_tax_type==="customer_level":$.selectedCompanySettings.sales_tax_type==="customer_level"),T=B(()=>s.isEdit?s.store[s.storeProp].sales_tax_type==="company_level":$.selectedCompanySettings.sales_tax_type==="company_level"),i=B(()=>{if(V.value&&r.value){let f=m.value?s.customer.billing:s.customer.shipping;return{address:Z.exports.pick(f,["address_street_1","city","state","zip"]),customer_id:s.customer.id}}else if(T.value&&r.value)return{address:Z.exports.pick(address,["address_street_1","city","state","zip"])}}),r=B(()=>{var f,b;if(V.value){let S=m.value?(f=s.customer)==null?void 0:f.billing:(b=s.customer)==null?void 0:b.shipping;return u(S)}else if(T.value)return u($.selectedCompany.address);return!1});re(()=>s.customer,(f,b)=>{if(f&&b&&V.value){h(f,b);return}!r.value&&V.value&&f?setTimeout(()=>{M()},500):V.value&&f?x():V.value&&!f&&k()}),_e(()=>{T.value&&(r.value?x():M())});function u(f){return f?f.address_street_1&&f.city&&f.state&&f.zip:!1}function h(f,b){const S=m.value?f.billing:f.shipping,L=m.value?b.billing:b.shipping,g=Z.exports.pick(S,["address_street_1","city","state","zip"]),P=Z.exports.pick(L,["address_street_1","city","state","zip"]);Z.exports.isEqual(g,P)||x()}function M(){var S,L;if(!q.value)return;let f=null,b="";V.value?m.value?(f=(S=s.customer)==null?void 0:S.billing,b=y("settings.taxations.add_billing_address")):(f=(L=s.customer)==null?void 0:L.shipping,b=y("settings.taxations.add_shipping_address")):(f=$.selectedCompany.address,b=y("settings.taxations.add_company_address")),w.openModal({title:b,content:y("settings.taxations.modal_description"),componentName:"TaxationAddressModal",data:f,id:V.value?s.customer.id:""})}async function x(){!q.value||(C.value=!0,await I.fetchSalesTax(i.value).then(f=>{D(f.data.data),C.value=!1}).catch(f=>{f.response.data.error&&setTimeout(()=>{M()},500),C.value=!1}))}function D(f){f.tax_type_id=f.id;const b=s.store[s.storeProp].taxes.findIndex(S=>S.name===e&&S.type===d);b>-1?Object.assign(s.store[s.storeProp].taxes[b],f):s.store[s.storeProp].taxes.push(f)}function k(){const f=s.store[s.storeProp].taxes.findIndex(S=>S.name===e&&S.type===d);f>-1&&s.store[s.storeProp].taxes.splice(f,1);let b=I.taxTypes.findIndex(S=>S.name===e&&S.type===d);b>-1&&I.taxTypes.splice(b,1)}return(f,b)=>(l(),j(Gs,{onAddTax:D}))}};export{to as _,so as a,oo as b,Zs as c,eo as d,Qs as e,Ks as f}; diff --git a/public/build/assets/SelectNotePopup.781ad74a.js b/public/build/assets/SelectNotePopup.5f004c2c.js similarity index 96% rename from public/build/assets/SelectNotePopup.781ad74a.js rename to public/build/assets/SelectNotePopup.5f004c2c.js index 2e04a02b7..12899e60f 100644 --- a/public/build/assets/SelectNotePopup.781ad74a.js +++ b/public/build/assets/SelectNotePopup.5f004c2c.js @@ -1 +1 @@ -var P=Object.defineProperty;var b=Object.getOwnPropertySymbols;var A=Object.prototype.hasOwnProperty,T=Object.prototype.propertyIsEnumerable;var g=(s,t,e)=>t in s?P(s,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):s[t]=e,x=(s,t)=>{for(var e in t||(t={}))A.call(t,e)&&g(s,e,t[e]);if(b)for(var e of b(t))T.call(t,e)&&g(s,e,t[e]);return s};import{B as k,J as F,k as L,r as w,o as l,e as i,f as r,h as n,w as p,u as o,l as O,i as D,t as m,m as U,W,j as N,Y as G,X as J,F as B,y as X,Z as Y}from"./vendor.01d0adc5.js";import{u as Z,_ as q}from"./NoteModal.f6d01f84.js";import{c as H,e as K,g as C}from"./main.75722495.js";const Q={class:"w-full"},R={class:"overflow-hidden rounded-md shadow-lg ring-1 ring-black ring-opacity-5"},ee={class:"relative grid bg-white"},te={class:"relative p-4"},se={key:0,class:"relative flex flex-col overflow-auto list max-h-36"},oe=["onClick"],ae={class:"flex justify-between px-2"},ne={class:"m-0 text-base font-semibold leading-tight text-gray-700 cursor-pointer"},le={key:1,class:"flex justify-center p-5 text-gray-400"},re={class:"text-base text-gray-500"},ie={class:"m-0 ml-3 text-sm leading-none cursor-pointer font-base text-primary-400"},fe={props:{type:{type:String,default:null}},emits:["select"],setup(s,{emit:t}){const e=s;k(null);const{t:I}=F(),c=k(null),S=H(),d=Z(),y=K(),_=L(()=>c.value?d.notes.filter(function(a){return a.name.toLowerCase().indexOf(c.value.toLowerCase())!==-1}):d.notes);async function V(){await d.fetchNotes({filter:{},orderByField:"",orderBy:"",type:e.type?e.type:""})}function j(a,u){t("select",x({},d.notes[a])),c.value=null,u()}function z(){S.openModal({title:I("settings.customization.notes.add_note"),componentName:"NoteModal",size:"lg",data:e.type})}return(a,u)=>{const h=w("BaseIcon"),M=w("BaseInput");return l(),i(B,null,[r(q),n("div",Q,[r(o(Y),null,{default:p(({isOpen:$})=>[o(y).hasAbilities(o(C).VIEW_NOTE)?(l(),O(o(W),{key:0,class:U([$?"":"text-opacity-90","flex items-center z-10 font-medium text-primary-400 focus:outline-none focus:border-none"]),onClick:V},{default:p(()=>[r(h,{name:"PlusIcon",class:"w-4 h-4 font-medium text-primary-400"}),D(" "+m(a.$t("general.insert_note")),1)]),_:2},1032,["class"])):N("",!0),r(G,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"translate-y-1 opacity-0","enter-to-class":"translate-y-0 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"translate-y-0 opacity-100","leave-to-class":"translate-y-1 opacity-0"},{default:p(()=>[r(o(J),{class:"absolute z-20 px-4 mt-3 sm:px-0 w-screen max-w-full left-0 top-3"},{default:p(({close:E})=>[n("div",R,[n("div",ee,[n("div",te,[r(M,{modelValue:c.value,"onUpdate:modelValue":u[0]||(u[0]=f=>c.value=f),placeholder:a.$t("general.search"),type:"text",class:"text-black"},null,8,["modelValue","placeholder"])]),o(_).length>0?(l(),i("div",se,[(l(!0),i(B,null,X(o(_),(f,v)=>(l(),i("div",{key:v,tabindex:"2",class:"px-6 py-4 border-b border-gray-200 border-solid cursor-pointer hover:bg-gray-100 hover:cursor-pointer last:border-b-0",onClick:ce=>j(v,E)},[n("div",ae,[n("label",ne,m(f.name),1)])],8,oe))),128))])):(l(),i("div",le,[n("label",re,m(a.$t("general.no_note_found")),1)]))]),o(y).hasAbilities(o(C).MANAGE_NOTE)?(l(),i("button",{key:0,type:"button",class:"h-10 flex items-center justify-center w-full px-2 py-3 bg-gray-200 border-none outline-none",onClick:z},[r(h,{name:"CheckCircleIcon",class:"text-primary-400"}),n("label",ie,m(a.$t("settings.customization.notes.add_new_note")),1)])):N("",!0)])]),_:1})]),_:1})]),_:1})])],64)}}};export{fe as _}; +var P=Object.defineProperty;var b=Object.getOwnPropertySymbols;var A=Object.prototype.hasOwnProperty,T=Object.prototype.propertyIsEnumerable;var g=(s,t,e)=>t in s?P(s,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):s[t]=e,x=(s,t)=>{for(var e in t||(t={}))A.call(t,e)&&g(s,e,t[e]);if(b)for(var e of b(t))T.call(t,e)&&g(s,e,t[e]);return s};import{B as k,J as F,k as L,r as w,o as l,e as i,f as r,h as n,w as p,u as o,l as O,i as D,t as m,m as U,W,j as N,Y as G,X as J,F as B,y as X,Z as Y}from"./vendor.01d0adc5.js";import{u as Z,_ as q}from"./NoteModal.5bd3cf32.js";import{c as H,e as K,g as C}from"./main.24f7a84b.js";const Q={class:"w-full"},R={class:"overflow-hidden rounded-md shadow-lg ring-1 ring-black ring-opacity-5"},ee={class:"relative grid bg-white"},te={class:"relative p-4"},se={key:0,class:"relative flex flex-col overflow-auto list max-h-36"},oe=["onClick"],ae={class:"flex justify-between px-2"},ne={class:"m-0 text-base font-semibold leading-tight text-gray-700 cursor-pointer"},le={key:1,class:"flex justify-center p-5 text-gray-400"},re={class:"text-base text-gray-500"},ie={class:"m-0 ml-3 text-sm leading-none cursor-pointer font-base text-primary-400"},fe={props:{type:{type:String,default:null}},emits:["select"],setup(s,{emit:t}){const e=s;k(null);const{t:I}=F(),c=k(null),S=H(),d=Z(),y=K(),_=L(()=>c.value?d.notes.filter(function(a){return a.name.toLowerCase().indexOf(c.value.toLowerCase())!==-1}):d.notes);async function V(){await d.fetchNotes({filter:{},orderByField:"",orderBy:"",type:e.type?e.type:""})}function j(a,u){t("select",x({},d.notes[a])),c.value=null,u()}function z(){S.openModal({title:I("settings.customization.notes.add_note"),componentName:"NoteModal",size:"lg",data:e.type})}return(a,u)=>{const h=w("BaseIcon"),M=w("BaseInput");return l(),i(B,null,[r(q),n("div",Q,[r(o(Y),null,{default:p(({isOpen:$})=>[o(y).hasAbilities(o(C).VIEW_NOTE)?(l(),O(o(W),{key:0,class:U([$?"":"text-opacity-90","flex items-center z-10 font-medium text-primary-400 focus:outline-none focus:border-none"]),onClick:V},{default:p(()=>[r(h,{name:"PlusIcon",class:"w-4 h-4 font-medium text-primary-400"}),D(" "+m(a.$t("general.insert_note")),1)]),_:2},1032,["class"])):N("",!0),r(G,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"translate-y-1 opacity-0","enter-to-class":"translate-y-0 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"translate-y-0 opacity-100","leave-to-class":"translate-y-1 opacity-0"},{default:p(()=>[r(o(J),{class:"absolute z-20 px-4 mt-3 sm:px-0 w-screen max-w-full left-0 top-3"},{default:p(({close:E})=>[n("div",R,[n("div",ee,[n("div",te,[r(M,{modelValue:c.value,"onUpdate:modelValue":u[0]||(u[0]=f=>c.value=f),placeholder:a.$t("general.search"),type:"text",class:"text-black"},null,8,["modelValue","placeholder"])]),o(_).length>0?(l(),i("div",se,[(l(!0),i(B,null,X(o(_),(f,v)=>(l(),i("div",{key:v,tabindex:"2",class:"px-6 py-4 border-b border-gray-200 border-solid cursor-pointer hover:bg-gray-100 hover:cursor-pointer last:border-b-0",onClick:ce=>j(v,E)},[n("div",ae,[n("label",ne,m(f.name),1)])],8,oe))),128))])):(l(),i("div",le,[n("label",re,m(a.$t("general.no_note_found")),1)]))]),o(y).hasAbilities(o(C).MANAGE_NOTE)?(l(),i("button",{key:0,type:"button",class:"h-10 flex items-center justify-center w-full px-2 py-3 bg-gray-200 border-none outline-none",onClick:z},[r(h,{name:"CheckCircleIcon",class:"text-primary-400"}),n("label",ie,m(a.$t("settings.customization.notes.add_new_note")),1)])):N("",!0)])]),_:1})]),_:1})]),_:1})])],64)}}};export{fe as _}; diff --git a/public/build/assets/SendEstimateModal.a8bc3854.js b/public/build/assets/SendEstimateModal.123953ba.js similarity index 97% rename from public/build/assets/SendEstimateModal.a8bc3854.js rename to public/build/assets/SendEstimateModal.123953ba.js index 2784755f3..1c2a12e7e 100644 --- a/public/build/assets/SendEstimateModal.a8bc3854.js +++ b/public/build/assets/SendEstimateModal.123953ba.js @@ -1 +1 @@ -import{J as A,B as h,a0 as O,k as C,L as p,M as B,Q as E,T as J,r as d,o as g,l as M,w as l,h as v,i as f,t as $,u as e,f as a,e as N,j as x}from"./vendor.01d0adc5.js";import{c as Q,k as X,u as H,b as K}from"./main.75722495.js";import{u as W}from"./mail-driver.4ea1af6b.js";const Y={class:"flex justify-between w-full"},Z={key:0,action:""},ee={class:"px-8 py-8 sm:p-6"},te={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},ae={key:1},oe={class:"my-6 mx-4 border border-gray-200 relative"},re=f(" Edit "),se=["src"],le={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},me={setup(ne){const m=Q(),V=X(),U=H(),k=K();W();const{t:u}=A(),n=h(!1),I=h(""),b=h(!1),P=h(["customer","customerCustom","estimate","estimateCustom","company"]);let o=O({id:null,from:null,to:null,subject:"New Estimate",body:null});const D=C(()=>m.active&&m.componentName==="SendEstimateModal"),q=C(()=>m.data),G={from:{required:p.withMessage(u("validation.required"),B),email:p.withMessage(u("validation.email_incorrect"),E)},to:{required:p.withMessage(u("validation.required"),B),email:p.withMessage(u("validation.email_incorrect"),E)},subject:{required:p.withMessage(u("validation.required"),B)},body:{required:p.withMessage(u("validation.required"),B)}},r=J(G,C(()=>o));function L(){b.value=!1}async function F(){let s=await k.fetchBasicMailConfig();o.id=m.id,s.data&&(o.from=s.data.from_mail),q.value&&(o.to=q.value.customer.email),o.body=k.selectedCompanySettings.estimate_mail_body}async function S(){if(r.value.$touch(),r.value.$invalid)return!0;try{if(n.value=!0,!b.value){const c=await V.previewEstimate(o);n.value=!1,b.value=!0;var s=new Blob([c.data],{type:"text/html"});I.value=URL.createObjectURL(s);return}const t=await V.sendEstimate(o);if(n.value=!1,t.data.success)return y(),!0}catch(t){console.error(t),n.value=!1,U.showNotification({type:"error",message:u("estimates.something_went_wrong")})}}function y(){m.closeModal(),setTimeout(()=>{r.value.$reset(),b.value=!1,I.value=null},300)}return(s,t)=>{const c=d("BaseIcon"),j=d("BaseInput"),w=d("BaseInputGroup"),R=d("BaseCustomInput"),T=d("BaseInputGrid"),_=d("BaseButton"),z=d("BaseModal");return g(),M(z,{show:e(D),onClose:y,onOpen:F},{header:l(()=>[v("div",Y,[f($(e(m).title)+" ",1),a(c,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:y})])]),default:l(()=>[b.value?(g(),N("div",ae,[v("div",oe,[a(_,{class:"absolute top-4 right-4",disabled:n.value,variant:"primary-outline",onClick:L},{default:l(()=>[a(c,{name:"PencilIcon",class:"h-5 mr-2"}),re]),_:1},8,["disabled"]),v("iframe",{src:I.value,frameborder:"0",class:"w-full",style:{"min-height":"500px"}},null,8,se)]),v("div",le,[a(_,{class:"mr-3",variant:"primary-outline",type:"button",onClick:y},{default:l(()=>[f($(s.$t("general.cancel")),1)]),_:1}),a(_,{loading:n.value,disabled:n.value,variant:"primary",type:"button",onClick:S},{default:l(()=>[n.value?x("",!0):(g(),M(c,{key:0,name:"PaperAirplaneIcon",class:"mr-2"})),f(" "+$(s.$t("general.send")),1)]),_:1},8,["loading","disabled"])])])):(g(),N("form",Z,[v("div",ee,[a(T,{layout:"one-column"},{default:l(()=>[a(w,{label:s.$t("general.from"),required:"",error:e(r).from.$error&&e(r).from.$errors[0].$message},{default:l(()=>[a(j,{modelValue:e(o).from,"onUpdate:modelValue":t[0]||(t[0]=i=>e(o).from=i),type:"text",invalid:e(r).from.$error,onInput:t[1]||(t[1]=i=>e(r).from.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(w,{label:s.$t("general.to"),required:"",error:e(r).to.$error&&e(r).to.$errors[0].$message},{default:l(()=>[a(j,{modelValue:e(o).to,"onUpdate:modelValue":t[2]||(t[2]=i=>e(o).to=i),type:"text",invalid:e(r).to.$error,onInput:t[3]||(t[3]=i=>e(r).to.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(w,{label:s.$t("general.subject"),required:"",error:e(r).subject.$error&&e(r).subject.$errors[0].$message},{default:l(()=>[a(j,{modelValue:e(o).subject,"onUpdate:modelValue":t[4]||(t[4]=i=>e(o).subject=i),type:"text",invalid:e(r).subject.$error,onInput:t[5]||(t[5]=i=>e(r).subject.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(w,{label:s.$t("general.body"),required:""},{default:l(()=>[a(R,{modelValue:e(o).body,"onUpdate:modelValue":t[6]||(t[6]=i=>e(o).body=i),fields:P.value},null,8,["modelValue","fields"])]),_:1},8,["label"])]),_:1})]),v("div",te,[a(_,{class:"mr-3",variant:"primary-outline",type:"button",onClick:y},{default:l(()=>[f($(s.$t("general.cancel")),1)]),_:1}),a(_,{loading:n.value,disabled:n.value,variant:"primary",type:"button",class:"mr-3",onClick:S},{default:l(()=>[n.value?x("",!0):(g(),M(c,{key:0,name:"PhotographIcon",class:"h-5 mr-2"})),f(" "+$(s.$t("general.preview")),1)]),_:1},8,["loading","disabled"])])]))]),_:1},8,["show"])}}};export{me as _}; +import{J as A,B as h,a0 as O,k as C,L as p,M as B,Q as E,T as J,r as d,o as g,l as M,w as l,h as v,i as f,t as $,u as e,f as a,e as N,j as x}from"./vendor.01d0adc5.js";import{c as Q,k as X,u as H,b as K}from"./main.24f7a84b.js";import{u as W}from"./mail-driver.69202299.js";const Y={class:"flex justify-between w-full"},Z={key:0,action:""},ee={class:"px-8 py-8 sm:p-6"},te={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},ae={key:1},oe={class:"my-6 mx-4 border border-gray-200 relative"},re=f(" Edit "),se=["src"],le={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},me={setup(ne){const m=Q(),V=X(),U=H(),k=K();W();const{t:u}=A(),n=h(!1),I=h(""),b=h(!1),P=h(["customer","customerCustom","estimate","estimateCustom","company"]);let o=O({id:null,from:null,to:null,subject:"New Estimate",body:null});const D=C(()=>m.active&&m.componentName==="SendEstimateModal"),q=C(()=>m.data),G={from:{required:p.withMessage(u("validation.required"),B),email:p.withMessage(u("validation.email_incorrect"),E)},to:{required:p.withMessage(u("validation.required"),B),email:p.withMessage(u("validation.email_incorrect"),E)},subject:{required:p.withMessage(u("validation.required"),B)},body:{required:p.withMessage(u("validation.required"),B)}},r=J(G,C(()=>o));function L(){b.value=!1}async function F(){let s=await k.fetchBasicMailConfig();o.id=m.id,s.data&&(o.from=s.data.from_mail),q.value&&(o.to=q.value.customer.email),o.body=k.selectedCompanySettings.estimate_mail_body}async function S(){if(r.value.$touch(),r.value.$invalid)return!0;try{if(n.value=!0,!b.value){const c=await V.previewEstimate(o);n.value=!1,b.value=!0;var s=new Blob([c.data],{type:"text/html"});I.value=URL.createObjectURL(s);return}const t=await V.sendEstimate(o);if(n.value=!1,t.data.success)return y(),!0}catch(t){console.error(t),n.value=!1,U.showNotification({type:"error",message:u("estimates.something_went_wrong")})}}function y(){m.closeModal(),setTimeout(()=>{r.value.$reset(),b.value=!1,I.value=null},300)}return(s,t)=>{const c=d("BaseIcon"),j=d("BaseInput"),w=d("BaseInputGroup"),R=d("BaseCustomInput"),T=d("BaseInputGrid"),_=d("BaseButton"),z=d("BaseModal");return g(),M(z,{show:e(D),onClose:y,onOpen:F},{header:l(()=>[v("div",Y,[f($(e(m).title)+" ",1),a(c,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:y})])]),default:l(()=>[b.value?(g(),N("div",ae,[v("div",oe,[a(_,{class:"absolute top-4 right-4",disabled:n.value,variant:"primary-outline",onClick:L},{default:l(()=>[a(c,{name:"PencilIcon",class:"h-5 mr-2"}),re]),_:1},8,["disabled"]),v("iframe",{src:I.value,frameborder:"0",class:"w-full",style:{"min-height":"500px"}},null,8,se)]),v("div",le,[a(_,{class:"mr-3",variant:"primary-outline",type:"button",onClick:y},{default:l(()=>[f($(s.$t("general.cancel")),1)]),_:1}),a(_,{loading:n.value,disabled:n.value,variant:"primary",type:"button",onClick:S},{default:l(()=>[n.value?x("",!0):(g(),M(c,{key:0,name:"PaperAirplaneIcon",class:"mr-2"})),f(" "+$(s.$t("general.send")),1)]),_:1},8,["loading","disabled"])])])):(g(),N("form",Z,[v("div",ee,[a(T,{layout:"one-column"},{default:l(()=>[a(w,{label:s.$t("general.from"),required:"",error:e(r).from.$error&&e(r).from.$errors[0].$message},{default:l(()=>[a(j,{modelValue:e(o).from,"onUpdate:modelValue":t[0]||(t[0]=i=>e(o).from=i),type:"text",invalid:e(r).from.$error,onInput:t[1]||(t[1]=i=>e(r).from.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(w,{label:s.$t("general.to"),required:"",error:e(r).to.$error&&e(r).to.$errors[0].$message},{default:l(()=>[a(j,{modelValue:e(o).to,"onUpdate:modelValue":t[2]||(t[2]=i=>e(o).to=i),type:"text",invalid:e(r).to.$error,onInput:t[3]||(t[3]=i=>e(r).to.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(w,{label:s.$t("general.subject"),required:"",error:e(r).subject.$error&&e(r).subject.$errors[0].$message},{default:l(()=>[a(j,{modelValue:e(o).subject,"onUpdate:modelValue":t[4]||(t[4]=i=>e(o).subject=i),type:"text",invalid:e(r).subject.$error,onInput:t[5]||(t[5]=i=>e(r).subject.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(w,{label:s.$t("general.body"),required:""},{default:l(()=>[a(R,{modelValue:e(o).body,"onUpdate:modelValue":t[6]||(t[6]=i=>e(o).body=i),fields:P.value},null,8,["modelValue","fields"])]),_:1},8,["label"])]),_:1})]),v("div",te,[a(_,{class:"mr-3",variant:"primary-outline",type:"button",onClick:y},{default:l(()=>[f($(s.$t("general.cancel")),1)]),_:1}),a(_,{loading:n.value,disabled:n.value,variant:"primary",type:"button",class:"mr-3",onClick:S},{default:l(()=>[n.value?x("",!0):(g(),M(c,{key:0,name:"PhotographIcon",class:"h-5 mr-2"})),f(" "+$(s.$t("general.preview")),1)]),_:1},8,["loading","disabled"])])]))]),_:1},8,["show"])}}};export{me as _}; diff --git a/public/build/assets/SendInvoiceModal.89e6012d.js b/public/build/assets/SendInvoiceModal.1e029d4e.js similarity index 97% rename from public/build/assets/SendInvoiceModal.89e6012d.js rename to public/build/assets/SendInvoiceModal.1e029d4e.js index d70791222..7ca9d22e9 100644 --- a/public/build/assets/SendInvoiceModal.89e6012d.js +++ b/public/build/assets/SendInvoiceModal.1e029d4e.js @@ -1 +1 @@ -import{c as O,b as J,u as Q,i as X}from"./main.75722495.js";import{J as H,B as I,a0 as K,k as B,L as p,M as h,Q as N,T as W,r as d,o as _,l as M,w as n,h as v,i as f,t as $,u as e,f as a,e as x,m as Y,j as U}from"./vendor.01d0adc5.js";import{u as Z}from"./mail-driver.4ea1af6b.js";const ee={class:"flex justify-between w-full"},oe={key:0,action:""},te={class:"px-8 py-8 sm:p-6"},ae={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},re={key:1},se={class:"my-6 mx-4 border border-gray-200 relative"},le=f(" Edit "),ne=["src"],ie={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},pe={setup(ue){const c=O(),V=J(),P=Q(),k=X();Z();const{t:u}=H();let i=I(!1);const C=I(""),b=I(!1),D=I(["customer","customerCustom","invoice","invoiceCustom","company"]),r=K({id:null,from:null,to:null,subject:"New Invoice",body:null}),G=B(()=>c.active&&c.componentName==="SendInvoiceModal"),L=B(()=>c.title),q=B(()=>c.data),T={from:{required:p.withMessage(u("validation.required"),h),email:p.withMessage(u("validation.email_incorrect"),N)},to:{required:p.withMessage(u("validation.required"),h),email:p.withMessage(u("validation.email_incorrect"),N)},subject:{required:p.withMessage(u("validation.required"),h)},body:{required:p.withMessage(u("validation.required"),h)}},t=W(T,B(()=>r));function z(){b.value=!1}async function F(){let s=await V.fetchBasicMailConfig();r.id=c.id,s.data&&(r.from=s.data.from_mail),q.value&&(r.to=q.value.customer.email),r.body=V.selectedCompanySettings.invoice_mail_body}async function S(){if(t.value.$touch(),t.value.$invalid)return!0;try{if(i.value=!0,!b.value){const m=await k.previewInvoice(r);i.value=!1,b.value=!0;var s=new Blob([m.data],{type:"text/html"});C.value=URL.createObjectURL(s);return}if((await k.sendInvoice(r)).data.success)return y(),!0}catch(o){console.error(o),i.value=!1,P.showNotification({type:"error",message:u("invoices.something_went_wrong")})}}function y(){c.closeModal(),setTimeout(()=>{t.value.$reset(),b.value=!1,C.value=null},300)}return(s,o)=>{const m=d("BaseIcon"),j=d("BaseInput"),w=d("BaseInputGroup"),R=d("BaseCustomInput"),A=d("BaseInputGrid"),g=d("BaseButton"),E=d("BaseModal");return _(),M(E,{show:e(G),onClose:y,onOpen:F},{header:n(()=>[v("div",ee,[f($(e(L))+" ",1),a(m,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:y})])]),default:n(()=>[b.value?(_(),x("div",re,[v("div",se,[a(g,{class:"absolute top-4 right-4",disabled:e(i),variant:"primary-outline",onClick:z},{default:n(()=>[a(m,{name:"PencilIcon",class:"h-5 mr-2"}),le]),_:1},8,["disabled"]),v("iframe",{src:C.value,frameborder:"0",class:"w-full",style:{"min-height":"500px"}},null,8,ne)]),v("div",ie,[a(g,{class:"mr-3",variant:"primary-outline",type:"button",onClick:y},{default:n(()=>[f($(s.$t("general.cancel")),1)]),_:1}),a(g,{loading:e(i),disabled:e(i),variant:"primary",type:"button",onClick:o[7]||(o[7]=l=>S())},{default:n(()=>[e(i)?U("",!0):(_(),M(m,{key:0,name:"PaperAirplaneIcon",class:"h-5 mr-2"})),f(" "+$(s.$t("general.send")),1)]),_:1},8,["loading","disabled"])])])):(_(),x("form",oe,[v("div",te,[a(A,{layout:"one-column",class:"col-span-7"},{default:n(()=>[a(w,{label:s.$t("general.from"),required:"",error:e(t).from.$error&&e(t).from.$errors[0].$message},{default:n(()=>[a(j,{modelValue:e(r).from,"onUpdate:modelValue":o[0]||(o[0]=l=>e(r).from=l),type:"text",invalid:e(t).from.$error,onInput:o[1]||(o[1]=l=>e(t).from.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(w,{label:s.$t("general.to"),required:"",error:e(t).to.$error&&e(t).to.$errors[0].$message},{default:n(()=>[a(j,{modelValue:e(r).to,"onUpdate:modelValue":o[2]||(o[2]=l=>e(r).to=l),type:"text",invalid:e(t).to.$error,onInput:o[3]||(o[3]=l=>e(t).to.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(w,{error:e(t).subject.$error&&e(t).subject.$errors[0].$message,label:s.$t("general.subject"),required:""},{default:n(()=>[a(j,{modelValue:e(r).subject,"onUpdate:modelValue":o[4]||(o[4]=l=>e(r).subject=l),type:"text",invalid:e(t).subject.$error,onInput:o[5]||(o[5]=l=>e(t).subject.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),a(w,{label:s.$t("general.body"),error:e(t).body.$error&&e(t).body.$errors[0].$message,required:""},{default:n(()=>[a(R,{modelValue:e(r).body,"onUpdate:modelValue":o[6]||(o[6]=l=>e(r).body=l),fields:D.value},null,8,["modelValue","fields"])]),_:1},8,["label","error"])]),_:1})]),v("div",ae,[a(g,{class:"mr-3",variant:"primary-outline",type:"button",onClick:y},{default:n(()=>[f($(s.$t("general.cancel")),1)]),_:1}),a(g,{loading:e(i),disabled:e(i),variant:"primary",type:"button",class:"mr-3",onClick:S},{left:n(l=>[e(i)?U("",!0):(_(),M(m,{key:0,class:Y(l.class),name:"PhotographIcon"},null,8,["class"]))]),default:n(()=>[f(" "+$(s.$t("general.preview")),1)]),_:1},8,["loading","disabled"])])]))]),_:1},8,["show"])}}};export{pe as _}; +import{c as O,b as J,u as Q,i as X}from"./main.24f7a84b.js";import{J as H,B as I,a0 as K,k as B,L as p,M as h,Q as N,T as W,r as d,o as _,l as M,w as n,h as v,i as f,t as $,u as e,f as a,e as x,m as Y,j as U}from"./vendor.01d0adc5.js";import{u as Z}from"./mail-driver.69202299.js";const ee={class:"flex justify-between w-full"},oe={key:0,action:""},te={class:"px-8 py-8 sm:p-6"},ae={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},re={key:1},se={class:"my-6 mx-4 border border-gray-200 relative"},le=f(" Edit "),ne=["src"],ie={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},pe={setup(ue){const c=O(),V=J(),P=Q(),k=X();Z();const{t:u}=H();let i=I(!1);const C=I(""),b=I(!1),D=I(["customer","customerCustom","invoice","invoiceCustom","company"]),r=K({id:null,from:null,to:null,subject:"New Invoice",body:null}),G=B(()=>c.active&&c.componentName==="SendInvoiceModal"),L=B(()=>c.title),q=B(()=>c.data),T={from:{required:p.withMessage(u("validation.required"),h),email:p.withMessage(u("validation.email_incorrect"),N)},to:{required:p.withMessage(u("validation.required"),h),email:p.withMessage(u("validation.email_incorrect"),N)},subject:{required:p.withMessage(u("validation.required"),h)},body:{required:p.withMessage(u("validation.required"),h)}},t=W(T,B(()=>r));function z(){b.value=!1}async function F(){let s=await V.fetchBasicMailConfig();r.id=c.id,s.data&&(r.from=s.data.from_mail),q.value&&(r.to=q.value.customer.email),r.body=V.selectedCompanySettings.invoice_mail_body}async function S(){if(t.value.$touch(),t.value.$invalid)return!0;try{if(i.value=!0,!b.value){const m=await k.previewInvoice(r);i.value=!1,b.value=!0;var s=new Blob([m.data],{type:"text/html"});C.value=URL.createObjectURL(s);return}if((await k.sendInvoice(r)).data.success)return y(),!0}catch(o){console.error(o),i.value=!1,P.showNotification({type:"error",message:u("invoices.something_went_wrong")})}}function y(){c.closeModal(),setTimeout(()=>{t.value.$reset(),b.value=!1,C.value=null},300)}return(s,o)=>{const m=d("BaseIcon"),j=d("BaseInput"),w=d("BaseInputGroup"),R=d("BaseCustomInput"),A=d("BaseInputGrid"),g=d("BaseButton"),E=d("BaseModal");return _(),M(E,{show:e(G),onClose:y,onOpen:F},{header:n(()=>[v("div",ee,[f($(e(L))+" ",1),a(m,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:y})])]),default:n(()=>[b.value?(_(),x("div",re,[v("div",se,[a(g,{class:"absolute top-4 right-4",disabled:e(i),variant:"primary-outline",onClick:z},{default:n(()=>[a(m,{name:"PencilIcon",class:"h-5 mr-2"}),le]),_:1},8,["disabled"]),v("iframe",{src:C.value,frameborder:"0",class:"w-full",style:{"min-height":"500px"}},null,8,ne)]),v("div",ie,[a(g,{class:"mr-3",variant:"primary-outline",type:"button",onClick:y},{default:n(()=>[f($(s.$t("general.cancel")),1)]),_:1}),a(g,{loading:e(i),disabled:e(i),variant:"primary",type:"button",onClick:o[7]||(o[7]=l=>S())},{default:n(()=>[e(i)?U("",!0):(_(),M(m,{key:0,name:"PaperAirplaneIcon",class:"h-5 mr-2"})),f(" "+$(s.$t("general.send")),1)]),_:1},8,["loading","disabled"])])])):(_(),x("form",oe,[v("div",te,[a(A,{layout:"one-column",class:"col-span-7"},{default:n(()=>[a(w,{label:s.$t("general.from"),required:"",error:e(t).from.$error&&e(t).from.$errors[0].$message},{default:n(()=>[a(j,{modelValue:e(r).from,"onUpdate:modelValue":o[0]||(o[0]=l=>e(r).from=l),type:"text",invalid:e(t).from.$error,onInput:o[1]||(o[1]=l=>e(t).from.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(w,{label:s.$t("general.to"),required:"",error:e(t).to.$error&&e(t).to.$errors[0].$message},{default:n(()=>[a(j,{modelValue:e(r).to,"onUpdate:modelValue":o[2]||(o[2]=l=>e(r).to=l),type:"text",invalid:e(t).to.$error,onInput:o[3]||(o[3]=l=>e(t).to.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(w,{error:e(t).subject.$error&&e(t).subject.$errors[0].$message,label:s.$t("general.subject"),required:""},{default:n(()=>[a(j,{modelValue:e(r).subject,"onUpdate:modelValue":o[4]||(o[4]=l=>e(r).subject=l),type:"text",invalid:e(t).subject.$error,onInput:o[5]||(o[5]=l=>e(t).subject.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),a(w,{label:s.$t("general.body"),error:e(t).body.$error&&e(t).body.$errors[0].$message,required:""},{default:n(()=>[a(R,{modelValue:e(r).body,"onUpdate:modelValue":o[6]||(o[6]=l=>e(r).body=l),fields:D.value},null,8,["modelValue","fields"])]),_:1},8,["label","error"])]),_:1})]),v("div",ae,[a(g,{class:"mr-3",variant:"primary-outline",type:"button",onClick:y},{default:n(()=>[f($(s.$t("general.cancel")),1)]),_:1}),a(g,{loading:e(i),disabled:e(i),variant:"primary",type:"button",class:"mr-3",onClick:S},{left:n(l=>[e(i)?U("",!0):(_(),M(m,{key:0,class:Y(l.class),name:"PhotographIcon"},null,8,["class"]))]),default:n(()=>[f(" "+$(s.$t("general.preview")),1)]),_:1},8,["loading","disabled"])])]))]),_:1},8,["show"])}}};export{pe as _}; diff --git a/public/build/assets/SendPaymentModal.1bb9d371.js b/public/build/assets/SendPaymentModal.57c4c1f4.js similarity index 96% rename from public/build/assets/SendPaymentModal.1bb9d371.js rename to public/build/assets/SendPaymentModal.57c4c1f4.js index 2e02e384f..096b4058e 100644 --- a/public/build/assets/SendPaymentModal.1bb9d371.js +++ b/public/build/assets/SendPaymentModal.57c4c1f4.js @@ -1 +1 @@ -import{j as G,u as R,e as K,c as Y,g as j,b as Z}from"./main.75722495.js";import{J as O,G as ee,aN as te,ah as ae,r as d,o as m,l as p,w as o,u as e,f as a,i as y,t as v,j as B,B as E,a0 as oe,k as z,L as k,M as x,Q as F,T as ne,h as M,e as H,m as re}from"./vendor.01d0adc5.js";import{u as W}from"./payment.5c57bec3.js";import{u as se}from"./mail-driver.4ea1af6b.js";const _e={props:{row:{type:Object,default:null},table:{type:Object,default:null},contentLoading:{type:Boolean,default:!1}},setup(w){const I=w,C=G(),_=R(),{t:$}=O(),g=W(),l=ee(),P=te(),c=K(),T=Y(),r=ae("utils");function q(i){C.openDialog({title:$("general.are_you_sure"),message:$("payments.confirm_delete",1),yesLabel:$("general.ok"),noLabel:$("general.cancel"),variant:"danger",size:"lg",hideNoButton:!1}).then(async t=>{if(t)return await g.deletePayment({ids:[i]}),P.push("/admin/payments"),I.table&&I.table.refresh(),!0})}function A(){var t;let i=`${window.location.origin}/payments/pdf/${(t=I.row)==null?void 0:t.unique_hash}`;r.copyTextToClipboard(i),_.showNotification({type:"success",message:$("general.copied_pdf_url_clipboard")})}async function D(i){T.openModal({title:$("payments.send_payment"),componentName:"SendPaymentModal",id:i.id,data:i,variant:"lg"})}return(i,t)=>{const b=d("BaseIcon"),L=d("BaseButton"),N=d("BaseDropdown-item"),f=d("BaseDropdownItem"),s=d("router-link"),n=d("BaseDropdown");return m(),p(n,{"content-loading":w.contentLoading},{activator:o(()=>[e(l).name==="payments.view"?(m(),p(L,{key:0,variant:"primary"},{default:o(()=>[a(b,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(m(),p(b,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:o(()=>[e(l).name==="payments.view"&&e(c).hasAbilities(e(j).VIEW_PAYMENT)?(m(),p(N,{key:0,class:"rounded-md",onClick:A},{default:o(()=>[a(b,{name:"LinkIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),y(" "+v(i.$t("general.copy_pdf_url")),1)]),_:1})):B("",!0),e(c).hasAbilities(e(j).EDIT_PAYMENT)?(m(),p(s,{key:1,to:`/admin/payments/${w.row.id}/edit`},{default:o(()=>[a(f,null,{default:o(()=>[a(b,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),y(" "+v(i.$t("general.edit")),1)]),_:1})]),_:1},8,["to"])):B("",!0),e(l).name!=="payments.view"&&e(c).hasAbilities(e(j).VIEW_PAYMENT)?(m(),p(s,{key:2,to:`/admin/payments/${w.row.id}/view`},{default:o(()=>[a(f,null,{default:o(()=>[a(b,{name:"EyeIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),y(" "+v(i.$t("general.view")),1)]),_:1})]),_:1},8,["to"])):B("",!0),w.row.status!=="SENT"&&e(l).name!=="payments.view"&&e(c).hasAbilities(e(j).SEND_PAYMENT)?(m(),p(f,{key:3,onClick:t[0]||(t[0]=h=>D(w.row))},{default:o(()=>[a(b,{name:"PaperAirplaneIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),y(" "+v(i.$t("payments.send_payment")),1)]),_:1})):B("",!0),e(c).hasAbilities(e(j).DELETE_PAYMENT)?(m(),p(f,{key:4,onClick:t[1]||(t[1]=h=>q(w.row.id))},{default:o(()=>[a(b,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),y(" "+v(i.$t("general.delete")),1)]),_:1})):B("",!0)]),_:1},8,["content-loading"])}}},le={class:"flex justify-between w-full"},ie={key:0,action:""},ue={class:"px-8 py-8 sm:p-6"},de={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},me={key:1},ce={class:"my-6 mx-4 border border-gray-200 relative"},pe=y(" Edit "),ye=["src"],fe={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},$e={setup(w){const I=W(),C=Z(),_=Y(),$=R();se(),G();const{t:g}=O();let l=E(!1);const P=E(""),c=E(!1),T=E(["customer","customerCustom","payments","paymentsCustom","company"]),r=oe({id:null,from:null,to:null,subject:"New Payment",body:null}),q=z(()=>_.active&&_.componentName==="SendPaymentModal"),A=z(()=>_.title),D=z(()=>_.data),i={from:{required:k.withMessage(g("validation.required"),x),email:k.withMessage(g("validation.email_incorrect"),F)},to:{required:k.withMessage(g("validation.required"),x),email:k.withMessage(g("validation.email_incorrect"),F)},subject:{required:k.withMessage(g("validation.required"),x)},body:{required:k.withMessage(g("validation.required"),x)}},t=ne(i,r);function b(){c.value=!1}async function L(){let s=await C.fetchBasicMailConfig();r.id=_.id,s.data&&(r.from=s.data.from_mail),D.value&&(r.to=D.value.customer.email),r.body=C.selectedCompanySettings.payment_mail_body}async function N(){if(t.value.$touch(),t.value.$invalid)return!0;try{if(l.value=!0,!c.value){const h=await I.previewPayment(r);l.value=!1,c.value=!0;var s=new Blob([h.data],{type:"text/html"});P.value=URL.createObjectURL(s);return}if((await I.sendEmail(r)).data.success)return f(),!0}catch{l.value=!1,$.showNotification({type:"error",message:g("payments.something_went_wrong")})}}function f(){setTimeout(()=>{t.value.$reset(),c.value=!1,P.value=null,_.resetModalData()},300)}return(s,n)=>{const h=d("BaseIcon"),U=d("BaseInput"),V=d("BaseInputGroup"),J=d("BaseCustomInput"),Q=d("BaseInputGrid"),S=d("BaseButton"),X=d("BaseModal");return m(),p(X,{show:e(q),onClose:f,onOpen:L},{header:o(()=>[M("div",le,[y(v(e(A))+" ",1),a(h,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:f})])]),default:o(()=>[c.value?(m(),H("div",me,[M("div",ce,[a(S,{class:"absolute top-4 right-4",disabled:e(l),variant:"primary-outline",onClick:b},{default:o(()=>[a(h,{name:"PencilIcon",class:"h-5 mr-2"}),pe]),_:1},8,["disabled"]),M("iframe",{src:P.value,frameborder:"0",class:"w-full",style:{"min-height":"500px"}},null,8,ye)]),M("div",fe,[a(S,{class:"mr-3",variant:"primary-outline",type:"button",onClick:f},{default:o(()=>[y(v(s.$t("general.cancel")),1)]),_:1}),a(S,{loading:e(l),disabled:e(l),variant:"primary",type:"button",onClick:n[7]||(n[7]=u=>N())},{default:o(()=>[e(l)?B("",!0):(m(),p(h,{key:0,name:"PaperAirplaneIcon",class:"h-5 mr-2"})),y(" "+v(s.$t("general.send")),1)]),_:1},8,["loading","disabled"])])])):(m(),H("form",ie,[M("div",ue,[a(Q,{layout:"one-column",class:"col-span-7"},{default:o(()=>[a(V,{label:s.$t("general.from"),required:"",error:e(t).from.$error&&e(t).from.$errors[0].$message},{default:o(()=>[a(U,{modelValue:e(r).from,"onUpdate:modelValue":n[0]||(n[0]=u=>e(r).from=u),type:"text",invalid:e(t).from.$error,onInput:n[1]||(n[1]=u=>e(t).from.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(V,{label:s.$t("general.to"),required:"",error:e(t).to.$error&&e(t).to.$errors[0].$message},{default:o(()=>[a(U,{modelValue:e(r).to,"onUpdate:modelValue":n[2]||(n[2]=u=>e(r).to=u),type:"text",invalid:e(t).to.$error,onInput:n[3]||(n[3]=u=>e(t).to.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(V,{error:e(t).subject.$error&&e(t).subject.$errors[0].$message,label:s.$t("general.subject"),required:""},{default:o(()=>[a(U,{modelValue:e(r).subject,"onUpdate:modelValue":n[4]||(n[4]=u=>e(r).subject=u),type:"text",invalid:e(t).subject.$error,onInput:n[5]||(n[5]=u=>e(t).subject.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),a(V,{label:s.$t("general.body"),error:e(t).body.$error&&e(t).body.$errors[0].$message,required:""},{default:o(()=>[a(J,{modelValue:e(r).body,"onUpdate:modelValue":n[6]||(n[6]=u=>e(r).body=u),fields:T.value},null,8,["modelValue","fields"])]),_:1},8,["label","error"])]),_:1})]),M("div",de,[a(S,{class:"mr-3",variant:"primary-outline",type:"button",onClick:f},{default:o(()=>[y(v(s.$t("general.cancel")),1)]),_:1}),a(S,{loading:e(l),disabled:e(l),variant:"primary",type:"button",class:"mr-3",onClick:N},{left:o(u=>[e(l)?B("",!0):(m(),p(h,{key:0,class:re(u.class),name:"PhotographIcon"},null,8,["class"]))]),default:o(()=>[y(" "+v(s.$t("general.preview")),1)]),_:1},8,["loading","disabled"])])]))]),_:1},8,["show"])}}};export{$e as _,_e as a}; +import{j as G,u as R,e as K,c as Y,g as j,b as Z}from"./main.24f7a84b.js";import{J as O,G as ee,aN as te,ah as ae,r as d,o as m,l as p,w as o,u as e,f as a,i as y,t as v,j as B,B as E,a0 as oe,k as z,L as k,M as x,Q as F,T as ne,h as M,e as H,m as re}from"./vendor.01d0adc5.js";import{u as W}from"./payment.bb0c6e9e.js";import{u as se}from"./mail-driver.69202299.js";const _e={props:{row:{type:Object,default:null},table:{type:Object,default:null},contentLoading:{type:Boolean,default:!1}},setup(w){const I=w,C=G(),_=R(),{t:$}=O(),g=W(),l=ee(),P=te(),c=K(),T=Y(),r=ae("utils");function q(i){C.openDialog({title:$("general.are_you_sure"),message:$("payments.confirm_delete",1),yesLabel:$("general.ok"),noLabel:$("general.cancel"),variant:"danger",size:"lg",hideNoButton:!1}).then(async t=>{if(t)return await g.deletePayment({ids:[i]}),P.push("/admin/payments"),I.table&&I.table.refresh(),!0})}function A(){var t;let i=`${window.location.origin}/payments/pdf/${(t=I.row)==null?void 0:t.unique_hash}`;r.copyTextToClipboard(i),_.showNotification({type:"success",message:$("general.copied_pdf_url_clipboard")})}async function D(i){T.openModal({title:$("payments.send_payment"),componentName:"SendPaymentModal",id:i.id,data:i,variant:"lg"})}return(i,t)=>{const b=d("BaseIcon"),L=d("BaseButton"),N=d("BaseDropdown-item"),f=d("BaseDropdownItem"),s=d("router-link"),n=d("BaseDropdown");return m(),p(n,{"content-loading":w.contentLoading},{activator:o(()=>[e(l).name==="payments.view"?(m(),p(L,{key:0,variant:"primary"},{default:o(()=>[a(b,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(m(),p(b,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:o(()=>[e(l).name==="payments.view"&&e(c).hasAbilities(e(j).VIEW_PAYMENT)?(m(),p(N,{key:0,class:"rounded-md",onClick:A},{default:o(()=>[a(b,{name:"LinkIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),y(" "+v(i.$t("general.copy_pdf_url")),1)]),_:1})):B("",!0),e(c).hasAbilities(e(j).EDIT_PAYMENT)?(m(),p(s,{key:1,to:`/admin/payments/${w.row.id}/edit`},{default:o(()=>[a(f,null,{default:o(()=>[a(b,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),y(" "+v(i.$t("general.edit")),1)]),_:1})]),_:1},8,["to"])):B("",!0),e(l).name!=="payments.view"&&e(c).hasAbilities(e(j).VIEW_PAYMENT)?(m(),p(s,{key:2,to:`/admin/payments/${w.row.id}/view`},{default:o(()=>[a(f,null,{default:o(()=>[a(b,{name:"EyeIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),y(" "+v(i.$t("general.view")),1)]),_:1})]),_:1},8,["to"])):B("",!0),w.row.status!=="SENT"&&e(l).name!=="payments.view"&&e(c).hasAbilities(e(j).SEND_PAYMENT)?(m(),p(f,{key:3,onClick:t[0]||(t[0]=h=>D(w.row))},{default:o(()=>[a(b,{name:"PaperAirplaneIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),y(" "+v(i.$t("payments.send_payment")),1)]),_:1})):B("",!0),e(c).hasAbilities(e(j).DELETE_PAYMENT)?(m(),p(f,{key:4,onClick:t[1]||(t[1]=h=>q(w.row.id))},{default:o(()=>[a(b,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),y(" "+v(i.$t("general.delete")),1)]),_:1})):B("",!0)]),_:1},8,["content-loading"])}}},le={class:"flex justify-between w-full"},ie={key:0,action:""},ue={class:"px-8 py-8 sm:p-6"},de={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},me={key:1},ce={class:"my-6 mx-4 border border-gray-200 relative"},pe=y(" Edit "),ye=["src"],fe={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},$e={setup(w){const I=W(),C=Z(),_=Y(),$=R();se(),G();const{t:g}=O();let l=E(!1);const P=E(""),c=E(!1),T=E(["customer","customerCustom","payments","paymentsCustom","company"]),r=oe({id:null,from:null,to:null,subject:"New Payment",body:null}),q=z(()=>_.active&&_.componentName==="SendPaymentModal"),A=z(()=>_.title),D=z(()=>_.data),i={from:{required:k.withMessage(g("validation.required"),x),email:k.withMessage(g("validation.email_incorrect"),F)},to:{required:k.withMessage(g("validation.required"),x),email:k.withMessage(g("validation.email_incorrect"),F)},subject:{required:k.withMessage(g("validation.required"),x)},body:{required:k.withMessage(g("validation.required"),x)}},t=ne(i,r);function b(){c.value=!1}async function L(){let s=await C.fetchBasicMailConfig();r.id=_.id,s.data&&(r.from=s.data.from_mail),D.value&&(r.to=D.value.customer.email),r.body=C.selectedCompanySettings.payment_mail_body}async function N(){if(t.value.$touch(),t.value.$invalid)return!0;try{if(l.value=!0,!c.value){const h=await I.previewPayment(r);l.value=!1,c.value=!0;var s=new Blob([h.data],{type:"text/html"});P.value=URL.createObjectURL(s);return}if((await I.sendEmail(r)).data.success)return f(),!0}catch{l.value=!1,$.showNotification({type:"error",message:g("payments.something_went_wrong")})}}function f(){setTimeout(()=>{t.value.$reset(),c.value=!1,P.value=null,_.resetModalData()},300)}return(s,n)=>{const h=d("BaseIcon"),U=d("BaseInput"),V=d("BaseInputGroup"),J=d("BaseCustomInput"),Q=d("BaseInputGrid"),S=d("BaseButton"),X=d("BaseModal");return m(),p(X,{show:e(q),onClose:f,onOpen:L},{header:o(()=>[M("div",le,[y(v(e(A))+" ",1),a(h,{name:"XIcon",class:"w-6 h-6 text-gray-500 cursor-pointer",onClick:f})])]),default:o(()=>[c.value?(m(),H("div",me,[M("div",ce,[a(S,{class:"absolute top-4 right-4",disabled:e(l),variant:"primary-outline",onClick:b},{default:o(()=>[a(h,{name:"PencilIcon",class:"h-5 mr-2"}),pe]),_:1},8,["disabled"]),M("iframe",{src:P.value,frameborder:"0",class:"w-full",style:{"min-height":"500px"}},null,8,ye)]),M("div",fe,[a(S,{class:"mr-3",variant:"primary-outline",type:"button",onClick:f},{default:o(()=>[y(v(s.$t("general.cancel")),1)]),_:1}),a(S,{loading:e(l),disabled:e(l),variant:"primary",type:"button",onClick:n[7]||(n[7]=u=>N())},{default:o(()=>[e(l)?B("",!0):(m(),p(h,{key:0,name:"PaperAirplaneIcon",class:"h-5 mr-2"})),y(" "+v(s.$t("general.send")),1)]),_:1},8,["loading","disabled"])])])):(m(),H("form",ie,[M("div",ue,[a(Q,{layout:"one-column",class:"col-span-7"},{default:o(()=>[a(V,{label:s.$t("general.from"),required:"",error:e(t).from.$error&&e(t).from.$errors[0].$message},{default:o(()=>[a(U,{modelValue:e(r).from,"onUpdate:modelValue":n[0]||(n[0]=u=>e(r).from=u),type:"text",invalid:e(t).from.$error,onInput:n[1]||(n[1]=u=>e(t).from.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(V,{label:s.$t("general.to"),required:"",error:e(t).to.$error&&e(t).to.$errors[0].$message},{default:o(()=>[a(U,{modelValue:e(r).to,"onUpdate:modelValue":n[2]||(n[2]=u=>e(r).to=u),type:"text",invalid:e(t).to.$error,onInput:n[3]||(n[3]=u=>e(t).to.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(V,{error:e(t).subject.$error&&e(t).subject.$errors[0].$message,label:s.$t("general.subject"),required:""},{default:o(()=>[a(U,{modelValue:e(r).subject,"onUpdate:modelValue":n[4]||(n[4]=u=>e(r).subject=u),type:"text",invalid:e(t).subject.$error,onInput:n[5]||(n[5]=u=>e(t).subject.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["error","label"]),a(V,{label:s.$t("general.body"),error:e(t).body.$error&&e(t).body.$errors[0].$message,required:""},{default:o(()=>[a(J,{modelValue:e(r).body,"onUpdate:modelValue":n[6]||(n[6]=u=>e(r).body=u),fields:T.value},null,8,["modelValue","fields"])]),_:1},8,["label","error"])]),_:1})]),M("div",de,[a(S,{class:"mr-3",variant:"primary-outline",type:"button",onClick:f},{default:o(()=>[y(v(s.$t("general.cancel")),1)]),_:1}),a(S,{loading:e(l),disabled:e(l),variant:"primary",type:"button",class:"mr-3",onClick:N},{left:o(u=>[e(l)?B("",!0):(m(),p(h,{key:0,class:re(u.class),name:"PhotographIcon"},null,8,["class"]))]),default:o(()=>[y(" "+v(s.$t("general.preview")),1)]),_:1},8,["loading","disabled"])])]))]),_:1},8,["show"])}}};export{$e as _,_e as a}; diff --git a/public/build/assets/SettingsIndex.7750922b.js b/public/build/assets/SettingsIndex.88c27d32.js similarity index 71% rename from public/build/assets/SettingsIndex.7750922b.js rename to public/build/assets/SettingsIndex.88c27d32.js index b734c5718..292fbddaf 100644 --- a/public/build/assets/SettingsIndex.7750922b.js +++ b/public/build/assets/SettingsIndex.88c27d32.js @@ -1 +1 @@ -import{J as I,B as M,G as R,aN as y,k as L,a7 as P,r as a,o as r,l as B,w as o,f as t,h as i,u,x as S,e as N,y as $,F as C}from"./vendor.01d0adc5.js";import{d as E}from"./main.75722495.js";import{B as F,a as G}from"./BaseListItem.4eea691c.js";const H={class:"w-full mb-6 select-wrapper xl:hidden"},O={class:"flex"},U={class:"hidden mt-1 xl:block min-w-[240px]"},A={class:"w-full overflow-hidden"},D={setup(J){const{t:g}=I();let n=M({});const d=E(),c=R(),m=y(),p=L(()=>d.settingMenu.map(e=>Object.assign({},e,{title:g(e.title)})));P(()=>{c.path==="/admin/settings"&&m.push("/admin/settings/account-settings");const e=p.value.find(l=>l.link===c.path);n.value=e});function h(e){return c.path.indexOf(e)>-1}function v(e){return m.push(e.link)}return(e,l)=>{const _=a("BaseBreadcrumbItem"),b=a("BaseBreadcrumb"),k=a("BasePageHeader"),w=a("BaseMultiselect"),V=a("BaseIcon"),x=a("RouterView"),j=a("BasePage");return r(),B(j,null,{default:o(()=>[t(k,{title:e.$tc("settings.setting",1),class:"mb-6"},{default:o(()=>[t(b,null,{default:o(()=>[t(_,{title:e.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),t(_,{title:e.$tc("settings.setting",2),to:"/admin/settings/account-settings",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),i("div",H,[t(w,{modelValue:u(n),"onUpdate:modelValue":[l[0]||(l[0]=s=>S(n)?n.value=s:n=s),v],options:u(p),"can-deselect":!1,"value-prop":"title","track-by":"title",label:"title",object:""},null,8,["modelValue","options"])]),i("div",O,[i("div",U,[t(G,null,{default:o(()=>[(r(!0),N(C,null,$(u(d).settingMenu,(s,f)=>(r(),B(F,{key:f,title:e.$t(s.title),to:s.link,active:h(s.link),index:f,class:"py-3"},{icon:o(()=>[t(V,{name:s.icon},null,8,["name"])]),_:2},1032,["title","to","active","index"]))),128))]),_:1})]),i("div",A,[t(x)])])]),_:1})}}};export{D as default}; +import{J as I,B as M,G as R,aN as y,k as L,a7 as P,r as a,o as r,l as B,w as o,f as t,h as i,u,x as S,e as N,y as $,F as C}from"./vendor.01d0adc5.js";import{d as E}from"./main.24f7a84b.js";import{B as F,a as G}from"./BaseListItem.bd97231b.js";const H={class:"w-full mb-6 select-wrapper xl:hidden"},O={class:"flex"},U={class:"hidden mt-1 xl:block min-w-[240px]"},A={class:"w-full overflow-hidden"},D={setup(J){const{t:g}=I();let n=M({});const d=E(),c=R(),m=y(),p=L(()=>d.settingMenu.map(e=>Object.assign({},e,{title:g(e.title)})));P(()=>{c.path==="/admin/settings"&&m.push("/admin/settings/account-settings");const e=p.value.find(l=>l.link===c.path);n.value=e});function b(e){return c.path.indexOf(e)>-1}function h(e){return m.push(e.link)}return(e,l)=>{const _=a("BaseBreadcrumbItem"),v=a("BaseBreadcrumb"),k=a("BasePageHeader"),w=a("BaseMultiselect"),V=a("BaseIcon"),x=a("RouterView"),j=a("BasePage");return r(),B(j,null,{default:o(()=>[t(k,{title:e.$tc("settings.setting",1),class:"mb-6"},{default:o(()=>[t(v,null,{default:o(()=>[t(_,{title:e.$t("general.home"),to:"/admin/dashboard"},null,8,["title"]),t(_,{title:e.$tc("settings.setting",2),to:"/admin/settings/account-settings",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),i("div",H,[t(w,{modelValue:u(n),"onUpdate:modelValue":[l[0]||(l[0]=s=>S(n)?n.value=s:n=s),h],options:u(p),"can-deselect":!1,"value-prop":"title","track-by":"title",label:"title",object:""},null,8,["modelValue","options"])]),i("div",O,[i("div",U,[t(G,null,{default:o(()=>[(r(!0),N(C,null,$(u(d).settingMenu,(s,f)=>(r(),B(F,{key:f,title:e.$t(s.title),to:s.link,active:b(s.link),index:f,class:"py-3"},{icon:o(()=>[t(V,{name:s.icon},null,8,["name"])]),_:2},1032,["title","to","active","index"]))),128))]),_:1})]),i("div",A,[t(x)])])]),_:1})}}};export{D as default}; diff --git a/public/build/assets/SettingsIndex.25913381.js b/public/build/assets/SettingsIndex.be01d1b2.js similarity index 79% rename from public/build/assets/SettingsIndex.25913381.js rename to public/build/assets/SettingsIndex.be01d1b2.js index 60e24cbbb..78f88bfaa 100644 --- a/public/build/assets/SettingsIndex.25913381.js +++ b/public/build/assets/SettingsIndex.be01d1b2.js @@ -1 +1 @@ -var D=Object.defineProperty;var b=Object.getOwnPropertySymbols;var G=Object.prototype.hasOwnProperty,J=Object.prototype.propertyIsEnumerable;var k=(o,t,e)=>t in o?D(o,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):o[t]=e,w=(o,t)=>{for(var e in t||(t={}))G.call(t,e)&&k(o,e,t[e]);if(b)for(var e of b(t))J.call(t,e)&&k(o,e,t[e]);return o};import{B as y,a as $}from"./BaseListItem.4eea691c.js";import{J as O,k as S,B as x,a0 as U,bb as q,bc as z,a7 as I,r as u,o as n,l as d,w as c,f as l,u as _,h as i,e as j,y as R,aj as V,F as L}from"./vendor.01d0adc5.js";import{u as K}from"./global.08b6a984.js";import"./main.75722495.js";import"./auth.4644c288.js";const M={class:"w-full mb-6 select-wrapper xl:hidden"},Q={class:"pb-3 lg:col-span-3"},T={class:"space-y-1"},W={class:"flex"},X={class:"hidden mt-1 xl:block min-w-[240px]"},Y={class:"w-full overflow-hidden"},nt={setup(o){const{t}=O(),{useRoute:e,useRouter:P}=window.VueRouter,f=e(),C=P(),m=K(),g=S(()=>m.companySlug);let E=x({});x();const p=U([{link:`/${m.companySlug}/customer/settings/customer-profile`,title:t("settings.account_settings.account_settings"),icon:q},{link:`/${m.companySlug}/customer/settings/address-info`,title:t("settings.menu_title.address_information"),icon:z}]);I(()=>{f.path===`/${m.companySlug}/customer/settings`&&C.push({name:"customer.profile"});const a=p.find(B=>B.link===f.path);E.value=w({},a)}),S(()=>p);function h(a){return f.path.indexOf(a)>-1}return(a,B)=>{const v=u("BaseBreadcrumbItem"),F=u("BaseBreadcrumb"),H=u("BasePageHeader"),N=u("RouterView"),A=u("BasePage");return n(),d(A,null,{default:c(()=>[l(H,{title:a.$tc("settings.setting",2),class:"pb-6"},{default:c(()=>[l(F,null,{default:c(()=>[l(v,{title:a.$t("general.home"),to:`/${_(g)}/customer/dashboard`},null,8,["title","to"]),l(v,{title:a.$tc("settings.setting",2),to:`/${_(g)}/customer/settings/customer-profile`,active:""},null,8,["title","to"])]),_:1})]),_:1},8,["title"]),i("div",M,[i("aside",Q,[i("nav",T,[l($,null,{default:c(()=>[(n(!0),j(L,null,R(_(p),(s,r)=>(n(),d(y,{key:r,title:s.title,to:s.link,active:h(s.link),index:r,class:"py-3"},{icon:c(()=>[(n(),d(V(s.icon),{class:"h-5 w-6"}))]),_:2},1032,["title","to","active","index"]))),128))]),_:1})])])]),i("div",W,[i("div",X,[l($,null,{default:c(()=>[(n(!0),j(L,null,R(_(p),(s,r)=>(n(),d(y,{key:r,title:s.title,to:s.link,active:h(s.link),index:r,class:"py-3"},{icon:c(()=>[(n(),d(V(s.icon),{class:"h-5 w-6"}))]),_:2},1032,["title","to","active","index"]))),128))]),_:1})]),i("div",Y,[l(N)])])]),_:1})}}};export{nt as default}; +var D=Object.defineProperty;var v=Object.getOwnPropertySymbols;var G=Object.prototype.hasOwnProperty,J=Object.prototype.propertyIsEnumerable;var k=(o,t,e)=>t in o?D(o,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):o[t]=e,w=(o,t)=>{for(var e in t||(t={}))G.call(t,e)&&k(o,e,t[e]);if(v)for(var e of v(t))J.call(t,e)&&k(o,e,t[e]);return o};import{B as y,a as $}from"./BaseListItem.bd97231b.js";import{J as O,k as S,B as x,a0 as U,bb as q,bc as z,a7 as I,r as u,o as n,l as d,w as c,f as l,u as _,h as i,e as j,y as R,aj as V,F as L}from"./vendor.01d0adc5.js";import{u as K}from"./global.ab8f317c.js";import"./main.24f7a84b.js";import"./auth.0e030165.js";const M={class:"w-full mb-6 select-wrapper xl:hidden"},Q={class:"pb-3 lg:col-span-3"},T={class:"space-y-1"},W={class:"flex"},X={class:"hidden mt-1 xl:block min-w-[240px]"},Y={class:"w-full overflow-hidden"},nt={setup(o){const{t}=O(),{useRoute:e,useRouter:P}=window.VueRouter,f=e(),C=P(),m=K(),g=S(()=>m.companySlug);let E=x({});x();const p=U([{link:`/${m.companySlug}/customer/settings/customer-profile`,title:t("settings.account_settings.account_settings"),icon:q},{link:`/${m.companySlug}/customer/settings/address-info`,title:t("settings.menu_title.address_information"),icon:z}]);I(()=>{f.path===`/${m.companySlug}/customer/settings`&&C.push({name:"customer.profile"});const a=p.find(B=>B.link===f.path);E.value=w({},a)}),S(()=>p);function h(a){return f.path.indexOf(a)>-1}return(a,B)=>{const b=u("BaseBreadcrumbItem"),F=u("BaseBreadcrumb"),H=u("BasePageHeader"),N=u("RouterView"),A=u("BasePage");return n(),d(A,null,{default:c(()=>[l(H,{title:a.$tc("settings.setting",2),class:"pb-6"},{default:c(()=>[l(F,null,{default:c(()=>[l(b,{title:a.$t("general.home"),to:`/${_(g)}/customer/dashboard`},null,8,["title","to"]),l(b,{title:a.$tc("settings.setting",2),to:`/${_(g)}/customer/settings/customer-profile`,active:""},null,8,["title","to"])]),_:1})]),_:1},8,["title"]),i("div",M,[i("aside",Q,[i("nav",T,[l($,null,{default:c(()=>[(n(!0),j(L,null,R(_(p),(s,r)=>(n(),d(y,{key:r,title:s.title,to:s.link,active:h(s.link),index:r,class:"py-3"},{icon:c(()=>[(n(),d(V(s.icon),{class:"h-5 w-6"}))]),_:2},1032,["title","to","active","index"]))),128))]),_:1})])])]),i("div",W,[i("div",X,[l($,null,{default:c(()=>[(n(!0),j(L,null,R(_(p),(s,r)=>(n(),d(y,{key:r,title:s.title,to:s.link,active:h(s.link),index:r,class:"py-3"},{icon:c(()=>[(n(),d(V(s.icon),{class:"h-5 w-6"}))]),_:2},1032,["title","to","active","index"]))),128))]),_:1})]),i("div",Y,[l(N)])])]),_:1})}}};export{nt as default}; diff --git a/public/build/assets/TaxTypeModal.bf6662b3.js b/public/build/assets/TaxTypeModal.5b98d9fc.js similarity index 67% rename from public/build/assets/TaxTypeModal.bf6662b3.js rename to public/build/assets/TaxTypeModal.5b98d9fc.js index 99347231f..02b668e90 100644 --- a/public/build/assets/TaxTypeModal.bf6662b3.js +++ b/public/build/assets/TaxTypeModal.5b98d9fc.js @@ -1 +1 @@ -import{J as C,B as N,k as $,L as p,M as b,N as z,aX as j,S as L,T as U,r as i,o as B,l as g,w as l,h as y,i as x,t as v,u as e,f as o,m as D,j as G,U as E}from"./vendor.01d0adc5.js";import{q as X,c as J,u as A,k as F}from"./main.75722495.js";const H={class:"flex justify-between w-full"},K=["onSubmit"],O={class:"p-4 sm:p-6"},P={class:"z-0 flex justify-end p-4 border-t border-solid border--200 border-modal-bg"},Z={setup(Q){const a=X(),u=J();A(),F();const{t:c,tm:R}=C();let d=N(!1);const h=$(()=>({currentTaxType:{name:{required:p.withMessage(c("validation.required"),b),minLength:p.withMessage(c("validation.name_min_length",{count:3}),z(3))},percent:{required:p.withMessage(c("validation.required"),b),between:p.withMessage(c("validation.enter_valid_tax_rate"),j(0,100))},description:{maxLength:p.withMessage(c("validation.description_maxlength",{count:255}),L(255))}}})),r=U(h,$(()=>a));async function w(){if(r.value.currentTaxType.$touch(),r.value.currentTaxType.$invalid)return!0;try{const s=a.isEdit?a.updateTaxType:a.addTaxType;d.value=!0;let t=await s(a.currentTaxType);d.value=!1,u.refreshData&&u.refreshData(t.data.data),m()}catch{return d.value=!1,!0}}function m(){u.closeModal(),setTimeout(()=>{a.resetCurrentTaxType(),r.value.$reset()},300)}return(s,t)=>{const f=i("BaseIcon"),V=i("BaseInput"),T=i("BaseInputGroup"),M=i("BaseMoney"),I=i("BaseTextarea"),S=i("BaseSwitch"),k=i("BaseInputGrid"),_=i("BaseButton"),q=i("BaseModal");return B(),g(q,{show:e(u).active&&e(u).componentName==="TaxTypeModal",onClose:m},{header:l(()=>[y("div",H,[x(v(e(u).title)+" ",1),o(f,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:m})])]),default:l(()=>[y("form",{action:"",onSubmit:E(w,["prevent"])},[y("div",O,[o(k,{layout:"one-column"},{default:l(()=>[o(T,{label:s.$t("tax_types.name"),variant:"horizontal",error:e(r).currentTaxType.name.$error&&e(r).currentTaxType.name.$errors[0].$message,required:""},{default:l(()=>[o(V,{modelValue:e(a).currentTaxType.name,"onUpdate:modelValue":t[0]||(t[0]=n=>e(a).currentTaxType.name=n),invalid:e(r).currentTaxType.name.$error,type:"text",onInput:t[1]||(t[1]=n=>e(r).currentTaxType.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),o(T,{label:s.$t("tax_types.percent"),variant:"horizontal",error:e(r).currentTaxType.percent.$error&&e(r).currentTaxType.percent.$errors[0].$message,required:""},{default:l(()=>[o(M,{modelValue:e(a).currentTaxType.percent,"onUpdate:modelValue":t[2]||(t[2]=n=>e(a).currentTaxType.percent=n),currency:{decimal:".",thousands:",",symbol:"% ",precision:2,masked:!1},invalid:e(r).currentTaxType.percent.$error,class:"relative w-full focus:border focus:border-solid focus:border-primary",onInput:t[3]||(t[3]=n=>e(r).currentTaxType.percent.$touch())},null,8,["modelValue","currency","invalid"])]),_:1},8,["label","error"]),o(T,{label:s.$t("tax_types.description"),error:e(r).currentTaxType.description.$error&&e(r).currentTaxType.description.$errors[0].$message,variant:"horizontal"},{default:l(()=>[o(I,{modelValue:e(a).currentTaxType.description,"onUpdate:modelValue":t[4]||(t[4]=n=>e(a).currentTaxType.description=n),invalid:e(r).currentTaxType.description.$error,rows:"4",cols:"50",onInput:t[5]||(t[5]=n=>e(r).currentTaxType.description.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),o(T,{label:s.$t("tax_types.compound_tax"),variant:"horizontal",class:"flex flex-row-reverse"},{default:l(()=>[o(S,{modelValue:e(a).currentTaxType.compound_tax,"onUpdate:modelValue":t[6]||(t[6]=n=>e(a).currentTaxType.compound_tax=n),class:"flex items-center"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),y("div",P,[o(_,{class:"mr-3 text-sm",variant:"primary-outline",type:"button",onClick:m},{default:l(()=>[x(v(s.$t("general.cancel")),1)]),_:1}),o(_,{loading:e(d),disabled:e(d),variant:"primary",type:"submit"},{left:l(n=>[e(d)?G("",!0):(B(),g(f,{key:0,name:"SaveIcon",class:D(n.class)},null,8,["class"]))]),default:l(()=>[x(" "+v(e(a).isEdit?s.$t("general.update"):s.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,K)]),_:1},8,["show"])}}};export{Z as _}; +import{J as C,B as N,k as $,L as p,M as b,N as z,aX as j,S as L,T as U,r as i,o as B,l as g,w as l,h as y,i as x,t as v,u as e,f as o,m as D,j as G,U as E}from"./vendor.01d0adc5.js";import{q as X,c as J,u as A,k as F}from"./main.24f7a84b.js";const H={class:"flex justify-between w-full"},K=["onSubmit"],O={class:"p-4 sm:p-6"},P={class:"z-0 flex justify-end p-4 border-t border-solid border--200 border-modal-bg"},Z={setup(Q){const t=X(),u=J();A(),F();const{t:c,tm:R}=C();let d=N(!1);const h=$(()=>({currentTaxType:{name:{required:p.withMessage(c("validation.required"),b),minLength:p.withMessage(c("validation.name_min_length",{count:3}),z(3))},percent:{required:p.withMessage(c("validation.required"),b),between:p.withMessage(c("validation.enter_valid_tax_rate"),j(0,100))},description:{maxLength:p.withMessage(c("validation.description_maxlength",{count:255}),L(255))}}})),r=U(h,$(()=>t));async function w(){if(r.value.currentTaxType.$touch(),r.value.currentTaxType.$invalid)return!0;try{const s=t.isEdit?t.updateTaxType:t.addTaxType;d.value=!0;let a=await s(t.currentTaxType);d.value=!1,u.refreshData&&u.refreshData(a.data.data),m()}catch{return d.value=!1,!0}}function m(){u.closeModal(),setTimeout(()=>{t.resetCurrentTaxType(),r.value.$reset()},300)}return(s,a)=>{const f=i("BaseIcon"),V=i("BaseInput"),T=i("BaseInputGroup"),M=i("BaseMoney"),I=i("BaseTextarea"),S=i("BaseSwitch"),k=i("BaseInputGrid"),_=i("BaseButton"),q=i("BaseModal");return B(),g(q,{show:e(u).active&&e(u).componentName==="TaxTypeModal",onClose:m},{header:l(()=>[y("div",H,[x(v(e(u).title)+" ",1),o(f,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:m})])]),default:l(()=>[y("form",{action:"",onSubmit:E(w,["prevent"])},[y("div",O,[o(k,{layout:"one-column"},{default:l(()=>[o(T,{label:s.$t("tax_types.name"),variant:"horizontal",error:e(r).currentTaxType.name.$error&&e(r).currentTaxType.name.$errors[0].$message,required:""},{default:l(()=>[o(V,{modelValue:e(t).currentTaxType.name,"onUpdate:modelValue":a[0]||(a[0]=n=>e(t).currentTaxType.name=n),invalid:e(r).currentTaxType.name.$error,type:"text",onInput:a[1]||(a[1]=n=>e(r).currentTaxType.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),o(T,{label:s.$t("tax_types.percent"),variant:"horizontal",error:e(r).currentTaxType.percent.$error&&e(r).currentTaxType.percent.$errors[0].$message,required:""},{default:l(()=>[o(M,{modelValue:e(t).currentTaxType.percent,"onUpdate:modelValue":a[2]||(a[2]=n=>e(t).currentTaxType.percent=n),currency:{decimal:".",thousands:",",symbol:"% ",precision:2,masked:!1},invalid:e(r).currentTaxType.percent.$error,class:"relative w-full focus:border focus:border-solid focus:border-primary",onInput:a[3]||(a[3]=n=>e(r).currentTaxType.percent.$touch())},null,8,["modelValue","currency","invalid"])]),_:1},8,["label","error"]),o(T,{label:s.$t("tax_types.description"),error:e(r).currentTaxType.description.$error&&e(r).currentTaxType.description.$errors[0].$message,variant:"horizontal"},{default:l(()=>[o(I,{modelValue:e(t).currentTaxType.description,"onUpdate:modelValue":a[4]||(a[4]=n=>e(t).currentTaxType.description=n),invalid:e(r).currentTaxType.description.$error,rows:"4",cols:"50",onInput:a[5]||(a[5]=n=>e(r).currentTaxType.description.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),o(T,{label:s.$t("tax_types.compound_tax"),variant:"horizontal",class:"flex flex-row-reverse"},{default:l(()=>[o(S,{modelValue:e(t).currentTaxType.compound_tax,"onUpdate:modelValue":a[6]||(a[6]=n=>e(t).currentTaxType.compound_tax=n),class:"flex items-center"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),y("div",P,[o(_,{class:"mr-3 text-sm",variant:"primary-outline",type:"button",onClick:m},{default:l(()=>[x(v(s.$t("general.cancel")),1)]),_:1}),o(_,{loading:e(d),disabled:e(d),variant:"primary",type:"submit"},{left:l(n=>[e(d)?G("",!0):(B(),g(f,{key:0,name:"SaveIcon",class:D(n.class)},null,8,["class"]))]),default:l(()=>[x(" "+v(e(t).isEdit?s.$t("general.update"):s.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,K)]),_:1},8,["show"])}}};export{Z as _}; diff --git a/public/build/assets/TaxTypesSetting.332f7c14.js b/public/build/assets/TaxTypesSetting.1ef5c19d.js similarity index 97% rename from public/build/assets/TaxTypesSetting.332f7c14.js rename to public/build/assets/TaxTypesSetting.1ef5c19d.js index 0d5a8f059..f77c0f524 100644 --- a/public/build/assets/TaxTypesSetting.332f7c14.js +++ b/public/build/assets/TaxTypesSetting.1ef5c19d.js @@ -1 +1 @@ -import{j as H,u as q,q as Y,e as $,c as j,g as f,b as G,r as J}from"./main.75722495.js";import{J as M,G as K,ah as V,r as o,o as p,l as g,w as t,u as a,f as n,i as T,t as B,j as N,B as z,k as P,V as O,m as Q,e as W,x as Z}from"./vendor.01d0adc5.js";import{_ as ee}from"./TaxTypeModal.bf6662b3.js";const te={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(b){const s=b,S=H();q();const{t:r}=M(),h=Y(),v=K(),m=$(),E=j();V("utils");async function c(d){await h.fetchTaxType(d),E.openModal({title:r("settings.tax_types.edit_tax"),componentName:"TaxTypeModal",size:"sm",refreshData:s.loadData&&s.loadData})}function C(d){S.openDialog({title:r("general.are_you_sure"),message:r("settings.tax_types.confirm_delete"),yesLabel:r("general.ok"),noLabel:r("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async u=>{if(u){if((await h.deleteTaxType(d)).data.success)return s.loadData&&s.loadData(),!0;s.loadData&&s.loadData()}})}return(d,u)=>{const i=o("BaseIcon"),w=o("BaseButton"),D=o("BaseDropdownItem"),k=o("BaseDropdown");return p(),g(k,null,{activator:t(()=>[a(v).name==="tax-types.view"?(p(),g(w,{key:0,variant:"primary"},{default:t(()=>[n(i,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(p(),g(i,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:t(()=>[a(m).hasAbilities(a(f).EDIT_TAX_TYPE)?(p(),g(D,{key:0,onClick:u[0]||(u[0]=I=>c(b.row.id))},{default:t(()=>[n(i,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),T(" "+B(d.$t("general.edit")),1)]),_:1})):N("",!0),a(m).hasAbilities(a(f).DELETE_TAX_TYPE)?(p(),g(D,{key:1,onClick:u[1]||(u[1]=I=>C(b.row.id))},{default:t(()=>[n(i,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),T(" "+B(d.$t("general.delete")),1)]),_:1})):N("",!0)]),_:1})}}},ae={key:0},le={setup(b){const{t:s}=M(),S=V("utils"),r=G(),h=Y(),v=j(),m=$(),E=J(),c=z(null),C=z(r.selectedCompanySettings.tax_per_item),d=P(()=>[{key:"name",label:s("settings.tax_types.tax_name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"compound_tax",label:s("settings.tax_types.compound_tax"),tdClass:"font-medium text-gray-900"},{key:"percent",label:s("settings.tax_types.percent"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]),u=P(()=>r.selectedCompanySettings.sales_tax_us_enabled==="YES"&&E.salesTaxUSEnabled),i=P({get:()=>C.value==="YES",set:async l=>{const _=l?"YES":"NO";let y={settings:{tax_per_item:_}};C.value=_,await r.updateCompanySettings({data:y,message:"general.setting_updated"})}});function w(){return m.hasAbilities([f.DELETE_TAX_TYPE,f.EDIT_TAX_TYPE])}async function D({page:l,filter:_,sort:y}){let A={orderByField:y.fieldName||"created_at",orderBy:y.order||"desc",page:l},x=await h.fetchTaxTypes(A);return{data:x.data.data,pagination:{totalPages:x.data.meta.last_page,currentPage:l,totalCount:x.data.meta.total,limit:5}}}async function k(){c.value&&c.value.refresh()}function I(){v.openModal({title:s("settings.tax_types.add_tax"),componentName:"TaxTypeModal",size:"sm",refreshData:c.value&&c.value.refresh})}return(l,_)=>{const y=o("BaseIcon"),A=o("BaseButton"),x=o("BaseBadge"),X=o("BaseTable"),L=o("BaseDivider"),U=o("BaseSwitchSection"),F=o("BaseSettingCard");return p(),g(F,{title:l.$t("settings.tax_types.title"),description:l.$t("settings.tax_types.description")},O({default:t(()=>[n(ee),n(X,{ref:(e,R)=>{R.table=e,c.value=e},class:"mt-16",data:D,columns:a(d)},O({"cell-compound_tax":t(({row:e})=>[n(x,{"bg-color":a(S).getBadgeStatusColor(e.data.compound_tax?"YES":"NO").bgColor,color:a(S).getBadgeStatusColor(e.data.compound_tax?"YES":"NO").color},{default:t(()=>[T(B(e.data.compound_tax?"Yes":"No".replace("_"," ")),1)]),_:2},1032,["bg-color","color"])]),"cell-percent":t(({row:e})=>[T(B(e.data.percent)+" % ",1)]),_:2},[w()?{name:"cell-actions",fn:t(({row:e})=>[n(te,{row:e.data,table:c.value,"load-data":k},null,8,["row","table"])])}:void 0]),1032,["columns"]),a(m).currentUser.is_owner?(p(),W("div",ae,[n(L,{class:"mt-8 mb-2"}),n(U,{modelValue:a(i),"onUpdate:modelValue":_[0]||(_[0]=e=>Z(i)?i.value=e:null),disabled:a(u),title:l.$t("settings.tax_types.tax_per_item"),description:l.$t("settings.tax_types.tax_setting_description")},null,8,["modelValue","disabled","title","description"])])):N("",!0)]),_:2},[a(m).hasAbilities(a(f).CREATE_TAX_TYPE)?{name:"action",fn:t(()=>[n(A,{type:"submit",variant:"primary-outline",onClick:I},{left:t(e=>[n(y,{class:Q(e.class),name:"PlusIcon"},null,8,["class"])]),default:t(()=>[T(" "+B(l.$t("settings.tax_types.add_new_tax")),1)]),_:1})])}:void 0]),1032,["title","description"])}}};export{le as default}; +import{j as H,u as q,q as Y,e as $,c as j,g as f,b as G,r as J}from"./main.24f7a84b.js";import{J as M,G as K,ah as V,r as o,o as p,l as g,w as t,u as a,f as n,i as T,t as B,j as N,B as z,k as P,V as O,m as Q,e as W,x as Z}from"./vendor.01d0adc5.js";import{_ as ee}from"./TaxTypeModal.5b98d9fc.js";const te={props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(b){const s=b,S=H();q();const{t:r}=M(),h=Y(),v=K(),m=$(),E=j();V("utils");async function c(d){await h.fetchTaxType(d),E.openModal({title:r("settings.tax_types.edit_tax"),componentName:"TaxTypeModal",size:"sm",refreshData:s.loadData&&s.loadData})}function C(d){S.openDialog({title:r("general.are_you_sure"),message:r("settings.tax_types.confirm_delete"),yesLabel:r("general.ok"),noLabel:r("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async u=>{if(u){if((await h.deleteTaxType(d)).data.success)return s.loadData&&s.loadData(),!0;s.loadData&&s.loadData()}})}return(d,u)=>{const i=o("BaseIcon"),w=o("BaseButton"),D=o("BaseDropdownItem"),k=o("BaseDropdown");return p(),g(k,null,{activator:t(()=>[a(v).name==="tax-types.view"?(p(),g(w,{key:0,variant:"primary"},{default:t(()=>[n(i,{name:"DotsHorizontalIcon",class:"h-5 text-white"})]),_:1})):(p(),g(i,{key:1,name:"DotsHorizontalIcon",class:"h-5 text-gray-500"}))]),default:t(()=>[a(m).hasAbilities(a(f).EDIT_TAX_TYPE)?(p(),g(D,{key:0,onClick:u[0]||(u[0]=I=>c(b.row.id))},{default:t(()=>[n(i,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),T(" "+B(d.$t("general.edit")),1)]),_:1})):N("",!0),a(m).hasAbilities(a(f).DELETE_TAX_TYPE)?(p(),g(D,{key:1,onClick:u[1]||(u[1]=I=>C(b.row.id))},{default:t(()=>[n(i,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),T(" "+B(d.$t("general.delete")),1)]),_:1})):N("",!0)]),_:1})}}},ae={key:0},le={setup(b){const{t:s}=M(),S=V("utils"),r=G(),h=Y(),v=j(),m=$(),E=J(),c=z(null),C=z(r.selectedCompanySettings.tax_per_item),d=P(()=>[{key:"name",label:s("settings.tax_types.tax_name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"compound_tax",label:s("settings.tax_types.compound_tax"),tdClass:"font-medium text-gray-900"},{key:"percent",label:s("settings.tax_types.percent"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]),u=P(()=>r.selectedCompanySettings.sales_tax_us_enabled==="YES"&&E.salesTaxUSEnabled),i=P({get:()=>C.value==="YES",set:async l=>{const _=l?"YES":"NO";let y={settings:{tax_per_item:_}};C.value=_,await r.updateCompanySettings({data:y,message:"general.setting_updated"})}});function w(){return m.hasAbilities([f.DELETE_TAX_TYPE,f.EDIT_TAX_TYPE])}async function D({page:l,filter:_,sort:y}){let A={orderByField:y.fieldName||"created_at",orderBy:y.order||"desc",page:l},x=await h.fetchTaxTypes(A);return{data:x.data.data,pagination:{totalPages:x.data.meta.last_page,currentPage:l,totalCount:x.data.meta.total,limit:5}}}async function k(){c.value&&c.value.refresh()}function I(){v.openModal({title:s("settings.tax_types.add_tax"),componentName:"TaxTypeModal",size:"sm",refreshData:c.value&&c.value.refresh})}return(l,_)=>{const y=o("BaseIcon"),A=o("BaseButton"),x=o("BaseBadge"),X=o("BaseTable"),L=o("BaseDivider"),U=o("BaseSwitchSection"),F=o("BaseSettingCard");return p(),g(F,{title:l.$t("settings.tax_types.title"),description:l.$t("settings.tax_types.description")},O({default:t(()=>[n(ee),n(X,{ref:(e,R)=>{R.table=e,c.value=e},class:"mt-16",data:D,columns:a(d)},O({"cell-compound_tax":t(({row:e})=>[n(x,{"bg-color":a(S).getBadgeStatusColor(e.data.compound_tax?"YES":"NO").bgColor,color:a(S).getBadgeStatusColor(e.data.compound_tax?"YES":"NO").color},{default:t(()=>[T(B(e.data.compound_tax?"Yes":"No".replace("_"," ")),1)]),_:2},1032,["bg-color","color"])]),"cell-percent":t(({row:e})=>[T(B(e.data.percent)+" % ",1)]),_:2},[w()?{name:"cell-actions",fn:t(({row:e})=>[n(te,{row:e.data,table:c.value,"load-data":k},null,8,["row","table"])])}:void 0]),1032,["columns"]),a(m).currentUser.is_owner?(p(),W("div",ae,[n(L,{class:"mt-8 mb-2"}),n(U,{modelValue:a(i),"onUpdate:modelValue":_[0]||(_[0]=e=>Z(i)?i.value=e:null),disabled:a(u),title:l.$t("settings.tax_types.tax_per_item"),description:l.$t("settings.tax_types.tax_setting_description")},null,8,["modelValue","disabled","title","description"])])):N("",!0)]),_:2},[a(m).hasAbilities(a(f).CREATE_TAX_TYPE)?{name:"action",fn:t(()=>[n(A,{type:"submit",variant:"primary-outline",onClick:I},{left:t(e=>[n(y,{class:Q(e.class),name:"PlusIcon"},null,8,["class"])]),default:t(()=>[T(" "+B(l.$t("settings.tax_types.add_new_tax")),1)]),_:1})])}:void 0]),1032,["title","description"])}}};export{le as default}; diff --git a/public/build/assets/UpdateAppSetting.dcf672e8.js b/public/build/assets/UpdateAppSetting.700f9339.js similarity index 97% rename from public/build/assets/UpdateAppSetting.dcf672e8.js rename to public/build/assets/UpdateAppSetting.700f9339.js index 5e7195d90..af0f01fe9 100644 --- a/public/build/assets/UpdateAppSetting.dcf672e8.js +++ b/public/build/assets/UpdateAppSetting.700f9339.js @@ -1 +1 @@ -import{J as R,B as d,a0 as I,a as S,k as J,r as h,o as n,l as D,w,h as t,t as a,u as s,f as v,i as $,j as y,q as O,ag as Y,e as i,F as V,y as q,m as G}from"./vendor.01d0adc5.js";import{u as Q,j as W,b as X,h as T}from"./main.75722495.js";import{L as Z}from"./LoadingIcon.44a6304d.js";import{u as ee}from"./exchange-rate.dffa79b6.js";const te={class:"pb-8 ml-0"},ae={class:"text-sm not-italic font-medium input-label"},se={class:"box-border flex w-16 p-3 my-2 text-sm text-gray-600 bg-gray-200 border border-gray-200 border-solid rounded-md version"},ne={key:1,class:"mt-4 content"},ie={class:"rounded-md bg-primary-50 p-4 mb-3"},re={class:"flex"},le={class:"shrink-0"},oe={class:"ml-3"},de={class:"text-sm font-medium text-primary-800"},pe={class:"mt-2 text-sm text-primary-700"},ue={class:"text-sm not-italic font-medium input-label"},ce=t("br",null,null,-1),me={class:"box-border flex w-16 p-3 my-2 text-sm text-gray-600 bg-gray-200 border border-gray-200 border-solid rounded-md version"},_e=["innerHTML"],ge={class:"text-sm not-italic font-medium input-label"},fe={class:"w-1/2 mt-2 border-2 border-gray-200 BaseTable-fixed"},he={width:"70%",class:"p-2 text-sm truncate"},ve={width:"30%",class:"p-2 text-sm text-right"},ye={key:0,class:"inline-block w-4 h-4 ml-3 mr-2 bg-green-500 rounded-full"},be={key:1,class:"inline-block w-4 h-4 ml-3 mr-2 bg-red-500 rounded-full"},xe={key:2,class:"relative flex justify-between mt-4 content"},we={class:"m-0 mb-3 font-medium sw-section-title"},ke={class:"mb-8 text-sm leading-snug text-gray-500",style:{"max-width":"480px"}},Be={key:3,class:"w-full p-0 list-none"},Ue={class:"m-0 text-sm leading-8"},Se={class:"flex flex-row items-center"},$e={key:0,class:"mr-3 text-xs text-gray-500"},De={setup(Ce){const k=Q(),z=W(),{t:p,tm:Ne}=R();X(),ee();let b=d(!1),c=d(!1),C=d(""),B=d(""),m=d(null),N=d(null),l=d(!1);const U=I([{translationKey:"settings.update_app.download_zip_file",stepUrl:"/api/v1/update/download",time:null,started:!1,completed:!1},{translationKey:"settings.update_app.unzipping_package",stepUrl:"/api/v1/update/unzip",time:null,started:!1,completed:!1},{translationKey:"settings.update_app.copying_files",stepUrl:"/api/v1/update/copy",time:null,started:!1,completed:!1},{translationKey:"settings.update_app.deleting_files",stepUrl:"/api/v1/update/delete",time:null,started:!1,completed:!1},{translationKey:"settings.update_app.running_migrations",stepUrl:"/api/v1/update/migrate",time:null,started:!1,completed:!1},{translationKey:"settings.update_app.finishing_update",stepUrl:"/api/v1/update/finish",time:null,started:!1,completed:!1}]),x=I({isMinor:Boolean,installed:"",version:""});let E=d(null);window.addEventListener("beforeunload",e=>{l.value&&(e.returnValue="Update is in progress!")}),S.get("/api/v1/app/version").then(e=>{B.value=e.data.version});const F=J(()=>m.value!==null?Object.keys(m.value).every(e=>m.value[e]):!0);function H(e){switch(K(e)){case"pending":return"text-primary-800 bg-gray-200";case"finished":return"text-teal-500 bg-teal-100";case"running":return"text-blue-400 bg-blue-100";case"error":return"text-danger bg-red-200";default:return""}}async function M(){try{c.value=!0;let e=await S.get("/api/v1/check/update");if(c.value=!1,!e.data.version){k.showNotification({title:"Info!",type:"info",message:p("settings.update_app.latest_message")});return}e.data&&(x.isMinor=e.data.is_minor,x.version=e.data.version.version,C.value=e.data.version.description,m.value=e.data.version.extensions,b.value=!0,E.value=e.data.version.minimum_php_version,N.value=e.data.version.deleted_files)}catch(e){b.value=!1,c.value=!1,T(e)}}function j(){z.openDialog({title:p("general.are_you_sure"),message:p("settings.update_app.update_warning"),yesLabel:p("general.ok"),noLabel:p("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async e=>{if(e){let _=null;if(!F.value)return k.showNotification({type:"error",message:"Your current configuration does not match the update requirements. Please try again after all the requirements are fulfilled."}),!0;for(let u=0;u{location.reload()},3e3))}catch(g){return r.started=!1,r.completed=!0,T(g),A(r.translationKey),!1}}}})}function A(e){if(p(e).value){j();return}l.value=!1}function K(e){return e.started&&e.completed?"finished":e.started&&!e.completed?"running":!e.started&&!e.completed?"pending":"error"}return(e,_)=>{const u=h("BaseButton"),r=h("BaseDivider"),g=h("BaseHeading"),f=h("BaseIcon"),P=h("BaseSettingCard");return n(),D(P,{title:e.$t("settings.update_app.title"),description:e.$t("settings.update_app.description")},{default:w(()=>[t("div",te,[t("label",ae,a(e.$t("settings.update_app.current_version")),1),t("div",se,a(s(B)),1),v(u,{loading:s(c),disabled:s(c)||s(l),variant:"primary-outline",class:"mt-6",onClick:M},{default:w(()=>[$(a(e.$t("settings.update_app.check_update")),1)]),_:1},8,["loading","disabled"]),s(b)?(n(),D(r,{key:0,class:"mt-6 mb-4"})):y("",!0),s(b)?O((n(),i("div",ne,[v(g,{type:"heading-title",class:"mb-2"},{default:w(()=>[$(a(e.$t("settings.update_app.avail_update")),1)]),_:1}),t("div",ie,[t("div",re,[t("div",le,[v(f,{name:"InformationCircleIcon",class:"h-5 w-5 text-primary-400","aria-hidden":"true"})]),t("div",oe,[t("h3",de,a(e.$t("general.note")),1),t("div",pe,[t("p",null,a(e.$t("settings.update_app.update_warning")),1)])])])]),t("label",ue,a(e.$t("settings.update_app.next_version")),1),ce,t("div",me,a(s(x).version),1),t("div",{class:"pl-5 mt-4 mb-8 text-sm leading-snug text-gray-500 update-description",style:{"white-space":"pre-wrap","max-width":"480px"},innerHTML:s(C)},null,8,_e),t("label",ge,a(e.$t("settings.update_app.requirements")),1),t("table",fe,[(n(!0),i(V,null,q(s(m),(o,L)=>(n(),i("tr",{key:L,class:"p-2 border-2 border-gray-200"},[t("td",he,a(L),1),t("td",ve,[o?(n(),i("span",ye)):(n(),i("span",be))])]))),128))]),v(u,{class:"mt-10",variant:"primary",onClick:j},{default:w(()=>[$(a(e.$t("settings.update_app.update")),1)]),_:1})],512)),[[Y,!s(l)]]):y("",!0),s(l)?(n(),i("div",xe,[t("div",null,[t("h6",we,a(e.$t("settings.update_app.update_progress")),1),t("p",ke,a(e.$t("settings.update_app.progress_text")),1)]),v(Z,{class:"absolute right-0 h-6 m-1 animate-spin text-primary-400"})])):y("",!0),s(l)?(n(),i("ul",Be,[(n(!0),i(V,null,q(s(U),o=>(n(),i("li",{key:o.stepUrl,class:"flex justify-between w-full py-3 border-b border-gray-200 border-solid last:border-b-0"},[t("p",Ue,a(e.$t(o.translationKey)),1),t("div",Se,[o.time?(n(),i("span",$e,a(o.time),1)):y("",!0),t("span",{class:G([H(o),"block py-1 text-sm text-center uppercase rounded-full"]),style:{width:"88px"}},a(K(o)),3)])]))),128))])):y("",!0)])]),_:1},8,["title","description"])}}};export{De as default}; +import{J as R,B as d,a0 as I,a as S,k as J,r as h,o as n,l as D,w,h as t,t as a,u as s,f as v,i as $,j as y,q as O,ag as Y,e as i,F as V,y as q,m as G}from"./vendor.01d0adc5.js";import{u as Q,j as W,b as X,h as T}from"./main.24f7a84b.js";import{L as Z}from"./LoadingIcon.e09a5e28.js";import{u as ee}from"./exchange-rate.3b3d35e2.js";const te={class:"pb-8 ml-0"},ae={class:"text-sm not-italic font-medium input-label"},se={class:"box-border flex w-16 p-3 my-2 text-sm text-gray-600 bg-gray-200 border border-gray-200 border-solid rounded-md version"},ne={key:1,class:"mt-4 content"},ie={class:"rounded-md bg-primary-50 p-4 mb-3"},re={class:"flex"},le={class:"shrink-0"},oe={class:"ml-3"},de={class:"text-sm font-medium text-primary-800"},pe={class:"mt-2 text-sm text-primary-700"},ue={class:"text-sm not-italic font-medium input-label"},ce=t("br",null,null,-1),me={class:"box-border flex w-16 p-3 my-2 text-sm text-gray-600 bg-gray-200 border border-gray-200 border-solid rounded-md version"},_e=["innerHTML"],ge={class:"text-sm not-italic font-medium input-label"},fe={class:"w-1/2 mt-2 border-2 border-gray-200 BaseTable-fixed"},he={width:"70%",class:"p-2 text-sm truncate"},ve={width:"30%",class:"p-2 text-sm text-right"},ye={key:0,class:"inline-block w-4 h-4 ml-3 mr-2 bg-green-500 rounded-full"},be={key:1,class:"inline-block w-4 h-4 ml-3 mr-2 bg-red-500 rounded-full"},xe={key:2,class:"relative flex justify-between mt-4 content"},we={class:"m-0 mb-3 font-medium sw-section-title"},ke={class:"mb-8 text-sm leading-snug text-gray-500",style:{"max-width":"480px"}},Be={key:3,class:"w-full p-0 list-none"},Ue={class:"m-0 text-sm leading-8"},Se={class:"flex flex-row items-center"},$e={key:0,class:"mr-3 text-xs text-gray-500"},De={setup(Ce){const k=Q(),z=W(),{t:p,tm:Ne}=R();X(),ee();let b=d(!1),c=d(!1),C=d(""),B=d(""),m=d(null),N=d(null),l=d(!1);const U=I([{translationKey:"settings.update_app.download_zip_file",stepUrl:"/api/v1/update/download",time:null,started:!1,completed:!1},{translationKey:"settings.update_app.unzipping_package",stepUrl:"/api/v1/update/unzip",time:null,started:!1,completed:!1},{translationKey:"settings.update_app.copying_files",stepUrl:"/api/v1/update/copy",time:null,started:!1,completed:!1},{translationKey:"settings.update_app.deleting_files",stepUrl:"/api/v1/update/delete",time:null,started:!1,completed:!1},{translationKey:"settings.update_app.running_migrations",stepUrl:"/api/v1/update/migrate",time:null,started:!1,completed:!1},{translationKey:"settings.update_app.finishing_update",stepUrl:"/api/v1/update/finish",time:null,started:!1,completed:!1}]),x=I({isMinor:Boolean,installed:"",version:""});let E=d(null);window.addEventListener("beforeunload",e=>{l.value&&(e.returnValue="Update is in progress!")}),S.get("/api/v1/app/version").then(e=>{B.value=e.data.version});const F=J(()=>m.value!==null?Object.keys(m.value).every(e=>m.value[e]):!0);function H(e){switch(K(e)){case"pending":return"text-primary-800 bg-gray-200";case"finished":return"text-teal-500 bg-teal-100";case"running":return"text-blue-400 bg-blue-100";case"error":return"text-danger bg-red-200";default:return""}}async function M(){try{c.value=!0;let e=await S.get("/api/v1/check/update");if(c.value=!1,!e.data.version){k.showNotification({title:"Info!",type:"info",message:p("settings.update_app.latest_message")});return}e.data&&(x.isMinor=e.data.is_minor,x.version=e.data.version.version,C.value=e.data.version.description,m.value=e.data.version.extensions,b.value=!0,E.value=e.data.version.minimum_php_version,N.value=e.data.version.deleted_files)}catch(e){b.value=!1,c.value=!1,T(e)}}function j(){z.openDialog({title:p("general.are_you_sure"),message:p("settings.update_app.update_warning"),yesLabel:p("general.ok"),noLabel:p("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async e=>{if(e){let _=null;if(!F.value)return k.showNotification({type:"error",message:"Your current configuration does not match the update requirements. Please try again after all the requirements are fulfilled."}),!0;for(let u=0;u{location.reload()},3e3))}catch(g){return r.started=!1,r.completed=!0,T(g),A(r.translationKey),!1}}}})}function A(e){if(p(e).value){j();return}l.value=!1}function K(e){return e.started&&e.completed?"finished":e.started&&!e.completed?"running":!e.started&&!e.completed?"pending":"error"}return(e,_)=>{const u=h("BaseButton"),r=h("BaseDivider"),g=h("BaseHeading"),f=h("BaseIcon"),P=h("BaseSettingCard");return n(),D(P,{title:e.$t("settings.update_app.title"),description:e.$t("settings.update_app.description")},{default:w(()=>[t("div",te,[t("label",ae,a(e.$t("settings.update_app.current_version")),1),t("div",se,a(s(B)),1),v(u,{loading:s(c),disabled:s(c)||s(l),variant:"primary-outline",class:"mt-6",onClick:M},{default:w(()=>[$(a(e.$t("settings.update_app.check_update")),1)]),_:1},8,["loading","disabled"]),s(b)?(n(),D(r,{key:0,class:"mt-6 mb-4"})):y("",!0),s(b)?O((n(),i("div",ne,[v(g,{type:"heading-title",class:"mb-2"},{default:w(()=>[$(a(e.$t("settings.update_app.avail_update")),1)]),_:1}),t("div",ie,[t("div",re,[t("div",le,[v(f,{name:"InformationCircleIcon",class:"h-5 w-5 text-primary-400","aria-hidden":"true"})]),t("div",oe,[t("h3",de,a(e.$t("general.note")),1),t("div",pe,[t("p",null,a(e.$t("settings.update_app.update_warning")),1)])])])]),t("label",ue,a(e.$t("settings.update_app.next_version")),1),ce,t("div",me,a(s(x).version),1),t("div",{class:"pl-5 mt-4 mb-8 text-sm leading-snug text-gray-500 update-description",style:{"white-space":"pre-wrap","max-width":"480px"},innerHTML:s(C)},null,8,_e),t("label",ge,a(e.$t("settings.update_app.requirements")),1),t("table",fe,[(n(!0),i(V,null,q(s(m),(o,L)=>(n(),i("tr",{key:L,class:"p-2 border-2 border-gray-200"},[t("td",he,a(L),1),t("td",ve,[o?(n(),i("span",ye)):(n(),i("span",be))])]))),128))]),v(u,{class:"mt-10",variant:"primary",onClick:j},{default:w(()=>[$(a(e.$t("settings.update_app.update")),1)]),_:1})],512)),[[Y,!s(l)]]):y("",!0),s(l)?(n(),i("div",xe,[t("div",null,[t("h6",we,a(e.$t("settings.update_app.update_progress")),1),t("p",ke,a(e.$t("settings.update_app.progress_text")),1)]),v(Z,{class:"absolute right-0 h-6 m-1 animate-spin text-primary-400"})])):y("",!0),s(l)?(n(),i("ul",Be,[(n(!0),i(V,null,q(s(U),o=>(n(),i("li",{key:o.stepUrl,class:"flex justify-between w-full py-3 border-b border-gray-200 border-solid last:border-b-0"},[t("p",Ue,a(e.$t(o.translationKey)),1),t("div",Se,[o.time?(n(),i("span",$e,a(o.time),1)):y("",!0),t("span",{class:G([H(o),"block py-1 text-sm text-center uppercase rounded-full"]),style:{width:"88px"}},a(K(o)),3)])]))),128))])):y("",!0)])]),_:1},8,["title","description"])}}};export{De as default}; diff --git a/public/build/assets/View.00b10884.js b/public/build/assets/View.0fbb572e.js similarity index 97% rename from public/build/assets/View.00b10884.js rename to public/build/assets/View.0fbb572e.js index a8b4f629d..aa35d6e5e 100644 --- a/public/build/assets/View.00b10884.js +++ b/public/build/assets/View.0fbb572e.js @@ -1 +1 @@ -import{G as Q,aN as W,J as X,a0 as N,B as Y,ah as Z,k as h,C as ee,A as te,r as d,o as m,l as y,w as o,f as a,h as n,u as r,i as E,t as p,j as B,e as S,y as ae,m as se,F as oe}from"./vendor.01d0adc5.js";import{j as re,u as le,w as V,x as ne}from"./main.75722495.js";import{u as ie}from"./estimate.e6573e64.js";import{u as de}from"./global.08b6a984.js";import"./auth.4644c288.js";const me={class:"mr-3 text-sm"},ce={class:"mr-3 text-sm"},ue={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 bg-white w-88 xl:block"},_e={class:"flex items-center justify-between px-4 pt-8 pb-6 border border-gray-200 border-solid"},pe={class:"flex ml-3",role:"group","aria-label":"First group"},fe={class:"px-4 py-1 pb-2 mb-2 text-sm border-b border-gray-200 border-solid"},ye={class:"px-2"},ge={class:"px-2"},be={class:"px-2"},he={class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid sw-scroll"},Be={class:"flex-2"},ve={class:"mb-1 text-md not-italic font-medium leading-5 text-gray-500 capitalize"},xe={class:"flex-1 whitespace-nowrap right"},we={class:"text-sm text-right text-gray-500 non-italic"},ke={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},Ee={class:"flex flex-col min-h-0 mt-8 overflow-hidden",style:{height:"75vh"}},Se=["src"],De={setup(Ve){const c=Q(),F=W(),i=ie(),f=de(),j=re(),{tm:I,t:u}=X();let v=N({}),t=N({orderBy:"",orderByField:"",estimate_number:""}),x=Y(!1);Z("utils"),le();const R=h(()=>i.selectedViewEstimate),$=h(()=>t.orderBy==="asc"||t.orderBy==null);h(()=>$.value?I("general.ascending"):I("general.descending"));const C=h(()=>v.unique_hash?`/estimates/pdf/${v.unique_hash}`:!1);ee(c,()=>{D()}),z(),D(),_=te.exports.debounce(_,500);function T(e){return c.params.id==e}async function z(){await i.fetchEstimate({limit:"all"},f.companySlug),setTimeout(()=>{A()},500)}async function D(){if(c&&c.params.id){let e=await i.fetchViewEstimate({id:c.params.id},f.companySlug);e.data&&Object.assign(v,e.data.data)}}function A(){const e=document.getElementById(`estimate-${c.params.id}`);e&&(e.scrollIntoView({behavior:"smooth"}),e.classList.add("shake"))}async function _(){let e={};t.estimate_number!==""&&t.estimate_number!==null&&t.estimate_number!==void 0&&(e.estimate_number=t.estimate_number),t.orderBy!==null&&t.orderBy!==void 0&&(e.orderBy=t.orderBy),t.orderByField!==null&&t.orderByField!==void 0&&(e.orderByField=t.orderByField),x.value=!0;try{let l=await i.searchEstimate(e,f.companySlug);x.value=!1,l.data.data&&(i.estimates=l.data.data)}catch{x.value=!1}}function L(){return t.orderBy==="asc"?(t.orderBy="desc",_(),!0):(t.orderBy="asc",_(),!0)}async function P(){j.openDialog({title:u("general.are_you_sure"),message:u("estimates.confirm_mark_as_accepted",1),yesLabel:u("general.ok"),noLabel:u("general.cancel"),variant:"primary",size:"lg",hideNoButton:!1}).then(async e=>{let l={slug:f.companySlug,id:c.params.id,status:"ACCEPTED"};e&&(i.acceptEstimate(l),F.push({name:"estimates.dashboard"}))})}async function U(){j.openDialog({title:u("general.are_you_sure"),message:u("estimates.confirm_mark_as_rejected",1),yesLabel:u("general.ok"),noLabel:u("general.cancel"),variant:"primary",size:"lg",hideNoButton:!1}).then(async e=>{let l={slug:f.companySlug,id:c.params.id,status:"REJECTED"};e&&(i.rejectEstimate(l),F.push({name:"estimates.dashboard"}))})}return(e,l)=>{const g=d("BaseButton"),G=d("BasePageHeader"),b=d("BaseIcon"),q=d("BaseInput"),w=d("BaseRadio"),k=d("BaseInputGroup"),H=d("BaseEstimateStatusBadge"),J=d("BaseFormatMoney"),M=d("router-link"),O=d("BasePage");return m(),y(O,{class:"xl:pl-96"},{default:o(()=>[a(G,{title:r(R).estimate_number},{actions:o(()=>[n("div",me,[r(i).selectedViewEstimate.status==="DRAFT"?(m(),y(g,{key:0,variant:"primary",onClick:P},{default:o(()=>[E(p(e.$t("estimates.accept_estimate")),1)]),_:1})):B("",!0)]),n("div",ce,[r(i).selectedViewEstimate.status==="DRAFT"?(m(),y(g,{key:0,variant:"primary-outline",onClick:U},{default:o(()=>[E(p(e.$t("estimates.reject_estimate")),1)]),_:1})):B("",!0)])]),_:1},8,["title"]),n("div",ue,[n("div",_e,[a(q,{modelValue:r(t).estimate_number,"onUpdate:modelValue":l[0]||(l[0]=s=>r(t).estimate_number=s),placeholder:e.$t("general.search"),type:"text",variant:"gray",onInput:_},{right:o(()=>[a(b,{name:"SearchIcon",class:"h-5 text-gray-400"})]),_:1},8,["modelValue","placeholder"]),n("div",pe,[a(ne,{position:"bottom-start","width-class":"w-50","position-class":"left-0"},{activator:o(()=>[a(g,{variant:"gray"},{default:o(()=>[a(b,{name:"FilterIcon",class:"h-5"})]),_:1})]),default:o(()=>[n("div",fe,p(e.$t("general.sort_by")),1),n("div",ye,[a(V,{class:"rounded-md pt-3 hover:rounded-md"},{default:o(()=>[a(k,{class:"-mt-3 font-normal"},{default:o(()=>[a(w,{id:"filter_estimate_date",modelValue:r(t).orderByField,"onUpdate:modelValue":l[1]||(l[1]=s=>r(t).orderByField=s),label:e.$t("reports.estimates.estimate_date"),size:"sm",name:"filter",value:"estimate_date",onChange:_},null,8,["modelValue","label"])]),_:1})]),_:1})]),n("div",ge,[a(V,{class:"rounded-md pt-3 hover:rounded-md"},{default:o(()=>[a(k,{class:"-mt-3 font-normal"},{default:o(()=>[a(w,{id:"filter_due_date",modelValue:r(t).orderByField,"onUpdate:modelValue":[l[2]||(l[2]=s=>r(t).orderByField=s),_],label:e.$t("estimates.due_date"),value:"expiry_date",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1})]),n("div",be,[a(V,{class:"rounded-md pt-3 hover:rounded-md"},{default:o(()=>[a(k,{class:"-mt-3 font-normal"},{default:o(()=>[a(w,{id:"filter_estimate_number",modelValue:r(t).orderByField,"onUpdate:modelValue":[l[3]||(l[3]=s=>r(t).orderByField=s),_],label:e.$t("estimates.estimate_number"),value:"estimate_number",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1})])]),_:1}),a(g,{class:"ml-1",variant:"white",onClick:L},{default:o(()=>[r($)?(m(),y(b,{key:0,name:"SortAscendingIcon",class:"h-5"})):(m(),y(b,{key:1,name:"SortDescendingIcon",class:"h-5"}))]),_:1})])]),n("div",he,[(m(!0),S(oe,null,ae(r(i).estimates,(s,K)=>(m(),y(M,{id:"estimate-"+s.id,key:K,to:`/${r(f).companySlug}/customer/estimates/${s.id}/view`,class:se(["flex justify-between p-4 items-center cursor-pointer hover:bg-gray-100 border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":T(s.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:o(()=>[n("div",Be,[n("div",ve,p(s.estimate_number),1),a(H,{status:s.status},{default:o(()=>[E(p(s.status),1)]),_:2},1032,["status"])]),n("div",xe,[a(J,{class:"mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900 block",amount:s.total,currency:s.currency},null,8,["amount","currency"]),n("div",we,p(s.formatted_estimate_date),1)])]),_:2},1032,["id","to","class"]))),128)),r(i).estimates.length?B("",!0):(m(),S("p",ke,p(e.$t("estimates.no_matching_estimates")),1))])]),n("div",Ee,[r(C)?(m(),S("iframe",{key:0,src:r(C),class:"flex-1 border border-gray-400 border-solid rounded-md"},null,8,Se)):B("",!0)])]),_:1})}}};export{De as default}; +import{G as Q,aN as W,J as X,a0 as N,B as Y,ah as Z,k as h,C as ee,A as te,r as d,o as m,l as y,w as o,f as a,h as n,u as r,i as E,t as p,j as B,e as S,y as ae,m as se,F as oe}from"./vendor.01d0adc5.js";import{j as re,u as le,w as V,x as ne}from"./main.24f7a84b.js";import{u as ie}from"./estimate.d7337943.js";import{u as de}from"./global.ab8f317c.js";import"./auth.0e030165.js";const me={class:"mr-3 text-sm"},ce={class:"mr-3 text-sm"},ue={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 bg-white w-88 xl:block"},_e={class:"flex items-center justify-between px-4 pt-8 pb-6 border border-gray-200 border-solid"},pe={class:"flex ml-3",role:"group","aria-label":"First group"},fe={class:"px-4 py-1 pb-2 mb-2 text-sm border-b border-gray-200 border-solid"},ye={class:"px-2"},ge={class:"px-2"},be={class:"px-2"},he={class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid sw-scroll"},Be={class:"flex-2"},ve={class:"mb-1 text-md not-italic font-medium leading-5 text-gray-500 capitalize"},xe={class:"flex-1 whitespace-nowrap right"},we={class:"text-sm text-right text-gray-500 non-italic"},ke={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},Ee={class:"flex flex-col min-h-0 mt-8 overflow-hidden",style:{height:"75vh"}},Se=["src"],De={setup(Ve){const c=Q(),F=W(),i=ie(),f=de(),j=re(),{tm:I,t:u}=X();let v=N({}),t=N({orderBy:"",orderByField:"",estimate_number:""}),x=Y(!1);Z("utils"),le();const R=h(()=>i.selectedViewEstimate),$=h(()=>t.orderBy==="asc"||t.orderBy==null);h(()=>$.value?I("general.ascending"):I("general.descending"));const C=h(()=>v.unique_hash?`/estimates/pdf/${v.unique_hash}`:!1);ee(c,()=>{D()}),z(),D(),_=te.exports.debounce(_,500);function T(e){return c.params.id==e}async function z(){await i.fetchEstimate({limit:"all"},f.companySlug),setTimeout(()=>{A()},500)}async function D(){if(c&&c.params.id){let e=await i.fetchViewEstimate({id:c.params.id},f.companySlug);e.data&&Object.assign(v,e.data.data)}}function A(){const e=document.getElementById(`estimate-${c.params.id}`);e&&(e.scrollIntoView({behavior:"smooth"}),e.classList.add("shake"))}async function _(){let e={};t.estimate_number!==""&&t.estimate_number!==null&&t.estimate_number!==void 0&&(e.estimate_number=t.estimate_number),t.orderBy!==null&&t.orderBy!==void 0&&(e.orderBy=t.orderBy),t.orderByField!==null&&t.orderByField!==void 0&&(e.orderByField=t.orderByField),x.value=!0;try{let l=await i.searchEstimate(e,f.companySlug);x.value=!1,l.data.data&&(i.estimates=l.data.data)}catch{x.value=!1}}function L(){return t.orderBy==="asc"?(t.orderBy="desc",_(),!0):(t.orderBy="asc",_(),!0)}async function P(){j.openDialog({title:u("general.are_you_sure"),message:u("estimates.confirm_mark_as_accepted",1),yesLabel:u("general.ok"),noLabel:u("general.cancel"),variant:"primary",size:"lg",hideNoButton:!1}).then(async e=>{let l={slug:f.companySlug,id:c.params.id,status:"ACCEPTED"};e&&(i.acceptEstimate(l),F.push({name:"estimates.dashboard"}))})}async function U(){j.openDialog({title:u("general.are_you_sure"),message:u("estimates.confirm_mark_as_rejected",1),yesLabel:u("general.ok"),noLabel:u("general.cancel"),variant:"primary",size:"lg",hideNoButton:!1}).then(async e=>{let l={slug:f.companySlug,id:c.params.id,status:"REJECTED"};e&&(i.rejectEstimate(l),F.push({name:"estimates.dashboard"}))})}return(e,l)=>{const g=d("BaseButton"),G=d("BasePageHeader"),b=d("BaseIcon"),q=d("BaseInput"),w=d("BaseRadio"),k=d("BaseInputGroup"),H=d("BaseEstimateStatusBadge"),J=d("BaseFormatMoney"),M=d("router-link"),O=d("BasePage");return m(),y(O,{class:"xl:pl-96"},{default:o(()=>[a(G,{title:r(R).estimate_number},{actions:o(()=>[n("div",me,[r(i).selectedViewEstimate.status==="DRAFT"?(m(),y(g,{key:0,variant:"primary",onClick:P},{default:o(()=>[E(p(e.$t("estimates.accept_estimate")),1)]),_:1})):B("",!0)]),n("div",ce,[r(i).selectedViewEstimate.status==="DRAFT"?(m(),y(g,{key:0,variant:"primary-outline",onClick:U},{default:o(()=>[E(p(e.$t("estimates.reject_estimate")),1)]),_:1})):B("",!0)])]),_:1},8,["title"]),n("div",ue,[n("div",_e,[a(q,{modelValue:r(t).estimate_number,"onUpdate:modelValue":l[0]||(l[0]=s=>r(t).estimate_number=s),placeholder:e.$t("general.search"),type:"text",variant:"gray",onInput:_},{right:o(()=>[a(b,{name:"SearchIcon",class:"h-5 text-gray-400"})]),_:1},8,["modelValue","placeholder"]),n("div",pe,[a(ne,{position:"bottom-start","width-class":"w-50","position-class":"left-0"},{activator:o(()=>[a(g,{variant:"gray"},{default:o(()=>[a(b,{name:"FilterIcon",class:"h-5"})]),_:1})]),default:o(()=>[n("div",fe,p(e.$t("general.sort_by")),1),n("div",ye,[a(V,{class:"rounded-md pt-3 hover:rounded-md"},{default:o(()=>[a(k,{class:"-mt-3 font-normal"},{default:o(()=>[a(w,{id:"filter_estimate_date",modelValue:r(t).orderByField,"onUpdate:modelValue":l[1]||(l[1]=s=>r(t).orderByField=s),label:e.$t("reports.estimates.estimate_date"),size:"sm",name:"filter",value:"estimate_date",onChange:_},null,8,["modelValue","label"])]),_:1})]),_:1})]),n("div",ge,[a(V,{class:"rounded-md pt-3 hover:rounded-md"},{default:o(()=>[a(k,{class:"-mt-3 font-normal"},{default:o(()=>[a(w,{id:"filter_due_date",modelValue:r(t).orderByField,"onUpdate:modelValue":[l[2]||(l[2]=s=>r(t).orderByField=s),_],label:e.$t("estimates.due_date"),value:"expiry_date",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1})]),n("div",be,[a(V,{class:"rounded-md pt-3 hover:rounded-md"},{default:o(()=>[a(k,{class:"-mt-3 font-normal"},{default:o(()=>[a(w,{id:"filter_estimate_number",modelValue:r(t).orderByField,"onUpdate:modelValue":[l[3]||(l[3]=s=>r(t).orderByField=s),_],label:e.$t("estimates.estimate_number"),value:"estimate_number",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1})])]),_:1}),a(g,{class:"ml-1",variant:"white",onClick:L},{default:o(()=>[r($)?(m(),y(b,{key:0,name:"SortAscendingIcon",class:"h-5"})):(m(),y(b,{key:1,name:"SortDescendingIcon",class:"h-5"}))]),_:1})])]),n("div",he,[(m(!0),S(oe,null,ae(r(i).estimates,(s,K)=>(m(),y(M,{id:"estimate-"+s.id,key:K,to:`/${r(f).companySlug}/customer/estimates/${s.id}/view`,class:se(["flex justify-between p-4 items-center cursor-pointer hover:bg-gray-100 border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":T(s.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:o(()=>[n("div",Be,[n("div",ve,p(s.estimate_number),1),a(H,{status:s.status},{default:o(()=>[E(p(s.status),1)]),_:2},1032,["status"])]),n("div",xe,[a(J,{class:"mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900 block",amount:s.total,currency:s.currency},null,8,["amount","currency"]),n("div",we,p(s.formatted_estimate_date),1)])]),_:2},1032,["id","to","class"]))),128)),r(i).estimates.length?B("",!0):(m(),S("p",ke,p(e.$t("estimates.no_matching_estimates")),1))])]),n("div",Ee,[r(C)?(m(),S("iframe",{key:0,src:r(C),class:"flex-1 border border-gray-400 border-solid rounded-md"},null,8,Se)):B("",!0)])]),_:1})}}};export{De as default}; diff --git a/public/build/assets/View.1a50dc40.js b/public/build/assets/View.1fa1b212.js similarity index 96% rename from public/build/assets/View.1a50dc40.js rename to public/build/assets/View.1fa1b212.js index 7ef7e2e62..9081fb658 100644 --- a/public/build/assets/View.1a50dc40.js +++ b/public/build/assets/View.1fa1b212.js @@ -1 +1 @@ -var re=Object.defineProperty;var C=Object.getOwnPropertySymbols;var ne=Object.prototype.hasOwnProperty,ie=Object.prototype.propertyIsEnumerable;var L=(p,c,s)=>c in p?re(p,c,{enumerable:!0,configurable:!0,writable:!0,value:s}):p[c]=s,M=(p,c)=>{for(var s in c||(c={}))ne.call(c,s)&&L(p,s,c[s]);if(C)for(var s of C(c))ie.call(c,s)&&L(p,s,c[s]);return p};import{J as de,ah as ue,B as f,G as ce,aN as me,a0 as fe,k as B,C as pe,A as _e,r as d,o as m,e as E,f as a,l as b,w as r,h as u,u as l,i as $,t as g,j as v,F as R,y as ye,m as be}from"./vendor.01d0adc5.js";import{_ as ge}from"./EstimateIndexDropdown.4eab32d4.js";import{c as ve,k as he,u as xe,j as Be,e as Ee,g as z}from"./main.75722495.js";import{_ as ke}from"./SendEstimateModal.a8bc3854.js";import{L as Se}from"./LoadingIcon.44a6304d.js";import"./mail-driver.4ea1af6b.js";const we={class:"mr-3 text-sm"},Te={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 ml-56 bg-white xl:ml-64 w-88 xl:block"},Ie={class:"flex items-center justify-between px-4 pt-8 pb-2 border border-gray-200 border-solid height-full"},De={class:"mb-6"},Fe={class:"flex mb-6 ml-3",role:"group","aria-label":"First group"},$e={class:"px-4 py-1 pb-2 mb-1 mb-2 text-sm border-b border-gray-200 border-solid"},Ve={key:0,class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid base-scroll"},Ae={class:"flex-2"},je={class:"mt-1 mb-2 text-xs not-italic font-medium leading-5 text-gray-600"},Ne={class:"flex-1 whitespace-nowrap right"},Ce={class:"text-sm not-italic font-normal leading-5 text-right text-gray-600 est-date"},Le={class:"flex justify-center p-4 items-center"},Me={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},Re={class:"flex flex-col min-h-0 mt-8 overflow-hidden",style:{height:"75vh"}},ze=["src"],We={setup(p){const c=ve(),s=he();xe();const P=Be(),V=Ee(),{t:y}=de();ue("$utils"),f(null),f(null);const i=f(null);f(null);const h=ce();me(),f(["DRAFT","SENT","VIEWED","EXPIRED","ACCEPTED","REJECTED"]);const k=f(!1),U=f(!1);f(!1);const A=f(!1),x=f(!1),S=f(!1),t=fe({orderBy:null,orderByField:null,searchText:null}),G=B(()=>i.value.estimate_number),j=B(()=>t.orderBy==="asc"||t.orderBy==null);B(()=>j.value?y("general.ascending"):y("general.descending"));const H=B(()=>`/estimates/pdf/${i.value.unique_hash}`);B(()=>i.value&&i.value.id?estimate.value.id:null),pe(h,(e,n)=>{e.name==="estimates.view"&&N()}),q(),N(),_=_e.exports.debounce(_,500);function J(e){return h.params.id==e}async function q(){x.value=!0,await s.fetchEstimates(h.params.id),x.value=!1,setTimeout(()=>{O()},500)}function O(){const e=document.getElementById(`estimate-${h.params.id}`);e&&(e.scrollIntoView({behavior:"smooth"}),e.classList.add("shake"))}async function N(){S.value=!0;let e=await s.fetchEstimate(h.params.id);e.data&&(S.value=!1,i.value=M({},e.data.data))}async function _(){let e="";t.searchText!==""&&t.searchText!==null&&t.searchText!==void 0&&(e+=`search=${t.searchText}&`),t.orderBy!==null&&t.orderBy!==void 0&&(e+=`orderBy=${t.orderBy}&`),t.orderByField!==null&&t.orderByField!==void 0&&(e+=`orderByField=${t.orderByField}`),A.value=!0;let n=await s.searchEstimate(e);A.value=!1,n.data&&(s.estimates=n.data.data)}function W(){return t.orderBy==="asc"?(t.orderBy="desc",_(),!0):(t.orderBy="asc",_(),!0)}async function X(){P.openDialog({title:y("general.are_you_sure"),message:y("estimates.confirm_mark_as_sent"),yesLabel:y("general.ok"),noLabel:y("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(e=>{k.value=!1,e&&(s.markAsSent({id:i.value.id,status:"SENT"}),i.value.status="SENT",k.value=!0),k.value=!1})}async function K(e){c.openModal({title:y("estimates.send_estimate"),componentName:"SendEstimateModal",id:i.value.id,data:i.value})}return(e,n)=>{const w=d("BaseButton"),Q=d("BasePageHeader"),T=d("BaseIcon"),Y=d("BaseInput"),I=d("BaseRadio"),D=d("BaseInputGroup"),F=d("BaseDropdownItem"),Z=d("BaseDropdown"),ee=d("BaseText"),te=d("BaseEstimateStatusBadge"),ae=d("BaseFormatMoney"),se=d("router-link"),oe=d("BasePage");return m(),E(R,null,[a(ke),i.value?(m(),b(oe,{key:0,class:"xl:pl-96 xl:ml-8"},{default:r(()=>[a(Q,{title:l(G)},{actions:r(()=>[u("div",we,[i.value.status==="DRAFT"&&l(V).hasAbilities(l(z).EDIT_ESTIMATE)?(m(),b(w,{key:0,disabled:k.value,"content-loading":S.value,variant:"primary-outline",onClick:X},{default:r(()=>[$(g(e.$t("estimates.mark_as_sent")),1)]),_:1},8,["disabled","content-loading"])):v("",!0)]),i.value.status==="DRAFT"&&l(V).hasAbilities(l(z).SEND_ESTIMATE)?(m(),b(w,{key:0,disabled:U.value,"content-loading":S.value,variant:"primary",class:"text-sm",onClick:K},{default:r(()=>[$(g(e.$t("estimates.send_estimate")),1)]),_:1},8,["disabled","content-loading"])):v("",!0),a(ge,{class:"ml-3",row:i.value},null,8,["row"])]),_:1},8,["title"]),u("div",Te,[u("div",Ie,[u("div",De,[a(Y,{modelValue:l(t).searchText,"onUpdate:modelValue":n[0]||(n[0]=o=>l(t).searchText=o),placeholder:e.$t("general.search"),type:"text",variant:"gray",onInput:n[1]||(n[1]=o=>_())},{right:r(()=>[a(T,{name:"SearchIcon",class:"text-gray-400"})]),_:1},8,["modelValue","placeholder"])]),u("div",Fe,[a(Z,{class:"ml-3",position:"bottom-start","width-class":"w-45","position-class":"left-0"},{activator:r(()=>[a(w,{size:"md",variant:"gray"},{default:r(()=>[a(T,{name:"FilterIcon"})]),_:1})]),default:r(()=>[u("div",$e,g(e.$t("general.sort_by")),1),a(F,{class:"flex px-4 py-2 cursor-pointer"},{default:r(()=>[a(D,{class:"-mt-3 font-normal"},{default:r(()=>[a(I,{id:"filter_estimate_date",modelValue:l(t).orderByField,"onUpdate:modelValue":[n[2]||(n[2]=o=>l(t).orderByField=o),_],label:e.$t("reports.estimates.estimate_date"),size:"sm",name:"filter",value:"estimate_date"},null,8,["modelValue","label"])]),_:1})]),_:1}),a(F,{class:"flex px-4 py-2 cursor-pointer"},{default:r(()=>[a(D,{class:"-mt-3 font-normal"},{default:r(()=>[a(I,{id:"filter_due_date",modelValue:l(t).orderByField,"onUpdate:modelValue":[n[3]||(n[3]=o=>l(t).orderByField=o),_],label:e.$t("estimates.due_date"),value:"expiry_date",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1}),a(F,{class:"flex px-4 py-2 cursor-pointer"},{default:r(()=>[a(D,{class:"-mt-3 font-normal"},{default:r(()=>[a(I,{id:"filter_estimate_number",modelValue:l(t).orderByField,"onUpdate:modelValue":[n[4]||(n[4]=o=>l(t).orderByField=o),_],label:e.$t("estimates.estimate_number"),value:"estimate_number",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1})]),_:1}),a(w,{class:"ml-1",size:"md",variant:"gray",onClick:W},{default:r(()=>[l(j)?(m(),b(T,{key:0,name:"SortAscendingIcon"})):(m(),b(T,{key:1,name:"SortDescendingIcon"}))]),_:1})])]),l(s)&&l(s).estimates?(m(),E("div",Ve,[(m(!0),E(R,null,ye(l(s).estimates,(o,le)=>(m(),E("div",{key:le},[o&&!x.value?(m(),b(se,{key:0,id:"estimate-"+o.id,to:`/admin/estimates/${o.id}/view`,class:be(["flex justify-between side-estimate p-4 cursor-pointer hover:bg-gray-100 items-center border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":J(o.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:r(()=>[u("div",Ae,[a(ee,{text:o.customer.name,length:30,class:"pr-2 mb-2 text-sm not-italic font-normal leading-5 text-black capitalize truncate"},null,8,["text"]),u("div",je,g(o.estimate_number),1),a(te,{status:o.status,class:"px-1 text-xs"},{default:r(()=>[$(g(o.status),1)]),_:2},1032,["status"])]),u("div",Ne,[a(ae,{amount:o.total,currency:o.customer.currency,class:"block mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900"},null,8,["amount","currency"]),u("div",Ce,g(o.formatted_estimate_date),1)])]),_:2},1032,["id","to","class"])):v("",!0)]))),128)),u("div",Le,[x.value?(m(),b(Se,{key:0,class:"h-6 m-1 animate-spin text-primary-400"})):v("",!0)]),!l(s).estimates.length&&!x.value?(m(),E("p",Me,g(e.$t("estimates.no_matching_estimates")),1)):v("",!0)])):v("",!0)]),u("div",Re,[u("iframe",{src:`${l(H)}`,class:"flex-1 border border-gray-400 border-solid rounded-md bg-white frame-style"},null,8,ze)])]),_:1})):v("",!0)],64)}}};export{We as default}; +var re=Object.defineProperty;var C=Object.getOwnPropertySymbols;var ne=Object.prototype.hasOwnProperty,ie=Object.prototype.propertyIsEnumerable;var L=(p,c,s)=>c in p?re(p,c,{enumerable:!0,configurable:!0,writable:!0,value:s}):p[c]=s,M=(p,c)=>{for(var s in c||(c={}))ne.call(c,s)&&L(p,s,c[s]);if(C)for(var s of C(c))ie.call(c,s)&&L(p,s,c[s]);return p};import{J as de,ah as ue,B as f,G as ce,aN as me,a0 as fe,k as B,C as pe,A as _e,r as d,o as m,e as E,f as a,l as b,w as r,h as u,u as l,i as $,t as g,j as v,F as R,y as ye,m as be}from"./vendor.01d0adc5.js";import{_ as ge}from"./EstimateIndexDropdown.7244b3a5.js";import{c as ve,k as he,u as xe,j as Be,e as Ee,g as z}from"./main.24f7a84b.js";import{_ as ke}from"./SendEstimateModal.123953ba.js";import{L as Se}from"./LoadingIcon.e09a5e28.js";import"./mail-driver.69202299.js";const we={class:"mr-3 text-sm"},Te={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 ml-56 bg-white xl:ml-64 w-88 xl:block"},Ie={class:"flex items-center justify-between px-4 pt-8 pb-2 border border-gray-200 border-solid height-full"},De={class:"mb-6"},Fe={class:"flex mb-6 ml-3",role:"group","aria-label":"First group"},$e={class:"px-4 py-1 pb-2 mb-1 mb-2 text-sm border-b border-gray-200 border-solid"},Ve={key:0,class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid base-scroll"},Ae={class:"flex-2"},je={class:"mt-1 mb-2 text-xs not-italic font-medium leading-5 text-gray-600"},Ne={class:"flex-1 whitespace-nowrap right"},Ce={class:"text-sm not-italic font-normal leading-5 text-right text-gray-600 est-date"},Le={class:"flex justify-center p-4 items-center"},Me={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},Re={class:"flex flex-col min-h-0 mt-8 overflow-hidden",style:{height:"75vh"}},ze=["src"],We={setup(p){const c=ve(),s=he();xe();const P=Be(),V=Ee(),{t:y}=de();ue("$utils"),f(null),f(null);const i=f(null);f(null);const h=ce();me(),f(["DRAFT","SENT","VIEWED","EXPIRED","ACCEPTED","REJECTED"]);const k=f(!1),U=f(!1);f(!1);const A=f(!1),x=f(!1),S=f(!1),t=fe({orderBy:null,orderByField:null,searchText:null}),G=B(()=>i.value.estimate_number),j=B(()=>t.orderBy==="asc"||t.orderBy==null);B(()=>j.value?y("general.ascending"):y("general.descending"));const H=B(()=>`/estimates/pdf/${i.value.unique_hash}`);B(()=>i.value&&i.value.id?estimate.value.id:null),pe(h,(e,n)=>{e.name==="estimates.view"&&N()}),q(),N(),_=_e.exports.debounce(_,500);function J(e){return h.params.id==e}async function q(){x.value=!0,await s.fetchEstimates(h.params.id),x.value=!1,setTimeout(()=>{O()},500)}function O(){const e=document.getElementById(`estimate-${h.params.id}`);e&&(e.scrollIntoView({behavior:"smooth"}),e.classList.add("shake"))}async function N(){S.value=!0;let e=await s.fetchEstimate(h.params.id);e.data&&(S.value=!1,i.value=M({},e.data.data))}async function _(){let e="";t.searchText!==""&&t.searchText!==null&&t.searchText!==void 0&&(e+=`search=${t.searchText}&`),t.orderBy!==null&&t.orderBy!==void 0&&(e+=`orderBy=${t.orderBy}&`),t.orderByField!==null&&t.orderByField!==void 0&&(e+=`orderByField=${t.orderByField}`),A.value=!0;let n=await s.searchEstimate(e);A.value=!1,n.data&&(s.estimates=n.data.data)}function W(){return t.orderBy==="asc"?(t.orderBy="desc",_(),!0):(t.orderBy="asc",_(),!0)}async function X(){P.openDialog({title:y("general.are_you_sure"),message:y("estimates.confirm_mark_as_sent"),yesLabel:y("general.ok"),noLabel:y("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(e=>{k.value=!1,e&&(s.markAsSent({id:i.value.id,status:"SENT"}),i.value.status="SENT",k.value=!0),k.value=!1})}async function K(e){c.openModal({title:y("estimates.send_estimate"),componentName:"SendEstimateModal",id:i.value.id,data:i.value})}return(e,n)=>{const w=d("BaseButton"),Q=d("BasePageHeader"),T=d("BaseIcon"),Y=d("BaseInput"),I=d("BaseRadio"),D=d("BaseInputGroup"),F=d("BaseDropdownItem"),Z=d("BaseDropdown"),ee=d("BaseText"),te=d("BaseEstimateStatusBadge"),ae=d("BaseFormatMoney"),se=d("router-link"),oe=d("BasePage");return m(),E(R,null,[a(ke),i.value?(m(),b(oe,{key:0,class:"xl:pl-96 xl:ml-8"},{default:r(()=>[a(Q,{title:l(G)},{actions:r(()=>[u("div",we,[i.value.status==="DRAFT"&&l(V).hasAbilities(l(z).EDIT_ESTIMATE)?(m(),b(w,{key:0,disabled:k.value,"content-loading":S.value,variant:"primary-outline",onClick:X},{default:r(()=>[$(g(e.$t("estimates.mark_as_sent")),1)]),_:1},8,["disabled","content-loading"])):v("",!0)]),i.value.status==="DRAFT"&&l(V).hasAbilities(l(z).SEND_ESTIMATE)?(m(),b(w,{key:0,disabled:U.value,"content-loading":S.value,variant:"primary",class:"text-sm",onClick:K},{default:r(()=>[$(g(e.$t("estimates.send_estimate")),1)]),_:1},8,["disabled","content-loading"])):v("",!0),a(ge,{class:"ml-3",row:i.value},null,8,["row"])]),_:1},8,["title"]),u("div",Te,[u("div",Ie,[u("div",De,[a(Y,{modelValue:l(t).searchText,"onUpdate:modelValue":n[0]||(n[0]=o=>l(t).searchText=o),placeholder:e.$t("general.search"),type:"text",variant:"gray",onInput:n[1]||(n[1]=o=>_())},{right:r(()=>[a(T,{name:"SearchIcon",class:"text-gray-400"})]),_:1},8,["modelValue","placeholder"])]),u("div",Fe,[a(Z,{class:"ml-3",position:"bottom-start","width-class":"w-45","position-class":"left-0"},{activator:r(()=>[a(w,{size:"md",variant:"gray"},{default:r(()=>[a(T,{name:"FilterIcon"})]),_:1})]),default:r(()=>[u("div",$e,g(e.$t("general.sort_by")),1),a(F,{class:"flex px-4 py-2 cursor-pointer"},{default:r(()=>[a(D,{class:"-mt-3 font-normal"},{default:r(()=>[a(I,{id:"filter_estimate_date",modelValue:l(t).orderByField,"onUpdate:modelValue":[n[2]||(n[2]=o=>l(t).orderByField=o),_],label:e.$t("reports.estimates.estimate_date"),size:"sm",name:"filter",value:"estimate_date"},null,8,["modelValue","label"])]),_:1})]),_:1}),a(F,{class:"flex px-4 py-2 cursor-pointer"},{default:r(()=>[a(D,{class:"-mt-3 font-normal"},{default:r(()=>[a(I,{id:"filter_due_date",modelValue:l(t).orderByField,"onUpdate:modelValue":[n[3]||(n[3]=o=>l(t).orderByField=o),_],label:e.$t("estimates.due_date"),value:"expiry_date",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1}),a(F,{class:"flex px-4 py-2 cursor-pointer"},{default:r(()=>[a(D,{class:"-mt-3 font-normal"},{default:r(()=>[a(I,{id:"filter_estimate_number",modelValue:l(t).orderByField,"onUpdate:modelValue":[n[4]||(n[4]=o=>l(t).orderByField=o),_],label:e.$t("estimates.estimate_number"),value:"estimate_number",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1})]),_:1}),a(w,{class:"ml-1",size:"md",variant:"gray",onClick:W},{default:r(()=>[l(j)?(m(),b(T,{key:0,name:"SortAscendingIcon"})):(m(),b(T,{key:1,name:"SortDescendingIcon"}))]),_:1})])]),l(s)&&l(s).estimates?(m(),E("div",Ve,[(m(!0),E(R,null,ye(l(s).estimates,(o,le)=>(m(),E("div",{key:le},[o&&!x.value?(m(),b(se,{key:0,id:"estimate-"+o.id,to:`/admin/estimates/${o.id}/view`,class:be(["flex justify-between side-estimate p-4 cursor-pointer hover:bg-gray-100 items-center border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":J(o.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:r(()=>[u("div",Ae,[a(ee,{text:o.customer.name,length:30,class:"pr-2 mb-2 text-sm not-italic font-normal leading-5 text-black capitalize truncate"},null,8,["text"]),u("div",je,g(o.estimate_number),1),a(te,{status:o.status,class:"px-1 text-xs"},{default:r(()=>[$(g(o.status),1)]),_:2},1032,["status"])]),u("div",Ne,[a(ae,{amount:o.total,currency:o.customer.currency,class:"block mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900"},null,8,["amount","currency"]),u("div",Ce,g(o.formatted_estimate_date),1)])]),_:2},1032,["id","to","class"])):v("",!0)]))),128)),u("div",Le,[x.value?(m(),b(Se,{key:0,class:"h-6 m-1 animate-spin text-primary-400"})):v("",!0)]),!l(s).estimates.length&&!x.value?(m(),E("p",Me,g(e.$t("estimates.no_matching_estimates")),1)):v("",!0)])):v("",!0)]),u("div",Re,[u("iframe",{src:`${l(H)}`,class:"flex-1 border border-gray-400 border-solid rounded-md bg-white frame-style"},null,8,ze)])]),_:1})):v("",!0)],64)}}};export{We as default}; diff --git a/public/build/assets/View.958a5524.js b/public/build/assets/View.4e871e2e.js similarity index 98% rename from public/build/assets/View.958a5524.js rename to public/build/assets/View.4e871e2e.js index 815d555c2..4d3e2194d 100644 --- a/public/build/assets/View.958a5524.js +++ b/public/build/assets/View.4e871e2e.js @@ -1 +1 @@ -import{G as M,J as O,B as S,a0 as R,A as J,k as T,r as d,o as a,e as v,h as o,f as t,w as n,u as e,t as x,l as p,F as U,y as z,j as h,m as Y,i as D,ah as H,C as K,x as Q,aN as W}from"./vendor.01d0adc5.js";import{l as L,_ as Z,b as ee,j as te,e as se,g as E}from"./main.75722495.js";import{L as ae}from"./LoadingIcon.44a6304d.js";import{_ as ne}from"./LineChart.a92f3bea.js";import{_ as oe}from"./CustomerIndexDropdown.3adf4218.js";const le={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 ml-56 bg-white xl:ml-64 w-88 xl:block"},re={class:"flex items-center justify-between px-4 pt-8 pb-2 border border-gray-200 border-solid height-full"},ce={class:"flex mb-6 ml-3",role:"group","aria-label":"First group"},ie={class:"px-4 py-3 pb-2 mb-2 text-sm border-b border-gray-200 border-solid"},de={class:"px-2"},ue={class:"px-2"},me={class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid sidebar base-scroll"},_e={class:"flex-1 font-bold text-right whitespace-nowrap"},pe={class:"flex justify-center p-4 items-center"},fe={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},he={setup(V){const y=L(),s=M(),{t:m}=O();let c=S(!1),i=S(!1),l=R({orderBy:"",orderByField:"",searchText:""});f=J.exports.debounce(f,500);const $=T(()=>l.orderBy==="asc"||l.orderBy==null);T(()=>$.value?m("general.ascending"):m("general.descending"));function B(r){return s.params.id==r}async function I(){i.value=!0,await y.fetchCustomers({limit:"all"}),i.value=!1,setTimeout(()=>{g()},500)}function g(){const r=document.getElementById(`customer-${s.params.id}`);r&&(r.scrollIntoView({behavior:"smooth"}),r.classList.add("shake"))}async function f(){let r={};l.searchText!==""&&l.searchText!==null&&l.searchText!==void 0&&(r.display_name=l.searchText),l.orderBy!==null&&l.orderBy!==void 0&&(r.orderBy=l.orderBy),l.orderByField!==null&&l.orderByField!==void 0&&(r.orderByField=l.orderByField),c.value=!0;try{let _=await y.fetchCustomers(r);c.value=!1,_.data&&(y.customers=_.data.data)}catch{c.value=!1}}function w(){return l.orderBy==="asc"?(l.orderBy="desc",f(),!0):(l.orderBy="asc",f(),!0)}return I(),(r,_)=>{const u=d("BaseIcon"),C=d("BaseInput"),k=d("BaseButton"),j=d("BaseRadio"),A=d("BaseInputGroup"),F=d("BaseDropdownItem"),P=d("BaseDropdown"),N=d("BaseText"),G=d("BaseFormatMoney"),X=d("router-link");return a(),v("div",le,[o("div",re,[t(C,{modelValue:e(l).searchText,"onUpdate:modelValue":_[0]||(_[0]=b=>e(l).searchText=b),placeholder:r.$t("general.search"),"container-class":"mb-6",type:"text",variant:"gray",onInput:_[1]||(_[1]=b=>f())},{default:n(()=>[t(u,{name:"SearchIcon",class:"text-gray-500"})]),_:1},8,["modelValue","placeholder"]),o("div",ce,[t(P,{"close-on-select":!1,position:"bottom-start","width-class":"w-40","position-class":"left-0"},{activator:n(()=>[t(k,{variant:"gray"},{default:n(()=>[t(u,{name:"FilterIcon"})]),_:1})]),default:n(()=>[o("div",ie,x(r.$t("general.sort_by")),1),o("div",de,[t(F,{class:"flex px-1 py-2 mt-1 cursor-pointer hover:rounded-md"},{default:n(()=>[t(A,{class:"pt-2 -mt-4"},{default:n(()=>[t(j,{id:"filter_create_date",modelValue:e(l).orderByField,"onUpdate:modelValue":[_[2]||(_[2]=b=>e(l).orderByField=b),f],label:r.$t("customers.create_date"),size:"sm",name:"filter",value:"invoices.created_at"},null,8,["modelValue","label"])]),_:1})]),_:1})]),o("div",ue,[t(F,{class:"flex px-1 cursor-pointer hover:rounded-md"},{default:n(()=>[t(A,{class:"pt-2 -mt-4"},{default:n(()=>[t(j,{id:"filter_display_name",modelValue:e(l).orderByField,"onUpdate:modelValue":[_[3]||(_[3]=b=>e(l).orderByField=b),f],label:r.$t("customers.display_name"),size:"sm",name:"filter",value:"name"},null,8,["modelValue","label"])]),_:1})]),_:1})])]),_:1}),t(k,{class:"ml-1",size:"md",variant:"gray",onClick:w},{default:n(()=>[e($)?(a(),p(u,{key:0,name:"SortAscendingIcon"})):(a(),p(u,{key:1,name:"SortDescendingIcon"}))]),_:1})])]),o("div",me,[(a(!0),v(U,null,z(e(y).customers,(b,q)=>(a(),v("div",{key:q},[b&&!e(i)?(a(),p(X,{key:0,id:"customer-"+b.id,to:`/admin/customers/${b.id}/view`,class:Y(["flex justify-between p-4 items-center cursor-pointer hover:bg-gray-100 border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":B(b.id)}]),style:{"border-top":"1px solid rgba(185, 193, 209, 0.41)"}},{default:n(()=>[o("div",null,[t(N,{text:b.name,length:30,class:"pr-2 text-sm not-italic font-normal leading-5 text-black capitalize truncate"},null,8,["text"]),b.contact_name?(a(),p(N,{key:0,text:b.contact_name,length:30,class:"mt-1 text-xs not-italic font-medium leading-5 text-gray-600"},null,8,["text"])):h("",!0)]),o("div",_e,[t(G,{amount:b.due_amount,currency:b.currency},null,8,["amount","currency"])])]),_:2},1032,["id","to","class"])):h("",!0)]))),128)),o("div",pe,[e(i)?(a(),p(ae,{key:0,class:"h-6 m-1 animate-spin text-primary-400"})):h("",!0)]),!e(y).customers.length&&!e(i)?(a(),v("p",fe,x(r.$t("customers.no_matching_customers")),1)):h("",!0)])])}}},ye={class:"pt-6 mt-5 border-t border-solid lg:pt-8 md:pt-4 border-gray-200"},ge={key:0,class:"text-sm font-bold leading-5 text-black non-italic"},xe={key:0},be={key:1},Be={key:1,class:"text-sm font-bold leading-5 text-black non-italic"},ve={setup(V){const y=L(),s=T(()=>y.selectedViewCustomer),m=T(()=>y.isFetchingViewData),c=T(()=>{var i,l;return((i=s==null?void 0:s.value)==null?void 0:i.fields)?(l=s==null?void 0:s.value)==null?void 0:l.fields:[]});return(i,l)=>{const $=d("BaseHeading"),B=d("BaseDescriptionListItem"),I=d("BaseDescriptionList"),g=d("BaseCustomerAddressDisplay");return a(),v("div",ye,[t($,null,{default:n(()=>[D(x(i.$t("customers.basic_info")),1)]),_:1}),t(I,null,{default:n(()=>{var f,w,r;return[t(B,{"content-loading":e(m),label:i.$t("customers.display_name"),value:(f=e(s))==null?void 0:f.name},null,8,["content-loading","label","value"]),t(B,{"content-loading":e(m),label:i.$t("customers.primary_contact_name"),value:(w=e(s))==null?void 0:w.contact_name},null,8,["content-loading","label","value"]),t(B,{"content-loading":e(m),label:i.$t("customers.email"),value:(r=e(s))==null?void 0:r.email},null,8,["content-loading","label","value"])]}),_:1}),t(I,{class:"mt-5"},{default:n(()=>{var f,w,r,_,u,C,k;return[t(B,{"content-loading":e(m),label:i.$t("wizard.currency"),value:((f=e(s))==null?void 0:f.currency)?`${(r=(w=e(s))==null?void 0:w.currency)==null?void 0:r.code} (${(u=(_=e(s))==null?void 0:_.currency)==null?void 0:u.symbol})`:""},null,8,["content-loading","label","value"]),t(B,{"content-loading":e(m),label:i.$t("customers.phone_number"),value:(C=e(s))==null?void 0:C.phone},null,8,["content-loading","label","value"]),t(B,{"content-loading":e(m),label:i.$t("customers.website"),value:(k=e(s))==null?void 0:k.website},null,8,["content-loading","label","value"])]}),_:1}),e(s).billing||e(s).shipping?(a(),p($,{key:0,class:"mt-8"},{default:n(()=>[D(x(i.$t("customers.address")),1)]),_:1})):h("",!0),t(I,{class:"mt-5"},{default:n(()=>[e(s).billing?(a(),p(B,{key:0,"content-loading":e(m),label:i.$t("customers.billing_address")},{default:n(()=>[t(g,{address:e(s).billing},null,8,["address"])]),_:1},8,["content-loading","label"])):h("",!0),e(s).shipping?(a(),p(B,{key:1,"content-loading":e(m),label:i.$t("customers.shipping_address")},{default:n(()=>[t(g,{address:e(s).shipping},null,8,["address"])]),_:1},8,["content-loading","label"])):h("",!0)]),_:1}),e(c).length>0?(a(),p($,{key:1,class:"mt-8"},{default:n(()=>[D(x(i.$t("settings.custom_fields.title")),1)]),_:1})):h("",!0),t(I,{class:"mt-5"},{default:n(()=>[(a(!0),v(U,null,z(e(c),(f,w)=>(a(),p(B,{key:w,"content-loading":e(m),label:f.custom_field.label},{default:n(()=>[f.type==="Switch"?(a(),v("p",ge,[f.default_answer===1?(a(),v("span",xe," Yes ")):(a(),v("span",be," No "))])):(a(),v("p",Be,x(f.default_answer),1))]),_:2},1032,["content-loading","label"]))),128))]),_:1})])}}},$e={},we={class:"col-span-12 xl:col-span-9 xxl:col-span-10"},Ce={class:"flex justify-between mt-1 mb-6"},ke={class:"grid col-span-12 mt-6 text-center xl:mt-0 sm:grid-cols-4 xl:text-right xl:col-span-3 xl:grid-cols-1 xxl:col-span-2"},Te={class:"flex flex-col items-center justify-center px-6 py-2 lg:justify-end lg:items-end"},Ee={class:"flex flex-col items-center justify-center px-6 py-2 lg:justify-end lg:items-end"},Ie={class:"flex flex-col items-center justify-center px-6 py-2 lg:justify-end lg:items-end"},De={class:"flex flex-col items-center justify-center px-6 py-2 lg:justify-end lg:items-end"};function Ae(V,y){const s=d("BaseContentPlaceholdersText"),m=d("BaseContentPlaceholdersBox"),c=d("BaseContentPlaceholders");return a(),p(c,{class:"grid grid-cols-12"},{default:n(()=>[o("div",we,[o("div",Ce,[t(s,{class:"h-10 w-36",lines:1}),t(s,{class:"h-10 w-40 !mt-0",lines:1})]),t(m,{class:"h-80 xl:h-72 sm:w-full"})]),o("div",ke,[o("div",Te,[t(s,{class:"h-3 w-14 xl:h-4",lines:1}),t(s,{class:"w-20 h-5 xl:h-6",lines:1})]),o("div",Ee,[t(s,{class:"h-3 w-14 xl:h-4",lines:1}),t(s,{class:"w-20 h-5 xl:h-6",lines:1})]),o("div",Ie,[t(s,{class:"h-3 w-14 xl:h-4",lines:1}),t(s,{class:"w-20 h-5 xl:h-6",lines:1})]),o("div",De,[t(s,{class:"h-3 w-14 xl:h-4",lines:1}),t(s,{class:"w-20 h-5 xl:h-6",lines:1})])])]),_:1})}var je=Z($e,[["render",Ae]]);const Se={key:1,class:"grid grid-cols-12"},Ve={class:"col-span-12 xl:col-span-9 xxl:col-span-10"},Fe={class:"flex justify-between mt-1 mb-6"},Pe={class:"flex items-center"},Re={class:"w-40 h-10"},Le={class:"grid col-span-12 mt-6 text-center xl:mt-0 sm:grid-cols-4 xl:text-right xl:col-span-3 xl:grid-cols-1 xxl:col-span-2"},Me={class:"px-6 py-2"},Ne={class:"text-xs leading-5 lg:text-sm"},Oe=o("br",null,null,-1),Ue={key:0,class:"block mt-1 text-xl font-semibold leading-8"},ze={class:"px-6 py-2"},Ye={class:"text-xs leading-5 lg:text-sm"},He=o("br",null,null,-1),Ge={key:0,class:"block mt-1 text-xl font-semibold leading-8",style:{color:"#00c99c"}},Xe={class:"px-6 py-2"},qe={class:"text-xs leading-5 lg:text-sm"},Je=o("br",null,null,-1),Ke={key:0,class:"block mt-1 text-xl font-semibold leading-8",style:{color:"#fb7178"}},Qe={class:"px-6 py-2"},We={class:"text-xs leading-5 lg:text-sm"},Ze=o("br",null,null,-1),et={key:0,class:"block mt-1 text-xl font-semibold leading-8",style:{color:"#5851d8"}},tt={setup(V){ee();const y=L();H("utils");const s=M();let m=S(!1),c=R({}),i=R({}),l=R(["This year","Previous year"]),$=S("This year");const B=T(()=>c.expenseTotals?c.expenseTotals:[]),I=T(()=>c.netProfits?c.netProfits:[]),g=T(()=>c&&c.months?c.months:[]),f=T(()=>c.receiptTotals?c.receiptTotals:[]),w=T(()=>c.invoiceTotals?c.invoiceTotals:[]);K(s,()=>{s.params.id&&r(),$.value="This year"},{immediate:!0});async function r(){m.value=!1;let u=await y.fetchViewCustomer({id:s.params.id});u.data&&(Object.assign(c,u.data.meta.chartData),Object.assign(i,u.data.data)),m.value=!0}async function _(u){let C={id:s.params.id};u==="Previous year"?C.previous_year=!0:C.this_year=!0;let k=await y.fetchViewCustomer(C);return k.data.meta.chartData&&Object.assign(c,k.data.meta.chartData),!0}return(u,C)=>{const k=d("BaseIcon"),j=d("BaseMultiselect"),A=d("BaseFormatMoney"),F=d("BaseCard");return a(),p(F,{class:"flex flex-col mt-6"},{default:n(()=>[e(y).isFetchingViewData?(a(),p(je,{key:0})):(a(),v("div",Se,[o("div",Ve,[o("div",Fe,[o("h6",Pe,[t(k,{name:"ChartSquareBarIcon",class:"h-5 text-primary-400"}),D(" "+x(u.$t("dashboard.monthly_chart.title")),1)]),o("div",Re,[t(j,{modelValue:e($),"onUpdate:modelValue":C[0]||(C[0]=P=>Q($)?$.value=P:$=P),options:e(l),"allow-empty":!1,"show-labels":!1,placeholder:u.$t("dashboard.select_year"),"can-deselect":!1,onSelect:_},null,8,["modelValue","options","placeholder"])])]),e(m)?(a(),p(ne,{key:0,invoices:e(w),expenses:e(B),receipts:e(f),income:e(I),labels:e(g),class:"sm:w-full"},null,8,["invoices","expenses","receipts","income","labels"])):h("",!0)]),o("div",Le,[o("div",Me,[o("span",Ne,x(u.$t("dashboard.chart_info.total_sales")),1),Oe,e(m)?(a(),v("span",Ue,[t(A,{amount:e(c).salesTotal,currency:e(i).currency},null,8,["amount","currency"])])):h("",!0)]),o("div",ze,[o("span",Ye,x(u.$t("dashboard.chart_info.total_receipts")),1),He,e(m)?(a(),v("span",Ge,[t(A,{amount:e(c).totalExpenses,currency:e(i).currency},null,8,["amount","currency"])])):h("",!0)]),o("div",Xe,[o("span",qe,x(u.$t("dashboard.chart_info.total_expense")),1),Je,e(m)?(a(),v("span",Ke,[t(A,{amount:e(c).totalExpenses,currency:e(i).currency},null,8,["amount","currency"])])):h("",!0)]),o("div",Qe,[o("span",We,x(u.$t("dashboard.chart_info.net_income")),1),Ze,e(m)?(a(),v("span",et,[t(A,{amount:e(c).netProfit,currency:e(i).currency},null,8,["amount","currency"])])):h("",!0)])])])),t(ve)]),_:1})}}},rt={setup(V){H("utils"),te();const y=L(),s=se();O();const m=W(),c=M();S(null);const i=T(()=>y.selectedViewCustomer.customer?y.selectedViewCustomer.customer.name:"");let l=T(()=>y.isFetchingViewData);function $(){return s.hasAbilities([E.CREATE_ESTIMATE,E.CREATE_INVOICE,E.CREATE_PAYMENT,E.CREATE_EXPENSE])}function B(){return s.hasAbilities([E.DELETE_CUSTOMER,E.EDIT_CUSTOMER])}function I(){m.push("/admin/customers")}return(g,f)=>{const w=d("BaseButton"),r=d("router-link"),_=d("BaseIcon"),u=d("BaseDropdownItem"),C=d("BaseDropdown"),k=d("BasePageHeader"),j=d("BasePage");return a(),p(j,{class:"xl:pl-96"},{default:n(()=>[t(k,{title:e(i)},{actions:n(()=>[e(s).hasAbilities(e(E).EDIT_CUSTOMER)?(a(),p(r,{key:0,to:`/admin/customers/${e(c).params.id}/edit`},{default:n(()=>[t(w,{class:"mr-3",variant:"primary-outline","content-loading":e(l)},{default:n(()=>[D(x(g.$t("general.edit")),1)]),_:1},8,["content-loading"])]),_:1},8,["to"])):h("",!0),$()?(a(),p(C,{key:1,position:"bottom-end","content-loading":e(l)},{activator:n(()=>[t(w,{class:"mr-3",variant:"primary","content-loading":e(l)},{default:n(()=>[D(x(g.$t("customers.new_transaction")),1)]),_:1},8,["content-loading"])]),default:n(()=>[e(s).hasAbilities(e(E).CREATE_ESTIMATE)?(a(),p(r,{key:0,to:`/admin/estimates/create?customer=${g.$route.params.id}`},{default:n(()=>[t(u,{class:""},{default:n(()=>[t(_,{name:"DocumentIcon",class:"mr-3 text-gray-600"}),D(" "+x(g.$t("estimates.new_estimate")),1)]),_:1})]),_:1},8,["to"])):h("",!0),e(s).hasAbilities(e(E).CREATE_INVOICE)?(a(),p(r,{key:1,to:`/admin/invoices/create?customer=${g.$route.params.id}`},{default:n(()=>[t(u,null,{default:n(()=>[t(_,{name:"DocumentTextIcon",class:"mr-3 text-gray-600"}),D(" "+x(g.$t("invoices.new_invoice")),1)]),_:1})]),_:1},8,["to"])):h("",!0),e(s).hasAbilities(e(E).CREATE_PAYMENT)?(a(),p(r,{key:2,to:`/admin/payments/create?customer=${g.$route.params.id}`},{default:n(()=>[t(u,null,{default:n(()=>[t(_,{name:"CreditCardIcon",class:"mr-3 text-gray-600"}),D(" "+x(g.$t("payments.new_payment")),1)]),_:1})]),_:1},8,["to"])):h("",!0),e(s).hasAbilities(e(E).CREATE_EXPENSE)?(a(),p(r,{key:3,to:`/admin/expenses/create?customer=${g.$route.params.id}`},{default:n(()=>[t(u,null,{default:n(()=>[t(_,{name:"CalculatorIcon",class:"mr-3 text-gray-600"}),D(" "+x(g.$t("expenses.new_expense")),1)]),_:1})]),_:1},8,["to"])):h("",!0)]),_:1},8,["content-loading"])):h("",!0),B()?(a(),p(oe,{key:2,class:Y({"ml-3":e(l)}),row:e(y).selectedViewCustomer,"load-data":I},null,8,["class","row"])):h("",!0)]),_:1},8,["title"]),t(he),t(tt)]),_:1})}}};export{rt as default}; +import{G as M,J as O,B as S,a0 as R,A as J,k as T,r as d,o as a,e as v,h as o,f as t,w as n,u as e,t as x,l as p,F as U,y as z,j as h,m as Y,i as D,ah as H,C as K,x as Q,aN as W}from"./vendor.01d0adc5.js";import{l as L,_ as Z,b as ee,j as te,e as se,g as E}from"./main.24f7a84b.js";import{L as ae}from"./LoadingIcon.e09a5e28.js";import{_ as ne}from"./LineChart.f87804e4.js";import{_ as oe}from"./CustomerIndexDropdown.34ba7779.js";const le={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 ml-56 bg-white xl:ml-64 w-88 xl:block"},re={class:"flex items-center justify-between px-4 pt-8 pb-2 border border-gray-200 border-solid height-full"},ce={class:"flex mb-6 ml-3",role:"group","aria-label":"First group"},ie={class:"px-4 py-3 pb-2 mb-2 text-sm border-b border-gray-200 border-solid"},de={class:"px-2"},ue={class:"px-2"},me={class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid sidebar base-scroll"},_e={class:"flex-1 font-bold text-right whitespace-nowrap"},pe={class:"flex justify-center p-4 items-center"},fe={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},he={setup(V){const y=L(),s=M(),{t:m}=O();let c=S(!1),i=S(!1),l=R({orderBy:"",orderByField:"",searchText:""});f=J.exports.debounce(f,500);const $=T(()=>l.orderBy==="asc"||l.orderBy==null);T(()=>$.value?m("general.ascending"):m("general.descending"));function B(r){return s.params.id==r}async function I(){i.value=!0,await y.fetchCustomers({limit:"all"}),i.value=!1,setTimeout(()=>{g()},500)}function g(){const r=document.getElementById(`customer-${s.params.id}`);r&&(r.scrollIntoView({behavior:"smooth"}),r.classList.add("shake"))}async function f(){let r={};l.searchText!==""&&l.searchText!==null&&l.searchText!==void 0&&(r.display_name=l.searchText),l.orderBy!==null&&l.orderBy!==void 0&&(r.orderBy=l.orderBy),l.orderByField!==null&&l.orderByField!==void 0&&(r.orderByField=l.orderByField),c.value=!0;try{let _=await y.fetchCustomers(r);c.value=!1,_.data&&(y.customers=_.data.data)}catch{c.value=!1}}function w(){return l.orderBy==="asc"?(l.orderBy="desc",f(),!0):(l.orderBy="asc",f(),!0)}return I(),(r,_)=>{const u=d("BaseIcon"),C=d("BaseInput"),k=d("BaseButton"),j=d("BaseRadio"),A=d("BaseInputGroup"),F=d("BaseDropdownItem"),P=d("BaseDropdown"),N=d("BaseText"),G=d("BaseFormatMoney"),X=d("router-link");return a(),v("div",le,[o("div",re,[t(C,{modelValue:e(l).searchText,"onUpdate:modelValue":_[0]||(_[0]=b=>e(l).searchText=b),placeholder:r.$t("general.search"),"container-class":"mb-6",type:"text",variant:"gray",onInput:_[1]||(_[1]=b=>f())},{default:n(()=>[t(u,{name:"SearchIcon",class:"text-gray-500"})]),_:1},8,["modelValue","placeholder"]),o("div",ce,[t(P,{"close-on-select":!1,position:"bottom-start","width-class":"w-40","position-class":"left-0"},{activator:n(()=>[t(k,{variant:"gray"},{default:n(()=>[t(u,{name:"FilterIcon"})]),_:1})]),default:n(()=>[o("div",ie,x(r.$t("general.sort_by")),1),o("div",de,[t(F,{class:"flex px-1 py-2 mt-1 cursor-pointer hover:rounded-md"},{default:n(()=>[t(A,{class:"pt-2 -mt-4"},{default:n(()=>[t(j,{id:"filter_create_date",modelValue:e(l).orderByField,"onUpdate:modelValue":[_[2]||(_[2]=b=>e(l).orderByField=b),f],label:r.$t("customers.create_date"),size:"sm",name:"filter",value:"invoices.created_at"},null,8,["modelValue","label"])]),_:1})]),_:1})]),o("div",ue,[t(F,{class:"flex px-1 cursor-pointer hover:rounded-md"},{default:n(()=>[t(A,{class:"pt-2 -mt-4"},{default:n(()=>[t(j,{id:"filter_display_name",modelValue:e(l).orderByField,"onUpdate:modelValue":[_[3]||(_[3]=b=>e(l).orderByField=b),f],label:r.$t("customers.display_name"),size:"sm",name:"filter",value:"name"},null,8,["modelValue","label"])]),_:1})]),_:1})])]),_:1}),t(k,{class:"ml-1",size:"md",variant:"gray",onClick:w},{default:n(()=>[e($)?(a(),p(u,{key:0,name:"SortAscendingIcon"})):(a(),p(u,{key:1,name:"SortDescendingIcon"}))]),_:1})])]),o("div",me,[(a(!0),v(U,null,z(e(y).customers,(b,q)=>(a(),v("div",{key:q},[b&&!e(i)?(a(),p(X,{key:0,id:"customer-"+b.id,to:`/admin/customers/${b.id}/view`,class:Y(["flex justify-between p-4 items-center cursor-pointer hover:bg-gray-100 border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":B(b.id)}]),style:{"border-top":"1px solid rgba(185, 193, 209, 0.41)"}},{default:n(()=>[o("div",null,[t(N,{text:b.name,length:30,class:"pr-2 text-sm not-italic font-normal leading-5 text-black capitalize truncate"},null,8,["text"]),b.contact_name?(a(),p(N,{key:0,text:b.contact_name,length:30,class:"mt-1 text-xs not-italic font-medium leading-5 text-gray-600"},null,8,["text"])):h("",!0)]),o("div",_e,[t(G,{amount:b.due_amount,currency:b.currency},null,8,["amount","currency"])])]),_:2},1032,["id","to","class"])):h("",!0)]))),128)),o("div",pe,[e(i)?(a(),p(ae,{key:0,class:"h-6 m-1 animate-spin text-primary-400"})):h("",!0)]),!e(y).customers.length&&!e(i)?(a(),v("p",fe,x(r.$t("customers.no_matching_customers")),1)):h("",!0)])])}}},ye={class:"pt-6 mt-5 border-t border-solid lg:pt-8 md:pt-4 border-gray-200"},ge={key:0,class:"text-sm font-bold leading-5 text-black non-italic"},xe={key:0},be={key:1},Be={key:1,class:"text-sm font-bold leading-5 text-black non-italic"},ve={setup(V){const y=L(),s=T(()=>y.selectedViewCustomer),m=T(()=>y.isFetchingViewData),c=T(()=>{var i,l;return((i=s==null?void 0:s.value)==null?void 0:i.fields)?(l=s==null?void 0:s.value)==null?void 0:l.fields:[]});return(i,l)=>{const $=d("BaseHeading"),B=d("BaseDescriptionListItem"),I=d("BaseDescriptionList"),g=d("BaseCustomerAddressDisplay");return a(),v("div",ye,[t($,null,{default:n(()=>[D(x(i.$t("customers.basic_info")),1)]),_:1}),t(I,null,{default:n(()=>{var f,w,r;return[t(B,{"content-loading":e(m),label:i.$t("customers.display_name"),value:(f=e(s))==null?void 0:f.name},null,8,["content-loading","label","value"]),t(B,{"content-loading":e(m),label:i.$t("customers.primary_contact_name"),value:(w=e(s))==null?void 0:w.contact_name},null,8,["content-loading","label","value"]),t(B,{"content-loading":e(m),label:i.$t("customers.email"),value:(r=e(s))==null?void 0:r.email},null,8,["content-loading","label","value"])]}),_:1}),t(I,{class:"mt-5"},{default:n(()=>{var f,w,r,_,u,C,k;return[t(B,{"content-loading":e(m),label:i.$t("wizard.currency"),value:((f=e(s))==null?void 0:f.currency)?`${(r=(w=e(s))==null?void 0:w.currency)==null?void 0:r.code} (${(u=(_=e(s))==null?void 0:_.currency)==null?void 0:u.symbol})`:""},null,8,["content-loading","label","value"]),t(B,{"content-loading":e(m),label:i.$t("customers.phone_number"),value:(C=e(s))==null?void 0:C.phone},null,8,["content-loading","label","value"]),t(B,{"content-loading":e(m),label:i.$t("customers.website"),value:(k=e(s))==null?void 0:k.website},null,8,["content-loading","label","value"])]}),_:1}),e(s).billing||e(s).shipping?(a(),p($,{key:0,class:"mt-8"},{default:n(()=>[D(x(i.$t("customers.address")),1)]),_:1})):h("",!0),t(I,{class:"mt-5"},{default:n(()=>[e(s).billing?(a(),p(B,{key:0,"content-loading":e(m),label:i.$t("customers.billing_address")},{default:n(()=>[t(g,{address:e(s).billing},null,8,["address"])]),_:1},8,["content-loading","label"])):h("",!0),e(s).shipping?(a(),p(B,{key:1,"content-loading":e(m),label:i.$t("customers.shipping_address")},{default:n(()=>[t(g,{address:e(s).shipping},null,8,["address"])]),_:1},8,["content-loading","label"])):h("",!0)]),_:1}),e(c).length>0?(a(),p($,{key:1,class:"mt-8"},{default:n(()=>[D(x(i.$t("settings.custom_fields.title")),1)]),_:1})):h("",!0),t(I,{class:"mt-5"},{default:n(()=>[(a(!0),v(U,null,z(e(c),(f,w)=>(a(),p(B,{key:w,"content-loading":e(m),label:f.custom_field.label},{default:n(()=>[f.type==="Switch"?(a(),v("p",ge,[f.default_answer===1?(a(),v("span",xe," Yes ")):(a(),v("span",be," No "))])):(a(),v("p",Be,x(f.default_answer),1))]),_:2},1032,["content-loading","label"]))),128))]),_:1})])}}},$e={},we={class:"col-span-12 xl:col-span-9 xxl:col-span-10"},Ce={class:"flex justify-between mt-1 mb-6"},ke={class:"grid col-span-12 mt-6 text-center xl:mt-0 sm:grid-cols-4 xl:text-right xl:col-span-3 xl:grid-cols-1 xxl:col-span-2"},Te={class:"flex flex-col items-center justify-center px-6 py-2 lg:justify-end lg:items-end"},Ee={class:"flex flex-col items-center justify-center px-6 py-2 lg:justify-end lg:items-end"},Ie={class:"flex flex-col items-center justify-center px-6 py-2 lg:justify-end lg:items-end"},De={class:"flex flex-col items-center justify-center px-6 py-2 lg:justify-end lg:items-end"};function Ae(V,y){const s=d("BaseContentPlaceholdersText"),m=d("BaseContentPlaceholdersBox"),c=d("BaseContentPlaceholders");return a(),p(c,{class:"grid grid-cols-12"},{default:n(()=>[o("div",we,[o("div",Ce,[t(s,{class:"h-10 w-36",lines:1}),t(s,{class:"h-10 w-40 !mt-0",lines:1})]),t(m,{class:"h-80 xl:h-72 sm:w-full"})]),o("div",ke,[o("div",Te,[t(s,{class:"h-3 w-14 xl:h-4",lines:1}),t(s,{class:"w-20 h-5 xl:h-6",lines:1})]),o("div",Ee,[t(s,{class:"h-3 w-14 xl:h-4",lines:1}),t(s,{class:"w-20 h-5 xl:h-6",lines:1})]),o("div",Ie,[t(s,{class:"h-3 w-14 xl:h-4",lines:1}),t(s,{class:"w-20 h-5 xl:h-6",lines:1})]),o("div",De,[t(s,{class:"h-3 w-14 xl:h-4",lines:1}),t(s,{class:"w-20 h-5 xl:h-6",lines:1})])])]),_:1})}var je=Z($e,[["render",Ae]]);const Se={key:1,class:"grid grid-cols-12"},Ve={class:"col-span-12 xl:col-span-9 xxl:col-span-10"},Fe={class:"flex justify-between mt-1 mb-6"},Pe={class:"flex items-center"},Re={class:"w-40 h-10"},Le={class:"grid col-span-12 mt-6 text-center xl:mt-0 sm:grid-cols-4 xl:text-right xl:col-span-3 xl:grid-cols-1 xxl:col-span-2"},Me={class:"px-6 py-2"},Ne={class:"text-xs leading-5 lg:text-sm"},Oe=o("br",null,null,-1),Ue={key:0,class:"block mt-1 text-xl font-semibold leading-8"},ze={class:"px-6 py-2"},Ye={class:"text-xs leading-5 lg:text-sm"},He=o("br",null,null,-1),Ge={key:0,class:"block mt-1 text-xl font-semibold leading-8",style:{color:"#00c99c"}},Xe={class:"px-6 py-2"},qe={class:"text-xs leading-5 lg:text-sm"},Je=o("br",null,null,-1),Ke={key:0,class:"block mt-1 text-xl font-semibold leading-8",style:{color:"#fb7178"}},Qe={class:"px-6 py-2"},We={class:"text-xs leading-5 lg:text-sm"},Ze=o("br",null,null,-1),et={key:0,class:"block mt-1 text-xl font-semibold leading-8",style:{color:"#5851d8"}},tt={setup(V){ee();const y=L();H("utils");const s=M();let m=S(!1),c=R({}),i=R({}),l=R(["This year","Previous year"]),$=S("This year");const B=T(()=>c.expenseTotals?c.expenseTotals:[]),I=T(()=>c.netProfits?c.netProfits:[]),g=T(()=>c&&c.months?c.months:[]),f=T(()=>c.receiptTotals?c.receiptTotals:[]),w=T(()=>c.invoiceTotals?c.invoiceTotals:[]);K(s,()=>{s.params.id&&r(),$.value="This year"},{immediate:!0});async function r(){m.value=!1;let u=await y.fetchViewCustomer({id:s.params.id});u.data&&(Object.assign(c,u.data.meta.chartData),Object.assign(i,u.data.data)),m.value=!0}async function _(u){let C={id:s.params.id};u==="Previous year"?C.previous_year=!0:C.this_year=!0;let k=await y.fetchViewCustomer(C);return k.data.meta.chartData&&Object.assign(c,k.data.meta.chartData),!0}return(u,C)=>{const k=d("BaseIcon"),j=d("BaseMultiselect"),A=d("BaseFormatMoney"),F=d("BaseCard");return a(),p(F,{class:"flex flex-col mt-6"},{default:n(()=>[e(y).isFetchingViewData?(a(),p(je,{key:0})):(a(),v("div",Se,[o("div",Ve,[o("div",Fe,[o("h6",Pe,[t(k,{name:"ChartSquareBarIcon",class:"h-5 text-primary-400"}),D(" "+x(u.$t("dashboard.monthly_chart.title")),1)]),o("div",Re,[t(j,{modelValue:e($),"onUpdate:modelValue":C[0]||(C[0]=P=>Q($)?$.value=P:$=P),options:e(l),"allow-empty":!1,"show-labels":!1,placeholder:u.$t("dashboard.select_year"),"can-deselect":!1,onSelect:_},null,8,["modelValue","options","placeholder"])])]),e(m)?(a(),p(ne,{key:0,invoices:e(w),expenses:e(B),receipts:e(f),income:e(I),labels:e(g),class:"sm:w-full"},null,8,["invoices","expenses","receipts","income","labels"])):h("",!0)]),o("div",Le,[o("div",Me,[o("span",Ne,x(u.$t("dashboard.chart_info.total_sales")),1),Oe,e(m)?(a(),v("span",Ue,[t(A,{amount:e(c).salesTotal,currency:e(i).currency},null,8,["amount","currency"])])):h("",!0)]),o("div",ze,[o("span",Ye,x(u.$t("dashboard.chart_info.total_receipts")),1),He,e(m)?(a(),v("span",Ge,[t(A,{amount:e(c).totalExpenses,currency:e(i).currency},null,8,["amount","currency"])])):h("",!0)]),o("div",Xe,[o("span",qe,x(u.$t("dashboard.chart_info.total_expense")),1),Je,e(m)?(a(),v("span",Ke,[t(A,{amount:e(c).totalExpenses,currency:e(i).currency},null,8,["amount","currency"])])):h("",!0)]),o("div",Qe,[o("span",We,x(u.$t("dashboard.chart_info.net_income")),1),Ze,e(m)?(a(),v("span",et,[t(A,{amount:e(c).netProfit,currency:e(i).currency},null,8,["amount","currency"])])):h("",!0)])])])),t(ve)]),_:1})}}},rt={setup(V){H("utils"),te();const y=L(),s=se();O();const m=W(),c=M();S(null);const i=T(()=>y.selectedViewCustomer.customer?y.selectedViewCustomer.customer.name:"");let l=T(()=>y.isFetchingViewData);function $(){return s.hasAbilities([E.CREATE_ESTIMATE,E.CREATE_INVOICE,E.CREATE_PAYMENT,E.CREATE_EXPENSE])}function B(){return s.hasAbilities([E.DELETE_CUSTOMER,E.EDIT_CUSTOMER])}function I(){m.push("/admin/customers")}return(g,f)=>{const w=d("BaseButton"),r=d("router-link"),_=d("BaseIcon"),u=d("BaseDropdownItem"),C=d("BaseDropdown"),k=d("BasePageHeader"),j=d("BasePage");return a(),p(j,{class:"xl:pl-96"},{default:n(()=>[t(k,{title:e(i)},{actions:n(()=>[e(s).hasAbilities(e(E).EDIT_CUSTOMER)?(a(),p(r,{key:0,to:`/admin/customers/${e(c).params.id}/edit`},{default:n(()=>[t(w,{class:"mr-3",variant:"primary-outline","content-loading":e(l)},{default:n(()=>[D(x(g.$t("general.edit")),1)]),_:1},8,["content-loading"])]),_:1},8,["to"])):h("",!0),$()?(a(),p(C,{key:1,position:"bottom-end","content-loading":e(l)},{activator:n(()=>[t(w,{class:"mr-3",variant:"primary","content-loading":e(l)},{default:n(()=>[D(x(g.$t("customers.new_transaction")),1)]),_:1},8,["content-loading"])]),default:n(()=>[e(s).hasAbilities(e(E).CREATE_ESTIMATE)?(a(),p(r,{key:0,to:`/admin/estimates/create?customer=${g.$route.params.id}`},{default:n(()=>[t(u,{class:""},{default:n(()=>[t(_,{name:"DocumentIcon",class:"mr-3 text-gray-600"}),D(" "+x(g.$t("estimates.new_estimate")),1)]),_:1})]),_:1},8,["to"])):h("",!0),e(s).hasAbilities(e(E).CREATE_INVOICE)?(a(),p(r,{key:1,to:`/admin/invoices/create?customer=${g.$route.params.id}`},{default:n(()=>[t(u,null,{default:n(()=>[t(_,{name:"DocumentTextIcon",class:"mr-3 text-gray-600"}),D(" "+x(g.$t("invoices.new_invoice")),1)]),_:1})]),_:1},8,["to"])):h("",!0),e(s).hasAbilities(e(E).CREATE_PAYMENT)?(a(),p(r,{key:2,to:`/admin/payments/create?customer=${g.$route.params.id}`},{default:n(()=>[t(u,null,{default:n(()=>[t(_,{name:"CreditCardIcon",class:"mr-3 text-gray-600"}),D(" "+x(g.$t("payments.new_payment")),1)]),_:1})]),_:1},8,["to"])):h("",!0),e(s).hasAbilities(e(E).CREATE_EXPENSE)?(a(),p(r,{key:3,to:`/admin/expenses/create?customer=${g.$route.params.id}`},{default:n(()=>[t(u,null,{default:n(()=>[t(_,{name:"CalculatorIcon",class:"mr-3 text-gray-600"}),D(" "+x(g.$t("expenses.new_expense")),1)]),_:1})]),_:1},8,["to"])):h("",!0)]),_:1},8,["content-loading"])):h("",!0),B()?(a(),p(oe,{key:2,class:Y({"ml-3":e(l)}),row:e(y).selectedViewCustomer,"load-data":I},null,8,["class","row"])):h("",!0)]),_:1},8,["title"]),t(he),t(tt)]),_:1})}}};export{rt as default}; diff --git a/public/build/assets/View.aa6cd8ac.js b/public/build/assets/View.57eb7885.js similarity index 98% rename from public/build/assets/View.aa6cd8ac.js rename to public/build/assets/View.57eb7885.js index 4bf5c7a0f..ea1363d0a 100644 --- a/public/build/assets/View.aa6cd8ac.js +++ b/public/build/assets/View.57eb7885.js @@ -1 +1 @@ -import{J as M,B as y,G as P,aN as U,a0 as W,k as j,A as X,r,o as u,e as R,h as f,f as n,w as o,u as t,t as b,l as p,F as G,y as K,i as C,m as Q,j as I,ah as Y,V as Z,C as ee}from"./vendor.01d0adc5.js";import{c as te,t as A,u as ne,e as z,j as H,g as E}from"./main.75722495.js";import{L as ae}from"./LoadingIcon.44a6304d.js";import{_ as oe}from"./InvoiceIndexDropdown.430bc329.js";import{_ as re}from"./RecurringInvoiceIndexDropdown.37d4a992.js";const se={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 ml-56 bg-white xl:ml-64 w-88 xl:block"},ie={class:"flex items-center justify-between px-4 pt-8 pb-2 border border-gray-200 border-solid height-full"},le={class:"mb-6"},ce={class:"flex mb-6 ml-3",role:"group","aria-label":"First group"},ue={class:"px-2 py-1 pb-2 mb-1 mb-2 text-sm border-b border-gray-200 border-solid"},de={key:0,class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid base-scroll"},me={class:"flex-2"},_e={class:"mt-1 mb-2 text-xs not-italic font-medium leading-5 text-gray-600"},ge={class:"flex-1 whitespace-nowrap right"},ve={class:"text-sm not-italic font-normal leading-5 text-right text-gray-600 est-date"},pe={class:"flex justify-center p-4 items-center"},fe={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},ye={setup(O){te();const a=A();ne(),z(),H(),M(),y(null),y(null),y(null);const m=P();U(),y(["DRAFT","SENT","VIEWED","EXPIRED","ACCEPTED","REJECTED"]);const l=y(!1),_=y(!1),e=W({orderBy:null,orderByField:null,searchText:null}),B=j(()=>e.orderBy==="asc"||e.orderBy==null);function h(s){return m.params.id==s}async function g(){_.value=!0,await a.fetchRecurringInvoices(),_.value=!1,setTimeout(()=>{k()},500)}function k(){const s=document.getElementById(`recurring-invoice-${m.params.id}`);s&&(s.scrollIntoView({behavior:"smooth"}),s.classList.add("shake"))}async function v(){let s="";e.searchText!==""&&e.searchText!==null&&e.searchText!==void 0&&(s+=`search=${e.searchText}&`),e.orderBy!==null&&e.orderBy!==void 0&&(s+=`orderBy=${e.orderBy}&`),e.orderByField!==null&&e.orderByField!==void 0&&(s+=`orderByField=${e.orderByField}`),l.value=!0;let d=await a.searchRecurringInvoice(s);l.value=!1,d.data&&(a.recurringInvoices=d.data.data)}function x(){return e.orderBy==="asc"?(e.orderBy="desc",v(),!0):(e.orderBy="asc",v(),!0)}return g(),v=X.exports.debounce(v,500),(s,d)=>{const i=r("BaseIcon"),w=r("BaseInput"),D=r("BaseButton"),$=r("BaseRadio"),S=r("BaseInputGroup"),V=r("BaseDropdownItem"),T=r("BaseDropdown"),F=r("BaseText"),N=r("BaseRecurringInvoiceStatusBadge"),L=r("BaseFormatMoney"),q=r("router-link");return u(),R("div",se,[f("div",ie,[f("div",le,[n(w,{modelValue:t(e).searchText,"onUpdate:modelValue":d[0]||(d[0]=c=>t(e).searchText=c),placeholder:s.$t("general.search"),type:"text",variant:"gray",onInput:d[1]||(d[1]=c=>v())},{right:o(()=>[n(i,{name:"SearchIcon",class:"h-5 text-gray-400"})]),_:1},8,["modelValue","placeholder"])]),f("div",ce,[n(T,{class:"ml-3",position:"bottom-start"},{activator:o(()=>[n(D,{size:"md",variant:"gray"},{default:o(()=>[n(i,{name:"FilterIcon",class:"h-5"})]),_:1})]),default:o(()=>[f("div",ue,b(s.$t("general.sort_by")),1),n(V,{class:"flex px-1 py-2 cursor-pointer"},{default:o(()=>[n(S,{class:"-mt-3 font-normal"},{default:o(()=>[n($,{id:"filter_next_invoice_date",modelValue:t(e).orderByField,"onUpdate:modelValue":[d[2]||(d[2]=c=>t(e).orderByField=c),v],label:s.$t("recurring_invoices.next_invoice_date"),size:"sm",name:"filter",value:"next_invoice_at"},null,8,["modelValue","label"])]),_:1})]),_:1}),n(V,{class:"flex px-1 py-2 cursor-pointer"},{default:o(()=>[n(S,{class:"-mt-3 font-normal"},{default:o(()=>[n($,{id:"filter_start_date",modelValue:t(e).orderByField,"onUpdate:modelValue":[d[3]||(d[3]=c=>t(e).orderByField=c),v],label:s.$t("recurring_invoices.starts_at"),value:"starts_at",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1})]),_:1}),n(D,{class:"ml-1",size:"md",variant:"gray",onClick:x},{default:o(()=>[t(B)?(u(),p(i,{key:0,name:"SortAscendingIcon",class:"h-5"})):(u(),p(i,{key:1,name:"SortDescendingIcon",class:"h-5"}))]),_:1})])]),t(a)&&t(a).recurringInvoices?(u(),R("div",de,[(u(!0),R(G,null,K(t(a).recurringInvoices,(c,J)=>(u(),R("div",{key:J},[c&&!_.value?(u(),p(q,{key:0,id:"recurring-invoice-"+c.id,to:`/admin/recurring-invoices/${c.id}/view`,class:Q(["flex justify-between side-invoice p-4 cursor-pointer hover:bg-gray-100 items-center border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":h(c.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:o(()=>[f("div",me,[n(F,{text:c.customer.name,length:30,class:"pr-2 mb-2 text-sm not-italic font-normal leading-5 text-black capitalize truncate"},null,8,["text"]),f("div",_e,b(c.invoice_number),1),n(N,{status:c.status,class:"px-1 text-xs"},{default:o(()=>[C(b(c.status),1)]),_:2},1032,["status"])]),f("div",ge,[n(L,{class:"block mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900",amount:c.total,currency:c.customer.currency},null,8,["amount","currency"]),f("div",ve,b(c.formatted_starts_at),1)])]),_:2},1032,["id","to","class"])):I("",!0)]))),128)),f("div",pe,[_.value?(u(),p(ae,{key:0,class:"h-6 m-1 animate-spin text-primary-400"})):I("",!0)]),!t(a).recurringInvoices.length&&!_.value?(u(),R("p",fe,b(s.$t("invoices.no_matching_invoices")),1)):I("",!0)])):I("",!0)])}}},be={class:"relative table-container"},Ie={setup(O){const a=A(),m=y(null);y(null),Y("$utils");const{t:l}=M();y(null),U();const _=z(),e=j(()=>[{key:"invoice_date",label:l("invoices.date"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"invoice_number",label:l("invoices.invoice")},{key:"customer.name",label:l("invoices.customer")},{key:"status",label:l("invoices.status")},{key:"total",label:l("invoices.total")},{key:"actions",label:l("invoices.action"),tdClass:"text-right text-sm font-medium",thClass:"text-right",sortable:!1}]);function B(){return _.hasAbilities([E.DELETE_INVOICE,E.EDIT_INVOICE,E.VIEW_INVOICE,E.SEND_INVOICE])}return(h,g)=>{const k=r("SendInvoiceModal"),v=r("router-link"),x=r("BaseFormatMoney"),s=r("BaseInvoiceStatusBadge"),d=r("BaseTable");return u(),R(G,null,[n(k),f("div",be,[n(d,{ref:(i,w)=>{w.table=i,m.value=i},data:t(a).newRecurringInvoice.invoices,columns:t(e),loading:t(a).isFetchingViewData,"placeholder-count":5,class:"mt-5"},Z({"cell-invoice_number":o(({row:i})=>[n(v,{to:{path:`/admin/invoices/${i.data.id}/view`},class:"font-medium text-primary-500"},{default:o(()=>[C(b(i.data.invoice_number),1)]),_:2},1032,["to"])]),"cell-total":o(({row:i})=>[n(x,{amount:i.data.due_amount,currency:i.data.currency},null,8,["amount","currency"])]),"cell-status":o(({row:i})=>[n(s,{status:i.data.status,class:"px-3 py-1"},{default:o(()=>[C(b(i.data.status),1)]),_:2},1032,["status"])]),_:2},[B()?{name:"cell-actions",fn:o(({row:i})=>[n(oe,{row:i.data,table:m.value},null,8,["row","table"])])}:void 0]),1032,["data","columns","loading"])])],64)}}},Be={setup(O){const a=A(),m=P();let l=j(()=>a.isFetchingViewData);ee(m,()=>{m.params.id&&m.name==="recurring-invoices.view"&&_()},{immediate:!0});async function _(){await a.fetchRecurringInvoice(m.params.id)}return(e,B)=>{const h=r("BaseHeading"),g=r("BaseDescriptionListItem"),k=r("BaseDescriptionList"),v=r("BaseCard");return u(),p(v,{class:"mt-10"},{default:o(()=>[n(h,null,{default:o(()=>[C(b(e.$t("customers.basic_info")),1)]),_:1}),n(k,{class:"mt-5"},{default:o(()=>{var x,s,d,i,w,D,$,S,V,T,F,N,L;return[n(g,{label:e.$t("recurring_invoices.starts_at"),"content-loading":t(l),value:(x=t(a).newRecurringInvoice)==null?void 0:x.formatted_starts_at},null,8,["label","content-loading","value"]),n(g,{label:e.$t("recurring_invoices.next_invoice_date"),"content-loading":t(l),value:(s=t(a).newRecurringInvoice)==null?void 0:s.formatted_next_invoice_at},null,8,["label","content-loading","value"]),((d=t(a).newRecurringInvoice)==null?void 0:d.limit_date)&&((i=t(a).newRecurringInvoice)==null?void 0:i.limit_by)!=="NONE"?(u(),p(g,{key:0,label:e.$t("recurring_invoices.limit_date"),"content-loading":t(l),value:(w=t(a).newRecurringInvoice)==null?void 0:w.limit_date},null,8,["label","content-loading","value"])):I("",!0),((D=t(a).newRecurringInvoice)==null?void 0:D.limit_date)&&(($=t(a).newRecurringInvoice)==null?void 0:$.limit_by)!=="NONE"?(u(),p(g,{key:1,label:e.$t("recurring_invoices.limit_by"),"content-loading":t(l),value:(S=t(a).newRecurringInvoice)==null?void 0:S.limit_by},null,8,["label","content-loading","value"])):I("",!0),((V=t(a).newRecurringInvoice)==null?void 0:V.limit_count)?(u(),p(g,{key:2,label:e.$t("recurring_invoices.limit_count"),value:(T=t(a).newRecurringInvoice)==null?void 0:T.limit_count,"content-loading":t(l)},null,8,["label","value","content-loading"])):I("",!0),((F=t(a).newRecurringInvoice)==null?void 0:F.selectedFrequency)?(u(),p(g,{key:3,label:e.$t("recurring_invoices.frequency.title"),value:(L=(N=t(a).newRecurringInvoice)==null?void 0:N.selectedFrequency)==null?void 0:L.label,"content-loading":t(l)},null,8,["label","value","content-loading"])):I("",!0)]}),_:1}),n(h,{class:"mt-8"},{default:o(()=>[C(b(e.$t("invoices.title",2)),1)]),_:1}),n(Ie)]),_:1})}}},ke={setup(O){H();const a=A(),m=z();M(),U();const l=j(()=>{var e,B;return a.newRecurringInvoice?(B=(e=a.newRecurringInvoice)==null?void 0:e.customer)==null?void 0:B.name:""});function _(){return m.hasAbilities([E.DELETE_RECURRING_INVOICE,E.EDIT_RECURRING_INVOICE])}return(e,B)=>{const h=r("BasePageHeader"),g=r("BasePage");return u(),p(g,{class:"xl:pl-96"},{default:o(()=>[n(h,{title:t(l)},{actions:o(()=>[_()?(u(),p(re,{key:0,row:t(a).newRecurringInvoice},null,8,["row"])):I("",!0)]),_:1},8,["title"]),n(ye),n(Be)]),_:1})}}};export{ke as default}; +import{J as M,B as y,G as P,aN as U,a0 as W,k as j,A as X,r,o as u,e as R,h as f,f as n,w as o,u as t,t as b,l as p,F as G,y as K,i as C,m as Q,j as I,ah as Y,V as Z,C as ee}from"./vendor.01d0adc5.js";import{c as te,t as A,u as ne,e as z,j as H,g as E}from"./main.24f7a84b.js";import{L as ae}from"./LoadingIcon.e09a5e28.js";import{_ as oe}from"./InvoiceIndexDropdown.a18e118f.js";import{_ as re}from"./RecurringInvoiceIndexDropdown.44561f32.js";const se={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 ml-56 bg-white xl:ml-64 w-88 xl:block"},ie={class:"flex items-center justify-between px-4 pt-8 pb-2 border border-gray-200 border-solid height-full"},le={class:"mb-6"},ce={class:"flex mb-6 ml-3",role:"group","aria-label":"First group"},ue={class:"px-2 py-1 pb-2 mb-1 mb-2 text-sm border-b border-gray-200 border-solid"},de={key:0,class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid base-scroll"},me={class:"flex-2"},_e={class:"mt-1 mb-2 text-xs not-italic font-medium leading-5 text-gray-600"},ge={class:"flex-1 whitespace-nowrap right"},ve={class:"text-sm not-italic font-normal leading-5 text-right text-gray-600 est-date"},pe={class:"flex justify-center p-4 items-center"},fe={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},ye={setup(O){te();const a=A();ne(),z(),H(),M(),y(null),y(null),y(null);const m=P();U(),y(["DRAFT","SENT","VIEWED","EXPIRED","ACCEPTED","REJECTED"]);const l=y(!1),_=y(!1),e=W({orderBy:null,orderByField:null,searchText:null}),B=j(()=>e.orderBy==="asc"||e.orderBy==null);function h(s){return m.params.id==s}async function g(){_.value=!0,await a.fetchRecurringInvoices(),_.value=!1,setTimeout(()=>{k()},500)}function k(){const s=document.getElementById(`recurring-invoice-${m.params.id}`);s&&(s.scrollIntoView({behavior:"smooth"}),s.classList.add("shake"))}async function v(){let s="";e.searchText!==""&&e.searchText!==null&&e.searchText!==void 0&&(s+=`search=${e.searchText}&`),e.orderBy!==null&&e.orderBy!==void 0&&(s+=`orderBy=${e.orderBy}&`),e.orderByField!==null&&e.orderByField!==void 0&&(s+=`orderByField=${e.orderByField}`),l.value=!0;let d=await a.searchRecurringInvoice(s);l.value=!1,d.data&&(a.recurringInvoices=d.data.data)}function x(){return e.orderBy==="asc"?(e.orderBy="desc",v(),!0):(e.orderBy="asc",v(),!0)}return g(),v=X.exports.debounce(v,500),(s,d)=>{const i=r("BaseIcon"),w=r("BaseInput"),D=r("BaseButton"),$=r("BaseRadio"),S=r("BaseInputGroup"),V=r("BaseDropdownItem"),T=r("BaseDropdown"),F=r("BaseText"),N=r("BaseRecurringInvoiceStatusBadge"),L=r("BaseFormatMoney"),q=r("router-link");return u(),R("div",se,[f("div",ie,[f("div",le,[n(w,{modelValue:t(e).searchText,"onUpdate:modelValue":d[0]||(d[0]=c=>t(e).searchText=c),placeholder:s.$t("general.search"),type:"text",variant:"gray",onInput:d[1]||(d[1]=c=>v())},{right:o(()=>[n(i,{name:"SearchIcon",class:"h-5 text-gray-400"})]),_:1},8,["modelValue","placeholder"])]),f("div",ce,[n(T,{class:"ml-3",position:"bottom-start"},{activator:o(()=>[n(D,{size:"md",variant:"gray"},{default:o(()=>[n(i,{name:"FilterIcon",class:"h-5"})]),_:1})]),default:o(()=>[f("div",ue,b(s.$t("general.sort_by")),1),n(V,{class:"flex px-1 py-2 cursor-pointer"},{default:o(()=>[n(S,{class:"-mt-3 font-normal"},{default:o(()=>[n($,{id:"filter_next_invoice_date",modelValue:t(e).orderByField,"onUpdate:modelValue":[d[2]||(d[2]=c=>t(e).orderByField=c),v],label:s.$t("recurring_invoices.next_invoice_date"),size:"sm",name:"filter",value:"next_invoice_at"},null,8,["modelValue","label"])]),_:1})]),_:1}),n(V,{class:"flex px-1 py-2 cursor-pointer"},{default:o(()=>[n(S,{class:"-mt-3 font-normal"},{default:o(()=>[n($,{id:"filter_start_date",modelValue:t(e).orderByField,"onUpdate:modelValue":[d[3]||(d[3]=c=>t(e).orderByField=c),v],label:s.$t("recurring_invoices.starts_at"),value:"starts_at",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1})]),_:1}),n(D,{class:"ml-1",size:"md",variant:"gray",onClick:x},{default:o(()=>[t(B)?(u(),p(i,{key:0,name:"SortAscendingIcon",class:"h-5"})):(u(),p(i,{key:1,name:"SortDescendingIcon",class:"h-5"}))]),_:1})])]),t(a)&&t(a).recurringInvoices?(u(),R("div",de,[(u(!0),R(G,null,K(t(a).recurringInvoices,(c,J)=>(u(),R("div",{key:J},[c&&!_.value?(u(),p(q,{key:0,id:"recurring-invoice-"+c.id,to:`/admin/recurring-invoices/${c.id}/view`,class:Q(["flex justify-between side-invoice p-4 cursor-pointer hover:bg-gray-100 items-center border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":h(c.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:o(()=>[f("div",me,[n(F,{text:c.customer.name,length:30,class:"pr-2 mb-2 text-sm not-italic font-normal leading-5 text-black capitalize truncate"},null,8,["text"]),f("div",_e,b(c.invoice_number),1),n(N,{status:c.status,class:"px-1 text-xs"},{default:o(()=>[C(b(c.status),1)]),_:2},1032,["status"])]),f("div",ge,[n(L,{class:"block mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900",amount:c.total,currency:c.customer.currency},null,8,["amount","currency"]),f("div",ve,b(c.formatted_starts_at),1)])]),_:2},1032,["id","to","class"])):I("",!0)]))),128)),f("div",pe,[_.value?(u(),p(ae,{key:0,class:"h-6 m-1 animate-spin text-primary-400"})):I("",!0)]),!t(a).recurringInvoices.length&&!_.value?(u(),R("p",fe,b(s.$t("invoices.no_matching_invoices")),1)):I("",!0)])):I("",!0)])}}},be={class:"relative table-container"},Ie={setup(O){const a=A(),m=y(null);y(null),Y("$utils");const{t:l}=M();y(null),U();const _=z(),e=j(()=>[{key:"invoice_date",label:l("invoices.date"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"invoice_number",label:l("invoices.invoice")},{key:"customer.name",label:l("invoices.customer")},{key:"status",label:l("invoices.status")},{key:"total",label:l("invoices.total")},{key:"actions",label:l("invoices.action"),tdClass:"text-right text-sm font-medium",thClass:"text-right",sortable:!1}]);function B(){return _.hasAbilities([E.DELETE_INVOICE,E.EDIT_INVOICE,E.VIEW_INVOICE,E.SEND_INVOICE])}return(h,g)=>{const k=r("SendInvoiceModal"),v=r("router-link"),x=r("BaseFormatMoney"),s=r("BaseInvoiceStatusBadge"),d=r("BaseTable");return u(),R(G,null,[n(k),f("div",be,[n(d,{ref:(i,w)=>{w.table=i,m.value=i},data:t(a).newRecurringInvoice.invoices,columns:t(e),loading:t(a).isFetchingViewData,"placeholder-count":5,class:"mt-5"},Z({"cell-invoice_number":o(({row:i})=>[n(v,{to:{path:`/admin/invoices/${i.data.id}/view`},class:"font-medium text-primary-500"},{default:o(()=>[C(b(i.data.invoice_number),1)]),_:2},1032,["to"])]),"cell-total":o(({row:i})=>[n(x,{amount:i.data.due_amount,currency:i.data.currency},null,8,["amount","currency"])]),"cell-status":o(({row:i})=>[n(s,{status:i.data.status,class:"px-3 py-1"},{default:o(()=>[C(b(i.data.status),1)]),_:2},1032,["status"])]),_:2},[B()?{name:"cell-actions",fn:o(({row:i})=>[n(oe,{row:i.data,table:m.value},null,8,["row","table"])])}:void 0]),1032,["data","columns","loading"])])],64)}}},Be={setup(O){const a=A(),m=P();let l=j(()=>a.isFetchingViewData);ee(m,()=>{m.params.id&&m.name==="recurring-invoices.view"&&_()},{immediate:!0});async function _(){await a.fetchRecurringInvoice(m.params.id)}return(e,B)=>{const h=r("BaseHeading"),g=r("BaseDescriptionListItem"),k=r("BaseDescriptionList"),v=r("BaseCard");return u(),p(v,{class:"mt-10"},{default:o(()=>[n(h,null,{default:o(()=>[C(b(e.$t("customers.basic_info")),1)]),_:1}),n(k,{class:"mt-5"},{default:o(()=>{var x,s,d,i,w,D,$,S,V,T,F,N,L;return[n(g,{label:e.$t("recurring_invoices.starts_at"),"content-loading":t(l),value:(x=t(a).newRecurringInvoice)==null?void 0:x.formatted_starts_at},null,8,["label","content-loading","value"]),n(g,{label:e.$t("recurring_invoices.next_invoice_date"),"content-loading":t(l),value:(s=t(a).newRecurringInvoice)==null?void 0:s.formatted_next_invoice_at},null,8,["label","content-loading","value"]),((d=t(a).newRecurringInvoice)==null?void 0:d.limit_date)&&((i=t(a).newRecurringInvoice)==null?void 0:i.limit_by)!=="NONE"?(u(),p(g,{key:0,label:e.$t("recurring_invoices.limit_date"),"content-loading":t(l),value:(w=t(a).newRecurringInvoice)==null?void 0:w.limit_date},null,8,["label","content-loading","value"])):I("",!0),((D=t(a).newRecurringInvoice)==null?void 0:D.limit_date)&&(($=t(a).newRecurringInvoice)==null?void 0:$.limit_by)!=="NONE"?(u(),p(g,{key:1,label:e.$t("recurring_invoices.limit_by"),"content-loading":t(l),value:(S=t(a).newRecurringInvoice)==null?void 0:S.limit_by},null,8,["label","content-loading","value"])):I("",!0),((V=t(a).newRecurringInvoice)==null?void 0:V.limit_count)?(u(),p(g,{key:2,label:e.$t("recurring_invoices.limit_count"),value:(T=t(a).newRecurringInvoice)==null?void 0:T.limit_count,"content-loading":t(l)},null,8,["label","value","content-loading"])):I("",!0),((F=t(a).newRecurringInvoice)==null?void 0:F.selectedFrequency)?(u(),p(g,{key:3,label:e.$t("recurring_invoices.frequency.title"),value:(L=(N=t(a).newRecurringInvoice)==null?void 0:N.selectedFrequency)==null?void 0:L.label,"content-loading":t(l)},null,8,["label","value","content-loading"])):I("",!0)]}),_:1}),n(h,{class:"mt-8"},{default:o(()=>[C(b(e.$t("invoices.title",2)),1)]),_:1}),n(Ie)]),_:1})}}},ke={setup(O){H();const a=A(),m=z();M(),U();const l=j(()=>{var e,B;return a.newRecurringInvoice?(B=(e=a.newRecurringInvoice)==null?void 0:e.customer)==null?void 0:B.name:""});function _(){return m.hasAbilities([E.DELETE_RECURRING_INVOICE,E.EDIT_RECURRING_INVOICE])}return(e,B)=>{const h=r("BasePageHeader"),g=r("BasePage");return u(),p(g,{class:"xl:pl-96"},{default:o(()=>[n(h,{title:t(l)},{actions:o(()=>[_()?(u(),p(re,{key:0,row:t(a).newRecurringInvoice},null,8,["row"])):I("",!0)]),_:1},8,["title"]),n(ye),n(Be)]),_:1})}}};export{ke as default}; diff --git a/public/build/assets/View.6c9abcf9.js b/public/build/assets/View.59fb53ba.js similarity index 96% rename from public/build/assets/View.6c9abcf9.js rename to public/build/assets/View.59fb53ba.js index 0f1664d81..530644edf 100644 --- a/public/build/assets/View.6c9abcf9.js +++ b/public/build/assets/View.59fb53ba.js @@ -1 +1 @@ -import{G as M,J as O,a0 as P,B as w,ah as J,k as b,C as K,A as Q,r as d,o as c,l as h,w as n,f as a,u as s,m as j,i as W,t as y,h as r,e as V,y as X,F as Y,j as C}from"./vendor.01d0adc5.js";import{u as Z,w as F,x as ee}from"./main.75722495.js";import{u as te}from"./payment.037dd620.js";import{u as ae}from"./global.08b6a984.js";import"./auth.4644c288.js";const oe={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 bg-white w-88 xl:block"},se={class:"flex items-center justify-between px-4 pt-8 pb-6 border border-gray-200 border-solid"},ne={class:"flex ml-3",role:"group","aria-label":"First group"},re={class:"px-4 py-1 pb-2 mb-2 text-sm border-b border-gray-200 border-solid"},le={class:"px-2"},de={class:"px-2"},ie={class:"px-2"},me={class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid sw-scroll"},ce={class:"flex-2"},ue={class:"mb-1 text-md not-italic font-medium leading-5 text-gray-500 capitalize"},pe={class:"flex-1 whitespace-nowrap right"},ye={class:"text-sm text-right text-gray-500 non-italic"},fe={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},_e={class:"flex flex-col min-h-0 mt-8 overflow-hidden",style:{height:"75vh"}},be=["src"],Fe={setup(he){const u=M(),m=te(),f=ae(),{tm:k,t:ge}=O();let _=P({}),e=P({orderBy:"",orderByField:"",payment_number:""}),g=w(!1),z=w(!1);w(!1),J("utils"),Z();const D=b(()=>m.selectedViewPayment),S=b(()=>e.orderBy==="asc"||e.orderBy==null);b(()=>S.value?k("general.ascending"):k("general.descending"));const I=b(()=>_.unique_hash?`/payments/pdf/${_.unique_hash}`:!1);K(u,()=>{$()}),U(),$(),i=Q.exports.debounce(i,500);function N(t){return u.params.id==t}async function U(){await m.fetchPayments({limit:"all"},f.companySlug),setTimeout(()=>{G()},500)}async function $(){if(u&&u.params.id){let t=await m.fetchViewPayment({id:u.params.id},f.companySlug);t.data&&Object.assign(_,t.data.data)}}function G(){const t=document.getElementById(`payment-${u.params.id}`);t&&(t.scrollIntoView({behavior:"smooth"}),t.classList.add("shake"))}async function i(){let t={};e.payment_number!==""&&e.payment_number!==null&&e.payment_number!==void 0&&(t.payment_number=e.payment_number),e.orderBy!==null&&e.orderBy!==void 0&&(t.orderBy=e.orderBy),e.orderByField!==null&&e.orderByField!==void 0&&(t.orderByField=e.orderByField),g.value=!0;try{let l=await m.searchPayment(t,f.companySlug);g.value=!1,l.data.data&&(m.payments=l.data.data)}catch{g.value=!1}}function T(){return e.orderBy==="asc"?(e.orderBy="desc",i(),!0):(e.orderBy="asc",i(),!0)}return(t,l)=>{const p=d("BaseIcon"),B=d("BaseButton"),q=d("BasePageHeader"),A=d("BaseInput"),v=d("BaseRadio"),x=d("BaseInputGroup"),E=d("BaseFormatMoney"),L=d("router-link"),R=d("BasePage");return c(),h(R,{class:"xl:pl-96"},{default:n(()=>[a(q,{title:s(D).payment_number},{actions:n(()=>[a(B,{disabled:s(z),variant:"primary-outline",tag:"a",download:"",href:`/payments/pdf/${s(_).unique_hash}`},{left:n(o=>[a(p,{name:"DownloadIcon",class:j(o.class)},null,8,["class"]),W(" "+y(t.$t("general.download")),1)]),_:1},8,["disabled","href"])]),_:1},8,["title"]),r("div",oe,[r("div",se,[a(A,{modelValue:s(e).payment_number,"onUpdate:modelValue":l[0]||(l[0]=o=>s(e).payment_number=o),placeholder:t.$t("general.search"),type:"text",variant:"gray",onInput:i},{right:n(()=>[a(p,{name:"SearchIcon",class:"h-5 text-gray-400"})]),_:1},8,["modelValue","placeholder"]),r("div",ne,[a(ee,{position:"bottom-start","width-class":"w-50","position-class":"left-0"},{activator:n(()=>[a(B,{variant:"gray"},{default:n(()=>[a(p,{name:"FilterIcon",class:"h-5"})]),_:1})]),default:n(()=>[r("div",re,y(t.$t("general.sort_by")),1),r("div",le,[a(F,{class:"rounded-md pt-3 hover:rounded-md"},{default:n(()=>[a(x,{class:"-mt-3 font-normal"},{default:n(()=>[a(v,{id:"filter_invoice_number",modelValue:s(e).orderByField,"onUpdate:modelValue":[l[1]||(l[1]=o=>s(e).orderByField=o),i],label:t.$t("invoices.title"),size:"sm",name:"filter",value:"invoice_number"},null,8,["modelValue","label"])]),_:1})]),_:1})]),r("div",de,[a(F,{class:"rounded-md pt-3 hover:rounded-md"},{default:n(()=>[a(x,{class:"-mt-3 font-normal"},{default:n(()=>[a(v,{id:"filter_payment_date",modelValue:s(e).orderByField,"onUpdate:modelValue":[l[2]||(l[2]=o=>s(e).orderByField=o),i],label:t.$t("payments.date"),size:"sm",name:"filter",value:"payment_date"},null,8,["modelValue","label"])]),_:1})]),_:1})]),r("div",ie,[a(F,{class:"rounded-md pt-3 hover:rounded-md"},{default:n(()=>[a(x,{class:"-mt-3 font-normal"},{default:n(()=>[a(v,{id:"filter_payment_number",modelValue:s(e).orderByField,"onUpdate:modelValue":[l[3]||(l[3]=o=>s(e).orderByField=o),i],label:t.$t("payments.payment_number"),size:"sm",name:"filter",value:"payment_number"},null,8,["modelValue","label"])]),_:1})]),_:1})])]),_:1}),a(B,{class:"ml-1",variant:"white",onClick:T},{default:n(()=>[s(S)?(c(),h(p,{key:0,name:"SortAscendingIcon",class:"h-5"})):(c(),h(p,{key:1,name:"SortDescendingIcon",class:"h-5"}))]),_:1})])]),r("div",me,[(c(!0),V(Y,null,X(s(m).payments,(o,H)=>(c(),h(L,{id:"payment-"+o.id,key:H,to:`/${s(f).companySlug}/customer/payments/${o.id}/view`,class:j(["flex justify-between p-4 items-center cursor-pointer hover:bg-gray-100 border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":N(o.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:n(()=>[r("div",ce,[r("div",ue,y(o.payment_number),1)]),r("div",pe,[a(E,{class:"mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900 block",amount:o.amount,currency:o.currency},null,8,["amount","currency"]),r("div",ye,y(o.formatted_payment_date),1)])]),_:2},1032,["id","to","class"]))),128)),s(m).payments.length?C("",!0):(c(),V("p",fe,y(t.$t("payments.no_matching_payments")),1))])]),r("div",_e,[s(I)?(c(),V("iframe",{key:0,src:s(I),class:"flex-1 border border-gray-400 border-solid rounded-md"},null,8,be)):C("",!0)])]),_:1})}}};export{Fe as default}; +import{G as M,J as O,a0 as P,B as w,ah as J,k as b,C as K,A as Q,r as d,o as c,l as h,w as n,f as a,u as s,m as j,i as W,t as y,h as r,e as V,y as X,F as Y,j as C}from"./vendor.01d0adc5.js";import{u as Z,w as F,x as ee}from"./main.24f7a84b.js";import{u as te}from"./payment.b9d460da.js";import{u as ae}from"./global.ab8f317c.js";import"./auth.0e030165.js";const oe={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 bg-white w-88 xl:block"},se={class:"flex items-center justify-between px-4 pt-8 pb-6 border border-gray-200 border-solid"},ne={class:"flex ml-3",role:"group","aria-label":"First group"},re={class:"px-4 py-1 pb-2 mb-2 text-sm border-b border-gray-200 border-solid"},le={class:"px-2"},de={class:"px-2"},ie={class:"px-2"},me={class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid sw-scroll"},ce={class:"flex-2"},ue={class:"mb-1 text-md not-italic font-medium leading-5 text-gray-500 capitalize"},pe={class:"flex-1 whitespace-nowrap right"},ye={class:"text-sm text-right text-gray-500 non-italic"},fe={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},_e={class:"flex flex-col min-h-0 mt-8 overflow-hidden",style:{height:"75vh"}},be=["src"],Fe={setup(he){const u=M(),m=te(),f=ae(),{tm:k,t:ge}=O();let _=P({}),e=P({orderBy:"",orderByField:"",payment_number:""}),g=w(!1),z=w(!1);w(!1),J("utils"),Z();const D=b(()=>m.selectedViewPayment),S=b(()=>e.orderBy==="asc"||e.orderBy==null);b(()=>S.value?k("general.ascending"):k("general.descending"));const I=b(()=>_.unique_hash?`/payments/pdf/${_.unique_hash}`:!1);K(u,()=>{$()}),U(),$(),i=Q.exports.debounce(i,500);function N(t){return u.params.id==t}async function U(){await m.fetchPayments({limit:"all"},f.companySlug),setTimeout(()=>{G()},500)}async function $(){if(u&&u.params.id){let t=await m.fetchViewPayment({id:u.params.id},f.companySlug);t.data&&Object.assign(_,t.data.data)}}function G(){const t=document.getElementById(`payment-${u.params.id}`);t&&(t.scrollIntoView({behavior:"smooth"}),t.classList.add("shake"))}async function i(){let t={};e.payment_number!==""&&e.payment_number!==null&&e.payment_number!==void 0&&(t.payment_number=e.payment_number),e.orderBy!==null&&e.orderBy!==void 0&&(t.orderBy=e.orderBy),e.orderByField!==null&&e.orderByField!==void 0&&(t.orderByField=e.orderByField),g.value=!0;try{let l=await m.searchPayment(t,f.companySlug);g.value=!1,l.data.data&&(m.payments=l.data.data)}catch{g.value=!1}}function T(){return e.orderBy==="asc"?(e.orderBy="desc",i(),!0):(e.orderBy="asc",i(),!0)}return(t,l)=>{const p=d("BaseIcon"),B=d("BaseButton"),q=d("BasePageHeader"),A=d("BaseInput"),v=d("BaseRadio"),x=d("BaseInputGroup"),E=d("BaseFormatMoney"),L=d("router-link"),R=d("BasePage");return c(),h(R,{class:"xl:pl-96"},{default:n(()=>[a(q,{title:s(D).payment_number},{actions:n(()=>[a(B,{disabled:s(z),variant:"primary-outline",tag:"a",download:"",href:`/payments/pdf/${s(_).unique_hash}`},{left:n(o=>[a(p,{name:"DownloadIcon",class:j(o.class)},null,8,["class"]),W(" "+y(t.$t("general.download")),1)]),_:1},8,["disabled","href"])]),_:1},8,["title"]),r("div",oe,[r("div",se,[a(A,{modelValue:s(e).payment_number,"onUpdate:modelValue":l[0]||(l[0]=o=>s(e).payment_number=o),placeholder:t.$t("general.search"),type:"text",variant:"gray",onInput:i},{right:n(()=>[a(p,{name:"SearchIcon",class:"h-5 text-gray-400"})]),_:1},8,["modelValue","placeholder"]),r("div",ne,[a(ee,{position:"bottom-start","width-class":"w-50","position-class":"left-0"},{activator:n(()=>[a(B,{variant:"gray"},{default:n(()=>[a(p,{name:"FilterIcon",class:"h-5"})]),_:1})]),default:n(()=>[r("div",re,y(t.$t("general.sort_by")),1),r("div",le,[a(F,{class:"rounded-md pt-3 hover:rounded-md"},{default:n(()=>[a(x,{class:"-mt-3 font-normal"},{default:n(()=>[a(v,{id:"filter_invoice_number",modelValue:s(e).orderByField,"onUpdate:modelValue":[l[1]||(l[1]=o=>s(e).orderByField=o),i],label:t.$t("invoices.title"),size:"sm",name:"filter",value:"invoice_number"},null,8,["modelValue","label"])]),_:1})]),_:1})]),r("div",de,[a(F,{class:"rounded-md pt-3 hover:rounded-md"},{default:n(()=>[a(x,{class:"-mt-3 font-normal"},{default:n(()=>[a(v,{id:"filter_payment_date",modelValue:s(e).orderByField,"onUpdate:modelValue":[l[2]||(l[2]=o=>s(e).orderByField=o),i],label:t.$t("payments.date"),size:"sm",name:"filter",value:"payment_date"},null,8,["modelValue","label"])]),_:1})]),_:1})]),r("div",ie,[a(F,{class:"rounded-md pt-3 hover:rounded-md"},{default:n(()=>[a(x,{class:"-mt-3 font-normal"},{default:n(()=>[a(v,{id:"filter_payment_number",modelValue:s(e).orderByField,"onUpdate:modelValue":[l[3]||(l[3]=o=>s(e).orderByField=o),i],label:t.$t("payments.payment_number"),size:"sm",name:"filter",value:"payment_number"},null,8,["modelValue","label"])]),_:1})]),_:1})])]),_:1}),a(B,{class:"ml-1",variant:"white",onClick:T},{default:n(()=>[s(S)?(c(),h(p,{key:0,name:"SortAscendingIcon",class:"h-5"})):(c(),h(p,{key:1,name:"SortDescendingIcon",class:"h-5"}))]),_:1})])]),r("div",me,[(c(!0),V(Y,null,X(s(m).payments,(o,H)=>(c(),h(L,{id:"payment-"+o.id,key:H,to:`/${s(f).companySlug}/customer/payments/${o.id}/view`,class:j(["flex justify-between p-4 items-center cursor-pointer hover:bg-gray-100 border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":N(o.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:n(()=>[r("div",ce,[r("div",ue,y(o.payment_number),1)]),r("div",pe,[a(E,{class:"mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900 block",amount:o.amount,currency:o.currency},null,8,["amount","currency"]),r("div",ye,y(o.formatted_payment_date),1)])]),_:2},1032,["id","to","class"]))),128)),s(m).payments.length?C("",!0):(c(),V("p",fe,y(t.$t("payments.no_matching_payments")),1))])]),r("div",_e,[s(I)?(c(),V("iframe",{key:0,src:s(I),class:"flex-1 border border-gray-400 border-solid rounded-md"},null,8,be)):C("",!0)])]),_:1})}}};export{Fe as default}; diff --git a/public/build/assets/View.02e08873.js b/public/build/assets/View.8b14b89e.js similarity index 97% rename from public/build/assets/View.02e08873.js rename to public/build/assets/View.8b14b89e.js index c78ddc57f..d98546aa2 100644 --- a/public/build/assets/View.02e08873.js +++ b/public/build/assets/View.8b14b89e.js @@ -1 +1 @@ -import{G as Q,J as W,a0 as P,B as y,ah as X,k as B,C as Y,A as Z,r as d,o as u,l as b,w as n,f as a,u as s,m as z,i as V,t as m,j as k,h as i,e as F,y as ee,F as te}from"./vendor.01d0adc5.js";import{u as oe,w as S,x as ae}from"./main.75722495.js";import{u as se}from"./invoice.b61ade7d.js";import{u as ne}from"./global.08b6a984.js";import"./auth.4644c288.js";const re={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 bg-white w-88 xl:block"},ie={class:"flex items-center justify-between px-4 pt-8 pb-6 border border-gray-200 border-solid"},le={class:"flex ml-3",role:"group","aria-label":"First group"},de={class:"px-4 py-1 pb-2 mb-2 text-sm border-b border-gray-200 border-solid"},ce={class:"px-2"},ue={class:"px-2"},me={class:"px-2"},pe={class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid sw-scroll"},fe={class:"flex-2"},_e={class:"mb-1 not-italic font-medium leading-5 text-gray-500 capitalize text-md"},ve={class:"flex-1 whitespace-nowrap right"},ye={class:"text-sm text-right text-gray-500 non-italic"},be={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},he={class:"flex flex-col min-h-0 mt-8 overflow-hidden",style:{height:"75vh"}},ge=["src"],Fe={setup(Be){const p=Q(),l=se(),_=ne(),{tm:$}=W();let h=P({}),o=P({orderBy:"",orderByField:"",invoice_number:""});y(null),y(null);let w=y(!1),N=y(!1);y(!1),X("utils"),oe();const R=B(()=>l.selectedViewInvoice),j=B(()=>o.orderBy==="asc"||o.orderBy==null);B(()=>j.value?$("general.ascending"):$("general.descending"));const C=B(()=>h.unique_hash?`/invoices/pdf/${h.unique_hash}`:!1);Y(p,()=>{D()}),A(),D(),c=Z.exports.debounce(c,500);function U(e){return p.params.id==e}async function A(){await l.fetchInvoices({limit:"all"},_.companySlug),setTimeout(()=>{G()},500)}async function D(){if(p&&p.params.id){let e=await l.fetchViewInvoice({id:p.params.id},_.companySlug);e.data&&Object.assign(h,e.data.data)}}function G(){const e=document.getElementById(`invoice-${p.params.id}`);e&&(e.scrollIntoView({behavior:"smooth"}),e.classList.add("shake"))}async function c(){let e={};o.invoice_number!==""&&o.invoice_number!==null&&o.invoice_number!==void 0&&(e.invoice_number=o.invoice_number),o.orderBy!==null&&o.orderBy!==void 0&&(e.orderBy=o.orderBy),o.orderByField!==null&&o.orderByField!==void 0&&(e.orderByField=o.orderByField),w.value=!0;try{let r=await l.searchInvoice(e,_.companySlug);w.value=!1,r.data.data&&(l.invoices=r.data.data)}catch{w.value=!1}}function T(){return o.orderBy==="asc"?(o.orderBy="desc",c(),!0):(o.orderBy="asc",c(),!0)}function q(){router.push({name:"invoice.portal.payment",params:{id:l.selectedViewInvoice.id,company:l.selectedViewInvoice.company.slug}})}return(e,r)=>{const v=d("BaseIcon"),g=d("BaseButton"),E=d("BasePageHeader"),L=d("BaseInput"),I=d("BaseRadio"),x=d("BaseInputGroup"),M=d("BaseInvoiceStatusBadge"),H=d("BaseFormatMoney"),O=d("router-link"),J=d("BasePage");return u(),b(J,{class:"xl:pl-96"},{default:n(()=>[a(E,{title:s(R).invoice_number},{actions:n(()=>{var t,f;return[a(g,{disabled:s(N),variant:"primary-outline",class:"mr-2",tag:"a",href:`/invoices/pdf/${s(h).unique_hash}`,download:""},{left:n(K=>[a(v,{name:"DownloadIcon",class:z(K.class)},null,8,["class"]),V(" "+m(e.$t("invoices.download")),1)]),_:1},8,["disabled","href"]),((f=(t=s(l))==null?void 0:t.selectedViewInvoice)==null?void 0:f.paid_status)!=="PAID"&&s(_).enabledModules.includes("Payments")?(u(),b(g,{key:0,variant:"primary",onClick:q},{default:n(()=>[V(m(e.$t("invoices.pay_invoice")),1)]),_:1})):k("",!0)]}),_:1},8,["title"]),i("div",re,[i("div",ie,[a(L,{modelValue:s(o).invoice_number,"onUpdate:modelValue":r[0]||(r[0]=t=>s(o).invoice_number=t),placeholder:e.$t("general.search"),type:"text",variant:"gray",onInput:c},{right:n(()=>[a(v,{name:"SearchIcon",class:"h-5 text-gray-400"})]),_:1},8,["modelValue","placeholder"]),i("div",le,[a(ae,{position:"bottom-start","width-class":"w-50","position-class":"left-0"},{activator:n(()=>[a(g,{variant:"gray"},{default:n(()=>[a(v,{name:"FilterIcon",class:"h-5"})]),_:1})]),default:n(()=>[i("div",de,m(e.$t("general.sort_by")),1),i("div",ce,[a(S,{class:"pt-3 rounded-md hover:rounded-md"},{default:n(()=>[a(x,{class:"-mt-3 font-normal"},{default:n(()=>[a(I,{id:"filter_invoice_date",modelValue:s(o).orderByField,"onUpdate:modelValue":[r[1]||(r[1]=t=>s(o).orderByField=t),c],label:e.$t("invoices.invoice_date"),name:"filter",size:"sm",value:"invoice_date"},null,8,["modelValue","label"])]),_:1})]),_:1})]),i("div",ue,[a(S,{class:"pt-3 rounded-md hover:rounded-md"},{default:n(()=>[a(x,{class:"-mt-3 font-normal"},{default:n(()=>[a(I,{id:"filter_due_date",modelValue:s(o).orderByField,"onUpdate:modelValue":[r[2]||(r[2]=t=>s(o).orderByField=t),c],label:e.$t("invoices.due_date"),name:"filter",size:"sm",value:"due_date"},null,8,["modelValue","label"])]),_:1})]),_:1})]),i("div",me,[a(S,{class:"pt-3 rounded-md hover:rounded-md"},{default:n(()=>[a(x,{class:"-mt-3 font-normal"},{default:n(()=>[a(I,{id:"filter_invoice_number",modelValue:s(o).orderByField,"onUpdate:modelValue":[r[3]||(r[3]=t=>s(o).orderByField=t),c],label:e.$t("invoices.invoice_number"),size:"sm",name:"filter",value:"invoice_number"},null,8,["modelValue","label"])]),_:1})]),_:1})])]),_:1}),a(g,{class:"ml-1",variant:"white",onClick:T},{default:n(()=>[s(j)?(u(),b(v,{key:0,name:"SortAscendingIcon",class:"h-5"})):(u(),b(v,{key:1,name:"SortDescendingIcon",class:"h-5"}))]),_:1})])]),i("div",pe,[(u(!0),F(te,null,ee(s(l).invoices,(t,f)=>(u(),b(O,{id:"invoice-"+t.id,key:f,to:`/${s(_).companySlug}/customer/invoices/${t.id}/view`,class:z(["flex justify-between p-4 items-center cursor-pointer hover:bg-gray-100 border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":U(t.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:n(()=>[i("div",fe,[i("div",_e,m(t.invoice_number),1),a(M,{status:t.status},{default:n(()=>[V(m(t.status),1)]),_:2},1032,["status"])]),i("div",ve,[a(H,{class:"mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900 block",amount:t.total,currency:t.currency},null,8,["amount","currency"]),i("div",ye,m(t.formatted_invoice_date),1)])]),_:2},1032,["id","to","class"]))),128)),s(l).invoices.length?k("",!0):(u(),F("p",be,m(e.$t("invoices.no_matching_invoices")),1))])]),i("div",he,[s(C)?(u(),F("iframe",{key:0,ref:(t,f)=>{f.report=t},src:s(C),class:"flex-1 border border-gray-400 border-solid rounded-md",onClick:r[4]||(r[4]=(...t)=>e.ViewReportsPDF&&e.ViewReportsPDF(...t))},null,8,ge)):k("",!0)])]),_:1})}}};export{Fe as default}; +import{G as Q,J as W,a0 as P,B as y,ah as X,k as B,C as Y,A as Z,r as d,o as u,l as b,w as n,f as a,u as s,m as z,i as V,t as m,j as k,h as i,e as F,y as ee,F as te}from"./vendor.01d0adc5.js";import{u as oe,w as S,x as ae}from"./main.24f7a84b.js";import{u as se}from"./invoice.7c108372.js";import{u as ne}from"./global.ab8f317c.js";import"./auth.0e030165.js";const re={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 bg-white w-88 xl:block"},ie={class:"flex items-center justify-between px-4 pt-8 pb-6 border border-gray-200 border-solid"},le={class:"flex ml-3",role:"group","aria-label":"First group"},de={class:"px-4 py-1 pb-2 mb-2 text-sm border-b border-gray-200 border-solid"},ce={class:"px-2"},ue={class:"px-2"},me={class:"px-2"},pe={class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid sw-scroll"},fe={class:"flex-2"},_e={class:"mb-1 not-italic font-medium leading-5 text-gray-500 capitalize text-md"},ve={class:"flex-1 whitespace-nowrap right"},ye={class:"text-sm text-right text-gray-500 non-italic"},be={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},he={class:"flex flex-col min-h-0 mt-8 overflow-hidden",style:{height:"75vh"}},ge=["src"],Fe={setup(Be){const p=Q(),l=se(),_=ne(),{tm:$}=W();let h=P({}),o=P({orderBy:"",orderByField:"",invoice_number:""});y(null),y(null);let w=y(!1),N=y(!1);y(!1),X("utils"),oe();const R=B(()=>l.selectedViewInvoice),j=B(()=>o.orderBy==="asc"||o.orderBy==null);B(()=>j.value?$("general.ascending"):$("general.descending"));const C=B(()=>h.unique_hash?`/invoices/pdf/${h.unique_hash}`:!1);Y(p,()=>{D()}),A(),D(),c=Z.exports.debounce(c,500);function U(e){return p.params.id==e}async function A(){await l.fetchInvoices({limit:"all"},_.companySlug),setTimeout(()=>{G()},500)}async function D(){if(p&&p.params.id){let e=await l.fetchViewInvoice({id:p.params.id},_.companySlug);e.data&&Object.assign(h,e.data.data)}}function G(){const e=document.getElementById(`invoice-${p.params.id}`);e&&(e.scrollIntoView({behavior:"smooth"}),e.classList.add("shake"))}async function c(){let e={};o.invoice_number!==""&&o.invoice_number!==null&&o.invoice_number!==void 0&&(e.invoice_number=o.invoice_number),o.orderBy!==null&&o.orderBy!==void 0&&(e.orderBy=o.orderBy),o.orderByField!==null&&o.orderByField!==void 0&&(e.orderByField=o.orderByField),w.value=!0;try{let r=await l.searchInvoice(e,_.companySlug);w.value=!1,r.data.data&&(l.invoices=r.data.data)}catch{w.value=!1}}function T(){return o.orderBy==="asc"?(o.orderBy="desc",c(),!0):(o.orderBy="asc",c(),!0)}function q(){router.push({name:"invoice.portal.payment",params:{id:l.selectedViewInvoice.id,company:l.selectedViewInvoice.company.slug}})}return(e,r)=>{const v=d("BaseIcon"),g=d("BaseButton"),E=d("BasePageHeader"),L=d("BaseInput"),I=d("BaseRadio"),x=d("BaseInputGroup"),M=d("BaseInvoiceStatusBadge"),H=d("BaseFormatMoney"),O=d("router-link"),J=d("BasePage");return u(),b(J,{class:"xl:pl-96"},{default:n(()=>[a(E,{title:s(R).invoice_number},{actions:n(()=>{var t,f;return[a(g,{disabled:s(N),variant:"primary-outline",class:"mr-2",tag:"a",href:`/invoices/pdf/${s(h).unique_hash}`,download:""},{left:n(K=>[a(v,{name:"DownloadIcon",class:z(K.class)},null,8,["class"]),V(" "+m(e.$t("invoices.download")),1)]),_:1},8,["disabled","href"]),((f=(t=s(l))==null?void 0:t.selectedViewInvoice)==null?void 0:f.paid_status)!=="PAID"&&s(_).enabledModules.includes("Payments")?(u(),b(g,{key:0,variant:"primary",onClick:q},{default:n(()=>[V(m(e.$t("invoices.pay_invoice")),1)]),_:1})):k("",!0)]}),_:1},8,["title"]),i("div",re,[i("div",ie,[a(L,{modelValue:s(o).invoice_number,"onUpdate:modelValue":r[0]||(r[0]=t=>s(o).invoice_number=t),placeholder:e.$t("general.search"),type:"text",variant:"gray",onInput:c},{right:n(()=>[a(v,{name:"SearchIcon",class:"h-5 text-gray-400"})]),_:1},8,["modelValue","placeholder"]),i("div",le,[a(ae,{position:"bottom-start","width-class":"w-50","position-class":"left-0"},{activator:n(()=>[a(g,{variant:"gray"},{default:n(()=>[a(v,{name:"FilterIcon",class:"h-5"})]),_:1})]),default:n(()=>[i("div",de,m(e.$t("general.sort_by")),1),i("div",ce,[a(S,{class:"pt-3 rounded-md hover:rounded-md"},{default:n(()=>[a(x,{class:"-mt-3 font-normal"},{default:n(()=>[a(I,{id:"filter_invoice_date",modelValue:s(o).orderByField,"onUpdate:modelValue":[r[1]||(r[1]=t=>s(o).orderByField=t),c],label:e.$t("invoices.invoice_date"),name:"filter",size:"sm",value:"invoice_date"},null,8,["modelValue","label"])]),_:1})]),_:1})]),i("div",ue,[a(S,{class:"pt-3 rounded-md hover:rounded-md"},{default:n(()=>[a(x,{class:"-mt-3 font-normal"},{default:n(()=>[a(I,{id:"filter_due_date",modelValue:s(o).orderByField,"onUpdate:modelValue":[r[2]||(r[2]=t=>s(o).orderByField=t),c],label:e.$t("invoices.due_date"),name:"filter",size:"sm",value:"due_date"},null,8,["modelValue","label"])]),_:1})]),_:1})]),i("div",me,[a(S,{class:"pt-3 rounded-md hover:rounded-md"},{default:n(()=>[a(x,{class:"-mt-3 font-normal"},{default:n(()=>[a(I,{id:"filter_invoice_number",modelValue:s(o).orderByField,"onUpdate:modelValue":[r[3]||(r[3]=t=>s(o).orderByField=t),c],label:e.$t("invoices.invoice_number"),size:"sm",name:"filter",value:"invoice_number"},null,8,["modelValue","label"])]),_:1})]),_:1})])]),_:1}),a(g,{class:"ml-1",variant:"white",onClick:T},{default:n(()=>[s(j)?(u(),b(v,{key:0,name:"SortAscendingIcon",class:"h-5"})):(u(),b(v,{key:1,name:"SortDescendingIcon",class:"h-5"}))]),_:1})])]),i("div",pe,[(u(!0),F(te,null,ee(s(l).invoices,(t,f)=>(u(),b(O,{id:"invoice-"+t.id,key:f,to:`/${s(_).companySlug}/customer/invoices/${t.id}/view`,class:z(["flex justify-between p-4 items-center cursor-pointer hover:bg-gray-100 border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":U(t.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:n(()=>[i("div",fe,[i("div",_e,m(t.invoice_number),1),a(M,{status:t.status},{default:n(()=>[V(m(t.status),1)]),_:2},1032,["status"])]),i("div",ve,[a(H,{class:"mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900 block",amount:t.total,currency:t.currency},null,8,["amount","currency"]),i("div",ye,m(t.formatted_invoice_date),1)])]),_:2},1032,["id","to","class"]))),128)),s(l).invoices.length?k("",!0):(u(),F("p",be,m(e.$t("invoices.no_matching_invoices")),1))])]),i("div",he,[s(C)?(u(),F("iframe",{key:0,ref:(t,f)=>{f.report=t},src:s(C),class:"flex-1 border border-gray-400 border-solid rounded-md",onClick:r[4]||(r[4]=(...t)=>e.ViewReportsPDF&&e.ViewReportsPDF(...t))},null,8,ge)):k("",!0)])]),_:1})}}};export{Fe as default}; diff --git a/public/build/assets/View.796e2446.js b/public/build/assets/View.b5d80566.js similarity index 96% rename from public/build/assets/View.796e2446.js rename to public/build/assets/View.b5d80566.js index e856f7fde..dc8775768 100644 --- a/public/build/assets/View.796e2446.js +++ b/public/build/assets/View.b5d80566.js @@ -1 +1 @@ -var ne=Object.defineProperty;var L=Object.getOwnPropertySymbols;var re=Object.prototype.hasOwnProperty,le=Object.prototype.propertyIsEnumerable;var M=(_,m,o)=>m in _?ne(_,m,{enumerable:!0,configurable:!0,writable:!0,value:o}):_[m]=o,z=(_,m)=>{for(var o in m||(m={}))re.call(m,o)&&M(_,o,m[o]);if(L)for(var o of L(m))le.call(m,o)&&M(_,o,m[o]);return _};import{J as ie,ah as de,B as f,G as ce,aN as ue,a0 as me,k as x,C as fe,A as ve,r as c,o as d,e as I,f as a,l as v,w as r,h as u,u as s,i as w,t as b,j as p,F as P,y as pe,m as _e}from"./vendor.01d0adc5.js";import{_ as ye}from"./InvoiceIndexDropdown.430bc329.js";import{c as be,i as ge,u as he,e as Be,j as xe,g as F}from"./main.75722495.js";import{_ as Ie}from"./SendInvoiceModal.89e6012d.js";import{L as ke}from"./LoadingIcon.44a6304d.js";import"./mail-driver.4ea1af6b.js";const Ee={class:"text-sm mr-3"},Se={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 ml-56 bg-white xl:ml-64 w-88 xl:block"},we={class:"flex items-center justify-between px-4 pt-8 pb-2 border border-gray-200 border-solid height-full"},Te={class:"mb-6"},De={class:"flex mb-6 ml-3",role:"group","aria-label":"First group"},Ve={class:"px-2 py-1 pb-2 mb-1 mb-2 text-sm border-b border-gray-200 border-solid"},$e={key:0,class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid base-scroll"},Fe={class:"flex-2"},Ne={class:"mt-1 mb-2 text-xs not-italic font-medium leading-5 text-gray-600"},Ae={class:"flex-1 whitespace-nowrap right"},Ce={class:"text-sm not-italic font-normal leading-5 text-right text-gray-600 est-date"},je={class:"flex justify-center p-4 items-center"},Re={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},Le={class:"flex flex-col min-h-0 mt-8 overflow-hidden",style:{height:"75vh"}},Me=["src"],We={setup(_){const m=be(),o=ge();he();const T=Be(),U=xe(),{t:g}=ie();de("$utils"),f(null),f(null);const l=f(null);f(null);const k=ce();ue(),f(["DRAFT","SENT","VIEWED","EXPIRED","ACCEPTED","REJECTED"]);const E=f(!1),O=f(!1);f(!1);const N=f(!1),h=f(!1),t=me({orderBy:null,orderByField:null,searchText:null}),G=x(()=>l.value.invoice_number),A=x(()=>t.orderBy==="asc"||t.orderBy==null);x(()=>A.value?g("general.ascending"):g("general.descending"));const H=x(()=>`/invoices/pdf/${l.value.unique_hash}`);x(()=>l.value&&l.value.id?invoice.value.id:null),fe(k,(e,i)=>{e.name==="invoices.view"&&j()});async function J(){U.openDialog({title:g("general.are_you_sure"),message:g("invoices.invoice_mark_as_sent"),yesLabel:g("general.ok"),noLabel:g("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(async e=>{E.value=!1,e&&(await o.markAsSent({id:l.value.id,status:"SENT"}),l.value.status="SENT",E.value=!0),E.value=!1})}async function W(e){m.openModal({title:g("invoices.send_invoice"),componentName:"SendInvoiceModal",id:l.value.id,data:l.value})}function q(e){return k.params.id==e}async function C(){h.value=!0,await o.fetchInvoices(),h.value=!1,setTimeout(()=>{X()},500)}function X(){const e=document.getElementById(`invoice-${k.params.id}`);e&&(e.scrollIntoView({behavior:"smooth"}),e.classList.add("shake"))}async function j(){let e=await o.fetchInvoice(k.params.id);e.data&&(l.value=z({},e.data.data))}async function y(){let e="";t.searchText!==""&&t.searchText!==null&&t.searchText!==void 0&&(e+=`search=${t.searchText}&`),t.orderBy!==null&&t.orderBy!==void 0&&(e+=`orderBy=${t.orderBy}&`),t.orderByField!==null&&t.orderByField!==void 0&&(e+=`orderByField=${t.orderByField}`),N.value=!0;let i=await o.searchInvoice(e);N.value=!1,i.data&&(o.invoices=i.data.data)}function Y(){return t.orderBy==="asc"?(t.orderBy="desc",y(),!0):(t.orderBy="asc",y(),!0)}return C(),j(),y=ve.exports.debounce(y,500),(e,i)=>{const B=c("BaseButton"),R=c("router-link"),K=c("BasePageHeader"),S=c("BaseIcon"),Q=c("BaseInput"),D=c("BaseRadio"),V=c("BaseInputGroup"),$=c("BaseDropdownItem"),Z=c("BaseDropdown"),ee=c("BaseText"),te=c("BaseEstimateStatusBadge"),ae=c("BaseFormatMoney"),se=c("BasePage");return d(),I(P,null,[a(Ie),l.value?(d(),v(se,{key:0,class:"xl:pl-96 xl:ml-8"},{default:r(()=>[a(K,{title:s(G)},{actions:r(()=>[u("div",Ee,[l.value.status==="DRAFT"&&s(T).hasAbilities(s(F).EDIT_INVOICE)?(d(),v(B,{key:0,disabled:E.value,variant:"primary-outline",onClick:J},{default:r(()=>[w(b(e.$t("invoices.mark_as_sent")),1)]),_:1},8,["disabled"])):p("",!0)]),l.value.status==="DRAFT"&&s(T).hasAbilities(s(F).SEND_INVOICE)?(d(),v(B,{key:0,disabled:O.value,variant:"primary",class:"text-sm",onClick:W},{default:r(()=>[w(b(e.$t("invoices.send_invoice")),1)]),_:1},8,["disabled"])):p("",!0),s(T).hasAbilities(s(F).CREATE_PAYMENT)?(d(),v(R,{key:1,to:`/admin/payments/${e.$route.params.id}/create`},{default:r(()=>[l.value.status==="SENT"||l.value.status==="OVERDUE"||l.value.status==="VIEWED"?(d(),v(B,{key:0,variant:"primary"},{default:r(()=>[w(b(e.$t("invoices.record_payment")),1)]),_:1})):p("",!0)]),_:1},8,["to"])):p("",!0),a(ye,{class:"ml-3",row:l.value,"load-data":C},null,8,["row"])]),_:1},8,["title"]),u("div",Se,[u("div",we,[u("div",Te,[a(Q,{modelValue:s(t).searchText,"onUpdate:modelValue":i[0]||(i[0]=n=>s(t).searchText=n),placeholder:e.$t("general.search"),type:"text",variant:"gray",onInput:i[1]||(i[1]=n=>y())},{right:r(()=>[a(S,{name:"SearchIcon",class:"h-5 text-gray-400"})]),_:1},8,["modelValue","placeholder"])]),u("div",De,[a(Z,{class:"ml-3",position:"bottom-start"},{activator:r(()=>[a(B,{size:"md",variant:"gray"},{default:r(()=>[a(S,{name:"FilterIcon"})]),_:1})]),default:r(()=>[u("div",Ve,b(e.$t("general.sort_by")),1),a($,{class:"flex px-1 py-2 cursor-pointer"},{default:r(()=>[a(V,{class:"-mt-3 font-normal"},{default:r(()=>[a(D,{id:"filter_invoice_date",modelValue:s(t).orderByField,"onUpdate:modelValue":[i[2]||(i[2]=n=>s(t).orderByField=n),y],label:e.$t("reports.invoices.invoice_date"),size:"sm",name:"filter",value:"invoice_date"},null,8,["modelValue","label"])]),_:1})]),_:1}),a($,{class:"flex px-1 py-2 cursor-pointer"},{default:r(()=>[a(V,{class:"-mt-3 font-normal"},{default:r(()=>[a(D,{id:"filter_due_date",modelValue:s(t).orderByField,"onUpdate:modelValue":[i[3]||(i[3]=n=>s(t).orderByField=n),y],label:e.$t("invoices.due_date"),value:"due_date",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1}),a($,{class:"flex px-1 py-2 cursor-pointer"},{default:r(()=>[a(V,{class:"-mt-3 font-normal"},{default:r(()=>[a(D,{id:"filter_invoice_number",modelValue:s(t).orderByField,"onUpdate:modelValue":[i[4]||(i[4]=n=>s(t).orderByField=n),y],label:e.$t("invoices.invoice_number"),value:"invoice_number",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1})]),_:1}),a(B,{class:"ml-1",size:"md",variant:"gray",onClick:Y},{default:r(()=>[s(A)?(d(),v(S,{key:0,name:"SortAscendingIcon"})):(d(),v(S,{key:1,name:"SortDescendingIcon"}))]),_:1})])]),s(o)&&s(o).invoices?(d(),I("div",$e,[(d(!0),I(P,null,pe(s(o).invoices,(n,oe)=>(d(),I("div",{key:oe},[n&&!h.value?(d(),v(R,{key:0,id:"invoice-"+n.id,to:`/admin/invoices/${n.id}/view`,class:_e(["flex justify-between side-invoice p-4 cursor-pointer hover:bg-gray-100 items-center border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":q(n.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:r(()=>[u("div",Fe,[a(ee,{text:n.customer.name,length:30,class:"pr-2 mb-2 text-sm not-italic font-normal leading-5 text-black capitalize truncate"},null,8,["text"]),u("div",Ne,b(n.invoice_number),1),a(te,{status:n.status,class:"px-1 text-xs"},{default:r(()=>[w(b(n.status),1)]),_:2},1032,["status"])]),u("div",Ae,[a(ae,{class:"mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900 block",amount:n.total,currency:n.customer.currency},null,8,["amount","currency"]),u("div",Ce,b(n.formatted_invoice_date),1)])]),_:2},1032,["id","to","class"])):p("",!0)]))),128)),u("div",je,[h.value?(d(),v(ke,{key:0,class:"h-6 m-1 animate-spin text-primary-400"})):p("",!0)]),!s(o).invoices.length&&!h.value?(d(),I("p",Re,b(e.$t("invoices.no_matching_invoices")),1)):p("",!0)])):p("",!0)]),u("div",Le,[u("iframe",{src:`${s(H)}`,class:"flex-1 border border-gray-400 border-solid bg-white rounded-md frame-style"},null,8,Me)])]),_:1})):p("",!0)],64)}}};export{We as default}; +var ne=Object.defineProperty;var L=Object.getOwnPropertySymbols;var re=Object.prototype.hasOwnProperty,le=Object.prototype.propertyIsEnumerable;var M=(_,m,o)=>m in _?ne(_,m,{enumerable:!0,configurable:!0,writable:!0,value:o}):_[m]=o,z=(_,m)=>{for(var o in m||(m={}))re.call(m,o)&&M(_,o,m[o]);if(L)for(var o of L(m))le.call(m,o)&&M(_,o,m[o]);return _};import{J as ie,ah as de,B as f,G as ce,aN as ue,a0 as me,k as x,C as fe,A as ve,r as c,o as d,e as I,f as a,l as v,w as r,h as u,u as s,i as w,t as b,j as p,F as P,y as pe,m as _e}from"./vendor.01d0adc5.js";import{_ as ye}from"./InvoiceIndexDropdown.a18e118f.js";import{c as be,i as ge,u as he,e as Be,j as xe,g as F}from"./main.24f7a84b.js";import{_ as Ie}from"./SendInvoiceModal.1e029d4e.js";import{L as ke}from"./LoadingIcon.e09a5e28.js";import"./mail-driver.69202299.js";const Ee={class:"text-sm mr-3"},Se={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 ml-56 bg-white xl:ml-64 w-88 xl:block"},we={class:"flex items-center justify-between px-4 pt-8 pb-2 border border-gray-200 border-solid height-full"},Te={class:"mb-6"},De={class:"flex mb-6 ml-3",role:"group","aria-label":"First group"},Ve={class:"px-2 py-1 pb-2 mb-1 mb-2 text-sm border-b border-gray-200 border-solid"},$e={key:0,class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid base-scroll"},Fe={class:"flex-2"},Ne={class:"mt-1 mb-2 text-xs not-italic font-medium leading-5 text-gray-600"},Ae={class:"flex-1 whitespace-nowrap right"},Ce={class:"text-sm not-italic font-normal leading-5 text-right text-gray-600 est-date"},je={class:"flex justify-center p-4 items-center"},Re={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},Le={class:"flex flex-col min-h-0 mt-8 overflow-hidden",style:{height:"75vh"}},Me=["src"],We={setup(_){const m=be(),o=ge();he();const T=Be(),U=xe(),{t:g}=ie();de("$utils"),f(null),f(null);const l=f(null);f(null);const k=ce();ue(),f(["DRAFT","SENT","VIEWED","EXPIRED","ACCEPTED","REJECTED"]);const E=f(!1),O=f(!1);f(!1);const N=f(!1),h=f(!1),t=me({orderBy:null,orderByField:null,searchText:null}),G=x(()=>l.value.invoice_number),A=x(()=>t.orderBy==="asc"||t.orderBy==null);x(()=>A.value?g("general.ascending"):g("general.descending"));const H=x(()=>`/invoices/pdf/${l.value.unique_hash}`);x(()=>l.value&&l.value.id?invoice.value.id:null),fe(k,(e,i)=>{e.name==="invoices.view"&&j()});async function J(){U.openDialog({title:g("general.are_you_sure"),message:g("invoices.invoice_mark_as_sent"),yesLabel:g("general.ok"),noLabel:g("general.cancel"),variant:"primary",hideNoButton:!1,size:"lg"}).then(async e=>{E.value=!1,e&&(await o.markAsSent({id:l.value.id,status:"SENT"}),l.value.status="SENT",E.value=!0),E.value=!1})}async function W(e){m.openModal({title:g("invoices.send_invoice"),componentName:"SendInvoiceModal",id:l.value.id,data:l.value})}function q(e){return k.params.id==e}async function C(){h.value=!0,await o.fetchInvoices(),h.value=!1,setTimeout(()=>{X()},500)}function X(){const e=document.getElementById(`invoice-${k.params.id}`);e&&(e.scrollIntoView({behavior:"smooth"}),e.classList.add("shake"))}async function j(){let e=await o.fetchInvoice(k.params.id);e.data&&(l.value=z({},e.data.data))}async function y(){let e="";t.searchText!==""&&t.searchText!==null&&t.searchText!==void 0&&(e+=`search=${t.searchText}&`),t.orderBy!==null&&t.orderBy!==void 0&&(e+=`orderBy=${t.orderBy}&`),t.orderByField!==null&&t.orderByField!==void 0&&(e+=`orderByField=${t.orderByField}`),N.value=!0;let i=await o.searchInvoice(e);N.value=!1,i.data&&(o.invoices=i.data.data)}function Y(){return t.orderBy==="asc"?(t.orderBy="desc",y(),!0):(t.orderBy="asc",y(),!0)}return C(),j(),y=ve.exports.debounce(y,500),(e,i)=>{const B=c("BaseButton"),R=c("router-link"),K=c("BasePageHeader"),S=c("BaseIcon"),Q=c("BaseInput"),D=c("BaseRadio"),V=c("BaseInputGroup"),$=c("BaseDropdownItem"),Z=c("BaseDropdown"),ee=c("BaseText"),te=c("BaseEstimateStatusBadge"),ae=c("BaseFormatMoney"),se=c("BasePage");return d(),I(P,null,[a(Ie),l.value?(d(),v(se,{key:0,class:"xl:pl-96 xl:ml-8"},{default:r(()=>[a(K,{title:s(G)},{actions:r(()=>[u("div",Ee,[l.value.status==="DRAFT"&&s(T).hasAbilities(s(F).EDIT_INVOICE)?(d(),v(B,{key:0,disabled:E.value,variant:"primary-outline",onClick:J},{default:r(()=>[w(b(e.$t("invoices.mark_as_sent")),1)]),_:1},8,["disabled"])):p("",!0)]),l.value.status==="DRAFT"&&s(T).hasAbilities(s(F).SEND_INVOICE)?(d(),v(B,{key:0,disabled:O.value,variant:"primary",class:"text-sm",onClick:W},{default:r(()=>[w(b(e.$t("invoices.send_invoice")),1)]),_:1},8,["disabled"])):p("",!0),s(T).hasAbilities(s(F).CREATE_PAYMENT)?(d(),v(R,{key:1,to:`/admin/payments/${e.$route.params.id}/create`},{default:r(()=>[l.value.status==="SENT"||l.value.status==="OVERDUE"||l.value.status==="VIEWED"?(d(),v(B,{key:0,variant:"primary"},{default:r(()=>[w(b(e.$t("invoices.record_payment")),1)]),_:1})):p("",!0)]),_:1},8,["to"])):p("",!0),a(ye,{class:"ml-3",row:l.value,"load-data":C},null,8,["row"])]),_:1},8,["title"]),u("div",Se,[u("div",we,[u("div",Te,[a(Q,{modelValue:s(t).searchText,"onUpdate:modelValue":i[0]||(i[0]=n=>s(t).searchText=n),placeholder:e.$t("general.search"),type:"text",variant:"gray",onInput:i[1]||(i[1]=n=>y())},{right:r(()=>[a(S,{name:"SearchIcon",class:"h-5 text-gray-400"})]),_:1},8,["modelValue","placeholder"])]),u("div",De,[a(Z,{class:"ml-3",position:"bottom-start"},{activator:r(()=>[a(B,{size:"md",variant:"gray"},{default:r(()=>[a(S,{name:"FilterIcon"})]),_:1})]),default:r(()=>[u("div",Ve,b(e.$t("general.sort_by")),1),a($,{class:"flex px-1 py-2 cursor-pointer"},{default:r(()=>[a(V,{class:"-mt-3 font-normal"},{default:r(()=>[a(D,{id:"filter_invoice_date",modelValue:s(t).orderByField,"onUpdate:modelValue":[i[2]||(i[2]=n=>s(t).orderByField=n),y],label:e.$t("reports.invoices.invoice_date"),size:"sm",name:"filter",value:"invoice_date"},null,8,["modelValue","label"])]),_:1})]),_:1}),a($,{class:"flex px-1 py-2 cursor-pointer"},{default:r(()=>[a(V,{class:"-mt-3 font-normal"},{default:r(()=>[a(D,{id:"filter_due_date",modelValue:s(t).orderByField,"onUpdate:modelValue":[i[3]||(i[3]=n=>s(t).orderByField=n),y],label:e.$t("invoices.due_date"),value:"due_date",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1}),a($,{class:"flex px-1 py-2 cursor-pointer"},{default:r(()=>[a(V,{class:"-mt-3 font-normal"},{default:r(()=>[a(D,{id:"filter_invoice_number",modelValue:s(t).orderByField,"onUpdate:modelValue":[i[4]||(i[4]=n=>s(t).orderByField=n),y],label:e.$t("invoices.invoice_number"),value:"invoice_number",size:"sm",name:"filter"},null,8,["modelValue","label"])]),_:1})]),_:1})]),_:1}),a(B,{class:"ml-1",size:"md",variant:"gray",onClick:Y},{default:r(()=>[s(A)?(d(),v(S,{key:0,name:"SortAscendingIcon"})):(d(),v(S,{key:1,name:"SortDescendingIcon"}))]),_:1})])]),s(o)&&s(o).invoices?(d(),I("div",$e,[(d(!0),I(P,null,pe(s(o).invoices,(n,oe)=>(d(),I("div",{key:oe},[n&&!h.value?(d(),v(R,{key:0,id:"invoice-"+n.id,to:`/admin/invoices/${n.id}/view`,class:_e(["flex justify-between side-invoice p-4 cursor-pointer hover:bg-gray-100 items-center border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":q(n.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:r(()=>[u("div",Fe,[a(ee,{text:n.customer.name,length:30,class:"pr-2 mb-2 text-sm not-italic font-normal leading-5 text-black capitalize truncate"},null,8,["text"]),u("div",Ne,b(n.invoice_number),1),a(te,{status:n.status,class:"px-1 text-xs"},{default:r(()=>[w(b(n.status),1)]),_:2},1032,["status"])]),u("div",Ae,[a(ae,{class:"mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900 block",amount:n.total,currency:n.customer.currency},null,8,["amount","currency"]),u("div",Ce,b(n.formatted_invoice_date),1)])]),_:2},1032,["id","to","class"])):p("",!0)]))),128)),u("div",je,[h.value?(d(),v(ke,{key:0,class:"h-6 m-1 animate-spin text-primary-400"})):p("",!0)]),!s(o).invoices.length&&!h.value?(d(),I("p",Re,b(e.$t("invoices.no_matching_invoices")),1)):p("",!0)])):p("",!0)]),u("div",Le,[u("iframe",{src:`${s(H)}`,class:"flex-1 border border-gray-400 border-solid bg-white rounded-md frame-style"},null,8,Me)])]),_:1})):p("",!0)],64)}}};export{We as default}; diff --git a/public/build/assets/View.f7652815.js b/public/build/assets/View.da42cf28.js similarity index 99% rename from public/build/assets/View.f7652815.js rename to public/build/assets/View.da42cf28.js index 699854aee..8aa22119b 100644 --- a/public/build/assets/View.f7652815.js +++ b/public/build/assets/View.da42cf28.js @@ -1,2 +1,2 @@ -import{_ as fe,d as ve,r as ye,u as be,j as xe}from"./main.75722495.js";import{r as p,o,l as g,w as u,f as n,h as e,J as ee,t as r,i as k,G as we,B as _,C as ke,k as x,a0 as H,I as te,u as t,e as d,m as v,j as h,y as j,F as $,an as se,ao as $e,b3 as Be,ap as Me,aA as je,aB as F,aC as Ce,az as O,aD as Pe,a as Te}from"./vendor.01d0adc5.js";const Le={},Ie={class:"lg:grid lg:grid-rows-1 lg:grid-cols-7 lg:gap-x-8 lg:gap-y-10 xl:gap-x-16 mt-6"},Se={class:"lg:row-end-1 lg:col-span-4"},Re={class:"max-w-2xl mx-auto mt-10 lg:max-w-none lg:mt-0 lg:row-end-2 lg:row-span-2 lg:col-span-3 w-full"},Ye=e("h3",{class:"sr-only"},"Reviews",-1),He=e("p",{class:"sr-only"},"4 out of 5 stars",-1),De={class:"flex flex-col-reverse"},Ve={class:"mt-4"},ze={class:"mt-10 grid grid-cols-1 gap-x-6 gap-y-4 sm:grid-cols-2"},Ne=e("div",{class:"mt-10"},null,-1),Ue={class:"border-t border-gray-200 mt-10 pt-10"},Ge={class:"border-t border-gray-200 mt-10 pt-10"},Ke={class:"w-full max-w-2xl mx-auto mt-16 lg:max-w-none lg:mt-0 lg:col-span-4"};function qe(C,D){const m=p("BaseContentPlaceholdersText"),B=p("BaseContentPlaceholdersBox"),G=p("BasePage"),L=p("BaseContentPlaceholders");return o(),g(L,{rounded:""},{default:u(()=>[n(G,{class:"bg-white"},{default:u(()=>[n(m,{class:"mt-4 h-8 w-40",lines:1}),n(m,{class:"mt-4 h-8 w-56 mb-4",lines:1}),e("div",Ie,[e("div",Se,[n(B,{class:"h-96 sm:w-full",rounded:""})]),e("div",Re,[e("div",null,[Ye,n(m,{class:"w-32 h-8",lines:1}),He]),e("div",De,[e("div",Ve,[n(m,{class:"w-48 xl:w-80 h-12",lines:1}),n(m,{class:"w-64 xl:w-80 h-8 mt-2",lines:1})])]),e("div",null,[n(m,{class:"w-full h-24 my-10",lines:1})]),e("div",null,[n(m,{class:"w-full h-24 mt-6 mb-6",lines:1})]),e("div",ze,[n(m,{class:"w-full h-14",lines:1})]),Ne,e("div",Ue,[e("div",null,[n(m,{class:"w-24 h-6",lines:1}),n(m,{class:"mt-4 w-full h-20",lines:1})])]),e("div",Ge,[n(m,{class:"h-6 w-24",lines:1}),n(m,{class:"h-10 w-32 mt-4",lines:1})])]),e("div",Ke,[n(B,{class:"h-96 sm:w-full",rounded:""})])])]),_:1})]),_:1})}var Ee=fe(Le,[["render",qe]]);const Ae={class:"relative group"},Fe={class:"aspect-w-4 aspect-h-3 rounded-lg overflow-hidden bg-gray-100"},Oe=["src"],Je={class:"flex items-end opacity-0 p-4 group-hover:opacity-100","aria-hidden":"true"},Qe={class:"w-full bg-white bg-opacity-75 backdrop-filter backdrop-blur py-2 px-4 rounded-md text-sm font-medium text-primary-500 text-center"},We={class:"mt-4 flex items-center justify-between text-base font-medium text-gray-900 space-x-8 cursor-pointer"},Xe={class:"text-primary-500 font-bold"},Ze=e("span",{"aria-hidden":"true",class:"absolute inset-0"},null,-1),et={class:"text-primary-500 font-bold"},tt={props:{data:{type:Object,default:null,required:!0}},setup(C){return ee(),(D,m)=>{const B=p("router-link");return o(),g(B,{class:"relative group",to:`/admin/modules/${C.data.slug}`},{default:u(()=>[e("div",Ae,[e("div",Fe,[e("img",{src:C.data.cover,class:"object-center object-cover"},null,8,Oe),e("div",Je,[e("div",Qe,r(D.$t("modules.view_module")),1)])]),e("div",We,[e("h3",Xe,[Ze,k(" "+r(C.data.name),1)]),e("p",et," $ "+r(C.data.monthly_price/100),1)])])]),_:1},8,["to"])}}},st={class:"lg:grid lg:grid-rows-1 lg:grid-cols-7 lg:gap-x-8 lg:gap-y-10 xl:gap-x-16 mt-6"},lt={class:"lg:row-end-1 lg:col-span-4"},at={class:"flex flex-col-reverse"},ot={class:"hidden mt-6 w-full max-w-2xl mx-auto sm:block lg:max-w-none"},nt={class:"grid grid-cols-3 xl:grid-cols-4 gap-6","aria-orientation":"horizontal",role:"tablist"},rt={class:"absolute inset-0 rounded-md overflow-hidden"},it=["src"],dt=e("span",{class:"ring-transparent absolute inset-0 rounded-md ring-2 ring-offset-2 pointer-events-none","aria-hidden":"true"},null,-1),ut=["onClick"],ct={class:"absolute inset-0 rounded-md overflow-hidden"},mt=["src"],_t=e("span",{class:"ring-transparent absolute inset-0 rounded-md ring-2 ring-offset-2 pointer-events-none","aria-hidden":"true"},null,-1),pt={key:0,class:"aspect-w-4 aspect-h-3"},gt=["src"],ht={key:1,class:"aspect-w-4 aspect-h-3 rounded-lg bg-gray-100 overflow-hidden"},ft=["src"],vt={class:"max-w-2xl mx-auto mt-10 lg:max-w-none lg:mt-0 lg:row-end-2 lg:row-span-2 lg:col-span-3 w-full"},yt=e("h3",{class:"sr-only"},"Reviews",-1),bt={class:"flex items-center"},xt=e("p",{class:"sr-only"},"4 out of 5 stars",-1),wt={class:"flex flex-col-reverse"},kt={class:"mt-4"},$t={class:"text-2xl font-extrabold tracking-tight text-gray-900 sm:text-3xl"},Bt=e("h2",{id:"information-heading",class:"sr-only"}," Product information ",-1),Mt={key:0,class:"text-sm text-gray-500 mt-2"},jt=["innerHTML"],Ct={key:0},Pt=k(" Pricing plans "),Tt={class:"relative bg-white rounded-md -space-y-px"},Lt={class:"flex items-center text-sm"},It=e("span",{class:"rounded-full bg-white w-1.5 h-1.5"},null,-1),St=[It],Rt=["href"],Yt={key:2},Ht={key:0,class:"grid grid-cols-1 gap-x-6 gap-y-4 sm:grid-cols-2"},Dt={key:1},Vt={class:"grid grid-cols-1 gap-x-6 gap-y-4 sm:grid-cols-2"},zt={class:"ml-2"},Nt=e("div",{class:"mt-10"},null,-1),Ut={class:"border-t border-gray-200 mt-10 pt-10"},Gt={class:"text-sm font-medium text-gray-900"},Kt={class:"mt-4 prose prose-sm max-w-none text-gray-500"},qt=["innerHTML"],Et={class:"border-t border-gray-200 mt-10 pt-10"},At=["href"],Ft={key:3,class:"border-t border-gray-200 mt-10 pt-10"},Ot={class:"w-full p-0 list-none"},Jt={class:"m-0 text-sm leading-8"},Qt={class:"flex flex-row items-center"},Wt={key:0,class:"mr-3 text-xs text-gray-500"},Xt={class:"w-full max-w-2xl mx-auto mt-16 lg:max-w-none lg:mt-0 lg:col-span-4"},Zt=e("h3",{class:"sr-only"},"Customer Reviews",-1),es={key:0},ts={class:"flex-none py-10"},ss={class:"inline-flex items-center justify-center h-12 w-12 rounded-full bg-gray-500"},ls={class:"text-lg font-medium leading-none text-white uppercase"},as={class:"font-medium text-gray-900"},os={class:"flex items-center mt-4"},ns=["innerHTML"],rs={key:1,class:"flex w-full items-center justify-center"},is={class:"text-gray-500 mt-10 text-sm"},ds=e("h3",{class:"sr-only"},"Frequently Asked Questions",-1),us={class:"mt-10 font-medium text-gray-900"},cs={class:"mt-2 prose prose-sm max-w-none text-gray-500"},ms=e("h3",{class:"sr-only"},"License",-1),_s=["innerHTML"],ps={key:0,class:"mt-24 sm:mt-32 lg:max-w-none"},gs={class:"flex items-center justify-between space-x-4"},hs={class:"text-lg font-medium text-gray-900"},fs={href:"/admin/modules",class:"whitespace-nowrap text-sm font-medium text-primary-600 hover:text-primary-500"},vs=e("span",{"aria-hidden":"true"}," \u2192",-1),ys={class:"mt-6 grid grid-cols-1 gap-x-8 gap-y-8 sm:grid-cols-2 sm:gap-y-10 lg:grid-cols-4"},bs=e("div",{class:"p-6"},null,-1),ks={setup(C){const D=ve(),m=ye(),B=be(),G=xe(),L=we(),{t:y}=ee();let b=_(!1),V=_(!0),I=_(""),P=_(!1),T=_(!1);_(!1),Q(),ke(()=>L.params.slug,async s=>{Q()});const l=x(()=>m.currentModule.data),z=x(()=>{var M,w;let s=[],i=H({name:y("modules.monthly"),price:((M=l==null?void 0:l.value)==null?void 0:M.monthly_price)/100}),c=H({name:y("modules.yearly"),price:((w=l==null?void 0:l.value)==null?void 0:w.yearly_price)/100});return le.value?s.push(c):ae.value?s.push(i):(s.push(i),s.push(c)),s}),le=x(()=>l.value?l.value.type==="YEARLY":!1),ae=x(()=>l.value?l.value.type==="MONTHLY":!1),oe=x(()=>!!(l.value.installed&&l.value.latest_module_version)),K=x(()=>m.currentModule.meta.modules);let ne=x(()=>{let s=_(l.value.latest_module_version_updated_at),i=_(l.value.installed_module_version_updated_at);const c=i.value?i.value:s.value;return te(c).format("MMMM Do YYYY")}),re=x(()=>{let s=_(l.value.latest_module_version),i=_(l.value.installed_module_version);return i.value?i.value:s.value}),ie=x(()=>parseInt(l.value.average_rating));const de=x(()=>{let s=H([]),i=H({id:null,url:l.value.cover});return s.push(i),l.value.screenshots&&l.value.screenshots.forEach(c=>{s.push(c)}),s}),N=_(!1),q=_(null),U=_(null),E=_(z.value[0]),A=H([{translationKey:"modules.download_zip_file",stepUrl:"/api/v1/modules/download",time:null,started:!1,completed:!1},{translationKey:"modules.unzipping_package",stepUrl:"/api/v1/modules/unzip",time:null,started:!1,completed:!1},{translationKey:"modules.copying_files",stepUrl:"/api/v1/modules/copy",time:null,started:!1,completed:!1},{translationKey:"modules.completing_installation",stepUrl:"/api/v1/modules/complete",time:null,started:!1,completed:!1}]);async function J(){let s=null;for(let i=0;i{location.reload()},1500))}catch{return b.value=!1,c.started=!1,c.completed=!0,!1}}}function ue(s){let i=_("");switch(s){case"module_not_found":i=y("modules.module_not_found");break;case"module_not_purchased":i=y("modules.module_not_purchased");break;case"version_not_supported":i=y("modules.version_not_supported");break;default:i=s;break}return i}async function Q(){!L.params.slug||(V.value=!0,await m.fetchModule(L.params.slug).then(s=>{if(E.value=z.value[0],U.value=l.value.video_link,q.value=l.value.video_thumbnail,U.value){X(),V.value=!1;return}I.value=l.value.cover,V.value=!1}))}function ce(s){switch(W(s)){case"pending":return"text-primary-800 bg-gray-200";case"finished":return"text-teal-500 bg-teal-100";case"running":return"text-blue-400 bg-blue-100";case"error":return"text-danger bg-red-200";default:return""}}function me(){G.openDialog({title:y("general.are_you_sure"),message:y("modules.disable_warning"),yesLabel:y("general.ok"),noLabel:y("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async s=>{if(s){T.value=!0,await m.disableModule(l.value.module_name).then(i=>{if(i.data.success){l.value.enabled=0,T.value=!1,setTimeout(()=>{location.reload()},1500);return}}),T.value=!1;return}})}async function _e(){P.value=!0,await m.enableModule(l.value.module_name).then(s=>{s.data.success&&(l.value.enabled=1,setTimeout(()=>{location.reload()},1500)),P.value=!1}),P.value=!1}function W(s){return s.started&&s.completed?"finished":s.started&&!s.completed?"running":!s.started&&!s.completed?"pending":"error"}function pe(s){N.value=!1,I.value=s}function X(){N.value=!0,I.value=null}return(s,i)=>{const c=p("BaseBreadcrumbItem"),M=p("BaseBreadcrumb"),w=p("BasePageHeader"),Z=p("BaseRating"),S=p("BaseIcon"),R=p("BaseButton"),ge=p("BasePage");return t(V)?(o(),g(Ee,{key:0})):(o(),g(ge,{key:1,class:"bg-white"},{default:u(()=>[n(w,{title:t(l).name},{default:u(()=>[n(M,null,{default:u(()=>[n(c,{title:s.$t("general.home"),to:"dashboard"},null,8,["title"]),n(c,{title:s.$t("modules.title"),to:"/admin/modules"},null,8,["title"]),n(c,{title:t(l).name,to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),e("div",st,[e("div",lt,[e("div",at,[e("div",ot,[e("div",nt,[q.value&&U.value?(o(),d("button",{key:0,class:v(["relative md:h-24 lg:h-36 rounded hover:bg-gray-50",{"outline-none ring ring-offset-1 ring-primary-500":N.value}]),type:"button",onClick:X},[e("span",rt,[e("img",{src:q.value,alt:"",class:"w-full h-full object-center object-cover"},null,8,it)]),dt],2)):h("",!0),(o(!0),d($,null,j(t(de),(a,f)=>(o(),d("button",{id:"tabs-1-tab-1",key:f,class:v(["relative md:h-24 lg:h-36 rounded hover:bg-gray-50",{"outline-none ring ring-offset-1 ring-primary-500":t(I)===a.url}]),type:"button",onClick:Y=>pe(a.url)},[e("span",ct,[e("img",{src:a.url,alt:"",class:"w-full h-full object-center object-cover"},null,8,mt)]),_t],10,ut))),128))])]),N.value?(o(),d("div",pt,[e("iframe",{src:U.value,class:"sm:rounded-lg",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:""},` +import{_ as fe,d as ve,r as ye,u as be,j as xe}from"./main.24f7a84b.js";import{r as p,o,l as g,w as u,f as n,h as e,J as ee,t as r,i as k,G as we,B as _,C as ke,k as x,a0 as H,I as te,u as t,e as d,m as v,j as h,y as j,F as $,an as se,ao as $e,b3 as Be,ap as Me,aA as je,aB as F,aC as Ce,az as O,aD as Pe,a as Te}from"./vendor.01d0adc5.js";const Le={},Ie={class:"lg:grid lg:grid-rows-1 lg:grid-cols-7 lg:gap-x-8 lg:gap-y-10 xl:gap-x-16 mt-6"},Se={class:"lg:row-end-1 lg:col-span-4"},Re={class:"max-w-2xl mx-auto mt-10 lg:max-w-none lg:mt-0 lg:row-end-2 lg:row-span-2 lg:col-span-3 w-full"},Ye=e("h3",{class:"sr-only"},"Reviews",-1),He=e("p",{class:"sr-only"},"4 out of 5 stars",-1),De={class:"flex flex-col-reverse"},Ve={class:"mt-4"},ze={class:"mt-10 grid grid-cols-1 gap-x-6 gap-y-4 sm:grid-cols-2"},Ne=e("div",{class:"mt-10"},null,-1),Ue={class:"border-t border-gray-200 mt-10 pt-10"},Ge={class:"border-t border-gray-200 mt-10 pt-10"},Ke={class:"w-full max-w-2xl mx-auto mt-16 lg:max-w-none lg:mt-0 lg:col-span-4"};function qe(C,D){const m=p("BaseContentPlaceholdersText"),B=p("BaseContentPlaceholdersBox"),G=p("BasePage"),L=p("BaseContentPlaceholders");return o(),g(L,{rounded:""},{default:u(()=>[n(G,{class:"bg-white"},{default:u(()=>[n(m,{class:"mt-4 h-8 w-40",lines:1}),n(m,{class:"mt-4 h-8 w-56 mb-4",lines:1}),e("div",Ie,[e("div",Se,[n(B,{class:"h-96 sm:w-full",rounded:""})]),e("div",Re,[e("div",null,[Ye,n(m,{class:"w-32 h-8",lines:1}),He]),e("div",De,[e("div",Ve,[n(m,{class:"w-48 xl:w-80 h-12",lines:1}),n(m,{class:"w-64 xl:w-80 h-8 mt-2",lines:1})])]),e("div",null,[n(m,{class:"w-full h-24 my-10",lines:1})]),e("div",null,[n(m,{class:"w-full h-24 mt-6 mb-6",lines:1})]),e("div",ze,[n(m,{class:"w-full h-14",lines:1})]),Ne,e("div",Ue,[e("div",null,[n(m,{class:"w-24 h-6",lines:1}),n(m,{class:"mt-4 w-full h-20",lines:1})])]),e("div",Ge,[n(m,{class:"h-6 w-24",lines:1}),n(m,{class:"h-10 w-32 mt-4",lines:1})])]),e("div",Ke,[n(B,{class:"h-96 sm:w-full",rounded:""})])])]),_:1})]),_:1})}var Ee=fe(Le,[["render",qe]]);const Ae={class:"relative group"},Fe={class:"aspect-w-4 aspect-h-3 rounded-lg overflow-hidden bg-gray-100"},Oe=["src"],Je={class:"flex items-end opacity-0 p-4 group-hover:opacity-100","aria-hidden":"true"},Qe={class:"w-full bg-white bg-opacity-75 backdrop-filter backdrop-blur py-2 px-4 rounded-md text-sm font-medium text-primary-500 text-center"},We={class:"mt-4 flex items-center justify-between text-base font-medium text-gray-900 space-x-8 cursor-pointer"},Xe={class:"text-primary-500 font-bold"},Ze=e("span",{"aria-hidden":"true",class:"absolute inset-0"},null,-1),et={class:"text-primary-500 font-bold"},tt={props:{data:{type:Object,default:null,required:!0}},setup(C){return ee(),(D,m)=>{const B=p("router-link");return o(),g(B,{class:"relative group",to:`/admin/modules/${C.data.slug}`},{default:u(()=>[e("div",Ae,[e("div",Fe,[e("img",{src:C.data.cover,class:"object-center object-cover"},null,8,Oe),e("div",Je,[e("div",Qe,r(D.$t("modules.view_module")),1)])]),e("div",We,[e("h3",Xe,[Ze,k(" "+r(C.data.name),1)]),e("p",et," $ "+r(C.data.monthly_price/100),1)])])]),_:1},8,["to"])}}},st={class:"lg:grid lg:grid-rows-1 lg:grid-cols-7 lg:gap-x-8 lg:gap-y-10 xl:gap-x-16 mt-6"},lt={class:"lg:row-end-1 lg:col-span-4"},at={class:"flex flex-col-reverse"},ot={class:"hidden mt-6 w-full max-w-2xl mx-auto sm:block lg:max-w-none"},nt={class:"grid grid-cols-3 xl:grid-cols-4 gap-6","aria-orientation":"horizontal",role:"tablist"},rt={class:"absolute inset-0 rounded-md overflow-hidden"},it=["src"],dt=e("span",{class:"ring-transparent absolute inset-0 rounded-md ring-2 ring-offset-2 pointer-events-none","aria-hidden":"true"},null,-1),ut=["onClick"],ct={class:"absolute inset-0 rounded-md overflow-hidden"},mt=["src"],_t=e("span",{class:"ring-transparent absolute inset-0 rounded-md ring-2 ring-offset-2 pointer-events-none","aria-hidden":"true"},null,-1),pt={key:0,class:"aspect-w-4 aspect-h-3"},gt=["src"],ht={key:1,class:"aspect-w-4 aspect-h-3 rounded-lg bg-gray-100 overflow-hidden"},ft=["src"],vt={class:"max-w-2xl mx-auto mt-10 lg:max-w-none lg:mt-0 lg:row-end-2 lg:row-span-2 lg:col-span-3 w-full"},yt=e("h3",{class:"sr-only"},"Reviews",-1),bt={class:"flex items-center"},xt=e("p",{class:"sr-only"},"4 out of 5 stars",-1),wt={class:"flex flex-col-reverse"},kt={class:"mt-4"},$t={class:"text-2xl font-extrabold tracking-tight text-gray-900 sm:text-3xl"},Bt=e("h2",{id:"information-heading",class:"sr-only"}," Product information ",-1),Mt={key:0,class:"text-sm text-gray-500 mt-2"},jt=["innerHTML"],Ct={key:0},Pt=k(" Pricing plans "),Tt={class:"relative bg-white rounded-md -space-y-px"},Lt={class:"flex items-center text-sm"},It=e("span",{class:"rounded-full bg-white w-1.5 h-1.5"},null,-1),St=[It],Rt=["href"],Yt={key:2},Ht={key:0,class:"grid grid-cols-1 gap-x-6 gap-y-4 sm:grid-cols-2"},Dt={key:1},Vt={class:"grid grid-cols-1 gap-x-6 gap-y-4 sm:grid-cols-2"},zt={class:"ml-2"},Nt=e("div",{class:"mt-10"},null,-1),Ut={class:"border-t border-gray-200 mt-10 pt-10"},Gt={class:"text-sm font-medium text-gray-900"},Kt={class:"mt-4 prose prose-sm max-w-none text-gray-500"},qt=["innerHTML"],Et={class:"border-t border-gray-200 mt-10 pt-10"},At=["href"],Ft={key:3,class:"border-t border-gray-200 mt-10 pt-10"},Ot={class:"w-full p-0 list-none"},Jt={class:"m-0 text-sm leading-8"},Qt={class:"flex flex-row items-center"},Wt={key:0,class:"mr-3 text-xs text-gray-500"},Xt={class:"w-full max-w-2xl mx-auto mt-16 lg:max-w-none lg:mt-0 lg:col-span-4"},Zt=e("h3",{class:"sr-only"},"Customer Reviews",-1),es={key:0},ts={class:"flex-none py-10"},ss={class:"inline-flex items-center justify-center h-12 w-12 rounded-full bg-gray-500"},ls={class:"text-lg font-medium leading-none text-white uppercase"},as={class:"font-medium text-gray-900"},os={class:"flex items-center mt-4"},ns=["innerHTML"],rs={key:1,class:"flex w-full items-center justify-center"},is={class:"text-gray-500 mt-10 text-sm"},ds=e("h3",{class:"sr-only"},"Frequently Asked Questions",-1),us={class:"mt-10 font-medium text-gray-900"},cs={class:"mt-2 prose prose-sm max-w-none text-gray-500"},ms=e("h3",{class:"sr-only"},"License",-1),_s=["innerHTML"],ps={key:0,class:"mt-24 sm:mt-32 lg:max-w-none"},gs={class:"flex items-center justify-between space-x-4"},hs={class:"text-lg font-medium text-gray-900"},fs={href:"/admin/modules",class:"whitespace-nowrap text-sm font-medium text-primary-600 hover:text-primary-500"},vs=e("span",{"aria-hidden":"true"}," \u2192",-1),ys={class:"mt-6 grid grid-cols-1 gap-x-8 gap-y-8 sm:grid-cols-2 sm:gap-y-10 lg:grid-cols-4"},bs=e("div",{class:"p-6"},null,-1),ks={setup(C){const D=ve(),m=ye(),B=be(),G=xe(),L=we(),{t:y}=ee();let b=_(!1),V=_(!0),I=_(""),P=_(!1),T=_(!1);_(!1),Q(),ke(()=>L.params.slug,async s=>{Q()});const l=x(()=>m.currentModule.data),z=x(()=>{var M,w;let s=[],i=H({name:y("modules.monthly"),price:((M=l==null?void 0:l.value)==null?void 0:M.monthly_price)/100}),c=H({name:y("modules.yearly"),price:((w=l==null?void 0:l.value)==null?void 0:w.yearly_price)/100});return le.value?s.push(c):ae.value?s.push(i):(s.push(i),s.push(c)),s}),le=x(()=>l.value?l.value.type==="YEARLY":!1),ae=x(()=>l.value?l.value.type==="MONTHLY":!1),oe=x(()=>!!(l.value.installed&&l.value.latest_module_version)),K=x(()=>m.currentModule.meta.modules);let ne=x(()=>{let s=_(l.value.latest_module_version_updated_at),i=_(l.value.installed_module_version_updated_at);const c=i.value?i.value:s.value;return te(c).format("MMMM Do YYYY")}),re=x(()=>{let s=_(l.value.latest_module_version),i=_(l.value.installed_module_version);return i.value?i.value:s.value}),ie=x(()=>parseInt(l.value.average_rating));const de=x(()=>{let s=H([]),i=H({id:null,url:l.value.cover});return s.push(i),l.value.screenshots&&l.value.screenshots.forEach(c=>{s.push(c)}),s}),N=_(!1),q=_(null),U=_(null),E=_(z.value[0]),A=H([{translationKey:"modules.download_zip_file",stepUrl:"/api/v1/modules/download",time:null,started:!1,completed:!1},{translationKey:"modules.unzipping_package",stepUrl:"/api/v1/modules/unzip",time:null,started:!1,completed:!1},{translationKey:"modules.copying_files",stepUrl:"/api/v1/modules/copy",time:null,started:!1,completed:!1},{translationKey:"modules.completing_installation",stepUrl:"/api/v1/modules/complete",time:null,started:!1,completed:!1}]);async function J(){let s=null;for(let i=0;i{location.reload()},1500))}catch{return b.value=!1,c.started=!1,c.completed=!0,!1}}}function ue(s){let i=_("");switch(s){case"module_not_found":i=y("modules.module_not_found");break;case"module_not_purchased":i=y("modules.module_not_purchased");break;case"version_not_supported":i=y("modules.version_not_supported");break;default:i=s;break}return i}async function Q(){!L.params.slug||(V.value=!0,await m.fetchModule(L.params.slug).then(s=>{if(E.value=z.value[0],U.value=l.value.video_link,q.value=l.value.video_thumbnail,U.value){X(),V.value=!1;return}I.value=l.value.cover,V.value=!1}))}function ce(s){switch(W(s)){case"pending":return"text-primary-800 bg-gray-200";case"finished":return"text-teal-500 bg-teal-100";case"running":return"text-blue-400 bg-blue-100";case"error":return"text-danger bg-red-200";default:return""}}function me(){G.openDialog({title:y("general.are_you_sure"),message:y("modules.disable_warning"),yesLabel:y("general.ok"),noLabel:y("general.cancel"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async s=>{if(s){T.value=!0,await m.disableModule(l.value.module_name).then(i=>{if(i.data.success){l.value.enabled=0,T.value=!1,setTimeout(()=>{location.reload()},1500);return}}),T.value=!1;return}})}async function _e(){P.value=!0,await m.enableModule(l.value.module_name).then(s=>{s.data.success&&(l.value.enabled=1,setTimeout(()=>{location.reload()},1500)),P.value=!1}),P.value=!1}function W(s){return s.started&&s.completed?"finished":s.started&&!s.completed?"running":!s.started&&!s.completed?"pending":"error"}function pe(s){N.value=!1,I.value=s}function X(){N.value=!0,I.value=null}return(s,i)=>{const c=p("BaseBreadcrumbItem"),M=p("BaseBreadcrumb"),w=p("BasePageHeader"),Z=p("BaseRating"),S=p("BaseIcon"),R=p("BaseButton"),ge=p("BasePage");return t(V)?(o(),g(Ee,{key:0})):(o(),g(ge,{key:1,class:"bg-white"},{default:u(()=>[n(w,{title:t(l).name},{default:u(()=>[n(M,null,{default:u(()=>[n(c,{title:s.$t("general.home"),to:"dashboard"},null,8,["title"]),n(c,{title:s.$t("modules.title"),to:"/admin/modules"},null,8,["title"]),n(c,{title:t(l).name,to:"#",active:""},null,8,["title"])]),_:1})]),_:1},8,["title"]),e("div",st,[e("div",lt,[e("div",at,[e("div",ot,[e("div",nt,[q.value&&U.value?(o(),d("button",{key:0,class:v(["relative md:h-24 lg:h-36 rounded hover:bg-gray-50",{"outline-none ring ring-offset-1 ring-primary-500":N.value}]),type:"button",onClick:X},[e("span",rt,[e("img",{src:q.value,alt:"",class:"w-full h-full object-center object-cover"},null,8,it)]),dt],2)):h("",!0),(o(!0),d($,null,j(t(de),(a,f)=>(o(),d("button",{id:"tabs-1-tab-1",key:f,class:v(["relative md:h-24 lg:h-36 rounded hover:bg-gray-50",{"outline-none ring ring-offset-1 ring-primary-500":t(I)===a.url}]),type:"button",onClick:Y=>pe(a.url)},[e("span",ct,[e("img",{src:a.url,alt:"",class:"w-full h-full object-center object-cover"},null,8,mt)]),_t],10,ut))),128))])]),N.value?(o(),d("div",pt,[e("iframe",{src:U.value,class:"sm:rounded-lg",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:""},` `,8,gt)])):(o(),d("div",ht,[e("img",{src:t(I),alt:"Module Images",class:"w-full h-full object-center object-cover sm:rounded-lg"},null,8,ft)]))])]),e("div",vt,[yt,e("div",bt,[n(Z,{rating:t(ie)},null,8,["rating"])]),xt,e("div",wt,[e("div",kt,[e("h1",$t,r(t(l).name),1),Bt,t(l).latest_module_version?(o(),d("p",Mt,r(s.$t("modules.version"))+" "+r(t(re))+" ("+r(s.$t("modules.last_updated"))+" "+r(t(ne))+") ",1)):h("",!0)])]),e("div",{class:"prose prose-sm max-w-none text-gray-500 text-sm my-10",innerHTML:t(l).long_description},null,8,jt),t(l).purchased?h("",!0):(o(),d("div",Ct,[n(t(Me),{modelValue:E.value,"onUpdate:modelValue":i[0]||(i[0]=a=>E.value=a)},{default:u(()=>[n(t(se),{class:"sr-only"},{default:u(()=>[Pt]),_:1}),e("div",Tt,[(o(!0),d($,null,j(t(z),(a,f)=>(o(),g(t($e),{key:a.name,as:"template",value:a},{default:u(({checked:Y,active:he})=>[e("div",{class:v([f===0?"rounded-tl-md rounded-tr-md":"",f===t(z).length-1?"rounded-bl-md rounded-br-md":"",Y?"bg-primary-50 border-primary-200 z-10":"border-gray-200","relative border p-4 flex flex-col cursor-pointer md:pl-4 md:pr-6 md:grid md:grid-cols-2 focus:outline-none"])},[e("div",Lt,[e("span",{class:v([Y?"bg-primary-600 border-transparent":"bg-white border-gray-300",he?"ring-2 ring-offset-2 ring-primary-500":"","h-4 w-4 rounded-full border flex items-center justify-center"]),"aria-hidden":"true"},St,2),n(t(se),{as:"span",class:v([Y?"text-primary-900":"text-gray-900","ml-3 font-medium"])},{default:u(()=>[k(r(a.name),1)]),_:2},1032,["class"])]),n(t(Be),{class:"ml-6 pl-1 text-base md:ml-0 md:pl-0 md:text-center"},{default:u(()=>[e("span",{class:v([Y?"text-primary-900":"text-gray-900","font-medium"])}," $ "+r(a.price),3)]),_:2},1024)],2)]),_:2},1032,["value"]))),128))])]),_:1},8,["modelValue"])])),t(l).purchased?(o(),d("div",Yt,[t(l).installed?t(oe)?(o(),d("div",Dt,[e("div",Vt,[t(l).update_available?(o(),g(R,{key:0,variant:"primary",size:"xl",loading:t(b),disabled:t(b),class:"mr-4 flex items-center justify-center text-base",onClick:i[2]||(i[2]=a=>J())},{default:u(()=>[k(r(s.$t("modules.update_to"))+" ",1),e("span",zt,r(t(l).latest_module_version),1)]),_:1},8,["loading","disabled"])):h("",!0),t(l).enabled?(o(),g(R,{key:1,variant:"danger",size:"xl",loading:t(T),disabled:t(T),class:"mr-4 flex items-center justify-center text-base",onClick:me},{default:u(()=>[t(T)?h("",!0):(o(),g(S,{key:0,name:"BanIcon",class:"mr-2"})),k(" "+r(s.$t("modules.disable")),1)]),_:1},8,["loading","disabled"])):(o(),g(R,{key:2,variant:"primary-outline",size:"xl",loading:t(P),disabled:t(P),class:"mr-4 flex items-center justify-center text-base",onClick:_e},{default:u(()=>[t(P)?h("",!0):(o(),g(S,{key:0,name:"CheckIcon",class:"mr-2"})),k(" "+r(s.$t("modules.enable")),1)]),_:1},8,["loading","disabled"]))])])):h("",!0):(o(),d("div",Ht,[t(l).latest_module_version?(o(),g(R,{key:0,size:"xl",variant:"primary-outline",outline:"",loading:t(b),disabled:t(b),class:"mr-4 flex items-center justify-center text-base",onClick:i[1]||(i[1]=a=>J())},{default:u(()=>[t(b)?h("",!0):(o(),g(S,{key:0,name:"DownloadIcon",class:"mr-2"})),k(" "+r(s.$t("modules.install")),1)]),_:1},8,["loading","disabled"])):h("",!0)]))])):(o(),d("a",{key:1,href:`${t(D).config.base_url}/modules/${t(l).slug}`,target:"_blank",class:"grid grid-cols-1 gap-x-6 gap-y-4 sm:grid-cols-2"},[n(R,{size:"xl",class:"items-center flex justify-center text-base mt-10"},{default:u(()=>[n(S,{name:"ShoppingCartIcon",class:"mr-2"}),k(" "+r(s.$t("modules.buy_now")),1)]),_:1})],8,Rt)),Nt,e("div",Ut,[e("h3",Gt,r(s.$t("modules.what_you_get")),1),e("div",Kt,[e("div",{class:"prose prose-sm max-w-none text-gray-500 text-sm",innerHTML:t(l).highlights},null,8,qt)])]),e("div",Et,[(o(!0),d($,null,j(t(l).links,(a,f)=>(o(),d("div",{key:f,class:"mb-4 last:mb-0 flex"},[n(S,{name:a.icon,class:"mr-4"},null,8,["name"]),e("a",{href:a.link,class:"text-primary-500",target:"_blank"},r(a.label),9,At)]))),128))]),t(b)?(o(),d("div",Ft,[e("ul",Ot,[(o(!0),d($,null,j(t(A),a=>(o(),d("li",{key:a.stepUrl,class:"flex justify-between w-full py-3 border-b border-gray-200 border-solid last:border-b-0"},[e("p",Jt,r(s.$t(a.translationKey)),1),e("div",Qt,[a.time?(o(),d("span",Wt,r(a.time),1)):h("",!0),e("span",{class:v([ce(a),"block py-1 text-sm text-center uppercase rounded-full"]),style:{width:"88px"}},r(W(a)),3)])]))),128))])])):h("",!0)]),e("div",Xt,[n(t(Pe),{as:"div"},{default:u(()=>[n(t(je),{class:"-mb-px flex space-x-8 border-b border-gray-200"},{default:u(()=>[n(t(F),{as:"template"},{default:u(({selected:a})=>[e("button",{class:v([a?"border-primary-600 text-primary-600":"border-transparent text-gray-700 hover:text-gray-800 hover:border-gray-300","whitespace-nowrap py-6 border-b-2 font-medium text-sm"])},r(s.$t("modules.customer_reviews")),3)]),_:1}),n(t(F),{as:"template"},{default:u(({selected:a})=>[e("button",{class:v([a?"border-primary-600 text-primary-600":"border-transparent text-gray-700 hover:text-gray-800 hover:border-gray-300","whitespace-nowrap py-6 border-b-2 font-medium text-sm"])},r(s.$t("modules.faq")),3)]),_:1}),n(t(F),{as:"template"},{default:u(({selected:a})=>[e("button",{class:v([a?"border-primary-600 text-primary-600":"border-transparent text-gray-700 hover:text-gray-800 hover:border-gray-300","whitespace-nowrap py-6 border-b-2 font-medium text-sm"])},r(s.$t("modules.license")),3)]),_:1})]),_:1}),n(t(Ce),{as:"template"},{default:u(()=>[n(t(O),{class:"-mb-10"},{default:u(()=>[Zt,t(l).reviews.length?(o(),d("div",es,[(o(!0),d($,null,j(t(l).reviews,(a,f)=>(o(),d("div",{key:f,class:"flex text-sm text-gray-500 space-x-4"},[e("div",ts,[e("span",ss,[e("span",ls,r(a.customer.name[0]),1)])]),e("div",{class:v([f===0?"":"border-t border-gray-200","py-10"])},[e("h3",as,r(a.customer.name),1),e("p",null,r(t(te)(a.created_at).format("MMMM Do YYYY")),1),e("div",os,[n(Z,{rating:a.rating},null,8,["rating"])]),e("div",{class:"mt-4 prose prose-sm max-w-none text-gray-500",innerHTML:a.feedback},null,8,ns)],2)]))),128))])):(o(),d("div",rs,[e("p",is,r(s.$t("modules.no_reviews_found")),1)]))]),_:1}),n(t(O),{as:"dl",class:"text-sm text-gray-500"},{default:u(()=>[ds,(o(!0),d($,null,j(t(l).faq,a=>(o(),d($,{key:a.question},[e("dt",us,r(a.question),1),e("dd",cs,[e("p",null,r(a.answer),1)])],64))),128))]),_:1}),n(t(O),{class:"pt-10"},{default:u(()=>[ms,e("div",{class:"prose prose-sm max-w-none text-gray-500",innerHTML:t(l).license},null,8,_s)]),_:1})]),_:1})]),_:1})])]),t(K)&&t(K).length?(o(),d("div",ps,[e("div",gs,[e("h2",hs,r(s.$t("modules.other_modules")),1),e("a",fs,[k(r(s.$t("modules.view_all")),1),vs])]),e("div",ys,[(o(!0),d($,null,j(t(K),(a,f)=>(o(),d("div",{key:f},[n(tt,{data:a},null,8,["data"])]))),128))])])):h("",!0),bs]),_:1}))}}};export{ks as default}; diff --git a/public/build/assets/View.abc1c107.js b/public/build/assets/View.dadb2ec2.js similarity index 96% rename from public/build/assets/View.abc1c107.js rename to public/build/assets/View.dadb2ec2.js index e20520e99..4bf13ac9b 100644 --- a/public/build/assets/View.abc1c107.js +++ b/public/build/assets/View.dadb2ec2.js @@ -1 +1 @@ -import{G as te,aN as ae,J as se,B as m,a0 as N,ah as oe,k as g,I as ne,C as re,A as le,r as d,o as c,e as p,f as o,w as n,u as t,l as B,i as de,t as _,j as y,h as r,F as C,y as ie,m as ce}from"./vendor.01d0adc5.js";import{c as ue,e as me,j as fe,g as pe}from"./main.75722495.js";import{u as _e}from"./payment.5c57bec3.js";import{_ as ye,a as he}from"./SendPaymentModal.1bb9d371.js";import{L as be}from"./LoadingIcon.44a6304d.js";import"./mail-driver.4ea1af6b.js";const ge={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 ml-56 bg-white xl:ml-64 w-88 xl:block"},Be={class:"flex items-center justify-between px-4 pt-8 pb-6 border border-gray-200 border-solid"},ve={class:"flex ml-3",role:"group","aria-label":"First group"},xe={class:"px-4 py-1 pb-2 mb-2 text-sm border-b border-gray-200 border-solid"},we={class:"px-2"},ke={class:"px-2"},Ie={class:"px-2"},Fe={key:0,class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid"},Ve={class:"flex-2"},Pe={class:"mb-1 text-xs not-italic font-medium leading-5 text-gray-500 capitalize"},Se={class:"mb-1 text-xs not-italic font-medium leading-5 text-gray-500 capitalize"},je={class:"flex-1 whitespace-nowrap right"},Te={class:"text-sm text-right text-gray-500 non-italic"},De={class:"flex justify-center p-4 items-center"},$e={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},Me={class:"flex flex-col min-h-0 mt-8 overflow-hidden",style:{height:"75vh"}},ze=["src"],Re={setup(Ne){const h=te();ae();const{t:w}=se();m(null),m(null);let f=N({});m(null);let s=N({orderBy:null,orderByField:null,searchText:null}),k=m(!1),L=m(!1);m(!1);let b=m(!1),v=m(!1);oe("utils");const i=_e(),U=ue(),A=me(),E=g(()=>f.payment_number||""),S=g(()=>s.orderBy==="asc"||s.orderBy==null);g(()=>S.value?w("general.ascending"):w("general.descending"));const j=g(()=>f.unique_hash?`/payments/pdf/${f.unique_hash}`:!1);g(()=>{var a;return ne((a=i==null?void 0:i.selectedPayment)==null?void 0:a.payment_date).format("YYYY/MM/DD")}),re(h,()=>{T()}),R(),T(),u=le.exports.debounce(u,500);function Y(a){return h.params.id==a}fe();async function R(){b.value=!0,await i.fetchPayments({limit:"all"}),b.value=!1,setTimeout(()=>{G()},500)}async function T(){if(!h.params.id)return;v.value=!0;let a=await i.fetchPayment(h.params.id);a.data&&(v.value=!1,Object.assign(f,a.data.data))}function G(){const a=document.getElementById(`payment-${h.params.id}`);a&&(a.scrollIntoView({behavior:"smooth"}),a.classList.add("shake"))}async function u(){let a={};s.searchText!==""&&s.searchText!==null&&s.searchText!==void 0&&(a.search=s.searchText),s.orderBy!==null&&s.orderBy!==void 0&&(a.orderBy=s.orderBy),s.orderByField!==null&&s.orderByField!==void 0&&(a.orderByField=s.orderByField),k.value=!0;try{let l=await i.searchPayment(a);k.value=!1,l.data.data&&(i.payments=l.data.data)}catch{k.value=!1}}function q(){return s.orderBy==="asc"?(s.orderBy="desc",u(),!0):(s.orderBy="asc",u(),!0)}async function H(){U.openModal({title:w("payments.send_payment"),componentName:"SendPaymentModal",id:f.id,data:f,variant:"lg"})}return(a,l)=>{const I=d("BaseButton"),O=d("BasePageHeader"),x=d("BaseIcon"),J=d("BaseInput"),F=d("BaseRadio"),V=d("BaseInputGroup"),P=d("BaseDropdownItem"),K=d("BaseDropdown"),Q=d("BaseText"),W=d("BaseFormatMoney"),X=d("router-link"),Z=d("BasePage");return c(),p(C,null,[o(ye),o(Z,{class:"xl:pl-96"},{default:n(()=>{var D,$;return[o(O,{title:t(E)},{actions:n(()=>[t(A).hasAbilities(t(pe).SEND_PAYMENT)?(c(),B(I,{key:0,disabled:t(L),"content-loading":t(v),variant:"primary",onClick:H},{default:n(()=>[de(_(a.$t("payments.send_payment_receipt")),1)]),_:1},8,["disabled","content-loading"])):y("",!0),o(he,{"content-loading":t(v),class:"ml-3",row:t(f)},null,8,["content-loading","row"])]),_:1},8,["title"]),r("div",ge,[r("div",Be,[o(J,{modelValue:t(s).searchText,"onUpdate:modelValue":l[0]||(l[0]=e=>t(s).searchText=e),placeholder:a.$t("general.search"),type:"text",onInput:u},{default:n(()=>[o(x,{name:"SearchIcon",class:"h-5"})]),_:1},8,["modelValue","placeholder"]),r("div",ve,[o(K,{position:"bottom-start","width-class":"w-50","position-class":"left-0"},{activator:n(()=>[o(I,{variant:"gray"},{default:n(()=>[o(x,{name:"FilterIcon"})]),_:1})]),default:n(()=>[r("div",xe,_(a.$t("general.sort_by")),1),r("div",we,[o(P,{class:"pt-3 rounded-md hover:rounded-md"},{default:n(()=>[o(V,{class:"-mt-3 font-normal"},{default:n(()=>[o(F,{id:"filter_invoice_number",modelValue:t(s).orderByField,"onUpdate:modelValue":[l[1]||(l[1]=e=>t(s).orderByField=e),u],label:a.$t("invoices.title"),size:"sm",name:"filter",value:"invoice_number"},null,8,["modelValue","label"])]),_:1})]),_:1})]),r("div",ke,[o(P,{class:"pt-3 rounded-md hover:rounded-md"},{default:n(()=>[o(V,{class:"-mt-3 font-normal"},{default:n(()=>[o(F,{modelValue:t(s).orderByField,"onUpdate:modelValue":[l[2]||(l[2]=e=>t(s).orderByField=e),u],label:a.$t("payments.date"),size:"sm",name:"filter",value:"payment_date"},null,8,["modelValue","label"])]),_:1})]),_:1})]),r("div",Ie,[o(P,{class:"pt-3 rounded-md hover:rounded-md"},{default:n(()=>[o(V,{class:"-mt-3 font-normal"},{default:n(()=>[o(F,{id:"filter_payment_number",modelValue:t(s).orderByField,"onUpdate:modelValue":[l[3]||(l[3]=e=>t(s).orderByField=e),u],label:a.$t("payments.payment_number"),size:"sm",name:"filter",value:"payment_number"},null,8,["modelValue","label"])]),_:1})]),_:1})])]),_:1}),o(I,{class:"ml-1",size:"md",variant:"gray",onClick:q},{default:n(()=>[t(S)?(c(),B(x,{key:0,name:"SortAscendingIcon"})):(c(),B(x,{key:1,name:"SortDescendingIcon"}))]),_:1})])]),t(i)&&t(i).payments?(c(),p("div",Fe,[(c(!0),p(C,null,ie(t(i).payments,(e,ee)=>(c(),p("div",{key:ee},[e&&!t(b)?(c(),B(X,{key:0,id:"payment-"+e.id,to:`/admin/payments/${e.id}/view`,class:ce(["flex justify-between p-4 items-center cursor-pointer hover:bg-gray-100 border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":Y(e.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:n(()=>{var M,z;return[r("div",Ve,[o(Q,{text:(M=e==null?void 0:e.customer)==null?void 0:M.name,length:30,class:"pr-2 mb-2 text-sm not-italic font-normal leading-5 text-black capitalize truncate"},null,8,["text"]),r("div",Pe,_(e==null?void 0:e.payment_number),1),r("div",Se,_(e==null?void 0:e.invoice_number),1)]),r("div",je,[o(W,{class:"block mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900",amount:e==null?void 0:e.amount,currency:(z=e.customer)==null?void 0:z.currency},null,8,["amount","currency"]),r("div",Te,_(e.formatted_payment_date),1)])]}),_:2},1032,["id","to","class"])):y("",!0)]))),128)),r("div",De,[t(b)?(c(),B(be,{key:0,class:"h-6 m-1 animate-spin text-primary-400"})):y("",!0)]),!(($=(D=t(i))==null?void 0:D.payments)==null?void 0:$.length)&&!t(b)?(c(),p("p",$e,_(a.$t("payments.no_matching_payments")),1)):y("",!0)])):y("",!0)]),r("div",Me,[t(j)?(c(),p("iframe",{key:0,src:t(j),class:"flex-1 border border-gray-400 border-solid rounded-md"},null,8,ze)):y("",!0)])]}),_:1})],64)}}};export{Re as default}; +import{G as te,aN as ae,J as se,B as m,a0 as N,ah as oe,k as g,I as ne,C as re,A as le,r as d,o as c,e as p,f as o,w as n,u as t,l as B,i as de,t as _,j as y,h as r,F as C,y as ie,m as ce}from"./vendor.01d0adc5.js";import{c as ue,e as me,j as fe,g as pe}from"./main.24f7a84b.js";import{u as _e}from"./payment.bb0c6e9e.js";import{_ as ye,a as he}from"./SendPaymentModal.57c4c1f4.js";import{L as be}from"./LoadingIcon.e09a5e28.js";import"./mail-driver.69202299.js";const ge={class:"fixed top-0 left-0 hidden h-full pt-16 pb-4 ml-56 bg-white xl:ml-64 w-88 xl:block"},Be={class:"flex items-center justify-between px-4 pt-8 pb-6 border border-gray-200 border-solid"},ve={class:"flex ml-3",role:"group","aria-label":"First group"},xe={class:"px-4 py-1 pb-2 mb-2 text-sm border-b border-gray-200 border-solid"},we={class:"px-2"},ke={class:"px-2"},Ie={class:"px-2"},Fe={key:0,class:"h-full pb-32 overflow-y-scroll border-l border-gray-200 border-solid"},Ve={class:"flex-2"},Pe={class:"mb-1 text-xs not-italic font-medium leading-5 text-gray-500 capitalize"},Se={class:"mb-1 text-xs not-italic font-medium leading-5 text-gray-500 capitalize"},je={class:"flex-1 whitespace-nowrap right"},Te={class:"text-sm text-right text-gray-500 non-italic"},De={class:"flex justify-center p-4 items-center"},$e={key:0,class:"flex justify-center px-4 mt-5 text-sm text-gray-600"},Me={class:"flex flex-col min-h-0 mt-8 overflow-hidden",style:{height:"75vh"}},ze=["src"],Re={setup(Ne){const h=te();ae();const{t:w}=se();m(null),m(null);let f=N({});m(null);let s=N({orderBy:null,orderByField:null,searchText:null}),k=m(!1),L=m(!1);m(!1);let b=m(!1),v=m(!1);oe("utils");const i=_e(),U=ue(),A=me(),E=g(()=>f.payment_number||""),S=g(()=>s.orderBy==="asc"||s.orderBy==null);g(()=>S.value?w("general.ascending"):w("general.descending"));const j=g(()=>f.unique_hash?`/payments/pdf/${f.unique_hash}`:!1);g(()=>{var a;return ne((a=i==null?void 0:i.selectedPayment)==null?void 0:a.payment_date).format("YYYY/MM/DD")}),re(h,()=>{T()}),R(),T(),u=le.exports.debounce(u,500);function Y(a){return h.params.id==a}fe();async function R(){b.value=!0,await i.fetchPayments({limit:"all"}),b.value=!1,setTimeout(()=>{G()},500)}async function T(){if(!h.params.id)return;v.value=!0;let a=await i.fetchPayment(h.params.id);a.data&&(v.value=!1,Object.assign(f,a.data.data))}function G(){const a=document.getElementById(`payment-${h.params.id}`);a&&(a.scrollIntoView({behavior:"smooth"}),a.classList.add("shake"))}async function u(){let a={};s.searchText!==""&&s.searchText!==null&&s.searchText!==void 0&&(a.search=s.searchText),s.orderBy!==null&&s.orderBy!==void 0&&(a.orderBy=s.orderBy),s.orderByField!==null&&s.orderByField!==void 0&&(a.orderByField=s.orderByField),k.value=!0;try{let l=await i.searchPayment(a);k.value=!1,l.data.data&&(i.payments=l.data.data)}catch{k.value=!1}}function q(){return s.orderBy==="asc"?(s.orderBy="desc",u(),!0):(s.orderBy="asc",u(),!0)}async function H(){U.openModal({title:w("payments.send_payment"),componentName:"SendPaymentModal",id:f.id,data:f,variant:"lg"})}return(a,l)=>{const I=d("BaseButton"),O=d("BasePageHeader"),x=d("BaseIcon"),J=d("BaseInput"),F=d("BaseRadio"),V=d("BaseInputGroup"),P=d("BaseDropdownItem"),K=d("BaseDropdown"),Q=d("BaseText"),W=d("BaseFormatMoney"),X=d("router-link"),Z=d("BasePage");return c(),p(C,null,[o(ye),o(Z,{class:"xl:pl-96"},{default:n(()=>{var D,$;return[o(O,{title:t(E)},{actions:n(()=>[t(A).hasAbilities(t(pe).SEND_PAYMENT)?(c(),B(I,{key:0,disabled:t(L),"content-loading":t(v),variant:"primary",onClick:H},{default:n(()=>[de(_(a.$t("payments.send_payment_receipt")),1)]),_:1},8,["disabled","content-loading"])):y("",!0),o(he,{"content-loading":t(v),class:"ml-3",row:t(f)},null,8,["content-loading","row"])]),_:1},8,["title"]),r("div",ge,[r("div",Be,[o(J,{modelValue:t(s).searchText,"onUpdate:modelValue":l[0]||(l[0]=e=>t(s).searchText=e),placeholder:a.$t("general.search"),type:"text",onInput:u},{default:n(()=>[o(x,{name:"SearchIcon",class:"h-5"})]),_:1},8,["modelValue","placeholder"]),r("div",ve,[o(K,{position:"bottom-start","width-class":"w-50","position-class":"left-0"},{activator:n(()=>[o(I,{variant:"gray"},{default:n(()=>[o(x,{name:"FilterIcon"})]),_:1})]),default:n(()=>[r("div",xe,_(a.$t("general.sort_by")),1),r("div",we,[o(P,{class:"pt-3 rounded-md hover:rounded-md"},{default:n(()=>[o(V,{class:"-mt-3 font-normal"},{default:n(()=>[o(F,{id:"filter_invoice_number",modelValue:t(s).orderByField,"onUpdate:modelValue":[l[1]||(l[1]=e=>t(s).orderByField=e),u],label:a.$t("invoices.title"),size:"sm",name:"filter",value:"invoice_number"},null,8,["modelValue","label"])]),_:1})]),_:1})]),r("div",ke,[o(P,{class:"pt-3 rounded-md hover:rounded-md"},{default:n(()=>[o(V,{class:"-mt-3 font-normal"},{default:n(()=>[o(F,{modelValue:t(s).orderByField,"onUpdate:modelValue":[l[2]||(l[2]=e=>t(s).orderByField=e),u],label:a.$t("payments.date"),size:"sm",name:"filter",value:"payment_date"},null,8,["modelValue","label"])]),_:1})]),_:1})]),r("div",Ie,[o(P,{class:"pt-3 rounded-md hover:rounded-md"},{default:n(()=>[o(V,{class:"-mt-3 font-normal"},{default:n(()=>[o(F,{id:"filter_payment_number",modelValue:t(s).orderByField,"onUpdate:modelValue":[l[3]||(l[3]=e=>t(s).orderByField=e),u],label:a.$t("payments.payment_number"),size:"sm",name:"filter",value:"payment_number"},null,8,["modelValue","label"])]),_:1})]),_:1})])]),_:1}),o(I,{class:"ml-1",size:"md",variant:"gray",onClick:q},{default:n(()=>[t(S)?(c(),B(x,{key:0,name:"SortAscendingIcon"})):(c(),B(x,{key:1,name:"SortDescendingIcon"}))]),_:1})])]),t(i)&&t(i).payments?(c(),p("div",Fe,[(c(!0),p(C,null,ie(t(i).payments,(e,ee)=>(c(),p("div",{key:ee},[e&&!t(b)?(c(),B(X,{key:0,id:"payment-"+e.id,to:`/admin/payments/${e.id}/view`,class:ce(["flex justify-between p-4 items-center cursor-pointer hover:bg-gray-100 border-l-4 border-transparent",{"bg-gray-100 border-l-4 border-primary-500 border-solid":Y(e.id)}]),style:{"border-bottom":"1px solid rgba(185, 193, 209, 0.41)"}},{default:n(()=>{var M,z;return[r("div",Ve,[o(Q,{text:(M=e==null?void 0:e.customer)==null?void 0:M.name,length:30,class:"pr-2 mb-2 text-sm not-italic font-normal leading-5 text-black capitalize truncate"},null,8,["text"]),r("div",Pe,_(e==null?void 0:e.payment_number),1),r("div",Se,_(e==null?void 0:e.invoice_number),1)]),r("div",je,[o(W,{class:"block mb-2 text-xl not-italic font-semibold leading-8 text-right text-gray-900",amount:e==null?void 0:e.amount,currency:(z=e.customer)==null?void 0:z.currency},null,8,["amount","currency"]),r("div",Te,_(e.formatted_payment_date),1)])]}),_:2},1032,["id","to","class"])):y("",!0)]))),128)),r("div",De,[t(b)?(c(),B(be,{key:0,class:"h-6 m-1 animate-spin text-primary-400"})):y("",!0)]),!(($=(D=t(i))==null?void 0:D.payments)==null?void 0:$.length)&&!t(b)?(c(),p("p",$e,_(a.$t("payments.no_matching_payments")),1)):y("",!0)])):y("",!0)]),r("div",Me,[t(j)?(c(),p("iframe",{key:0,src:t(j),class:"flex-1 border border-gray-400 border-solid rounded-md"},null,8,ze)):y("",!0)])]}),_:1})],64)}}};export{Re as default}; diff --git a/public/build/assets/auth.4644c288.js b/public/build/assets/auth.0e030165.js similarity index 97% rename from public/build/assets/auth.4644c288.js rename to public/build/assets/auth.0e030165.js index a3ebdce62..6492f14e9 100644 --- a/public/build/assets/auth.4644c288.js +++ b/public/build/assets/auth.0e030165.js @@ -1 +1 @@ -import{a as l}from"./vendor.01d0adc5.js";import{u as n,v as m}from"./main.75722495.js";const u=e=>{const t=p(),a=n();if(!e.response)a.showNotification({type:"error",message:"Please check your internet connection or wait until servers are back online."});else if(e.response.data&&(e.response.statusText==="Unauthorized"||e.response.data===" Unauthorized.")){const s=e.response.data.message?e.response.data.message:"Unauthorized";i(s),t.logout()}else if(e.response.data.errors){const s=JSON.parse(JSON.stringify(e.response.data.errors));for(const o in s)d(s[o][0])}else e.response.data.error?d(e.response.data.error):d(e.response.data.message)},d=e=>{switch(e){case"These credentials do not match our records.":i("errors.login_invalid_credentials");break;case"The email has already been taken.":i("validation.email_already_taken");break;case"invalid_credentials":i("errors.invalid_credentials");break;case"Email could not be sent to this email address.":i("errors.email_could_not_be_sent");break;case"not_allowed":i("errors.not_allowed");break;default:i(e,!1);break}},i=(e,t=!0)=>{const{global:a}=window.i18n;n().showNotification({type:"error",message:t?a.t(e):e})},{defineStore:f}=window.pinia,{global:r}=window.i18n,p=f({id:"customerAuth",state:()=>({loginData:{email:"",password:"",device_name:"xyz",company:""}}),actions:{login(e){const t=n(!0);return new Promise((a,s)=>{l.get("/sanctum/csrf-cookie").then(o=>{o&&l.post(`/${e.company}/customer/login`,e).then(c=>{t.showNotification({type:"success",message:r.tm("general.login_successfully")}),a(c),setTimeout(()=>{this.loginData.email="",this.loginData.password=""},1e3)}).catch(c=>{u(c),s(c)})})})},forgotPassword(e){const t=n(!0);return new Promise((a,s)=>{l.post(`/api/v1/${e.company}/customer/auth/password/email`,e).then(o=>{o.data&&t.showNotification({type:"success",message:r.tm("general.send_mail_successfully")}),a(o)}).catch(o=>{o.response&&o.response.status===403?t.showNotification({type:"error",message:r.tm("errors.email_could_not_be_sent")}):u(o),s(o)})})},resetPassword(e,t){return new Promise((a,s)=>{l.post(`/api/v1/${t}/customer/auth/reset/password`,e).then(o=>{o.data&&n(!0).showNotification({type:"success",message:r.tm("login.password_reset_successfully")}),a(o)}).catch(o=>{o.response&&o.response.status===403&¬ificationStore.showNotification({type:"error",message:r.tm("validation.email_incorrect")}),s(o)})})},logout(e){return new Promise((t,a)=>{l.get(`${e}/customer/logout`).then(s=>{n().showNotification({type:"success",message:r.tm("general.logged_out_successfully")}),m.push({name:"customer.login"}),t(s)}).catch(s=>{u(s),a(s)})})}}});export{u as h,p as u}; +import{a as l}from"./vendor.01d0adc5.js";import{u as n,v as m}from"./main.24f7a84b.js";const u=e=>{const t=p(),a=n();if(!e.response)a.showNotification({type:"error",message:"Please check your internet connection or wait until servers are back online."});else if(e.response.data&&(e.response.statusText==="Unauthorized"||e.response.data===" Unauthorized.")){const s=e.response.data.message?e.response.data.message:"Unauthorized";i(s),t.logout()}else if(e.response.data.errors){const s=JSON.parse(JSON.stringify(e.response.data.errors));for(const o in s)d(s[o][0])}else e.response.data.error?d(e.response.data.error):d(e.response.data.message)},d=e=>{switch(e){case"These credentials do not match our records.":i("errors.login_invalid_credentials");break;case"The email has already been taken.":i("validation.email_already_taken");break;case"invalid_credentials":i("errors.invalid_credentials");break;case"Email could not be sent to this email address.":i("errors.email_could_not_be_sent");break;case"not_allowed":i("errors.not_allowed");break;default:i(e,!1);break}},i=(e,t=!0)=>{const{global:a}=window.i18n;n().showNotification({type:"error",message:t?a.t(e):e})},{defineStore:f}=window.pinia,{global:r}=window.i18n,p=f({id:"customerAuth",state:()=>({loginData:{email:"",password:"",device_name:"xyz",company:""}}),actions:{login(e){const t=n(!0);return new Promise((a,s)=>{l.get("/sanctum/csrf-cookie").then(o=>{o&&l.post(`/${e.company}/customer/login`,e).then(c=>{t.showNotification({type:"success",message:r.tm("general.login_successfully")}),a(c),setTimeout(()=>{this.loginData.email="",this.loginData.password=""},1e3)}).catch(c=>{u(c),s(c)})})})},forgotPassword(e){const t=n(!0);return new Promise((a,s)=>{l.post(`/api/v1/${e.company}/customer/auth/password/email`,e).then(o=>{o.data&&t.showNotification({type:"success",message:r.tm("general.send_mail_successfully")}),a(o)}).catch(o=>{o.response&&o.response.status===403?t.showNotification({type:"error",message:r.tm("errors.email_could_not_be_sent")}):u(o),s(o)})})},resetPassword(e,t){return new Promise((a,s)=>{l.post(`/api/v1/${t}/customer/auth/reset/password`,e).then(o=>{o.data&&n(!0).showNotification({type:"success",message:r.tm("login.password_reset_successfully")}),a(o)}).catch(o=>{o.response&&o.response.status===403&¬ificationStore.showNotification({type:"error",message:r.tm("validation.email_incorrect")}),s(o)})})},logout(e){return new Promise((t,a)=>{l.get(`${e}/customer/logout`).then(s=>{n().showNotification({type:"success",message:r.tm("general.logged_out_successfully")}),m.push({name:"customer.login"}),t(s)}).catch(s=>{u(s),a(s)})})}}});export{u as h,p as u}; diff --git a/public/build/assets/category.4b37f0ed.js b/public/build/assets/category.5ef2a7e7.js similarity index 83% rename from public/build/assets/category.4b37f0ed.js rename to public/build/assets/category.5ef2a7e7.js index 8bc838984..0e1b74235 100644 --- a/public/build/assets/category.4b37f0ed.js +++ b/public/build/assets/category.5ef2a7e7.js @@ -1 +1 @@ -import{a as o,d as f}from"./vendor.01d0adc5.js";import{h as s,u as r}from"./main.75722495.js";const y=(g=!1)=>{const h=g?window.pinia.defineStore:f,{global:n}=window.i18n;return h({id:"category",state:()=>({categories:[],currentCategory:{id:null,name:"",description:""}}),getters:{isEdit:t=>!!t.currentCategory.id},actions:{fetchCategories(t){return new Promise((a,i)=>{o.get("/api/v1/categories",{params:t}).then(e=>{this.categories=e.data.data,a(e)}).catch(e=>{s(e),i(e)})})},fetchCategory(t){return new Promise((a,i)=>{o.get(`/api/v1/categories/${t}`).then(e=>{this.currentCategory=e.data.data,a(e)}).catch(e=>{s(e),i(e)})})},addCategory(t){return new Promise((a,i)=>{o.post("/api/v1/categories",t).then(e=>{this.categories.push(e.data.data),r().showNotification({type:"success",message:n.t("settings.expense_category.created_message")}),a(e)}).catch(e=>{s(e),i(e)})})},updateCategory(t){return new Promise((a,i)=>{o.put(`/api/v1/categories/${t.id}`,t).then(e=>{if(e.data){let c=this.categories.findIndex(u=>u.id===e.data.data.id);this.categories[c]=t.categories,r().showNotification({type:"success",message:n.t("settings.expense_category.updated_message")})}a(e)}).catch(e=>{s(e),i(e)})})},deleteCategory(t){return new Promise(a=>{o.delete(`/api/v1/categories/${t}`).then(i=>{let e=this.categories.findIndex(d=>d.id===t);this.categories.splice(e,1),r().showNotification({type:"success",message:n.t("settings.expense_category.deleted_message")}),a(i)}).catch(i=>{s(i),console.error(i)})})}}})()};export{y as u}; +import{a as o,d as u}from"./vendor.01d0adc5.js";import{h as s,u as r}from"./main.24f7a84b.js";const y=(g=!1)=>{const h=g?window.pinia.defineStore:u,{global:n}=window.i18n;return h({id:"category",state:()=>({categories:[],currentCategory:{id:null,name:"",description:""}}),getters:{isEdit:t=>!!t.currentCategory.id},actions:{fetchCategories(t){return new Promise((a,i)=>{o.get("/api/v1/categories",{params:t}).then(e=>{this.categories=e.data.data,a(e)}).catch(e=>{s(e),i(e)})})},fetchCategory(t){return new Promise((a,i)=>{o.get(`/api/v1/categories/${t}`).then(e=>{this.currentCategory=e.data.data,a(e)}).catch(e=>{s(e),i(e)})})},addCategory(t){return new Promise((a,i)=>{o.post("/api/v1/categories",t).then(e=>{this.categories.push(e.data.data),r().showNotification({type:"success",message:n.t("settings.expense_category.created_message")}),a(e)}).catch(e=>{s(e),i(e)})})},updateCategory(t){return new Promise((a,i)=>{o.put(`/api/v1/categories/${t.id}`,t).then(e=>{if(e.data){let c=this.categories.findIndex(f=>f.id===e.data.data.id);this.categories[c]=t.categories,r().showNotification({type:"success",message:n.t("settings.expense_category.updated_message")})}a(e)}).catch(e=>{s(e),i(e)})})},deleteCategory(t){return new Promise(a=>{o.delete(`/api/v1/categories/${t}`).then(i=>{let e=this.categories.findIndex(d=>d.id===t);this.categories.splice(e,1),r().showNotification({type:"success",message:n.t("settings.expense_category.deleted_message")}),a(i)}).catch(i=>{s(i),console.error(i)})})}}})()};export{y as u}; diff --git a/public/build/assets/disk.518ebc4b.js b/public/build/assets/disk.62fb5cf1.js similarity index 96% rename from public/build/assets/disk.518ebc4b.js rename to public/build/assets/disk.62fb5cf1.js index 3a7f5dc3b..9815f95e4 100644 --- a/public/build/assets/disk.518ebc4b.js +++ b/public/build/assets/disk.62fb5cf1.js @@ -1 +1 @@ -import{a,d as l}from"./vendor.01d0adc5.js";import{h as o,u as r}from"./main.75722495.js";const v=(k=!1)=>{const f=k?window.pinia.defineStore:l,{global:n}=window.i18n;return f({id:"disk",state:()=>({disks:[],diskDrivers:[],diskConfigData:null,selected_driver:"local",doSpaceDiskConfig:{name:"",selected_driver:"doSpaces",key:"",secret:"",region:"",bucket:"",endpoint:"",root:""},dropBoxDiskConfig:{name:"",selected_driver:"dropbox",token:"",key:"",secret:"",app:""},localDiskConfig:{name:"",selected_driver:"local",root:""},s3DiskConfigData:{name:"",selected_driver:"s3",key:"",secret:"",region:"",bucket:"",root:""}}),getters:{getDiskDrivers:t=>t.diskDrivers},actions:{fetchDiskEnv(t){return new Promise((s,e)=>{a.get(`/api/v1/disks/${t.disk}`).then(i=>{s(i)}).catch(i=>{o(i),e(i)})})},fetchDisks(t){return new Promise((s,e)=>{a.get("/api/v1/disks",{params:t}).then(i=>{this.disks=i.data.data,s(i)}).catch(i=>{o(i),e(i)})})},fetchDiskDrivers(){return new Promise((t,s)=>{a.get("/api/v1/disk/drivers").then(e=>{this.diskConfigData=e.data,this.diskDrivers=e.data.drivers,t(e)}).catch(e=>{o(e),s(e)})})},deleteFileDisk(t){return new Promise((s,e)=>{a.delete(`/api/v1/disks/${t}`).then(i=>{if(i.data.success){let d=this.disks.findIndex(c=>c.id===t);this.disks.splice(d,1),r().showNotification({type:"success",message:n.t("settings.disk.deleted_message")})}s(i)}).catch(i=>{o(i),e(i)})})},updateDisk(t){return new Promise((s,e)=>{a.put(`/api/v1/disks/${t.id}`,t).then(i=>{if(i.data){let d=this.disks.findIndex(c=>c.id===i.data.data);this.disks[d]=t.disks,r().showNotification({type:"success",message:n.t("settings.disk.success_set_default_disk")})}s(i)}).catch(i=>{o(i),e(i)})})},createDisk(t){return new Promise((s,e)=>{a.post("/api/v1/disks",t).then(i=>{i.data&&r().showNotification({type:"success",message:n.t("settings.disk.success_create")}),this.disks.push(i.data),s(i)}).catch(i=>{o(i),e(i)})})}}})()};export{v as u}; +import{a,d as l}from"./vendor.01d0adc5.js";import{h as o,u as r}from"./main.24f7a84b.js";const v=(k=!1)=>{const f=k?window.pinia.defineStore:l,{global:n}=window.i18n;return f({id:"disk",state:()=>({disks:[],diskDrivers:[],diskConfigData:null,selected_driver:"local",doSpaceDiskConfig:{name:"",selected_driver:"doSpaces",key:"",secret:"",region:"",bucket:"",endpoint:"",root:""},dropBoxDiskConfig:{name:"",selected_driver:"dropbox",token:"",key:"",secret:"",app:""},localDiskConfig:{name:"",selected_driver:"local",root:""},s3DiskConfigData:{name:"",selected_driver:"s3",key:"",secret:"",region:"",bucket:"",root:""}}),getters:{getDiskDrivers:t=>t.diskDrivers},actions:{fetchDiskEnv(t){return new Promise((s,e)=>{a.get(`/api/v1/disks/${t.disk}`).then(i=>{s(i)}).catch(i=>{o(i),e(i)})})},fetchDisks(t){return new Promise((s,e)=>{a.get("/api/v1/disks",{params:t}).then(i=>{this.disks=i.data.data,s(i)}).catch(i=>{o(i),e(i)})})},fetchDiskDrivers(){return new Promise((t,s)=>{a.get("/api/v1/disk/drivers").then(e=>{this.diskConfigData=e.data,this.diskDrivers=e.data.drivers,t(e)}).catch(e=>{o(e),s(e)})})},deleteFileDisk(t){return new Promise((s,e)=>{a.delete(`/api/v1/disks/${t}`).then(i=>{if(i.data.success){let d=this.disks.findIndex(c=>c.id===t);this.disks.splice(d,1),r().showNotification({type:"success",message:n.t("settings.disk.deleted_message")})}s(i)}).catch(i=>{o(i),e(i)})})},updateDisk(t){return new Promise((s,e)=>{a.put(`/api/v1/disks/${t.id}`,t).then(i=>{if(i.data){let d=this.disks.findIndex(c=>c.id===i.data.data);this.disks[d]=t.disks,r().showNotification({type:"success",message:n.t("settings.disk.success_set_default_disk")})}s(i)}).catch(i=>{o(i),e(i)})})},createDisk(t){return new Promise((s,e)=>{a.post("/api/v1/disks",t).then(i=>{i.data&&r().showNotification({type:"success",message:n.t("settings.disk.success_create")}),this.disks.push(i.data),s(i)}).catch(i=>{o(i),e(i)})})}}})()};export{v as u}; diff --git a/public/build/assets/estimate.e6573e64.js b/public/build/assets/estimate.d7337943.js similarity index 91% rename from public/build/assets/estimate.e6573e64.js rename to public/build/assets/estimate.d7337943.js index abca7f4ab..e3f66d98d 100644 --- a/public/build/assets/estimate.e6573e64.js +++ b/public/build/assets/estimate.d7337943.js @@ -1 +1 @@ -import{u as h}from"./main.75722495.js";import{a as n}from"./vendor.01d0adc5.js";import{h as r}from"./auth.4644c288.js";const{defineStore:u}=window.pinia,p=u({id:"customerEstimateStore",state:()=>({estimates:[],totalEstimates:0,selectedViewEstimate:[]}),actions:{fetchEstimate(s,e){return new Promise((a,i)=>{n.get(`/api/v1/${e}/customer/estimates`,{params:s}).then(t=>{this.estimates=t.data.data,this.totalEstimates=t.data.meta.estimateTotalCount,a(t)}).catch(t=>{r(t),i(t)})})},fetchViewEstimate(s,e){return new Promise((a,i)=>{n.get(`/api/v1/${e}/customer/estimates/${s.id}`,{params:s}).then(t=>{this.selectedViewEstimate=t.data.data,a(t)}).catch(t=>{r(t),i(t)})})},searchEstimate(s,e){return new Promise((a,i)=>{n.get(`/api/v1/${e}/customer/estimates`,{params:s}).then(t=>{this.estimates=t.data,a(t)}).catch(t=>{r(t),i(t)})})},acceptEstimate({slug:s,id:e,status:a}){return new Promise((i,t)=>{n.post(`/api/v1/${s}/customer/estimate/${e}/status`,{status:a}).then(o=>{let m=this.estimates.findIndex(c=>c.id===e);this.estimates[m]&&(this.estimates[m].status="ACCEPTED",h(!0).showNotification({type:"success",message:global.t("estimates.marked_as_accepted_message")})),i(o)}).catch(o=>{r(o),t(o)})})},rejectEstimate({slug:s,id:e,status:a}){return new Promise((i,t)=>{n.post(`/api/v1/${s}/customer/estimate/${e}/status`,{status:a}).then(o=>{let m=this.estimates.findIndex(c=>c.id===e);this.estimates[m]&&(this.estimates[m].status="REJECTED",h(!0).showNotification({type:"success",message:global.t("estimates.marked_as_rejected_message")})),i(o)}).catch(o=>{r(o),t(o)})})}}});export{p as u}; +import{u as h}from"./main.24f7a84b.js";import{a as n}from"./vendor.01d0adc5.js";import{h as r}from"./auth.0e030165.js";const{defineStore:u}=window.pinia,p=u({id:"customerEstimateStore",state:()=>({estimates:[],totalEstimates:0,selectedViewEstimate:[]}),actions:{fetchEstimate(s,e){return new Promise((a,i)=>{n.get(`/api/v1/${e}/customer/estimates`,{params:s}).then(t=>{this.estimates=t.data.data,this.totalEstimates=t.data.meta.estimateTotalCount,a(t)}).catch(t=>{r(t),i(t)})})},fetchViewEstimate(s,e){return new Promise((a,i)=>{n.get(`/api/v1/${e}/customer/estimates/${s.id}`,{params:s}).then(t=>{this.selectedViewEstimate=t.data.data,a(t)}).catch(t=>{r(t),i(t)})})},searchEstimate(s,e){return new Promise((a,i)=>{n.get(`/api/v1/${e}/customer/estimates`,{params:s}).then(t=>{this.estimates=t.data,a(t)}).catch(t=>{r(t),i(t)})})},acceptEstimate({slug:s,id:e,status:a}){return new Promise((i,t)=>{n.post(`/api/v1/${s}/customer/estimate/${e}/status`,{status:a}).then(o=>{let m=this.estimates.findIndex(c=>c.id===e);this.estimates[m]&&(this.estimates[m].status="ACCEPTED",h(!0).showNotification({type:"success",message:global.t("estimates.marked_as_accepted_message")})),i(o)}).catch(o=>{r(o),t(o)})})},rejectEstimate({slug:s,id:e,status:a}){return new Promise((i,t)=>{n.post(`/api/v1/${s}/customer/estimate/${e}/status`,{status:a}).then(o=>{let m=this.estimates.findIndex(c=>c.id===e);this.estimates[m]&&(this.estimates[m].status="REJECTED",h(!0).showNotification({type:"success",message:global.t("estimates.marked_as_rejected_message")})),i(o)}).catch(o=>{r(o),t(o)})})}}});export{p as u}; diff --git a/public/build/assets/exchange-rate.dffa79b6.js b/public/build/assets/exchange-rate.3b3d35e2.js similarity index 96% rename from public/build/assets/exchange-rate.dffa79b6.js rename to public/build/assets/exchange-rate.3b3d35e2.js index 0d2ba1416..f6cdb63ba 100644 --- a/public/build/assets/exchange-rate.dffa79b6.js +++ b/public/build/assets/exchange-rate.3b3d35e2.js @@ -1 +1 @@ -import{a as i,d as g}from"./vendor.01d0adc5.js";import{h as c,u as v}from"./main.75722495.js";const f=(u=!1)=>{const o=u?window.pinia.defineStore:g,{global:n}=window.i18n,s=v();return o({id:"exchange-rate",state:()=>({supportedCurrencies:[],drivers:[],activeUsedCurrencies:[],providers:[],currencies:null,currentExchangeRate:{id:null,driver:"",key:"",active:!0,currencies:[]},currencyConverter:{type:"",url:""},bulkCurrencies:[]}),getters:{isEdit:r=>!!r.currentExchangeRate.id},actions:{fetchProviders(r){return new Promise((a,t)=>{i.get("/api/v1/exchange-rate-providers",{params:r}).then(e=>{this.providers=e.data.data,a(e)}).catch(e=>{c(e),t(e)})})},fetchDefaultProviders(){return new Promise((r,a)=>{i.get("/api/v1/config?key=exchange_rate_drivers").then(t=>{this.drivers=t.data.exchange_rate_drivers,r(t)}).catch(t=>{c(t),a(t)})})},fetchProvider(r){return new Promise((a,t)=>{i.get(`/api/v1/exchange-rate-providers/${r}`).then(e=>{this.currentExchangeRate=e.data.data,this.currencyConverter=e.data.data.driver_config,a(e)}).catch(e=>{c(e),t(e)})})},addProvider(r){return new Promise((a,t)=>{i.post("/api/v1/exchange-rate-providers",r).then(e=>{s.showNotification({type:"success",message:n.t("settings.exchange_rate.created_message")}),a(e)}).catch(e=>{c(e),t(e)})})},updateProvider(r){return new Promise((a,t)=>{i.put(`/api/v1/exchange-rate-providers/${r.id}`,r).then(e=>{s.showNotification({type:"success",message:n.t("settings.exchange_rate.updated_message")}),a(e)}).catch(e=>{c(e),t(e)})})},deleteExchangeRate(r){return new Promise((a,t)=>{i.delete(`/api/v1/exchange-rate-providers/${r}`).then(e=>{let d=this.drivers.findIndex(h=>h.id===r);this.drivers.splice(d,1),e.data.success?s.showNotification({type:"success",message:n.t("settings.exchange_rate.deleted_message")}):s.showNotification({type:"error",message:n.t("settings.exchange_rate.error")}),a(e)}).catch(e=>{c(e),t(e)})})},fetchCurrencies(r){return new Promise((a,t)=>{i.get("/api/v1/supported-currencies",{params:r}).then(e=>{this.supportedCurrencies=e.data.supportedCurrencies,a(e)}).catch(e=>{c(e),t(e)})})},fetchActiveCurrency(r){return new Promise((a,t)=>{i.get("/api/v1/used-currencies",{params:r}).then(e=>{this.activeUsedCurrencies=e.data.activeUsedCurrencies,a(e)}).catch(e=>{c(e),t(e)})})},fetchBulkCurrencies(){return new Promise((r,a)=>{i.get("/api/v1/currencies/used").then(t=>{this.bulkCurrencies=t.data.currencies.map(e=>(e.exchange_rate=null,e)),r(t)}).catch(t=>{c(t),a(t)})})},updateBulkExchangeRate(r){return new Promise((a,t)=>{i.post("/api/v1/currencies/bulk-update-exchange-rate",r).then(e=>{a(e)}).catch(e=>{c(e),t(e)})})},getCurrentExchangeRate(r){return new Promise((a,t)=>{i.get(`/api/v1/currencies/${r}/exchange-rate`).then(e=>{a(e)}).catch(e=>{t(e)})})},getCurrencyConverterServers(){return new Promise((r,a)=>{i.get("/api/v1/config?key=currency_converter_servers").then(t=>{r(t)}).catch(t=>{c(t),a(t)})})},checkForActiveProvider(r){return new Promise((a,t)=>{i.get(`/api/v1/currencies/${r}/active-provider`).then(e=>{a(e)}).catch(e=>{t(e)})})}}})()};export{f as u}; +import{a as i,d as g}from"./vendor.01d0adc5.js";import{h as c,u as v}from"./main.24f7a84b.js";const x=(u=!1)=>{const o=u?window.pinia.defineStore:g,{global:n}=window.i18n,s=v();return o({id:"exchange-rate",state:()=>({supportedCurrencies:[],drivers:[],activeUsedCurrencies:[],providers:[],currencies:null,currentExchangeRate:{id:null,driver:"",key:"",active:!0,currencies:[]},currencyConverter:{type:"",url:""},bulkCurrencies:[]}),getters:{isEdit:r=>!!r.currentExchangeRate.id},actions:{fetchProviders(r){return new Promise((a,t)=>{i.get("/api/v1/exchange-rate-providers",{params:r}).then(e=>{this.providers=e.data.data,a(e)}).catch(e=>{c(e),t(e)})})},fetchDefaultProviders(){return new Promise((r,a)=>{i.get("/api/v1/config?key=exchange_rate_drivers").then(t=>{this.drivers=t.data.exchange_rate_drivers,r(t)}).catch(t=>{c(t),a(t)})})},fetchProvider(r){return new Promise((a,t)=>{i.get(`/api/v1/exchange-rate-providers/${r}`).then(e=>{this.currentExchangeRate=e.data.data,this.currencyConverter=e.data.data.driver_config,a(e)}).catch(e=>{c(e),t(e)})})},addProvider(r){return new Promise((a,t)=>{i.post("/api/v1/exchange-rate-providers",r).then(e=>{s.showNotification({type:"success",message:n.t("settings.exchange_rate.created_message")}),a(e)}).catch(e=>{c(e),t(e)})})},updateProvider(r){return new Promise((a,t)=>{i.put(`/api/v1/exchange-rate-providers/${r.id}`,r).then(e=>{s.showNotification({type:"success",message:n.t("settings.exchange_rate.updated_message")}),a(e)}).catch(e=>{c(e),t(e)})})},deleteExchangeRate(r){return new Promise((a,t)=>{i.delete(`/api/v1/exchange-rate-providers/${r}`).then(e=>{let d=this.drivers.findIndex(h=>h.id===r);this.drivers.splice(d,1),e.data.success?s.showNotification({type:"success",message:n.t("settings.exchange_rate.deleted_message")}):s.showNotification({type:"error",message:n.t("settings.exchange_rate.error")}),a(e)}).catch(e=>{c(e),t(e)})})},fetchCurrencies(r){return new Promise((a,t)=>{i.get("/api/v1/supported-currencies",{params:r}).then(e=>{this.supportedCurrencies=e.data.supportedCurrencies,a(e)}).catch(e=>{c(e),t(e)})})},fetchActiveCurrency(r){return new Promise((a,t)=>{i.get("/api/v1/used-currencies",{params:r}).then(e=>{this.activeUsedCurrencies=e.data.activeUsedCurrencies,a(e)}).catch(e=>{c(e),t(e)})})},fetchBulkCurrencies(){return new Promise((r,a)=>{i.get("/api/v1/currencies/used").then(t=>{this.bulkCurrencies=t.data.currencies.map(e=>(e.exchange_rate=null,e)),r(t)}).catch(t=>{c(t),a(t)})})},updateBulkExchangeRate(r){return new Promise((a,t)=>{i.post("/api/v1/currencies/bulk-update-exchange-rate",r).then(e=>{a(e)}).catch(e=>{c(e),t(e)})})},getCurrentExchangeRate(r){return new Promise((a,t)=>{i.get(`/api/v1/currencies/${r}/exchange-rate`).then(e=>{a(e)}).catch(e=>{t(e)})})},getCurrencyConverterServers(){return new Promise((r,a)=>{i.get("/api/v1/config?key=currency_converter_servers").then(t=>{r(t)}).catch(t=>{c(t),a(t)})})},checkForActiveProvider(r){return new Promise((a,t)=>{i.get(`/api/v1/currencies/${r}/active-provider`).then(e=>{a(e)}).catch(e=>{t(e)})})}}})()};export{x as u}; diff --git a/public/build/assets/expense.e270a61c.js b/public/build/assets/expense.6f364fe1.js similarity index 98% rename from public/build/assets/expense.e270a61c.js rename to public/build/assets/expense.6f364fe1.js index 89ab9b725..407520e99 100644 --- a/public/build/assets/expense.e270a61c.js +++ b/public/build/assets/expense.6f364fe1.js @@ -1 +1 @@ -var _=Object.defineProperty;var u=Object.getOwnPropertySymbols;var w=Object.prototype.hasOwnProperty,y=Object.prototype.propertyIsEnumerable;var f=(l,c,a)=>c in l?_(l,c,{enumerable:!0,configurable:!0,writable:!0,value:a}):l[c]=a,x=(l,c)=>{for(var a in c||(c={}))w.call(c,a)&&f(l,a,c[a]);if(u)for(var a of u(c))y.call(c,a)&&f(l,a,c[a]);return l};import{I as F,a as d,d as S}from"./vendor.01d0adc5.js";import{h as o,s as m,u as r}from"./main.75722495.js";var E={expense_category_id:null,expense_date:F().format("YYYY-MM-DD"),amount:100,notes:"",attachment_receipt:null,customer_id:"",currency_id:"",payment_method_id:"",receiptFiles:[],customFields:[],fields:[],in_use:!1,selectedCurrency:null};const D=(l=!1)=>{const c=l?window.pinia.defineStore:S,{global:a}=window.i18n;return c({id:"expense",state:()=>({expenses:[],totalExpenses:0,selectAllField:!1,selectedExpenses:[],paymentModes:[],showExchangeRate:!1,currentExpense:x({},E)}),getters:{getCurrentExpense:t=>t.currentExpense,getSelectedExpenses:t=>t.selectedExpenses},actions:{resetCurrentExpenseData(){this.currentExpense=x({},E)},fetchExpenses(t){return new Promise((n,i)=>{d.get("/api/v1/expenses",{params:t}).then(e=>{this.expenses=e.data.data,this.totalExpenses=e.data.meta.expense_total_count,n(e)}).catch(e=>{o(e),i(e)})})},fetchExpense(t){return new Promise((n,i)=>{d.get(`/api/v1/expenses/${t}`).then(e=>{e.data&&(Object.assign(this.currentExpense,e.data.data),this.currentExpense.selectedCurrency=e.data.data.currency,e.data.data.attachment_receipt?m.isImageFile(e.data.data.attachment_receipt_meta.mime_type)?this.currentExpense.receiptFiles=[{image:`/expenses/${t}/receipt`}]:this.currentExpense.receiptFiles=[{type:"document",name:e.data.data.attachment_receipt_meta.file_name}]:this.currentExpense.receiptFiles=[]),n(e)}).catch(e=>{o(e),i(e)})})},addExpense(t){const n=m.toFormData(t);return new Promise((i,e)=>{d.post("/api/v1/expenses",n).then(s=>{this.expenses.push(s.data),r().showNotification({type:"success",message:a.t("expenses.created_message")}),i(s)}).catch(s=>{o(s),e(s)})})},updateExpense({id:t,data:n}){const i=r(),e=m.toFormData(n);return e.append("_method","PUT"),new Promise(s=>{d.post(`/api/v1/expenses/${t}`,e).then(p=>{let h=this.expenses.findIndex(g=>g.id===p.data.id);this.expenses[h]=n.expense,i.showNotification({type:"success",message:a.t("expenses.updated_message")}),s(p)})}).catch(s=>{o(s),reject(s)})},setSelectAllState(t){this.selectAllField=t},selectExpense(t){this.selectedExpenses=t,this.selectedExpenses.length===this.expenses.length?this.selectAllField=!0:this.selectAllField=!1},selectAllExpenses(t){if(this.selectedExpenses.length===this.expenses.length)this.selectedExpenses=[],this.selectAllField=!1;else{let n=this.expenses.map(i=>i.id);this.selectedExpenses=n,this.selectAllField=!0}},deleteExpense(t){const n=r();return new Promise((i,e)=>{d.post("/api/v1/expenses/delete",t).then(s=>{let p=this.expenses.findIndex(h=>h.id===t);this.expenses.splice(p,1),n.showNotification({type:"success",message:a.tc("expenses.deleted_message",1)}),i(s)}).catch(s=>{o(s),e(s)})})},deleteMultipleExpenses(){const t=r();return new Promise((n,i)=>{d.post("/api/v1/expenses/delete",{ids:this.selectedExpenses}).then(e=>{this.selectedExpenses.forEach(s=>{let p=this.expenses.findIndex(h=>h.id===s.id);this.expenses.splice(p,1)}),t.showNotification({type:"success",message:a.tc("expenses.deleted_message",2)}),n(e)}).catch(e=>{o(e),i(e)})})},fetchPaymentModes(t){return new Promise((n,i)=>{d.get("/api/v1/payment-methods",{params:t}).then(e=>{this.paymentModes=e.data.data,n(e)}).catch(e=>{o(e),i(e)})})}}})()};export{D as u}; +var _=Object.defineProperty;var u=Object.getOwnPropertySymbols;var w=Object.prototype.hasOwnProperty,y=Object.prototype.propertyIsEnumerable;var f=(l,c,a)=>c in l?_(l,c,{enumerable:!0,configurable:!0,writable:!0,value:a}):l[c]=a,x=(l,c)=>{for(var a in c||(c={}))w.call(c,a)&&f(l,a,c[a]);if(u)for(var a of u(c))y.call(c,a)&&f(l,a,c[a]);return l};import{I as F,a as d,d as S}from"./vendor.01d0adc5.js";import{h as o,s as m,u as r}from"./main.24f7a84b.js";var E={expense_category_id:null,expense_date:F().format("YYYY-MM-DD"),amount:100,notes:"",attachment_receipt:null,customer_id:"",currency_id:"",payment_method_id:"",receiptFiles:[],customFields:[],fields:[],in_use:!1,selectedCurrency:null};const D=(l=!1)=>{const c=l?window.pinia.defineStore:S,{global:a}=window.i18n;return c({id:"expense",state:()=>({expenses:[],totalExpenses:0,selectAllField:!1,selectedExpenses:[],paymentModes:[],showExchangeRate:!1,currentExpense:x({},E)}),getters:{getCurrentExpense:t=>t.currentExpense,getSelectedExpenses:t=>t.selectedExpenses},actions:{resetCurrentExpenseData(){this.currentExpense=x({},E)},fetchExpenses(t){return new Promise((n,i)=>{d.get("/api/v1/expenses",{params:t}).then(e=>{this.expenses=e.data.data,this.totalExpenses=e.data.meta.expense_total_count,n(e)}).catch(e=>{o(e),i(e)})})},fetchExpense(t){return new Promise((n,i)=>{d.get(`/api/v1/expenses/${t}`).then(e=>{e.data&&(Object.assign(this.currentExpense,e.data.data),this.currentExpense.selectedCurrency=e.data.data.currency,e.data.data.attachment_receipt?m.isImageFile(e.data.data.attachment_receipt_meta.mime_type)?this.currentExpense.receiptFiles=[{image:`/expenses/${t}/receipt`}]:this.currentExpense.receiptFiles=[{type:"document",name:e.data.data.attachment_receipt_meta.file_name}]:this.currentExpense.receiptFiles=[]),n(e)}).catch(e=>{o(e),i(e)})})},addExpense(t){const n=m.toFormData(t);return new Promise((i,e)=>{d.post("/api/v1/expenses",n).then(s=>{this.expenses.push(s.data),r().showNotification({type:"success",message:a.t("expenses.created_message")}),i(s)}).catch(s=>{o(s),e(s)})})},updateExpense({id:t,data:n}){const i=r(),e=m.toFormData(n);return e.append("_method","PUT"),new Promise(s=>{d.post(`/api/v1/expenses/${t}`,e).then(p=>{let h=this.expenses.findIndex(g=>g.id===p.data.id);this.expenses[h]=n.expense,i.showNotification({type:"success",message:a.t("expenses.updated_message")}),s(p)})}).catch(s=>{o(s),reject(s)})},setSelectAllState(t){this.selectAllField=t},selectExpense(t){this.selectedExpenses=t,this.selectedExpenses.length===this.expenses.length?this.selectAllField=!0:this.selectAllField=!1},selectAllExpenses(t){if(this.selectedExpenses.length===this.expenses.length)this.selectedExpenses=[],this.selectAllField=!1;else{let n=this.expenses.map(i=>i.id);this.selectedExpenses=n,this.selectAllField=!0}},deleteExpense(t){const n=r();return new Promise((i,e)=>{d.post("/api/v1/expenses/delete",t).then(s=>{let p=this.expenses.findIndex(h=>h.id===t);this.expenses.splice(p,1),n.showNotification({type:"success",message:a.tc("expenses.deleted_message",1)}),i(s)}).catch(s=>{o(s),e(s)})})},deleteMultipleExpenses(){const t=r();return new Promise((n,i)=>{d.post("/api/v1/expenses/delete",{ids:this.selectedExpenses}).then(e=>{this.selectedExpenses.forEach(s=>{let p=this.expenses.findIndex(h=>h.id===s.id);this.expenses.splice(p,1)}),t.showNotification({type:"success",message:a.tc("expenses.deleted_message",2)}),n(e)}).catch(e=>{o(e),i(e)})})},fetchPaymentModes(t){return new Promise((n,i)=>{d.get("/api/v1/payment-methods",{params:t}).then(e=>{this.paymentModes=e.data.data,n(e)}).catch(e=>{o(e),i(e)})})}}})()};export{D as u}; diff --git a/public/build/assets/global.08b6a984.js b/public/build/assets/global.ab8f317c.js similarity index 88% rename from public/build/assets/global.08b6a984.js rename to public/build/assets/global.ab8f317c.js index 9ae1d6c82..49d2cce40 100644 --- a/public/build/assets/global.08b6a984.js +++ b/public/build/assets/global.ab8f317c.js @@ -1 +1 @@ -var p=Object.defineProperty,g=Object.defineProperties;var f=Object.getOwnPropertyDescriptors;var c=Object.getOwnPropertySymbols;var S=Object.prototype.hasOwnProperty,y=Object.prototype.propertyIsEnumerable;var l=(e,a,t)=>a in e?p(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t,i=(e,a)=>{for(var t in a||(a={}))S.call(a,t)&&l(e,t,a[t]);if(c)for(var t of c(a))y.call(a,t)&&l(e,t,a[t]);return e},d=(e,a)=>g(e,f(a));import{h as r}from"./auth.4644c288.js";import{u as b}from"./main.75722495.js";import{a as u}from"./vendor.01d0adc5.js";var m={name:null,phone:null,address_street_1:null,address_street_2:null,city:null,state:null,country_id:null,zip:null,type:null};const{defineStore:w}=window.pinia,U=w({id:"customerUserStore",state:()=>({customers:[],userForm:{avatar:null,name:"",email:"",password:"",company:"",confirm_password:"",billing:i({},m),shipping:i({},m)}}),actions:{copyAddress(){this.userForm.shipping=d(i({},this.userForm.billing),{type:"shipping"})},fetchCurrentUser(){const e=h();return new Promise((a,t)=>{u.get(`/api/v1/${e.companySlug}/customer/me`).then(s=>{Object.assign(this.userForm,s.data.data),a(s)}).catch(s=>{r(s),t(s)})})},updateCurrentUser({data:e,message:a}){const t=h();return new Promise((s,o)=>{u.post(`/api/v1/${t.companySlug}/customer/profile`,e).then(n=>{this.userForm=n.data.data,t.currentUser=n.data.data,s(n),a&&b(!0).showNotification({type:"success",message:a})}).catch(n=>{r(n),o(n)})})}}}),{defineStore:_}=window.pinia,h=_({id:"CustomerPortalGlobalStore",state:()=>({languages:[],currency:null,isAppLoaded:!1,countries:[],getDashboardDataLoaded:!1,currentUser:null,companySlug:"",mainMenu:null,enabledModules:[]}),actions:{bootstrap(e){this.companySlug=e;const a=U();return new Promise((t,s)=>{u.get(`/api/v1/${e}/customer/bootstrap`).then(o=>{this.currentUser=o.data.data,this.mainMenu=o.data.meta.menu,this.currency=o.data.data.currency,this.enabledModules=o.data.meta.modules,Object.assign(a.userForm,o.data.data),window.i18n.locale=o.data.default_language,this.isAppLoaded=!0,t(o)}).catch(o=>{r(o),s(o)})})},fetchCountries(){return new Promise((e,a)=>{this.countries.length?e(this.countries):u.get(`/api/v1/${this.companySlug}/customer/countries`).then(t=>{this.countries=t.data.data,e(t)}).catch(t=>{r(t),a(t)})})}}});export{U as a,h as u}; +var p=Object.defineProperty,g=Object.defineProperties;var f=Object.getOwnPropertyDescriptors;var c=Object.getOwnPropertySymbols;var S=Object.prototype.hasOwnProperty,b=Object.prototype.propertyIsEnumerable;var l=(e,a,t)=>a in e?p(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t,i=(e,a)=>{for(var t in a||(a={}))S.call(a,t)&&l(e,t,a[t]);if(c)for(var t of c(a))b.call(a,t)&&l(e,t,a[t]);return e},d=(e,a)=>g(e,f(a));import{h as r}from"./auth.0e030165.js";import{u as y}from"./main.24f7a84b.js";import{a as u}from"./vendor.01d0adc5.js";var m={name:null,phone:null,address_street_1:null,address_street_2:null,city:null,state:null,country_id:null,zip:null,type:null};const{defineStore:w}=window.pinia,U=w({id:"customerUserStore",state:()=>({customers:[],userForm:{avatar:null,name:"",email:"",password:"",company:"",confirm_password:"",billing:i({},m),shipping:i({},m)}}),actions:{copyAddress(){this.userForm.shipping=d(i({},this.userForm.billing),{type:"shipping"})},fetchCurrentUser(){const e=h();return new Promise((a,t)=>{u.get(`/api/v1/${e.companySlug}/customer/me`).then(s=>{Object.assign(this.userForm,s.data.data),a(s)}).catch(s=>{r(s),t(s)})})},updateCurrentUser({data:e,message:a}){const t=h();return new Promise((s,o)=>{u.post(`/api/v1/${t.companySlug}/customer/profile`,e).then(n=>{this.userForm=n.data.data,t.currentUser=n.data.data,s(n),a&&y(!0).showNotification({type:"success",message:a})}).catch(n=>{r(n),o(n)})})}}}),{defineStore:_}=window.pinia,h=_({id:"CustomerPortalGlobalStore",state:()=>({languages:[],currency:null,isAppLoaded:!1,countries:[],getDashboardDataLoaded:!1,currentUser:null,companySlug:"",mainMenu:null,enabledModules:[]}),actions:{bootstrap(e){this.companySlug=e;const a=U();return new Promise((t,s)=>{u.get(`/api/v1/${e}/customer/bootstrap`).then(o=>{this.currentUser=o.data.data,this.mainMenu=o.data.meta.menu,this.currency=o.data.data.currency,this.enabledModules=o.data.meta.modules,Object.assign(a.userForm,o.data.data),window.i18n.locale=o.data.default_language,this.isAppLoaded=!0,t(o)}).catch(o=>{r(o),s(o)})})},fetchCountries(){return new Promise((e,a)=>{this.countries.length?e(this.countries):u.get(`/api/v1/${this.companySlug}/customer/countries`).then(t=>{this.countries=t.data.data,e(t)}).catch(t=>{r(t),a(t)})})}}});export{U as a,h as u}; diff --git a/public/build/assets/invoice.b61ade7d.js b/public/build/assets/invoice.7c108372.js similarity index 91% rename from public/build/assets/invoice.b61ade7d.js rename to public/build/assets/invoice.7c108372.js index 8aaa03d2a..b25b58a97 100644 --- a/public/build/assets/invoice.b61ade7d.js +++ b/public/build/assets/invoice.7c108372.js @@ -1 +1 @@ -import{h as a}from"./auth.4644c288.js";import{a as n}from"./vendor.01d0adc5.js";const{defineStore:s}=window.pinia,h=s({id:"customerInvoiceStore",state:()=>({totalInvoices:0,invoices:[],selectedViewInvoice:[]}),actions:{fetchInvoices(e,i){return new Promise((o,c)=>{n.get(`/api/v1/${i}/customer/invoices`,{params:e}).then(t=>{this.invoices=t.data.data,this.totalInvoices=t.data.meta.invoiceTotalCount,o(t)}).catch(t=>{a(t),c(t)})})},fetchViewInvoice(e,i){return new Promise((o,c)=>{n.get(`/api/v1/${i}/customer/invoices/${e.id}`,{params:e}).then(t=>{this.selectedViewInvoice=t.data.data,o(t)}).catch(t=>{a(t),c(t)})})},searchInvoice(e,i){return new Promise((o,c)=>{n.get(`/api/v1/${i}/customer/invoices`,{params:e}).then(t=>{this.invoices=t.data,o(t)}).catch(t=>{a(t),c(t)})})}}});export{h as u}; +import{h as a}from"./auth.0e030165.js";import{a as n}from"./vendor.01d0adc5.js";const{defineStore:s}=window.pinia,h=s({id:"customerInvoiceStore",state:()=>({totalInvoices:0,invoices:[],selectedViewInvoice:[]}),actions:{fetchInvoices(e,i){return new Promise((o,c)=>{n.get(`/api/v1/${i}/customer/invoices`,{params:e}).then(t=>{this.invoices=t.data.data,this.totalInvoices=t.data.meta.invoiceTotalCount,o(t)}).catch(t=>{a(t),c(t)})})},fetchViewInvoice(e,i){return new Promise((o,c)=>{n.get(`/api/v1/${i}/customer/invoices/${e.id}`,{params:e}).then(t=>{this.selectedViewInvoice=t.data.data,o(t)}).catch(t=>{a(t),c(t)})})},searchInvoice(e,i){return new Promise((o,c)=>{n.get(`/api/v1/${i}/customer/invoices`,{params:e}).then(t=>{this.invoices=t.data,o(t)}).catch(t=>{a(t),c(t)})})}}});export{h as u}; diff --git a/public/build/assets/mail-driver.4ea1af6b.js b/public/build/assets/mail-driver.69202299.js similarity index 96% rename from public/build/assets/mail-driver.4ea1af6b.js rename to public/build/assets/mail-driver.69202299.js index 32bd9d2f0..46d8c17a5 100644 --- a/public/build/assets/mail-driver.4ea1af6b.js +++ b/public/build/assets/mail-driver.69202299.js @@ -1 +1 @@ -import{a as r,d}from"./vendor.01d0adc5.js";import{h as m,u as n}from"./main.75722495.js";const u=(l=!1)=>{const c=l?window.pinia.defineStore:d,{global:s}=window.i18n;return c({id:"mail-driver",state:()=>({mailConfigData:null,mail_driver:"smtp",mail_drivers:[],basicMailConfig:{mail_driver:"",mail_host:"",from_mail:"",from_name:""},mailgunConfig:{mail_driver:"",mail_mailgun_domain:"",mail_mailgun_secret:"",mail_mailgun_endpoint:"",from_mail:"",from_name:""},sesConfig:{mail_driver:"",mail_host:"",mail_port:null,mail_ses_key:"",mail_ses_secret:"",mail_encryption:"tls",from_mail:"",from_name:""},smtpConfig:{mail_driver:"",mail_host:"",mail_port:null,mail_username:"",mail_password:"",mail_encryption:"tls",from_mail:"",from_name:""}}),actions:{fetchMailDrivers(){return new Promise((t,e)=>{r.get("/api/v1/mail/drivers").then(i=>{i.data&&(this.mail_drivers=i.data),t(i)}).catch(i=>{m(i),e(i)})})},fetchMailConfig(){return new Promise((t,e)=>{r.get("/api/v1/mail/config").then(i=>{i.data&&(this.mailConfigData=i.data,this.mail_driver=i.data.mail_driver),t(i)}).catch(i=>{m(i),e(i)})})},updateMailConfig(t){return new Promise((e,i)=>{r.post("/api/v1/mail/config",t).then(a=>{const o=n();a.data.success?o.showNotification({type:"success",message:s.t("wizard.success."+a.data.success)}):o.showNotification({type:"error",message:s.t("wizard.errors."+a.data.error)}),e(a)}).catch(a=>{m(a),i(a)})})},sendTestMail(t){return new Promise((e,i)=>{r.post("/api/v1/mail/test",t).then(a=>{const o=n();a.data.success?o.showNotification({type:"success",message:s.t("general.send_mail_successfully")}):o.showNotification({type:"error",message:s.t("validation.something_went_wrong")}),e(a)}).catch(a=>{m(a),i(a)})})}}})()};export{u}; +import{a as r,d}from"./vendor.01d0adc5.js";import{h as m,u as n}from"./main.24f7a84b.js";const u=(l=!1)=>{const c=l?window.pinia.defineStore:d,{global:s}=window.i18n;return c({id:"mail-driver",state:()=>({mailConfigData:null,mail_driver:"smtp",mail_drivers:[],basicMailConfig:{mail_driver:"",mail_host:"",from_mail:"",from_name:""},mailgunConfig:{mail_driver:"",mail_mailgun_domain:"",mail_mailgun_secret:"",mail_mailgun_endpoint:"",from_mail:"",from_name:""},sesConfig:{mail_driver:"",mail_host:"",mail_port:null,mail_ses_key:"",mail_ses_secret:"",mail_encryption:"tls",from_mail:"",from_name:""},smtpConfig:{mail_driver:"",mail_host:"",mail_port:null,mail_username:"",mail_password:"",mail_encryption:"tls",from_mail:"",from_name:""}}),actions:{fetchMailDrivers(){return new Promise((t,e)=>{r.get("/api/v1/mail/drivers").then(i=>{i.data&&(this.mail_drivers=i.data),t(i)}).catch(i=>{m(i),e(i)})})},fetchMailConfig(){return new Promise((t,e)=>{r.get("/api/v1/mail/config").then(i=>{i.data&&(this.mailConfigData=i.data,this.mail_driver=i.data.mail_driver),t(i)}).catch(i=>{m(i),e(i)})})},updateMailConfig(t){return new Promise((e,i)=>{r.post("/api/v1/mail/config",t).then(a=>{const o=n();a.data.success?o.showNotification({type:"success",message:s.t("wizard.success."+a.data.success)}):o.showNotification({type:"error",message:s.t("wizard.errors."+a.data.error)}),e(a)}).catch(a=>{m(a),i(a)})})},sendTestMail(t){return new Promise((e,i)=>{r.post("/api/v1/mail/test",t).then(a=>{const o=n();a.data.success?o.showNotification({type:"success",message:s.t("general.send_mail_successfully")}):o.showNotification({type:"error",message:s.t("validation.something_went_wrong")}),e(a)}).catch(a=>{m(a),i(a)})})}}})()};export{u}; diff --git a/public/build/assets/main.24f7a84b.js b/public/build/assets/main.24f7a84b.js new file mode 100644 index 000000000..1ba1083ef --- /dev/null +++ b/public/build/assets/main.24f7a84b.js @@ -0,0 +1,16 @@ +var Nt=Object.defineProperty,Tt=Object.defineProperties;var Rt=Object.getOwnPropertyDescriptors;var Je=Object.getOwnPropertySymbols;var Mt=Object.prototype.hasOwnProperty,Ft=Object.prototype.propertyIsEnumerable;var Qe=(i,r,s)=>r in i?Nt(i,r,{enumerable:!0,configurable:!0,writable:!0,value:s}):i[r]=s,M=(i,r)=>{for(var s in r||(r={}))Mt.call(r,s)&&Qe(i,s,r[s]);if(Je)for(var s of Je(r))Ft.call(r,s)&&Qe(i,s,r[s]);return i},Z=(i,r)=>Tt(i,Rt(r));import{a as f,d as Q,_ as oe,c as $t,b as Ut,r as D,o as l,e as _,f as u,F as X,g as F,n as De,h as c,w as g,i as q,t as w,j as S,k as A,l as N,u as d,m as C,p as pe,q as xe,v as Vt,s as le,x as J,y as ae,z as Xe,A as Ot,B as K,C as ge,D as ze,E as Lt,G as fe,H as G,I as ye,J as Se,K as et,L as te,M as tt,N as Ue,O as at,P as Bt,Q as qt,R as Kt,S as Ce,T as Wt,U as re,V as Zt,W as Ht,X as Yt,Y as Ee,Z as Gt,$ as Jt,a0 as Ve,a1 as it,a2 as Ie,a3 as nt,a4 as Qt,a5 as st,a6 as ot,a7 as rt,a8 as Xt,a9 as ea,aa as ta,ab as aa,ac as ia,ad as na,ae as sa,af as oa,ag as dt,ah as ra,ai as lt,aj as da,ak as la,al as ca,am as _a,an as ct,ao as ua,ap as ma,aq as pa,ar as ga,as as fa,at as va,au as ha,av as Oe,aw as _t,ax as ut,ay as ya,az as ba,aA as ka,aB as wa,aC as xa,aD as za,aE as Le,aF as Sa,aG as Pa,aH as ja,aI as Aa,aJ as Da,aK as Ca,aL as Ea}from"./vendor.01d0adc5.js";var Be={get(i){return localStorage.getItem(i)?localStorage.getItem(i):null},set(i,r){localStorage.setItem(i,r)},remove(i){localStorage.removeItem(i)}};window.Ls=Be;window.axios=f;f.defaults.withCredentials=!0;f.defaults.headers.common={"X-Requested-With":"XMLHttpRequest"};f.interceptors.request.use(function(i){const r=Be.get("selectedCompany"),s=Be.get("auth.token");return s&&(i.headers.common.Authorization=s),r&&(i.headers.common.company=r),i});const $=(i=!1)=>(i?window.pinia.defineStore:Q)({id:"notification",state:()=>({active:!1,autoHide:!0,notifications:[]}),actions:{showNotification(s){this.notifications.push(Z(M({},s),{id:(Math.random().toString(36)+Date.now().toString(36)).substr(2)}))},hideNotification(s){this.notifications=this.notifications.filter(a=>a.id!=s.id)}}})(),Ia=(i=!1)=>(i?window.pinia.defineStore:Q)({id:"auth",state:()=>({status:"",loginData:{email:"",password:"",remember:""}}),actions:{login(s){return new Promise((a,t)=>{f.get("/sanctum/csrf-cookie").then(n=>{n&&f.post("/login",s).then(e=>{a(e),setTimeout(()=>{this.loginData.email="",this.loginData.password=""},1e3)}).catch(e=>{h(e),t(e)})})})},logout(){return new Promise((s,a)=>{f.get("/auth/logout").then(t=>{$().showNotification({type:"success",message:"Logged out successfully."}),window.router.push("/login"),s(t)}).catch(t=>{h(t),window.router.push("/"),a(t)})})}}})(),h=i=>{var a;const r=Ia(),s=$();if(!i.response)s.showNotification({type:"error",message:"Please check your internet connection or wait until servers are back online."});else if(i.response.data&&(i.response.statusText==="Unauthorized"||i.response.data===" Unauthorized.")){const t=i.response.data.message?i.response.data.message:"Unauthorized";V(t),r.logout()}else if(i.response.data.errors){const t=JSON.parse(JSON.stringify(i.response.data.errors));for(const n in t)Ne(t[n][0])}else i.response.data.error?typeof i.response.data.error=="boolean"?Ne((a=i.response.data)==null?void 0:a.message):Ne(i.response.data.error):Ne(i.response.data.message)},Ne=i=>{switch(i){case"These credentials do not match our records.":V("errors.login_invalid_credentials");break;case"invalid_key":V("errors.invalid_provider_key");break;case"This feature is available on Starter plan and onwards!":V("errors.starter_plan");break;case"taxes_attached":V("settings.tax_types.already_in_use");break;case"expense_attached":V("settings.expense_category.already_in_use");break;case"payments_attached":V("settings.payment_modes.already_in_use");break;case"role_attached_to_users":V("settings.roles.already_in_use");break;case"items_attached":V("settings.customization.items.already_in_use");break;case"payment_attached_message":V("invoices.payment_attached_message");break;case"The email has already been taken.":V("validation.email_already_taken");break;case"Relation estimateItems exists.":V("items.item_attached_message");break;case"Relation invoiceItems exists.":V("items.item_attached_message");break;case"Relation taxes exists.":V("settings.tax_types.already_in_use");break;case"Relation taxes exists.":V("settings.tax_types.already_in_use");break;case"Relation payments exists.":V("errors.payment_attached");break;case"The estimate number has already been taken.":V("errors.estimate_number_used");break;case"The payment number has already been taken.":V("errors.estimate_number_used");break;case"The invoice number has already been taken.":V("errors.invoice_number_used");break;case"The name has already been taken.":V("errors.name_already_taken");break;case"total_invoice_amount_must_be_more_than_paid_amount":V("invoices.invalid_due_amount_message");break;case"you_cannot_edit_currency":V("customers.edit_currency_not_allowed");break;case"receipt_does_not_exist":V("errors.receipt_does_not_exist");break;case"customer_cannot_be_changed_after_payment_is_added":V("errors.customer_cannot_be_changed_after_payment_is_added");break;case"invalid_credentials":V("errors.invalid_credentials");break;case"not_allowed":V("errors.not_allowed");break;case"invalid_key":V("errors.invalid_key");break;case"invalid_state":V("errors.invalid_state");break;case"invalid_city":V("errors.invalid_city");break;case"invalid_postal_code":V("errors.invalid_postal_code");break;case"invalid_format":V("errors.invalid_format");break;case"api_error":V("errors.api_error");break;case"feature_not_enabled":V("errors.feature_not_enabled");break;case"request_limit_met":V("errors.request_limit_met");break;case"address_incomplete":V("errors.address_incomplete");break;case"invalid_address":V("errors.invalid_address");break;case"Email could not be sent to this email address.":V("errors.email_could_not_be_sent");break;default:V(i,!1);break}},V=(i,r=!0)=>{const{global:s}=window.i18n;$().showNotification({type:"error",message:r?s.t(i):i})},Pe=(i=!1)=>{const r=i?window.pinia.defineStore:Q,{global:s}=window.i18n;return r({id:"user",state:()=>({currentUser:null,currentAbilities:[],currentUserSettings:{},userForm:{name:"",email:"",password:"",confirm_password:"",language:""}}),getters:{currentAbilitiesCount:a=>a.currentAbilities.length},actions:{updateCurrentUser(a){return new Promise((t,n)=>{f.put("/api/v1/me",a).then(e=>{this.currentUser=e.data.data,Object.assign(this.userForm,e.data.data),$().showNotification({type:"success",message:s.t("settings.account_settings.updated_message")}),t(e)}).catch(e=>{h(e),n(e)})})},fetchCurrentUser(a){return new Promise((t,n)=>{f.get("/api/v1/me",a).then(e=>{this.currentUser=e.data.data,this.userForm=e.data.data,t(e)}).catch(e=>{h(e),n(e)})})},uploadAvatar(a){return new Promise((t,n)=>{f.post("/api/v1/me/upload-avatar",a).then(e=>{this.currentUser.avatar=e.data.data.avatar,t(e)}).catch(e=>{h(e),n(e)})})},fetchUserSettings(a){return new Promise((t,n)=>{f.get("/api/v1/me/settings",{params:{settings:a}}).then(e=>{t(e)}).catch(e=>{h(e),n(e)})})},updateUserSettings(a){return new Promise((t,n)=>{f.put("/api/v1/me/settings",a).then(e=>{a.settings.language&&(this.currentUserSettings.language=a.settings.language,s.locale=a.settings.language),t(e)}).catch(e=>{h(e),n(e)})})},hasAbilities(a){return!!this.currentAbilities.find(t=>t.name==="*"?!0:typeof a=="string"?t.name===a:!!a.find(n=>t.name===n))},hasAllAbilities(a){let t=!0;return this.currentAbilities.filter(n=>{!!a.find(o=>n.name===o)||(t=!1)}),t}}})()},_e=(i=!1)=>{const r=i?window.pinia.defineStore:Q,{global:s}=window.i18n;return r({id:"company",state:()=>({companies:[],selectedCompany:null,selectedCompanySettings:{},selectedCompanyCurrency:null}),actions:{setSelectedCompany(a){window.Ls.set("selectedCompany",a.id),this.selectedCompany=a},fetchBasicMailConfig(){return new Promise((a,t)=>{f.get("/api/v1/company/mail/config").then(n=>{a(n)}).catch(n=>{h(n),t(n)})})},updateCompany(a){return new Promise((t,n)=>{f.put("/api/v1/company",a).then(e=>{$().showNotification({type:"success",message:s.t("settings.company_info.updated_message")}),this.selectedCompany=e.data.data,t(e)}).catch(e=>{h(e),n(e)})})},updateCompanyLogo(a){return new Promise((t,n)=>{f.post("/api/v1/company/upload-logo",a).then(e=>{t(e)}).catch(e=>{h(e),n(e)})})},addNewCompany(a){return new Promise((t,n)=>{f.post("/api/v1/companies",a).then(e=>{$().showNotification({type:"success",message:s.t("company_switcher.created_message")}),t(e)}).catch(e=>{h(e),n(e)})})},fetchCompany(a){return new Promise((t,n)=>{f.get("/api/v1/current-company",a).then(e=>{Object.assign(this.companyForm,e.data.data.address),this.companyForm.name=e.data.data.name,t(e)}).catch(e=>{h(e),n(e)})})},fetchUserCompanies(){return new Promise((a,t)=>{f.get("/api/v1/companies").then(n=>{a(n)}).catch(n=>{h(n),t(n)})})},fetchCompanySettings(a){return new Promise((t,n)=>{f.get("/api/v1/company/settings",{params:{settings:a}}).then(e=>{t(e)}).catch(e=>{h(e),n(e)})})},updateCompanySettings({data:a,message:t}){return new Promise((n,e)=>{f.post("/api/v1/company/settings",a).then(o=>{Object.assign(this.selectedCompanySettings,a.settings),t&&$().showNotification({type:"success",message:s.t(t)}),n(o)}).catch(o=>{h(o),e(o)})})},deleteCompany(a){return new Promise((t,n)=>{f.post("/api/v1/companies/delete",a).then(e=>{t(e)}).catch(e=>{h(e),n(e)})})},setDefaultCurrency(a){this.defaultCurrency=a.currency}}})()},Na=(i=!1)=>{const r=i?window.pinia.defineStore:Q,{global:s}=window.i18n;return r({id:"modules",state:()=>({currentModule:{},modules:[],apiToken:null,currentUser:{api_token:null},enableModules:[]}),getters:{salesTaxUSEnabled:a=>a.enableModules.includes("SalesTaxUS")},actions:{fetchModules(a){return new Promise((t,n)=>{f.get("/api/v1/modules").then(e=>{this.modules=e.data.data,t(e)}).catch(e=>{h(e),n(e)})})},fetchModule(a){return new Promise((t,n)=>{f.get(`/api/v1/modules/${a}`).then(e=>{e.data.error==="invalid_token"?(this.currentModule={},this.modules=[],this.apiToken=null,this.currentUser.api_token=null,window.router.push("/admin/modules")):this.currentModule=e.data,t(e)}).catch(e=>{h(e),n(e)})})},checkApiToken(a){return new Promise((t,n)=>{f.get(`/api/v1/modules/check?api_token=${a}`).then(e=>{const o=$();e.data.error==="invalid_token"&&o.showNotification({type:"error",message:s.t("modules.invalid_api_token")}),t(e)}).catch(e=>{h(e),n(e)})})},disableModule(a){return new Promise((t,n)=>{f.post(`/api/v1/modules/${a}/disable`).then(e=>{const o=$();e.data.success&&o.showNotification({type:"success",message:s.t("modules.module_disabled")}),t(e)}).catch(e=>{h(e),n(e)})})},enableModule(a){return new Promise((t,n)=>{f.post(`/api/v1/modules/${a}/enable`).then(e=>{const o=$();e.data.success&&o.showNotification({type:"success",message:s.t("modules.module_enabled")}),t(e)}).catch(e=>{h(e),n(e)})})}}})()},Te=(i=!1)=>{const r=i?window.pinia.defineStore:Q,{global:s}=window.i18n;return r({id:"global",state:()=>({config:null,globalSettings:null,timeZones:[],dateFormats:[],currencies:[],countries:[],languages:[],fiscalYears:[],mainMenu:[],settingMenu:[],isAppLoaded:!1,isSidebarOpen:!1,areCurrenciesLoading:!1,downloadReport:null}),getters:{menuGroups:a=>Object.values(oe.groupBy(a.mainMenu,"group"))},actions:{bootstrap(){return new Promise((a,t)=>{f.get("/api/v1/bootstrap").then(n=>{const e=_e(),o=Pe(),m=Na();this.mainMenu=n.data.main_menu,this.settingMenu=n.data.setting_menu,this.config=n.data.config,this.globalSettings=n.data.global_settings,o.currentUser=n.data.current_user,o.currentUserSettings=n.data.current_user_settings,o.currentAbilities=n.data.current_user_abilities,m.apiToken=n.data.global_settings.api_token,m.enableModules=n.data.modules,e.companies=n.data.companies,e.selectedCompany=n.data.current_company,e.setSelectedCompany(n.data.current_company),e.selectedCompanySettings=n.data.current_company_settings,e.selectedCompanyCurrency=n.data.current_company_currency,s.locale=n.data.current_user_settings.language||"en",this.isAppLoaded=!0,a(n)}).catch(n=>{h(n),t(n)})})},fetchCurrencies(){return new Promise((a,t)=>{this.currencies.length||this.areCurrenciesLoading?a(this.currencies):(this.areCurrenciesLoading=!0,f.get("/api/v1/currencies").then(n=>{this.currencies=n.data.data.filter(e=>e.name=`${e.code} - ${e.name}`),this.areCurrenciesLoading=!1,a(n)}).catch(n=>{h(n),this.areCurrenciesLoading=!1,t(n)}))})},fetchConfig(a){return new Promise((t,n)=>{f.get("/api/v1/config",{params:a}).then(e=>{e.data.languages?this.languages=e.data.languages:this.fiscalYears=e.data.fiscal_years,t(e)}).catch(e=>{h(e),n(e)})})},fetchDateFormats(){return new Promise((a,t)=>{this.dateFormats.length?a(this.dateFormats):f.get("/api/v1/date/formats").then(n=>{this.dateFormats=n.data.date_formats,a(n)}).catch(n=>{h(n),t(n)})})},fetchTimeZones(){return new Promise((a,t)=>{this.timeZones.length?a(this.timeZones):f.get("/api/v1/timezones").then(n=>{this.timeZones=n.data.time_zones,a(n)}).catch(n=>{h(n),t(n)})})},fetchCountries(){return new Promise((a,t)=>{this.countries.length?a(this.countries):f.get("/api/v1/countries").then(n=>{this.countries=n.data.data,a(n)}).catch(n=>{h(n),t(n)})})},fetchPlaceholders(a){return new Promise((t,n)=>{f.get("/api/v1/number-placeholders",{params:a}).then(e=>{t(e)}).catch(e=>{h(e),n(e)})})},setSidebarVisibility(a){this.isSidebarOpen=a},setIsAppLoaded(a){this.isAppLoaded=a},updateGlobalSettings({data:a,message:t}){return new Promise((n,e)=>{f.post("/api/v1/settings",a).then(o=>{Object.assign(this.globalSettings,a.settings),t&&$().showNotification({type:"success",message:s.t(t)}),n(o)}).catch(o=>{h(o),e(o)})})}}})()},Ta="modulepreload",mt={},Ra="/build/",P=function(r,s){return!s||s.length===0?r():Promise.all(s.map(a=>{if(a=`${Ra}${a}`,a in mt)return;mt[a]=!0;const t=a.endsWith(".css"),n=t?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${a}"]${n}`))return;const e=document.createElement("link");if(e.rel=t?"stylesheet":Ta,t||(e.as="script",e.crossOrigin=""),e.href=a,document.head.appendChild(e),t)return new Promise((o,m)=>{e.addEventListener("load",o),e.addEventListener("error",m)})})).then(()=>r())};var O={DASHBOARD:"dashboard",CREATE_CUSTOMER:"create-customer",DELETE_CUSTOMER:"delete-customer",EDIT_CUSTOMER:"edit-customer",VIEW_CUSTOMER:"view-customer",CREATE_ITEM:"create-item",DELETE_ITEM:"delete-item",EDIT_ITEM:"edit-item",VIEW_ITEM:"view-item",CREATE_TAX_TYPE:"create-tax-type",DELETE_TAX_TYPE:"delete-tax-type",EDIT_TAX_TYPE:"edit-tax-type",VIEW_TAX_TYPE:"view-tax-type",CREATE_ESTIMATE:"create-estimate",DELETE_ESTIMATE:"delete-estimate",EDIT_ESTIMATE:"edit-estimate",VIEW_ESTIMATE:"view-estimate",SEND_ESTIMATE:"send-estimate",CREATE_INVOICE:"create-invoice",DELETE_INVOICE:"delete-invoice",EDIT_INVOICE:"edit-invoice",VIEW_INVOICE:"view-invoice",SEND_INVOICE:"send-invoice",CREATE_RECURRING_INVOICE:"create-recurring-invoice",DELETE_RECURRING_INVOICE:"delete-recurring-invoice",EDIT_RECURRING_INVOICE:"edit-recurring-invoice",VIEW_RECURRING_INVOICE:"view-recurring-invoice",CREATE_PAYMENT:"create-payment",DELETE_PAYMENT:"delete-payment",EDIT_PAYMENT:"edit-payment",VIEW_PAYMENT:"view-payment",SEND_PAYMENT:"send-payment",CREATE_EXPENSE:"create-expense",DELETE_EXPENSE:"delete-expense",EDIT_EXPENSE:"edit-expense",VIEW_EXPENSE:"view-expense",CREATE_CUSTOM_FIELDS:"create-custom-field",DELETE_CUSTOM_FIELDS:"delete-custom-field",EDIT_CUSTOM_FIELDS:"edit-custom-field",VIEW_CUSTOM_FIELDS:"view-custom-field",CREATE_ROLE:"create-role",DELETE_ROLE:"delete-role",EDIT_ROLE:"edit-role",VIEW_ROLE:"view-role",VIEW_EXCHANGE_RATE:"view-exchange-rate-provider",CREATE_EXCHANGE_RATE:"create-exchange-rate-provider",EDIT_EXCHANGE_RATE:"edit-exchange-rate-provider",DELETE_EXCHANGE_RATE:"delete-exchange-rate-provider",VIEW_FINANCIAL_REPORT:"view-financial-reports",MANAGE_NOTE:"manage-all-notes",VIEW_NOTE:"view-all-notes"};const Ma=()=>P(()=>import("./LayoutInstallation.9dd005dc.js"),["assets/LayoutInstallation.9dd005dc.js","assets/NotificationRoot.79eede9f.js","assets/vendor.01d0adc5.js"]),pt=()=>P(()=>import("./Login.f6c16d98.js"),["assets/Login.f6c16d98.js","assets/vendor.01d0adc5.js"]),Fa=()=>P(()=>import("./LayoutBasic.7688bb12.js"),["assets/LayoutBasic.7688bb12.js","assets/vendor.01d0adc5.js","assets/exchange-rate.3b3d35e2.js","assets/users.e0b660dd.js","assets/NotificationRoot.79eede9f.js","assets/index.esm.998a6eeb.js"]),$a=()=>P(()=>import("./LayoutLogin.805658ef.js"),["assets/LayoutLogin.805658ef.js","assets/NotificationRoot.79eede9f.js","assets/vendor.01d0adc5.js"]),Ua=()=>P(()=>import("./ResetPassword.1eebc8d4.js"),["assets/ResetPassword.1eebc8d4.js","assets/vendor.01d0adc5.js"]),Va=()=>P(()=>import("./ForgotPassword.6f6930b9.js"),["assets/ForgotPassword.6f6930b9.js","assets/vendor.01d0adc5.js"]),Oa=()=>P(()=>import("./Dashboard.f077f144.js"),["assets/Dashboard.f077f144.js","assets/EstimateIcon.8ca6d05b.js","assets/vendor.01d0adc5.js","assets/LineChart.f87804e4.js","assets/InvoiceIndexDropdown.a18e118f.js","assets/EstimateIndexDropdown.7244b3a5.js"]),La=()=>P(()=>import("./Index.d28beda3.js"),["assets/Index.d28beda3.js","assets/vendor.01d0adc5.js","assets/CustomerIndexDropdown.34ba7779.js","assets/AstronautIcon.948728ac.js"]),gt=()=>P(()=>import("./Create.6147407c.js"),["assets/Create.6147407c.js","assets/vendor.01d0adc5.js","assets/CreateCustomFields.8531ebe0.js"]),Ba=()=>P(()=>import("./View.4e871e2e.js"),["assets/View.4e871e2e.js","assets/vendor.01d0adc5.js","assets/LoadingIcon.e09a5e28.js","assets/LineChart.f87804e4.js","assets/CustomerIndexDropdown.34ba7779.js"]),qa=()=>P(()=>import("./SettingsIndex.88c27d32.js"),["assets/SettingsIndex.88c27d32.js","assets/vendor.01d0adc5.js","assets/BaseListItem.bd97231b.js"]),Ka=()=>P(()=>import("./AccountSetting.3c63f5fd.js"),["assets/AccountSetting.3c63f5fd.js","assets/vendor.01d0adc5.js"]),Wa=()=>P(()=>import("./CompanyInfoSettings.d640f156.js"),["assets/CompanyInfoSettings.d640f156.js","assets/vendor.01d0adc5.js"]),Za=()=>P(()=>import("./PreferencesSetting.5c1b78a2.js"),["assets/PreferencesSetting.5c1b78a2.js","assets/vendor.01d0adc5.js"]),Ha=()=>P(()=>import("./CustomizationSetting.1c2a30db.js"),["assets/CustomizationSetting.1c2a30db.js","assets/vendor.01d0adc5.js","assets/DragIcon.0a950eb9.js","assets/payment.bb0c6e9e.js","assets/ItemUnitModal.98d168e7.js"]),Ya=()=>P(()=>import("./NotificationsSetting.7c27b8ff.js"),["assets/NotificationsSetting.7c27b8ff.js","assets/vendor.01d0adc5.js"]),Ga=()=>P(()=>import("./TaxTypesSetting.1ef5c19d.js"),["assets/TaxTypesSetting.1ef5c19d.js","assets/vendor.01d0adc5.js","assets/TaxTypeModal.5b98d9fc.js"]),Ja=()=>P(()=>import("./PaymentsModeSetting.09e94b30.js"),["assets/PaymentsModeSetting.09e94b30.js","assets/vendor.01d0adc5.js","assets/payment.bb0c6e9e.js","assets/PaymentModeModal.fb4664cf.js"]),Qa=()=>P(()=>import("./CustomFieldsSetting.452cd2ca.js"),["assets/CustomFieldsSetting.452cd2ca.js","assets/vendor.01d0adc5.js"]),Xa=()=>P(()=>import("./NotesSetting.6010dd94.js"),["assets/NotesSetting.6010dd94.js","assets/vendor.01d0adc5.js","assets/NoteModal.5bd3cf32.js","assets/NoteModal.3245b7d3.css","assets/payment.bb0c6e9e.js"]),ei=()=>P(()=>import("./ExpenseCategorySetting.9d23ded7.js"),["assets/ExpenseCategorySetting.9d23ded7.js","assets/category.5ef2a7e7.js","assets/vendor.01d0adc5.js","assets/CategoryModal.5e03bcbb.js"]),ti=()=>P(()=>import("./ExchangeRateProviderSetting.a7b33d5f.js"),["assets/ExchangeRateProviderSetting.a7b33d5f.js","assets/exchange-rate.3b3d35e2.js","assets/vendor.01d0adc5.js","assets/BaseTable.ab76526e.js"]),ai=()=>P(()=>import("./MailConfigSetting.4b59b903.js"),["assets/MailConfigSetting.4b59b903.js","assets/vendor.01d0adc5.js","assets/mail-driver.69202299.js"]),ii=()=>P(()=>import("./FileDiskSetting.467dcb51.js"),["assets/FileDiskSetting.467dcb51.js","assets/disk.62fb5cf1.js","assets/vendor.01d0adc5.js"]),ni=()=>P(()=>import("./BackupSetting.e1ea237b.js"),["assets/BackupSetting.e1ea237b.js","assets/vendor.01d0adc5.js","assets/disk.62fb5cf1.js"]),si=()=>P(()=>import("./UpdateAppSetting.700f9339.js"),["assets/UpdateAppSetting.700f9339.js","assets/UpdateAppSetting.7d8b987a.css","assets/vendor.01d0adc5.js","assets/LoadingIcon.e09a5e28.js","assets/exchange-rate.3b3d35e2.js"]),oi=()=>P(()=>import("./RolesSettings.94da2291.js"),["assets/RolesSettings.94da2291.js","assets/vendor.01d0adc5.js"]),ri=()=>P(()=>import("./Index.62cd1a7f.js"),["assets/Index.62cd1a7f.js","assets/vendor.01d0adc5.js"]),ft=()=>P(()=>import("./Create.6124b0ba.js"),["assets/Create.6124b0ba.js","assets/vendor.01d0adc5.js","assets/ItemUnitModal.98d168e7.js"]),di=()=>P(()=>import("./Index.bfe16422.js"),["assets/Index.bfe16422.js","assets/vendor.01d0adc5.js","assets/expense.6f364fe1.js","assets/category.5ef2a7e7.js"]),vt=()=>P(()=>import("./Create.a6517fd4.js"),["assets/Create.a6517fd4.js","assets/vendor.01d0adc5.js","assets/expense.6f364fe1.js","assets/category.5ef2a7e7.js","assets/CreateCustomFields.8531ebe0.js","assets/CategoryModal.5e03bcbb.js","assets/ExchangeRateConverter.285065a4.js","assets/exchange-rate.3b3d35e2.js"]),li=()=>P(()=>import("./Index.9163b87f.js"),["assets/Index.9163b87f.js","assets/vendor.01d0adc5.js","assets/users.e0b660dd.js","assets/AstronautIcon.948728ac.js"]),ht=()=>P(()=>import("./Create.489d68ed.js"),["assets/Create.489d68ed.js","assets/vendor.01d0adc5.js","assets/index.esm.998a6eeb.js","assets/users.e0b660dd.js"]),ci=()=>P(()=>import("./Index.1b67a295.js"),["assets/Index.1b67a295.js","assets/vendor.01d0adc5.js","assets/ObservatoryIcon.1877bd3e.js","assets/EstimateIndexDropdown.7244b3a5.js","assets/SendEstimateModal.123953ba.js","assets/mail-driver.69202299.js"]),yt=()=>P(()=>import("./EstimateCreate.8e177523.js"),["assets/EstimateCreate.8e177523.js","assets/vendor.01d0adc5.js","assets/SalesTax.7ce396b6.js","assets/DragIcon.0a950eb9.js","assets/SelectNotePopup.5f004c2c.js","assets/NoteModal.5bd3cf32.js","assets/NoteModal.3245b7d3.css","assets/payment.bb0c6e9e.js","assets/CreateCustomFields.8531ebe0.js","assets/ExchangeRateConverter.285065a4.js","assets/exchange-rate.3b3d35e2.js","assets/TaxTypeModal.5b98d9fc.js"]),_i=()=>P(()=>import("./View.1fa1b212.js"),["assets/View.1fa1b212.js","assets/vendor.01d0adc5.js","assets/EstimateIndexDropdown.7244b3a5.js","assets/SendEstimateModal.123953ba.js","assets/mail-driver.69202299.js","assets/LoadingIcon.e09a5e28.js"]),ui=()=>P(()=>import("./Index.597f85ba.js"),["assets/Index.597f85ba.js","assets/vendor.01d0adc5.js","assets/payment.bb0c6e9e.js","assets/CapsuleIcon.dc769b69.js","assets/SendPaymentModal.57c4c1f4.js","assets/mail-driver.69202299.js"]),qe=()=>P(()=>import("./Create.03dd2833.js"),["assets/Create.03dd2833.js","assets/vendor.01d0adc5.js","assets/ExchangeRateConverter.285065a4.js","assets/exchange-rate.3b3d35e2.js","assets/payment.bb0c6e9e.js","assets/SelectNotePopup.5f004c2c.js","assets/NoteModal.5bd3cf32.js","assets/NoteModal.3245b7d3.css","assets/CreateCustomFields.8531ebe0.js","assets/PaymentModeModal.fb4664cf.js"]),mi=()=>P(()=>import("./View.dadb2ec2.js"),["assets/View.dadb2ec2.js","assets/vendor.01d0adc5.js","assets/payment.bb0c6e9e.js","assets/SendPaymentModal.57c4c1f4.js","assets/mail-driver.69202299.js","assets/LoadingIcon.e09a5e28.js"]),pi=()=>P(()=>import("./404.5c5416a6.js"),["assets/404.5c5416a6.js","assets/vendor.01d0adc5.js"]),gi=()=>P(()=>import("./Index.cfd59198.js"),["assets/Index.cfd59198.js","assets/vendor.01d0adc5.js","assets/MoonwalkerIcon.ab503573.js","assets/InvoiceIndexDropdown.a18e118f.js","assets/SendInvoiceModal.1e029d4e.js","assets/mail-driver.69202299.js"]),bt=()=>P(()=>import("./InvoiceCreate.6a7669bf.js"),["assets/InvoiceCreate.6a7669bf.js","assets/vendor.01d0adc5.js","assets/SalesTax.7ce396b6.js","assets/DragIcon.0a950eb9.js","assets/SelectNotePopup.5f004c2c.js","assets/NoteModal.5bd3cf32.js","assets/NoteModal.3245b7d3.css","assets/payment.bb0c6e9e.js","assets/ExchangeRateConverter.285065a4.js","assets/exchange-rate.3b3d35e2.js","assets/CreateCustomFields.8531ebe0.js","assets/TaxTypeModal.5b98d9fc.js"]),fi=()=>P(()=>import("./View.b5d80566.js"),["assets/View.b5d80566.js","assets/vendor.01d0adc5.js","assets/InvoiceIndexDropdown.a18e118f.js","assets/SendInvoiceModal.1e029d4e.js","assets/mail-driver.69202299.js","assets/LoadingIcon.e09a5e28.js"]),vi=()=>P(()=>import("./Index.40a6e1ec.js"),["assets/Index.40a6e1ec.js","assets/vendor.01d0adc5.js","assets/SendInvoiceModal.1e029d4e.js","assets/mail-driver.69202299.js","assets/RecurringInvoiceIndexDropdown.44561f32.js","assets/MoonwalkerIcon.ab503573.js"]),kt=()=>P(()=>import("./RecurringInvoiceCreate.8ea74176.js"),["assets/RecurringInvoiceCreate.8ea74176.js","assets/vendor.01d0adc5.js","assets/SalesTax.7ce396b6.js","assets/DragIcon.0a950eb9.js","assets/SelectNotePopup.5f004c2c.js","assets/NoteModal.5bd3cf32.js","assets/NoteModal.3245b7d3.css","assets/payment.bb0c6e9e.js","assets/ExchangeRateConverter.285065a4.js","assets/exchange-rate.3b3d35e2.js","assets/CreateCustomFields.8531ebe0.js","assets/TaxTypeModal.5b98d9fc.js"]),hi=()=>P(()=>import("./View.57eb7885.js"),["assets/View.57eb7885.js","assets/vendor.01d0adc5.js","assets/LoadingIcon.e09a5e28.js","assets/InvoiceIndexDropdown.a18e118f.js","assets/RecurringInvoiceIndexDropdown.44561f32.js"]),yi=()=>P(()=>import("./Index.1117c7c6.js"),["assets/Index.1117c7c6.js","assets/vendor.01d0adc5.js"]),bi=()=>P(()=>import("./Installation.85c2b6a4.js"),["assets/Installation.85c2b6a4.js","assets/vendor.01d0adc5.js","assets/mail-driver.69202299.js"]),ki=()=>P(()=>import("./Index.e5c8e723.js"),["assets/Index.e5c8e723.js","assets/vendor.01d0adc5.js"]),wi=()=>P(()=>import("./View.da42cf28.js"),["assets/View.da42cf28.js","assets/vendor.01d0adc5.js"]),xi=()=>P(()=>import("./InvoicePublicPage.e8730ff3.js"),["assets/InvoicePublicPage.e8730ff3.js","assets/vendor.01d0adc5.js"]);var zi=[{path:"/installation",component:Ma,meta:{requiresAuth:!1},children:[{path:"/installation",component:bi,name:"installation"}]},{path:"/customer/invoices/view/:hash",component:xi,name:"invoice.public"},{path:"/",component:$a,meta:{requiresAuth:!1,redirectIfAuthenticated:!0},children:[{path:"",component:pt},{path:"login",name:"login",component:pt},{path:"forgot-password",component:Va,name:"forgot-password"},{path:"/reset-password/:token",component:Ua,name:"reset-password"}]},{path:"/admin",component:Fa,meta:{requiresAuth:!0},children:[{path:"dashboard",name:"dashboard",meta:{ability:O.DASHBOARD},component:Oa},{path:"customers",meta:{ability:O.VIEW_CUSTOMER},component:La},{path:"customers/create",name:"customers.create",meta:{ability:O.CREATE_CUSTOMER},component:gt},{path:"customers/:id/edit",name:"customers.edit",meta:{ability:O.EDIT_CUSTOMER},component:gt},{path:"customers/:id/view",name:"customers.view",meta:{ability:O.VIEW_CUSTOMER},component:Ba},{path:"payments",meta:{ability:O.VIEW_PAYMENT},component:ui},{path:"payments/create",name:"payments.create",meta:{ability:O.CREATE_PAYMENT},component:qe},{path:"payments/:id/create",name:"invoice.payments.create",meta:{ability:O.CREATE_PAYMENT},component:qe},{path:"payments/:id/edit",name:"payments.edit",meta:{ability:O.EDIT_PAYMENT},component:qe},{path:"payments/:id/view",name:"payments.view",meta:{ability:O.VIEW_PAYMENT},component:mi},{path:"settings",name:"settings",component:qa,children:[{path:"account-settings",name:"account.settings",component:Ka},{path:"company-info",name:"company.info",meta:{isOwner:!0},component:Wa},{path:"preferences",name:"preferences",meta:{isOwner:!0},component:Za},{path:"customization",name:"customization",meta:{isOwner:!0},component:Ha},{path:"notifications",name:"notifications",meta:{isOwner:!0},component:Ya},{path:"roles-settings",name:"roles.settings",meta:{isOwner:!0},component:oi},{path:"exchange-rate-provider",name:"exchange.rate.provider",meta:{ability:O.VIEW_EXCHANGE_RATE},component:ti},{path:"tax-types",name:"tax.types",meta:{ability:O.VIEW_TAX_TYPE},component:Ga},{path:"notes",name:"notes",meta:{ability:O.VIEW_ALL_NOTES},component:Xa},{path:"payment-mode",name:"payment.mode",component:Ja},{path:"custom-fields",name:"custom.fields",meta:{ability:O.VIEW_CUSTOM_FIELDS},component:Qa},{path:"expense-category",name:"expense.category",meta:{ability:O.VIEW_EXPENSE},component:ei},{path:"mail-configuration",name:"mailconfig",meta:{isOwner:!0},component:ai},{path:"file-disk",name:"file-disk",meta:{isOwner:!0},component:ii},{path:"backup",name:"backup",meta:{isOwner:!0},component:ni},{path:"update-app",name:"updateapp",meta:{isOwner:!0},component:si}]},{path:"items",meta:{ability:O.VIEW_ITEM},component:ri},{path:"items/create",name:"items.create",meta:{ability:O.CREATE_ITEM},component:ft},{path:"items/:id/edit",name:"items.edit",meta:{ability:O.EDIT_ITEM},component:ft},{path:"expenses",meta:{ability:O.VIEW_EXPENSE},component:di},{path:"expenses/create",name:"expenses.create",meta:{ability:O.CREATE_EXPENSE},component:vt},{path:"expenses/:id/edit",name:"expenses.edit",meta:{ability:O.EDIT_EXPENSE},component:vt},{path:"users",name:"users.index",meta:{isOwner:!0},component:li},{path:"users/create",meta:{isOwner:!0},name:"users.create",component:ht},{path:"users/:id/edit",name:"users.edit",meta:{isOwner:!0},component:ht},{path:"estimates",name:"estimates.index",meta:{ability:O.VIEW_ESTIMATE},component:ci},{path:"estimates/create",name:"estimates.create",meta:{ability:O.CREATE_ESTIMATE},component:yt},{path:"estimates/:id/view",name:"estimates.view",meta:{ability:O.VIEW_ESTIMATE},component:_i},{path:"estimates/:id/edit",name:"estimates.edit",meta:{ability:O.EDIT_ESTIMATE},component:yt},{path:"invoices",name:"invoices.index",meta:{ability:O.VIEW_INVOICE},component:gi},{path:"invoices/create",name:"invoices.create",meta:{ability:O.CREATE_INVOICE},component:bt},{path:"invoices/:id/view",name:"invoices.view",meta:{ability:O.VIEW_INVOICE},component:fi},{path:"invoices/:id/edit",name:"invoices.edit",meta:{ability:O.EDIT_INVOICE},component:bt},{path:"recurring-invoices",name:"recurring-invoices.index",meta:{ability:O.VIEW_RECURRING_INVOICE},component:vi},{path:"recurring-invoices/create",name:"recurring-invoices.create",meta:{ability:O.CREATE_RECURRING_INVOICE},component:kt},{path:"recurring-invoices/:id/view",name:"recurring-invoices.view",meta:{ability:O.VIEW_RECURRING_INVOICE},component:hi},{path:"recurring-invoices/:id/edit",name:"recurring-invoices.edit",meta:{ability:O.EDIT_RECURRING_INVOICE},component:kt},{path:"modules",name:"modules.index",meta:{isOwner:!0},component:ki},{path:"modules/:slug",name:"modules.view",meta:{isOwner:!0},component:wi},{path:"reports",meta:{ability:O.VIEW_FINANCIAL_REPORT},component:yi}]},{path:"/:catchAll(.*)",component:pi}];const Si=()=>P(()=>import("./LayoutBasic.d42d886d.js"),["assets/LayoutBasic.d42d886d.js","assets/auth.0e030165.js","assets/vendor.01d0adc5.js","assets/global.ab8f317c.js","assets/NotificationRoot.79eede9f.js"]),Pi=()=>P(()=>import("./LayoutLogin.65e9ed77.js"),["assets/LayoutLogin.65e9ed77.js","assets/NotificationRoot.79eede9f.js","assets/vendor.01d0adc5.js"]),wt=()=>P(()=>import("./Login.9a626b8a.js"),["assets/Login.9a626b8a.js","assets/vendor.01d0adc5.js","assets/auth.0e030165.js"]),ji=()=>P(()=>import("./ForgotPassword.5b735567.js"),["assets/ForgotPassword.5b735567.js","assets/vendor.01d0adc5.js","assets/auth.0e030165.js"]),Ai=()=>P(()=>import("./ResetPassword.d34fd48c.js"),["assets/ResetPassword.d34fd48c.js","assets/vendor.01d0adc5.js","assets/global.ab8f317c.js","assets/auth.0e030165.js"]),Di=()=>P(()=>import("./Dashboard.1686f020.js"),["assets/Dashboard.1686f020.js","assets/EstimateIcon.8ca6d05b.js","assets/vendor.01d0adc5.js","assets/global.ab8f317c.js","assets/auth.0e030165.js","assets/BaseTable.ab76526e.js"]),Ci=()=>P(()=>import("./Index.43ec37d8.js"),["assets/Index.43ec37d8.js","assets/vendor.01d0adc5.js","assets/invoice.7c108372.js","assets/auth.0e030165.js","assets/BaseTable.ab76526e.js","assets/global.ab8f317c.js","assets/MoonwalkerIcon.ab503573.js"]),Ei=()=>P(()=>import("./View.8b14b89e.js"),["assets/View.8b14b89e.js","assets/vendor.01d0adc5.js","assets/invoice.7c108372.js","assets/auth.0e030165.js","assets/global.ab8f317c.js"]),Ii=()=>P(()=>import("./Index.fe0e7efd.js"),["assets/Index.fe0e7efd.js","assets/vendor.01d0adc5.js","assets/BaseTable.ab76526e.js","assets/global.ab8f317c.js","assets/auth.0e030165.js","assets/estimate.d7337943.js","assets/ObservatoryIcon.1877bd3e.js"]),Ni=()=>P(()=>import("./View.0fbb572e.js"),["assets/View.0fbb572e.js","assets/vendor.01d0adc5.js","assets/estimate.d7337943.js","assets/auth.0e030165.js","assets/global.ab8f317c.js"]),Ti=()=>P(()=>import("./Index.b974602b.js"),["assets/Index.b974602b.js","assets/vendor.01d0adc5.js","assets/BaseTable.ab76526e.js","assets/CapsuleIcon.dc769b69.js","assets/payment.b9d460da.js","assets/auth.0e030165.js","assets/global.ab8f317c.js"]),Ri=()=>P(()=>import("./View.59fb53ba.js"),["assets/View.59fb53ba.js","assets/vendor.01d0adc5.js","assets/payment.b9d460da.js","assets/auth.0e030165.js","assets/global.ab8f317c.js"]),Mi=()=>P(()=>import("./SettingsIndex.be01d1b2.js"),["assets/SettingsIndex.be01d1b2.js","assets/BaseListItem.bd97231b.js","assets/vendor.01d0adc5.js","assets/global.ab8f317c.js","assets/auth.0e030165.js"]),Fi=()=>P(()=>import("./CustomerSettings.e3f07130.js"),["assets/CustomerSettings.e3f07130.js","assets/vendor.01d0adc5.js","assets/global.ab8f317c.js","assets/auth.0e030165.js"]),$i=()=>P(()=>import("./AddressInformation.71bff022.js"),["assets/AddressInformation.71bff022.js","assets/vendor.01d0adc5.js","assets/global.ab8f317c.js","assets/auth.0e030165.js"]);var Ui=[{path:"/:company/customer",component:Pi,meta:{redirectIfAuthenticated:!0},children:[{path:"",component:wt},{path:"login",component:wt,name:"customer.login"},{path:"forgot-password",component:ji,name:"customer.forgot-password"},{path:"reset/password/:token",component:Ai,name:"customer.reset-password"}]},{path:"/:company/customer",component:Si,meta:{requiresAuth:!0},children:[{path:"dashboard",component:Di,name:"customer.dashboard"},{path:"invoices",component:Ci,name:"invoices.dashboard"},{path:"invoices/:id/view",component:Ei,name:"customer.invoices.view"},{path:"estimates",component:Ii,name:"estimates.dashboard"},{path:"estimates/:id/view",component:Ni,name:"customer.estimates.view"},{path:"payments",component:Ti,name:"payments.dashboard"},{path:"payments/:id/view",component:Ri,name:"customer.payments.view"},{path:"settings",component:Mi,name:"customer",children:[{path:"customer-profile",component:Fi,name:"customer.profile"},{path:"address-info",component:$i,name:"customer.address.info"}]}]}];let Ke=[];Ke=Ke.concat(zi,Ui);const Re=$t({history:Ut(),linkActiveClass:"active",routes:Ke});Re.beforeEach((i,r,s)=>{const a=Pe(),t=Te();let n=i.meta.ability;const{isAppLoaded:e}=t;n&&e&&i.meta.requiresAuth?a.hasAbilities(n)?s():s({name:"account.settings"}):i.meta.isOwner&&e?a.currentUser.is_owner?s():s({name:"dashboard"}):s()});var ee=(i,r)=>{const s=i.__vccOpts||i;for(const[a,t]of r)s[a]=t;return s};const Vi={};function Oi(i,r){const s=D("router-view"),a=D("BaseDialog");return l(),_(X,null,[u(s),u(a)],64)}var Li=ee(Vi,[["render",Oi]]);const Bi={dashboard:"Dashboard",customers:"Customers",items:"Items",invoices:"Invoices","recurring-invoices":"Recurring Invoices",expenses:"Expenses",estimates:"Estimates",payments:"Payments",reports:"Reports",settings:"Settings",logout:"Logout",users:"Users",modules:"Modules"},qi={add_company:"Add Company",view_pdf:"View PDF",copy_pdf_url:"Copy PDF Url",download_pdf:"Download PDF",save:"Save",create:"Create",cancel:"Cancel",update:"Update",deselect:"Deselect",download:"Download",from_date:"From Date",to_date:"To Date",from:"From",to:"To",ok:"Ok",yes:"Yes",no:"No",sort_by:"Sort By",ascending:"Ascending",descending:"Descending",subject:"Subject",body:"Body",message:"Message",send:"Send",preview:"Preview",go_back:"Go Back",back_to_login:"Back to Login?",home:"Home",filter:"Filter",delete:"Delete",edit:"Edit",view:"View",add_new_item:"Add New Item",clear_all:"Clear All",showing:"Showing",of:"of",actions:"Actions",subtotal:"SUBTOTAL",discount:"DISCOUNT",fixed:"Fixed",percentage:"Percentage",tax:"TAX",total_amount:"TOTAL AMOUNT",bill_to:"Bill to",ship_to:"Ship to",due:"Due",draft:"Draft",sent:"Sent",all:"All",select_all:"Select All",select_template:"Select Template",choose_file:"Click here to choose a file",choose_template:"Choose a template",choose:"Choose",remove:"Remove",select_a_status:"Select a status",select_a_tax:"Select a tax",search:"Search",are_you_sure:"Are you sure?",list_is_empty:"List is empty.",no_tax_found:"No tax found!",four_zero_four:"404",you_got_lost:"Whoops! You got Lost!",go_home:"Go Home",test_mail_conf:"Test Mail Configuration",send_mail_successfully:"Mail sent successfully",setting_updated:"Setting updated successfully",select_state:"Select state",select_country:"Select Country",select_city:"Select City",street_1:"Street 1",street_2:"Street 2",action_failed:"Action Failed",retry:"Retry",choose_note:"Choose Note",no_note_found:"No Note Found",insert_note:"Insert Note",copied_pdf_url_clipboard:"Copied PDF url to clipboard!",copied_url_clipboard:"Copied url to clipboard!",docs:"Docs",do_you_wish_to_continue:"Do you wish to continue?",note:"Note",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},Ki={select_year:"Select year",cards:{due_amount:"Amount Due",customers:"Customers",invoices:"Invoices",estimates:"Estimates",payments:"Payments"},chart_info:{total_sales:"Sales",total_receipts:"Receipts",total_expense:"Expenses",net_income:"Net Income",year:"Select year"},monthly_chart:{title:"Sales & Expenses"},recent_invoices_card:{title:"Due Invoices",due_on:"Due On",customer:"Customer",amount_due:"Amount Due",actions:"Actions",view_all:"View All"},recent_estimate_card:{title:"Recent Estimates",date:"Date",customer:"Customer",amount_due:"Amount Due",actions:"Actions",view_all:"View All"}},Wi={name:"Name",description:"Description",percent:"Percent",compound_tax:"Compound Tax"},Zi={search:"Search...",customers:"Customers",users:"Users",no_results_found:"No Results Found"},Hi={label:"SWITCH COMPANY",no_results_found:"No Results Found",add_new_company:"Add new company",new_company:"New company",created_message:"Company created successfully"},Yi={today:"Today",this_week:"This Week",this_month:"This Month",this_quarter:"This Quarter",this_year:"This Year",previous_week:"Previous Week",previous_month:"Previous Month",previous_quarter:"Previous Quarter",previous_year:"Previous Year",custom:"Custom"},Gi={title:"Customers",prefix:"Prefix",add_customer:"Add Customer",contacts_list:"Customer List",name:"Name",mail:"Mail | Mails",statement:"Statement",display_name:"Display Name",primary_contact_name:"Primary Contact Name",contact_name:"Contact Name",amount_due:"Amount Due",email:"Email",address:"Address",phone:"Phone",website:"Website",overview:"Overview",invoice_prefix:"Invoice Prefix",estimate_prefix:"Estimate Prefix",payment_prefix:"Payment Prefix",enable_portal:"Enable Portal",country:"Country",state:"State",city:"City",zip_code:"Zip Code",added_on:"Added On",action:"Action",password:"Password",confirm_password:"Confirm Password",street_number:"Street Number",primary_currency:"Primary Currency",description:"Description",add_new_customer:"Add New Customer",save_customer:"Save Customer",update_customer:"Update Customer",customer:"Customer | Customers",new_customer:"New Customer",edit_customer:"Edit Customer",basic_info:"Basic Info",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"Billing Address",shipping_address:"Shipping Address",copy_billing_address:"Copy from Billing",no_customers:"No customers yet!",no_customers_found:"No customers found!",no_contact:"No contact",no_contact_name:"No contact name",list_of_customers:"This section will contain the list of customers.",primary_display_name:"Primary Display Name",select_currency:"Select currency",select_a_customer:"Select a customer",type_or_click:"Type or click to select",new_transaction:"New Transaction",no_matching_customers:"There are no matching customers!",phone_number:"Phone Number",create_date:"Create Date",confirm_delete:"You will not be able to recover this customer and all the related Invoices, Estimates and Payments. | You will not be able to recover these customers and all the related Invoices, Estimates and Payments.",created_message:"Customer created successfully",updated_message:"Customer updated successfully",address_updated_message:"Address Information Updated succesfully",deleted_message:"Customer deleted successfully | Customers deleted successfully",edit_currency_not_allowed:"Cannot change currency once transactions created."},Ji={title:"Items",items_list:"Items List",name:"Name",unit:"Unit",description:"Description",added_on:"Added On",price:"Price",date_of_creation:"Date Of Creation",not_selected:"No item selected",action:"Action",add_item:"Add Item",save_item:"Save Item",update_item:"Update Item",item:"Item | Items",add_new_item:"Add New Item",new_item:"New Item",edit_item:"Edit Item",no_items:"No items yet!",list_of_items:"This section will contain the list of items.",select_a_unit:"select unit",taxes:"Taxes",item_attached_message:"Cannot delete an item which is already in use",confirm_delete:"You will not be able to recover this Item | You will not be able to recover these Items",created_message:"Item created successfully",updated_message:"Item updated successfully",deleted_message:"Item deleted successfully | Items deleted successfully"},Qi={title:"Estimates",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"Estimate | Estimates",estimates_list:"Estimates List",days:"{days} Days",months:"{months} Month",years:"{years} Year",all:"All",paid:"Paid",unpaid:"Unpaid",customer:"CUSTOMER",ref_no:"REF NO.",number:"NUMBER",amount_due:"AMOUNT DUE",partially_paid:"Partially Paid",total:"Total",discount:"Discount",sub_total:"Sub Total",estimate_number:"Estimate Number",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",due_date:"Due Date",expiry_date:"Expiry Date",status:"Status",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",tax:"Tax",estimate_template:"Template",convert_to_invoice:"Convert to Invoice",mark_as_sent:"Mark as Sent",send_estimate:"Send Estimate",resend_estimate:"Resend Estimate",record_payment:"Record Payment",add_estimate:"Add Estimate",save_estimate:"Save Estimate",confirm_conversion:"This estimate will be used to create a new Invoice.",conversion_message:"Invoice created successful",confirm_send_estimate:"This estimate will be sent via email to the customer",confirm_mark_as_sent:"This estimate will be marked as sent",confirm_mark_as_accepted:"This estimate will be marked as Accepted",confirm_mark_as_rejected:"This estimate will be marked as Rejected",no_matching_estimates:"There are no matching estimates!",mark_as_sent_successfully:"Estimate marked as sent successfully",send_estimate_successfully:"Estimate sent successfully",errors:{required:"Field is required"},accepted:"Accepted",rejected:"Rejected",expired:"Expired",sent:"Sent",draft:"Draft",viewed:"Viewed",declined:"Declined",new_estimate:"New Estimate",add_new_estimate:"Add New Estimate",update_Estimate:"Update Estimate",edit_estimate:"Edit Estimate",items:"items",Estimate:"Estimate | Estimates",add_new_tax:"Add New Tax",no_estimates:"No estimates yet!",list_of_estimates:"This section will contain the list of estimates.",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",marked_as_accepted_message:"Estimate marked as accepted",marked_as_rejected_message:"Estimate marked as rejected",confirm_delete:"You will not be able to recover this Estimate | You will not be able to recover these Estimates",created_message:"Estimate created successfully",updated_message:"Estimate updated successfully",deleted_message:"Estimate deleted successfully | Estimates deleted successfully",something_went_wrong:"something went wrong",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"}},Xi={title:"Invoices",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"Invoices List",invoice_information:"Invoice Information",days:"{days} Days",months:"{months} Month",years:"{years} Year",all:"All",paid:"Paid",unpaid:"Unpaid",viewed:"Viewed",overdue:"Overdue",completed:"Completed",customer:"CUSTOMER",paid_status:"PAID STATUS",ref_no:"REF NO.",number:"NUMBER",amount_due:"AMOUNT DUE",partially_paid:"Partially Paid",total:"Total",discount:"Discount",sub_total:"Sub Total",invoice:"Invoice | Invoices",invoice_number:"Invoice Number",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",due_date:"Due Date",status:"Status",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",view:"View",send_invoice:"Send Invoice",resend_invoice:"Resend Invoice",invoice_template:"Invoice Template",conversion_message:"Invoice cloned successful",template:"Select Template",mark_as_sent:"Mark as sent",confirm_send_invoice:"This invoice will be sent via email to the customer",invoice_mark_as_sent:"This invoice will be marked as sent",confirm_mark_as_accepted:"This invoice will be marked as Accepted",confirm_mark_as_rejected:"This invoice will be marked as Rejected",confirm_send:"This invoice will be sent via email to the customer",invoice_date:"Invoice Date",record_payment:"Record Payment",add_new_invoice:"Add New Invoice",update_expense:"Update Expense",edit_invoice:"Edit Invoice",new_invoice:"New Invoice",save_invoice:"Save Invoice",update_invoice:"Update Invoice",add_new_tax:"Add New Tax",no_invoices:"No Invoices yet!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"This section will contain the list of invoices.",select_invoice:"Select Invoice",no_matching_invoices:"There are no matching invoices!",mark_as_sent_successfully:"Invoice marked as sent successfully",invoice_sent_successfully:"Invoice sent successfully",cloned_successfully:"Invoice cloned successfully",clone_invoice:"Clone Invoice",confirm_clone:"This invoice will be cloned into a new Invoice",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"},payment_attached_message:"One of the selected invoices already have a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal",confirm_delete:"You will not be able to recover this Invoice | You will not be able to recover these Invoices",created_message:"Invoice created successfully",updated_message:"Invoice updated successfully",deleted_message:"Invoice deleted successfully | Invoices deleted successfully",marked_as_sent_message:"Invoice marked as sent successfully",something_went_wrong:"something went wrong",invalid_due_amount_message:"Total Invoice amount cannot be less than total paid amount for this Invoice. Please update the invoice or delete the associated payments to continue."},en={title:"Recurring Invoices",invoices_list:"Recurring Invoices List",days:"{days} Days",months:"{months} Month",years:"{years} Year",all:"All",paid:"Paid",unpaid:"Unpaid",viewed:"Viewed",overdue:"Overdue",active:"Active",completed:"Completed",customer:"CUSTOMER",paid_status:"PAID STATUS",ref_no:"REF NO.",number:"NUMBER",amount_due:"AMOUNT DUE",partially_paid:"Partially Paid",total:"Total",discount:"Discount",sub_total:"Sub Total",invoice:"Recurring Invoice | Recurring Invoices",invoice_number:"Recurring Invoice Number",next_invoice_date:"Next Invoice Date",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",limit_by:"Limit by",limit_date:"Limit Date",limit_count:"Limit Count",count:"Count",status:"Status",select_a_status:"Select a status",working:"Working",on_hold:"On Hold",complete:"Completed",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",view:"View",basic_info:"Basic Info",send_invoice:"Send Recurring Invoice",auto_send:"Auto Send",resend_invoice:"Resend Recurring Invoice",invoice_template:"Recurring Invoice Template",conversion_message:"Recurring Invoice cloned successful",template:"Template",mark_as_sent:"Mark as sent",confirm_send_invoice:"This recurring invoice will be sent via email to the customer",invoice_mark_as_sent:"This recurring invoice will be marked as sent",confirm_send:"This recurring invoice will be sent via email to the customer",starts_at:"Start Date",due_date:"Invoice Due Date",record_payment:"Record Payment",add_new_invoice:"Add New Recurring Invoice",update_expense:"Update Expense",edit_invoice:"Edit Recurring Invoice",new_invoice:"New Recurring Invoice",send_automatically:"Send Automatically",send_automatically_desc:"Enable this, if you would like to send the invoice automatically to the customer when its created.",save_invoice:"Save Recurring Invoice",update_invoice:"Update Recurring Invoice",add_new_tax:"Add New Tax",no_invoices:"No Recurring Invoices yet!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"This section will contain the list of recurring invoices.",select_invoice:"Select Invoice",no_matching_invoices:"There are no matching recurring invoices!",mark_as_sent_successfully:"Recurring Invoice marked as sent successfully",invoice_sent_successfully:"Recurring Invoice sent successfully",cloned_successfully:"Recurring Invoice cloned successfully",clone_invoice:"Clone Recurring Invoice",confirm_clone:"This recurring invoice will be cloned into a new Recurring Invoice",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"},frequency:{title:"Frequency",select_frequency:"Select Frequency",minute:"Minute",hour:"Hour",day_month:"Day of month",month:"Month",day_week:"Day of week"},confirm_delete:"You will not be able to recover this Invoice | You will not be able to recover these Invoices",created_message:"Recurring Invoice created successfully",updated_message:"Recurring Invoice updated successfully",deleted_message:"Recurring Invoice deleted successfully | Recurring Invoices deleted successfully",marked_as_sent_message:"Recurring Invoice marked as sent successfully",user_email_does_not_exist:"User email does not exist",something_went_wrong:"something went wrong",invalid_due_amount_message:"Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue."},tn={title:"Payments",payments_list:"Payments List",record_payment:"Record Payment",customer:"Customer",date:"Date",amount:"Amount",action:"Action",payment_number:"Payment Number",payment_mode:"Payment Mode",invoice:"Invoice",note:"Note",add_payment:"Add Payment",new_payment:"New Payment",edit_payment:"Edit Payment",view_payment:"View Payment",add_new_payment:"Add New Payment",send_payment_receipt:"Send Payment Receipt",send_payment:"Send Payment",save_payment:"Save Payment",update_payment:"Update Payment",payment:"Payment | Payments",no_payments:"No payments yet!",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"There are no matching payments!",list_of_payments:"This section will contain the list of payments.",select_payment_mode:"Select payment mode",confirm_mark_as_sent:"This estimate will be marked as sent",confirm_send_payment:"This payment will be sent via email to the customer",send_payment_successfully:"Payment sent successfully",something_went_wrong:"something went wrong",confirm_delete:"You will not be able to recover this Payment | You will not be able to recover these Payments",created_message:"Payment created successfully",updated_message:"Payment updated successfully",deleted_message:"Payment deleted successfully | Payments deleted successfully",invalid_amount_message:"Payment amount is invalid"},an={title:"Expenses",expenses_list:"Expenses List",select_a_customer:"Select a customer",expense_title:"Title",customer:"Customer",currency:"Currency",contact:"Contact",category:"Category",from_date:"From Date",to_date:"To Date",expense_date:"Date",description:"Description",receipt:"Receipt",amount:"Amount",action:"Action",not_selected:"Not selected",note:"Note",category_id:"Category Id",date:"Date",add_expense:"Add Expense",add_new_expense:"Add New Expense",save_expense:"Save Expense",update_expense:"Update Expense",download_receipt:"Download Receipt",edit_expense:"Edit Expense",new_expense:"New Expense",expense:"Expense | Expenses",no_expenses:"No expenses yet!",list_of_expenses:"This section will contain the list of expenses.",confirm_delete:"You will not be able to recover this Expense | You will not be able to recover these Expenses",created_message:"Expense created successfully",updated_message:"Expense updated successfully",deleted_message:"Expense deleted successfully | Expenses deleted successfully",categories:{categories_list:"Categories List",title:"Title",name:"Name",description:"Description",amount:"Amount",actions:"Actions",add_category:"Add Category",new_category:"New Category",category:"Category | Categories",select_a_category:"Select a category"}},nn={email:"Email",password:"Password",forgot_password:"Forgot Password?",or_signIn_with:"or Sign in with",login:"Login",register:"Register",reset_password:"Reset Password",password_reset_successfully:"Password Reset Successfully",enter_email:"Enter email",enter_password:"Enter Password",retype_password:"Retype Password"},sn={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},on={title:"Users",users_list:"Users List",name:"Name",description:"Description",added_on:"Added On",date_of_creation:"Date Of Creation",action:"Action",add_user:"Add User",save_user:"Save User",update_user:"Update User",user:"User | Users",add_new_user:"Add New User",new_user:"New User",edit_user:"Edit User",no_users:"No users yet!",list_of_users:"This section will contain the list of users.",email:"Email",phone:"Phone",password:"Password",user_attached_message:"Cannot delete an item which is already in use",confirm_delete:"You will not be able to recover this User | You will not be able to recover these Users",created_message:"User created successfully",updated_message:"User updated successfully",deleted_message:"User deleted successfully | Users deleted successfully",select_company_role:"Select Role for {company}",companies:"Companies"},rn={title:"Report",from_date:"From Date",to_date:"To Date",status:"Status",paid:"Paid",unpaid:"Unpaid",download_pdf:"Download PDF",view_pdf:"View PDF",update_report:"Update Report",report:"Report | Reports",profit_loss:{profit_loss:"Profit & Loss",to_date:"To Date",from_date:"From Date",date_range:"Select Date Range"},sales:{sales:"Sales",date_range:"Select Date Range",to_date:"To Date",from_date:"From Date",report_type:"Report Type"},taxes:{taxes:"Taxes",to_date:"To Date",from_date:"From Date",date_range:"Select Date Range"},errors:{required:"Field is required"},invoices:{invoice:"Invoice",invoice_date:"Invoice Date",due_date:"Due Date",amount:"Amount",contact_name:"Contact Name",status:"Status"},estimates:{estimate:"Estimate",estimate_date:"Estimate Date",due_date:"Due Date",estimate_number:"Estimate Number",ref_number:"Ref Number",amount:"Amount",contact_name:"Contact Name",status:"Status"},expenses:{expenses:"Expenses",category:"Category",date:"Date",amount:"Amount",to_date:"To Date",from_date:"From Date",date_range:"Select Date Range"}},dn={menu_title:{account_settings:"Account Settings",company_information:"Company Information",customization:"Customization",preferences:"Preferences",notifications:"Notifications",tax_types:"Tax Types",expense_category:"Expense Categories",update_app:"Update App",backup:"Backup",file_disk:"File Disk",custom_fields:"Custom Fields",payment_modes:"Payment Modes",notes:"Notes",exchange_rate:"Exchange Rate",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"Settings",setting:"Settings | Settings",general:"General",language:"Language",primary_currency:"Primary Currency",timezone:"Time Zone",date_format:"Date Format",currencies:{title:"Currencies",currency:"Currency | Currencies",currencies_list:"Currencies List",select_currency:"Select Currency",name:"Name",code:"Code",symbol:"Symbol",precision:"Precision",thousand_separator:"Thousand Separator",decimal_separator:"Decimal Separator",position:"Position",position_of_symbol:"Position Of Symbol",right:"Right",left:"Left",action:"Action",add_currency:"Add Currency"},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail Driver",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"Mail Password",username:"Mail Username",mail_config:"Mail Configuration",from_name:"From Mail Name",from_mail:"From Mail Address",encryption:"Mail Encryption",mail_config_desc:"Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc."},pdf:{title:"PDF Setting",footer_text:"Footer Text",pdf_layout:"PDF Layout"},company_info:{company_info:"Company info",company_name:"Company Name",company_logo:"Company Logo",section_description:"Information about your company that will be displayed on invoices, estimates and other documents created by Crater.",phone:"Phone",country:"Country",state:"State",city:"City",address:"Address",zip:"Zip",save:"Save",delete:"Delete",updated_message:"Company information updated successfully",delete_company:"Delete Company",delete_company_description:"Once you delete your company, you will lose all the data and files associated with it permanently.",are_you_absolutely_sure:"Are you absolutely sure?",delete_company_modal_desc:"This action cannot be undone. This will permanently delete {company} and all of its associated data.",delete_company_modal_label:"Please type {company} to confirm"},custom_fields:{title:"Custom Fields",section_description:"Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.",add_custom_field:"Add Custom Field",edit_custom_field:"Edit Custom Field",field_name:"Field Name",label:"Label",type:"Type",name:"Name",slug:"Slug",required:"Required",placeholder:"Placeholder",help_text:"Help Text",default_value:"Default Value",prefix:"Prefix",starting_number:"Starting Number",model:"Model",help_text_description:"Enter some text to help users understand the purpose of this custom field.",suffix:"Suffix",yes:"Yes",no:"No",order:"Order",custom_field_confirm_delete:"You will not be able to recover this Custom Field",already_in_use:"Custom Field is already in use",deleted_message:"Custom Field deleted successfully",options:"options",add_option:"Add Options",add_another_option:"Add another option",sort_in_alphabetical_order:"Sort in Alphabetical Order",add_options_in_bulk:"Add options in bulk",use_predefined_options:"Use Predefined Options",select_custom_date:"Select Custom Date",select_relative_date:"Select Relative Date",ticked_by_default:"Ticked by default",updated_message:"Custom Field updated successfully",added_message:"Custom Field added successfully",press_enter_to_add:"Press enter to add new option",model_in_use:"Cannot update model for fields which are already in use.",type_in_use:"Cannot update type for fields which are already in use."},customization:{customization:"customization",updated_message:"Company information updated successfully",save:"Save",insert_fields:"Insert Fields",learn_custom_format:"Learn how to use custom format",add_new_component:"Add New Component",component:"Component",Parameter:"Parameter",series:"Series",series_description:"To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.",series_param_label:"Series Value",delimiter:"Delimiter",delimiter_description:"Single character for specifying the boundary between 2 separate components. By default its set to -",delimiter_param_label:"Delimiter Value",date_format:"Date Format",date_format_description:"A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.",date_format_param_label:"Format",sequence:"Sequence",sequence_description:"Consecutive sequence of numbers across your company. You can specify the length on the given parameter.",sequence_param_label:"Sequence Length",customer_series:"Customer Series",customer_series_description:"To set a different prefix/postfix for each customer.",customer_sequence:"Customer Sequence",customer_sequence_description:"Consecutive sequence of numbers for each of your customer.",customer_sequence_param_label:"Sequence Length",random_sequence:"Random Sequence",random_sequence_description:"Random alphanumeric string. You can specify the length on the given parameter.",random_sequence_param_label:"Sequence Length",invoices:{title:"Invoices",invoice_number_format:"Invoice Number Format",invoice_number_format_description:"Customize how your invoice number gets generated automatically when you create a new invoice.",preview_invoice_number:"Preview Invoice Number",due_date:"Due Date",due_date_description:"Specify how due date is automatically set when you create an invoice.",due_date_days:"Invoice Due after days",set_due_date_automatically:"Set Due Date Automatically",set_due_date_automatically_description:"Enable this if you wish to set due date automatically when you create a new invoice.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on invoice creation.",default_invoice_email_body:"Default Invoice Email Body",company_address_format:"Company Address Format",shipping_address_format:"Shipping Address Format",billing_address_format:"Billing Address Format",invoice_email_attachment:"Send invoices as attachments",invoice_email_attachment_setting_description:"Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.",invoice_settings_updated:"Invoice Settings updated successfully",retrospective_edits:"Retrospective Edits",allow:"Allow",disable_on_invoice_partial_paid:"Disable after partial payment is recorded",disable_on_invoice_paid:"Disable after full payment is recorded",disable_on_invoice_sent:"Disable after invoice is sent",retrospective_edits_description:" Based on your country's laws or your preference, you can restrict users from editing finalised invoices."},estimates:{title:"Estimates",estimate_number_format:"Estimate Number Format",estimate_number_format_description:"Customize how your estimate number gets generated automatically when you create a new estimate.",preview_estimate_number:"Preview Estimate Number",expiry_date:"Expiry Date",expiry_date_description:"Specify how expiry date is automatically set when you create an estimate.",expiry_date_days:"Estimate Expires after days",set_expiry_date_automatically:"Set Expiry Date Automatically",set_expiry_date_automatically_description:"Enable this if you wish to set expiry date automatically when you create a new estimate.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on estimate creation.",default_estimate_email_body:"Default Estimate Email Body",company_address_format:"Company Address Format",shipping_address_format:"Shipping Address Format",billing_address_format:"Billing Address Format",estimate_email_attachment:"Send estimates as attachments",estimate_email_attachment_setting_description:"Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.",estimate_settings_updated:"Estimate Settings updated successfully",convert_estimate_options:"Estimate Convert Action",convert_estimate_description:"Specify what happens to the estimate after it gets converted to an invoice.",no_action:"No action",delete_estimate:"Delete estimate",mark_estimate_as_accepted:"Mark estimate as accepted"},payments:{title:"Payments",payment_number_format:"Payment Number Format",payment_number_format_description:"Customize how your payment number gets generated automatically when you create a new payment.",preview_payment_number:"Preview Payment Number",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on payment creation.",default_payment_email_body:"Default Payment Email Body",company_address_format:"Company Address Format",from_customer_address_format:"From Customer Address Format",payment_email_attachment:"Send payments as attachments",payment_email_attachment_setting_description:"Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.",payment_settings_updated:"Payment Settings updated successfully"},items:{title:"Items",units:"Units",add_item_unit:"Add Item Unit",edit_item_unit:"Edit Item Unit",unit_name:"Unit Name",item_unit_added:"Item Unit Added",item_unit_updated:"Item Unit Updated",item_unit_confirm_delete:"You will not be able to recover this Item unit",already_in_use:"Item Unit is already in use",deleted_message:"Item Unit deleted successfully"},notes:{title:"Notes",description:"Save time by creating notes and reusing them on your invoices, estimates & payments.",notes:"Notes",type:"Type",add_note:"Add Note",add_new_note:"Add New Note",name:"Name",edit_note:"Edit Note",note_added:"Note added successfully",note_updated:"Note Updated successfully",note_confirm_delete:"You will not be able to recover this Note",already_in_use:"Note is already in use",deleted_message:"Note deleted successfully"}},account_settings:{profile_picture:"Profile Picture",name:"Name",email:"Email",password:"Password",confirm_password:"Confirm Password",account_settings:"Account Settings",save:"Save",section_description:"You can update your name, email & password using the form below.",updated_message:"Account Settings updated successfully"},user_profile:{name:"Name",email:"Email",password:"Password",confirm_password:"Confirm Password"},notification:{title:"Notifications",email:"Send Notifications to",description:"Which email notifications would you like to receive when something changes?",invoice_viewed:"Invoice viewed",invoice_viewed_desc:"When your customer views the invoice sent via crater dashboard.",estimate_viewed:"Estimate viewed",estimate_viewed_desc:"When your customer views the estimate sent via crater dashboard.",save:"Save",email_save_message:"Email saved successfully",please_enter_email:"Please Enter Email"},roles:{title:"Roles",description:"Manage the roles & permissions of this company",save:"Save",add_new_role:"Add New Role",role_name:"Role Name",added_on:"Added on",add_role:"Add Role",edit_role:"Edit Role",name:"Name",permission:"Permission | Permissions",select_all:"Select All",none:"None",confirm_delete:"You will not be able to recover this Role",created_message:"Role created successfully",updated_message:"Role updated successfully",deleted_message:"Role deleted successfully",already_in_use:"Role is already in use"},exchange_rate:{exchange_rate:"Exchange Rate",title:"Fix Currency Exchange issues",description:"Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.",drivers:"Drivers",new_driver:"Add New Provider",edit_driver:"Edit Provider",select_driver:"Select Driver",update:"select exchange rate ",providers_description:"Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.",key:"API Key",name:"Name",driver:"Driver",is_default:"IS DEFAULT",currency:"Currencies",exchange_rate_confirm_delete:"You will not be able to recover this driver",created_message:"Provider Created successfully",updated_message:"Provider Updated Successfully",deleted_message:"Provider Deleted Successfully",error:" You cannot Delete Active Driver",default_currency_error:"This currency is already used in one of the Active Provider",exchange_help_text:"Enter exchange rate to convert from {currency} to {baseCurrency}",currency_freak:"Currency Freak",currency_layer:"Currency Layer",open_exchange_rate:"Open Exchange Rate",currency_converter:"Currency Converter",server:"Server",url:"URL",active:"Active",currency_help_text:"This provider will only be used on above selected currencies",currency_in_used:"The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again."},tax_types:{title:"Tax Types",add_tax:"Add Tax",edit_tax:"Edit Tax",description:"You can add or Remove Taxes as you please. Crater supports Taxes on Individual Items as well as on the invoice.",add_new_tax:"Add New Tax",tax_settings:"Tax Settings",tax_per_item:"Tax Per Item",tax_name:"Tax Name",compound_tax:"Compound Tax",percent:"Percent",action:"Action",tax_setting_description:"Enable this if you want to add taxes to individual invoice items. By default, taxes are added directly to the invoice.",created_message:"Tax type created successfully",updated_message:"Tax type updated successfully",deleted_message:"Tax type deleted successfully",confirm_delete:"You will not be able to recover this Tax Type",already_in_use:"Tax is already in use"},payment_modes:{title:"Payment Modes",description:"Modes of transaction for payments",add_payment_mode:"Add Payment Mode",edit_payment_mode:"Edit Payment Mode",mode_name:"Mode Name",payment_mode_added:"Payment Mode Added",payment_mode_updated:"Payment Mode Updated",payment_mode_confirm_delete:"You will not be able to recover this Payment Mode",already_in_use:"Payment Mode is already in use",deleted_message:"Payment Mode deleted successfully"},expense_category:{title:"Expense Categories",action:"Action",description:"Categories are required for adding expense entries. You can Add or Remove these categories according to your preference.",add_new_category:"Add New Category",add_category:"Add Category",edit_category:"Edit Category",category_name:"Category Name",category_description:"Description",created_message:"Expense Category created successfully",deleted_message:"Expense category deleted successfully",updated_message:"Expense category updated successfully",confirm_delete:"You will not be able to recover this Expense Category",already_in_use:"Category is already in use"},preferences:{currency:"Currency",default_language:"Default Language",time_zone:"Time Zone",fiscal_year:"Financial Year",date_format:"Date Format",discount_setting:"Discount Setting",discount_per_item:"Discount Per Item ",discount_setting_description:"Enable this if you want to add Discount to individual invoice items. By default, Discount is added directly to the invoice.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"Save",preference:"Preference | Preferences",general_settings:"Default preferences for the system.",updated_message:"Preferences updated successfully",select_language:"Select Language",select_time_zone:"Select Time Zone",select_date_format:"Select Date Format",select_financial_year:"Select Financial Year",recurring_invoice_status:"Recurring Invoice Status",create_status:"Create Status",active:"Active",on_hold:"On Hold",update_status:"Update Status",completed:"Completed",company_currency_unchangeable:"Company currency cannot be changed"},update_app:{title:"Update App",description:"You can easily update Crater by checking for a new update by clicking the button below",check_update:"Check for updates",avail_update:"New Update available",next_version:"Next version",requirements:"Requirements",update:"Update Now",update_progress:"Update in progress...",progress_text:"It will just take a few minutes. Please do not refresh the screen or close the window before the update finishes",update_success:"App has been updated! Please wait while your browser window gets reloaded automatically.",latest_message:"No update available! You are on the latest version.",current_version:"Current Version",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",running_migrations:"Running Migrations",finishing_update:"Finishing Update",update_failed:"Update Failed",update_failed_text:"Sorry! Your update failed on : {step} step",update_warning:"All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating."},backup:{title:"Backup | Backups",description:"The backup is a zipfile that contains all files in the directories you specify along with a dump of your database",new_backup:"Add New Backup",create_backup:"Create Backup",select_backup_type:"Select Backup Type",backup_confirm_delete:"You will not be able to recover this Backup",path:"path",new_disk:"New Disk",created_at:"created at",size:"size",dropbox:"dropbox",local:"local",healthy:"healthy",amount_of_backups:"amount of backups",newest_backups:"newest backups",used_storage:"used storage",select_disk:"Select Disk",action:"Action",deleted_message:"Backup deleted successfully",created_message:"Backup created successfully",invalid_disk_credentials:"Invalid credential of selected disk"},disk:{title:"File Disk | File Disks",description:"By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.",created_at:"created at",dropbox:"dropbox",name:"Name",driver:"Driver",disk_type:"Type",disk_name:"Disk Name",new_disk:"Add New Disk",filesystem_driver:"Filesystem Driver",local_driver:"local Driver",local_root:"local Root",public_driver:"Public Driver",public_root:"Public Root",public_url:"Public URL",public_visibility:"Public Visibility",media_driver:"Media Driver",media_root:"Media Root",aws_driver:"AWS Driver",aws_key:"AWS Key",aws_secret:"AWS Secret",aws_region:"AWS Region",aws_bucket:"AWS Bucket",aws_root:"AWS Root",do_spaces_type:"Do Spaces type",do_spaces_key:"Do Spaces key",do_spaces_secret:"Do Spaces Secret",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Dropbox Type",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Key",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Default Driver",is_default:"IS DEFAULT",set_default_disk:"Set Default Disk",set_default_disk_confirm:"This disk will be set as default and all the new PDFs will be saved on this disk",success_set_default_disk:"Disk set as default successfully",save_pdf_to_disk:"Save PDFs to Disk",disk_setting_description:" Enable this, if you wish to save a copy of each Invoice, Estimate & Payment Receipt PDF on your default disk automatically. Turning this option will decrease the load-time when viewing the PDFs.",select_disk:"Select Disk",disk_settings:"Disk Settings",confirm_delete:"Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater",action:"Action",edit_file_disk:"Edit File Disk",success_create:"Disk added successfully",success_update:"Disk updated successfully",error:"Disk addition failed",deleted_message:"File Disk deleted successfully",disk_variables_save_successfully:"Disk Configured Successfully",disk_variables_save_error:"Disk configuration failed.",invalid_disk_credentials:"Invalid credential of selected disk"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},ln={account_info:"Account Information",account_info_desc:"Below details will be used to create the main Administrator account. Also you can change the details anytime after logging in.",name:"Name",email:"Email",password:"Password",confirm_password:"Confirm Password",save_cont:"Save & Continue",company_info:"Company Information",company_info_desc:"This information will be displayed on invoices. Note that you can edit this later on settings page.",company_name:"Company Name",company_logo:"Company Logo",logo_preview:"Logo Preview",preferences:"Company Preferences",preferences_desc:"Specify the default preferences for this company.",currency_set_alert:"The company's currency cannot be changed later.",country:"Country",state:"State",city:"City",address:"Address",street:"Street1 | Street2",phone:"Phone",zip_code:"Zip Code",go_back:"Go Back",currency:"Currency",language:"Language",time_zone:"Time Zone",fiscal_year:"Financial Year",date_format:"Date Format",from_address:"From Address",username:"Username",next:"Next",continue:"Continue",skip:"Skip",database:{database:"Site URL & Database",connection:"Database Connection",host:"Database Host",port:"Database Port",password:"Database Password",app_url:"App URL",app_domain:"App Domain",username:"Database Username",db_name:"Database Name",db_path:"Database Path",desc:"Create a database on your server and set the credentials using the form below."},permissions:{permissions:"Permissions",permission_confirm_title:"Are you sure you want to continue?",permission_confirm_desc:"Folder permission check failed",permission_desc:"Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions."},verify_domain:{title:"Domain Verification",desc:"Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.",app_domain:"App Domain",verify_now:"Verify Now",success:"Domain Verify Successfully.",failed:"Domain verification failed. Please enter valid domain name.",verify_and_continue:"Verify And Continue"},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail Driver",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"Mail Password",username:"Mail Username",mail_config:"Mail Configuration",from_name:"From Mail Name",from_mail:"From Mail Address",encryption:"Mail Encryption",mail_config_desc:"Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc."},req:{system_req:"System Requirements",php_req_version:"Php (version {version} required)",check_req:"Check Requirements",system_req_desc:"Crater has a few server requirements. Make sure that your server has the required php version and all the extensions mentioned below."},errors:{migrate_failed:"Migrate Failed",database_variables_save_error:"Cannot write configuration to .env file. Please check its file permissions",mail_variables_save_error:"Email configuration failed.",connection_failed:"Database connection failed",database_should_be_empty:"Database should be empty"},success:{mail_variables_save_successfully:"Email configured successfully",database_variables_save_successfully:"Database configured successfully."}},cn={invalid_phone:"Invalid Phone Number",invalid_url:"Invalid url (ex: http://www.craterapp.com)",invalid_domain_url:"Invalid url (ex: craterapp.com)",required:"Field is required",email_incorrect:"Incorrect Email.",email_already_taken:"The email has already been taken.",email_does_not_exist:"User with given email doesn't exist",item_unit_already_taken:"This item unit name has already been taken",payment_mode_already_taken:"This payment mode name has already been taken",send_reset_link:"Send Reset Link",not_yet:"Not yet? Send it again",password_min_length:"Password must contain {count} characters",name_min_length:"Name must have at least {count} letters.",prefix_min_length:"Prefix must have at least {count} letters.",enter_valid_tax_rate:"Enter valid tax rate",numbers_only:"Numbers Only.",characters_only:"Characters Only.",password_incorrect:"Passwords must be identical",password_length:"Password must be {count} character long.",qty_must_greater_than_zero:"Quantity must be greater than zero.",price_greater_than_zero:"Price must be greater than zero.",payment_greater_than_zero:"Payment must be greater than zero.",payment_greater_than_due_amount:"Entered Payment is more than due amount of this invoice.",quantity_maxlength:"Quantity should not be greater than 20 digits.",price_maxlength:"Price should not be greater than 20 digits.",price_minvalue:"Price should be greater than 0.",amount_maxlength:"Amount should not be greater than 20 digits.",amount_minvalue:"Amount should be greater than 0.",discount_maxlength:"Discount should not be greater than max discount",description_maxlength:"Description should not be greater than 255 characters.",subject_maxlength:"Subject should not be greater than 100 characters.",message_maxlength:"Message should not be greater than 255 characters.",maximum_options_error:"Maximum of {max} options selected. First remove a selected option to select another.",notes_maxlength:"Notes should not be greater than 65,000 characters.",address_maxlength:"Address should not be greater than 255 characters.",ref_number_maxlength:"Ref Number should not be greater than 255 characters.",prefix_maxlength:"Prefix should not be greater than 5 characters.",something_went_wrong:"something went wrong",number_length_minvalue:"Number length should be greater than 0",at_least_one_ability:"Please select atleast one Permission.",valid_driver_key:"Please enter a valid {driver} key.",valid_exchange_rate:"Please enter a valid exchange rate.",company_name_not_same:"Company name must match with given name."},_n={starter_plan:"This feature is available on Starter plan and onwards!",invalid_provider_key:"Please Enter Valid Provider API Key.",estimate_number_used:"The estimate number has already been taken.",invoice_number_used:"The invoice number has already been taken.",payment_attached:"This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.",payment_number_used:"The payment number has already been taken.",name_already_taken:"The name has already been taken.",receipt_does_not_exist:"Receipt does not exist.",customer_cannot_be_changed_after_payment_is_added:"Customer cannot be change after payment is added",invalid_credentials:"Invalid Credentials.",not_allowed:"Not Allowed",login_invalid_credentials:"These credentials do not match our records.",enter_valid_cron_format:"Please enter a valid cron format",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},un="Estimate",mn="Estimate Number",pn="Estimate Date",gn="Expiry date",fn="Invoice",vn="Invoice Number",hn="Invoice Date",yn="Due date",bn="Notes",kn="Items",wn="Quantity",xn="Price",zn="Discount",Sn="Amount",Pn="Subtotal",jn="Total",An="Payment",Dn="PAYMENT RECEIPT",Cn="Payment Date",En="Payment Number",In="Payment Mode",Nn="Amount Received",Tn="EXPENSES REPORT",Rn="TOTAL EXPENSE",Mn="PROFIT & LOSS REPORT",Fn="Sales Customer Report",$n="Sales Item Report",Un="Tax Summary Report",Vn="INCOME",On="NET PROFIT",Ln="Sales Report: By Customer",Bn="TOTAL SALES",qn="Sales Report: By Item",Kn="TAX REPORT",Wn="TOTAL TAX",Zn="Tax Types",Hn="Expenses",Yn="Bill to,",Gn="Ship to,",Jn="Received from:",Qn="Tax";var Xn={navigation:Bi,general:qi,dashboard:Ki,tax_types:Wi,global_search:Zi,company_switcher:Hi,dateRange:Yi,customers:Gi,items:Ji,estimates:Qi,invoices:Xi,recurring_invoices:en,payments:tn,expenses:an,login:nn,modules:sn,users:on,reports:rn,settings:dn,wizard:ln,validation:cn,errors:_n,pdf_estimate_label:un,pdf_estimate_number:mn,pdf_estimate_date:pn,pdf_estimate_expire_date:gn,pdf_invoice_label:fn,pdf_invoice_number:vn,pdf_invoice_date:hn,pdf_invoice_due_date:yn,pdf_notes:bn,pdf_items_label:kn,pdf_quantity_label:wn,pdf_price_label:xn,pdf_discount_label:zn,pdf_amount_label:Sn,pdf_subtotal:Pn,pdf_total:jn,pdf_payment_label:An,pdf_payment_receipt_label:Dn,pdf_payment_date:Cn,pdf_payment_number:En,pdf_payment_mode:In,pdf_payment_amount_received_label:Nn,pdf_expense_report_label:Tn,pdf_total_expenses_label:Rn,pdf_profit_loss_label:Mn,pdf_sales_customers_label:Fn,pdf_sales_items_label:$n,pdf_tax_summery_label:Un,pdf_income_label:Vn,pdf_net_profit_label:On,pdf_customer_sales_report:Ln,pdf_total_sales_label:Bn,pdf_item_sales_label:qn,pdf_tax_report_label:Kn,pdf_total_tax_label:Wn,pdf_tax_types_label:Zn,pdf_expenses_label:Hn,pdf_bill_to:Yn,pdf_ship_to:Gn,pdf_received_from:Jn,pdf_tax_label:Qn};const es={dashboard:"Tableau de bord",customers:"Clients",items:"Articles",invoices:"Factures","recurring-invoices":"Factures r\xE9currentes",expenses:"D\xE9penses",estimates:"Devis",payments:"Paiements",reports:"Rapports",settings:"Param\xE8tres",logout:"D\xE9connexion",users:"Utilisateurs",modules:"Modules"},ts={add_company:"Ajouter une entreprise",view_pdf:"Afficher le PDF",copy_pdf_url:"Copier l'URL du PDF",download_pdf:"T\xE9l\xE9charger le PDF",save:"Enregistrer",create:"Cr\xE9er",cancel:"Annuler",update:"Mettre \xE0 jour",deselect:"Enlever",download:"T\xE9l\xE9charger",from_date:"Du",to_date:"Au",from:"Du",to:"Au",ok:"Ok",yes:"Oui",no:"Non",sort_by:"Trier par",ascending:"Ascendant",descending:"Descendant",subject:"Objet",body:"Message",message:"Message",send:"Envoyer",preview:"Aper\xE7u",go_back:"Retourner",back_to_login:"Revenir \xE0 la page de connexion ?",home:"Tableau de bord",filter:"Filtrer",delete:"Supprimer",edit:"Modifier",view:"Afficher",add_new_item:"Ajouter une ligne",clear_all:"Tout supprimer",showing:"Affichage ",of:"sur",actions:"Actions",subtotal:"SOUS-TOTAL",discount:"REMISE",fixed:"Fixe",percentage:"Pourcentage",tax:"TAXE",total_amount:"TOTAL ",bill_to:"Facturer \xE0",ship_to:"Exp\xE9dier \xE0",due:"En cours",draft:"Brouillon",sent:"Envoy\xE9e",all:"Tout",select_all:"Tout s\xE9lectionner",select_template:"Mod\xE8le",choose_file:"Cliquez ici pour choisir un fichier",choose_template:"Choisissez un mod\xE8le",choose:"Choisir",remove:"Supprimer",select_a_status:"S\xE9lectionnez un statut",select_a_tax:"S\xE9lectionnez une taxe",search:"Rechercher",are_you_sure:"\xCAtes-vous s\xFBr ?",list_is_empty:"La liste est vide.",no_tax_found:"Aucune taxe trouv\xE9e !",four_zero_four:"404",you_got_lost:"Oups! Vous vous \xEAtes perdus!",go_home:"Retour au tableau de bord",test_mail_conf:"Envoyer un email de test",send_mail_successfully:"Email envoy\xE9",setting_updated:"Param\xE8tres mis \xE0 jour",select_state:"S\xE9lectionnez l'\xE9tat",select_country:"Choisissez le pays",select_city:"S\xE9lectionnez une ville",street_1:"Rue 1",street_2:"Rue # 2",action_failed:"Action : \xE9chou\xE9",retry:"R\xE9essayez",choose_note:"Choisissez une note de bas de page",no_note_found:"Aucune note de bas de page trouv\xE9e",insert_note:"Ins\xE9rer une note",copied_pdf_url_clipboard:"L'adresse du PDF a \xE9t\xE9 copi\xE9e.",copied_url_clipboard:"Copied url to clipboard!",docs:"Documents",do_you_wish_to_continue:"Voulez-vous continuer ?",note:"Note de bas de page",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},as={select_year:"S\xE9lectionnez l'ann\xE9e",cards:{due_amount:"Encours clients",customers:"Clients",invoices:"Factures",estimates:"Devis",payments:"Payments"},chart_info:{total_sales:"Ventes",total_receipts:"Recettes",total_expense:"D\xE9penses",net_income:"R\xE9sultat",year:"S\xE9lectionnez l'ann\xE9e"},monthly_chart:{title:"Recettes et d\xE9penses"},recent_invoices_card:{title:"Factures en cours",due_on:"\xC9ch\xE9ance",customer:"Client",amount_due:"Montant",actions:"Actions",view_all:"Tout afficher"},recent_estimate_card:{title:"Devis r\xE9cents",date:"Expiration",customer:"Client",amount_due:"Montant",actions:"Actions",view_all:"Tout afficher"}},is={name:"Nom",description:"Description",percent:"Pourcentage",compound_tax:"Taxe empil\xE9e"},ns={search:"Rechercher",customers:"Clients",users:"Utilisateurs",no_results_found:"Aucun r\xE9sultat"},ss={label:"CHANGER DE SOCI\xC9T\xC9",no_results_found:"Aucun r\xE9sultat",add_new_company:"Ajouter une soci\xE9t\xE9",new_company:"Nouvelle soci\xE9t\xE9",created_message:"Soci\xE9t\xE9 cr\xE9\xE9e"},os={today:"Aujourd'hui",this_week:"Cette semaine",this_month:"Ce mois",this_quarter:"Ce trimestre",this_year:"Cette ann\xE9e",previous_week:"Semaine pr\xE9c\xE9dente",previous_month:"Mois pr\xE9c\xE9dent",previous_quarter:"Trimestre pr\xE9c\xE9dent",previous_year:"Ann\xE9e pr\xE9c\xE9dente",custom:"Personnalis\xE9e"},rs={title:"Clients",prefix:"Code client",add_customer:"Ajouter un client",contacts_list:"Liste de clients",name:"Nom",mail:"Email | Emails",statement:"D\xE9claration",display_name:"Nom",primary_contact_name:"Contact principal",contact_name:"Contact",amount_due:"Montant d\xFB",email:"Email",address:"Adresse",phone:"T\xE9l\xE9phone",website:"Site Internet",overview:"Aper\xE7u",invoice_prefix:"Pr\xE9fixe de facture",estimate_prefix:"Pr\xE9fixe des devis",payment_prefix:"Pr\xE9fixe de paiement",enable_portal:"Activer le portail",country:"Pays",state:"\xC9tat",city:"Ville",zip_code:"Code postal",added_on:"Ajout\xE9 le",action:"Action",password:"Mot de passe",confirm_password:"Confirmez le mot de passe",street_number:"Num\xE9ro de rue",primary_currency:"Devise principale",description:"Description",add_new_customer:"Ajouter un client",save_customer:"Enregistrer",update_customer:"Enregistrer",customer:"Client | Clients",new_customer:"Nouveau client",edit_customer:"Modifier le client",basic_info:"Informations de base",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"Adresse de facturation",shipping_address:"Adresse de livraison",copy_billing_address:"Copier depuis l'adresse de facturation",no_customers:"Vous n\u2019avez pas encore de clients !",no_customers_found:"Aucun client",no_contact:"-",no_contact_name:"-",list_of_customers:"Ajoutez des clients et retrouvez-les ici.",primary_display_name:"Nom d'affichage principal",select_currency:"S\xE9lectionnez la devise",select_a_customer:"S\xE9lectionnez un client",type_or_click:"S\xE9lectionnez un article",new_transaction:"Ajouter une op\xE9ration",no_matching_customers:"Il n'y a aucun client correspondant !",phone_number:"Num\xE9ro de t\xE9l\xE9phone",create_date:"Date de cr\xE9ation",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer ce client et les devis, factures et paiements associ\xE9s. | Vous ne serez pas en mesure de r\xE9cup\xE9rer ces clients et les devis, factures et paiements associ\xE9s.",created_message:"Client cr\xE9\xE9",updated_message:"Client mis \xE0 jour",address_updated_message:"Address Information Updated succesfully",deleted_message:"Client supprim\xE9 | Clients supprim\xE9s",edit_currency_not_allowed:"Impossible de changer de devise une fois les transactions cr\xE9\xE9es."},ds={title:"Articles",items_list:"Liste d'articles",name:"Nom",unit:"Unit\xE9",description:"Description",added_on:"Ajout\xE9 le",price:"Prix",date_of_creation:"Date de cr\xE9ation",not_selected:"Aucun article s\xE9lectionn\xE9",action:"Action",add_item:"Nouvel article",save_item:"Enregistrer",update_item:"Enregistrer",item:"Article | Articles",add_new_item:"Ajouter un article",new_item:"Nouvel article",edit_item:"Modifier cet article",no_items:"Aucun article",list_of_items:"Ajoutez des articles et retrouvez-les ici",select_a_unit:"S\xE9lectionnez l'unit\xE9",taxes:"Taxes",item_attached_message:"Impossible de supprimer un article d\xE9j\xE0 utilis\xE9",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cet article | Vous ne pourrez pas r\xE9cup\xE9rer ces objets",created_message:"Article cr\xE9\xE9",updated_message:"Article mis \xE0 jour",deleted_message:"Article supprim\xE9 avec succ\xE8s | Articles supprim\xE9s avec succ\xE8s"},ls={title:"Devis",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"Devis | Devis",estimates_list:"Liste des devis",days:"{days} jours",months:"{months} mois",years:"{years} Ann\xE9e",all:"Tous",paid:"Pay\xE9",unpaid:"Non pay\xE9",customer:"Client",ref_no:"R\xE9f.",number:"N\xB0",amount_due:"MONTANT",partially_paid:"Partiellement pay\xE9",total:"Total",discount:"Remise",sub_total:"Sous-total",estimate_number:"N\xB0",ref_number:"R\xE9f\xE9rence",contact:"Contact",add_item:"Ajouter un article",date:"Date",due_date:"Date d'\xE9ch\xE9ance",expiry_date:"Date d'expiration",status:"Statut",add_tax:"Ajouter une taxe",amount:"Montant",action:"Action",notes:"Notes de bas de page",tax:"Taxe",estimate_template:"Mod\xE8le de devis",convert_to_invoice:"Convertir en facture",mark_as_sent:"Marquer comme envoy\xE9",send_estimate:"Envoyer par email",resend_estimate:"Renvoyer le devis",record_payment:"Enregistrer un paiement",add_estimate:"Nouveau devis",save_estimate:"Enregistrer",confirm_conversion:"Ce devis sera utilis\xE9 pour cr\xE9er une nouvelle facture.",conversion_message:"Conversion r\xE9ussie",confirm_send_estimate:"Ce devis sera envoy\xE9e par email au client",confirm_mark_as_sent:"Ce devis sera marqu\xE9 comme envoy\xE9",confirm_mark_as_accepted:"Ce devis sera marqu\xE9 comme accept\xE9",confirm_mark_as_rejected:"Ce devis sera marqu\xE9 comme rejet\xE9",no_matching_estimates:"Aucune estimation correspondante !",mark_as_sent_successfully:"Devis marqu\xE9 comme envoy\xE9",send_estimate_successfully:"Devis envoy\xE9",errors:{required:"Champ requis"},accepted:"Accept\xE9",rejected:"Refus\xE9",expired:"Expired",sent:"Envoy\xE9",draft:"Brouillon",viewed:"Viewed",declined:"Refus\xE9",new_estimate:"Nouveau devis",add_new_estimate:"Nouveau devis",update_Estimate:"Enregistrer",edit_estimate:"Modifier ce devis",items:"articles",Estimate:"Devis | Devis",add_new_tax:"Ajouter une taxe",no_estimates:"Aucun devis",list_of_estimates:"Ajoutez des clients et retrouvez-les ici",mark_as_rejected:"Marquer comme rejet\xE9",mark_as_accepted:"Marquer comme accept\xE9",marked_as_accepted_message:"Devis marqu\xE9 comme accept\xE9",marked_as_rejected_message:"Devis marqu\xE9 comme rejet\xE9",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer ce devis | Vous ne pourrez pas r\xE9cup\xE9rer ces devis",created_message:"Devis cr\xE9\xE9",updated_message:"Devis mise \xE0 jour",deleted_message:"Devis supprim\xE9 | Devis supprim\xE9s",something_went_wrong:"quelque chose a mal tourn\xE9",item:{title:"Titre de l'article",description:"Description",quantity:"Quantit\xE9",price:"Prix",discount:"Remise",total:"Total",total_discount:"Remise totale",sub_total:"Sous-total",tax:"Taxe",amount:"Montant",select_an_item:"S\xE9lectionnez un article",type_item_description:"Taper la description de l'article (facultatif)"}},cs={title:"Factures",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"Liste des factures",invoice_information:"Invoice Information",days:"{days} jours",months:"{months} mois",years:"{years} ann\xE9es",all:"Toutes",paid:"Pay\xE9e",unpaid:"Non pay\xE9e",viewed:"Consult\xE9e",overdue:"En retard",completed:"Pay\xE9e",customer:"CLIENT",paid_status:"\xC9tat du paiement",ref_no:"R\xE9f.",number:"N\xB0",amount_due:"MONTANT",partially_paid:"Partiellement pay\xE9e",total:"Total",discount:"Remise",sub_total:"Sous-total",invoice:"Facture | Factures",invoice_number:"N\xB0",ref_number:"R\xE9f\xE9rence",contact:"Contact",add_item:"Nouvel article",date:"Date",due_date:"Date d'\xE9ch\xE9ance",status:"Statut",add_tax:"Ajouter une taxe",amount:"Montant",action:"Action",notes:"Notes de bas de page",view:"Afficher",send_invoice:"Envoyer par email",resend_invoice:"Renvoyer la facture",invoice_template:"Mod\xE8le de facture",conversion_message:"Facture clon\xE9e",template:"Mod\xE8le",mark_as_sent:"Marquer comme envoy\xE9e",confirm_send_invoice:"Cette facture sera envoy\xE9e par email au client",invoice_mark_as_sent:"Cette facture sera marqu\xE9e comme envoy\xE9",confirm_mark_as_accepted:"Cette facture sera marqu\xE9e comme accept\xE9e",confirm_mark_as_rejected:"Cette facture sera marqu\xE9e comme rejet\xE9e",confirm_send:"Cette facture sera envoy\xE9e par email au client",invoice_date:"Date",record_payment:"Enregistrer un paiement",add_new_invoice:"Nouvelle facture",update_expense:"Enregistrer la d\xE9pense",edit_invoice:"Modifier cette facture",new_invoice:"Nouvelle facture",save_invoice:"Enregistrer",update_invoice:"Enregistrer",add_new_tax:"Ajouter une taxe",no_invoices:"Aucune facture",mark_as_rejected:"Marquer comme rejet\xE9e",mark_as_accepted:"Marquer comme accept\xE9e",list_of_invoices:"Ajoutez des factures et retrouvez-les ici",select_invoice:"S\xE9lectionnez facture",no_matching_invoices:"Aucune facture correspondante !",mark_as_sent_successfully:"Facture marqu\xE9e comme envoy\xE9e",invoice_sent_successfully:"Facture envoy\xE9e",cloned_successfully:"Facture clon\xE9e",clone_invoice:"Dupliquer",confirm_clone:"Cette facture sera dupliqu\xE9e dans une nouvelle facture",item:{title:"Titre de l'article",description:"Description",quantity:"Quantit\xE9",price:"Prix",discount:"Remise",total:"Total",total_discount:"Remise totale",sub_total:"Sous-total",tax:"Taxe",amount:"Montant",select_an_item:"S\xE9lectionnez un article",type_item_description:"Saisissez une description (facultatif)"},payment_attached_message:"Un paiement est li\xE9 \xE0 l'une des factures s\xE9lectionn\xE9es. Veuillez d'abord les supprimer, puis r\xE9essayez",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cette facture | Vous ne pourrez pas r\xE9cup\xE9rer ces factures",created_message:"Facture cr\xE9\xE9e",updated_message:"Facture mise \xE0 jour",deleted_message:"La facture a \xE9t\xE9 supprim\xE9e | Les factures ont \xE9t\xE9 supprim\xE9es",marked_as_sent_message:"Facture supprim\xE9e | Factures supprim\xE9es",something_went_wrong:"quelque chose a mal tourn\xE9",invalid_due_amount_message:"Le paiement entr\xE9 est sup\xE9rieur au montant total d\xFB pour cette facture. Veuillez v\xE9rifier et r\xE9essayer."},_s={title:"Factures r\xE9currentes",invoices_list:"Liste des factures r\xE9currentes",days:"{days} jours",months:"{months} mois",years:"{years} ans",all:"Toutes",paid:"Pay\xE9e",unpaid:"Non pay\xE9e",viewed:"Consult\xE9e",overdue:"En retard",active:"Active",completed:"Pay\xE9e",customer:"CLIENT",paid_status:"\xC9TAT DU PAIEMENT",ref_no:"N\xB0 de REF.",number:"N\xB0",amount_due:"MONTANT D\xDB",partially_paid:"Partiellement pay\xE9e",total:"Total",discount:"Remise",sub_total:"Sous-total",invoice:"Facture r\xE9currente | Factures r\xE9currentes",invoice_number:"N\xB0",next_invoice_date:"Prochaine date de facturation",ref_number:"N\xB0 de r\xE9f\xE9rence",contact:"Contact",add_item:"Ajouter un article",date:"Date",limit_by:"Limiter par",limit_date:"Date limite",limit_count:"Nombre limite",count:"Nombre",status:"Statut",select_a_status:"S\xE9lectionnez un statut",working:"Active",on_hold:"Suspendue",complete:"Pay\xE9e",add_tax:"Ajouter une taxe",amount:"Montant",action:"Action",notes:"Notes de bas de page",view:"Afficher",basic_info:"Informations g\xE9n\xE9rales",send_invoice:"Envoyer la facture r\xE9currente",auto_send:"Envoi automatique",resend_invoice:"Renvoyer la facture r\xE9currente",invoice_template:"Mod\xE8le de facture r\xE9currente",conversion_message:"Facture r\xE9currente clon\xE9e",template:"Mod\xE8le",mark_as_sent:"Marquer comme envoy\xE9e",confirm_send_invoice:"Cette facture r\xE9currente sera envoy\xE9e par email au client",invoice_mark_as_sent:"Cette facture r\xE9currente sera marqu\xE9e comme envoy\xE9e",confirm_send:"Cette facture r\xE9currente sera envoy\xE9e par email au client",starts_at:"Date de d\xE9but",due_date:"Date d'\xE9ch\xE9ance",record_payment:"Enregister un paiement",add_new_invoice:"Nouvelle facture r\xE9currente",update_expense:"Mettre \xE0 jour les d\xE9penses",edit_invoice:"Modifier cette facture r\xE9currente",new_invoice:"Nouvelle facture r\xE9currente",send_automatically:"Envoyer automatiquement",send_automatically_desc:"Activez ceci si vous souhaitez envoyer la facture automatiquement au client lorsque celle-ci est cr\xE9\xE9e.",save_invoice:"Enregistrer",update_invoice:"Modifier la facture r\xE9currente",add_new_tax:"Ajouter une taxe",no_invoices:"Aucune facture r\xE9currente pour le moment !",mark_as_rejected:"Marquer comme rejet\xE9e",mark_as_accepted:"Marquer comme accept\xE9",list_of_invoices:"Ajoutez des factures r\xE9currentes et retrouvez-les ici",select_invoice:"S\xE9lectionnez la facture",no_matching_invoices:"Aucune facture r\xE9currente correspondante",mark_as_sent_successfully:"Facture r\xE9currente marqu\xE9e comme envoy\xE9e",invoice_sent_successfully:"Facture r\xE9currente envoy\xE9e",cloned_successfully:"Facture r\xE9currente clon\xE9e",clone_invoice:"Dupliquer",confirm_clone:"Cette facture r\xE9currente sera clon\xE9e dans une nouvelle facture r\xE9currente",item:{title:"Nom",description:"Description",quantity:"Quantit\xE9",price:"Prix",discount:"Remise",total:"Total",total_discount:"Remise totale",sub_total:"Sous-total",tax:"Taxe",amount:"Montant",select_an_item:"Tapez ou cliquez pour s\xE9lectionner un article",type_item_description:"Description de l'article (facultatif)"},frequency:{title:"Fr\xE9quence",select_frequency:"S\xE9lectionner la fr\xE9quence",minute:"Minute",hour:"Heure",day_month:"Jour du mois",month:"Mois",day_week:"Jour de la semaine"},confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cette facture | Vous ne pourrez pas r\xE9cup\xE9rer ces factures",created_message:"Facture r\xE9currente cr\xE9\xE9e",updated_message:"Facture r\xE9currente mise \xE0 jour",deleted_message:"Facture r\xE9currente supprim\xE9e",marked_as_sent_message:"Facture r\xE9currente envoy\xE9e",user_email_does_not_exist:"L'email de l'utilisateur n'existe pas",something_went_wrong:"une erreur s\u2019est produite",invalid_due_amount_message:"Le montant total de la facture r\xE9currente ne peut pas \xEAtre inf\xE9rieur au montant total pay\xE9 pour cette facture r\xE9currente. Veuillez mettre \xE0 jour la facture ou supprimer les paiements associ\xE9s pour continuer."},us={title:"Paiements",payments_list:"Liste de paiements",record_payment:"Enregistrer un paiement",customer:"Client",date:"Date",amount:"Montant",action:"Action",payment_number:"N\xB0",payment_mode:"Mode de paiement",invoice:"Facture",note:"Description",add_payment:"Nouveau paiement",new_payment:"Nouveau paiement",edit_payment:"Modifier ce paiement",view_payment:"Afficher le paiement",add_new_payment:"Nouveau paiement",send_payment_receipt:"Envoyer le re\xE7u",send_payment:"Envoyer par email",save_payment:"Enregistrer",update_payment:"Enregistrer",payment:"Paiement | Paiements",no_payments:"Aucun paiement",not_selected:"-",no_invoice:"Aucune facture",no_matching_payments:"Il n'y a aucun paiement correspondant !",list_of_payments:"Ajoutez des paiements et retrouvez-les ici",select_payment_mode:"S\xE9lectionnez le mode de paiement",confirm_mark_as_sent:"Ce devis sera marqu\xE9 comme envoy\xE9",confirm_send_payment:"Ce paiement sera envoy\xE9 par email au client",send_payment_successfully:"Paiement envoy\xE9",something_went_wrong:"quelque chose a mal tourn\xE9",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer ce paiement | Vous ne pourrez pas r\xE9cup\xE9rer ces paiements",created_message:"Paiement cr\xE9\xE9",updated_message:"Paiement mis \xE0 jour",deleted_message:"Paiement supprim\xE9 | Paiements supprim\xE9s",invalid_amount_message:"Le montant du paiement est invalide"},ms={title:"D\xE9penses",expenses_list:"Liste des d\xE9penses",select_a_customer:"S\xE9lectionnez un client",expense_title:"Titre",customer:"Client",currency:"Devise",contact:"Contact",category:"Cat\xE9gorie",from_date:"Du",to_date:"Au",expense_date:"Date",description:"Description",receipt:"Re\xE7u",amount:"Montant",action:"Action",not_selected:"-",note:"Description",category_id:"Identifiant de cat\xE9gorie",date:"Date",add_expense:"Nouvelle d\xE9pense",add_new_expense:"Nouvelle d\xE9pense",save_expense:"Enregistrer",update_expense:"Enregistrer",download_receipt:"T\xE9l\xE9charger le re\xE7u",edit_expense:"Modifier cette d\xE9pense",new_expense:"Nouvelle d\xE9pense",expense:"D\xE9pense | D\xE9penses",no_expenses:"Aucune d\xE9pense",list_of_expenses:"Ajoutez des d\xE9penses et retrouvez-les ici",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cette d\xE9pense | Vous ne pourrez pas r\xE9cup\xE9rer ces d\xE9penses",created_message:"D\xE9pense cr\xE9\xE9e",updated_message:"D\xE9pense mise \xE0 jour",deleted_message:"D\xE9pense supprim\xE9e | D\xE9penses supprim\xE9es",categories:{categories_list:"Liste des cat\xE9gories",title:"Titre",name:"Nom",description:"Description",amount:"Montant",actions:"Actions",add_category:"Nouvelle cat\xE9gorie",new_category:"Nouvelle cat\xE9gorie",category:"Cat\xE9gorie | Cat\xE9gories",select_a_category:"Choisissez une cat\xE9gorie"}},ps={email:"Email",password:"Mot de passe",forgot_password:"Mot de passe oubli\xE9 ?",or_signIn_with:"ou connectez-vous avec",login:"Se connecter",register:"S'inscrire",reset_password:"R\xE9initialiser le mot de passe",password_reset_successfully:"R\xE9initialisation du mot de passe r\xE9ussie",enter_email:"Entrez votre email",enter_password:"Entrer le mot de passe",retype_password:"Retaper le mot de passe"},gs={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},fs={title:"Utilisateurs",users_list:"Liste des utilisateurs",name:"Nom",description:"Description",added_on:"Ajout\xE9 le",date_of_creation:"Date de cr\xE9ation",action:"Action",add_user:"Nouvel utilisateur",save_user:"Enregistrer l'utilisateur",update_user:"Enregistrer",user:"Utilisateur | Utilisateurs",add_new_user:"Nouvel utilisateur",new_user:"Nouvel utilisateur",edit_user:"Modifier cet utilisateur",no_users:"Aucun utilisateur",list_of_users:"Ajoutez des utilisateurs et retrouvez-les ici",email:"Email",phone:"T\xE9l\xE9phone",password:"Mot de passe",user_attached_message:"Impossible de supprimer un \xE9l\xE9ment d\xE9j\xE0 utilis\xE9",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cet utilisateur | Vous ne pourrez pas r\xE9cup\xE9rer ces utilisateurs",created_message:"Utilisateur cr\xE9\xE9",updated_message:"Utilisateur mis \xE0 jour",deleted_message:"Utilisateur supprim\xE9 | Utilisateurs supprim\xE9s",select_company_role:"S\xE9lectionner un r\xF4le pour {company}",companies:"Soci\xE9t\xE9s"},vs={title:"Rapport",from_date:"Du",to_date:"Au",status:"Statut",paid:"Pay\xE9",unpaid:"Non pay\xE9",download_pdf:"T\xE9l\xE9charger le PDF",view_pdf:"Afficher le PDF",update_report:"Actualiser",report:"Rapport | Rapports",profit_loss:{profit_loss:"Balance",to_date:"Au",from_date:"Du",date_range:"P\xE9riode"},sales:{sales:"Ventes",date_range:"P\xE9riode",to_date:"Au",from_date:"Du",report_type:"Trier"},taxes:{taxes:"Taxes",to_date:"Au",from_date:"Du",date_range:"P\xE9riode"},errors:{required:"Champ requis"},invoices:{invoice:"Facture",invoice_date:"Date",due_date:"Date d\xE9ch\xE9ance",amount:"Montant ",contact_name:"Contact",status:"Statut"},estimates:{estimate:"Devis",estimate_date:"Date",due_date:"Date d'\xE9ch\xE9ance",estimate_number:"N\xB0",ref_number:"R\xE9f\xE9rence",amount:"Montant",contact_name:"Contact",status:"Statut"},expenses:{expenses:"D\xE9penses",category:"Nom",date:"Date",amount:"Montant",to_date:"Au",from_date:"Du",date_range:"P\xE9riode"}},hs={menu_title:{account_settings:"Profil",company_information:"Coordonn\xE9es de la soci\xE9t\xE9",customization:"Personnalisation",preferences:"Pr\xE9f\xE9rences",notifications:"Notifications",tax_types:"Taxes",expense_category:"Cat\xE9gories de d\xE9pense",update_app:"Mise \xE0 jour",backup:"Sauvegarde",file_disk:"Stockage",custom_fields:"Champs personnalis\xE9s",payment_modes:"Modes de paiement",notes:"Notes de bas de page",exchange_rate:"Taux de change",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"Param\xE8tres",setting:"Param\xE8tres | Param\xE8tres",general:"Param\xE8tres g\xE9n\xE9raux",language:"Langue",primary_currency:"Devise principale",timezone:"Fuseau horaire",date_format:"Format de date",currencies:{title:"Devises",currency:"Devise | Devises",currencies_list:"Liste des devises",select_currency:"S\xE9lectionnez la devise",name:"Nom",code:"Code\xA0",symbol:"Symbole",precision:"Pr\xE9cision",thousand_separator:"S\xE9parateur de milliers",decimal_separator:"S\xE9parateur d\xE9cimal",position:"Position",position_of_symbol:"Position du symbole",right:"Droite",left:"Gauche",action:"Action",add_currency:"Ajouter une devise"},mail:{host:"Adresse du serveur",port:"Port",driver:"Fournisseur",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domaine",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"Mot de passe",username:"Nom d'utilisateur",mail_config:"Envoi d'emails",from_name:"Nom de l'exp\xE9diteur",from_mail:"Email de l'exp\xE9diteur",encryption:"Chiffrement",mail_config_desc:"Saisissez ici les param\xE8tres d'envoi de votre bo\xEEte email, afin que l'application puisse envoyer des messages. Vous pouvez \xE9galement utiliser un service tiers, comme Sendgrid par exemple."},pdf:{title:"Param\xE8tre PDF",footer_text:"Pied de page",pdf_layout:"Mise en page PDF"},company_info:{company_info:"Coordonn\xE9es de la soci\xE9t\xE9",company_name:"Nom",company_logo:"Logo",section_description:"Saisissez ici les coordonn\xE9es de votre entreprise qui s'afficheront sur tous vos documents.",phone:"T\xE9l\xE9phone",country:"Pays",state:"\xC9tat",city:"Ville",address:"Adresse",zip:"Code postal",save:"Enregistrer",delete:"Supprimer",updated_message:"Informations sur la soci\xE9t\xE9 mises \xE0 jour",delete_company:"Supprimer la soci\xE9t\xE9",delete_company_description:"Une fois votre soci\xE9t\xE9 supprim\xE9e, vous perdrez d\xE9finitivement toutes les donn\xE9es et fichiers qui lui sont associ\xE9s.",are_you_absolutely_sure:"En \xEAtes vous vraiment s\xFBr?",delete_company_modal_desc:"Cette action ne peut pas \xEAtre annul\xE9e. Cela supprimera d\xE9finitivement {company} et toutes les donn\xE9es associ\xE9es.",delete_company_modal_label:"Veuillez saisir {company} pour confirmer"},custom_fields:{title:"Champs personnalis\xE9s",section_description:"Personnalisez vos factures, devis et re\xE7us de paiement avec vos propres champs. Vous pouvez les utiliser dans les formats d'adresse ou dans les notes de bas de page.",add_custom_field:"Ajouter un champ personnalis\xE9",edit_custom_field:"Modifier ce champ personnalis\xE9",field_name:"Nom du champs",label:"\xC9tiquette",type:"Type\xA0",name:"Nom",slug:"Jeton",required:"Obligatoire",placeholder:"Indication",help_text:"Texte d'aide",default_value:"Valeur par d\xE9faut",prefix:"Pr\xE9fixe",starting_number:"Num\xE9ro de d\xE9part",model:"Appliquer \xE0",help_text_description:"Saisissez du texte pour aider les utilisateurs \xE0 comprendre l'objectif de ce champ personnalis\xE9.",suffix:"Suffixe",yes:"Oui",no:"Non",order:"Ordre",custom_field_confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer ce champ personnalis\xE9",already_in_use:"Le champ personnalis\xE9 est d\xE9j\xE0 utilis\xE9",deleted_message:"Champ personnalis\xE9 supprim\xE9",options:"les options",add_option:"Ajouter des options",add_another_option:"Ajouter une autre option",sort_in_alphabetical_order:"Trier par ordre alphab\xE9tique",add_options_in_bulk:"Ajouter des options en masse",use_predefined_options:"Utiliser des options pr\xE9d\xE9finies",select_custom_date:"S\xE9lectionnez une date personnalis\xE9e",select_relative_date:"S\xE9lectionnez la date relative",ticked_by_default:"Coch\xE9 par d\xE9faut",updated_message:"Champ personnalis\xE9 mis \xE0 jour",added_message:"Champ personnalis\xE9 ajout\xE9",press_enter_to_add:"Appuyez sur Entr\xE9e pour ajouter une nouvelle option",model_in_use:"Impossible de mettre \xE0 jour le mod\xE8le pour les champs qui sont d\xE9j\xE0 utilis\xE9s.",type_in_use:"Impossible de mettre \xE0 jour le type des champs d\xE9j\xE0 utilis\xE9s."},customization:{customization:"Personnalisation",updated_message:"Informations la soci\xE9t\xE9 mises \xE0 jour",save:"Enregistrer",insert_fields:"Ins\xE9rer des champs",learn_custom_format:"Apprenez \xE0 utiliser le format personnalis\xE9",add_new_component:"Ajouter un composant",component:"Composant",Parameter:"Param\xE8tre",series:"Texte",series_description:"Un texte statique qui peut faire jusqu'\xE0 quatre caract\xE8res.",series_param_label:"Texte",delimiter:"S\xE9parateur",delimiter_description:"Un caract\xE8re servant \xE0 s\xE9parer deux composants. Par exemple, un trait d'union",delimiter_param_label:"Caract\xE8re",date_format:"Date",date_format_description:`Une date qui peut format\xE9e. Par exemple, "Y" affichera l'ann\xE9e en cours.`,date_format_param_label:"Format",sequence:"Suite",sequence_description:"G\xE9n\xE8re un num\xE9ro de facture unique. Vous pouvez indiquer le nombre de chiffres \xE0 utiliser.",sequence_param_label:"Longueur",customer_series:"Code client",customer_series_description:"Un code unique \xE0 chaque client, qui peut \xEAtre indiqu\xE9 dans les param\xE8tres du client.",customer_sequence:"Num\xE9ro client",customer_sequence_description:"Un num\xE9ro de client unique.",customer_sequence_param_label:"Longueur",random_sequence:"Suite al\xE9atoire",random_sequence_description:`Suite alphanum\xE9rique al\xE9atoire. +Vous pouvez sp\xE9cifier le nombre de caract\xE8re.`,random_sequence_param_label:"Longueur",invoices:{title:"Factures",invoice_number_format:"Format de num\xE9ro",invoice_number_format_description:"Personnalisez la structure de vos num\xE9ros de facture.",preview_invoice_number:"Aper\xE7u",due_date:"Date d'\xE9ch\xE9ance",due_date_description:"Indiquez si la date d'\xE9ch\xE9ance doit \xEAtre automatiquement d\xE9finie lorsque vous cr\xE9ez une facture.",due_date_days:"Nombre de jours avant l'\xE9ch\xE9ance de la facture",set_due_date_automatically:"Remplir automatiquement la date d'\xE9ch\xE9ance",set_due_date_automatically_description:"Activez cette option si vous souhaitez d\xE9finir automatiquement la date d'\xE9ch\xE9ance lors de la cr\xE9ation d'une facture.",default_formats:"Mod\xE8les",default_formats_description:"Modifiez ci-dessous les formats d'adresse ou l'email utilis\xE9 lors de la cr\xE9ation d'une facture.",default_invoice_email_body:"Mod\xE8le d'email",company_address_format:"Adresse de la soci\xE9t\xE9",shipping_address_format:"Adresse d'exp\xE9dition",billing_address_format:"Adresse de facturation",invoice_email_attachment:"Envoyer les factures en pi\xE8ces jointes",invoice_email_attachment_setting_description:`Activez cette option si vous souhaitez envoyer les factures en pi\xE8ces jointes. Le bouton "Afficher la facture" n'appara\xEEtra plus dans l'email.`,invoice_settings_updated:"Param\xE8tres de facturation mis \xE0 jour",retrospective_edits:"\xC9dition \xE0 post\xE9riori",allow:"Autoriser",disable_on_invoice_partial_paid:"D\xE9sactiver apr\xE8s l'enregistrement d'un paiement partiel",disable_on_invoice_paid:"D\xE9sactiver apr\xE8s l'enregistrement du paiement int\xE9gral",disable_on_invoice_sent:"D\xE9sactiver apr\xE8s l'envoi de la facture",retrospective_edits_description:"Vous pouvez emp\xEAcher la modification de factures lorsque un paiement est effectu\xE9, pour \xEAtre en conformit\xE9 avec la loi de certains pays."},estimates:{title:"Devis",estimate_number_format:"Format de num\xE9ro",estimate_number_format_description:"Personnalisez la structure de vos num\xE9ros de devis.",preview_estimate_number:"Aper\xE7u",expiry_date:"Date d'expiration",expiry_date_description:"Indiquez si la date d'\xE9ch\xE9ance doit \xEAtre automatiquement d\xE9finie lorsque vous cr\xE9ez un devis.",expiry_date_days:"Le devis expire apr\xE8s les jours",set_expiry_date_automatically:"D\xE9finir automatiquement la date d'expiration",set_expiry_date_automatically_description:"Activez cette option si vous souhaitez d\xE9finir automatiquement la date d'\xE9ch\xE9ance lors de la cr\xE9ation d'un devis.",default_formats:"Formats par d\xE9faut",default_formats_description:"Modifiez ci-dessous les formats d'adresse ou l'email utilis\xE9 lors de la cr\xE9ation d'un devis.",default_estimate_email_body:"Mod\xE8le d'email",company_address_format:"Adresse de la soci\xE9t\xE9",shipping_address_format:"Adresse d'exp\xE9dition",billing_address_format:"Adresse de facturation",estimate_email_attachment:"Envoyer les devis en pi\xE8ces jointes",estimate_email_attachment_setting_description:`Activez cette option si vous souhaitez envoyer les devis en pi\xE8ces jointes. Le bouton "Afficher le devis" n'appara\xEEtra plus dans l'email.`,estimate_settings_updated:"Param\xE8tres de devis mis \xE0 jour",convert_estimate_options:"Conversion du devis",convert_estimate_description:"Indiquez quoi faire du devis apr\xE8s sa conversion en facture.",no_action:"Ne rien faire",delete_estimate:"Supprimer le devis",mark_estimate_as_accepted:"Marquer le devis comme accept\xE9"},payments:{title:"Paiements",payment_number_format:"Format de num\xE9ro",payment_number_format_description:"Personnalisez la structure de vos num\xE9ros de re\xE7u de paiement.",preview_payment_number:"Aper\xE7u",default_formats:"Formats par d\xE9faut",default_formats_description:"Modifiez ci-dessous les formats d'adresse ou l'email utilis\xE9 lors de la cr\xE9ation d'un re\xE7u de paiement.",default_payment_email_body:"Mod\xE8le d'email",company_address_format:"Adresse de la soci\xE9t\xE9",from_customer_address_format:"Adresse de facturation",payment_email_attachment:"Envoyer les re\xE7us de paiement en pi\xE8ces jointes",payment_email_attachment_setting_description:`Activez cette option si vous souhaitez envoyer les devis en pi\xE8ces jointes. Le bouton "Afficher le re\xE7u de paiement" n'appara\xEEtra plus dans l'email.`,payment_settings_updated:"Param\xE8tres mis \xE0 jour"},items:{title:"Articles",units:"Unit\xE9s",add_item_unit:"Ajouter une unit\xE9",edit_item_unit:"Modifier cette unit\xE9",unit_name:"Nom",item_unit_added:"Unit\xE9 ajout\xE9e",item_unit_updated:"Unit\xE9 mis \xE0 jour",item_unit_confirm_delete:"\xCAtes-vous sur de supprimer cette unit\xE9 ?",already_in_use:"Cette unit\xE9 existe d\xE9j\xE0",deleted_message:"Unit\xE9 supprim\xE9e"},notes:{title:"Notes de bas de page",description:"Cr\xE9ez des notes de bas de page r\xE9utilisable sur vos factures, devis et paiements.",notes:"Note de bas de page",type:"Type\xA0",add_note:"Nouvelle note de bas de page",add_new_note:"Ajouter une note de bas de page",name:"Nom",edit_note:"Modifier cette note de bas de page",note_added:"Note de bas de page ajout\xE9e",note_updated:"Note de bas de page mise \xE0 jour",note_confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cette note de bas de page",already_in_use:"La note de bas de page est d\xE9j\xE0 utilis\xE9e",deleted_message:"Note de bas de page supprim\xE9e"}},account_settings:{profile_picture:"Image de profil",name:"Nom",email:"Email",password:"Mot de passe",confirm_password:"Confirmez le mot de passe",account_settings:"Profil",save:"Enregistrer",section_description:"Mettez \xE0 jour ici vos param\xE8tres de compte, tels que votre nom, votre email ou votre mot de passe.",updated_message:"Profil mis \xE0 jour"},user_profile:{name:"Nom",email:"Email",password:"Mot de passe",confirm_password:"Confirmez le mot de passe"},notification:{title:"Notifications",email:"Envoyer des notifications \xE0",description:"D\xE9finissez ici les notifications que vous souhaitez recevoir par email.",invoice_viewed:"Facture consult\xE9e",invoice_viewed_desc:"Lorsque le client visualise la facture envoy\xE9e via le tableau de bord de Neptune.",estimate_viewed:"Devis consult\xE9",estimate_viewed_desc:"Lorsque le client visualise le devis envoy\xE9 via le tableau de bord de Neptune.",save:"Enregistrer",email_save_message:"Email enregistr\xE9",please_enter_email:"Veuillez entrer un email"},roles:{title:"R\xF4les",description:"G\xE9rer les r\xF4les & autorisations de cette soci\xE9t\xE9",save:"Enregistrer",add_new_role:"Ajouter un r\xF4le",role_name:"Nom",added_on:"Ajout\xE9 le",add_role:"Ajouter un r\xF4le",edit_role:"Modifier ce r\xF4le",name:"Nom",permission:"Autorisation | Autorisations",select_all:"Tout s\xE9lectionner",none:"Aucun",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer ce r\xF4le",created_message:"R\xF4le cr\xE9\xE9",updated_message:"R\xF4le mis \xE0 jour",deleted_message:"R\xF4le supprim\xE9",already_in_use:"Le r\xF4le est d\xE9j\xE0 utilis\xE9"},exchange_rate:{exchange_rate:"Taux de change",title:"R\xE9soudre les probl\xE8mes de taux de change",description:"Veuillez entrez le taux de change pour toutes les devises mentionn\xE9es ci-dessous pour calculer les totaux en {currency}.",drivers:"Fournisseurs",new_driver:"Ajouter un fournisseur",edit_driver:"Modifier ce fournisseur",select_driver:"S\xE9lectionner un fournisseur",update:"s\xE9lectionner le taux de change ",providers_description:"Configurez vos fournisseurs de taux de change ici pour r\xE9cup\xE9rer automatiquement le dernier taux de change sur les transactions.",key:"Cl\xE9 d'API",name:"Nom",driver:"Fournisseur",is_default:"PAR D\xC9FAUT",currency:"Devises",exchange_rate_confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer ce fournisseur",created_message:"Fournisseur cr\xE9\xE9",updated_message:"Fournisseur mis \xE0 jour",deleted_message:"Fournisseur supprim\xE9",error:"Vous ne pouvez pas supprimer le fournisseur actif",default_currency_error:"Cette devise est d\xE9j\xE0 affect\xE9e \xE0 un fournisseur",exchange_help_text:"Veuillez entrer le taux de change pour convertir {currency} en {baseCurrency}",currency_freak:"Currency Freak",currency_layer:"Currency Layer",open_exchange_rate:"Open Exchange Rate",currency_converter:"Currency Converter",server:"Serveur",url:"URL",active:"Actif",currency_help_text:"Ce fournisseur ne sera utilis\xE9 que pour les devises s\xE9lectionn\xE9es ci-dessus",currency_in_used:"Les devises suivantes sont d\xE9j\xE0 affect\xE9es \xE0 un autre fournisseur. Veuillez d\xE9s\xE9lectionner ces devises pour r\xE9activer ce fournisseur."},tax_types:{title:"Taxes",add_tax:"Ajouter une taxe",edit_tax:"Modifier cette taxe",description:"Ajoutez ou supprimez ici des taxes, et choisissez si elles s'appliquent individuellement aux articles ou au montant total.",add_new_tax:"Nouvelle taxe",tax_settings:"Param\xE8tres de taxe",tax_per_item:"Taxe par article",tax_name:"Nom",compound_tax:"Taxe empil\xE9e",percent:"Pourcentage",action:"action",tax_setting_description:"Activez cette option si vous souhaitez ajouter des taxes \xE0 des postes de facture individuels. Par d\xE9faut, les taxes sont ajout\xE9es directement \xE0 la facture.",created_message:"Taxe cr\xE9\xE9e",updated_message:"Taxe mise \xE0 jour",deleted_message:"Taxe supprim\xE9e",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer ce type de taxe",already_in_use:"La taxe est d\xE9j\xE0 utilis\xE9e"},payment_modes:{title:"Moyens de paiement",description:"Indiquez les diff\xE9rents moyen de paiement que vous utilisez",add_payment_mode:"Ajouter un mode de paiement",edit_payment_mode:"Modifier le mode de paiement",mode_name:"Nom",payment_mode_added:"Mode de paiement ajout\xE9",payment_mode_updated:"Mode de paiement mis \xE0 jour",payment_mode_confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer ce mode de paiement",already_in_use:"Le mode de paiement est d\xE9j\xE0 utilis\xE9",deleted_message:"Mode de paiement supprim\xE9"},expense_category:{title:"Cat\xE9gories de d\xE9pense",action:"action",description:"Ajoutez ou supprimez ici des cat\xE9gories de d\xE9pense.",add_new_category:"Ajouter une cat\xE9gorie",add_category:"Nouvelle cat\xE9gorie",edit_category:"Modifier cette cat\xE9gorie",category_name:"Nom",category_description:"Description",created_message:"Cat\xE9gorie de d\xE9penses cr\xE9\xE9e",deleted_message:"Cat\xE9gorie de d\xE9penses supprim\xE9e",updated_message:"Cat\xE9gorie de d\xE9penses mise \xE0 jour",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cette cat\xE9gorie de d\xE9penses",already_in_use:"La cat\xE9gorie est d\xE9j\xE0 utilis\xE9e"},preferences:{currency:"Devise",default_language:"Langue par d\xE9faut",time_zone:"Fuseau horaire",fiscal_year:"Exercice fiscal",date_format:"Format de date",discount_setting:"R\xE9glage de remise",discount_per_item:"Remise par article",discount_setting_description:"Activez cette option si vous souhaitez d\xE9tailler les remises par article. Par d\xE9faut, les remises sont ajout\xE9es au sous-total.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"Enregistrer",preference:"Pr\xE9f\xE9rence | Pr\xE9f\xE9rences",general_settings:"Modifiez ici les param\xE8tres globaux de Crater.",updated_message:"Pr\xE9f\xE9rences mises \xE0 jour",select_language:"Choisir la langue",select_time_zone:"S\xE9lectionnez le fuseau horaire",select_date_format:"S\xE9lectionnez le format de date",select_financial_year:"Exercice fiscal",recurring_invoice_status:"Statut de la facture r\xE9currente",create_status:"Cr\xE9er un statut",active:"Actif",on_hold:"En attente",update_status:"Mettre \xE0 jour le statut",completed:"Termin\xE9",company_currency_unchangeable:"La devise de la soci\xE9t\xE9 ne peut pas \xEAtre modifi\xE9e"},update_app:{title:"Mise \xE0 jour",description:"Mettez simplement Crater \xE0 jour en cliquant sur le bouton ci-dessous.",check_update:"Rechercher des mises \xE0 jour",avail_update:"Nouvelle mise \xE0 jour disponible",next_version:"Version suivante",requirements:"Sp\xE9cifications requises",update:"Mettre \xE0 jour maintenant",update_progress:"Mise \xE0 jour en cours...",progress_text:"Cela ne prendra que quelques minutes. Veuillez ne pas actualiser ou fermer la fen\xEAtre avant la fin de la mise \xE0 jour",update_success:"L'application a \xE9t\xE9 mise \xE0 jour. Veuillez patienter pendant le rechargement de la fen\xEAtre de votre navigateur.",latest_message:"Bravo, vous \xEAtes \xE0 jour.",current_version:"Version actuelle",download_zip_file:"T\xE9l\xE9charger le fichier ZIP",unzipping_package:"D\xE9zipper le package",copying_files:"Copie de fichiers en cours",deleting_files:"Supprimer les fichiers inutilis\xE9s",running_migrations:"Migrations en cours",finishing_update:"Finalisation de la mise \xE0 jour",update_failed:"\xC9chec de la mise \xE0 jour",update_failed_text:"D\xE9sol\xE9 ! Votre mise \xE0 jour a \xE9chou\xE9 \xE0: {step} \xE9tape",update_warning:"Cet utilitaire va \xE9craser tous les fichiers et templates de l'application. Veuillez faire une sauvegarde de vos templates et de la base de donn\xE9e avant de faire la mise \xE0 jour."},backup:{title:"Sauvegarde | Sauvegardes",description:"G\xE9rez ici vos sauvegardes. Crater cr\xE9\xE9e un fichiez ZIP contenant vos fichiers et un export de la base de donn\xE9es.",new_backup:"Faire une sauvegarde",create_backup:"Cr\xE9er une sauvegarde",select_backup_type:"Type de sauvegarde",backup_confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cette sauvegarde",path:"chemin",new_disk:"Nouveau stockage",created_at:"cr\xE9\xE9 \xE0",size:"taille",dropbox:"dropbox",local:"local",healthy:"en bonne sant\xE9",amount_of_backups:"nombre de sauvegardes",newest_backups:"derni\xE8res sauvegardes",used_storage:"Stockage utilis\xE9",select_disk:"Emplacement",action:"Action",deleted_message:"Sauvegarde supprim\xE9e",created_message:"Sauvegarde cr\xE9\xE9e",invalid_disk_credentials:"Informations d'identification invalides de l'espace de stockage"},disk:{title:"Stockage | Stockages",description:"Crater utilise par d\xE9faut votre disque local pour stocker les sauvegardes, les avatar et d'autres fichiers image. Vous pouvez configurer d'autres comptes de stockage, comme DigitalOcean, S3 et Dropbox.",created_at:"cr\xE9\xE9 \xE0",dropbox:"dropbox",name:"Nom",driver:"Compte de stockage",disk_type:"Type\xA0",disk_name:"Nom",new_disk:"Ajouter un espace de stockage",filesystem_driver:"Fournisseur",local_driver:"stockage local",local_root:"r\xE9pertoire local",public_driver:"Stockage public",public_root:"R\xE9pertoire public",public_url:"URL publique",public_visibility:"Visibilit\xE9 publique",media_driver:"Stockage multim\xE9dia",media_root:"R\xE9pertoire m\xE9dia",aws_driver:"AWS",aws_key:"AWS Key",aws_secret:"AWS Secret",aws_region:"R\xE9gion AWS",aws_bucket:"Bucket",aws_root:"R\xE9pertoire",do_spaces_type:"Type",do_spaces_key:"Key",do_spaces_secret:"Secret",do_spaces_region:"R\xE9gion",do_spaces_bucket:"Bucket",do_spaces_endpoint:"Endpoint",do_spaces_root:"R\xE9pertoire",dropbox_type:"Type",dropbox_token:"Token",dropbox_key:"Key",dropbox_secret:"Secret",dropbox_app:"Application",dropbox_root:"R\xE9pertoire",default_driver:"Fournisseur par d\xE9faut",is_default:"Par d\xE9faut",set_default_disk:"D\xE9finir l'espace par d\xE9faut",set_default_disk_confirm:"Cet espace sera utilis\xE9 par d\xE9faut pour l'enregistrement des PDF",success_set_default_disk:"Stockage par d\xE9faut mis \xE0 jour",save_pdf_to_disk:"Enregistrer les PDF sur le disque",disk_setting_description:"Activez cette option si vous souhaitez enregistrer automatiquement une copie de chaque facture, devis et re\xE7u de paiement PDF sur votre disque par d\xE9faut. L'activation de cette option r\xE9duira le temps de chargement lors de l'affichage des PDF.",select_disk:"Emplacement",disk_settings:"Param\xE8tres de stockage",confirm_delete:"Vos fichiers et dossiers existants sur le disque sp\xE9cifi\xE9 ne seront pas affect\xE9s, mais la configuration de votre disque sera supprim\xE9e de Crater",action:"Action",edit_file_disk:"Modifier cet espace de stockage",success_create:"Stockage ajout\xE9",success_update:"Stockage mis \xE0 jour",error:"L'ajout de disque a \xE9chou\xE9",deleted_message:"Stockage supprim\xE9",disk_variables_save_successfully:"Stockage configur\xE9",disk_variables_save_error:"La configuration du stockage a \xE9chou\xE9.",invalid_disk_credentials:"Informations d'identification non valides du stockage s\xE9lectionn\xE9"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},ys={account_info:"Information du compte",account_info_desc:"Les d\xE9tails ci-dessous seront utilis\xE9s pour cr\xE9er le compte administrateur principal. Aussi, vous pouvez modifier les d\xE9tails \xE0 tout moment apr\xE8s la connexion.",name:"Nom",email:"Email",password:"Mot de passe",confirm_password:"Confirmez le mot de passe",save_cont:"Enregistrer et poursuivre",company_info:"Coordonn\xE9es de la soci\xE9t\xE9",company_info_desc:"Ces informations seront affich\xE9es sur les factures. Notez que vous pouvez \xE9diter ceci plus tard sur la page des param\xE8tres.",company_name:"Nom",company_logo:"Logo",logo_preview:"Aper\xE7u",preferences:"Pr\xE9f\xE9rences",preferences_desc:"Pr\xE9f\xE9rences par d\xE9faut du syst\xE8me.",currency_set_alert:"La devise ne pourra pas \xEAtre chang\xE9.",country:"Pays",state:"\xC9tat",city:"Ville",address:"Adresse",street:"Rue 1 | Rue 2",phone:"T\xE9l\xE9phone",zip_code:"Code postal",go_back:"Revenir",currency:"Devise",language:"Langue",time_zone:"Fuseau horaire",fiscal_year:"Exercice fiscal",date_format:"Format de date",from_address:"De l'adresse",username:"Nom d'utilisateur",next:"Suivant",continue:"Poursuivre",skip:"Ignorer",database:{database:"URL du site et base de donn\xE9es",connection:"Connexion \xE0 la base de donn\xE9es",host:"Serveur de la base de donn\xE9es",port:"Port de la base de donn\xE9es",password:"Mot de passe de la base de donn\xE9es",app_url:"Application URL",app_domain:"Nom de domaine",username:"Nom d'utilisateur de la base de donn\xE9es",db_name:"Nom de la base de donn\xE9es",db_path:"Emplacement de la base de donn\xE9es",desc:"Cr\xE9ez une base de donn\xE9es sur votre serveur et d\xE9finissez les informations d'identification \xE0 l'aide du formulaire ci-dessous."},permissions:{permissions:"Permissions",permission_confirm_title:"\xCAtes-vous certain de vouloir continuer ?",permission_confirm_desc:"La v\xE9rification des permissions du dossier a \xE9chou\xE9",permission_desc:"Vous trouverez ci-dessous la liste des permissions de dossier requises pour le fonctionnement de l'application. Si la v\xE9rification des permissions \xE9choue, veillez mettre \xE0 jour vos permissions de dossier."},verify_domain:{title:"V\xE9rification du domaine",desc:"Crater utilise l'authentification bas\xE9e sur la session qui n\xE9cessite une v\xE9rification du domaine pour des raisons de s\xE9curit\xE9. Veuillez saisir le domaine sur lequel vous allez acc\xE9der \xE0 votre application web.",app_domain:"Domaine de l'application",verify_now:"V\xE9rifier maintenant",success:"V\xE9rification du domaine r\xE9ussie.",failed:"La v\xE9rification du domaine a \xE9chou\xE9. Veuillez entrer un nom de domaine valide.",verify_and_continue:"V\xE9rifier et continuer"},mail:{host:"Serveur email",port:"Port",driver:"Fournisseur d'email",secret:"Secret",mailgun_secret:"Secret",mailgun_domain:"Nom de domaine",mailgun_endpoint:"Endpoint",ses_secret:"Secret",ses_key:"Key",password:"Mot de passe",username:"Nom d'utilisateur",mail_config:"Envoi d'emails",from_name:"Nom de messagerie",from_mail:"Email de l'exp\xE9diteur",encryption:"Chiffrement des emails",mail_config_desc:"Les d\xE9tails ci-dessous seront utilis\xE9s pour mettre \xE0 jour le fournisseur de messagerie. Vous pourrez modifier ceux-ci \xE0 tout moment apr\xE8s la connexion."},req:{system_req:"Configuration requise",php_req_version:"Php (version {version} n\xE9cessaire)",check_req:"V\xE9rifier les pr\xE9requis",system_req_desc:"Crater a quelques pr\xE9requis. Assurez-vous que votre serveur dispose de la version Php requise et de toutes les extensions mentionn\xE9es ci-dessous."},errors:{migrate_failed:"\xC9chec de la migration",database_variables_save_error:"Impossible de cr\xE9er le fichier de configuration. Veuillez v\xE9rifier les permissions du r\xE9pertoire",mail_variables_save_error:"La configuration du courrier \xE9lectronique a \xE9chou\xE9.",connection_failed:"La connexion \xE0 la base de donn\xE9es a \xE9chou\xE9",database_should_be_empty:"La base de donn\xE9es devrait \xEAtre vide"},success:{mail_variables_save_successfully:"Email configur\xE9",database_variables_save_successfully:"Base de donn\xE9es configur\xE9e."}},bs={invalid_phone:"Num\xE9ro de t\xE9l\xE9phone invalide",invalid_url:"URL invalide (ex: http://www.crater.com)",invalid_domain_url:"URL invalide (ex: crater.com)",required:"Champ requis",email_incorrect:"Adresse Email incorrecte.",email_already_taken:"Un compte est d\xE9j\xE0 associ\xE9 \xE0 cette adresse email.",email_does_not_exist:"Cet utilisateur n'existe pas",item_unit_already_taken:"Cette unit\xE9 est d\xE9j\xE0 \xE9t\xE9 utilis\xE9e",payment_mode_already_taken:"Ce moyen de paiement est d\xE9j\xE0 utilis\xE9",send_reset_link:"Envoyer le lien de r\xE9initialisation",not_yet:"Pas encore re\xE7u ? R\xE9essayer",password_min_length:"Le mot de passe doit contenir au moins {count} caract\xE8res",name_min_length:"Le nom doit comporter au moins {count} lettres.",prefix_min_length:"Le pr\xE9fixe doit faire au moins {count} lettres.",enter_valid_tax_rate:"Entrez un taux de taxe valide",numbers_only:"Chiffres uniquement.",characters_only:"Caract\xE8res seulement.",password_incorrect:"Les mots de passe doivent \xEAtre identiques",password_length:"Le mot de passe doit comporter au moins {count} caract\xE8res.",qty_must_greater_than_zero:"La quantit\xE9 doit \xEAtre sup\xE9rieure \xE0 z\xE9ro.",price_greater_than_zero:"Le prix doit \xEAtre sup\xE9rieur \xE0 z\xE9ro.",payment_greater_than_zero:"Le paiement doit \xEAtre sup\xE9rieur \xE0 z\xE9ro.",payment_greater_than_due_amount:"Le paiement saisi est plus \xE9lev\xE9 que le montant d\xFB de cette facture.",quantity_maxlength:"La quantit\xE9 ne doit pas d\xE9passer 20 chiffres.",price_maxlength:"Le prix ne doit pas d\xE9passer 20 chiffres.",price_minvalue:"Le prix doit \xEAtre sup\xE9rieur \xE0 0.",amount_maxlength:"Le montant ne doit pas d\xE9passer 20 chiffres.",amount_minvalue:"Le montant doit \xEAtre sup\xE9rieur \xE0 0.",discount_maxlength:"La remise ne doit pas \xEAtre sup\xE9rieure \xE0 la remise maximale",description_maxlength:"La description ne doit pas d\xE9passer 255 caract\xE8res.",subject_maxlength:"L'objet ne doit pas d\xE9passer 100 caract\xE8res.",message_maxlength:"Le message ne doit pas d\xE9passer 255 caract\xE8res.",maximum_options_error:"Maximum de {max} options s\xE9lectionn\xE9es. Commencez par supprimer une option s\xE9lectionn\xE9e pour en s\xE9lectionner une autre.",notes_maxlength:"Les notes de bas de page ne doivent pas d\xE9passer 255 caract\xE8res.",address_maxlength:"L'adresse ne doit pas d\xE9passer 255 caract\xE8res.",ref_number_maxlength:"Le num\xE9ro de r\xE9f\xE9rence ne doit pas d\xE9passer 255 caract\xE8res.",prefix_maxlength:"Le pr\xE9fixe ne doit pas d\xE9passer 5 caract\xE8res.",something_went_wrong:"quelque chose a mal tourn\xE9",number_length_minvalue:"Ce nombre doit \xEAtre sup\xE9rieur \xE0 0",at_least_one_ability:"Veuillez s\xE9lectionner au moins une autorisation.",valid_driver_key:"Veuillez saisir une cl\xE9 {driver} valide.",valid_exchange_rate:"Veuillez saisir un taux de change valide.",company_name_not_same:"Le nom de la soci\xE9t\xE9 doit correspondre au nom fourni."},ks={starter_plan:"Cette fonctionnalit\xE9 est disponible \xE0 partir du plan Starter.",invalid_provider_key:"Veuillez entrer une cl\xE9 d'API valide du fournisseur.",estimate_number_used:"Ce num\xE9ro de devis est d\xE9j\xE0 utilis\xE9.",invoice_number_used:"Ce num\xE9ro de facture est d\xE9j\xE0 utilis\xE9.",payment_attached:"Cette facture est li\xE9e \xE0 un re\xE7u de paiement. Veuillez d'abord le supprimer avant de poursuivre.",payment_number_used:"Ce num\xE9ro de paiement est d\xE9j\xE0 utilis\xE9.",name_already_taken:"Ce nom est d\xE9j\xE0 pris.",receipt_does_not_exist:"Le re\xE7u n'existe pas.",customer_cannot_be_changed_after_payment_is_added:"Le client ne peut pas \xEAtre modifi\xE9 apr\xE8s l'ajout du paiement",invalid_credentials:"Identifiants invalides.",not_allowed:"Non autoris\xE9",login_invalid_credentials:"Ces identifiants ne correspondent pas \xE0 nos enregistrements.",enter_valid_cron_format:"Veuillez entrer une t\xE2che Cron valide",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},ws="Devis",xs="N\xB0",zs="Date",Ss="Date d'expiration",Ps="Facture",js="Num\xE9ro",As="Date",Ds="Date d\u2019\xE9ch\xE9ance",Cs="Notes de bas de page",Es="Articles",Is="Quantit\xE9",Ns="Prix",Ts="Remise",Rs="Montant",Ms="Sous-total",Fs="Total TTC",$s="Paiement",Us="Re\xE7u de paiement",Vs="Date de paiement",Os="Num\xE9ro",Ls="Moyen de paiement",Bs="Montant re\xE7u",qs="RAPPORT DE D\xC9PENSES",Ks="TOTAL DES D\xC9PENSES",Ws="RECETTES ET D\xC9PENSES",Zs="Rapport de vente client",Hs="Rapport de vente par articles",Ys="Rapport de r\xE9sum\xE9 fiscal",Gs="REVENU",Js="R\xC9SULTAT",Qs="Rapport de ventes : par client",Xs="TOTAL DES VENTES",eo="Rapport des ventes : par article",to="TAXES",ao="TOTAL",io="Taxe",no="D\xE9penses",so="Facturer \xE0",oo="Exp\xE9dier \xE0",ro="Re\xE7u de :",lo="Taxe";var co={navigation:es,general:ts,dashboard:as,tax_types:is,global_search:ns,company_switcher:ss,dateRange:os,customers:rs,items:ds,estimates:ls,invoices:cs,recurring_invoices:_s,payments:us,expenses:ms,login:ps,modules:gs,users:fs,reports:vs,settings:hs,wizard:ys,validation:bs,errors:ks,pdf_estimate_label:ws,pdf_estimate_number:xs,pdf_estimate_date:zs,pdf_estimate_expire_date:Ss,pdf_invoice_label:Ps,pdf_invoice_number:js,pdf_invoice_date:As,pdf_invoice_due_date:Ds,pdf_notes:Cs,pdf_items_label:Es,pdf_quantity_label:Is,pdf_price_label:Ns,pdf_discount_label:Ts,pdf_amount_label:Rs,pdf_subtotal:Ms,pdf_total:Fs,pdf_payment_label:$s,pdf_payment_receipt_label:Us,pdf_payment_date:Vs,pdf_payment_number:Os,pdf_payment_mode:Ls,pdf_payment_amount_received_label:Bs,pdf_expense_report_label:qs,pdf_total_expenses_label:Ks,pdf_profit_loss_label:Ws,pdf_sales_customers_label:Zs,pdf_sales_items_label:Hs,pdf_tax_summery_label:Ys,pdf_income_label:Gs,pdf_net_profit_label:Js,pdf_customer_sales_report:Qs,pdf_total_sales_label:Xs,pdf_item_sales_label:eo,pdf_tax_report_label:to,pdf_total_tax_label:ao,pdf_tax_types_label:io,pdf_expenses_label:no,pdf_bill_to:so,pdf_ship_to:oo,pdf_received_from:ro,pdf_tax_label:lo};const _o={dashboard:"Tablero",customers:"Clientes",items:"Art\xEDculos",invoices:"Facturas","recurring-invoices":"Facturas recurrentes",expenses:"Gastos",estimates:"Presupuestos",payments:"Pagos",reports:"Informes",settings:"Ajustes",logout:"Cerrar sesi\xF3n",users:"Usuarios",modules:"Modules"},uo={add_company:"A\xF1adir empresa",view_pdf:"Ver PDF",copy_pdf_url:"Copiar direcci\xF3n URL del archivo PDF",download_pdf:"Descargar PDF",save:"Guardar",create:"Crear",cancel:"Cancelar",update:"Actualizar",deselect:"Deseleccionar",download:"Descargar",from_date:"Desde la fecha",to_date:"Hasta la fecha",from:"De",to:"A",ok:"De acuerdo",yes:"S\xED",no:"No",sort_by:"Ordenar por",ascending:"Ascendente",descending:"Descendente",subject:"Asunto",body:"Cuerpo",message:"Mensaje",send:"Enviar",preview:"Previsualizar",go_back:"Volver",back_to_login:"\xBFVolver al inicio de sesi\xF3n?",home:"Inicio",filter:"Filtrar",delete:"Eliminar",edit:"Editar",view:"Ver",add_new_item:"Agregar \xEDtem nuevo",clear_all:"Limpiar todo",showing:"Mostrando",of:"de",actions:"Acciones",subtotal:"SUBTOTAL",discount:"DESCUENTO",fixed:"Fijo",percentage:"Porcentaje",tax:"IMPUESTO",total_amount:"VALOR TOTAL",bill_to:"Cobrar a",ship_to:"Enviar a",due:"Debido",draft:"Borrador",sent:"Enviado",all:"Todas",select_all:"Seleccionar todo",select_template:"Seleccionar plantilla",choose_file:"Haga clic aqu\xED para elegir un archivo",choose_template:"Elige una plantilla",choose:"Escoger",remove:"Eliminar",select_a_status:"Selecciona un estado",select_a_tax:"Selecciona un impuesto",search:"Buscar",are_you_sure:"\xBFEst\xE1s seguro?",list_is_empty:"La lista esta vac\xEDa.",no_tax_found:"\xA1No se encontraron impuestos!",four_zero_four:"404",you_got_lost:"Whoops! \xA1Te perdiste!",go_home:"Volver al Inicio",test_mail_conf:"Probar configuraci\xF3n de correo",send_mail_successfully:"El correo enviado con \xE9xito",setting_updated:"Configuraci\xF3n actualizada con \xE9xito",select_state:"Seleccionar estado",select_country:"Seleccionar pa\xEDs",select_city:"Seleccionar ciudad",street_1:"Calle 1",street_2:"Calle 2",action_failed:"Accion Fallida",retry:"Procesar de nuevo",choose_note:"Elegir nota",no_note_found:"No se encontr\xF3 ninguna nota",insert_note:"Insertar una nota",copied_pdf_url_clipboard:"Copiar Url al portapapeles",copied_url_clipboard:"Copied url to clipboard!",docs:"Documentaci\xF3n",do_you_wish_to_continue:"\xBFDeseas continuar?",note:"Nota",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},mo={select_year:"Seleccionar a\xF1o",cards:{due_amount:"Importe pendiente",customers:"Clientes",invoices:"Facturas",estimates:"Presupuestos",payments:"Payments"},chart_info:{total_sales:"Ventas",total_receipts:"Ingresos",total_expense:"Gastos",net_income:"Ingresos netos",year:"Seleccione a\xF1o"},monthly_chart:{title:"Gastos de venta"},recent_invoices_card:{title:"Facturas adeudadas",due_on:"Debido a",customer:"Cliente",amount_due:"Importe pendiente",actions:"Acciones",view_all:"Ver todo"},recent_estimate_card:{title:"Presupuestos recientes",date:"Fecha",customer:"Cliente",amount_due:"Importe pendiente",actions:"Acciones",view_all:"Ver todo"}},po={name:"Nombre",description:"Descripci\xF3n",percent:"Por ciento",compound_tax:"Impuesto compuesto"},go={search:"Buscar...",customers:"Clientes",users:"Usuarios",no_results_found:"No se encontraron resultados"},fo={label:"CAMBIAR EMPRESA",no_results_found:"No se encontraron resultados",add_new_company:"A\xF1adir nueva empresa",new_company:"Nueva empresa",created_message:"Empresa creada satisfactoriamente"},vo={today:"Hoy",this_week:"Esta semana",this_month:"Este mes",this_quarter:"Este trimestre",this_year:"A\xF1o actual",previous_week:"Semana pasada",previous_month:"Mes pasado",previous_quarter:"Trimestre pasado",previous_year:"A\xF1o pasado",custom:"Personalizado"},ho={title:"Clientes",prefix:"Prefijo",add_customer:"Agregar cliente",contacts_list:"Lista de clientes",name:"Nombre",mail:"Correo | Correos",statement:"Declaraci\xF3n",display_name:"Nombre para mostrar",primary_contact_name:"Nombre de contacto primario",contact_name:"Nombre de contacto",amount_due:"Importe pendiente",email:"Correo electr\xF3nico",address:"Direcci\xF3n",phone:"Tel\xE9fono",website:"Sitio web",overview:"Descripci\xF3n general",invoice_prefix:"Prefijo de la factura",estimate_prefix:"Prefijo de los presupuestos",payment_prefix:"Prefijo de pago",enable_portal:"Habilitar Portal",country:"Pa\xEDs",state:"Estado",city:"Ciudad",zip_code:"C\xF3digo postal",added_on:"A\xF1adido el",action:"Acci\xF3n",password:"Contrase\xF1a",confirm_password:"Confirmar contrase\xF1a",street_number:"N\xFAmero de calle",primary_currency:"Moneda primaria",description:"Descripci\xF3n",add_new_customer:"Agregar nuevo cliente",save_customer:"Guardar cliente",update_customer:"Actualizar cliente",customer:"Cliente | Clientes",new_customer:"Nuevo cliente",edit_customer:"Editar cliente",basic_info:"Informaci\xF3n b\xE1sica",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"Direcci\xF3n de Facturaci\xF3n",shipping_address:"Direcci\xF3n de Env\xEDo",copy_billing_address:"Copia de facturaci\xF3n",no_customers:"\xA1A\xFAn no hay clientes!",no_customers_found:"\xA1No se encontraron clientes!",no_contact:"No hay contactos",no_contact_name:"No hay nombres de contactos",list_of_customers:"Esta secci\xF3n contendr\xE1 la lista de clientes.",primary_display_name:"Nombre de visualizaci\xF3n principal",select_currency:"Seleccione el tipo de moneda",select_a_customer:"Selecciona un cliente",type_or_click:"Escriba o haga clic para seleccionar",new_transaction:"Nueva transacci\xF3n",no_matching_customers:"\xA1No hay clientes coincidentes!",phone_number:"N\xFAmero de tel\xE9fono",create_date:"Fecha de Creaci\xF3n",confirm_delete:"No podr\xE1 recuperar este cliente y todas las facturas, estimaciones y pagos relacionados. | No podr\xE1 recuperar estos clientes y todas las facturas, estimaciones y pagos relacionados.",created_message:"Cliente creado con \xE9xito",updated_message:"Cliente actualizado con \xE9xito",address_updated_message:"Address Information Updated succesfully",deleted_message:"Cliente eliminado correctamente | Clientes eliminados exitosamente",edit_currency_not_allowed:"No se puede cambiar la divisa una vez creadas las transacciones."},yo={title:"Art\xEDculos",items_list:"Lista de art\xEDculos",name:"Nombre",unit:"Unidad",description:"Descripci\xF3n",added_on:"A\xF1adido",price:"Precio",date_of_creation:"Fecha de creaci\xF3n",not_selected:"Ning\xFAn elemento seleccionado",action:"Acci\xF3n",add_item:"A\xF1adir art\xEDculo",save_item:"Guardar art\xEDculo",update_item:"Actualizar elemento",item:"Art\xEDculo | Art\xEDculos",add_new_item:"Agregar \xEDtem nuevo",new_item:"Nuevo art\xEDculo",edit_item:"Editar elemento",no_items:"\xA1A\xFAn no hay art\xEDculos!",list_of_items:"Esta secci\xF3n contendr\xE1 la lista de art\xEDculos.",select_a_unit:"seleccionar unidad",taxes:"Impuestos",item_attached_message:"No se puede eliminar un elemento que ya est\xE1 en uso.",confirm_delete:"No podr\xE1 recuperar este art\xEDculo | No podr\xE1s recuperar estos elementos",created_message:"Art\xEDculo creado con \xE9xito",updated_message:"Art\xEDculo actualizado con \xE9xito",deleted_message:"Elemento eliminado con \xE9xito | Elementos eliminados correctamente"},bo={title:"Presupuestos",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"Presupuesto | Presupuestos",estimates_list:"Lista de presupuestos",days:"{d\xEDas} D\xEDas",months:"{meses} Mes",years:"{a\xF1os} A\xF1o",all:"Todas",paid:"Pagada",unpaid:"No pagado",customer:"CLIENTE",ref_no:"N\xDAMERO DE REFERENCIA.",number:"N\xDAMERO",amount_due:"IMPORTE PENDIENTE",partially_paid:"Parcialmente pagado",total:"Total",discount:"Descuento",sub_total:"Subtotal",estimate_number:"N\xFAmero de Presupuesto",ref_number:"N\xFAmero de referencia",contact:"Contacto",add_item:"Agregar un art\xEDculo",date:"Fecha",due_date:"Fecha de vencimiento",expiry_date:"Fecha de caducidad",status:"Estado",add_tax:"Agregar impuesto",amount:"Cantidad",action:"Acci\xF3n",notes:"Notas",tax:"Impuesto",estimate_template:"Plantilla de presupuesto",convert_to_invoice:"Convertir a factura",mark_as_sent:"Marcar como enviado",send_estimate:"Enviar presupuesto",resend_estimate:"Reenviar estimado",record_payment:"Registro de pago",add_estimate:"Agregar presupuesto",save_estimate:"Guardar presupuesto",confirm_conversion:"\xBFQuiere convertir este presupuesto en una factura?",conversion_message:"Conversi\xF3n exitosa",confirm_send_estimate:"Este presupuesto se enviar\xE1 por correo electr\xF3nico al cliente",confirm_mark_as_sent:"Este presupuesto se marcar\xE1 como enviado",confirm_mark_as_accepted:"Este presupuesto se marcar\xE1 como Aceptado",confirm_mark_as_rejected:"Este presupuesto se marcar\xE1 como Rechazado",no_matching_estimates:"\xA1No hay presupuestos coincidentes!",mark_as_sent_successfully:"Presupuesto marcado como enviado correctamente",send_estimate_successfully:"Presupuesto enviado con \xE9xito",errors:{required:"Se requiere campo"},accepted:"Aceptado",rejected:"Rechazado",expired:"Expired",sent:"Enviado",draft:"Borrador",viewed:"Viewed",declined:"Rechazado",new_estimate:"Nuevo presupuesto",add_new_estimate:"A\xF1adir nuevo presupuesto",update_Estimate:"Actualizar presupuesto",edit_estimate:"Editar presupuesto",items:"art\xEDculos",Estimate:"Presupuestos | Presupuestos",add_new_tax:"Agregar nuevo impuesto",no_estimates:"\xA1A\xFAn no hay presupuestos!",list_of_estimates:"Esta secci\xF3n contendr\xE1 la lista de presupuestos.",mark_as_rejected:"Marcar como rechazado",mark_as_accepted:"Marcar como aceptado",marked_as_accepted_message:"Presupuesto marcado como aceptado",marked_as_rejected_message:"Presupuesto marcado como rechazado",confirm_delete:"No podr\xE1 recuperar este presupuesto | No podr\xE1 recuperar estos presupuestos",created_message:"Presupuesto creada con \xE9xito",updated_message:"Presupuesto actualizada con \xE9xito",deleted_message:"Presupuesto eliminada con \xE9xito | Presupuestos eliminadas exitosamente",something_went_wrong:"Algo fue mal",item:{title:"T\xEDtulo del art\xEDculo",description:"Descripci\xF3n",quantity:"Cantidad",price:"Precio",discount:"Descuento",total:"Total",total_discount:"Descuento total",sub_total:"Subtotal",tax:"Impuesto",amount:"Cantidad",select_an_item:"Escriba o haga clic para seleccionar un elemento",type_item_description:"Descripci\xF3n del tipo de elemento(opcional)"}},ko={title:"Facturas",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"Lista de facturas",invoice_information:"Invoice Information",days:"{d\xEDas} D\xEDas",months:"{meses} Mes",years:"{a\xF1os} A\xF1o",all:"Todas",paid:"Pagada",unpaid:"No pagado",viewed:"Visto",overdue:"Vencido",completed:"Completado",customer:"CLIENTE",paid_status:"ESTADO PAGADO",ref_no:"N\xDAMERO DE REFERENCIA.",number:"N\xDAMERO",amount_due:"IMPORTE PENDIENTE",partially_paid:"Parcialmente pagado",total:"Total",discount:"Descuento",sub_total:"Subtotal",invoice:"Factura | Facturas",invoice_number:"Numero de factura",ref_number:"N\xFAmero de referencia",contact:"Contacto",add_item:"Agregar un art\xEDculo",date:"Fecha",due_date:"Fecha de vencimiento",status:"Estado",add_tax:"Agregar impuesto",amount:"Cantidad",action:"Acci\xF3n",notes:"Notas",view:"Ver",send_invoice:"Enviar la factura",resend_invoice:"Reenviar factura",invoice_template:"Plantilla de factura",conversion_message:"Factura clonada correctamente",template:"Modelo",mark_as_sent:"Marcar como enviada",confirm_send_invoice:"Esta factura ser\xE1 enviada por email al cliente",invoice_mark_as_sent:"Esta factura se marcar\xE1 como enviada",confirm_mark_as_accepted:"Esta factura se marcar\xE1 como aceptada",confirm_mark_as_rejected:"Esta factura se marcar\xE1 como rechazada",confirm_send:"Estas facturas se enviar\xE1n por correo electr\xF3nico al cliente.",invoice_date:"Fecha de la factura",record_payment:"Registro de pago",add_new_invoice:"A\xF1adir nueva factura",update_expense:"Actualizar gasto",edit_invoice:"Editar factura",new_invoice:"Nueva factura",save_invoice:"Guardar factura",update_invoice:"Actualizar factura",add_new_tax:"Agregar nuevo impuesto",no_invoices:"\xA1A\xFAn no hay facturas!",mark_as_rejected:"Marcar como rechazado",mark_as_accepted:"Marcar como aceptado",list_of_invoices:"Esta secci\xF3n contendr\xE1 la lista de facturas.",select_invoice:"Seleccionar factura",no_matching_invoices:"\xA1No hay facturas coincidentes con la selecci\xF3n!",mark_as_sent_successfully:"Factura marcada como enviada con \xE9xito",invoice_sent_successfully:"Factura enviada satisfactoriamente",cloned_successfully:"Factura clonada correctamente",clone_invoice:"Clonar factura",confirm_clone:"Esta factura se clonar\xE1 en una nueva factura.",item:{title:"T\xEDtulo del art\xEDculo",description:"Descripci\xF3n",quantity:"Cantidad",price:"Precio",discount:"Descuento",total:"Total",total_discount:"Descuento total",sub_total:"Subtotal",tax:"Impuesto",amount:"Cantidad",select_an_item:"Escriba o haga clic para seleccionar un elemento",type_item_description:"Descripci\xF3n del tipo de elemento (opcional)"},payment_attached_message:"Una de las facturas seleccionadas ya tiene un pago adjunto. Aseg\xFArese de eliminar primero los pagos adjuntos para continuar con la eliminaci\xF3n",confirm_delete:"No podr\xE1 recuperar esta factura | No podr\xE1 recuperar estas facturas",created_message:"Factura creada exitosamente",updated_message:"Factura actualizada exitosamente",deleted_message:"Factura eliminada con \xE9xito | Facturas borradas exitosamente",marked_as_sent_message:"Factura marcada como enviada con \xE9xito",something_went_wrong:"Algo fue mal",invalid_due_amount_message:"El pago introducido es mayor que el importe total pendiente de esta factura. Por favor, verificalo y vuelve a intentarlo."},wo={title:"Facturas recurrentes",invoices_list:"Lista de facturas recurrentes",days:"{days} D\xEDas",months:"{months} Mes/es",years:"{years} A\xF1o/s",all:"Todas",paid:"Pagada",unpaid:"No pagada",viewed:"Vista",overdue:"Vencido",active:"Activo",completed:"Completado",customer:"CLIENTE",paid_status:"ESTADO DE PAGO",ref_no:"N\xDAM. DE REFERENCIA.",number:"N\xDAMERO",amount_due:"IMPORTE PENDIENTE",partially_paid:"Parcialmente pagada",total:"Total",discount:"Descuento",sub_total:"Subtotal",invoice:"Factura recurrente | Facturas recurrentes",invoice_number:"N\xFAmero de factura recurrente",next_invoice_date:"Fecha de la pr\xF3xima factura",ref_number:"N\xFAmero de referencia",contact:"Contacto",add_item:"A\xF1adir un elemento",date:"Fecha",limit_by:"Limitar por",limit_date:"Fecha l\xEDmite",limit_count:"N\xFAmero de L\xEDmites",count:"Recuento",status:"Estado",select_a_status:"Selecciona un estado",working:"Trabajando",on_hold:"En espera",complete:"Completado",add_tax:"Agregar impuesto",amount:"Cantidad",action:"Acci\xF3n",notes:"Notas",view:"Ver",basic_info:"Informaci\xF3n b\xE1sica",send_invoice:"Enviar factura recurrente",auto_send:"Autoenviar",resend_invoice:"Reenviar factura recurrente",invoice_template:"Plantilla de la factura recurrente",conversion_message:"Factura recurrente clonada con \xE9xito",template:"Plantilla",mark_as_sent:"Marcar como enviada",confirm_send_invoice:"Esta factura recurrente se enviar\xE1 por correo electr\xF3nico al cliente",invoice_mark_as_sent:"Esta factura recurrente se marcar\xE1 como enviada",confirm_send:"Esta factura recurrente se enviar\xE1 por correo electr\xF3nico al cliente",starts_at:"Fecha de inicio",due_date:"Fecha l\xEDmite de la factura",record_payment:"Registrar pago",add_new_invoice:"A\xF1adir nueva factura recurrente",update_expense:"Actualizar gasto",edit_invoice:"Editar factura recurrente",new_invoice:"Nueva factura recurrente",send_automatically:"Enviar autom\xE1ticamente",send_automatically_desc:"Habilite esto, si desea enviar la factura autom\xE1ticamente al cliente cuando se haya creado.",save_invoice:"Guardar factura recurrente",update_invoice:"Actualizar factura recurrente",add_new_tax:"Agregar nuevo impuesto",no_invoices:"\xA1A\xFAn no hay facturas recurrentes!",mark_as_rejected:"Marcar como rechazado",mark_as_accepted:"Marcar como aceptado",list_of_invoices:"Esta secci\xF3n contiene la lista de facturas recurrentes.",select_invoice:"Seleccionar factura",no_matching_invoices:"\xA1No hay facturas recurrentes que coincidan!",mark_as_sent_successfully:"Factura recurrente marcada como enviada correctamente",invoice_sent_successfully:"Factura recurrente enviada correctamente",cloned_successfully:"Factura recurrente clonada con \xE9xito",clone_invoice:"Clonar factura recurrente",confirm_clone:"Esta factura recurrente ser\xE1 clonada en una nueva factura recurrente",item:{title:"T\xEDtulo del art\xEDculo",description:"Descripci\xF3n",quantity:"Cantidad",price:"Precio",discount:"Descuento",total:"Total",total_discount:"Descuento total",sub_total:"Subtotal",tax:"Impuesto",amount:"Cantidad",select_an_item:"Escribe o haz clic para seleccionar un elemento",type_item_description:"Descripci\xF3n del tipo de elemento(opcional)"},frequency:{title:"Frecuencia",select_frequency:"Seleccionar frecuencia",minute:"Minuto",hour:"Hora",day_month:"D\xEDa del mes",month:"Mes",day_week:"D\xEDa de la semana"},confirm_delete:"No podr\xE1 recuperar esta factura | No podr\xE1s recuperar estas facturas",created_message:"Factura recurrente creada con \xE9xito",updated_message:"Factura recurrente actualizada correctamente",deleted_message:"Factura recurrente eliminada correctamente | Facturas recurrentes eliminadas correctamente",marked_as_sent_message:"Factura recurrente marcada como enviada con \xE9xito",user_email_does_not_exist:"El email del usuario no existe",something_went_wrong:"algo ha ido mal",invalid_due_amount_message:"La cantidad total de la factura recurrente no puede ser menor a la cantidad total pagada. Por favor, actualiza la factura o elimina los pagos asociados para continuar."},xo={title:"Pagos",payments_list:"Lista de pagos",record_payment:"Registro de pago",customer:"Cliente",date:"Fecha",amount:"Cantidad",action:"Acci\xF3n",payment_number:"Numero de pago",payment_mode:"Modo de pago",invoice:"Factura",note:"Nota",add_payment:"Agregar pago",new_payment:"Nuevo pago",edit_payment:"Editar pago",view_payment:"Ver pago",add_new_payment:"Agregar nuevo pago",send_payment_receipt:"Enviar recibo de pago",send_payment:"Enviar pago",save_payment:"Guardar pago",update_payment:"Actualizar pago",payment:"Pago | Pagos",no_payments:"\xA1A\xFAn no hay pagos!",not_selected:"No seleccionado",no_invoice:"Sin facturas",no_matching_payments:"\xA1No hay pagos equivalentes!",list_of_payments:"Esta secci\xF3n contendr\xE1 la lista de pagos.",select_payment_mode:"Seleccionar modo de pago",confirm_mark_as_sent:"Este presupuesto se marcar\xE1 como enviado",confirm_send_payment:"Este pago se enviar\xE1 por correo electr\xF3nico al cliente",send_payment_successfully:"Pago enviado correctamente",something_went_wrong:"Algo fue mal",confirm_delete:"No podr\xE1 recuperar este pago | No podr\xE1 recuperar estos pagos",created_message:"Pago creado con \xE9xito",updated_message:"Pago actualizado con \xE9xito",deleted_message:"Pago eliminado con \xE9xito | Pagos eliminados exitosamente",invalid_amount_message:"El importe del pago no es v\xE1lido."},zo={title:"Gastos",expenses_list:"Lista de gastos",select_a_customer:"Selecciona un cliente",expense_title:"T\xEDtulo",customer:"Cliente",currency:"Divisa",contact:"Contacto",category:"Categor\xEDa",from_date:"Desde la fecha",to_date:"Hasta la fecha",expense_date:"Fecha",description:"Descripci\xF3n",receipt:"Recibo",amount:"Cantidad",action:"Acci\xF3n",not_selected:"Sin seleccionar",note:"Nota",category_id:"Categoria ID",date:"Fecha de gastos",add_expense:"A\xF1adir gastos",add_new_expense:"A\xF1adir nuevo gasto",save_expense:"Guardar gasto",update_expense:"Actualizar gasto",download_receipt:"Descargar recibo",edit_expense:"Editar gasto",new_expense:"Nuevo gasto",expense:"Gastos | Gastos",no_expenses:"\xA1No hay gastos todav\xEDa!",list_of_expenses:"Esta secci\xF3n contendr\xE1 la lista de gastos.",confirm_delete:"No podr\xE1 recuperar este gasto | No podr\xE1 recuperar estos gastos",created_message:"Gastos creados exitosamente",updated_message:"Gastos actualizados con \xE9xito",deleted_message:"Gastos eliminados con \xE9xito | Gastos eliminados exitosamente",categories:{categories_list:"Lista de categor\xEDas",title:"T\xEDtulo",name:"Nombre",description:"Descripci\xF3n",amount:"Cantidad",actions:"Comportamiento",add_category:"a\xF1adir categor\xEDa",new_category:"Nueva categor\xEDa",category:"Categor\xEDa | Categorias",select_a_category:"Seleccione una categor\xEDa"}},So={email:"Correo electr\xF3nico",password:"Contrase\xF1a",forgot_password:"\xBFOlvidaste tu contrase\xF1a?",or_signIn_with:"o Inicia sesi\xF3n con",login:"Iniciar sesi\xF3n",register:"Registro",reset_password:"Restablecer la contrase\xF1a",password_reset_successfully:"Contrase\xF1a reestablecida con \xE9xito",enter_email:"Escriba el correo electr\xF3nico",enter_password:"Escriba la contrase\xF1a",retype_password:"Reescriba la contrase\xF1a"},Po={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},jo={title:"Usuarios",users_list:"Lista de usuarios",name:"Nombre",description:"Descripci\xF3n",added_on:"A\xF1adido",date_of_creation:"Fecha de creaci\xF3n",action:"Acci\xF3n",add_user:"Agregar usuario",save_user:"Guardar usuario",update_user:"Actualizar usuario",user:"Usuario | Usuarios",add_new_user:"Agregar Nuevo Usuario",new_user:"Nuevo usuario",edit_user:"Editar usuario",no_users:"\xA1A\xFAn no hay usuarios!",list_of_users:"Esta secci\xF3n contendr\xE1 la lista de usuarios.",email:"Correo",phone:"Tel\xE9fono",password:"Contrase\xF1a",user_attached_message:"No se puede eliminar un elemento que ya est\xE1 en uso.",confirm_delete:"No podr\xE1 recuperar este Usuario | No podr\xE1 recuperar estos Usuarios",created_message:"Usuario creado satisfactoriamente",updated_message:"Usuario actualizado satisfactoriamente",deleted_message:"Usuario eliminado exitosamente | Usuario eliminado correctamente",select_company_role:"Seleccionar rol para {company}",companies:"Empresas"},Ao={title:"Informe",from_date:"A partir de la fecha",to_date:"Hasta la fecha",status:"Estado",paid:"Pagada",unpaid:"No pagado",download_pdf:"Descargar PDF",view_pdf:"Ver PDF",update_report:"Informe de actualizaci\xF3n",report:"Informe | Informes",profit_loss:{profit_loss:"P\xE9rdida de beneficios",to_date:"Hasta la fecha",from_date:"A partir de la fecha",date_range:"Seleccionar rango de fechas"},sales:{sales:"Ventas",date_range:"Seleccionar rango de fechas",to_date:"Hasta la fecha",from_date:"A partir de la fecha",report_type:"Tipo de informe"},taxes:{taxes:"Impuestos",to_date:"Hasta la fecha",from_date:"A partir de la fecha",date_range:"Seleccionar rango de fechas"},errors:{required:"Se requiere campo"},invoices:{invoice:"Factura",invoice_date:"Fecha de la factura",due_date:"Fecha de vencimiento",amount:"Cantidad",contact_name:"Nombre de contacto",status:"Estado"},estimates:{estimate:"Presupuestar",estimate_date:"Fecha presupuesto",due_date:"Fecha de vencimiento",estimate_number:"N\xFAmero de Presupuesto",ref_number:"N\xFAmero de referencia",amount:"Cantidad",contact_name:"Nombre de contacto",status:"Estado"},expenses:{expenses:"Gastos",category:"Categor\xEDa",date:"Fecha",amount:"Cantidad",to_date:"Hasta la fecha",from_date:"A partir de la fecha",date_range:"Seleccionar rango de fechas"}},Do={menu_title:{account_settings:"Configuraciones de la cuenta",company_information:"Informaci\xF3n de la empresa",customization:"Personalizaci\xF3n",preferences:"Preferencias",notifications:"Notificaciones",tax_types:"Tipos de impuestos",expense_category:"Categor\xEDas de gastos",update_app:"Actualizar aplicaci\xF3n",backup:"Copias de seguridad",file_disk:"Disco de archivo",custom_fields:"Campos Personalizados",payment_modes:"Formas de pago",notes:"Notas",exchange_rate:"Tasa de cambio",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"Configuraciones",setting:"Configuraciones | Configuraciones",general:"General",language:"Idioma",primary_currency:"Moneda primaria",timezone:"Zona horaria",date_format:"Formato de fecha",currencies:{title:"Monedas",currency:"Moneda | Monedas",currencies_list:"Lista de monedas",select_currency:"Seleccione el tipo de moneda",name:"Nombre",code:"C\xF3digo",symbol:"S\xEDmbolo",precision:"Precisi\xF3n",thousand_separator:"Separador de miles",decimal_separator:"Separador decimal",position:"Posici\xF3n",position_of_symbol:"Posici\xF3n del s\xEDmbolo",right:"Derecho",left:"Izquierda",action:"Acci\xF3n",add_currency:"Agregar moneda"},mail:{host:"Host de correo",port:"Puerto de correo",driver:"Conductor de correo",secret:"Secreto",mailgun_secret:"Mailgun Secreto",mailgun_domain:"Domino",mailgun_endpoint:"Mailgun endpoint",ses_secret:"Secreto SES",ses_key:"Clave SES",password:"Contrase\xF1a de correo",username:"Nombre de usuario de correo",mail_config:"Configuraci\xF3n de correo",from_name:"Del nombre del correo",from_mail:"Desde la direcci\xF3n de correo",encryption:"Cifrado de correo",mail_config_desc:"Los detalles a continuaci\xF3n se utilizar\xE1n para actualizar el entorno de correo. Tambi\xE9n puede cambiar los detalles en cualquier momento despu\xE9s de iniciar sesi\xF3n."},pdf:{title:"Configuraci\xF3n de PDF",footer_text:"Texto de pie de p\xE1gina",pdf_layout:"Dise\xF1o PDF"},company_info:{company_info:"Informaci\xF3n de la compa\xF1\xEDa",company_name:"Nombre de Empresa",company_logo:"Logo de la compa\xF1\xEDa",section_description:"Informaci\xF3n sobre su empresa que se mostrar\xE1 en las facturas, presupuestos y otros documentos creados por Crater.",phone:"Tel\xE9fono",country:"Pa\xEDs",state:"Estado",city:"Ciudad",address:"Direcci\xF3n",zip:"C\xF3digo Postal",save:"Guardar",delete:"Eliminar",updated_message:"Informaci\xF3n de la empresa actualizada con \xE9xito",delete_company:"Eliminar empresa",delete_company_description:"Una vez que elimines tu empresa, perder\xE1s todos los datos y archivos asociados a ella permanentemente.",are_you_absolutely_sure:"\xBFEst\xE1s realmente seguro?",delete_company_modal_desc:"Est acci\xF3n no se puede deshacer. Se eliminar\xE1 de manera permanente {company} y todos sus datos asociados.",delete_company_modal_label:"Por favor escribe {company} para confirmar"},custom_fields:{title:"Campos Personalizados",section_description:"Personalice sus facturas, estimaciones y recibos de pago en sus propios campos. Aseg\xFArese de usar los siguientes campos a\xF1adidos en los formatos de direcci\xF3n de la p\xE1gina de configuraci\xF3n de personalizaci\xF3n.",add_custom_field:"Agregar campo personalizado",edit_custom_field:"Editar campo personalizado",field_name:"Nombre del campo",label:"Etiqueta",type:"Tipo",name:"Nombre",slug:"Slug",required:"Necesaria",placeholder:"Marcador de posici\xF3n",help_text:"texto de ayuda",default_value:"Valor por defecto",prefix:"Prefijo",starting_number:"N\xFAmero inicial",model:"Modelo",help_text_description:"Ingrese un texto para ayudar a los usuarios a comprender el prop\xF3sito de este campo personalizado.",suffix:"Sufijo",yes:"si",no:"No",order:"Orden",custom_field_confirm_delete:"No podr\xE1 recuperar este campo personalizado",already_in_use:"El campo personalizado ya est\xE1 en uso",deleted_message:"Campo personalizado eliminado correctamente",options:"opciones",add_option:"Agregar opciones",add_another_option:"Agregar otra opci\xF3n",sort_in_alphabetical_order:"Ordenar en orden alfab\xE9tico",add_options_in_bulk:"Agregar opciones a granel",use_predefined_options:"Usar opciones predefinidas",select_custom_date:"Seleccionar fecha personalizada",select_relative_date:"Seleccionar fecha relativa",ticked_by_default:"Marcada por defecto",updated_message:"Campo personalizado actualizado correctamente",added_message:"Campo personalizado agregado correctamente",press_enter_to_add:"Presiona Enter para a\xF1adir una nueva opci\xF3n",model_in_use:"No se puede actualizar el modelo para los campos que ya est\xE1n en uso.",type_in_use:"No se puede actualizar el tipo de los campos que ya est\xE1n en uso."},customization:{customization:"Personalizaci\xF3n",updated_message:"Informaci\xF3n de la empresa actualizada con \xE9xito",save:"Guardar",insert_fields:"Insertar campos",learn_custom_format:"Aprende a utilizar el formato personalizado",add_new_component:"A\xF1adir nuevo componente",component:"Componente",Parameter:"Par\xE1metro",series:"Series",series_description:"Para establecer un prefijo/sufijo fijo como por ejemplo 'INV' para las facturas de tu empresa. El n\xFAmero m\xE1ximo de caracteres permitidos es 4.",series_param_label:"Valor de series",delimiter:"Delimitador",delimiter_description:"Car\xE1cter \xFAnico para especificar el l\xEDmite entre 2 componentes separados. Por defecto est\xE1 configurado en -",delimiter_param_label:"Valor delimitador",date_format:"Formato de fecha",date_format_description:"Un campo de fecha y hora local que acepta un par\xE1metro de formato. El formato predeterminado: 'Y' representa el a\xF1o actual.",date_format_param_label:"Formato",sequence:"Secuencia",sequence_description:"Secuencia consecutiva de n\xFAmeros en su empresa. Puede especificar la longitud en el par\xE1metro dado.",sequence_param_label:"Longitud de la secuencia",customer_series:"Series de clientes",customer_series_description:"Establecer un prefijo/postfijo diferente para cada cliente.",customer_sequence:"Secuencia de cliente",customer_sequence_description:"Secuencia consecutiva de n\xFAmeros para cada uno de sus clientes.",customer_sequence_param_label:"Longitud de la secuencia",random_sequence:"Secuencia aleatoria",random_sequence_description:"Cadena alfanum\xE9rica aleatoria. Puedes especificar la longitud en el par\xE1metro dado.",random_sequence_param_label:"Longitud de la secuencia",invoices:{title:"Facturas",invoice_number_format:"Formato de n\xFAmero de factura",invoice_number_format_description:"Personalice c\xF3mo se genera autom\xE1ticamente su n\xFAmero de factura cuando crea una nueva factura.",preview_invoice_number:"Previsualizar n\xFAmero de factura",due_date:"Fecha de vencimiento",due_date_description:"Especifique c\xF3mo se establece autom\xE1ticamente la fecha de vencimiento cuando crea una factura.",due_date_days:"Factura vence despu\xE9s de d\xEDas",set_due_date_automatically:"Establecer fecha de vencimiento autom\xE1ticamente",set_due_date_automatically_description:"Habilite esto si desea establecer la fecha de vencimiento autom\xE1ticamente cuando crea una nueva factura.",default_formats:"Formatos por defecto",default_formats_description:"Los formatos dados a continuaci\xF3n se utilizan para completar los campos autom\xE1ticamente en la creaci\xF3n de la factura.",default_invoice_email_body:"Cuerpo predeterminado del correo electr\xF3nico de la factura",company_address_format:"Formato de direcci\xF3n de la empresa",shipping_address_format:"Formato de la direcci\xF3n de env\xEDo",billing_address_format:"Formato de direcci\xF3n de facturaci\xF3n",invoice_email_attachment:"Enviar cotizaci\xF3n como adjunto",invoice_email_attachment_setting_description:"Activa esto si quieres enviar facturas como archivo adjunto de correo electr\xF3nico. Tenga en cuenta que el bot\xF3n 'Ver factura' en los correos electr\xF3nicos ya no se mostrar\xE1 cuando est\xE9 habilitado.",invoice_settings_updated:"La configuraci\xF3n de facturas se ha actualizado correctamente",retrospective_edits:"Ediciones retrospectivas",allow:"Permitir",disable_on_invoice_partial_paid:"Desactivar despu\xE9s de que se registre un pago parcial",disable_on_invoice_paid:"Desactivar despu\xE9s de que se registre el pago completo",disable_on_invoice_sent:"Desactivar despu\xE9s de enviar la factura",retrospective_edits_description:" Seg\xFAn las leyes de su pa\xEDs o sus preferencias, puede restringir que los usuarios editen las facturas finalizadas."},estimates:{title:"Estimaciones",estimate_number_format:"Formato de n\xFAmero de estimaci\xF3n",estimate_number_format_description:"Personalice c\xF3mo se genera autom\xE1ticamente su n\xFAmero de presupuesto cuando crea un nuevo presupuesto.",preview_estimate_number:"Vista previa del n\xFAmero de presupuesto",expiry_date:"Fecha de vencimiento",expiry_date_description:"Especifique c\xF3mo se establece autom\xE1ticamente la fecha de caducidad cuando crea un presupuesto.",expiry_date_days:"Estimaci\xF3n Caduca despu\xE9s de d\xEDas",set_expiry_date_automatically:"Establecer fecha de expiraci\xF3n autom\xE1ticamente",set_expiry_date_automatically_description:"Habilite esto si desea establecer la fecha de vencimiento autom\xE1ticamente cuando crea un nuevo presupuesto.",default_formats:"Formatos por defecto",default_formats_description:"Los formatos dados a continuaci\xF3n se utilizan para completar los campos autom\xE1ticamente en la creaci\xF3n del presupuesto.",default_estimate_email_body:"Cuerpo predeterminado estimado del correo electr\xF3nico",company_address_format:"Formato de direcci\xF3n de la empresa",shipping_address_format:"Formato de direcci\xF3n de env\xEDo",billing_address_format:"Formato de la direcci\xF3n de facturaci\xF3n",estimate_email_attachment:"Enviar cotizaci\xF3n como adjunto",estimate_email_attachment_setting_description:"Activa esto si quieres enviar facturas como archivo adjunto de correo electr\xF3nico. Tenga en cuenta que el bot\xF3n 'Ver factura' en los correos electr\xF3nicos ya no se mostrar\xE1 cuando est\xE9 habilitado.",estimate_settings_updated:"Ajustes de presupuesto actualizados con \xE9xito",convert_estimate_options:"Acci\xF3n de conversi\xF3n de presupuesto",convert_estimate_description:"Especifique lo que sucede con el presupuesto una vez que se convierte en una factura.",no_action:"No hacer nada",delete_estimate:"Eliminar presupuesto",mark_estimate_as_accepted:"Marcar presupuesto como aceptado"},payments:{title:"Pagos",payment_number_format:"Formato del n\xFAmero de pago",payment_number_format_description:"Personalice c\xF3mo se genera autom\xE1ticamente su n\xFAmero de pago cuando crea un nuevo pago.",preview_payment_number:"Previsualizar n\xFAmero de pago",default_formats:"Formatos predeterminados",default_formats_description:"Los formatos dados a continuaci\xF3n se utilizan para completar los campos autom\xE1ticamente en la creaci\xF3n del pago.",default_payment_email_body:"Cuerpo predeterminado del correo electr\xF3nico del pago",company_address_format:"Formato de direcci\xF3n de la empresa",from_customer_address_format:"Desde el formato de direcci\xF3n del cliente",payment_email_attachment:"Enviar pagos como adjunto",payment_email_attachment_setting_description:"Activa esto si quieres enviar los pagos como archivo adjunto de correo electr\xF3nico. Tenga en cuenta que el bot\xF3n 'Ver pago' en los correos electr\xF3nicos ya no se mostrar\xE1 cuando est\xE9 habilitado.",payment_settings_updated:"Los m\xE9todos de pago se han actualizado correctamente"},items:{title:"Art\xEDculos",units:"unidades",add_item_unit:"Agregar unidad de art\xEDculo",edit_item_unit:"Editar unidad de art\xEDculo",unit_name:"Nombre de la unidad",item_unit_added:"Unidad de art\xEDculo agregada",item_unit_updated:"Unidad de art\xEDculo actualizada",item_unit_confirm_delete:"No podr\xE1s recuperar esta unidad de art\xEDculo",already_in_use:"Unidad de art\xEDculo ya est\xE1 en uso",deleted_message:"Unidad de elemento eliminada correctamente"},notes:{title:"Notas",description:"Ahorre tiempo creando notas y reutiliz\xE1ndolas en sus facturas, c\xE1lculos y pagos.",notes:"Notas",type:"Tipo",add_note:"Agregar nota",add_new_note:"Agregar nueva nota",name:"Nombre",edit_note:"Editar nota",note_added:"Nota agregada correctamente",note_updated:"Nota actualizada correctamente",note_confirm_delete:"No podr\xE1 recuperar esta nota",already_in_use:"Nota ya est\xE1 en uso",deleted_message:"Nota eliminada correctamente"}},account_settings:{profile_picture:"Foto de perfil",name:"Nombre",email:"Correo electr\xF3nico",password:"Contrase\xF1a",confirm_password:"Confirmar contrase\xF1a",account_settings:"Configuraciones de la cuenta",save:"Guardar",section_description:"Puede actualizar su nombre, correo electr\xF3nico y contrase\xF1a utilizando el siguiente formulario.",updated_message:"Configuraci\xF3n de la cuenta actualizada correctamente"},user_profile:{name:"Nombre",email:"Correo electr\xF3nico",password:"Contrase\xF1a",confirm_password:"Confirmar contrase\xF1a"},notification:{title:"Notificaci\xF3n",email:"Enviar notificaciones a",description:"\xBFQu\xE9 notificaciones por correo electr\xF3nico le gustar\xEDa recibir cuando algo cambia?",invoice_viewed:"Factura vista",invoice_viewed_desc:"Cuando su cliente vio la factura enviada a trav\xE9s del panel de control de Crater.",estimate_viewed:"Presupuesto visto",estimate_viewed_desc:"Cuando su cliente vio el presupuesto enviado a trav\xE9s del panel de control de Crater.",save:"Guardar",email_save_message:"Correo electr\xF3nico guardado con \xE9xito",please_enter_email:"Por favor, introduzca su correo electr\xF3nico"},roles:{title:"Roles",description:"Configura los roles y permisos de esta empresa",save:"Guardar",add_new_role:"A\xF1adir nuevo rol",role_name:"Nombre del rol",added_on:"A\xF1adido el",add_role:"A\xF1adir rol",edit_role:"Editar rol",name:"Nombre",permission:"Permiso | Permisos",select_all:"Seleccionar todo",none:"Ninguno",confirm_delete:"No podr\xE1 recuperar este Rol",created_message:"Rol creado correctamente",updated_message:"Rol actualizado correctamente",deleted_message:"Rol eliminado correctamente",already_in_use:"El rol ya est\xE1 en uso"},exchange_rate:{exchange_rate:"Tasa de cambio",title:"Solucionar problemas de cambio de moneda",description:"Por favor, selecciona un tipo de cambio para todas las monedas mencionadas a continuaci\xF3n para ayudar a Crater a calcular correctamente las cantidades en {currency}.",drivers:"Controladores",new_driver:"A\xF1adir nuevo proveedor",edit_driver:"Editar proveedor",select_driver:"Seleccione un controlador",update:"selecciona un tipo de cambio ",providers_description:"Configure sus proveedores de tipos de cambio aqu\xED para obtener autom\xE1ticamente el tipo de cambio m\xE1s reciente en las transacciones.",key:"Clave API",name:"Nombre",driver:"Controlador",is_default:"Usar por defecto",currency:"Divisas",exchange_rate_confirm_delete:"No podr\xE1 recuperar este controlador",created_message:"Proveedor creado correctamente",updated_message:"Proveedor actualizado correctamente",deleted_message:"Proveedor eliminado correctamente",error:" No puede eliminar el controlador activo",default_currency_error:"Esta moneda ya se usa en uno de los proveedores activos",exchange_help_text:"Ingrese el tipo de cambio para convertir de {currency} a {baseCurrency}",currency_freak:"Currency Freak",currency_layer:"Currency Layer",open_exchange_rate:"Open Exchange Rate",currency_converter:"Conversor de moneda",server:"Servidor",url:"URL",active:"Activo",currency_help_text:"Este proveedor solo se utilizar\xE1 en las monedas seleccionadas anteriormente",currency_in_used:"Las siguientes monedas ya est\xE1n activas en otro proveedor. Elimine estas monedas de la selecci\xF3n para volver a activar este proveedor."},tax_types:{title:"Tipos de impuestos",add_tax:"Agregar impuesto",edit_tax:"Editar impuesto",description:"Puede agregar o eliminar impuestos a su gusto. Crater admite impuestos sobre art\xEDculos individuales, as\xED como sobre la factura.",add_new_tax:"Agregar nuevo impuesto",tax_settings:"Configuraciones de impuestos",tax_per_item:"Impuesto por art\xEDculo",tax_name:"Nombre del impuesto",compound_tax:"Impuesto compuesto",percent:"Porcentaje",action:"Acci\xF3n",tax_setting_description:"Habil\xEDtelo si desea agregar impuestos a art\xEDculos de factura de forma individual. Por defecto, los impuestos se agregan directamente a la factura.",created_message:"Tipo de impuesto creado con \xE9xito",updated_message:"Tipo de impuesto actualizado correctamente",deleted_message:"Tipo de impuesto eliminado correctamente",confirm_delete:"No podr\xE1 recuperar este tipo de impuesto",already_in_use:"El impuesto ya est\xE1 en uso."},payment_modes:{title:"Formas de pago",description:"Modos de transacci\xF3n para pagos",add_payment_mode:"Agregar modo de pago",edit_payment_mode:"Editar modo de pago",mode_name:"Nombre del modo",payment_mode_added:"Forma de pago a\xF1adida",payment_mode_updated:"Forma de pago actualizada",payment_mode_confirm_delete:"No podr\xE1s recuperar este Modo de Pago",already_in_use:"El m\xE9todo de paga ya est\xE1 en uso",deleted_message:"M\xE9todo de pago eliminado correctamente"},expense_category:{title:"Categor\xEDas de gastos",action:"Acci\xF3n",description:"Se requieren categor\xEDas para agregar entradas de gastos. Puede Agregar o Eliminar estas categor\xEDas seg\xFAn su preferencia.",add_new_category:"A\xF1adir nueva categoria",add_category:"A\xF1adir categor\xEDa",edit_category:"Editar categoria",category_name:"nombre de la categor\xEDa",category_description:"Descripci\xF3n",created_message:"Categor\xEDa de gastos creada con \xE9xito",deleted_message:"Categor\xEDa de gastos eliminada correctamente",updated_message:"Categor\xEDa de gastos actualizada con \xE9xito",confirm_delete:"No podr\xE1 recuperar esta categor\xEDa de gastos",already_in_use:"La categor\xEDa ya est\xE1 en uso."},preferences:{currency:"Moneda",default_language:"Idioma predeterminado",time_zone:"Zona horaria",fiscal_year:"A\xF1o financiero",date_format:"Formato de fecha",discount_setting:"Ajuste de descuento",discount_per_item:"Descuento por art\xEDculo",discount_setting_description:"Habil\xEDtelo si desea agregar Descuento a art\xEDculos de factura individuales. Por defecto, los descuentos se agregan directamente a la factura.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"Guardar",preference:"Preferencia | Preferencias",general_settings:"Preferencias predeterminadas para el sistema.",updated_message:"Preferencias actualizadas exitosamente",select_language:"seleccione el idioma",select_time_zone:"selecciona la zona horaria",select_date_format:"Seleccionar formato de fecha",select_financial_year:"seleccione a\xF1o financiero",recurring_invoice_status:"Estado de la factura recurrente",create_status:"Crear estado",active:"Activo",on_hold:"En espera",update_status:"Actualizar estado",completed:"Completado",company_currency_unchangeable:"No se puede cambiar la divisa de la empresa"},update_app:{title:"Actualizar aplicaci\xF3n",description:"Puedes actualizar Crater f\xE1cilmente comprobando si existe una nueva actualizaci\xF3n haciendo clic en el bot\xF3n de abajo",check_update:"Buscar actualizaciones",avail_update:"Nueva actualizaci\xF3n disponible",next_version:"Pr\xF3xima versi\xF3n",requirements:"Requisitos",update:"Actualizar",update_progress:"Actualizaci\xF3n en progreso...",progress_text:"Solo tomar\xE1 unos minutos. No actualice la pantalla ni cierre la ventana antes de que finalice la actualizaci\xF3n.",update_success:"\xA1La aplicaci\xF3n ha sido actualizada! Espere mientras la ventana de su navegador se vuelve a cargar autom\xE1ticamente.",latest_message:"\xA1Actualizaci\xF3n no disponible! Est\xE1s en la \xFAltima versi\xF3n.",current_version:"Versi\xF3n actual",download_zip_file:"Descargar archivo ZIP",unzipping_package:"Descomprimir paquete",copying_files:"Copiando documentos",deleting_files:"Eliminando archivos no usados",running_migrations:"Ejecutar migraciones",finishing_update:"Actualizaci\xF3n final",update_failed:"Actualizaci\xF3n fallida",update_failed_text:"\xA1Lo siento! Su actualizaci\xF3n fall\xF3 el: {step} paso",update_warning:"Todos los archivos y temas predeterminados se sobreescribir\xE1n cuando actualice la aplicaci\xF3n a trav\xE9s de esta utilidad. Por favor, cree una copia de seguridad de sus temas y base de datos antes de actualizar."},backup:{title:"Copia de seguridad | Copias de seguridad",description:"La copia de seguridad es un archivo comprimido zip que contiene todos los archivos en los directorios que especifiques junto con tu base de datos",new_backup:"Agregar nueva copia de seguridad",create_backup:"Crear copia de seguridad",select_backup_type:"Seleccione Tipo de Copia de Seguridad",backup_confirm_delete:"No podr\xE1 recuperar esta copia de seguridad",path:"ruta",new_disk:"Nuevo Disco",created_at:"creado el",size:"tama\xF1o",dropbox:"dropbox",local:"local",healthy:"saludable",amount_of_backups:"cantidad de copias de seguridad",newest_backups:"copias de seguridad m\xE1s recientes",used_storage:"almacenamiento utilizado",select_disk:"Seleccionar Disco",action:"Acci\xF3n",deleted_message:"Copia de seguridad eliminada exitosamente",created_message:"Copia de seguridad creada satisfactoriamente",invalid_disk_credentials:"Credencial no v\xE1lida del disco seleccionado"},disk:{title:"Disco de archivos | Discos de archivos",description:"Por defecto, Crater utilizar\xE1 su disco local para guardar copias de seguridad, avatar y otros archivos de imagen. Puede configurar varios controladores de disco como DigitalOcean, S3 y Dropbox seg\xFAn sus preferencias.",created_at:"creado el",dropbox:"dropbox",name:"Nombre",driver:"Controlador",disk_type:"Tipo",disk_name:"Nombre del disco",new_disk:"Agregar nuevo disco",filesystem_driver:"Controlador del sistema de archivos",local_driver:"controlador local",local_root:"ra\xEDz local",public_driver:"Controlador p\xFAblico",public_root:"Ra\xEDz p\xFAblica",public_url:"URL p\xFAblica",public_visibility:"Visibilidad p\xFAblica",media_driver:"Controlador multimedia",media_root:"Ra\xEDz multimedia",aws_driver:"Controlador AWS",aws_key:"Clave AWS",aws_secret:"Secreto AWS",aws_region:"Regi\xF3n de AWS",aws_bucket:"Cubo AWS",aws_root:"Ra\xEDz AWS",do_spaces_type:"Hacer Espacios tipo",do_spaces_key:"Disponer espacios",do_spaces_secret:"Disponer espacios secretos",do_spaces_region:"Disponer regi\xF3n de espacios",do_spaces_bucket:"Disponer espacios",do_spaces_endpoint:"Disponer espacios extremos",do_spaces_root:"Disponer espacios en la ra\xEDz",dropbox_type:"Tipo de Dropbox",dropbox_token:"Token de DropBox",dropbox_key:"Clave Dropbox",dropbox_secret:"Dropbox Secret",dropbox_app:"Aplicaci\xF3n Dropbox",dropbox_root:"Ra\xEDz Dropbox",default_driver:"Controlador por defecto",is_default:"Usar por defecto",set_default_disk:"Establecer disco predeterminado",set_default_disk_confirm:"Este disco se establecer\xE1 por defecto y todos los nuevos PDFs se guardar\xE1n en este disco",success_set_default_disk:"Disco establecido correctamente como predeterminado",save_pdf_to_disk:"Guardar PDFs a disco",disk_setting_description:" Habilite esto, si desea guardar autom\xE1ticamente una copia en formato pdf de cada factura, c\xE1lculo y recibo de pago en su disco predeterminado. Al activar esta opci\xF3n, se reducir\xE1 el tiempo de carga al visualizar los archivos PDFs.",select_disk:"Seleccionar Disco",disk_settings:"Configuraci\xF3n del disco",confirm_delete:"Los archivos y carpetas existentes en el disco especificado no se ver\xE1n afectados, pero su configuraci\xF3n de disco ser\xE1 eliminada de Crater",action:"Acci\xF3n",edit_file_disk:"Editar disco de ficheros",success_create:"Disco a\xF1adido satisfactoriamente",success_update:"Disco actualizado satisfactoriamente",error:"Error al a\xF1adir disco",deleted_message:"Disco de archivo borrado correctamente",disk_variables_save_successfully:"Disco configurado correctamente",disk_variables_save_error:"La configuraci\xF3n del disco ha fallado.",invalid_disk_credentials:"Credencial no v\xE1lida del disco seleccionado"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},Co={account_info:"Informaci\xF3n de la cuenta",account_info_desc:"Los detalles a continuaci\xF3n se utilizar\xE1n para crear la cuenta principal de administrador. Tambi\xE9n puede cambiar los detalles en cualquier momento despu\xE9s de iniciar sesi\xF3n.",name:"Nombre",email:"Correo",password:"Contrase\xF1a",confirm_password:"Confirmar contrase\xF1a",save_cont:"Guardar y continuar",company_info:"Informaci\xF3n de la empresa",company_info_desc:"Esta informaci\xF3n se mostrar\xE1 en las facturas. Tenga en cuenta que puede editar esto m\xE1s adelante en la p\xE1gina de configuraci\xF3n.",company_name:"nombre de empresa",company_logo:"Logo de la compa\xF1\xEDa",logo_preview:"Vista previa del logotipo",preferences:"Preferencias",preferences_desc:"Preferencias predeterminadas para el sistema.",currency_set_alert:"La moneda de la empresa no se puede cambiar m\xE1s tarde.",country:"Pa\xEDs",state:"Estado",city:"Ciudad",address:"Direcci\xF3n",street:"Calle1 | Calle2",phone:"Tel\xE9fono",zip_code:"C\xF3digo postal",go_back:"Regresa",currency:"Moneda",language:"Idioma",time_zone:"Zona horaria",fiscal_year:"A\xF1o financiero",date_format:"Formato de fecha",from_address:"Desde la Direcci\xF3n",username:"Nombre de usuario",next:"Siguiente",continue:"Continuar",skip:"Saltar",database:{database:"URL del sitio y base de datose",connection:"Conexi\xF3n de base de datos",host:"Host de la base de datos",port:"Puerto de la base de datos",password:"Contrase\xF1a de la base de datos",app_url:"URL de la aplicaci\xF3n",app_domain:"Dominio",username:"Nombre de usuario de la base de datos",db_name:"Nombre de la base de datos",db_path:"Ruta de la base de datos",desc:"Cree una base de datos en su servidor y establezca las credenciales utilizando el siguiente formulario."},permissions:{permissions:"Permisos",permission_confirm_title:"\xBFEst\xE1s seguro de que quieres continuar?",permission_confirm_desc:"Error de verificaci\xF3n de permisos de carpeta",permission_desc:"A continuaci\xF3n se muestra la lista de permisos de carpeta necesarios para que la aplicaci\xF3n funcione. Si la verificaci\xF3n de permisos falla, aseg\xFArese de actualizar los permisos de su carpeta."},verify_domain:{title:"Verificaci\xF3n de dominio",desc:"Crater utiliza la autenticaci\xF3n basada en Sesi\xF3n que requiere verificaci\xF3n de dominio por motivos de seguridad. Por favor, introduzca el dominio en el que acceder\xE1 a su aplicaci\xF3n web.",app_domain:"Dominio de aplicaci\xF3n",verify_now:"Verificar ahora",success:"Dominio verificado correctamente.",failed:"La verificaci\xF3n del dominio fall\xF3. Ingrese un nombre de dominio v\xE1lido.",verify_and_continue:"Verificar y continuar"},mail:{host:"Host de correo",port:"Puerto de correo",driver:"Conductor de correo",secret:"Secreto",mailgun_secret:"Mailgun Secreto",mailgun_domain:"Dominio",mailgun_endpoint:"Mailgun endpoint",ses_secret:"Secreto SES",ses_key:"Clave SES",password:"Contrase\xF1a de correo",username:"Nombre de usuario de correo",mail_config:"Configuraci\xF3n de correo",from_name:"Del nombre del correo",from_mail:"Desde la direcci\xF3n de correo",encryption:"Cifrado de correo",mail_config_desc:"Los detalles a continuaci\xF3n se utilizar\xE1n para actualizar el entorno de correo. Tambi\xE9n puede cambiar los detalles en cualquier momento despu\xE9s de iniciar sesi\xF3n."},req:{system_req:"Requisitos del sistema",php_req_version:"Php (versi\xF3n {version} necesario)",check_req:"Consultar requisitos",system_req_desc:"Crater tiene algunos requisitos de servidor. Aseg\xFArese de que su servidor tenga la versi\xF3n de php requerida y todas las extensiones mencionadas a continuaci\xF3n."},errors:{migrate_failed:"La migraci\xF3n fall\xF3",database_variables_save_error:"No se puede conectar a la base de datos con los valores proporcionados.",mail_variables_save_error:"La configuraci\xF3n del correo electr\xF3nico ha fallado.",connection_failed:"Conexi\xF3n de base de datos fallida",database_should_be_empty:"La base de datos debe estar vac\xEDa"},success:{mail_variables_save_successfully:"Correo electr\xF3nico configurado correctamente",database_variables_save_successfully:"Base de datos configurada con \xE9xito."}},Eo={invalid_phone:"Numero de telefono invalido",invalid_url:"URL no v\xE1lida (por ejemplo, http://www.crater.com)",invalid_domain_url:"URL no v\xE1lida (por ejemplo, crater.com)",required:"Se requiere campo",email_incorrect:"Email incorrecto.",email_already_taken:"Este email ya est\xE1 en uso",email_does_not_exist:"El usuario con el correo electr\xF3nico dado no existe",item_unit_already_taken:"El nombre de la unidad ya est\xE1 en uso",payment_mode_already_taken:"El modo de pago ya ha sido tomado",send_reset_link:"Enviar enlace de restablecimiento",not_yet:"\xBFA\xFAn no? Env\xEDalo de nuevo",password_min_length:"La contrase\xF1a debe contener {count} caracteres",name_min_length:"El nombre debe tener al menos {count} letras.",prefix_min_length:"El prefijo debe tener al menos {count} letras.",enter_valid_tax_rate:"Ingrese una tasa impositiva v\xE1lida",numbers_only:"Solo n\xFAmeros.",characters_only:"Solo caracteres.",password_incorrect:"Las contrase\xF1as deben ser id\xE9nticas",password_length:"La contrase\xF1a debe tener 5 caracteres de longitud.",qty_must_greater_than_zero:"La cantidad debe ser mayor que cero.",price_greater_than_zero:"El precio debe ser mayor que cero.",payment_greater_than_zero:"El pago debe ser mayor que cero.",payment_greater_than_due_amount:"El pago introducido es mayor que el importe pendiente de esta factura.",quantity_maxlength:"La cantidad no debe ser mayor de 20 d\xEDgitos.",price_maxlength:"El precio no debe ser mayor de 20 d\xEDgitos.",price_minvalue:"El precio debe ser mayor que 0 d\xEDgitos",amount_maxlength:"La cantidad no debe ser mayor de 20 d\xEDgitos.",amount_minvalue:"La cantidad debe ser mayor que 0 d\xEDgitos",discount_maxlength:"El descuento no debe ser mayor que el descuento m\xE1ximo",description_maxlength:"La descripci\xF3n no debe tener m\xE1s de 255 caracteres.",subject_maxlength:"El asunto no debe tener m\xE1s de 100 caracteres.",message_maxlength:"El mensaje no debe tener m\xE1s de 255 caracteres.",maximum_options_error:"M\xE1ximo de {max} opciones seleccionadas. Primero elimine una opci\xF3n seleccionada para seleccionar otra.",notes_maxlength:"Las notas no deben tener m\xE1s de 255 caracteres.",address_maxlength:"La direcci\xF3n no debe tener m\xE1s de 255 caracteres.",ref_number_maxlength:"El n\xFAmero de referencia no debe tener m\xE1s de 255 caracteres.",prefix_maxlength:"El prefijo no debe tener m\xE1s de 5 caracteres.",something_went_wrong:"Algo fue mal",number_length_minvalue:"La cantidad debe ser mayor que 0",at_least_one_ability:"Por favor, selecciona al menos un permiso.",valid_driver_key:"Por favor, introduza una clave {driver} v\xE1lida.",valid_exchange_rate:"Por favor, introduce una tasa de cambio v\xE1lida.",company_name_not_same:"El nombre de la empresa debe coincidir con el nombre indicado."},Io={starter_plan:"\xA1Esta funci\xF3n est\xE1 disponible en el plan Starter y en adelante!",invalid_provider_key:"Por favor, introduzca un proveedor de claves API v\xE1lido.",estimate_number_used:"El n\xFAmero de estimaci\xF3n ya se ha tomado.",invoice_number_used:"El n\xFAmero de factura ya est\xE1 en uso.",payment_attached:"Esta factura ya tiene un pago adjunto. Aseg\xFArese de eliminar primero los pagos adjuntos para continuar con la eliminaci\xF3n.",payment_number_used:"El n\xFAmero de pago ya est\xE1 en uso.",name_already_taken:"El nombre ya est\xE1 en uso.",receipt_does_not_exist:"No existe el recibo.",customer_cannot_be_changed_after_payment_is_added:"El cliente no puede ser modificado despu\xE9s de agregar el pago",invalid_credentials:"Credenciales inv\xE1lidas.",not_allowed:"No permitido",login_invalid_credentials:"Estas credenciales no coinciden con nuestros registros.",enter_valid_cron_format:"Por favor, introduzca un formato cron v\xE1lido",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},No="Presupuestar",To="N\xFAmero de Presupuesto",Ro="Fecha presupuesto",Mo="Fecha de caducidad",Fo="Factura",$o="Numero de factura",Uo="Fecha de la factura",Vo="Fecha final",Oo="Notas",Lo="Art\xEDculos",Bo="Cantidad",qo="Precio",Ko="Descuento",Wo="Cantidad",Zo="Subtotal",Ho="Total",Yo="Pagos",Go="RECIBO DE PAGO",Jo="Fecha de pago",Qo="Numero de pago",Xo="Modo de pago",er="Importe recibido",tr="INFORME DE GASTOS",ar="GASTO TOTAL",ir="INFORME PERDIDAS & GANANCIAS",nr="Informe de ventas por cliente",sr="Informe de ventas por \xEDtem",or="Informe de ventas impuestos",rr="INGRESO",dr="GANANCIA NETA",lr="Informe de ventas: Por cliente",cr="VENTAS TOTALES",_r="Informe de ventas: por art\xEDculo",ur="INFORME DE IMPUESTOS",mr="TOTAL IMPUESTOS",pr="Tipos de impuestos",gr="Gastos",fr="Cobrar a,",vr="Enviar a,",hr="Recibido desde:",yr="Impuesto";var br={navigation:_o,general:uo,dashboard:mo,tax_types:po,global_search:go,company_switcher:fo,dateRange:vo,customers:ho,items:yo,estimates:bo,invoices:ko,recurring_invoices:wo,payments:xo,expenses:zo,login:So,modules:Po,users:jo,reports:Ao,settings:Do,wizard:Co,validation:Eo,errors:Io,pdf_estimate_label:No,pdf_estimate_number:To,pdf_estimate_date:Ro,pdf_estimate_expire_date:Mo,pdf_invoice_label:Fo,pdf_invoice_number:$o,pdf_invoice_date:Uo,pdf_invoice_due_date:Vo,pdf_notes:Oo,pdf_items_label:Lo,pdf_quantity_label:Bo,pdf_price_label:qo,pdf_discount_label:Ko,pdf_amount_label:Wo,pdf_subtotal:Zo,pdf_total:Ho,pdf_payment_label:Yo,pdf_payment_receipt_label:Go,pdf_payment_date:Jo,pdf_payment_number:Qo,pdf_payment_mode:Xo,pdf_payment_amount_received_label:er,pdf_expense_report_label:tr,pdf_total_expenses_label:ar,pdf_profit_loss_label:ir,pdf_sales_customers_label:nr,pdf_sales_items_label:sr,pdf_tax_summery_label:or,pdf_income_label:rr,pdf_net_profit_label:dr,pdf_customer_sales_report:lr,pdf_total_sales_label:cr,pdf_item_sales_label:_r,pdf_tax_report_label:ur,pdf_total_tax_label:mr,pdf_tax_types_label:pr,pdf_expenses_label:gr,pdf_bill_to:fr,pdf_ship_to:vr,pdf_received_from:hr,pdf_tax_label:yr};const kr={dashboard:"\u0644\u0648\u062D\u0629 \u0627\u0644\u062A\u062D\u0643\u0645",customers:"\u0627\u0644\u0639\u0645\u0644\u0627\u0621",items:"\u0628\u0636\u0627\u0626\u0639/\u062E\u062F\u0645\u0627\u062A",invoices:"\u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631","recurring-invoices":"Recurring Invoices",expenses:"\u0627\u0644\u0646\u0641\u0642\u0627\u062A",estimates:"\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A",payments:"\u0627\u0644\u062F\u0641\u0648\u0639\u0627\u062A",reports:"\u0627\u0644\u062A\u0642\u0627\u0631\u064A\u0631",settings:"\u0627\u0644\u0625\u0639\u062F\u0627\u062F\u0627\u062A",logout:"\u062A\u0633\u062C\u064A\u0644 \u0627\u0644\u062E\u0631\u0648\u062C",users:"\u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u0648\u0646",modules:"Modules"},wr={add_company:"\u0623\u0636\u0641 \u0634\u0631\u0643\u0629",view_pdf:"\u0639\u0631\u0636 PDF",copy_pdf_url:"\u0646\u0633\u062E \u0631\u0627\u0628\u0637 PDF",download_pdf:"\u062A\u0646\u0632\u064A\u0644 PDF",save:"\u062D\u0641\u0638",create:"\u0625\u0646\u0634\u0627\u0621",cancel:"\u062A\u0631\u0627\u062C\u0639",update:"\u062A\u062D\u062F\u064A\u062B",deselect:"\u0625\u0644\u063A\u0627\u0621 \u0627\u0644\u0625\u062E\u062A\u064A\u0627\u0631",download:"\u062A\u062D\u0645\u064A\u0644",from_date:"\u0645\u0646 \u062A\u0627\u0631\u064A\u062E",to_date:"\u0625\u0644\u0649 \u062A\u0627\u0631\u064A\u062E",from:"\u0645\u0646",to:"\u0625\u0644\u0649",ok:"Ok",yes:"Yes",no:"No",sort_by:"\u062A\u0631\u062A\u064A\u0628 \u062D\u0633\u0628",ascending:"\u062A\u0635\u0627\u0639\u062F\u064A",descending:"\u062A\u0646\u0627\u0632\u0644\u064A",subject:"\u0645\u0648\u0636\u0648\u0639",body:"\u0627\u0644\u062C\u0633\u0645",message:"\u0631\u0633\u0627\u0644\u0629",send:"\u0625\u0631\u0633\u0627\u0644",preview:"Preview",go_back:"\u0625\u0644\u0649 \u0627\u0644\u062E\u0644\u0641",back_to_login:"\u0627\u0644\u0639\u0648\u062F\u0629 \u0625\u0644\u0649 \u062A\u0633\u062C\u064A\u0644 \u0627\u0644\u062F\u062E\u0648\u0644\u061F",home:"\u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629",filter:"\u062A\u0635\u0641\u064A\u0629",delete:"\u062D\u0630\u0641",edit:"\u062A\u0639\u062F\u064A\u0644",view:"\u0639\u0631\u0636",add_new_item:"\u0625\u0636\u0627\u0641\u0629 \u0635\u0646\u0641 \u062C\u062F\u064A\u062F",clear_all:"\u0645\u0633\u062D \u0627\u0644\u0643\u0644",showing:"\u0639\u0631\u0636",of:"\u0645\u0646",actions:"\u0627\u0644\u0639\u0645\u0644\u064A\u0627\u062A",subtotal:"\u0627\u0644\u0645\u062C\u0645\u0648\u0639 \u0627\u0644\u0641\u0631\u0639\u064A",discount:"\u062E\u0635\u0645",fixed:"\u062B\u0627\u0628\u062A",percentage:"\u0646\u0633\u0628\u0629",tax:"\u0627\u062F\u0627\u0621",total_amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",bill_to:"\u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0644\u0640",ship_to:"\u064A\u0634\u062D\u0646 \u0625\u0644\u0649",due:"\u0627\u0644\u0645\u062A\u0628\u0642\u064A",draft:"\u0645\u0633\u0648\u062F\u0629",sent:"\u0627\u0631\u0633\u0644\u062A",all:"\u0627\u0644\u0643\u0644",select_all:"\u062A\u062D\u062F\u064A\u062F \u0627\u0644\u0643\u0644",select_template:"Select Template",choose_file:"\u0627\u0636\u063A\u0637 \u0647\u0646\u0627 \u0644\u0627\u062E\u062A\u064A\u0627\u0631 \u0645\u0644\u0641",choose_template:"\u0627\u062E\u062A\u064A\u0627\u0631 \u0627\u0644\u0642\u0627\u0644\u0628",choose:"\u0627\u062E\u062A\u0631",remove:"\u062D\u0630\u0641",select_a_status:"\u0627\u062E\u062A\u0631 \u0627\u0644\u062D\u0627\u0644\u0629",select_a_tax:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0627\u062F\u0627\u0621",search:"\u0628\u062D\u062B",are_you_sure:"\u0647\u0644 \u0623\u0646\u062A \u0645\u062A\u0623\u0643\u062F\u061F",list_is_empty:"\u0627\u0644\u0642\u0627\u0626\u0645\u0629 \u0641\u0627\u0631\u063A\u0629.",no_tax_found:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0636\u0631\u064A\u0628\u0629!",four_zero_four:"404",you_got_lost:"\u0639\u0641\u0648\u0627\u064B! \u064A\u0628\u062F\u0648 \u0623\u0646\u0643 \u0642\u062F \u062A\u0647\u062A!",go_home:"\u0627\u0644\u0630\u0647\u0627\u0628 \u0627\u0644\u0649 \u0627\u0644\u0635\u0641\u062D\u0629 \u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629",test_mail_conf:"\u0627\u062E\u062A\u0628\u0627\u0631 \u0627\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u0628\u0631\u064A\u062F",send_mail_successfully:"\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0628\u0646\u062C\u0627\u062D",setting_updated:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0628\u0646\u062C\u0627\u062D",select_state:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0648\u0644\u0627\u064A\u0629/\u0627\u0644\u0645\u0646\u0637\u0642\u0629",select_country:"\u0627\u062E\u062A\u0631 \u0627\u0644\u062F\u0648\u0644\u0629",select_city:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0645\u062F\u064A\u0646\u0629",street_1:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u0627\u0631\u0639 1",street_2:"\u0627\u0644\u0634\u0627\u0631\u0639 2",action_failed:"\u0641\u0634\u0644\u062A \u0627\u0644\u0639\u0645\u0644\u064A\u0629",retry:"\u0623\u0639\u062F \u0627\u0644\u0645\u062D\u0627\u0648\u0644\u0629",choose_note:"\u0627\u062E\u062A\u0631 \u0645\u0644\u0627\u062D\u0638\u0629",no_note_found:"\u0644\u0645 \u064A\u062A\u0645 \u0627\u0644\u0639\u062B\u0648\u0631 \u0639\u0644\u0649 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0629",insert_note:"\u0623\u062F\u062E\u0644 \u0645\u0644\u0627\u062D\u0638\u0629",copied_pdf_url_clipboard:"\u062A\u0645 \u0646\u0633\u062E \u0631\u0627\u0628\u0637 PDF \u0625\u0644\u0649 \u0627\u0644\u062D\u0627\u0641\u0638\u0629!",copied_url_clipboard:"Copied url to clipboard!",docs:"Docs",do_you_wish_to_continue:"Do you wish to continue?",note:"Note",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},xr={select_year:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0633\u0646\u0629",cards:{due_amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",customers:"\u0627\u0644\u0639\u0645\u0644\u0627\u0621",invoices:"\u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631",estimates:"\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A",payments:"Payments"},chart_info:{total_sales:"\u0627\u0644\u0645\u0628\u064A\u0639\u0627\u062A",total_receipts:"\u0625\u062C\u0645\u0627\u0644\u064A \u0627\u0644\u062F\u062E\u0644",total_expense:"\u0627\u0644\u0646\u0641\u0642\u0627\u062A",net_income:"\u0635\u0627\u0641\u064A \u0627\u0644\u062F\u062E\u0644",year:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0633\u0646\u0629"},monthly_chart:{title:"\u0627\u0644\u0645\u0628\u064A\u0639\u0627\u062A \u0648\u0627\u0644\u0646\u0641\u0642\u0627\u062A"},recent_invoices_card:{title:"\u0641\u0648\u0627\u062A\u064A\u0631 \u0645\u0633\u062A\u062D\u0642\u0629",due_on:"\u0645\u0633\u062A\u062D\u0642\u0629 \u0641\u064A",customer:"\u0627\u0644\u0639\u0645\u064A\u0644",amount_due:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",actions:"\u0627\u0644\u0639\u0645\u0644\u064A\u0627\u062A",view_all:"\u0639\u0631\u0636 \u0627\u0644\u0643\u0644"},recent_estimate_card:{title:"\u0623\u062D\u062F\u062B \u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A",date:"\u0627\u0644\u062A\u0627\u0631\u064A\u062E",customer:"\u0627\u0644\u0639\u0645\u064A\u0644",amount_due:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",actions:"\u0627\u0644\u0639\u0645\u0644\u064A\u0627\u062A",view_all:"\u0639\u0631\u0636 \u0627\u0644\u0643\u0644"}},zr={name:"\u0627\u0644\u0627\u0633\u0645",description:"\u0627\u0644\u0648\u0635\u0641",percent:"\u0646\u0633\u0628\u0647 \u0645\u0626\u0648\u064A\u0647",compound_tax:"\u0627\u0644\u0636\u0631\u064A\u0628\u0629 \u0627\u0644\u0645\u0631\u0643\u0628\u0629"},Sr={search:"\u0628\u062D\u062B...",customers:"\u0627\u0644\u0639\u0645\u0644\u0627\u0621",users:"\u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u0648\u0646",no_results_found:"\u0644\u0645 \u064A\u062A\u0645 \u0627\u0644\u0639\u062B\u0648\u0631 \u0639\u0644\u0649 \u0646\u062A\u0627\u0626\u062C"},Pr={label:"SWITCH COMPANY",no_results_found:"No Results Found",add_new_company:"Add new company",new_company:"New company",created_message:"Company created successfully"},jr={today:"Today",this_week:"This Week",this_month:"This Month",this_quarter:"This Quarter",this_year:"This Year",previous_week:"Previous Week",previous_month:"Previous Month",previous_quarter:"Previous Quarter",previous_year:"Previous Year",custom:"Custom"},Ar={title:"\u0627\u0644\u0639\u0645\u0644\u0627\u0621",prefix:"Prefix",add_customer:"\u0625\u0636\u0627\u0641\u0629 \u0639\u0645\u064A\u0644",contacts_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0639\u0645\u0644\u0627\u0621",name:"\u0627\u0644\u0627\u0633\u0645",mail:"\u0627\u0644\u0628\u0631\u064A\u062F",statement:"\u0627\u0644\u0628\u064A\u0627\u0646",display_name:"\u0627\u0633\u0645 \u0627\u0644\u0639\u0631\u0636",primary_contact_name:"\u0627\u0633\u0645 \u0627\u0644\u062A\u0648\u0627\u0635\u0644 \u0627\u0644\u0631\u0626\u064A\u0633\u064A",contact_name:"\u0627\u0633\u0645 \u062A\u0648\u0627\u0635\u0644 \u0622\u062E\u0631",amount_due:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",email:"\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",address:"\u0627\u0644\u0639\u0646\u0648\u0627\u0646",phone:"\u0627\u0644\u0647\u0627\u062A\u0641",website:"\u0645\u0648\u0642\u0639 \u0627\u0644\u0625\u0646\u062A\u0631\u0646\u062A",overview:"\u0627\u0633\u062A\u0639\u0631\u0627\u0636",invoice_prefix:"Invoice Prefix",estimate_prefix:"Estimate Prefix",payment_prefix:"Payment Prefix",enable_portal:"\u062A\u0641\u0639\u064A\u0644 \u0627\u0644\u0628\u0648\u0627\u0628\u0629",country:"\u0627\u0644\u062F\u0648\u0644\u0629",state:"\u0627\u0644\u0648\u0644\u0627\u064A\u0629/\u0627\u0644\u0645\u0646\u0637\u0642\u0629",city:"\u0627\u0644\u0645\u062F\u064A\u0646\u0629",zip_code:"\u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0628\u0631\u064A\u062F\u064A",added_on:"\u0623\u0636\u064A\u0641 \u0641\u064A",action:"\u0625\u062C\u0631\u0627\u0621",password:"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",confirm_password:"Confirm Password",street_number:"\u0631\u0642\u0645 \u0627\u0644\u0634\u0627\u0631\u0639",primary_currency:"\u0627\u0644\u0639\u0645\u0644\u0629 \u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629",description:"\u0627\u0644\u0648\u0635\u0641",add_new_customer:"\u0625\u0636\u0627\u0641\u0629 \u0639\u0645\u064A\u0644 \u062C\u062F\u064A\u062F",save_customer:"\u062D\u0641\u0638 \u0627\u0644\u0639\u0645\u064A\u0644",update_customer:"\u062A\u062D\u062F\u064A\u062B \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0639\u0645\u064A\u0644",customer:"\u0639\u0645\u064A\u0644 | \u0639\u0645\u0644\u0627\u0621",new_customer:"\u0639\u0645\u064A\u0644 \u062C\u062F\u064A\u062F",edit_customer:"\u062A\u0639\u062F\u064A\u0644 \u0639\u0645\u064A\u0644",basic_info:"\u0645\u0639\u0644\u0648\u0627\u062A \u0623\u0633\u0627\u0633\u064A\u0629",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0641\u0648\u062A\u0631\u0629",shipping_address:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u062D\u0646",copy_billing_address:"\u0646\u0633\u062E \u0645\u0646 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0641\u0648\u062A\u0631\u0629",no_customers:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0639\u0645\u0644\u0627\u0621 \u062D\u062A\u0649 \u0627\u0644\u0622\u0646!",no_customers_found:"\u0644\u0645 \u064A\u062A\u0645 \u0627\u0644\u062D\u0635\u0648\u0644 \u0639\u0644\u0649 \u0639\u0645\u0644\u0627\u0621!",no_contact:"\u0644\u064A\u0633\u062A \u0647\u0646\u0627\u0643 \u062C\u0647\u0627\u062A \u0627\u062A\u0635\u0627\u0644",no_contact_name:"\u0627\u0633\u0645 \u062C\u0647\u0629 \u0627\u0644\u0627\u062A\u0635\u0627\u0644 \u063A\u064A\u0631 \u0645\u0648\u062C\u0648\u062F",list_of_customers:"\u0633\u0648\u0641 \u064A\u062D\u062A\u0648\u064A \u0647\u0630\u0627 \u0627\u0644\u0642\u0633\u0645 \u0639\u0644\u0649 \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0639\u0645\u0644\u0627\u0621.",primary_display_name:"\u0627\u0633\u0645 \u0627\u0644\u0639\u0631\u0636 \u0627\u0644\u0631\u0626\u064A\u0633\u064A",select_currency:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0639\u0645\u0644\u0629",select_a_customer:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0639\u0645\u064A\u0644",type_or_click:"\u0627\u0643\u062A\u0628 \u0623\u0648 \u0627\u0636\u063A\u0637 \u0644\u0644\u0627\u062E\u062A\u064A\u0627\u0631",new_transaction:"\u0645\u0639\u0627\u0645\u0644\u0629 \u062C\u062F\u064A\u062F\u0629",no_matching_customers:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0639\u0645\u0644\u0627\u0621 \u0645\u0637\u0627\u0628\u0642\u064A\u0646!",phone_number:"\u0631\u0642\u0645 \u0627\u0644\u0647\u0627\u062A\u0641",create_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0625\u0646\u0634\u0627\u0621",confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062F\u0627\u062F \u0647\u0630\u0627 \u0627\u0644\u0639\u0645\u064A\u0644 \u0648\u062C\u0645\u064A\u0639 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0648\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A \u0648\u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0630\u0627\u062A \u0627\u0644\u0635\u0644\u0629. | \u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062F\u0627\u062F \u0647\u0624\u0644\u0627\u0621 \u0627\u0644\u0639\u0645\u0644\u0627\u0621 \u0648\u062C\u0645\u064A\u0639 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0648\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A \u0648\u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0630\u0627\u062A \u0627\u0644\u0635\u0644\u0629.",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0639\u0645\u0644\u0627\u0621 \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0639\u0645\u0644\u0627\u0621 \u0628\u0646\u062C\u0627\u062D",address_updated_message:"Address Information Updated succesfully",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0639\u0645\u0644\u0627\u0621 \u0628\u0646\u062C\u0627\u062D | \u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0639\u0645\u064A\u0644 \u0628\u0646\u062C\u0627\u062D",edit_currency_not_allowed:"Cannot change currency once transactions created."},Dr={title:"\u0627\u0644\u0623\u0635\u0646\u0627\u0641",items_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0623\u0635\u0646\u0627\u0641",name:"\u0627\u0644\u0627\u0633\u0645",unit:"\u0627\u0644\u0648\u062D\u062F\u0629",description:"\u0627\u0644\u0648\u0635\u0641",added_on:"\u0623\u0636\u064A\u0641 \u0641\u064A",price:"\u0627\u0644\u0633\u0639\u0631",date_of_creation:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0625\u0646\u0634\u0627\u0621",not_selected:"\u0644\u0645 \u064A\u062A\u0645 \u0625\u062E\u062A\u064A\u0627\u0631 \u0623\u064A \u0639\u0646\u0635\u0631",action:"\u0625\u062C\u0631\u0627\u0621",add_item:"\u0625\u0636\u0627\u0641\u0629 \u0635\u0646\u0641",save_item:"\u062D\u0641\u0638 \u0627\u0644\u0635\u0646\u0641",update_item:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0635\u0646\u0641",item:"\u0635\u0646\u0641 | \u0623\u0635\u0646\u0627\u0641",add_new_item:"\u0625\u0636\u0627\u0641\u0629 \u0635\u0646\u0641 \u062C\u062F\u064A\u062F",new_item:"\u062C\u062F\u064A\u062F \u0635\u0646\u0641",edit_item:"\u062A\u062D\u062F\u064A\u062B \u0635\u0646\u0641",no_items:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0623\u0635\u0646\u0627\u0641 \u062D\u062A\u0649 \u0627\u0644\u0622\u0646!",list_of_items:"\u0647\u0630\u0627 \u0627\u0644\u0642\u0633\u0645 \u0633\u0648\u0641 \u064A\u062D\u062A\u0648\u064A \u0639\u0644\u0649 \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0623\u0635\u0646\u0627\u0641.",select_a_unit:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0648\u062D\u062F\u0629",taxes:"\u0627\u0644\u0636\u0631\u0627\u0626\u0628",item_attached_message:"\u0644\u0627 \u064A\u0645\u0643\u0646 \u062D\u0630\u0641 \u0627\u0644\u0635\u0646\u0641 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645",confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0647\u0630\u0627 \u0627\u0644\u0635\u0646\u0641 | \u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0647\u0630\u0647 \u0627\u0644\u0623\u0635\u0646\u0627\u0641",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0635\u0646\u0641 \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0635\u0646\u0641 \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0635\u0646\u0641 \u0628\u0646\u062C\u0627\u062D | \u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0623\u0635\u0646\u0627\u0641 \u0628\u0646\u062C\u0627\u062D"},Cr={title:"\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"\u062A\u0642\u062F\u064A\u0631 | \u062A\u0642\u062F\u064A\u0631\u0627\u062A",estimates_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A",days:"{days} \u0623\u064A\u0627\u0645",months:"{months} \u0623\u0634\u0647\u0631",years:"{years} \u0633\u0646\u0648\u0627\u062A",all:"\u0627\u0644\u0643\u0644",paid:"\u0645\u062F\u0641\u0648\u0639",unpaid:"\u063A\u064A\u0631 \u0645\u062F\u0641\u0648\u0639",customer:"\u0627\u0644\u0639\u0645\u064A\u0644",ref_no:"\u0631\u0642\u0645 \u0627\u0644\u0645\u0631\u062C\u0639.",number:"\u0627\u0644\u0631\u0642\u0645",amount_due:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",partially_paid:"\u0645\u062F\u0641\u0648\u0639 \u062C\u0632\u0626\u064A\u0627",total:"\u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",discount:"\u0627\u0644\u062E\u0635\u0645",sub_total:"\u062D\u0627\u0635\u0644 \u0627\u0644\u062C\u0645\u0639",estimate_number:"\u0631\u0642\u0645 \u062A\u0642\u062F\u064A\u0631",ref_number:"\u0631\u0642\u0645 \u0627\u0644\u0645\u0631\u062C\u0639",contact:"\u062A\u0648\u0627\u0635\u0644",add_item:"\u0625\u0636\u0627\u0641\u0629 \u0635\u0646\u0641",date:"\u062A\u0627\u0631\u064A\u062E",due_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0627\u0633\u062A\u062D\u0642\u0627\u0642",expiry_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0635\u0644\u0627\u062D\u064A\u0629",status:"\u0627\u0644\u062D\u0627\u0644\u0629",add_tax:"\u0625\u0636\u0627\u0641\u0629 \u0636\u0631\u064A\u0629",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",action:"\u0625\u062C\u0631\u0627\u0621",notes:"\u0645\u0644\u0627\u062D\u0638\u0627\u062A",tax:"\u0636\u0631\u064A\u0628\u0629",estimate_template:"\u0642\u0627\u0644\u0628",convert_to_invoice:"\u062A\u062D\u0648\u064A\u0644 \u0625\u0644\u0649 \u0641\u0627\u062A\u0648\u0631\u0629",mark_as_sent:"\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0631\u0633\u0644",send_estimate:"\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",resend_estimate:"\u0625\u0639\u0627\u062F\u0629 \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",record_payment:"\u062A\u0633\u062C\u064A\u0644 \u0645\u062F\u0641\u0648\u0627\u062A",add_estimate:"\u0625\u0636\u0627\u0641\u0629 \u062A\u0642\u062F\u064A\u0631",save_estimate:"\u062D\u0641\u0638 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",confirm_conversion:"\u0647\u0644 \u062A\u0631\u064A\u062F \u062A\u062D\u0648\u064A\u0644 \u0647\u0630\u0627 \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0625\u0644\u0649 \u0641\u0627\u062A\u0648\u0631\u0629\u061F",conversion_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0646\u062C\u0627\u062D",confirm_send_estimate:"\u0633\u064A\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0647\u0630\u0627 \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0628\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0625\u0644\u0649 \u0627\u0644\u0639\u0645\u064A\u0644",confirm_mark_as_sent:"\u0633\u064A\u062A\u0645 \u0627\u0644\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0631\u0633\u0644 \u0639\u0644\u0649 \u0647\u0630\u0627 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",confirm_mark_as_accepted:"\u0633\u064A\u062A\u0645 \u0627\u0644\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0642\u0628\u0648\u0644 \u0639\u0644\u0649 \u0647\u0630\u0627 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",confirm_mark_as_rejected:"\u0633\u064A\u062A\u0645 \u0627\u0644\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0631\u0641\u0648\u0636 \u0639\u0644\u0649 \u0647\u0630\u0627 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",no_matching_estimates:"\u0644\u0627 \u064A\u0648\u062C\u062F \u062A\u0642\u062F\u064A\u0631\u0627\u062A \u0645\u0637\u0627\u0628\u0642\u0629!",mark_as_sent_successfully:"\u062A\u0645 \u0627\u0644\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0631\u0633\u0644 \u0628\u0646\u062C\u0627\u062D",send_estimate_successfully:"\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0628\u0646\u062C\u0627\u062D",errors:{required:"\u062D\u0642\u0644 \u0645\u0637\u0644\u0648\u0628"},accepted:"\u0645\u0642\u0628\u0648\u0644",rejected:"\u0645\u0631\u0641\u0648\u0636",expired:"Expired",sent:"\u0645\u0631\u0633\u0644",draft:"\u0645\u0633\u0648\u062F\u0629",viewed:"Viewed",declined:"\u0645\u0631\u0641\u0648\u0636",new_estimate:"\u062A\u0642\u062F\u064A\u0631 \u062C\u062F\u064A\u062F",add_new_estimate:"\u0625\u0636\u0627\u0641\u0629 \u062A\u0642\u062F\u064A\u0631 \u062C\u062F\u064A\u062F",update_Estimate:"\u062A\u062D\u062F\u064A\u062B \u062A\u0642\u062F\u064A\u0631",edit_estimate:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",items:"\u0627\u0644\u0623\u0635\u0646\u0627\u0641",Estimate:"\u062A\u0642\u062F\u064A\u0631 | \u062A\u0642\u062F\u064A\u0631\u0627\u062A",add_new_tax:"\u0625\u0636\u0627\u0641\u0629 \u0636\u0631\u064A\u0628\u0629 \u062C\u062F\u064A\u062F\u0629",no_estimates:"\u0644\u0627 \u064A\u0648\u062C\u062F \u062A\u0642\u062F\u064A\u0631\u0627\u062A \u062D\u0627\u0644\u064A\u0627\u064B!",list_of_estimates:"\u0647\u0630\u0627 \u0627\u0644\u0642\u0633\u0645 \u0633\u0648\u0641 \u064A\u062D\u062A\u0648\u064A \u0639\u0644\u0649 \u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A.",mark_as_rejected:"\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0631\u0641\u0648\u0636",mark_as_accepted:"\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0642\u0631\u0648\u0621",marked_as_accepted_message:"\u062A\u062D\u062F\u064A\u062F \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0643\u0645\u0642\u0628\u0648\u0644",marked_as_rejected_message:"\u062A\u062D\u062F\u064A\u062F \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0643\u0645\u0631\u0641\u0648\u0636",confirm_delete:"\u0644\u0646 \u062A\u0633\u062A\u0637\u064A\u0639 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0647\u0630\u0627 \u0627\u0644\u062A\u0642\u062F\u064A\u0631 | \u0644\u0646 \u062A\u0633\u062A\u0637\u064A\u0639 \u0625\u0633\u062A\u0639\u0627\u062F\u0629 \u0647\u0630\u0647 \u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0628\u0646\u062C\u0627\u062D | \u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A \u0628\u0646\u062C\u0627\u062D",something_went_wrong:"\u062E\u0637\u0623 \u063A\u064A\u0631 \u0645\u0639\u0631\u0648\u0641!",item:{title:"\u0627\u0633\u0645 \u0627\u0644\u0635\u0646\u0641",description:"\u0627\u0644\u0648\u0635\u0641",quantity:"\u0627\u0644\u0643\u0645\u064A\u0629",price:"\u0627\u0644\u0633\u0639\u0631",discount:"\u0627\u0644\u062E\u0635\u0645",total:"\u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",total_discount:"\u0645\u062C\u0645\u0648\u0639 \u0627\u0644\u062E\u0635\u0645",sub_total:"\u062D\u0627\u0635\u0644 \u0627\u0644\u062C\u0645\u0639",tax:"\u0627\u0644\u0636\u0631\u064A\u0629",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",select_an_item:"\u0627\u0643\u062A\u0628 \u0623\u0648 \u0627\u062E\u062A\u0631 \u0627\u0644\u0635\u0646\u0641",type_item_description:"\u0627\u0643\u062A\u0628 \u0648\u0635\u0641 \u0627\u0644\u0635\u0646\u0641 (\u0627\u062E\u062A\u064A\u0627\u0631\u064A)"}},Er={title:"\u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631",invoice_information:"Invoice Information",days:"{days} \u0623\u064A\u0627\u0645",months:"{months} \u0623\u0634\u0647\u0631",years:"{years} \u0633\u0646\u0648\u0627\u062A",all:"\u0627\u0644\u0643\u0644",paid:"\u0645\u062F\u0641\u0648\u0639",unpaid:"\u063A\u064A\u0631 \u0645\u062F\u0641\u0648\u0639",viewed:"\u0634\u0648\u0647\u062F",overdue:"\u0645\u062A\u0623\u062E\u0631",completed:"\u0627\u0643\u062A\u0645\u0644",customer:"\u0627\u0644\u0639\u0645\u064A\u0644",paid_status:"\u062D\u0627\u0644\u0629 \u0627\u0644\u062F\u0641\u0639",ref_no:"\u0631\u0642\u0645 \u0627\u0644\u0645\u0631\u062C\u0639.",number:"\u0627\u0644\u0631\u0642\u0645",amount_due:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",partially_paid:"\u0645\u062F\u0641\u0648\u0639 \u062C\u0632\u0626\u064A\u0627\u064B",total:"\u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",discount:"\u0627\u0644\u062E\u0635\u0645",sub_total:"\u062D\u0627\u0635\u0644 \u0627\u0644\u062C\u0645\u0639",invoice:"\u0641\u0627\u062A\u0648\u0631\u0629 | \u0641\u0648\u0627\u062A\u064A\u0631",invoice_number:"\u0631\u0642\u0645 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",ref_number:"\u0631\u0642\u0645 \u0627\u0644\u0645\u0631\u062C\u0639",contact:"\u062A\u0648\u0627\u0635\u0644",add_item:"\u0625\u0636\u0627\u0641\u0629 \u0635\u0646\u0641",date:"\u0627\u0644\u062A\u0627\u0631\u064A\u062E",due_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0627\u0633\u062A\u062D\u0642\u0627\u0642",status:"\u0627\u0644\u062D\u0627\u0644\u0629",add_tax:"\u0625\u0636\u0627\u0641\u0629 \u0636\u0631\u064A\u0628\u0629",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",action:"\u0625\u062C\u0631\u0627\u0621",notes:"\u0645\u0644\u0627\u062D\u0638\u0627\u062A",view:"\u0639\u0631\u0636",send_invoice:"\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",resend_invoice:"\u0625\u0639\u0627\u062F\u0629 \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",invoice_template:"\u0642\u0627\u0644\u0628 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",conversion_message:"Invoice cloned successful",template:"\u0642\u0627\u0644\u0628",mark_as_sent:"\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0631\u0633\u0644",confirm_send_invoice:"\u0633\u064A\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0647\u0630\u0647 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0623\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0625\u0644\u0649 \u0627\u0644\u0639\u0645\u064A\u0644",invoice_mark_as_sent:"\u0633\u064A\u062A\u0645 \u062A\u062D\u062F\u064A\u062F \u0647\u0630\u0647 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0643\u0645\u0631\u0633\u0644\u0629",confirm_mark_as_accepted:"This invoice will be marked as Accepted",confirm_mark_as_rejected:"This invoice will be marked as Rejected",confirm_send:"\u0633\u064A\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0647\u0630\u0647 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0623\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0625\u0644\u0649 \u0627\u0644\u0639\u0645\u064A\u0644",invoice_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",record_payment:"\u062A\u0633\u062C\u064A\u0644 \u0645\u062F\u0641\u0648\u0639\u0627\u062A",add_new_invoice:"\u0625\u0636\u0627\u0641\u0629 \u0641\u0627\u062A\u0648\u0631\u0629 \u062C\u062F\u064A\u062F\u0629",update_expense:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0645\u0635\u0631\u0648\u0641\u0627\u062A",edit_invoice:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",new_invoice:"\u0641\u0627\u062A\u0648\u0631\u0629 \u062C\u062F\u064A\u062F\u0629",save_invoice:"\u062D\u0641\u0638 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",update_invoice:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",add_new_tax:"\u0625\u0636\u0627\u0641\u0629 \u0636\u0631\u064A\u0628\u0629 \u062C\u062F\u064A\u062F\u0629",no_invoices:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0641\u0648\u0627\u062A\u064A\u0631 \u062D\u062A\u0649 \u0627\u0644\u0622\u0646!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 .",select_invoice:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",no_matching_invoices:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0641\u0648\u0627\u062A\u064A\u0631 \u0645\u0637\u0627\u0628\u0642\u0629!",mark_as_sent_successfully:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062F \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0643\u0645\u0631\u0633\u0644\u0629 \u0628\u0646\u062C\u0627\u062D",invoice_sent_successfully:"Invoice sent successfully",cloned_successfully:"\u062A\u0645 \u0627\u0633\u062A\u0646\u0633\u0627\u062E \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0646\u062C\u0627\u062D",clone_invoice:"\u0627\u0633\u062A\u0646\u0633\u0627\u062E \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",confirm_clone:"\u0633\u064A\u062A\u0645 \u0627\u0633\u062A\u0646\u0633\u0627\u062E \u0647\u0630\u0647 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0641\u064A \u0641\u0627\u062A\u0648\u0631\u0629 \u062C\u062F\u064A\u062F\u0629",item:{title:"\u0627\u0633\u0645 \u0627\u0644\u0635\u0646\u0641",description:"\u0627\u0644\u0648\u0635\u0641",quantity:"\u0627\u0644\u0643\u0645\u064A\u0629",price:"\u0627\u0644\u0633\u0639\u0631",discount:"\u0627\u0644\u062E\u0635\u0645",total:"\u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",total_discount:"\u0625\u062C\u0645\u0627\u0644\u064A \u0627\u0644\u062E\u0635\u0645",sub_total:"\u062D\u0627\u0635\u0644 \u0627\u0644\u062C\u0645\u0639",tax:"\u0627\u0644\u0636\u0631\u064A\u0628\u0629",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",select_an_item:"\u0627\u0643\u062A\u0628 \u0623\u0648 \u0627\u0646\u0642\u0631 \u0644\u0627\u062E\u062A\u064A\u0627\u0631 \u0635\u0646\u0641",type_item_description:"\u0648\u0635\u0641 \u0627\u0644\u0635\u0646\u0641 (\u0627\u062E\u062A\u064A\u0627\u0631\u064A)"},payment_attached_message:"\u0647\u0646\u0627\u0643 \u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0645\u0631\u062A\u0628\u0637\u0629 \u0628\u0627\u0644\u0641\u0639\u0644 \u0628\u0625\u062D\u062F\u0649 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0627\u0644\u0645\u062D\u062F\u062F\u0629. \u062A\u0623\u0643\u062F \u0645\u0646 \u062D\u0630\u0641 \u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0627\u0644\u0645\u0631\u062A\u0628\u0637\u0629 \u0623\u0648\u0644\u0627\u064B \u0642\u0628\u0644 \u062D\u0630\u0641 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629.",confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0639\u062F \u0647\u0630\u0647 \u0627\u0644\u0625\u062C\u0631\u0627\u0621 | \u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0628\u0639\u062F \u0647\u0630\u0627 \u0627\u0644\u0625\u062C\u0631\u0627\u0621",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0646\u062C\u0627\u062D | \u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0628\u0646\u062C\u0627\u062D",marked_as_sent_message:"\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0646\u062C\u0627\u062D",something_went_wrong:"\u062E\u0637\u0623 \u063A\u064A\u0631 \u0645\u0639\u0631\u0648\u0641!",invalid_due_amount_message:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0646\u0647\u0627\u0626\u064A \u0644\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0644\u0627 \u064A\u0645\u0643\u0646 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0623\u0642\u0644 \u0645\u0646 \u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628 \u0644\u0647\u0627. \u0631\u062C\u0627\u0621\u0627\u064B \u062D\u062F\u062B \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0623\u0648 \u0642\u0645 \u0628\u062D\u0630\u0641 \u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0627\u0644\u0645\u0631\u062A\u0628\u0637\u0629 \u0628\u0647\u0627 \u0644\u0644\u0627\u0633\u062A\u0645\u0631\u0627\u0631."},Ir={title:"Recurring Invoices",invoices_list:"Recurring Invoices List",days:"{days} Days",months:"{months} Month",years:"{years} Year",all:"All",paid:"Paid",unpaid:"Unpaid",viewed:"Viewed",overdue:"Overdue",active:"Active",completed:"Completed",customer:"CUSTOMER",paid_status:"PAID STATUS",ref_no:"REF NO.",number:"NUMBER",amount_due:"AMOUNT DUE",partially_paid:"Partially Paid",total:"Total",discount:"Discount",sub_total:"Sub Total",invoice:"Recurring Invoice | Recurring Invoices",invoice_number:"Recurring Invoice Number",next_invoice_date:"Next Invoice Date",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",limit_by:"Limit by",limit_date:"Limit Date",limit_count:"Limit Count",count:"Count",status:"Status",select_a_status:"Select a status",working:"Working",on_hold:"On Hold",complete:"Completed",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",view:"View",basic_info:"Basic Info",send_invoice:"Send Recurring Invoice",auto_send:"Auto Send",resend_invoice:"Resend Recurring Invoice",invoice_template:"Recurring Invoice Template",conversion_message:"Recurring Invoice cloned successful",template:"Template",mark_as_sent:"Mark as sent",confirm_send_invoice:"This recurring invoice will be sent via email to the customer",invoice_mark_as_sent:"This recurring invoice will be marked as sent",confirm_send:"This recurring invoice will be sent via email to the customer",starts_at:"Start Date",due_date:"Invoice Due Date",record_payment:"Record Payment",add_new_invoice:"Add New Recurring Invoice",update_expense:"Update Expense",edit_invoice:"Edit Recurring Invoice",new_invoice:"New Recurring Invoice",send_automatically:"Send Automatically",send_automatically_desc:"Enable this, if you would like to send the invoice automatically to the customer when its created.",save_invoice:"Save Recurring Invoice",update_invoice:"Update Recurring Invoice",add_new_tax:"Add New Tax",no_invoices:"No Recurring Invoices yet!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"This section will contain the list of recurring invoices.",select_invoice:"Select Invoice",no_matching_invoices:"There are no matching recurring invoices!",mark_as_sent_successfully:"Recurring Invoice marked as sent successfully",invoice_sent_successfully:"Recurring Invoice sent successfully",cloned_successfully:"Recurring Invoice cloned successfully",clone_invoice:"Clone Recurring Invoice",confirm_clone:"This recurring invoice will be cloned into a new Recurring Invoice",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"},frequency:{title:"Frequency",select_frequency:"Select Frequency",minute:"Minute",hour:"Hour",day_month:"Day of month",month:"Month",day_week:"Day of week"},confirm_delete:"You will not be able to recover this Invoice | You will not be able to recover these Invoices",created_message:"Recurring Invoice created successfully",updated_message:"Recurring Invoice updated successfully",deleted_message:"Recurring Invoice deleted successfully | Recurring Invoices deleted successfully",marked_as_sent_message:"Recurring Invoice marked as sent successfully",user_email_does_not_exist:"User email does not exist",something_went_wrong:"something went wrong",invalid_due_amount_message:"Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue."},Nr={title:"\u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A",payments_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A",record_payment:"\u062A\u0633\u062C\u064A\u0644 \u062F\u0641\u0639\u0629",customer:"\u0627\u0644\u0639\u0645\u064A\u0644",date:"\u0627\u0644\u062A\u0627\u0631\u064A\u062E",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",action:"\u0625\u062C\u0631\u0627\u0621",payment_number:"\u0631\u0642\u0645 \u0627\u0644\u062F\u0641\u0639\u0629",payment_mode:"\u0646\u0648\u0639 \u0627\u0644\u062F\u0641\u0639\u0629",invoice:"\u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",note:"\u0645\u0644\u0627\u062D\u0638\u0629",add_payment:"\u0625\u0636\u0627\u0641\u0629 \u062F\u0641\u0639\u0629",new_payment:"\u062F\u0641\u0639\u0629 \u062C\u062F\u064A\u062F\u0629",edit_payment:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u062F\u0641\u0639\u0629",view_payment:"\u0639\u0631\u0636 \u0627\u0644\u062F\u0641\u0639\u0629",add_new_payment:"\u0625\u0636\u0627\u0641\u0629 \u062F\u0641\u0639\u0629 \u062C\u062F\u064A\u062F\u0629",send_payment_receipt:"\u0625\u0631\u0633\u0627\u0644 \u0625\u064A\u0635\u0627\u0644 \u0627\u0644\u062F\u0641\u0639",send_payment:"\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u062F\u0641\u0639\u0629",save_payment:"\u062D\u0641\u0638 \u0627\u0644\u062F\u0641\u0639\u0629",update_payment:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062F\u0641\u0639\u0629",payment:"\u062F\u0641\u0639\u0629 | \u0645\u062F\u0641\u0648\u0639\u0627\u062A",no_payments:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0645\u062F\u0641\u0648\u0639\u0627\u062A \u062D\u062A\u0649 \u0627\u0644\u0622\u0646!",not_selected:"\u0644\u0645 \u064A\u062A\u0645 \u062A\u062D\u062F\u064A\u062F",no_invoice:"\u0644\u0627 \u062A\u0648\u062C\u062F \u0641\u0627\u062A\u0648\u0631\u0629",no_matching_payments:"\u0644\u0627 \u062A\u0648\u062C\u062F \u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0645\u0637\u0627\u0628\u0642\u0629!",list_of_payments:"\u0633\u0648\u0641 \u062A\u062D\u062A\u0648\u064A \u0647\u0630\u0647 \u0627\u0644\u0642\u0627\u0626\u0645\u0629 \u0639\u0644\u0649 \u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631.",select_payment_mode:"\u0627\u062E\u062A\u0631 \u0637\u0631\u064A\u0642\u0629 \u0627\u0644\u062F\u0641\u0639",confirm_mark_as_sent:"\u0633\u064A\u062A\u0645 \u0627\u0644\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0631\u0633\u0644 \u0639\u0644\u0649 \u0647\u0630\u0627 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",confirm_send_payment:"\u0633\u064A\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0647\u0630\u0647 \u0627\u0644\u062F\u0641\u0639\u0629 \u0639\u0628\u0631 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0625\u0644\u0649 \u0627\u0644\u0639\u0645\u064A\u0644",send_payment_successfully:"\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u062F\u0641\u0639\u0629 \u0628\u0646\u062C\u0627\u062D",something_went_wrong:"\u062E\u0637\u0623 \u063A\u064A\u0631 \u0645\u0639\u0631\u0648\u0641!",confirm_delete:"\u0644\u0646 \u062A\u0643\u0648\u0646 \u0642\u0627\u062F\u0631 \u0639\u0644\u0649 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0647\u0630\u0647 \u0627\u0644\u062F\u0641\u0639\u0629 | \u0644\u0646 \u062A\u0643\u0648\u0646 \u0642\u0627\u062F\u0631\u0627\u064B \u0639\u0644\u0649 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0647\u0630\u0647 \u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u062F\u0641\u0639\u0629 \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062F\u0641\u0639\u0629 \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u062F\u0641\u0639\u0629 \u0628\u0646\u062C\u0627\u062D | \u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0628\u0646\u062C\u0627\u062D",invalid_amount_message:"\u0642\u064A\u0645\u0629 \u0627\u0644\u062F\u0641\u0639\u0629 \u063A\u064A\u0631 \u0635\u062D\u064A\u062D\u0629!"},Tr={title:"\u0627\u0644\u0646\u0641\u0642\u0627\u062A",expenses_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0646\u0641\u0642\u0627\u062A",select_a_customer:"\u062D\u062F\u062F \u0639\u0645\u064A\u0644\u0627\u064B",expense_title:"\u0627\u0644\u0639\u0646\u0648\u0627\u0646",customer:"\u0627\u0644\u0639\u0645\u064A\u0644",currency:"Currency",contact:"\u062A\u0648\u0627\u0635\u0644",category:"\u0627\u0644\u0641\u0626\u0629",from_date:"\u0645\u0646 \u062A\u0627\u0631\u064A\u062E",to_date:"\u062D\u062A\u0649 \u062A\u0627\u0631\u064A\u062E",expense_date:"\u0627\u0644\u062A\u0627\u0631\u064A\u062E",description:"\u0627\u0644\u0648\u0635\u0641",receipt:"\u0633\u0646\u062F \u0627\u0644\u0642\u0628\u0636",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",action:"\u0625\u062C\u0631\u0627\u0621",not_selected:"\u0644\u0645 \u064A\u062A\u0645 \u062A\u062D\u062F\u064A\u062F",note:"\u0645\u0644\u0627\u062D\u0638\u0629",category_id:"\u0631\u0645\u0632 \u0627\u0644\u0641\u0626\u0629",date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0646\u0641\u0642\u0627\u062A",add_expense:"\u0623\u0636\u0641 \u0646\u0641\u0642\u0627\u062A",add_new_expense:"\u0623\u0636\u0641 \u0646\u0641\u0642\u0627\u062A \u062C\u062F\u064A\u062F\u0629",save_expense:"\u062D\u0641\u0638 \u0627\u0644\u0646\u0641\u0642\u0627\u062A",update_expense:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0646\u0641\u0642\u0627\u062A",download_receipt:"\u062A\u0646\u0632\u064A\u0644 \u0627\u0644\u0633\u0646\u062F",edit_expense:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u0646\u0641\u0642\u0627\u062A",new_expense:"\u0646\u0641\u0642\u0627\u062A \u062C\u062F\u064A\u062F\u0629",expense:"\u0625\u0646\u0641\u0627\u0642 | \u0646\u0641\u0642\u0627\u062A",no_expenses:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0646\u0641\u0642\u0627\u062A \u062D\u062A\u0649 \u0627\u0644\u0622\u0646!",list_of_expenses:"\u0647\u0630\u0647 \u0627\u0644\u0642\u0627\u0626\u0645\u0629 \u0633\u062A\u062D\u062A\u0648\u064A \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0627\u0644\u062E\u0627\u0635\u0629 \u0628\u0643",confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0647\u0630\u0627 \u0627\u0644\u0625\u0646\u0641\u0627\u0642 | \u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0647\u0630\u0647 \u0627\u0644\u0646\u0641\u0642\u0627\u062A",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0628\u0646\u062C\u0627\u062D",categories:{categories_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0641\u0626\u0627\u062A",title:"\u0627\u0644\u0639\u0646\u0648\u0627\u0646",name:"\u0627\u0644\u0627\u0633\u0645",description:"\u0627\u0644\u0648\u0635\u0641",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",actions:"\u0627\u0644\u0639\u0645\u0644\u064A\u0627\u062A",add_category:"\u0625\u0636\u0627\u0641\u0629 \u0641\u0626\u0645\u0629",new_category:"\u0641\u0626\u0629 \u062C\u062F\u064A\u062F\u0629",category:"\u0641\u0626\u0629 | \u0641\u0626\u0627\u062A",select_a_category:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0641\u0626\u0629"}},Rr={email:"\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",password:"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",forgot_password:"\u0646\u0633\u064A\u062A \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631\u061F",or_signIn_with:"\u0623\u0648 \u0633\u062C\u0644 \u0627\u0644\u062F\u062E\u0648\u0644 \u0628\u0648\u0627\u0633\u0637\u0629",login:"\u062F\u062E\u0648\u0644",register:"\u062A\u0633\u062C\u064A\u0644",reset_password:"\u0625\u0639\u0627\u062F\u0629 \u062A\u0639\u064A\u064A\u0646 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",password_reset_successfully:"\u062A\u0645 \u0625\u0639\u0627\u062F\u0629 \u062A\u0639\u064A\u064A\u0646 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631 \u0628\u0646\u062C\u0627\u062D",enter_email:"\u0623\u062F\u062E\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A",enter_password:"\u0623\u0643\u062A\u0628 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",retype_password:"\u0623\u0639\u062F \u0643\u062A\u0627\u0628\u0629 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631"},Mr={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},Fr={title:"\u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u0648\u0646",users_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u064A\u0646",name:"\u0627\u0633\u0645",description:"\u0648\u0635\u0641",added_on:"\u0648\u0623\u0636\u0627\u0641 \u0641\u064A",date_of_creation:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u062E\u0644\u0642",action:"\u0639\u0645\u0644",add_user:"\u0625\u0636\u0627\u0641\u0629 \u0645\u0633\u062A\u062E\u062F\u0645",save_user:"\u062D\u0641\u0638 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645",update_user:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645",user:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645",add_new_user:"\u0625\u0636\u0627\u0641\u0629 \u0645\u0633\u062A\u062E\u062F\u0645 \u062C\u062F\u064A\u062F",new_user:"\u0645\u0633\u062A\u062E\u062F\u0645 \u062C\u062F\u064A\u062F",edit_user:"\u062A\u062D\u0631\u064A\u0631 \u0627\u0644\u0639\u0636\u0648",no_users:"\u0644\u0627 \u0645\u0633\u062A\u062E\u062F\u0645\u064A\u0646 \u062D\u062A\u0649 \u0627\u0644\u0622\u0646!",list_of_users:"\u0633\u064A\u062D\u062A\u0648\u064A \u0647\u0630\u0627 \u0627\u0644\u0642\u0633\u0645 \u0639\u0644\u0649 \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u064A\u0646.",email:"\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",phone:"\u0647\u0627\u062A\u0641",password:"\u0643\u0644\u0645\u0647 \u0627\u0644\u0633\u0631",user_attached_message:"\u0644\u0627 \u064A\u0645\u0643\u0646 \u062D\u0630\u0641 \u0639\u0646\u0635\u0631 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0628\u0627\u0644\u0641\u0639\u0644",confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062F\u0627\u062F \u0647\u0630\u0627 \u0627\u0644\u0639\u0646\u0635\u0631 | \u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062F\u0627\u062F \u0647\u0624\u0644\u0627\u0621 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u064A\u0646",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 \u0628\u0646\u062C\u0627\u062D | \u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 \u0628\u0646\u062C\u0627\u062D",select_company_role:"Select Role for {company}",companies:"Companies"},$r={title:"\u062A\u0642\u0631\u064A\u0631",from_date:"\u0645\u0646 \u062A\u0627\u0631\u064A\u062E",to_date:"\u062D\u062A\u0649 \u062A\u0627\u0631\u064A\u062E",status:"\u0627\u0644\u062D\u0627\u0644\u0629",paid:"\u0645\u062F\u0641\u0648\u0639",unpaid:"\u063A\u064A\u0631 \u0645\u062F\u0641\u0648\u0639",download_pdf:"\u062A\u0646\u0632\u064A\u0644 PDF",view_pdf:"\u0639\u0631\u0636 PDF",update_report:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062A\u0642\u0631\u064A\u0631",report:"\u062A\u0642\u0631\u064A\u0631 | \u062A\u0642\u0627\u0631\u064A\u0631",profit_loss:{profit_loss:"\u0627\u0644\u062E\u0633\u0627\u0626\u0631 \u0648\u0627\u0644\u0623\u0631\u0628\u0627\u062D",to_date:"\u062D\u062A\u0649 \u062A\u0627\u0631\u064A\u062E",from_date:"\u0645\u0646 \u062A\u0627\u0631\u064A\u062E",date_range:"\u0627\u062E\u062A\u0631 \u0645\u062F\u0649 \u0627\u0644\u062A\u0627\u0631\u064A\u062E"},sales:{sales:"\u0627\u0644\u0645\u0628\u064A\u0639\u0627\u062A",date_range:"\u0627\u062E\u062A\u0631 \u0645\u062F\u0649 \u0627\u0644\u062A\u0627\u0631\u064A\u062E",to_date:"\u062D\u062A\u0649 \u062A\u0627\u0631\u064A\u062E",from_date:"\u0645\u0646 \u062A\u0627\u0631\u064A\u062E",report_type:"\u0646\u0648\u0639 \u0627\u0644\u062A\u0642\u0631\u064A\u0631"},taxes:{taxes:"\u0627\u0644\u0636\u0631\u0627\u0626\u0628",to_date:"\u062D\u062A\u0649 \u062A\u0627\u0631\u064A\u062E",from_date:"\u0645\u0646 \u062A\u0627\u0631\u064A\u062E",date_range:"\u0627\u062E\u062A\u0631 \u0645\u062F\u0649 \u0627\u0644\u062A\u0627\u0631\u064A\u062E"},errors:{required:"\u062D\u0642\u0644 \u0645\u0637\u0644\u0648\u0628"},invoices:{invoice:"\u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",invoice_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",due_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0627\u0633\u062A\u062D\u0642\u0627\u0642",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",contact_name:"\u0627\u0633\u0645 \u0627\u0644\u062A\u0648\u0627\u0635\u0644",status:"\u0627\u0644\u062D\u0627\u0644\u0629"},estimates:{estimate:"\u062A\u0642\u062F\u064A\u0631",estimate_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u062A\u0642\u062F\u064A\u0631",due_date:"\u0645\u0633\u062A\u062D\u0642 \u0628\u062A\u0627\u0631\u064A\u062E",estimate_number:"\u0631\u0642\u0645 \u0645\u0633\u062A\u062D\u0642",ref_number:"\u0631\u0642\u0645 \u0627\u0644\u0645\u0631\u062C\u0639",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",contact_name:"\u0627\u0633\u0645 \u0627\u0644\u062A\u0648\u0627\u0635\u0644",status:"\u0627\u0644\u062D\u0627\u0644\u0629"},expenses:{expenses:"\u0627\u0644\u0646\u0641\u0642\u0627\u062A",category:"\u0627\u0644\u0641\u0626\u0629",date:"\u0627\u0644\u062A\u0627\u0631\u064A\u062E",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",to_date:"\u062D\u062A\u0649 \u062A\u0627\u0631\u064A\u062E",from_date:"\u0645\u0646 \u062A\u0627\u0631\u064A\u062E",date_range:"\u0627\u062E\u062A\u0631 \u0645\u062F\u0649 \u0627\u0644\u062A\u0627\u0631\u064A\u062E"}},Ur={menu_title:{account_settings:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062D\u0633\u0627\u0628",company_information:"\u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0627\u0644\u0645\u0646\u0634\u0623\u0629",customization:"\u062A\u062E\u0635\u064A\u0635",preferences:"\u062A\u0641\u0636\u064A\u0644\u0627\u062A",notifications:"\u062A\u0646\u0628\u064A\u0647\u0627\u062A",tax_types:"\u0646\u0648\u0639 \u0627\u0644\u0636\u0631\u064A\u0628\u0629",expense_category:"\u0641\u0626\u0627\u062A \u0627\u0644\u0646\u0641\u0642\u0627\u062A",update_app:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0646\u0638\u0627\u0645",backup:"\u062F\u0639\u0645",file_disk:"\u0642\u0631\u0635 \u0627\u0644\u0645\u0644\u0641",custom_fields:"\u0627\u0644\u062D\u0642\u0648\u0644 \u0627\u0644\u0645\u062E\u0635\u0635\u0629",payment_modes:"\u0637\u0631\u0642 \u0627\u0644\u062F\u0641\u0639",notes:"\u0645\u0644\u0627\u062D\u0638\u0627\u062A",exchange_rate:"Exchange Rate",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A",setting:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A | \u0625\u0639\u062F\u0627\u062F\u0627\u062A",general:"\u0639\u0627\u0645",language:"\u0627\u0644\u0644\u063A\u0629",primary_currency:"\u0627\u0644\u0639\u0645\u0644\u0629 \u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629",timezone:"\u0627\u0644\u0645\u0646\u0637\u0642\u0629 \u0627\u0644\u0632\u0645\u0646\u064A\u0629",date_format:"\u0635\u064A\u063A\u0629 \u0627\u0644\u062A\u0627\u0631\u064A\u062E",currencies:{title:"\u0627\u0644\u0639\u0645\u0644\u0627\u062A",currency:"\u0627\u0644\u0639\u0645\u0644\u0629 | \u0627\u0644\u0639\u0645\u0644\u0627\u062A",currencies_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0639\u0645\u0644\u0627\u062A",select_currency:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0639\u0645\u0644\u0629",name:"\u0627\u0644\u0627\u0633\u0645",code:"\u0627\u0644\u0645\u0631\u062C\u0639",symbol:"\u0627\u0644\u0631\u0645\u0632",precision:"\u0627\u0644\u062F\u0642\u0629",thousand_separator:"\u0641\u0627\u0635\u0644 \u0627\u0644\u0622\u0644\u0627\u0641",decimal_separator:"\u0627\u0644\u0641\u0627\u0635\u0644\u0629 \u0627\u0644\u0639\u0634\u0631\u064A\u0629",position:"\u0627\u0644\u0645\u0648\u0642\u0639",position_of_symbol:"\u0645\u0648\u0642\u0639 \u0631\u0645\u0632 \u0627\u0644\u0639\u0645\u0644\u0629",right:"\u064A\u0645\u064A\u0646",left:"\u064A\u0633\u0627\u0631",action:"\u0625\u062C\u0631\u0627\u0621",add_currency:"\u0623\u0636\u0641 \u0639\u0645\u0644\u0629"},mail:{host:"\u062E\u0627\u062F\u0645 \u0627\u0644\u0628\u0631\u064A\u062F",port:"\u0645\u0646\u0641\u0630 \u0627\u0644\u0628\u0631\u064A\u062F",driver:"\u0645\u0634\u063A\u0644 \u0627\u0644\u0628\u0631\u064A\u062F",secret:"\u0633\u0631\u064A",mailgun_secret:"\u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0633\u0631\u064A \u0644\u0640 Mailgun",mailgun_domain:"\u0627\u0644\u0645\u062C\u0627\u0644",mailgun_endpoint:"\u0627\u0644\u0646\u0647\u0627\u064A\u0629 \u0627\u0644\u0637\u0631\u0641\u064A\u0629 \u0644\u0640 Mailgun",ses_secret:"SES \u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0633\u0631\u064A",ses_key:"SES \u0645\u0641\u062A\u0627\u062D",password:"\u0643\u0644\u0645\u0629 \u0645\u0631\u0648\u0631 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A",username:"\u0627\u0633\u0645 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 \u0644\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",mail_config:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A",from_name:"\u0627\u0633\u0645 \u0627\u0644\u0645\u0631\u0633\u0644",from_mail:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0644\u0644\u0645\u0631\u0633\u0644",encryption:"\u0635\u064A\u063A\u0629 \u0627 \u0644\u062A\u0634\u0641\u064A\u0631",mail_config_desc:"\u0623\u062F\u0646\u0627\u0647 \u0647\u0648 \u0646\u0645\u0648\u0630\u062C \u0644\u062A\u0643\u0648\u064A\u0646 \u0628\u0631\u0646\u0627\u0645\u062C \u062A\u0634\u063A\u064A\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0644\u0625\u0631\u0633\u0627\u0644 \u0631\u0633\u0627\u0626\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0645\u0646 \u0627\u0644\u062A\u0637\u0628\u064A\u0642. \u064A\u0645\u0643\u0646\u0643 \u0623\u064A\u0636\u064B\u0627 \u062A\u0647\u064A\u0626\u0629 \u0645\u0648\u0641\u0631\u064A \u0627\u0644\u062C\u0647\u0627\u062A \u0627\u0644\u062E\u0627\u0631\u062C\u064A\u0629 \u0645\u062B\u0644 Sendgrid \u0648 SES \u0625\u0644\u062E."},pdf:{title:"PDF \u0625\u0639\u062F\u0627\u062F\u0627\u062A",footer_text:"\u0646\u0635 \u0627\u0644\u062A\u0630\u064A\u064A\u0644",pdf_layout:"\u0627\u062A\u062C\u0627\u0647 \u0635\u0641\u062D\u0629 PDF"},company_info:{company_info:"\u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0627\u0644\u0634\u0631\u0643\u0629",company_name:"\u0627\u0633\u0645 \u0627\u0644\u0634\u0631\u0643\u0629",company_logo:"\u0634\u0639\u0627\u0631 \u0627\u0644\u0634\u0631\u0643\u0629",section_description:"\u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0639\u0646 \u0634\u0631\u0643\u062A\u0643 \u0633\u064A\u062A\u0645 \u0639\u0631\u0636\u0647\u0627 \u0639\u0644\u0649 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0648\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A \u0648\u0627\u0644\u0645\u0633\u062A\u0646\u062F\u0627\u062A \u0627\u0644\u0623\u062E\u0631\u0649.",phone:"\u0627\u0644\u0647\u0627\u062A\u0641",country:"\u0627\u0644\u062F\u0648\u0644\u0629",state:"\u0627\u0644\u0648\u0644\u0627\u064A\u0629/\u0627\u0644\u0645\u0646\u0637\u0642\u0629",city:"\u0627\u0644\u0645\u062F\u064A\u0646\u0629",address:"\u0627\u0644\u0639\u0646\u0648\u0627\u0646",zip:"\u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0628\u0631\u064A\u062F\u064A",save:"\u062D\u0641\u0638",delete:"Delete",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0627\u0644\u0634\u0631\u0643\u0629 \u0628\u0646\u062C\u0627\u062D",delete_company:"Delete Company",delete_company_description:"Once you delete your company, you will lose all the data and files associated with it permanently.",are_you_absolutely_sure:"Are you absolutely sure?",delete_company_modal_desc:"This action cannot be undone. This will permanently delete {company} and all of its associated data.",delete_company_modal_label:"Please type {company} to confirm"},custom_fields:{title:"\u0627\u0644\u062D\u0642\u0648\u0644 \u0627\u0644\u0645\u062E\u0635\u0635\u0629",section_description:"\u0642\u0645 \u0628\u062A\u062E\u0635\u064A\u0635 \u0641\u0648\u0627\u062A\u064A\u0631\u0643 \u0648\u062A\u0642\u062F\u064A\u0631\u0627\u062A\u0643 \u0648\u0625\u064A\u0635\u0627\u0644\u0627\u062A \u0627\u0644\u062F\u0641\u0639 \u0628\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0627\u0644\u062D\u0642\u0648\u0644 \u0627\u0644\u062E\u0627\u0635\u0629 \u0628\u0643. \u062A\u0623\u0643\u062F \u0645\u0646 \u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0627\u0644\u062D\u0642\u0648\u0644 \u0627\u0644\u0645\u0636\u0627\u0641\u0629 \u0623\u062F\u0646\u0627\u0647 \u0641\u064A \u062A\u0646\u0633\u064A\u0642\u0627\u062A \u0627\u0644\u0639\u0646\u0627\u0648\u064A\u0646 \u0641\u064A \u0635\u0641\u062D\u0629 \u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062A\u062E\u0635\u064A\u0635.",add_custom_field:"\u0625\u0636\u0627\u0641\u0629 \u062D\u0642\u0644 \u0645\u062E\u0635\u0635",edit_custom_field:"\u062A\u062D\u0631\u064A\u0631 \u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062E\u0635\u0635",field_name:"\u0627\u0633\u0645 \u0627\u0644\u062D\u0642\u0644",label:"\u0636\u0639 \u0627\u0644\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0646\u0627\u0633\u0628\u0629",type:"\u0646\u0648\u0639",name:"\u0627\u0633\u0645",slug:"Slug",required:"\u0645\u0637\u0644\u0648\u0628",placeholder:"\u0639\u0646\u0635\u0631 \u0646\u0627\u0626\u0628",help_text:"\u0646\u0635 \u0627\u0644\u0645\u0633\u0627\u0639\u062F\u0629",default_value:"\u0627\u0644\u0642\u064A\u0645\u0629 \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A\u0629",prefix:"\u0627\u062E\u062A\u0635\u0627\u0631",starting_number:"\u0631\u0642\u0645 \u0627\u0644\u0628\u062F\u0627\u064A\u0629",model:"\u0646\u0645\u0648\u0630\u062C",help_text_description:"\u0623\u062F\u062E\u0644 \u0628\u0639\u0636 \u0627\u0644\u0646\u0635 \u0644\u0645\u0633\u0627\u0639\u062F\u0629 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u064A\u0646 \u0639\u0644\u0649 \u0641\u0647\u0645 \u0627\u0644\u063A\u0631\u0636 \u0645\u0646 \u0647\u0630\u0627 \u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062E\u0635\u0635.",suffix:"\u0644\u0627\u062D\u0642\u0629",yes:"\u0646\u0639\u0645",no:"\u0644\u0627",order:"\u0637\u0644\u0628",custom_field_confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0639\u0627\u062F\u0629 \u0647\u0630\u0627 \u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062E\u0635\u0635",already_in_use:"\u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062E\u0635\u0635 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0628\u0627\u0644\u0641\u0639\u0644",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062E\u0635\u0635 \u0628\u0646\u062C\u0627\u062D",options:"\u062E\u064A\u0627\u0631\u0627\u062A",add_option:"\u0623\u0636\u0641 \u062E\u064A\u0627\u0631\u0627\u062A",add_another_option:"\u0623\u0636\u0641 \u062E\u064A\u0627\u0631\u064B\u0627 \u0622\u062E\u0631",sort_in_alphabetical_order:"\u0641\u0631\u0632 \u062D\u0633\u0628 \u0627\u0644\u062A\u0631\u062A\u064A\u0628 \u0627\u0644\u0623\u0628\u062C\u062F\u064A",add_options_in_bulk:"\u0623\u0636\u0641 \u0627\u0644\u062E\u064A\u0627\u0631\u0627\u062A \u0628\u0634\u0643\u0644 \u0645\u062C\u0645\u0651\u0639",use_predefined_options:"\u0627\u0633\u062A\u062E\u062F\u0645 \u0627\u0644\u062E\u064A\u0627\u0631\u0627\u062A \u0627\u0644\u0645\u062D\u062F\u062F\u0629 \u0645\u0633\u0628\u0642\u064B\u0627",select_custom_date:"\u062D\u062F\u062F \u0627\u0644\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0645\u062E\u0635\u0635",select_relative_date:"\u062D\u062F\u062F \u0627\u0644\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0646\u0633\u0628\u064A",ticked_by_default:"\u064A\u062A\u0645 \u062A\u062D\u062F\u064A\u062F\u0647 \u0628\u0634\u0643\u0644 \u0627\u0641\u062A\u0631\u0627\u0636\u064A",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062E\u0635\u0635 \u0628\u0646\u062C\u0627\u062D",added_message:"\u062A\u0645\u062A \u0625\u0636\u0627\u0641\u0629 \u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062E\u0635\u0635 \u0628\u0646\u062C\u0627\u062D",press_enter_to_add:"Press enter to add new option",model_in_use:"Cannot update model for fields which are already in use.",type_in_use:"Cannot update type for fields which are already in use."},customization:{customization:"\u0627\u0644\u062A\u062E\u0635\u064A\u0635",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0627\u0644\u0634\u0631\u0643\u0629 \u0628\u0646\u062C\u0627\u062D",save:"\u062D\u0641\u0638",insert_fields:"Insert Fields",learn_custom_format:"Learn how to use custom format",add_new_component:"Add New Component",component:"Component",Parameter:"Parameter",series:"Series",series_description:"To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.",series_param_label:"Series Value",delimiter:"Delimiter",delimiter_description:"Single character for specifying the boundary between 2 separate components. By default its set to -",delimiter_param_label:"Delimiter Value",date_format:"Date Format",date_format_description:"A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.",date_format_param_label:"Format",sequence:"Sequence",sequence_description:"Consecutive sequence of numbers across your company. You can specify the length on the given parameter.",sequence_param_label:"Sequence Length",customer_series:"Customer Series",customer_series_description:"To set a different prefix/postfix for each customer.",customer_sequence:"Customer Sequence",customer_sequence_description:"Consecutive sequence of numbers for each of your customer.",customer_sequence_param_label:"Sequence Length",random_sequence:"Random Sequence",random_sequence_description:"Random alphanumeric string. You can specify the length on the given parameter.",random_sequence_param_label:"Sequence Length",invoices:{title:"\u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631",invoice_number_format:"Invoice Number Format",invoice_number_format_description:"Customize how your invoice number gets generated automatically when you create a new invoice.",preview_invoice_number:"Preview Invoice Number",due_date:"Due Date",due_date_description:"Specify how due date is automatically set when you create an invoice.",due_date_days:"Invoice Due after days",set_due_date_automatically:"Set Due Date Automatically",set_due_date_automatically_description:"Enable this if you wish to set due date automatically when you create a new invoice.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on invoice creation.",default_invoice_email_body:"\u0646\u0635 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A \u0644\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",company_address_format:"\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u0631\u0643\u0629",shipping_address_format:"\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u062D\u0646",billing_address_format:"\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631",invoice_email_attachment:"\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0643\u0645\u0631\u0641\u0642\u0627\u062A",invoice_email_attachment_setting_description:'\u062A\u0641\u0639\u064A\u0644 \u0647\u0630\u0627 \u0625\u0630\u0627 \u0643\u0646\u062A \u062A\u0631\u063A\u0628 \u0641\u064A \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0643\u0645\u0631\u0641\u0642 \u0628\u0631\u064A\u062F \u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A. \u064A\u0631\u062C\u0649 \u0645\u0644\u0627\u062D\u0638\u0629 \u0623\u0646 \u0632\u0631 "\u0639\u0631\u0636 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631" \u0641\u064A \u0631\u0633\u0627\u0626\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0644\u0646 \u064A\u062A\u0645 \u0639\u0631\u0636\u0647 \u0628\u0639\u062F \u0627\u0644\u0622\u0646 \u0639\u0646\u062F \u0627\u0644\u062A\u0641\u0639\u064A\u0644.',invoice_settings_updated:"Invoice Settings updated successfully",retrospective_edits:"Retrospective Edits",allow:"Allow",disable_on_invoice_partial_paid:"Disable after partial payment is recorded",disable_on_invoice_paid:"Disable after full payment is recorded",disable_on_invoice_sent:"Disable after invoice is sent",retrospective_edits_description:" Based on your country's laws or your preference, you can restrict users from editing finalised invoices."},estimates:{title:"\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A",estimate_number_format:"Estimate Number Format",estimate_number_format_description:"Customize how your estimate number gets generated automatically when you create a new estimate.",preview_estimate_number:"Preview Estimate Number",expiry_date:"Expiry Date",expiry_date_description:"Specify how expiry date is automatically set when you create an estimate.",expiry_date_days:"Estimate Expires after days",set_expiry_date_automatically:"Set Expiry Date Automatically",set_expiry_date_automatically_description:"Enable this if you wish to set expiry date automatically when you create a new estimate.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on estimate creation.",default_estimate_email_body:"\u062A\u0642\u062F\u064A\u0631 \u0646\u0635 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A",company_address_format:"\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u0631\u0643\u0629",shipping_address_format:"\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u062D\u0646",billing_address_format:"\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631",estimate_email_attachment:"\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A \u0643\u0645\u0631\u0641\u0642\u0627\u062A",estimate_email_attachment_setting_description:'\u062A\u0641\u0639\u064A\u0644 \u0647\u0630\u0627 \u0625\u0630\u0627 \u0643\u0646\u062A \u062A\u0631\u063A\u0628 \u0641\u064A \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0643\u0645\u0631\u0641\u0642 \u0628\u0631\u064A\u062F \u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A. \u064A\u0631\u062C\u0649 \u0645\u0644\u0627\u062D\u0638\u0629 \u0623\u0646 \u0632\u0631 "\u0639\u0631\u0636 \u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A" \u0641\u064A \u0631\u0633\u0627\u0626\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0644\u0646 \u064A\u062A\u0645 \u0639\u0631\u0636\u0647 \u0628\u0639\u062F \u0627\u0644\u0622\u0646 \u0639\u0646\u062F \u0627\u0644\u062A\u0641\u0639\u064A\u0644.',estimate_settings_updated:"Estimate Settings updated successfully",convert_estimate_options:"Estimate Convert Action",convert_estimate_description:"Specify what happens to the estimate after it gets converted to an invoice.",no_action:"No action",delete_estimate:"Delete estimate",mark_estimate_as_accepted:"Mark estimate as accepted"},payments:{title:"\u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A",payment_number_format:"Payment Number Format",payment_number_format_description:"Customize how your payment number gets generated automatically when you create a new payment.",preview_payment_number:"Preview Payment Number",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on payment creation.",default_payment_email_body:"\u0646\u0635 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0644\u0644\u062F\u0641\u0639 \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A",company_address_format:"\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u0631\u0643\u0629",from_customer_address_format:"\u0645\u0646 \u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0639\u0645\u064A\u0644",payment_email_attachment:"\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0643\u0645\u0631\u0641\u0642\u0627\u062A",payment_email_attachment_setting_description:'\u062A\u0641\u0639\u064A\u0644 \u0647\u0630\u0627 \u0625\u0630\u0627 \u0643\u0646\u062A \u062A\u0631\u063A\u0628 \u0641\u064A \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0643\u0645\u0631\u0641\u0642 \u0628\u0631\u064A\u062F \u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A. \u064A\u0631\u062C\u0649 \u0645\u0644\u0627\u062D\u0638\u0629 \u0623\u0646 \u0632\u0631 "\u0639\u0631\u0636 \u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A" \u0641\u064A \u0631\u0633\u0627\u0626\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0644\u0646 \u064A\u062A\u0645 \u0639\u0631\u0636\u0647 \u0628\u0639\u062F \u0627\u0644\u0622\u0646 \u0639\u0646\u062F \u0627\u0644\u062A\u0641\u0639\u064A\u0644.',payment_settings_updated:"Payment Settings updated successfully"},items:{title:"\u0627\u0644\u0639\u0646\u0627\u0635\u0631",units:"\u0627\u0644\u0648\u062D\u062F\u0627\u062A",add_item_unit:"\u0625\u0636\u0627\u0641\u0629 \u0648\u062D\u062F\u0629 \u0639\u0646\u0635\u0631",edit_item_unit:"\u062A\u062D\u0631\u064A\u0631 \u0648\u062D\u062F\u0629 \u0627\u0644\u0639\u0646\u0627\u0635\u0631",unit_name:"\u0625\u0633\u0645 \u0627\u0644\u0648\u062D\u062F\u0629",item_unit_added:"\u062A\u0645\u062A \u0625\u0636\u0627\u0641\u0629 \u0648\u062D\u062F\u0629 \u0627\u0644\u0639\u0646\u0635\u0631",item_unit_updated:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0648\u062D\u062F\u0629 \u0627\u0644\u0639\u0646\u0635\u0631",item_unit_confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062F\u0627\u062F \u0648\u062D\u062F\u0629 \u0627\u0644\u0639\u0646\u0635\u0631 \u0647\u0630\u0647",already_in_use:"\u0648\u062D\u062F\u0629 \u0627\u0644\u0639\u0646\u0635\u0631 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0628\u0627\u0644\u0641\u0639\u0644",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0648\u062D\u062F\u0629 \u0627\u0644\u0639\u0646\u0635\u0631 \u0628\u0646\u062C\u0627\u062D"},notes:{title:"\u0645\u0644\u0627\u062D\u0638\u0627\u062A",description:"\u062A\u0648\u0641\u064A\u0631 \u0627\u0644\u0648\u0642\u062A \u0639\u0646 \u0637\u0631\u064A\u0642 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0627\u062A \u0648\u0625\u0639\u0627\u062F\u0629 \u0627\u0633\u062A\u062E\u062F\u0627\u0645\u0647\u0627 \u0639\u0644\u0649 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0648\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A \u0648\u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A.",notes:"\u0645\u0644\u0627\u062D\u0638\u0627\u062A",type:"\u0646\u0648\u0639",add_note:"\u0627\u0636\u0641 \u0645\u0644\u0627\u062D\u0638\u0629",add_new_note:"\u0623\u0636\u0641 \u0645\u0644\u0627\u062D\u0638\u0629 \u062C\u062F\u064A\u062F\u0629",name:"\u0627\u0633\u0645",edit_note:"\u062A\u062D\u0631\u064A\u0631 \u0645\u0630\u0643\u0631\u0629",note_added:"\u062A\u0645\u062A \u0625\u0636\u0627\u0641\u0629 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0629",note_updated:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0629",note_confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0639\u0627\u062F\u0629 \u0647\u0630\u0647 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0629",already_in_use:"\u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0629 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0628\u0627\u0644\u0641\u0639\u0644",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0629 \u0628\u0646\u062C\u0627\u062D"}},account_settings:{profile_picture:"\u0635\u0648\u0631\u0629 \u0627\u0644\u0645\u0644\u0641 \u0627\u0644\u0634\u062E\u0635\u064A",name:"\u0627\u0644\u0627\u0633\u0645",email:"\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",password:"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",confirm_password:"\u0623\u0639\u062F \u0643\u062A\u0627\u0628\u0629 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",account_settings:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062C\u0633\u0627\u0628",save:"\u062D\u0641\u0638",section_description:"\u064A\u0645\u0643\u0646\u0643 \u062A\u062D\u062F\u064A\u062B \u0627\u0633\u0645\u0643 \u0648\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0648\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631 \u0628\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0627\u0644\u0646\u0645\u0648\u0630\u062C \u0623\u062F\u0646\u0627\u0647.",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062D\u0633\u0627\u0628 \u0628\u0646\u062C\u0627\u062D"},user_profile:{name:"\u0627\u0644\u0627\u0633\u0645",email:"\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",password:"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",confirm_password:"\u0623\u0639\u062F \u0643\u062A\u0627\u0628\u0629 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631"},notification:{title:"\u0627\u0644\u0625\u0634\u0639\u0627\u0631\u0627\u062A",email:"\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0625\u0634\u0639\u0627\u0631\u0627\u062A \u0625\u0644\u0649",description:"\u0645\u0627 \u0647\u064A \u0625\u0634\u0639\u0627\u0631\u0627\u062A \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0627\u0644\u062A\u064A \u062A\u0631\u063A\u0628 \u0641\u064A \u062A\u0644\u0642\u064A\u0647\u0627 \u0639\u0646\u062F\u0645\u0627 \u064A\u062A\u063A\u064A\u0631 \u0634\u064A\u0621 \u0645\u0627\u061F",invoice_viewed:"\u062A\u0645 \u0639\u0631\u0636 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",invoice_viewed_desc:"\u0639\u0646\u062F\u0645\u0627 \u064A\u0633\u062A\u0639\u0631\u0636 \u0639\u0645\u064A\u0644\u0643 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0627\u0644\u0645\u0631\u0633\u0644\u0629 \u0639\u0628\u0631 \u0627\u0644\u0634\u0627\u0634\u0629 \u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629.",estimate_viewed:"\u062A\u0645 \u0639\u0631\u0636 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",estimate_viewed_desc:"\u0639\u0646\u062F\u0645\u0627 \u064A\u0633\u062A\u0639\u0631\u0636 \u0639\u0645\u064A\u0644\u0643 \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0627\u0644\u0645\u0631\u0633\u0644\u0629 \u0639\u0628\u0631 \u0627\u0644\u0634\u0627\u0634\u0629 \u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629.",save:"\u062D\u0641\u0638",email_save_message:"\u062A\u0645 \u062D\u0641\u0638 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0628\u0646\u062C\u0627\u062D",please_enter_email:"\u0641\u0636\u0644\u0627\u064B \u0623\u062F\u062E\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A"},roles:{title:"Roles",description:"Manage the roles & permissions of this company",save:"Save",add_new_role:"Add New Role",role_name:"Role Name",added_on:"Added on",add_role:"Add Role",edit_role:"Edit Role",name:"Name",permission:"Permission | Permissions",select_all:"Select All",none:"None",confirm_delete:"You will not be able to recover this Role",created_message:"Role created successfully",updated_message:"Role updated successfully",deleted_message:"Role deleted successfully",already_in_use:"Role is already in use"},exchange_rate:{exchange_rate:"Exchange Rate",title:"Fix Currency Exchange issues",description:"Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.",drivers:"Drivers",new_driver:"Add New Provider",edit_driver:"Edit Provider",select_driver:"Select Driver",update:"select exchange rate ",providers_description:"Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.",key:"API Key",name:"Name",driver:"Driver",is_default:"IS DEFAULT",currency:"Currencies",exchange_rate_confirm_delete:"You will not be able to recover this driver",created_message:"Provider Created successfully",updated_message:"Provider Updated Successfully",deleted_message:"Provider Deleted Successfully",error:" You cannot Delete Active Driver",default_currency_error:"This currency is already used in one of the Active Provider",exchange_help_text:"Enter exchange rate to convert from {currency} to {baseCurrency}",currency_freak:"Currency Freak",currency_layer:"Currency Layer",open_exchange_rate:"Open Exchange Rate",currency_converter:"Currency Converter",server:"Server",url:"URL",active:"Active",currency_help_text:"This provider will only be used on above selected currencies",currency_in_used:"The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again."},tax_types:{title:"\u0623\u0646\u0648\u0627\u0639 \u0627\u0644\u0636\u0631\u0627\u0626\u0628",add_tax:"\u0623\u0636\u0641 \u0636\u0631\u064A\u0628\u0629",edit_tax:"\u062A\u062D\u0631\u064A\u0631 \u0627\u0644\u0636\u0631\u064A\u0628\u0629",description:"\u064A\u0645\u0643\u0646\u0643 \u0625\u0636\u0627\u0641\u0629 \u0623\u0648 \u0625\u0632\u0627\u0644\u0629 \u0627\u0644\u0636\u0631\u0627\u0626\u0628 \u0643\u0645\u0627 \u064A\u062D\u0644\u0648 \u0644\u0643. \u0627\u0644\u0646\u0638\u0627\u0645 \u064A\u062F\u0639\u0645 \u0627\u0644\u0636\u0631\u0627\u0626\u0628 \u0639\u0644\u0649 \u0627\u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0641\u0631\u062F\u064A\u0629 \u0648\u0643\u0630\u0644\u0643 \u0639\u0644\u0649 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629.",add_new_tax:"\u0625\u0636\u0627\u0641\u0629 \u0636\u0631\u064A\u0628\u0629 \u062C\u062F\u064A\u062F\u0629",tax_settings:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u0636\u0631\u064A\u0628\u0629",tax_per_item:"\u0636\u0631\u064A\u0628\u0629 \u0639\u0644\u0649 \u0627\u0644\u0635\u0646\u0641",tax_name:"\u0627\u0633\u0645 \u0627\u0644\u0636\u0631\u064A\u0628\u0629",compound_tax:"\u0636\u0631\u064A\u0628\u0629 \u0645\u062C\u0645\u0639\u0629",percent:"\u0646\u0633\u0628\u0629 \u0645\u0624\u0648\u064A\u0629",action:"\u0625\u062C\u0631\u0627\u0621",tax_setting_description:"\u0642\u0645 \u0628\u062A\u0645\u0643\u064A\u0646 \u0647\u0630\u0627 \u0625\u0630\u0627 \u0643\u0646\u062A \u062A\u0631\u064A\u062F \u0625\u0636\u0627\u0641\u0629 \u0636\u0631\u0627\u0626\u0628 \u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0627\u0644\u0641\u0631\u062F\u064A\u0629. \u0628\u0634\u0643\u0644 \u0627\u0641\u062A\u0631\u0627\u0636\u064A \u060C \u062A\u0636\u0627\u0641 \u0627\u0644\u0636\u0631\u0627\u0626\u0628 \u0645\u0628\u0627\u0634\u0631\u0629 \u0625\u0644\u0649 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629.",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0646\u0648\u0639 \u0627\u0644\u0636\u0631\u064A\u0628\u0629 \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0646\u0648\u0639 \u0627\u0644\u0636\u0631\u064A\u0628\u0629 \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0646\u0648\u0639 \u0627\u0644\u0636\u0631\u064A\u0628\u0629 \u0628\u0646\u062C\u0627\u062D",confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0646\u0648\u0639 \u0627\u0644\u0636\u0631\u064A\u0629 \u0647\u0630\u0627",already_in_use:"\u0636\u0631\u064A\u0628\u0629 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645"},payment_modes:{title:"Payment Modes",description:"Modes of transaction for payments",add_payment_mode:"Add Payment Mode",edit_payment_mode:"Edit Payment Mode",mode_name:"Mode Name",payment_mode_added:"Payment Mode Added",payment_mode_updated:"Payment Mode Updated",payment_mode_confirm_delete:"You will not be able to recover this Payment Mode",already_in_use:"Payment Mode is already in use",deleted_message:"Payment Mode deleted successfully"},expense_category:{title:"\u0641\u0626\u0627\u062A \u0627\u0644\u0646\u0641\u0642\u0627\u062A",action:"\u0625\u062C\u0631\u0627\u0621",description:"\u0627\u0644\u0641\u0626\u0627\u062A \u0645\u0637\u0644\u0648\u0628\u0629 \u0644\u0625\u0636\u0627\u0641\u0629 \u0625\u062F\u062E\u0627\u0644\u0627\u062A \u0627\u0644\u0646\u0641\u0642\u0627\u062A. \u064A\u0645\u0643\u0646\u0643 \u0625\u0636\u0627\u0641\u0629 \u0623\u0648 \u0625\u0632\u0627\u0644\u0629 \u0647\u0630\u0647 \u0627\u0644\u0641\u0626\u0627\u062A \u0648\u0641\u0642\u064B\u0627 \u0644\u062A\u0641\u0636\u064A\u0644\u0627\u062A\u0643.",add_new_category:"\u0625\u0636\u0627\u0641\u0629 \u0641\u0626\u0629 \u062C\u062F\u064A\u062F\u0629",add_category:"\u0625\u0636\u0627\u0641\u0629 \u0641\u0626\u0629",edit_category:"\u062A\u062D\u0631\u064A\u0631 \u0627\u0644\u0641\u0626\u0629",category_name:"\u0627\u0633\u0645 \u0627\u0644\u0641\u0626\u0629",category_description:"\u0627\u0644\u0648\u0635\u0641",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0646\u0648\u0639 \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0646\u0648\u0639 \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0646\u0648\u0639 \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0628\u0646\u062C\u0627\u062D",confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0646\u0648\u0639 \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0647\u0630\u0627",already_in_use:"\u0646\u0648\u0639 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645"},preferences:{currency:"\u0627\u0644\u0639\u0645\u0644\u0629",default_language:"\u0627\u0644\u0644\u063A\u0629 \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A\u0629",time_zone:"\u0627\u0644\u0645\u0646\u0637\u0629 \u0627\u0644\u0632\u0645\u0646\u064A\u0629",fiscal_year:"\u0627\u0644\u0633\u0646\u0629 \u0627\u0644\u0645\u0627\u0644\u064A\u0629",date_format:"\u0635\u064A\u063A\u0629 \u0627\u0644\u062A\u0627\u0631\u064A\u062E",discount_setting:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062E\u0635\u0645",discount_per_item:"\u062E\u0635\u0645 \u0639\u0644\u0649 \u0627\u0644\u0635\u0646\u0641 ",discount_setting_description:"\u0642\u0645 \u0628\u062A\u0645\u0643\u064A\u0646 \u0647\u0630\u0627 \u0625\u0630\u0627 \u0643\u0646\u062A \u062A\u0631\u064A\u062F \u0625\u0636\u0627\u0641\u0629 \u062E\u0635\u0645 \u0625\u0644\u0649 \u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0627\u0644\u0641\u0631\u062F\u064A\u0629. \u0628\u0634\u0643\u0644 \u0627\u0641\u062A\u0631\u0627\u0636\u064A \u060C \u064A\u062A\u0645 \u0625\u0636\u0627\u0641\u0629 \u0627\u0644\u062E\u0635\u0645 \u0645\u0628\u0627\u0634\u0631\u0629 \u0625\u0644\u0649 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"\u062D\u0641\u0638",preference:"\u062A\u0641\u0636\u064A\u0644 | \u062A\u0641\u0636\u064A\u0644\u0627\u062A",general_settings:"\u0627\u0644\u062A\u0641\u0636\u064A\u0644\u0627\u062A \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A\u0629 \u0644\u0644\u0646\u0638\u0627\u0645.",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062A\u0641\u0636\u064A\u0644\u0627\u062A \u0628\u0646\u062C\u0627\u062D",select_language:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0644\u063A\u0629",select_time_zone:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0645\u0646\u0637\u0629 \u0627\u0644\u0632\u0645\u0646\u064A\u0629",select_date_format:"\u0627\u062E\u062A\u0631 \u0635\u064A\u063A\u0629 \u0627\u0644\u062A\u0627\u0631\u064A\u062E",select_financial_year:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0633\u0646\u0629 \u0627\u0644\u0645\u0627\u0644\u064A\u0629",recurring_invoice_status:"Recurring Invoice Status",create_status:"Create Status",active:"Active",on_hold:"On Hold",update_status:"Update Status",completed:"Completed",company_currency_unchangeable:"Company currency cannot be changed"},update_app:{title:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0646\u0638\u0627\u0645",description:"\u064A\u0645\u0643\u0646\u0643 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0646\u0638\u0627\u0645 \u0628\u0633\u0647\u0648\u0644\u0629 \u0639\u0646 \u0637\u0631\u064A\u0642 \u0627\u0644\u0628\u062D\u062B \u0639\u0646 \u062A\u062D\u062F\u064A\u062B \u062C\u062F\u064A\u062F \u0628\u0627\u0644\u0646\u0642\u0631 \u0641\u0648\u0642 \u0627\u0644\u0632\u0631 \u0623\u062F\u0646\u0627\u0647",check_update:"\u062A\u062D\u0642\u0642 \u0645\u0646 \u0627\u0644\u062A\u062D\u062F\u064A\u062B\u0627\u062A",avail_update:"\u062A\u062D\u062F\u064A\u062B \u062C\u062F\u064A\u062F \u0645\u062A\u0648\u0641\u0631",next_version:"\u0627\u0644\u0646\u0633\u062E\u0629 \u0627\u0644\u062C\u062F\u064A\u062F\u0629",requirements:"\u0627\u0644\u0645\u062A\u0637\u0644\u0628\u0627\u062A",update:"\u062D\u062F\u062B \u0627\u0644\u0622\u0646",update_progress:"\u0642\u064A\u062F \u0627\u0644\u062A\u062D\u062F\u064A\u062B...",progress_text:"\u0633\u0648\u0641 \u064A\u0633\u062A\u063A\u0631\u0642 \u0627\u0644\u062A\u062D\u062F\u064A\u062B \u0628\u0636\u0639 \u062F\u0642\u0627\u0626\u0642. \u064A\u0631\u062C\u0649 \u0639\u062F\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0634\u0627\u0634\u0629 \u0623\u0648 \u0625\u063A\u0644\u0627\u0642 \u0627\u0644\u0646\u0627\u0641\u0630\u0629 \u0642\u0628\u0644 \u0627\u0646\u062A\u0647\u0627\u0621 \u0627\u0644\u062A\u062D\u062F\u064A\u062B",update_success:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0646\u0638\u0627\u0645! \u064A\u0631\u062C\u0649 \u0627\u0644\u0627\u0646\u062A\u0638\u0627\u0631 \u062D\u062A\u0649 \u064A\u062A\u0645 \u0625\u0639\u0627\u062F\u0629 \u062A\u062D\u0645\u064A\u0644 \u0646\u0627\u0641\u0630\u0629 \u0627\u0644\u0645\u062A\u0635\u0641\u062D \u062A\u0644\u0642\u0627\u0626\u064A\u064B\u0627.",latest_message:"\u0644\u0627 \u064A\u0648\u062C\u062F \u062A\u062D\u062F\u064A\u062B\u0627\u062A \u0645\u062A\u0648\u0641\u0631\u0629! \u0644\u062F\u064A\u0643 \u062D\u0627\u0644\u064A\u0627\u064B \u0623\u062D\u062F\u062B \u0646\u0633\u062E\u0629.",current_version:"\u0627\u0644\u0646\u0633\u062E\u0629 \u0627\u0644\u062D\u0627\u0644\u064A\u0629",download_zip_file:"\u062A\u0646\u0632\u064A\u0644 \u0645\u0644\u0641 ZIP",unzipping_package:"\u062D\u0632\u0645\u0629 \u0641\u0643 \u0627\u0644\u0636\u063A\u0637",copying_files:"\u0646\u0633\u062E \u0627\u0644\u0645\u0644\u0641\u0627\u062A",deleting_files:"\u062D\u0630\u0641 \u0627\u0644\u0645\u0644\u0641\u0627\u062A \u0627\u0644\u063A\u064A\u0631 \u0645\u0633\u062A\u062E\u062F\u0645\u0629",running_migrations:"\u0625\u062F\u0627\u0631\u0629 \u0639\u0645\u0644\u064A\u0627\u062A \u0627\u0644\u062A\u0631\u062D\u064A\u0644",finishing_update:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062A\u0634\u0637\u064A\u0628",update_failed:"\u0641\u0634\u0644 \u0627\u0644\u062A\u062D\u062F\u064A\u062B",update_failed_text:"\u0622\u0633\u0641! \u0641\u0634\u0644 \u0627\u0644\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062E\u0627\u0635 \u0628\u0643 \u0641\u064A: {step} \u062E\u0637\u0648\u0629",update_warning:"All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating."},backup:{title:"\u0627\u0644\u0646\u0633\u062E \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A | \u0627\u0644\u0646\u0633\u062E \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629",description:"\u0627\u0644\u0646\u0633\u062E\u0629 \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629 \u0647\u064A \u0645\u0644\u0641 \u0645\u0636\u063A\u0648\u0637 \u064A\u062D\u062A\u0648\u064A \u0639\u0644\u0649 \u062C\u0645\u064A\u0639 \u0627\u0644\u0645\u0644\u0641\u0627\u062A \u0641\u064A \u0627\u0644\u062F\u0644\u0627\u0626\u0644 \u0627\u0644\u062A\u064A \u062A\u062D\u062F\u062F\u0647\u0627 \u0645\u0639 \u062A\u0641\u0631\u064A\u063A \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u062E\u0627\u0635\u0629 \u0628\u0643",new_backup:"\u0625\u0636\u0627\u0641\u0629 \u0646\u0633\u062E\u0629 \u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629 \u062C\u062F\u064A\u062F\u0629",create_backup:"\u0627\u0646\u0634\u0626 \u0646\u0633\u062E\u0629 \u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629",select_backup_type:"\u062D\u062F\u062F \u0646\u0648\u0639 \u0627\u0644\u0646\u0633\u062E \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A",backup_confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0639\u0627\u062F\u0629 \u0647\u0630\u0647 \u0627\u0644\u0646\u0633\u062E\u0629 \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629",path:"\u0645\u0633\u0627\u0631",new_disk:"\u0642\u0631\u0635 \u062C\u062F\u064A\u062F",created_at:"\u0623\u0646\u0634\u0626\u062A \u0641\u064A",size:"\u062D\u062C\u0645 \u0627\u0644\u0645\u0644\u0641",dropbox:"\u0628\u0635\u0646\u062F\u0648\u0642 \u0627\u0644\u0625\u0633\u0642\u0627\u0637",local:"\u0645\u062D\u0644\u064A",healthy:"\u0635\u062D\u064A",amount_of_backups:"\u0643\u0645\u064A\u0629 \u0627\u0644\u0646\u0633\u062E \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629",newest_backups:"\u0623\u062D\u062F\u062B \u0627\u0644\u0646\u0633\u062E \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629",used_storage:"\u0627\u0644\u062A\u062E\u0632\u064A\u0646 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645",select_disk:"\u062D\u062F\u062F \u0627\u0644\u0642\u0631\u0635",action:"\u0639\u0645\u0644",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0646\u0633\u062E\u0629 \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629 \u0628\u0646\u062C\u0627\u062D",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0646\u0633\u062E\u0629 \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629 \u0628\u0646\u062C\u0627\u062D",invalid_disk_credentials:"\u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0639\u062A\u0645\u0627\u062F \u063A\u064A\u0631 \u0635\u0627\u0644\u062D\u0629 \u0644\u0644\u0642\u0631\u0635 \u0627\u0644\u0645\u062D\u062F\u062F"},disk:{title:"\u0642\u0631\u0635 \u0627\u0644\u0645\u0644\u0641\u0627\u062A | \u0623\u0642\u0631\u0627\u0635 \u0627\u0644\u0645\u0644\u0641\u0627\u062A",description:"\u0628\u0634\u0643\u0644 \u0627\u0641\u062A\u0631\u0627\u0636\u064A \u060C \u0633\u062A\u0633\u062A\u062E\u062F\u0645 Crater \u0627\u0644\u0642\u0631\u0635 \u0627\u0644\u0645\u062D\u0644\u064A \u0644\u062D\u0641\u0638 \u0627\u0644\u0646\u0633\u062E \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629 \u0648\u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631 \u0648\u0645\u0644\u0641\u0627\u062A \u0627\u0644\u0635\u0648\u0631 \u0627\u0644\u0623\u062E\u0631\u0649. \u064A\u0645\u0643\u0646\u0643 \u062A\u0643\u0648\u064A\u0646 \u0623\u0643\u062B\u0631 \u0645\u0646 \u0628\u0631\u0627\u0645\u062C \u062A\u0634\u063A\u064A\u0644 \u0642\u0631\u0635 \u0645\u062B\u0644 DigitalOcean \u0648 S3 \u0648 Dropbox \u0648\u0641\u0642\u064B\u0627 \u0644\u062A\u0641\u0636\u064A\u0644\u0627\u062A\u0643.",created_at:"\u0623\u0646\u0634\u0626\u062A \u0641\u064A",dropbox:"\u0628\u0635\u0646\u062F\u0648\u0642 \u0627\u0644\u0625\u0633\u0642\u0627\u0637",name:"\u0627\u0633\u0645",driver:"\u0633\u0627\u0626\u0642",disk_type:"\u0646\u0648\u0639",disk_name:"\u0627\u0633\u0645 \u0627\u0644\u0642\u0631\u0635",new_disk:"\u0625\u0636\u0627\u0641\u0629 \u0642\u0631\u0635 \u062C\u062F\u064A\u062F",filesystem_driver:"\u0628\u0631\u0646\u0627\u0645\u062C \u062A\u0634\u063A\u064A\u0644 \u0646\u0638\u0627\u0645 \u0627\u0644\u0645\u0644\u0641\u0627\u062A",local_driver:"\u0633\u0627\u0626\u0642 \u0645\u062D\u0644\u064A",local_root:"\u0627\u0644\u062C\u0630\u0631 \u0627\u0644\u0645\u062D\u0644\u064A",public_driver:"\u0633\u0627\u0626\u0642 \u0639\u0627\u0645",public_root:"\u0627\u0644\u062C\u0630\u0631 \u0627\u0644\u0639\u0627\u0645",public_url:"URL \u0627\u0644\u0639\u0627\u0645",public_visibility:"\u0627\u0644\u0631\u0624\u064A\u0629 \u0627\u0644\u0639\u0627\u0645\u0629",media_driver:"\u0633\u0627\u0626\u0642 \u0648\u0633\u0627\u0626\u0637",media_root:"\u062C\u0630\u0631 \u0627\u0644\u0648\u0633\u0627\u0626\u0637",aws_driver:"\u0628\u0631\u0646\u0627\u0645\u062C \u062A\u0634\u063A\u064A\u0644 AWS",aws_key:"\u0645\u0641\u062A\u0627\u062D AWS",aws_secret:"AWS Secret",aws_region:"\u0645\u0646\u0637\u0642\u0629 AWS",aws_bucket:"\u062D\u0627\u0648\u064A\u0629 AWS",aws_root:"AWS \u0627\u0644\u062C\u0630\u0631",do_spaces_type:"\u0647\u0644 \u0646\u0648\u0639 \u0627\u0644\u0645\u0633\u0627\u062D\u0627\u062A",do_spaces_key:"\u0645\u0641\u062A\u0627\u062D Do Spaces",do_spaces_secret:"\u0647\u0644 \u0627\u0644\u0645\u0633\u0627\u062D\u0627\u062A \u0633\u0631\u064A\u0629",do_spaces_region:"\u0647\u0644 \u0645\u0646\u0637\u0642\u0629 \u0627\u0644\u0645\u0633\u0627\u062D\u0627\u062A",do_spaces_bucket:"\u0647\u0644 \u062F\u0644\u0648 \u0627\u0644\u0645\u0633\u0627\u062D\u0627\u062A",do_spaces_endpoint:"\u0642\u0645 \u0628\u0639\u0645\u0644 \u0646\u0642\u0637\u0629 \u0646\u0647\u0627\u064A\u0629 \u0644\u0644\u0645\u0633\u0627\u0641\u0627\u062A",do_spaces_root:"\u0639\u0645\u0644 \u0627\u0644\u062C\u0630\u0631 \u0644\u0644\u0645\u0633\u0627\u0641\u0627\u062A",dropbox_type:"\u0646\u0648\u0639 Dropbox",dropbox_token:"\u0631\u0645\u0632 Dropbox",dropbox_key:"\u0645\u0641\u062A\u0627\u062D Dropbox",dropbox_secret:"Dropbox Secret",dropbox_app:"\u062A\u0637\u0628\u064A\u0642 Dropbox",dropbox_root:"\u062C\u0630\u0631 Dropbox",default_driver:"\u0628\u0631\u0646\u0627\u0645\u062C \u0627\u0644\u062A\u0634\u063A\u064A\u0644 \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A",is_default:"\u0623\u0645\u0631 \u0627\u0641\u062A\u0631\u0627\u0636\u064A",set_default_disk:"\u062A\u0639\u064A\u064A\u0646 \u0627\u0644\u0642\u0631\u0635 \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A",set_default_disk_confirm:"\u0633\u064A\u062A\u0645 \u062A\u0639\u064A\u064A\u0646 \u0647\u0630\u0627 \u0627\u0644\u0642\u0631\u0635 \u0643\u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A \u0648\u0633\u064A\u062A\u0645 \u062D\u0641\u0638 \u062C\u0645\u064A\u0639 \u0645\u0644\u0641\u0627\u062A PDF \u0627\u0644\u062C\u062F\u064A\u062F\u0629 \u0639\u0644\u0649 \u0647\u0630\u0627 \u0627\u0644\u0642\u0631\u0635",success_set_default_disk:"\u062A\u0645 \u062A\u0639\u064A\u064A\u0646 \u0627\u0644\u0642\u0631\u0635 \u0643\u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A \u0628\u0646\u062C\u0627\u062D",save_pdf_to_disk:"\u062D\u0641\u0638 \u0645\u0644\u0641\u0627\u062A PDF \u0639\u0644\u0649 \u0627\u0644\u0642\u0631\u0635",disk_setting_description:"\u0642\u0645 \u0628\u062A\u0645\u0643\u064A\u0646 \u0647\u0630\u0627 \u060C \u0625\u0630\u0627 \u0643\u0646\u062A \u062A\u0631\u063A\u0628 \u0641\u064A \u062D\u0641\u0638 \u0646\u0633\u062E\u0629 \u0645\u0646 \u0643\u0644 \u0641\u0627\u062A\u0648\u0631\u0629 \u060C \u062A\u0642\u062F\u064A\u0631 \u0648\u0625\u064A\u0635\u0627\u0644 \u062F\u0641\u0639 PDF \u0639\u0644\u0649 \u0627\u0644\u0642\u0631\u0635 \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A \u0627\u0644\u062E\u0627\u0635 \u0628\u0643 \u062A\u0644\u0642\u0627\u0626\u064A\u064B\u0627. \u0633\u064A\u0624\u062F\u064A \u062A\u0634\u063A\u064A\u0644 \u0647\u0630\u0627 \u0627\u0644\u062E\u064A\u0627\u0631 \u0625\u0644\u0649 \u062A\u0642\u0644\u064A\u0644 \u0648\u0642\u062A \u0627\u0644\u062A\u062D\u0645\u064A\u0644 \u0639\u0646\u062F \u0639\u0631\u0636 \u0645\u0644\u0641\u0627\u062A PDF.",select_disk:"\u062D\u062F\u062F \u0627\u0644\u0642\u0631\u0635",disk_settings:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u0642\u0631\u0635",confirm_delete:"\u0644\u0646 \u062A\u062A\u0623\u062B\u0631 \u0627\u0644\u0645\u0644\u0641\u0627\u062A \u0648\u0627\u0644\u0645\u062C\u0644\u062F\u0627\u062A \u0627\u0644\u0645\u0648\u062C\u0648\u062F\u0629 \u0641\u064A \u0627\u0644\u0642\u0631\u0635 \u0627\u0644\u0645\u062D\u062F\u062F \u0648\u0644\u0643\u0646 \u0633\u064A\u062A\u0645 \u062D\u0630\u0641 \u0627\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u0642\u0631\u0635 \u0627\u0644\u062E\u0627\u0635 \u0628\u0643 \u0645\u0646 Crater",action:"\u0639\u0645\u0644",edit_file_disk:"\u062A\u0639\u062F\u064A\u0644 \u0642\u0631\u0635 \u0627\u0644\u0645\u0644\u0641",success_create:"\u062A\u0645\u062A \u0625\u0636\u0627\u0641\u0629 \u0627\u0644\u0642\u0631\u0635 \u0628\u0646\u062C\u0627\u062D",success_update:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0642\u0631\u0635 \u0628\u0646\u062C\u0627\u062D",error:"\u0641\u0634\u0644 \u0625\u0636\u0627\u0641\u0629 \u0627\u0644\u0642\u0631\u0635",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0645\u0644\u0641 \u0627\u0644\u0642\u0631\u0635 \u0628\u0646\u062C\u0627\u062D",disk_variables_save_successfully:"\u062A\u0645 \u062A\u0643\u0648\u064A\u0646 \u0627\u0644\u0642\u0631\u0635 \u0628\u0646\u062C\u0627\u062D",disk_variables_save_error:"\u0641\u0634\u0644 \u062A\u0643\u0648\u064A\u0646 \u0627\u0644\u0642\u0631\u0635.",invalid_disk_credentials:"\u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0639\u062A\u0645\u0627\u062F \u063A\u064A\u0631 \u0635\u0627\u0644\u062D\u0629 \u0644\u0644\u0642\u0631\u0635 \u0627\u0644\u0645\u062D\u062F\u062F"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},Vr={account_info:"\u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0627\u0644\u062D\u0633\u0627\u0628",account_info_desc:"\u0633\u064A\u062A\u0645 \u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0627\u0644\u062A\u0641\u0627\u0635\u064A\u0644 \u0623\u062F\u0646\u0627\u0647 \u0644\u0625\u0646\u0634\u0627\u0621 \u062D\u0633\u0627\u0628 \u0627\u0644\u0645\u0633\u0624\u0648\u0644 \u0627\u0644\u0631\u0626\u064A\u0633\u064A. \u0643\u0645\u0627 \u064A\u0645\u0643\u0646\u0643 \u062A\u063A\u064A\u064A\u0631 \u0627\u0644\u062A\u0641\u0627\u0635\u064A\u0644 \u0641\u064A \u0623\u064A \u0648\u0642\u062A \u0628\u0639\u062F \u062A\u0633\u062C\u064A\u0644 \u0627\u0644\u062F\u062E\u0648\u0644.",name:"\u0627\u0644\u0627\u0633\u0645",email:"\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",password:"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",confirm_password:"\u0623\u0639\u062F \u0643\u062A\u0627\u0628\u0629 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",save_cont:"\u062D\u0641\u0638 \u0648\u0627\u0633\u062A\u0645\u0631\u0627\u0631",company_info:"\u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0627\u0644\u0634\u0631\u0643\u0629",company_info_desc:"\u0633\u064A\u062A\u0645 \u0639\u0631\u0636 \u0647\u0630\u0647 \u0627\u0644\u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0639\u0644\u0649 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631. \u0644\u0627\u062D\u0638 \u0623\u0646\u0647 \u064A\u0645\u0643\u0646\u0643 \u062A\u0639\u062F\u064A\u0644 \u0647\u0630\u0627 \u0644\u0627\u062D\u0642\u064B\u0627 \u0641\u064A \u0635\u0641\u062D\u0629 \u0627\u0644\u0625\u0639\u062F\u0627\u062F\u0627\u062A.",company_name:"\u0627\u0633\u0645 \u0627\u0644\u0634\u0631\u0643\u0629",company_logo:"\u0634\u0639\u0627\u0631 \u0627\u0644\u0634\u0631\u0643\u0629",logo_preview:"\u0627\u0633\u062A\u0639\u0631\u0627\u0636 \u0627\u0644\u0634\u0639\u0627\u0631",preferences:"\u0627\u0644\u062A\u0641\u0636\u064A\u0644\u0627\u062A",preferences_desc:"\u0627\u0644\u062A\u0641\u0636\u064A\u0644\u0627\u062A \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A\u0629 \u0644\u0644\u0646\u0638\u0627\u0645",currency_set_alert:"The company's currency cannot be changed later.",country:"\u0627\u0644\u062F\u0648\u0644\u0629",state:"\u0627\u0644\u0648\u0644\u0627\u064A\u0629/\u0627\u0644\u0645\u0646\u0637\u0642\u0629",city:"\u0627\u0644\u0645\u062F\u064A\u0646\u0629",address:"\u0627\u0644\u0639\u0646\u0648\u0627\u0646",street:"\u0627\u0644\u0639\u0646\u0648\u0627\u0646 1 | \u0627\u0644\u0639\u0646\u0648\u0627\u0646 2",phone:"\u0627\u0644\u0647\u0627\u062A\u0641",zip_code:"\u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0628\u0631\u064A\u062F\u064A",go_back:"\u0644\u0644\u062E\u0644\u0641",currency:"\u0627\u0644\u0639\u0645\u0644\u0629",language:"\u0627\u0644\u0644\u063A\u0629",time_zone:"\u0627\u0644\u0645\u0646\u0637\u0629 \u0627\u0644\u0632\u0645\u0646\u064A\u0629",fiscal_year:"\u0627\u0644\u0633\u0646\u0629 \u0627\u0644\u0645\u0627\u0644\u064A\u0629",date_format:"\u0635\u064A\u063A\u0629 \u0627\u0644\u062A\u0627\u0631\u064A\u062E",from_address:"\u0645\u0646 \u0627\u0644\u0639\u0646\u0648\u0627\u0646",username:"\u0627\u0633\u0645 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645",next:"\u0627\u0644\u062A\u0627\u0644\u064A",continue:"\u0627\u0633\u062A\u0645\u0631\u0627\u0631",skip:"\u062A\u062E\u0637\u064A",database:{database:"\u0639\u0646\u0648\u0627\u0646 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",connection:"\u0627\u062A\u0635\u0627\u0644 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",host:"\u062E\u0627\u062F\u0645 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",port:"\u0645\u0646\u0641\u0630 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",password:"\u0643\u0644\u0645\u0629 \u0645\u0631\u0648\u0631 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",app_url:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0625\u0646\u062A\u0631\u0646\u062A \u0644\u0644\u0646\u0638\u0627\u0645",app_domain:"\u0631\u0627\u0628\u0637 \u0627\u0644\u062A\u0637\u0628\u064A\u0642",username:"\u0627\u0633\u0645 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 \u0644\u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",db_name:"\u0633\u0645 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",db_path:"\u0645\u0633\u0627\u0631 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",desc:"\u0642\u0645 \u0628\u0625\u0646\u0634\u0627\u0621 \u0642\u0627\u0639\u062F\u0629 \u0628\u064A\u0627\u0646\u0627\u062A \u0639\u0644\u0649 \u0627\u0644\u062E\u0627\u062F\u0645 \u0627\u0644\u062E\u0627\u0635 \u0628\u0643 \u0648\u062A\u0639\u064A\u064A\u0646 \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0627\u0639\u062A\u0645\u0627\u062F \u0628\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0627\u0644\u0646\u0645\u0648\u0630\u062C \u0623\u062F\u0646\u0627\u0647."},permissions:{permissions:"\u0627\u0644\u0623\u0630\u0648\u0646\u0627\u062A",permission_confirm_title:"\u0647\u0644 \u0623\u0646\u062A \u0645\u062A\u0623\u0643\u062F \u0645\u0646 \u0627\u0644\u0627\u0633\u062A\u0645\u0631\u0627\u0631\u061F",permission_confirm_desc:"\u0641\u0634\u0644 \u0641\u062D\u0635 \u0623\u0630\u0648\u0646\u0627\u062A \u0627\u0644\u0645\u062C\u0644\u062F",permission_desc:"\u0641\u064A\u0645\u0627 \u064A\u0644\u064A \u0642\u0627\u0626\u0645\u0629 \u0623\u0630\u0648\u0646\u0627\u062A \u0627\u0644\u0645\u062C\u0644\u062F \u0627\u0644\u0645\u0637\u0644\u0648\u0628\u0629 \u062D\u062A\u0649 \u064A\u0639\u0645\u0644 \u0627\u0644\u062A\u0637\u0628\u064A\u0642. \u0641\u064A \u062D\u0627\u0644\u0629 \u0641\u0634\u0644 \u0641\u062D\u0635 \u0627\u0644\u0625\u0630\u0646 \u060C \u062A\u0623\u0643\u062F \u0645\u0646 \u062A\u062D\u062F\u064A\u062B \u0623\u0630\u0648\u0646\u0627\u062A \u0627\u0644\u0645\u062C\u0644\u062F."},verify_domain:{title:"\u0627\u0644\u062A\u062D\u0642\u0642 \u0645\u0646 \u0627\u0644\u0646\u0637\u0627\u0642",desc:"Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.",app_domain:"\u0646\u0637\u0627\u0642 \u0627\u0644\u062A\u0637\u0628\u064A\u0642",verify_now:"\u062A\u062D\u0642\u0642 \u0627\u0644\u0622\u0646",success:"\u062A\u0645 \u0627\u0644\u062A\u062D\u0642\u0642 \u0645\u0646 \u0627\u0644\u0646\u0637\u0627\u0642 \u0628\u0646\u062C\u0627\u062D.",failed:"Domain verification failed. Please enter valid domain name.",verify_and_continue:"\u0627\u0644\u062A\u062D\u0642\u0642 \u0648\u0627\u0644\u0645\u062A\u0627\u0628\u0639\u0629"},mail:{host:"\u062E\u0627\u062F\u0645 \u0627\u0644\u0628\u0631\u064A\u062F",port:"\u0645\u0646\u0641\u0630 \u0627\u0644\u0628\u0631\u064A\u062F",driver:"\u0645\u0634\u063A\u0644 \u0627\u0644\u0628\u0631\u064A\u062F",secret:"\u0633\u0631\u064A",mailgun_secret:"\u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0633\u0631\u064A \u0644\u0640 Mailgun",mailgun_domain:"\u0627\u0644\u0645\u062C\u0627\u0644",mailgun_endpoint:"\u0627\u0644\u0646\u0647\u0627\u064A\u0629 \u0627\u0644\u0637\u0631\u0641\u064A\u0629 \u0644\u0640 Mailgun",ses_secret:"SES \u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0633\u0631\u064A",ses_key:"SES \u0645\u0641\u062A\u0627\u062D",password:"\u0643\u0644\u0645\u0629 \u0645\u0631\u0648\u0631 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A",username:"\u0627\u0633\u0645 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 \u0644\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",mail_config:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A",from_name:"\u0627\u0633\u0645 \u0627\u0644\u0645\u0631\u0633\u0644",from_mail:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0644\u0644\u0645\u0631\u0633\u0644",encryption:"\u0635\u064A\u063A\u0629 \u0627 \u0644\u062A\u0634\u0641\u064A\u0631",mail_config_desc:"\u0623\u062F\u0646\u0627\u0647 \u0647\u0648 \u0646\u0645\u0648\u0630\u062C \u0644\u062A\u0643\u0648\u064A\u0646 \u0628\u0631\u0646\u0627\u0645\u062C \u062A\u0634\u063A\u064A\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0644\u0625\u0631\u0633\u0627\u0644 \u0631\u0633\u0627\u0626\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0645\u0646 \u0627\u0644\u062A\u0637\u0628\u064A\u0642. \u064A\u0645\u0643\u0646\u0643 \u0623\u064A\u0636\u064B\u0627 \u062A\u0647\u064A\u0626\u0629 \u0645\u0648\u0641\u0631\u064A \u0627\u0644\u062C\u0647\u0627\u062A \u0627\u0644\u062E\u0627\u0631\u062C\u064A\u0629 \u0645\u062B\u0644 Sendgrid \u0648 SES \u0625\u0644\u062E."},req:{system_req:"\u0645\u062A\u0637\u0644\u0628\u0627\u062A \u0627\u0644\u0646\u0638\u0627\u0645",php_req_version:"Php (\u0627\u0644\u0646\u0633\u062E\u0629 \u0627\u0644\u0645\u0637\u0644\u0648\u0628\u0629 {version} \u0628\u062D\u062F \u0623\u062F\u0646\u0649)",check_req:"\u0641\u062D\u0635 \u0645\u062A\u0637\u0644\u0628\u0627\u062A \u0627\u0644\u0646\u0638\u0627\u0645",system_req_desc:"\u064A\u062D\u062A\u0648\u064A \u0627\u0644\u0646\u0638\u0627\u0645 \u0639\u0644\u0649 \u0628\u0639\u0636 \u0645\u062A\u0637\u0644\u0628\u0627\u062A \u0627\u0644\u062E\u0627\u062F\u0645. \u062A\u0623\u0643\u062F \u0645\u0646 \u0623\u0646 \u062E\u0627\u062F\u0645\u0643 \u0644\u062F\u064A\u0647 \u0646\u0633\u062E\u0629 php \u0627\u0644\u0645\u0637\u0644\u0648\u0628\u0629 \u0648\u062C\u0645\u064A\u0639 \u0627\u0644\u0627\u0645\u062A\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u0645\u0630\u0643\u0648\u0631\u0629 \u0623\u062F\u0646\u0627\u0647."},errors:{migrate_failed:"\u0641\u0634\u0644 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u062C\u062F\u0627\u0648\u0644",database_variables_save_error:"\u063A\u064A\u0631 \u0642\u0627\u062F\u0631 \u0639\u0644\u0649 \u0627\u0644\u0627\u062A\u0635\u0627\u0644 \u0628\u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0628\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0627\u0644\u0642\u064A\u0645 \u0627\u0644\u0645\u0642\u062F\u0645\u0629.",mail_variables_save_error:"\u0641\u0634\u0644 \u062A\u0643\u0648\u064A\u0646 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A.",connection_failed:"\u0641\u0634\u0644 \u0627\u062A\u0635\u0627\u0644 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",database_should_be_empty:"\u064A\u062C\u0628 \u0623\u0646 \u062A\u0643\u0648\u0646 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0641\u0627\u0631\u063A\u0629"},success:{mail_variables_save_successfully:"\u062A\u0645 \u062A\u0643\u0648\u064A\u0646 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0628\u0646\u062C\u0627\u062D",database_variables_save_successfully:"\u062A\u0645 \u062A\u0643\u0648\u064A\u0646 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0628\u0646\u062C\u0627\u062D."}},Or={invalid_phone:"\u0631\u0642\u0645 \u0627\u0644\u0647\u0627\u062A\u0641 \u063A\u064A\u0631 \u0635\u062D\u064A\u062D",invalid_url:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0646\u062A\u0631\u0646\u062A \u063A\u064A\u0631 \u0635\u062D\u064A\u062D (\u0645\u062B\u0627\u0644: http://www.crater.com)",invalid_domain_url:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0646\u062A\u0631\u0646\u062A \u063A\u064A\u0631 \u0635\u062D\u064A\u062D (\u0645\u062B\u0627\u0644: crater.com)",required:"\u062D\u0642\u0644 \u0645\u0637\u0644\u0648\u0628",email_incorrect:"\u0628\u0631\u064A\u062F \u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u063A\u064A\u0631 \u0635\u062D\u064A\u062D.",email_already_taken:"\u0647\u0630\u0627 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0645\u0633\u062A\u062E\u062F\u0645 \u0645\u0633\u0628\u0642\u0627\u064B",email_does_not_exist:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0643\u0633\u062A\u062E\u062F\u0645 \u0628\u0647\u0630\u0627 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A",item_unit_already_taken:"\u0648\u062D\u062F\u0629 \u0627\u0644\u0628\u0646\u062F \u0642\u062F \u0627\u062A\u062E\u0630\u062A \u0628\u0627\u0644\u0641\u0639\u0644",payment_mode_already_taken:"\u0644\u0642\u062F \u062A\u0645 \u0628\u0627\u0644\u0641\u0639\u0644 \u0623\u062E\u0630 \u0637\u0631\u064A\u0642\u0629 \u0627\u0644\u062F\u0641\u0639",send_reset_link:"\u0623\u0631\u0633\u0627\u0644 \u0631\u0627\u0628\u0637 \u0627\u0633\u062A\u0639\u0627\u062F\u0629 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",not_yet:"\u0644\u064A\u0633 \u0628\u0639\u062F\u061F \u0623\u0639\u062F \u0627\u0644\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0622\u0646..",password_min_length:"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631 \u064A\u062C\u0628 \u0623\u0646 \u062A\u062A\u0643\u0648\u0646 \u0645\u0646 {count} \u0623\u062D\u0631\u0641 \u0639\u0644\u0649 \u0627\u0644\u0623\u0642\u0644",name_min_length:"\u0627\u0644\u0627\u0633\u0645 \u064A\u062C\u0628 \u0623\u0646 \u064A\u062A\u0643\u0648\u0646 \u0645\u0646 {count} \u0623\u062D\u0631\u0641 \u0639\u0644\u0649 \u0627\u0644\u0623\u0642\u0644",prefix_min_length:"Prefix must have at least {count} letters.",enter_valid_tax_rate:"\u0623\u062F\u062E\u0644 \u0645\u0639\u062F\u0644 \u0627\u0644\u0636\u0631\u064A\u0628\u0629 \u0628\u0634\u0643\u0644 \u0635\u062D\u064A\u062D",numbers_only:"\u0623\u0631\u0642\u0627\u0645 \u0641\u0642\u0637.",characters_only:"\u062D\u0631\u0648\u0641 \u0641\u0642\u0637.",password_incorrect:"\u064A\u062C\u0628 \u0623\u0646 \u062A\u0643\u0648\u0646 \u0643\u0644\u0645\u0627\u062A \u0627\u0644\u0645\u0631\u0648\u0631 \u0645\u062A\u0637\u0627\u0628\u0642\u0629",password_length:"\u064A\u062C\u0628 \u0623\u0646 \u062A\u0643\u0648\u0646 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631 \u0628\u0637\u0648\u0644 {count} \u062D\u0631\u0641.",qty_must_greater_than_zero:"\u0627\u0644\u0643\u0645\u064A\u0629 \u064A\u062C\u0628 \u0623\u0646 \u062A\u0643\u0648\u0646 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0635\u0641\u0631.",price_greater_than_zero:"\u0627\u0644\u0633\u0639\u0631 \u064A\u062C\u0628 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0635\u0641\u0631.",payment_greater_than_zero:"\u0627\u0644\u062F\u0641\u0639\u0629 \u064A\u062C\u0628 \u0623\u0646 \u062A\u0643\u0648\u0646 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0635\u0641\u0631.",payment_greater_than_due_amount:"\u0645\u0628\u0644\u063A \u0627\u0644\u062F\u0641\u0639\u0629 \u0623\u0643\u062B\u0631 \u0645\u0646 \u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0633\u062A\u062D\u0642 \u0644\u0647\u0630\u0647 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629.",quantity_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u062A\u0632\u064A\u062F \u0627\u0644\u0643\u0645\u064A\u0629 \u0639\u0646 20 \u0631\u0642\u0645\u0627\u064B.",price_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u064A\u0632\u064A\u062F \u0627\u0644\u0633\u0639\u0631 \u0639\u0646 20 \u0631\u0642\u0645\u0627\u064B.",price_minvalue:"\u064A\u062C\u0628 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0627\u0644\u0633\u0639\u0631 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0635\u0641\u0631.",amount_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u064A\u0632\u064A\u062F \u0627\u0644\u0645\u0628\u0644\u063A \u0639\u0646 20 \u0631\u0642\u0645\u0627\u064B.",amount_minvalue:"\u064A\u062C\u0628 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0627\u0644\u0645\u0628\u0644\u063A \u0623\u0643\u0628\u0631 \u0645\u0646 \u0635\u0641\u0631.",discount_maxlength:"Discount should not be greater than max discount",description_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u064A\u0632\u064A\u062F \u0627\u0644\u0648\u0635\u0641 \u0639\u0646 255 \u062D\u0631\u0641\u0627\u064B.",subject_maxlength:"\u064A\u062C\u0628 \u0627\u0644\u0627 \u064A\u0632\u064A\u062F \u0627\u0644\u0639\u0646\u0648\u0627\u0646 \u0639\u0646 100 \u062D\u0631\u0641.",message_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u064A\u0632\u064A\u062F \u062D\u062C\u0645 \u0627\u0644\u0646\u0635 \u0639\u0646 255 \u062D\u0631\u0641.",maximum_options_error:"\u0627\u0644\u062D\u062F \u0627\u0644\u0623\u0639\u0644\u0649 \u0647\u0648 {max} \u062E\u064A\u0627\u0631\u0627\u062A. \u0642\u0645 \u0628\u0625\u0632\u0627\u0644\u0629 \u0623\u062D\u062F \u0627\u0644\u062E\u064A\u0627\u0631\u0627\u062A \u0644\u062A\u062D\u062F\u064A\u062F \u062E\u064A\u0627\u0631 \u0622\u062E\u0631.",notes_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u064A\u0632\u064A\u062F \u062D\u062C\u0645 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0627\u062A \u0639\u0646 255 \u062D\u0631\u0641\u0627\u064B.",address_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u064A\u0632\u064A\u062F \u0627\u0644\u0639\u0646\u0648\u0627\u0646 \u0639\u0646 255 \u062D\u0631\u0641\u0627\u064B.",ref_number_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u064A\u0632\u064A\u062F \u0627\u0644\u0631\u0642\u0645 \u0627\u0644\u0645\u0631\u062C\u0639\u064A \u0639\u0646 255 \u062D\u0631\u0641\u0627\u064B.",prefix_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u062A\u0632\u064A\u062F \u0627\u0644\u0628\u0627\u062F\u0626\u0629 \u0639\u0646 5 \u0623\u062D\u0631\u0641.",something_went_wrong:"\u062E\u0637\u0623 \u063A\u064A\u0631 \u0645\u0639\u0631\u0648\u0641!",number_length_minvalue:"\u064A\u062C\u0628 \u0623\u0646 \u062A\u0643\u0648\u0646 \u0642\u064A\u0645\u0629 \u0627\u0644\u0631\u0642\u0645 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0635\u0641\u0631",at_least_one_ability:"Please select atleast one Permission.",valid_driver_key:"Please enter a valid {driver} key.",valid_exchange_rate:"Please enter a valid exchange rate.",company_name_not_same:"Company name must match with given name."},Lr={starter_plan:"This feature is available on Starter plan and onwards!",invalid_provider_key:"Please Enter Valid Provider API Key.",estimate_number_used:"The estimate number has already been taken.",invoice_number_used:"The invoice number has already been taken.",payment_attached:"This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.",payment_number_used:"The payment number has already been taken.",name_already_taken:"The name has already been taken.",receipt_does_not_exist:"Receipt does not exist.",customer_cannot_be_changed_after_payment_is_added:"Customer cannot be change after payment is added",invalid_credentials:"Invalid Credentials.",not_allowed:"Not Allowed",login_invalid_credentials:"These credentials do not match our records.",enter_valid_cron_format:"Please enter a valid cron format",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},Br="\u062A\u0642\u062F\u064A\u0631",qr="\u0631\u0642\u0645 \u062A\u0642\u062F\u064A\u0631",Kr="\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u062A\u0642\u062F\u064A\u0631",Wr="\u062A\u0627\u0631\u064A\u062E \u0627\u0646\u062A\u0647\u0627\u0621 \u0627\u0644\u0635\u0644\u0627\u062D\u064A\u0629",Zr="\u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",Hr="\u0631\u0642\u0645 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",Yr="\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",Gr="\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0627\u0633\u062A\u062D\u0642\u0627\u0642",Jr="\u0645\u0644\u0627\u062D\u0638\u0627\u062A",Qr="\u0627\u0644\u0623\u0635\u0646\u0627\u0641",Xr="\u0627\u0644\u0643\u0645\u064A\u0629",ed="\u0627\u0644\u0633\u0639\u0631",td="\u0627\u0644\u062E\u0635\u0645",ad="\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",id="\u0627\u0644\u0645\u062C\u0645\u0648\u0639 \u0627\u0644\u0641\u0631\u0639\u064A",nd="\u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",sd="\u0627\u0644\u062F\u0641\u0639",od="\u0627\u064A\u0635\u0627\u0644 \u0627\u0644\u062F\u0641\u0639",rd="\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u062F\u0641\u0639",dd="\u0631\u0642\u0645 \u0627\u0644\u062F\u0641\u0639\u0629",ld="\u0646\u0648\u0639 \u0627\u0644\u062F\u0641\u0639\u0629",cd="\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0633\u062A\u0644\u0645",_d="\u062A\u0642\u0631\u064A\u0631 \u0627\u0644\u0645\u0635\u0627\u0631\u064A\u0641",ud="\u0645\u062C\u0645\u0648\u0639 \u0627\u0644\u0645\u0635\u0627\u0631\u064A\u0641",md="\u062A\u0642\u0631\u064A\u0631 \u0627\u0644\u0627\u0631\u0628\u0627\u062D \u0648 \u0627\u0644\u062E\u0633\u0627\u0626\u0631",pd="\u062A\u0642\u0631\u064A\u0631 \u0639\u0645\u0644\u0627\u0621 \u0627\u0644\u0645\u0628\u064A\u0639\u0627\u062A",gd="\u062A\u0642\u0631\u064A\u0631 \u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u0628\u064A\u0639\u0627\u062A",fd="\u062A\u0642\u0631\u064A\u0631 \u0645\u0644\u062E\u0635 \u0627\u0644\u0636\u0631\u0627\u0626\u0628",vd="\u0627\u0644\u0627\u064A\u0631\u0627\u062F\u0627\u062A",hd="\u0635\u0627\u0641\u064A \u0627\u0644\u0623\u0631\u0628\u0627\u062D",yd="\u062A\u0642\u0631\u064A\u0631 \u0627\u0644\u0645\u0628\u064A\u0639\u0627\u062A: \u062D\u0633\u0628 \u0627\u0644\u0639\u0645\u064A\u0644",bd="\u0645\u062C\u0645\u0648\u0639 \u0627\u0644\u0645\u0628\u064A\u0639\u0627\u062A",kd="\u062A\u0642\u0631\u064A\u0631 \u0627\u0644\u0645\u0628\u064A\u0639\u0627\u062A: \u062D\u0633\u0628 \u0627\u0644\u0628\u0636\u0627\u0639\u0629 \u0627\u0648 \u0627\u0644\u062E\u062F\u0645\u0629",wd="\u062A\u0642\u0631\u064A\u0631 \u0627\u0644\u0627\u062F\u0627\u0621\u0627\u062A",xd="\u0627\u062C\u0645\u0627\u0644\u064A \u0627\u0644\u0627\u062F\u0627\u0621\u0627\u062A",zd="\u0623\u0646\u0648\u0627\u0639 \u0627\u0644\u0636\u0631\u0627\u0626\u0628",Sd="\u0627\u0644\u0646\u0641\u0642\u0627\u062A",Pd="\u0645\u0637\u0644\u0648\u0628 \u0645\u0646,",jd="\u064A\u0634\u062D\u0646 \u0625\u0644\u0649,",Ad="\u062A\u0645 \u0627\u0644\u0627\u0633\u062A\u0644\u0627\u0645 \u0645\u0646:",Dd="Tax";var Cd={navigation:kr,general:wr,dashboard:xr,tax_types:zr,global_search:Sr,company_switcher:Pr,dateRange:jr,customers:Ar,items:Dr,estimates:Cr,invoices:Er,recurring_invoices:Ir,payments:Nr,expenses:Tr,login:Rr,modules:Mr,users:Fr,reports:$r,settings:Ur,wizard:Vr,validation:Or,errors:Lr,pdf_estimate_label:Br,pdf_estimate_number:qr,pdf_estimate_date:Kr,pdf_estimate_expire_date:Wr,pdf_invoice_label:Zr,pdf_invoice_number:Hr,pdf_invoice_date:Yr,pdf_invoice_due_date:Gr,pdf_notes:Jr,pdf_items_label:Qr,pdf_quantity_label:Xr,pdf_price_label:ed,pdf_discount_label:td,pdf_amount_label:ad,pdf_subtotal:id,pdf_total:nd,pdf_payment_label:sd,pdf_payment_receipt_label:od,pdf_payment_date:rd,pdf_payment_number:dd,pdf_payment_mode:ld,pdf_payment_amount_received_label:cd,pdf_expense_report_label:_d,pdf_total_expenses_label:ud,pdf_profit_loss_label:md,pdf_sales_customers_label:pd,pdf_sales_items_label:gd,pdf_tax_summery_label:fd,pdf_income_label:vd,pdf_net_profit_label:hd,pdf_customer_sales_report:yd,pdf_total_sales_label:bd,pdf_item_sales_label:kd,pdf_tax_report_label:wd,pdf_total_tax_label:xd,pdf_tax_types_label:zd,pdf_expenses_label:Sd,pdf_bill_to:Pd,pdf_ship_to:jd,pdf_received_from:Ad,pdf_tax_label:Dd};const Ed={dashboard:"\xDCbersicht",customers:"Kunden",items:"Artikel",invoices:"Rechnungen","recurring-invoices":"Serienrechnungen",expenses:"Ausgaben",estimates:"Angebote",payments:"Zahlungen",reports:"Berichte",settings:"Einstellungen",logout:"Abmelden",users:"Benutzer",modules:"Modules"},Id={add_company:"Unternehmen hinzuf\xFCgen",view_pdf:"PDF anzeigen",copy_pdf_url:"PDF-Link kopieren",download_pdf:"PDF herunterladen",save:"Speichern",create:"Erstellen",cancel:"Abbrechen",update:"Aktualisieren",deselect:"Abw\xE4hlen",download:"Herunterladen",from_date:"Von Datum",to_date:"bis Datum",from:"Von",to:"An",ok:"Okay",yes:"Ja",no:"Nein",sort_by:"Sortieren nach",ascending:"Aufsteigend",descending:"Absteigend",subject:"Betreff",body:"Inhalt",message:"Nachricht",send:"Absenden",preview:"Vorschau",go_back:"zur\xFCck",back_to_login:"Zur\xFCck zum Login?",home:"Startseite",filter:"Filter",delete:"L\xF6schen",edit:"Bearbeiten",view:"Anzeigen",add_new_item:"Artikel hinzuf\xFCgen",clear_all:"Alle entfernen",showing:"Anzeigen",of:"von",actions:"Aktionen",subtotal:"ZWISCHENSUMME",discount:"RABATT",fixed:"Festsatz",percentage:"Prozentsatz",tax:"Steuer",total_amount:"GESAMTSUMME",bill_to:"Rechnungsempf\xE4nger",ship_to:"Versand an",due:"F\xE4llig",draft:"Entwurf",sent:"Gesendet",all:"Alle",select_all:"Alle ausw\xE4hlen",select_template:"Vorlage ausw\xE4hlen",choose_file:"Klicken Sie hier, um eine Datei auszuw\xE4hlen",choose_template:"W\xE4hlen Sie eine Vorlage",choose:"W\xE4hlen",remove:"Entfernen",select_a_status:"Status w\xE4hlen",select_a_tax:"Steuersatz w\xE4hlen",search:"Suchen",are_you_sure:"Sind Sie sicher?",list_is_empty:"Liste ist leer.",no_tax_found:"Kein Steuersatz gefunden!",four_zero_four:"Vier hundert vier",you_got_lost:"Hoppla! Du hast dich verirrt!",go_home:"Geh zur\xFCck",test_mail_conf:"E-Mail Konfiguration testen",send_mail_successfully:"E-Mail erfolgreich versendet",setting_updated:"Einstellungen erfolgreich aktualisiert",select_state:"Bundesland w\xE4hlen",select_country:"Land w\xE4hlen",select_city:"Stadt w\xE4hlen",street_1:"Stra\xDFe und Hausnummer",street_2:"Adresszusatz",action_failed:"Aktion fehlgeschlagen",retry:"Wiederholen",choose_note:"Notiz ausw\xE4hlen",no_note_found:"Keine Notizen gefunden",insert_note:"Notiz einf\xFCgen",copied_pdf_url_clipboard:"PDF-URL in Zwischenablage kopiert!",copied_url_clipboard:"Copied url to clipboard!",docs:"Dokumentation",do_you_wish_to_continue:"M\xF6chten Sie fortfahren?",note:"Notiz",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},Nd={select_year:"Jahr w\xE4hlen",cards:{due_amount:"Offene Betr\xE4ge",customers:"Kunden",invoices:"Rechnungen",estimates:"Angebote",payments:"Payments"},chart_info:{total_sales:"Auftr\xE4ge gesamt",total_receipts:"Zahlungen gesamt",total_expense:"Ausgaben",net_income:"Einnahmen Netto",year:"Jahr"},monthly_chart:{title:"Umsatz & Ausgaben"},recent_invoices_card:{title:"F\xE4llige Rechnungen",due_on:"F\xE4llig am",customer:"Kunde",amount_due:"Offener Betrag",actions:"Aktionen",view_all:"Alle Anzeigen"},recent_estimate_card:{title:"Aktuelle Angebote",date:"Datum",customer:"Kunde",amount_due:"Betrag",actions:"Aktionen",view_all:"Alle Anzeigen"}},Td={name:"Name",description:"Beschreibung",percent:"Prozent",compound_tax:"zusammengesetzte Steuer"},Rd={search:"Suchen...",customers:"Kunden",users:"Benutzer",no_results_found:"Keine Ergebnisse gefunden"},Md={label:"UNTERNEHMEN WECHSELN",no_results_found:"Keine Ergebnisse gefunden",add_new_company:"Neues Unternehmen hinzuf\xFCgen",new_company:"Neues Unternehmen",created_message:"Unternehmen erfolgreich angelegt"},Fd={today:"Heute",this_week:"Diese Woche",this_month:"Dieser Monat",this_quarter:"Dieses Quartal",this_year:"Dieses Jahr",previous_week:"Vorherige Woche",previous_month:"Vorheriger Monat",previous_quarter:"Vorheriges Quartal",previous_year:"Vorheriges Jahr",custom:"Benutzerdefiniert"},$d={title:"Kunden",prefix:"Pr\xE4fix",add_customer:"Kunde hinzuf\xFCgen",contacts_list:"Kunden-Liste",name:"Name",mail:"E-Mail| E-Mails",statement:"Stellungnahme",display_name:"Anzeige Name",primary_contact_name:"Ansprechpartner",contact_name:"Kontakt Name",amount_due:"Offener Betrag",email:"E-Mail",address:"Adresse",phone:"Telefon",website:"Webseite",overview:"\xDCbersicht",invoice_prefix:"Rechnungspr\xE4fix",estimate_prefix:"Angebotspr\xE4fix",payment_prefix:"Zahlungspr\xE4fix",enable_portal:"Kunden-Portal aktivieren",country:"Land",state:"Bundesland",city:"Stadt",zip_code:"PLZ",added_on:"Hinzugef\xFCgt am",action:"Aktion",password:"Passwort",confirm_password:"Passwort best\xE4tigen",street_number:"Hausnummer",primary_currency:"Prim\xE4re W\xE4hrung",description:"Beschreibung",add_new_customer:"Neuen Kunden hinzuf\xFCgen",save_customer:"Kunde speichern",update_customer:"Kunden \xE4ndern",customer:"Kunde | Kunden",new_customer:"Neuer Kunde",edit_customer:"Kunde bearbeiten",basic_info:"Basisinformation",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"Rechnungsadresse",shipping_address:"Versand-Adresse",copy_billing_address:"Rechnungsadresse kopieren",no_customers:"Noch keine Kunden!",no_customers_found:"Keine Kunden gefunden!",no_contact:"Kein Kontakt",no_contact_name:"Kein Kontaktname",list_of_customers:"Dieser Bereich zeigt alle Kunden.",primary_display_name:"Prim\xE4rer Anzeige Name",select_currency:"W\xE4hrung w\xE4hlen",select_a_customer:"W\xE4hlen Sie einen Kunden",type_or_click:"Eingeben oder anklicken zum ausw\xE4hlen",new_transaction:"Neue Transaktion",no_matching_customers:"Es gibt keine passenden Kunden!",phone_number:"Telefonnummer",create_date:"Erstellungsdatum",confirm_delete:"Sie werden diesen Kunden und alle zugeh\xF6rigen Rechnungen, Angebote und Zahlungen nicht wiederherstellen k\xF6nnen. | Sie werden diese Kunden und alle zugeh\xF6rigen Rechnungen, Angebote und Zahlungen nicht wiederherstellen k\xF6nnen.",created_message:"Benutzer erfolgreich erstellt",updated_message:"Kunde erfolgreich aktualisiert",address_updated_message:"Address Information Updated succesfully",deleted_message:"Kunden erfolgreich gel\xF6scht | Kunden erfolgreich gel\xF6scht",edit_currency_not_allowed:"W\xE4hrung kann nicht ge\xE4ndert werden, wenn Transaktionen erstellt wurden."},Ud={title:"Artikel",items_list:"Artikel-Liste",name:"Name",unit:"Einheit",description:"Beschreibung",added_on:"Hinzugef\xFCgt am",price:"Preis",date_of_creation:"Erstellt am",not_selected:"Keine ausgew\xE4hlt",action:"Aktion",add_item:"Artikel hinzuf\xFCgen",save_item:"Artikel speichern",update_item:"Artikel \xE4ndern",item:"Artikel | Artikel",add_new_item:"Neuen Artikel hinzuf\xFCgen",new_item:"Neuer Artikel",edit_item:"Artikel bearbeiten",no_items:"Keine Artikel vorhanden!",list_of_items:"Dieser Bereich zeigt alle Artikel.",select_a_unit:"Einheit ausw\xE4hlen",taxes:"Steuern",item_attached_message:"Ein Artikel der bereits verwendet wird kann nicht gel\xF6scht werden",confirm_delete:"Sie k\xF6nnen diesen Artikel nicht wiederherstellen | Sie k\xF6nnen diese Artikel nicht wiederherstellen",created_message:"Artikel erfolgreich erstellt",updated_message:"Artikel erfolgreich aktualisiert",deleted_message:"Artikel erfolgreich gel\xF6scht | Artikel erfolgreich gel\xF6scht"},Vd={title:"Angebote",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"Angebot | Angebote",estimates_list:"Angebots\xFCbersicht",days:"{days} Tage",months:"{months} Monat",years:"{years} Jahre",all:"Alle",paid:"Bezahlt",unpaid:"Unbezahlt",customer:"KUNDE",ref_no:"REF. - NR.",number:"NUMMER",amount_due:"OFFENER BETRAG",partially_paid:"Teilweise bezahlt",total:"Gesamt",discount:"Rabatt",sub_total:"Zwischensumme",estimate_number:"Angebotsnummer",ref_number:"Ref-Nummer",contact:"Kontakt",add_item:"F\xFCgen Sie ein Artikel hinzu",date:"Datum",due_date:"F\xE4lligkeit",expiry_date:"Zahlungsziel",status:"Status",add_tax:"Steuer hinzuf\xFCgen",amount:"Summe",action:"Aktion",notes:"Notizen",tax:"Steuer",estimate_template:"Vorlage",convert_to_invoice:"Konvertieren in Rechnung",mark_as_sent:"Als gesendet markieren",send_estimate:"Angebot senden",resend_estimate:"Angebot erneut senden",record_payment:"Zahlung erfassen",add_estimate:"Angebote hinzuf\xFCgen",save_estimate:"Angebot speichern",confirm_conversion:"Dieses Angebot wird verwendet, um eine neue Rechnung zu erstellen.",conversion_message:"Rechnung erfolgreich erstellt",confirm_send_estimate:"Das Angebot wird per E-Mail an den Kunden gesendet",confirm_mark_as_sent:"Dieses Angebot wird als gesendet markiert",confirm_mark_as_accepted:"Dieses Angebot wird als angenommen markiert",confirm_mark_as_rejected:"Dieses Angebot wird als abgelehnt markiert",no_matching_estimates:"Es gibt keine \xFCbereinstimmenden Angebote!",mark_as_sent_successfully:"Angebot als gesendet markiert",send_estimate_successfully:"Angebot erfolgreich gesendet",errors:{required:"Feld ist erforderlich"},accepted:"Angenommen",rejected:"Abgelehnt",expired:"Expired",sent:"Gesendet",draft:"Entwurf",viewed:"Viewed",declined:"Abgelehnt",new_estimate:"Neues Angebot",add_new_estimate:"Neues Angebot hinzuf\xFCgen",update_Estimate:"Angebot aktualisieren",edit_estimate:"Angebot \xE4ndern",items:"Artikel",Estimate:"Angebot | Angebote",add_new_tax:"neuen Steuersatz hinzuf\xFCgen",no_estimates:"Keine Angebote vorhanden!",list_of_estimates:"Dieser Bereich zeigt alle Angebote.",mark_as_rejected:"Markiert als abgelehnt",mark_as_accepted:"Markiert als angenommen",marked_as_accepted_message:"Angebot als angenommen markiert",marked_as_rejected_message:"Angebot als abgelehnt markiert",confirm_delete:"Das Angebot kann nicht wiederhergestellt werden | Die Angebote k\xF6nnen nicht wiederhergestellt werden",created_message:"Angebot erfolgreich erstellt",updated_message:"Angebot erfolgreich aktualisiert",deleted_message:"Angebot erfolgreich gel\xF6scht | Angebote erfolgreich gel\xF6scht",something_went_wrong:"Da ging etwas schief",item:{title:"Titel des Artikels",description:"Beschreibung",quantity:"Menge",price:"Preis",discount:"Rabatt",total:"Gesamt",total_discount:"Rabatt Gesamt",sub_total:"Zwischensumme",tax:"Steuer",amount:"Summe",select_an_item:"W\xE4hlen Sie einen Artikel",type_item_description:"Artikel Beschreibung (optional)"}},Od={title:"Rechnungen",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"Liste der Rechnungen",invoice_information:"Invoice Information",days:"{days} Tage",months:"{months} Monat",years:"{years} Jahre",all:"Alle",paid:"Bezahlt",unpaid:"Unbezahlt",viewed:"Gesehen",overdue:"\xDCberf\xE4llig",completed:"Abgeschlossen",customer:"KUNDE",paid_status:"ZAHLUNGSSTATUS",ref_no:"REF. - NR.",number:"NUMMER",amount_due:"OFFENER BETRAG",partially_paid:"Teilzahlung",total:"Gesamt",discount:"Rabatt",sub_total:"Zwischensumme",invoice:"Rechnung | Rechnungen",invoice_number:"Rechnungsnummer",ref_number:"Ref-Nummer",contact:"Kontakt",add_item:"F\xFCgen Sie ein Artikel hinzu",date:"Datum",due_date:"F\xE4lligkeit",status:"Status",add_tax:"Steuersatz hinzuf\xFCgen",amount:"Summe",action:"Aktion",notes:"Notizen",view:"Anzeigen",send_invoice:"Rechnung senden",resend_invoice:"Rechnung erneut senden",invoice_template:"Rechnungsvorlage",conversion_message:"Rechnung erfolgreich kopiert",template:"Vorlage ausw\xE4hlen",mark_as_sent:"Als gesendet markieren",confirm_send_invoice:"Diese Rechnung wird per E-Mail an den Kunden gesendet",invoice_mark_as_sent:"Diese Rechnung wird als gesendet markiert",confirm_mark_as_accepted:"Diese Rechnung wird als akzeptiert markiert",confirm_mark_as_rejected:"Diese Rechnung wird als abgelehnt markiert",confirm_send:"Diese Rechnung wird per E-Mail an den Kunden gesendet",invoice_date:"Rechnungsdatum",record_payment:"Zahlung erfassen",add_new_invoice:"Neue Rechnung hinzuf\xFCgen",update_expense:"Ausgabe aktualisieren",edit_invoice:"Rechnung bearbeiten",new_invoice:"Neue Rechnung",save_invoice:"Rechnung speichern",update_invoice:"Rechnung \xE4ndern",add_new_tax:"Neuen Steuersatz hinzuf\xFCgen",no_invoices:"Keine Rechnungen vorhanden!",mark_as_rejected:"Als abgelehnt markieren",mark_as_accepted:"Als akzeptiert markieren",list_of_invoices:"Dieser Bereich zeigt alle Rechnungen.",select_invoice:"W\xE4hlen Sie eine Rechnung",no_matching_invoices:"Es gibt keine entsprechenden Rechnungen!",mark_as_sent_successfully:"Rechnung gekennzeichnet als erfolgreich gesendet",invoice_sent_successfully:"Rechnung erfolgreich versendet",cloned_successfully:"Rechnung erfolgreich kopiert",clone_invoice:"Rechnung kopieren",confirm_clone:"Diese Rechnung wird kopiert",item:{title:"Titel des Artikels",description:"Beschreibung",quantity:"Menge",price:"Preis",discount:"Rabatt",total:"Gesamt",total_discount:"Rabatt Gesamt",sub_total:"Zwischensumme",tax:"Steuer",amount:"Summe",select_an_item:"Geben Sie oder w\xE4hlen Sie ein Artikel",type_item_description:"Artikel Beschreibung (optional)"},payment_attached_message:"Einer der ausgew\xE4hlten Rechnungen ist bereits eine Zahlung zugeordnet. Stellen Sie sicher, dass Sie zuerst die angeh\xE4ngten Zahlungen l\xF6schen, um mit dem Entfernen fortzufahren",confirm_delete:"Sie k\xF6nnen diese Rechnung nicht wiederherstellen. | Sie k\xF6nnen diese Rechnungen nicht wiederherstellen.",created_message:"Rechnung erfolgreich erstellt",updated_message:"Rechnung erfolgreich aktualisiert",deleted_message:"Rechnung erfolgreich gel\xF6scht | Rechnungen erfolgreich gel\xF6scht",marked_as_sent_message:"Rechnung als erfolgreich gesendet markiert",something_went_wrong:"Da ist etwas schief gelaufen",invalid_due_amount_message:"Der Gesamtrechnungsbetrag darf nicht kleiner sein als der f\xFCr diese Rechnung bezahlte Gesamtbetrag. Bitte aktualisieren Sie die Rechnung oder l\xF6schen Sie die zugeh\xF6rigen Zahlungen um fortzufahren."},Ld={title:"Serienrechnungen",invoices_list:"Liste aller Serienrechnungen",days:"{days} Tage",months:"{months} Monat",years:"{years} Jahr",all:"Alle",paid:"Bezahlt",unpaid:"Unbezahlt",viewed:"Gesehen",overdue:"\xDCberf\xE4llig",active:"Aktiv",completed:"Abgeschlossen",customer:"KUNDE",paid_status:"ZAHLUNGSSTATUS",ref_no:"REF. - NR.",number:"NUMMER",amount_due:"OFFENER BETRAG",partially_paid:"Teilweise bezahlt",total:"Gesamt",discount:"Rabatt",sub_total:"Zwischensumme",invoice:"Wiederkehrende Rechnung | Wiederkehrende Rechnungen",invoice_number:"Serienrechnungsnummer",next_invoice_date:"N\xE4chstes Rechnungsdatum",ref_number:"Ref. Nummer",contact:"Kontakt",add_item:"Artikel hinzuf\xFCgen",date:"Datum",limit_by:"Eingrenzen nach",limit_date:"Datum eingrenzen",limit_count:"Anzahl eingrenzen",count:"Anzahl",status:"Status",select_a_status:"Status ausw\xE4hlen",working:"Verarbeitung l\xE4uft",on_hold:"Pausiert",complete:"Abgeschlossen",add_tax:"Steuer hinzuf\xFCgen",amount:"Summe",action:"Aktion",notes:"Notizen",view:"Anzeigen",basic_info:"Allgemeine Daten",send_invoice:"Serienrechnung senden",auto_send:"Automatisch senden",resend_invoice:"Serienrechnung erneut senden",invoice_template:"Serienrechnungsvorlage",conversion_message:"Serienrechnung erfolgreich kopiert",template:"Vorlage",mark_as_sent:"Als gesendet markieren",confirm_send_invoice:"Diese Serienrechnung wird per E-Mail an den Kunden gesendet",invoice_mark_as_sent:"Diese Serienrechnung wird als gesendet markiert",confirm_send:"Diese Serienrechnung wird per E-Mail an den Kunden gesendet",starts_at:"Anfangsdatum",due_date:"F\xE4lligkeitsdatum der Rechnung",record_payment:"Zahlung aufzeichnen",add_new_invoice:"Neue Serienrechnung hinzuf\xFCgen",update_expense:"Ausgabe aktualisieren",edit_invoice:"Serienrechnung bearbeiten",new_invoice:"Neue Serienrechnung",send_automatically:"Automatisch senden",send_automatically_desc:"Aktivieren Sie dies, wenn Sie die Rechnung bei der Erstellung automatisch an den Kunden senden m\xF6chten.",save_invoice:"Serienrechnung speichern",update_invoice:"Serienrechnung aktualisieren",add_new_tax:"Neuen Steuersatz hinzuf\xFCgen",no_invoices:"Noch keine Serienrechnungen!",mark_as_rejected:"Als abgelehnt markieren",mark_as_accepted:"Als akzeptiert markieren",list_of_invoices:"Dieser Abschnitt wird die Liste aller Serienrechnungen enthalten.",select_invoice:"Rechnung ausw\xE4hlen",no_matching_invoices:"Es gibt keine passenden Serienrechnungen!",mark_as_sent_successfully:"Serienrechnung als erfolgreich gesendet markiert",invoice_sent_successfully:"Serienrechnung erfolgreich gesendet",cloned_successfully:"Serienrechnung erfolgreich kopiert",clone_invoice:"Serienrechnung kopieren",confirm_clone:"Diese Serienrechnung wird in eine neue Serienrechnung kopiert",item:{title:"Titel des Artikels",description:"Beschreibung",quantity:"Menge",price:"Preis",discount:"Rabatt",total:"Gesamt",total_discount:"Gesamtrabatt",sub_total:"Zwischensumme",tax:"Steuer",amount:"Menge",select_an_item:"Geben Sie den Artikel ein, oder w\xE4hlen Sie ihn aus",type_item_description:"Artikel-Beschreibung (optional)"},frequency:{title:"Intervall",select_frequency:"Intervall ausw\xE4hlen",minute:"Minute",hour:"Stunde",day_month:"Tag des Monats",month:"Monat",day_week:"Tag der Woche"},confirm_delete:"Sie werden diese Rechnung nicht wiederherstellen k\xF6nnen | Sie werden nicht in der Lage sein, diese Rechnungen wiederherzustellen",created_message:"Serienrechnung erfolgreich erstellt",updated_message:"Serienrechnung erfolgreich aktualisiert",deleted_message:"Serienrechnung erfolgreich gel\xF6scht | Serienrechnungen erfolgreich gel\xF6scht",marked_as_sent_message:"Serienrechnung als erfolgreich gesendet markiert",user_email_does_not_exist:"E-Mail des Benutzers existiert nicht",something_went_wrong:"etwas ist schief gelaufen",invalid_due_amount_message:"Der Gesamtbetrag der Serienrechnung darf nicht kleiner als der bezahlte Gesamtbetrag f\xFCr diese Serienrechnung sein. Bitte aktualisieren Sie die Rechnung oder l\xF6schen Sie die zugeh\xF6rigen Zahlungen, um fortzufahren."},Bd={title:"Zahlungen",payments_list:"Liste der Zahlungen",record_payment:"Zahlung eintragen",customer:"Kunde",date:"Datum",amount:"Summe",action:"Aktion",payment_number:"Zahlungsnummer",payment_mode:"Zahlungsart",invoice:"Rechnung",note:"Hinweis",add_payment:"Zahlung hinzuf\xFCgen",new_payment:"Neue Zahlung",edit_payment:"Zahlung bearbeiten",view_payment:"Zahlung anzeigen",add_new_payment:"Neue Zahlung hinzuf\xFCgen",send_payment_receipt:"Zahlungsbeleg senden",send_payment:"Senden Sie die Zahlung",save_payment:"Zahlung speichern",update_payment:"Zahlung \xE4ndern",payment:"Zahlung | Zahlungen",no_payments:"Keine Zahlungen vorhanden!",not_selected:"Nicht ausgew\xE4hlt",no_invoice:"Keine Rechnung",no_matching_payments:"Es gibt keine passenden Zahlungen!",list_of_payments:"Dieser Bereich zeigt alle Zahlungen.",select_payment_mode:"W\xE4hlen Sie den Zahlungsmodus",confirm_mark_as_sent:"Dieses Angebot wird als gesendet markiert",confirm_send_payment:"Diese Zahlung wird per E-Mail an den Kunden gesendet",send_payment_successfully:"Zahlung erfolgreich gesendet",something_went_wrong:"Da ist etwas schief gelaufen",confirm_delete:"Sie k\xF6nnen diese Zahlung nicht wiederherstellen. | Sie k\xF6nnen diese Zahlungen nicht wiederherstellen.",created_message:"Zahlung erfolgreich erstellt",updated_message:"Zahlung erfolgreich aktualisiert",deleted_message:"Zahlung erfolgreich gel\xF6scht | Zahlungen erfolgreich gel\xF6scht",invalid_amount_message:"Zahlungsbetrag ist ung\xFCltig"},qd={title:"Ausgaben",expenses_list:"Ausgaben\xFCbersicht",select_a_customer:"W\xE4hlen Sie einen Kunden",expense_title:"Titel",customer:"Kunde",currency:"W\xE4hrung",contact:"Kontakt",category:"Kategorie",from_date:"Von Datum",to_date:"bis Datum",expense_date:"Datum",description:"Beschreibung",receipt:"Rechnung",amount:"Summe",action:"Aktion",not_selected:"Nicht ausgew\xE4hlt",note:"Hinweis",category_id:"Kategorie-Id",date:"Ausgabedatum",add_expense:"Ausgabe hinzuf\xFCgen",add_new_expense:"Neue Ausgabe hinzuf\xFCgen",save_expense:"Ausgabe speichern",update_expense:"Ausgabe aktualisieren",download_receipt:"Quittung herunterladen",edit_expense:"Ausgabe bearbeiten",new_expense:"Neue Ausgabe",expense:"Ausgabe | Ausgaben",no_expenses:"Noch keine Ausgaben!",list_of_expenses:"Dieser Bereich enth\xE4lt alle Ausgaben.",confirm_delete:"Sie k\xF6nnen diese Ausgabe nicht wiederherstellen. | Sie k\xF6nnen diese Ausgaben nicht wiederherstellen.",created_message:"Ausgabe erfolgreich erstellt",updated_message:"Ausgabe erfolgreich aktualisiert",deleted_message:"Ausgabe erfolgreich gel\xF6scht | Ausgaben erfolgreich gel\xF6scht",categories:{categories_list:"Liste der Kategorien",title:"Titel",name:"Name",description:"Beschreibung",amount:"Summe",actions:"Aktionen",add_category:"Kategorie hinzuf\xFCgen",new_category:"Neue Kategorie",category:"Kategorie | Kategorien",select_a_category:"W\xE4hlen Sie eine Kategorie"}},Kd={email:"E-Mail",password:"Passwort",forgot_password:"Passwort vergessen?",or_signIn_with:"oder Anmelden mit",login:"Anmelden",register:"Registrieren",reset_password:"Passwort zur\xFCcksetzen",password_reset_successfully:"Passwort erfolgreich zur\xFCckgesetzt",enter_email:"Geben Sie Ihre E-Mail ein",enter_password:"Geben Sie das Passwort ein",retype_password:"Passwort best\xE4tigen"},Wd={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},Zd={title:"Benutzer",users_list:"Benutzerliste",name:"Name",description:"Beschreibung",added_on:"Hinzugef\xFCgt am",date_of_creation:"Erstellt am",action:"Aktion",add_user:"Benutzer hinzuf\xFCgen",save_user:"Benutzer speichern",update_user:"Benutzer aktualisieren",user:"Benutzer",add_new_user:"Neuen Benutzer hinzuf\xFCgen",new_user:"Neuer Benutzer",edit_user:"Benutzer bearbeiten",no_users:"Noch keine Benutzer!",list_of_users:"Dieser Bereich zeigt alle Benutzer.",email:"E-Mail",phone:"Telefon",password:"Passwort",user_attached_message:"Ein Artikel der bereits verwendet wird kann nicht gel\xF6scht werden",confirm_delete:"Sie werden diesen Benutzer nicht wiederherstellen k\xF6nnen | Sie werden nicht in der Lage sein, diese Benutzer wiederherzustellen",created_message:"Benutzer erfolgreich erstellt",updated_message:"Benutzer wurde erfolgreich aktualisiert",deleted_message:"Benutzer erfolgreich gel\xF6scht | Benutzer erfolgreich gel\xF6scht",select_company_role:"W\xE4hle Rolle f\xFCr {company}",companies:"Unternehmen"},Hd={title:"Bericht",from_date:"Ab Datum",to_date:"bis Datum",status:"Status",paid:"Bezahlt",unpaid:"Unbezahlt",download_pdf:"PDF herunterladen",view_pdf:"PDF anzeigen",update_report:"Bericht aktualisieren",report:"Bericht | Berichte",profit_loss:{profit_loss:"Gewinn & Verlust",to_date:"bis Datum",from_date:"Ab Datum",date_range:"Datumsbereich ausw\xE4hlen"},sales:{sales:"Umsatz",date_range:"Datumsbereich ausw\xE4hlen",to_date:"bis Datum",from_date:"Ab Datum",report_type:"Berichtstyp"},taxes:{taxes:"Steuern",to_date:"bis Datum",from_date:"Ab Datum",date_range:"Datumsbereich ausw\xE4hlen"},errors:{required:"Feld ist erforderlich"},invoices:{invoice:"Rechnung",invoice_date:"Rechnungsdatum",due_date:"F\xE4lligkeit",amount:"Summe",contact_name:"Ansprechpartner",status:"Status"},estimates:{estimate:"Angebot",estimate_date:"Angebotsdatum",due_date:"F\xE4lligkeit",estimate_number:"Angebotsnummer",ref_number:"Ref-Nummer",amount:"Summe",contact_name:"Ansprechpartner",status:"Status"},expenses:{expenses:"Ausgaben",category:"Kategorie",date:"Datum",amount:"Summe",to_date:"bis Datum",from_date:"Ab Datum",date_range:"Datumsbereich ausw\xE4hlen"}},Yd={menu_title:{account_settings:"Konto-Einstellungen",company_information:"Informationen zum Unternehmen",customization:"Personalisierung",preferences:"Einstellungen",notifications:"Benachrichtigungen",tax_types:"Steuers\xE4tze",expense_category:"Ausgabenkategorien",update_app:"Applikation aktualisieren",backup:"Sicherung",file_disk:"Dateispeicher",custom_fields:"Benutzerdefinierte Felder",payment_modes:"Zahlungsarten",notes:"Notizen",exchange_rate:"Wechselkurs",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"Einstellungen",setting:"Einstellung | Einstellungen",general:"Allgemeine",language:"Sprache",primary_currency:"Prim\xE4re W\xE4hrung",timezone:"Zeitzone",date_format:"Datum-Format",currencies:{title:"W\xE4hrungen",currency:"W\xE4hrung | W\xE4hrungen",currencies_list:"W\xE4hrungen Liste",select_currency:"W\xE4hrung w\xE4hlen",name:"Name",code:"Code",symbol:"Symbol",precision:"Pr\xE4zision",thousand_separator:"Tausendertrennzeichen",decimal_separator:"Dezimal-Trennzeichen",position:"Position",position_of_symbol:"Position des W\xE4hrungssymbol",right:"Rechts",left:"Links",action:"Aktion",add_currency:"W\xE4hrung einf\xFCgen"},mail:{host:"E-Mail Mailserver",port:"E-Mail Port",driver:"E-Mail Treiber",secret:"Verschl\xFCsselung",mailgun_secret:"Mailgun Verschl\xFCsselung",mailgun_domain:"Mailgun Adresse",mailgun_endpoint:"Mailgun-Endpunkt",ses_secret:"SES Verschl\xFCsselung",ses_key:"SES-Taste",password:"E-Mail-Kennwort",username:"E-Mail-Benutzername",mail_config:"E-Mail-Konfiguration",from_name:"Von E-Mail-Namen",from_mail:"Von E-Mail-Adresse",encryption:"E-Mail-Verschl\xFCsselung",mail_config_desc:"Unten finden Sie das Formular zum Konfigurieren des E-Mail-Treibers zum Senden von E-Mails \xFCber die App. Sie k\xF6nnen auch Drittanbieter wie Sendgrid, SES usw. konfigurieren."},pdf:{title:"PDF-Einstellung",footer_text:"Fu\xDFzeile Text",pdf_layout:"PDF-Layout"},company_info:{company_info:"Firmeninfo",company_name:"Name des Unternehmens",company_logo:"Firmenlogo",section_description:"Informationen zu Ihrem Unternehmen, die auf Rechnungen, Angeboten und anderen von Crater erstellten Dokumenten angezeigt werden.",phone:"Telefon",country:"Land",state:"Bundesland",city:"Stadt",address:"Adresse",zip:"PLZ",save:"Speichern",delete:"L\xF6schen",updated_message:"Unternehmensinformationen wurden erfolgreich aktualisiert",delete_company:"Unternehmen l\xF6schen",delete_company_description:"Sobald Sie Ihr Unternehmen l\xF6schen, verlieren Sie alle damit verbundenen Daten und Dateien.",are_you_absolutely_sure:"Sind Sie wirklich sicher?",delete_company_modal_desc:"Diese Aktion kann nicht r\xFCckg\xE4ngig gemacht werden. Dies wird {company} und alle damit verbundenen Daten dauerhaft l\xF6schen.",delete_company_modal_label:"Bitte geben Sie {company} zur Best\xE4tigung ein"},custom_fields:{title:"Benutzerdefinierte Felder",section_description:"Passen Sie Ihre Rechnungen, Angebote und Zahlungsbelege mit Ihren eigenen Feldern an. Stellen Sie sicher, dass Sie die unten hinzugef\xFCgten Felder in den Adressformaten auf der Seite mit den Anpassungseinstellungen verwenden.",add_custom_field:"Benutzerdefiniertes Feld hinzuf\xFCgen",edit_custom_field:"Benutzerdefiniertes Feld bearbeiten",field_name:"Feldname",label:"Bezeichnung",type:"Art",name:"Name",slug:"K\xFCrzel",required:"Erforderlich",placeholder:"Platzhalter",help_text:"Hilfstext",default_value:"Standardwert",prefix:"Pr\xE4fix",starting_number:"Startnummer",model:"Modell",help_text_description:"Geben Sie einen Text ein, damit Benutzer den Zweck dieses benutzerdefinierten Felds verstehen.",suffix:"Vorzeichen",yes:"Ja",no:"Nein",order:"Reihenfolge",custom_field_confirm_delete:"Sie k\xF6nnen dieses benutzerdefinierte Feld nicht wiederherstellen",already_in_use:"Benutzerdefiniertes Feld wird bereits verwendet",deleted_message:"Benutzerdefiniertes Feld erfolgreich gel\xF6scht",options:"Optionen",add_option:"Optionen hinzuf\xFCgen",add_another_option:"F\xFCgen Sie eine weitere Option hinzu",sort_in_alphabetical_order:"In alphabetischer Reihenfolge sortieren",add_options_in_bulk:"F\xFCgen Sie Optionen in gro\xDFen Mengen hinzu",use_predefined_options:"Verwenden Sie vordefinierte Optionen",select_custom_date:"W\xE4hlen Sie Benutzerdefiniertes Datum",select_relative_date:"W\xE4hlen Sie Relatives Datum",ticked_by_default:"Standardm\xE4\xDFig aktiviert",updated_message:"Benutzerdefiniertes Feld erfolgreich aktualisiert",added_message:"Benutzerdefiniertes Feld erfolgreich hinzugef\xFCgt",press_enter_to_add:"Eingabetaste dr\xFCcken, um neue Option hinzuzuf\xFCgen",model_in_use:"Das Modell kann f\xFCr bereits verwendete Felder nicht aktualisiert werden.",type_in_use:"Der Typ von bereits verwendeten Feldern kann nicht aktualisiert werden."},customization:{customization:"Personalisierung",updated_message:"Unternehmensinformationen wurden erfolgreich aktualisiert",save:"Speichern",insert_fields:"Felder einf\xFCgen",learn_custom_format:"Erfahren Sie, wie Sie benutzerdefiniertes Format verwenden",add_new_component:"Neue Komponente hinzuf\xFCgen",component:"Komponente",Parameter:"Parameter",series:"Nummernfolge",series_description:"Um ein statisches Pr\xE4fix/Postfix wie 'INV' in Ihrem Unternehmen zu setzen. Es unterst\xFCtzt eine Zeichenl\xE4nge von bis zu 4 Zeichen.",series_param_label:"Nummernfolge",delimiter:"Trennzeichen",delimiter_description:"Einzelnes Zeichen f\xFCr die Verwendung zwischen zwei separaten Komponenten. Standardm\xE4\xDFig ist dies -",delimiter_param_label:"Trennzeichen",date_format:"Datumsformat",date_format_description:"Ein lokales Datums- und Zeitfeld, das einen Format-Parameter akzeptiert. Das Standardformat: 'Y' stellt das aktuelle Jahr dar.",date_format_param_label:"Format",sequence:"Fortlaufende Nummer",sequence_description:"Fortlaufende Nummernabfolge in Ihrem Unternehmen. Sie k\xF6nnen die L\xE4nge des angegebenen Parameters angeben.",sequence_param_label:"L\xE4nge der fortlaufenden Nummer",customer_series:"Kundenspez. Nummernfolge",customer_series_description:"Ein anderes Pr\xE4fix/Postfix f\xFCr jeden Kunden festlegen.",customer_sequence:"Fortlaufende Kundennummer",customer_sequence_description:"Fortlaufende Nummernabfolge f\xFCr jeden ihrer Kunden.",customer_sequence_param_label:"L\xE4nge der laufenden Nummer",random_sequence:"Zuf\xE4llige Zeichenkette",random_sequence_description:"Zuf\xE4llige alphanumerische Zeichenkette. Sie k\xF6nnen die L\xE4nge als Parameter angeben.",random_sequence_param_label:"L\xE4nge der Zeichenkette",invoices:{title:"Rechnungen",invoice_number_format:"Rechnungsnummernformat",invoice_number_format_description:"Passen Sie an, wie Ihre Rechnungsnummer automatisch generiert wird, wenn Sie eine neue Rechnung erstellen.",preview_invoice_number:"Vorschau Rechnungsnummer",due_date:"F\xE4lligkeitsdatum",due_date_description:"Legen Sie fest, wie das F\xE4lligkeitsdatum automatisch gesetzt wird, wenn Sie eine Rechnung erstellen.",due_date_days:"Rechnung f\xE4llig nach Tagen",set_due_date_automatically:"F\xE4lligkeitsdatum automatisch setzen",set_due_date_automatically_description:"Aktivieren Sie dies, wenn Sie das F\xE4lligkeitsdatum automatisch setzen m\xF6chten, wenn Sie eine neue Rechnung erstellen.",default_formats:"Standardformate",default_formats_description:"Die unten angegebenen Formate werden verwendet, um die Felder bei der Erstellung einer Rechnung automatisch auszuf\xFCllen.",default_invoice_email_body:"Standard Rechnung E-Mail Inhalt",company_address_format:"Firmenadressformat",shipping_address_format:"Versandadressen Format",billing_address_format:"Rechnungsadressen Format",invoice_email_attachment:"Rechnungen als Anh\xE4nge verschicken",invoice_email_attachment_setting_description:'Aktivieren Sie dies, wenn Sie Rechnungen als E-Mail-Anhang versenden m\xF6chten. Bitte beachten Sie, dass die Schaltfl\xE4che "Rechnung anzeigen" in E-Mails dann nicht mehr angezeigt wird.',invoice_settings_updated:"Rechnungseinstellungen erfolgreich aktualisiert",retrospective_edits:"R\xFCckwirkende \xC4nderungen",allow:"Erlauben",disable_on_invoice_partial_paid:"Deaktivieren, nachdem Teilzahlung erfasst wurde",disable_on_invoice_paid:"Deaktivieren, nachdem vollst\xE4ndige Zahlung erfasst wurde",disable_on_invoice_sent:"Deaktivieren, nachdem Rechnung gesendet wurde",retrospective_edits_description:" Basierend auf den Gesetzen Ihres Landes oder Ihrer Pr\xE4ferenz, k\xF6nnen Sie Benutzer daran hindern, fertige Rechnungen zu bearbeiten."},estimates:{title:"Angebote",estimate_number_format:"Angebotsnummernformat",estimate_number_format_description:"Passen Sie an, wie Ihre Angebotsnummer automatisch generiert wird, wenn Sie ein neues Angebot erstellen.",preview_estimate_number:"Vorschau Angebotsnummer",expiry_date:"Ablaufdatum",expiry_date_description:"Legen Sie fest, wie das Ablaufdatum automatisch gesetzt wird, wenn Sie ein Angebot erstellen.",expiry_date_days:"Angebot l\xE4uft ab nach Tagen",set_expiry_date_automatically:"Ablaufdatum automatisch setzen",set_expiry_date_automatically_description:"Aktivieren Sie dies, wenn Sie das Ablaufdatum automatisch setzen m\xF6chten sobald Sie ein neues Angebot erstellen.",default_formats:"Standardformate",default_formats_description:"Die unten angegebenen Formate werden verwendet, um die Felder bei der Erstellung eines Angebots automatisch auszuf\xFCllen.",default_estimate_email_body:"Angebot - E-Mail Text",company_address_format:"Firmenadresse Format",shipping_address_format:"Versandadressen Format",billing_address_format:"Rechnungsadressen Format",estimate_email_attachment:"Angebote als Anh\xE4nge verschicken",estimate_email_attachment_setting_description:'Aktivieren Sie dies, wenn Sie Angebote als E-Mail-Anhang versenden m\xF6chten. Bitte beachten Sie, dass die Schaltfl\xE4che "Angebot anzeigen" in E-Mails dann nicht mehr angezeigt wird.',estimate_settings_updated:"Angebotseinstellungen erfolgreich aktualisiert",convert_estimate_options:"Aktion nach Angebotsumwandlung",convert_estimate_description:"Legen Sie fest, was mit dem Angebot geschieht, nachdem es in eine Rechnung umgewandelt wurde.",no_action:"Keine Aktion",delete_estimate:"Angebot l\xF6schen",mark_estimate_as_accepted:"Angebot als angenommen markieren"},payments:{title:"Zahlungen",payment_number_format:"Zahlungsnummernformat",payment_number_format_description:"Passen Sie an, wie Ihre Zahlungsnummer automatisch generiert wird, wenn Sie eine neue Zahlung erstellen.",preview_payment_number:"Vorschau Zahlungsnummer",default_formats:"Standardformate",default_formats_description:"Die unten angegebenen Formate werden verwendet, um die Felder bei der Buchung einer Zahlung automatisch auszuf\xFCllen.",default_payment_email_body:"Zahlung - E-Mail Text",company_address_format:"Firmenadressformat",from_customer_address_format:"Rechnungsadressen Format",payment_email_attachment:"Zahlungen als Anh\xE4nge verschicken",payment_email_attachment_setting_description:'Aktivieren Sie dies, wenn Sie Zahlungen als E-Mail-Anhang versenden m\xF6chten. Bitte beachten Sie, dass die Schaltfl\xE4che "Zahlung anzeigen" in E-Mails dann nicht mehr angezeigt wird.',payment_settings_updated:"Zahlungseinstellung erfolgreich aktualisiert"},items:{title:"Artikel",units:"Einheiten",add_item_unit:"Artikeleinheit hinzuf\xFCgen",edit_item_unit:"Elementeinheit bearbeiten",unit_name:"Einheitname",item_unit_added:"Artikeleinheit hinzugef\xFCgt",item_unit_updated:"Artikeleinheit aktualisiert",item_unit_confirm_delete:"Du kannst diese Artikeleinheit nicht wiederherstellen",already_in_use:"Diese Artikeleinheit ist bereits in Verwendung",deleted_message:"Artikeleinheit erfolgreich gel\xF6scht"},notes:{title:"Notizen",description:"Sparen Sie Zeit, indem Sie Notizen erstellen und diese auf Ihren Rechnungen, Angeboten und Zahlungen wiederverwenden.",notes:"Hinweise",type:"Art",add_note:"Notiz hinzuf\xFCgen",add_new_note:"Neue Notiz hinzuf\xFCgen",name:"Name",edit_note:"Notiz bearbeiten",note_added:"Notiz erfolgreich hinzugef\xFCgt",note_updated:"Notiz erfolgreich aktualisiert",note_confirm_delete:"Dieser Hinweis wird unwiderruflich gel\xF6scht",already_in_use:"Hinweis bereits in verwendet",deleted_message:"Notiz erfolgreich gel\xF6scht"}},account_settings:{profile_picture:"Profil Bild",name:"Name",email:"E-Mail",password:"Passwort",confirm_password:"Kennwort Best\xE4tigen",account_settings:"Konto-Einstellungen",save:"Speichern",section_description:"Sie k\xF6nnen Ihren Namen, Ihre E-Mail-Adresse und Ihr Passwort mit dem folgenden Formular aktualisieren.",updated_message:"Kontoeinstellungen erfolgreich aktualisiert"},user_profile:{name:"Name",email:"E-Mail",password:"Passwort",confirm_password:"Kennwort best\xE4tigen"},notification:{title:"Benachrichtigung",email:"Benachrichtigungen senden an",description:"Welche E-Mail-Benachrichtigungen m\xF6chten Sie erhalten wenn sich etwas \xE4ndert?",invoice_viewed:"Rechnung angezeigt",invoice_viewed_desc:"Wenn Ihr Kunde die gesendete Rechnung anzeigt bekommt.",estimate_viewed:"Angebot angesehen",estimate_viewed_desc:"Wenn Ihr Kunde das gesendete Angebot anzeigt bekommt.",save:"Speichern",email_save_message:"Email erfolgreich gespeichert",please_enter_email:"Bitte E-Mail eingeben"},roles:{title:"Rollen",description:"Rollen & Berechtigungen dieses Unternehmens verwalten",save:"Speichern",add_new_role:"Neue Rolle hinzuf\xFCgen",role_name:"Name der Rolle",added_on:"Hinzugef\xFCgt am",add_role:"Rolle hinzuf\xFCgen",edit_role:"Rolle bearbeiten",name:"Name",permission:"Berechtigung | Berechtigungen",select_all:"Alle ausw\xE4hlen",none:"Keine",confirm_delete:"Sie werden diese Rolle nicht wiederherstellen k\xF6nnen",created_message:"Rolle erfolgreich erstellt",updated_message:"Rolle erfolgreich aktualisiert",deleted_message:"Rolle erfolgreich gel\xF6scht",already_in_use:"Rolle wird bereits benutzt"},exchange_rate:{exchange_rate:"Wechselkurs",title:"Wechselkursprobleme korrigieren",description:"Bitte geben Sie den Wechselkurs aller unten genannten W\xE4hrungen ein, um Crater bei der korrekten Berechnung der Betr\xE4ge in {currency} zu unterst\xFCtzen.",drivers:"Treiber",new_driver:"Neuen Anbieter hinzuf\xFCgen",edit_driver:"Anbieter bearbeiten",select_driver:"Treiber ausw\xE4hlen",update:"w\xE4hle Wechselkurs ",providers_description:"Konfigurieren Sie hier Ihre Wechselkursanbieter, um automatisch den aktuellen Wechselkurs f\xFCr Transaktionen abzurufen.",key:"API-Schl\xFCssel",name:"Name",driver:"Treiber",is_default:"STANDARD",currency:"W\xE4hrungen",exchange_rate_confirm_delete:"Sie werden diesen Treiber nicht wiederherstellen k\xF6nnen",created_message:"Artikel erfolgreich erstellt",updated_message:"Anbieter erfolgreich aktualisiert",deleted_message:"Anbieter erfolgreich gel\xF6scht",error:" Aktive Treiber k\xF6nnen nicht gel\xF6scht werden",default_currency_error:"Diese W\xE4hrung wird bereits in einem der aktiven Anbieter verwendet",exchange_help_text:"Wechselkurs eingeben um von {currency} nach {baseCurrency} zu konvertieren",currency_freak:"CurrencyFreaks",currency_layer:"Currency Layer",open_exchange_rate:"Open Exchange Rate",currency_converter:"W\xE4hrungsumrechner",server:"Server",url:"URL",active:"Aktiv",currency_help_text:"Dieser Anbieter wird nur in oben ausgew\xE4hlten W\xE4hrungen verwendet",currency_in_used:"Die folgenden W\xE4hrungen sind bereits bei einem anderen Anbieter aktiv. Bitte entfernen Sie diese W\xE4hrungen aus der Auswahl, um diesen Anbieter erneut zu aktivieren."},tax_types:{title:"Steuers\xE4tze",add_tax:"Steuers\xE4tze hinzuf\xFCgen",edit_tax:"Steuer bearbeiten",description:"Sie k\xF6nnen Steuern nach Belieben hinzuf\xFCgen oder entfernen. Crater unterst\xFCtzt Steuern auf einzelne Artikel sowie auf die Rechnung.",add_new_tax:"Neuen Steuersatz hinzuf\xFCgen",tax_settings:"Einstellungen Steuersatz",tax_per_item:"Steuersatz pro Artikel",tax_name:"Name des Steuersatzes",compound_tax:"zusammengesetzte Steuer",percent:"Prozent",action:"Aktion",tax_setting_description:"Aktivieren Sie diese Option, wenn Sie den Steuersatz zu einzelnen Rechnungspositionen hinzuf\xFCgen m\xF6chten. Standardm\xE4\xDFig wird der Steuersatz direkt zur Rechnung hinzugef\xFCgt.",created_message:"Steuersatz erfolgreich erstellt",updated_message:"Steuersatz erfolgreich aktualisiert",deleted_message:"Steuersatz erfolgreich gel\xF6scht",confirm_delete:"Sie k\xF6nnen diesen Steuersatz nicht wiederherstellen",already_in_use:"Steuersatz wird bereits verwendet"},payment_modes:{title:"Zahlungsarten",description:"Transaktionsmodi f\xFCr Zahlungen",add_payment_mode:"Zahlungsart hinzuf\xFCgen",edit_payment_mode:"Zahlungsart bearbeiten",mode_name:"Name",payment_mode_added:"Zahlungsart hinzugef\xFCgt",payment_mode_updated:"Zahlungsart aktualisiert",payment_mode_confirm_delete:"Sie werden diese Zahlungsart nicht wiederherstellen k\xF6nnen",already_in_use:"Zahlungsart wird bereits verwendet",deleted_message:"Zahlungsart erfolgreich gel\xF6scht"},expense_category:{title:"Ausgabenkategorien",action:"Aktion",description:"F\xFCr das Hinzuf\xFCgen von Ausgabeneintr\xE4gen sind Kategorien erforderlich. Sie k\xF6nnen diese Kategorien nach Ihren W\xFCnschen hinzuf\xFCgen oder entfernen.",add_new_category:"Neue Kategorie hinzuf\xFCgen",add_category:"Kategorie hinzuf\xFCgen",edit_category:"Kategorie bearbeiten",category_name:"Kategorie Name",category_description:"Beschreibung",created_message:"Ausgabenkategorie erfolgreich erstellt",deleted_message:"Ausgabenkategorie erfolgreich gel\xF6scht",updated_message:"Ausgabenkategorie erfolgreich aktualisiert",confirm_delete:"Sie k\xF6nnen diese Ausgabenkategorie nicht wiederherstellen",already_in_use:"Kategorie wird bereits verwendet"},preferences:{currency:"W\xE4hrung",default_language:"Standardsprache",time_zone:"Zeitzone",fiscal_year:"Gesch\xE4ftsjahr",date_format:"Datum-Format",discount_setting:"Einstellung Rabatt",discount_per_item:"Rabatt pro Artikel ",discount_setting_description:"Aktivieren Sie diese Option, wenn Sie einzelnen Rechnungspositionen einen Rabatt hinzuf\xFCgen m\xF6chten. Standardm\xE4\xDFig wird der Rabatt direkt zur Rechnung hinzugef\xFCgt.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"Speichern",preference:"Pr\xE4ferenz | Pr\xE4ferenzen",general_settings:"Standardeinstellungen f\xFCr das System.",updated_message:"Einstellungen erfolgreich aktualisiert",select_language:"Sprache ausw\xE4hlen",select_time_zone:"Zeitzone ausw\xE4hlen",select_date_format:"W\xE4hle das Datumsformat",select_financial_year:"Gesch\xE4ftsjahr ausw\xE4hlen",recurring_invoice_status:"Status der Serienrechnung",create_status:"Status erstellen",active:"Aktiv",on_hold:"Pausiert",update_status:"Status aktualisieren",completed:"Abgeschlossen",company_currency_unchangeable:"Die W\xE4hrung des Unternehmens kann nicht ge\xE4ndert werden"},update_app:{title:"Applikation aktualisieren",description:"Sie k\xF6nnen Crater ganz einfach aktualisieren, indem Sie auf die Schaltfl\xE4che unten klicken, um nach einem neuen Update zu suchen.",check_update:"Nach Updates suchen",avail_update:"Neues Update verf\xFCgbar",next_version:"N\xE4chste Version",requirements:"Voraussetzungen",update:"Jetzt aktualisieren",update_progress:"Update l\xE4uft ...",progress_text:"Es dauert nur ein paar Minuten. Bitte aktualisieren Sie den Bildschirm nicht und schlie\xDFen Sie das Fenster nicht, bevor das Update abgeschlossen ist.",update_success:"App wurde aktualisiert! Bitte warten Sie, w\xE4hrend Ihr Browserfenster automatisch neu geladen wird.",latest_message:"Kein Update verf\xFCgbar! Du bist auf der neuesten Version.",current_version:"Aktuelle Version",download_zip_file:"Laden Sie die ZIP-Datei herunter",unzipping_package:"Paket entpacken",copying_files:"Dateien kopieren",deleting_files:"Ungenutzte Dateien l\xF6schen",running_migrations:"Ausf\xFChren von Migrationen",finishing_update:"Update beenden",update_failed:"Update fehlgeschlagen",update_failed_text:"Es tut uns leid! Ihr Update ist am folgenden Schritt fehlgeschlagen: {step}",update_warning:"Alle Anwendungsdateien und Standardvorlagen werden \xFCberschrieben, wenn Sie die Anwendung mit diesem Hilfsprogramm aktualisieren. Bitte machen Sie vor dem Update ein Backup Ihrer Vorlagen & Datenbank."},backup:{title:"Sicherung | Sicherungen",description:"Die Sicherung ist eine ZIP-Datei, die alle Dateien der ausgew\xE4hlten Pfade und eine Kopie der Datenbank enth\xE4lt",new_backup:"Neues Backup",create_backup:"Datensicherung erstellen",select_backup_type:"W\xE4hlen Sie den Sicherungs-Typ",backup_confirm_delete:"Dieses Backup wird unwiderruflich gel\xF6scht",path:"Pfad",new_disk:"Speicher hinzuf\xFCgen",created_at:"erstellt am",size:"Gr\xF6\xDFe",dropbox:"Dropbox",local:"Lokal",healthy:"intakt",amount_of_backups:"Menge an Sicherungen",newest_backups:"Neuste Sicherung",used_storage:"Verwendeter Speicher",select_disk:"Speicher ausw\xE4hlen",action:"Aktion",deleted_message:"Sicherung erfolgreich gel\xF6scht",created_message:"Backup erfolgreich erstellt",invalid_disk_credentials:"Ung\xFCltige Anmeldeinformationen f\xFCr ausgew\xE4hlten Speicher"},disk:{title:"Dateispeicher | Dateispeicher",description:"Standardm\xE4\xDFig verwendet Crater Ihre lokale Festplatte zum Speichern von Sicherungen, Avatar und anderen Bilddateien. Sie k\xF6nnen mehr als einen Speicherort wie DigitalOcean, S3 und Dropbox nach Ihren W\xFCnschen konfigurieren.",created_at:"erstellt am",dropbox:"Dropbox",name:"Name",driver:"Treiber",disk_type:"Art",disk_name:"Speicher Bezeichnung",new_disk:"Speicher hinzuf\xFCgen",filesystem_driver:"Dateisystem-Treiber",local_driver:"Lokaler Treiber",local_root:"Lokaler Pfad",public_driver:"\xD6ffentlicher Treiber",public_root:"\xD6ffentlicher Pfad",public_url:"\xD6ffentliche URL",public_visibility:"\xD6ffentliche Sichtbarkeit",media_driver:"Medientreiber",media_root:"Medienpfad",aws_driver:"AWS-Treiber",aws_key:"AWS-Schl\xFCssel",aws_secret:"AWS-Geheimnis",aws_region:"AWS-Region",aws_bucket:"AWS Bucket",aws_root:"AWS-Pfad",do_spaces_type:"Do Spaces-Typ",do_spaces_key:"Do Spaces Key",do_spaces_secret:"Do Spaces Secret",do_spaces_region:"Do Spaced Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaced Root",dropbox_type:"Dropbox Typ",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Schl\xFCssel",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Standard-Treiber",is_default:"Standard",set_default_disk:"Als Standard festlegen",set_default_disk_confirm:"Dieser Speicherort wird als Standard gesetzt und alle neuen PDFs werden auf diesem gespeichert",success_set_default_disk:"Speicher wurde als Standard festgelegt",save_pdf_to_disk:"PDFs auf Festplatte speichern",disk_setting_description:" Aktivieren Sie dies, um eine Kopie von jeder Rechnung, jedem Angebot & jedem Zahlungsbeleg als PDF automatisch auf ihrem Standard-Speicher abzulegen. Wenn Sie diese Option aktivieren, verringert sich die Ladezeit beim Betrachten der PDFs.",select_disk:"Speicherort ausw\xE4hlen",disk_settings:"Speichermedienkonfiguration",confirm_delete:"Ihre existierenden Dateien und Ordner auf der angegebenen Festplatte werden nicht beeinflusst, aber Dieser Speicherort wird aus Crater gel\xF6scht",action:"Aktion",edit_file_disk:"Speicherort editieren",success_create:"Speicher erfolgreich hinzugef\xFCgt",success_update:"Speicher erfolgreich bearbeitet",error:"Hinzuf\xFCgen des Speichers gescheitert",deleted_message:"Speicher erfolgreich gel\xF6scht",disk_variables_save_successfully:"Speicher erfolgreich konfiguriert",disk_variables_save_error:"Konfiguration des Speicher gescheitert",invalid_disk_credentials:"Ung\xFCltige Anmeldeinformationen f\xFCr ausgew\xE4hlten Speicher"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},Gd={account_info:"Account-Informationen",account_info_desc:"Die folgenden Details werden zum Erstellen des Hauptadministratorkontos verwendet. Sie k\xF6nnen die Details auch jederzeit nach dem Anmelden \xE4ndern.",name:"Name",email:"E-Mail",password:"Passwort",confirm_password:"Passwort best\xE4tigen",save_cont:"Speichern und weiter",company_info:"Unternehmensinformationen",company_info_desc:"Diese Informationen werden auf Rechnungen angezeigt. Beachten Sie, dass Sie diese sp\xE4ter auf der Einstellungsseite bearbeiten k\xF6nnen.",company_name:"Firmenname",company_logo:"Firmenlogo",logo_preview:"Vorschau Logo",preferences:"Einstellungen",preferences_desc:"Standardeinstellungen f\xFCr das System.",currency_set_alert:"Die W\xE4hrung des Unternehmens kann sp\xE4ter nicht mehr ge\xE4ndert werden.",country:"Land",state:"Bundesland",city:"Stadt",address:"Adresse",street:"Stra\xDFe1 | Stra\xDFe2",phone:"Telefon",zip_code:"Postleitzahl",go_back:"Zur\xFCck",currency:"W\xE4hrung",language:"Sprache",time_zone:"Zeitzone",fiscal_year:"Gesch\xE4ftsjahr",date_format:"Datumsformat",from_address:"Absender",username:"Benutzername",next:"Weiter",continue:"Weiter",skip:"\xDCberspringen",database:{database:"URL der Seite & Datenbank",connection:"Datenbank Verbindung",host:"Datenbank Host",port:"Datenbank Port",password:"Datenbank Passwort",app_url:"App-URL",app_domain:"Domain der App",username:"Datenbank Benutzername",db_name:"Datenbank Name",db_path:"Datenbankpfad",desc:"Erstellen Sie eine Datenbank auf Ihrem Server und legen Sie die Anmeldeinformationen mithilfe des folgenden Formulars fest."},permissions:{permissions:"Berechtigungen",permission_confirm_title:"Sind Sie sicher, dass Sie fortfahren m\xF6chten?",permission_confirm_desc:"Pr\xFCfung der Berechtigung der Ordner fehlgeschlagen.",permission_desc:"Unten finden Sie eine Liste der Ordnerberechtigungen, die erforderlich sind, damit die App funktioniert. Wenn die Berechtigungspr\xFCfung fehlschl\xE4gt, m\xFCssen Sie Ihre Ordnerberechtigungen aktualisieren."},verify_domain:{title:"Domain-Verifizierung",desc:"Crater verwendet Session-basierte Authentifizierung, die aus Sicherheitsgr\xFCnden eine Domain-Verifizierung erfordert. Bitte geben Sie die Domain ein, auf der Sie auf Ihre Webanwendung zugreifen werden.",app_domain:"Domain der App",verify_now:"Jetzt verifizieren",success:"Domain erfolgreich verifiziert.",failed:"Domain\xFCberpr\xFCfung fehlgeschlagen. Bitte geben Sie einen g\xFCltigen Domainnamen ein.",verify_and_continue:"Verifizieren und fortfahren"},mail:{host:"E-Mail-Host",port:"E-Mail-Port",driver:"E-Mail-Treiber",secret:"Verschl\xFCsselung",mailgun_secret:"Mailgun Verschl\xFCsselung",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun-Endpunkt",ses_secret:"SES Verschl\xFCsselung",ses_key:"SES-Taste",password:"E-Mail-Passwort",username:"E-Mail-Benutzername",mail_config:"E-Mail-Konfiguration",from_name:"Von E-Mail-Absendername",from_mail:"Von E-Mail-Absenderadresse",encryption:"E-Mail-Verschl\xFCsselung",mail_config_desc:"Unten finden Sie das Formular zum Konfigurieren des E-Mail-Treibers zum Senden von E-Mails \xFCber die App. Sie k\xF6nnen auch Drittanbieter wie Sendgrid, SES usw. konfigurieren."},req:{system_req:"System Anforderungen",php_req_version:"Php (version {version} erforderlich)",check_req:"Anforderungen pr\xFCfen",system_req_desc:"Crater hat einige Serveranforderungen. Stellen Sie sicher, dass Ihr Server die erforderliche PHP-Version und alle unten genannten Erweiterungen hat."},errors:{migrate_failed:"Migration ist Fehlgeschlagen",database_variables_save_error:"Konfiguration kann nicht in EN.env-Datei geschrieben werden. Bitte \xFCberpr\xFCfen Sie die Dateiberechtigungen.",mail_variables_save_error:"E-Mail-Konfiguration fehlgeschlagen.",connection_failed:"Datenbankverbindung fehlgeschlagen",database_should_be_empty:"Datenbank sollte leer sein"},success:{mail_variables_save_successfully:"E-Mail erfolgreich konfiguriert",database_variables_save_successfully:"Datenbank erfolgreich konfiguriert."}},Jd={invalid_phone:"Ung\xFCltige Telefonnummer",invalid_url:"Ung\xFCltige URL (Bsp.: http://www.crater.com)",invalid_domain_url:"Ung\xFCltige URL (Bsp.: crater.com)",required:"Feld ist erforderlich",email_incorrect:"Ung\xFCltige E-Mail.",email_already_taken:"Die E-Mail ist bereits vergeben.",email_does_not_exist:"Benutzer mit der angegebenen E-Mail existiert nicht",item_unit_already_taken:"Die Artikeleinheit wurde bereits vergeben",payment_mode_already_taken:"Der Zahlungsmodus wurde bereits verwendet",send_reset_link:"Link zum Zur\xFCcksetzen senden",not_yet:"Noch erhalten? Erneut senden",password_min_length:"Password mu\xDF {count} Zeichen enthalten",name_min_length:"Name muss mindestens {count} Zeichen enthalten.",prefix_min_length:"Pr\xE4fix muss mindestens {count} Buchstaben enthalten.",enter_valid_tax_rate:"Geben Sie einen g\xFCltige Steuersatz ein",numbers_only:"Nur Zahlen.",characters_only:"Nur Zeichen.",password_incorrect:"Passw\xF6rter m\xFCssen identisch sein",password_length:"Passwort muss {count} Zeichen lang sein.",qty_must_greater_than_zero:"Die Menge muss gr\xF6\xDFer als 0 sein.",price_greater_than_zero:"Preis muss gr\xF6\xDFer als 0 sein.",payment_greater_than_zero:"Die Zahlung muss gr\xF6\xDFer als 0 sein.",payment_greater_than_due_amount:"Die eingegebene Zahlung ist mehr als der f\xE4llige Betrag dieser Rechnung.",quantity_maxlength:"Die Menge sollte nicht gr\xF6\xDFer als 20 Ziffern sein.",price_maxlength:"Der Preis sollte nicht gr\xF6\xDFer als 20 Ziffern sein.",price_minvalue:"Der Preis sollte gr\xF6\xDFer als 0 sein.",amount_maxlength:"Der Betrag sollte nicht gr\xF6\xDFer als 20 Ziffern sein.",amount_minvalue:"Betrag sollte gr\xF6\xDFer als 0 sein.",discount_maxlength:"Rabatt sollte nicht gr\xF6\xDFer als der maximale Rabatt sein",description_maxlength:"Die Beschreibung sollte nicht l\xE4nger als 255 Zeichen sein.",subject_maxlength:"Der Betreff sollte nicht l\xE4nger als 100 Zeichen sein.",message_maxlength:"Die Nachricht sollte nicht l\xE4nger als 255 Zeichen sein.",maximum_options_error:"Maximal {max} Optionen ausgew\xE4hlt. Entfernen Sie zuerst eine ausgew\xE4hlte Option, um eine andere auszuw\xE4hlen.",notes_maxlength:"Notizen sollten nicht l\xE4nger als 255 Zeichen sein.",address_maxlength:"Die Adresse sollte nicht l\xE4nger als 255 Zeichen sein.",ref_number_maxlength:"Ref Number sollte nicht l\xE4nger als 255 Zeichen sein.",prefix_maxlength:"Das Pr\xE4fix sollte nicht l\xE4nger als 5 Zeichen sein.",something_went_wrong:"Da ist etwas schief gelaufen",number_length_minvalue:"Nummernl\xE4nge sollte gr\xF6\xDFer als 0 sein",at_least_one_ability:"Bitte w\xE4hlen Sie mindestens eine Berechtigung aus.",valid_driver_key:"Bitte geben Sie einen g\xFCltigen {driver} Schl\xFCssel ein.",valid_exchange_rate:"Bitte geben Sie einen g\xFCltigen Wechselkurs ein.",company_name_not_same:"Name des Unternehmens muss mit dem angegebenen Namen \xFCbereinstimmen."},Qd={starter_plan:"Diese Funktion ist erst ab dem Starterplan verf\xFCgbar!",invalid_provider_key:"Bitte geben Sie einen g\xFCltigen API-Schl\xFCssel f\xFCr den Anbieter ein.",estimate_number_used:"Die Angebotsnummer ist bereits vergeben.",invoice_number_used:"Die Rechnungsnummer ist bereits vergeben.",payment_attached:"Dieser Rechnung ist bereits eine Zahlung zugewiesen. Bitte zuerst die zugewiesenen Zahlungen l\xF6schen, um mit der Entfernung fortzufahren.",payment_number_used:"Die Zahlungsnummer ist bereits vergeben.",name_already_taken:"Der Name ist bereits vergeben.",receipt_does_not_exist:"Beleg existiert nicht.",customer_cannot_be_changed_after_payment_is_added:"Kunde kann nach dem Hinzuf\xFCgen der Zahlung nicht ge\xE4ndert werden",invalid_credentials:"Ung\xFCltige Anmeldeinformationen.",not_allowed:"Nicht erlaubt",login_invalid_credentials:"Diese Anmeldeinformationen stimmen nicht mit unseren Aufzeichnungen \xFCberein.",enter_valid_cron_format:"Bitte geben Sie ein g\xFCltiges Cron-Format ein",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},Xd="Angebot",el="Angebotsnummer",tl="Angebotsdatum",al="Ablaufdatum",il="Rechnung",nl="Rechnungsnummer",sl="Rechnungsdatum",ol="F\xE4lligkeitsdatum",rl="Hinweise",dl="Artikel",ll="Menge",cl="Preis",_l="Rabatt",ul="Summe",ml="Zwischensumme",pl="Gesamt",gl="Zahlung",fl="Zahlungsbeleg",vl="Zahlungsdatum",hl="Zahlungsnummer",yl="Zahlungsart",bl="Betrag erhalten",kl="Ausgaben Bericht",wl="Gesamtausgaben",xl="Gewinn & Verlust Bericht",zl="Kundenverkaufs Bericht",Sl="Artikelverkaufs Bericht",Pl="Steuer Bericht",jl="Einkommen",Al="Nettogewinn",Dl="Umsatzbericht: Nach Kunde",Cl="GESAMTUMSATZ",El="Umsatzbericht: Nach Artikel",Il="Umsatzsteuer BERICHT",Nl="Gesamte Umsatzsteuer",Tl="Steuers\xE4tze",Rl="Ausgaben",Ml="Rechnungsempf\xE4nger:",Fl="Versand an:",$l="Erhalten von:",Ul="Steuer";var Vl={navigation:Ed,general:Id,dashboard:Nd,tax_types:Td,global_search:Rd,company_switcher:Md,dateRange:Fd,customers:$d,items:Ud,estimates:Vd,invoices:Od,recurring_invoices:Ld,payments:Bd,expenses:qd,login:Kd,modules:Wd,users:Zd,reports:Hd,settings:Yd,wizard:Gd,validation:Jd,errors:Qd,pdf_estimate_label:Xd,pdf_estimate_number:el,pdf_estimate_date:tl,pdf_estimate_expire_date:al,pdf_invoice_label:il,pdf_invoice_number:nl,pdf_invoice_date:sl,pdf_invoice_due_date:ol,pdf_notes:rl,pdf_items_label:dl,pdf_quantity_label:ll,pdf_price_label:cl,pdf_discount_label:_l,pdf_amount_label:ul,pdf_subtotal:ml,pdf_total:pl,pdf_payment_label:gl,pdf_payment_receipt_label:fl,pdf_payment_date:vl,pdf_payment_number:hl,pdf_payment_mode:yl,pdf_payment_amount_received_label:bl,pdf_expense_report_label:kl,pdf_total_expenses_label:wl,pdf_profit_loss_label:xl,pdf_sales_customers_label:zl,pdf_sales_items_label:Sl,pdf_tax_summery_label:Pl,pdf_income_label:jl,pdf_net_profit_label:Al,pdf_customer_sales_report:Dl,pdf_total_sales_label:Cl,pdf_item_sales_label:El,pdf_tax_report_label:Il,pdf_total_tax_label:Nl,pdf_tax_types_label:Tl,pdf_expenses_label:Rl,pdf_bill_to:Ml,pdf_ship_to:Fl,pdf_received_from:$l,pdf_tax_label:Ul};const Ol={dashboard:"Dashboard",customers:"Customers",items:"Items",invoices:"Invoices","recurring-invoices":"Recurring Invoices",expenses:"Expenses",estimates:"Estimates",payments:"Payments",reports:"Reports",settings:"Settings",logout:"Logout",users:"Users",modules:"Modules"},Ll={add_company:"Add Company",view_pdf:"View PDF",copy_pdf_url:"Copy PDF Url",download_pdf:"Download PDF",save:"Save",create:"Create",cancel:"Cancel",update:"Update",deselect:"Deselect",download:"Download",from_date:"From Date",to_date:"To Date",from:"From",to:"To",ok:"Ok",yes:"Yes",no:"No",sort_by:"Sort By",ascending:"Ascending",descending:"Descending",subject:"Subject",body:"Body",message:"Message",send:"Send",preview:"Preview",go_back:"Go Back",back_to_login:"Back to Login?",home:"Home",filter:"Filter",delete:"Delete",edit:"Edit",view:"View",add_new_item:"Add New Item",clear_all:"Clear All",showing:"Showing",of:"of",actions:"Actions",subtotal:"SUBTOTAL",discount:"DISCOUNT",fixed:"Fixed",percentage:"Percentage",tax:"TAX",total_amount:"TOTAL AMOUNT",bill_to:"Bill to",ship_to:"Ship to",due:"Due",draft:"Draft",sent:"Sent",all:"All",select_all:"Select All",select_template:"Select Template",choose_file:"Click here to choose a file",choose_template:"Choose a template",choose:"Choose",remove:"Remove",select_a_status:"Select a status",select_a_tax:"Select a tax",search:"Search",are_you_sure:"Are you sure?",list_is_empty:"List is empty.",no_tax_found:"No tax found!",four_zero_four:"404",you_got_lost:"Whoops! You got Lost!",go_home:"Go Home",test_mail_conf:"Test Mail Configuration",send_mail_successfully:"Mail sent successfully",setting_updated:"Setting updated successfully",select_state:"Select state",select_country:"Select Country",select_city:"Select City",street_1:"Street 1",street_2:"Street 2",action_failed:"Action Failed",retry:"Retry",choose_note:"Choose Note",no_note_found:"No Note Found",insert_note:"Insert Note",copied_pdf_url_clipboard:"Copied PDF url to clipboard!",copied_url_clipboard:"Copied url to clipboard!",docs:"Docs",do_you_wish_to_continue:"Do you wish to continue?",note:"Note",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},Bl={select_year:"Select year",cards:{due_amount:"Amount Due",customers:"Customers",invoices:"Invoices",estimates:"Estimates",payments:"Payments"},chart_info:{total_sales:"Sales",total_receipts:"Receipts",total_expense:"Expenses",net_income:"Net Income",year:"Select year"},monthly_chart:{title:"Sales & Expenses"},recent_invoices_card:{title:"Due Invoices",due_on:"Due On",customer:"Customer",amount_due:"Amount Due",actions:"Actions",view_all:"View All"},recent_estimate_card:{title:"Recent Estimates",date:"Date",customer:"Customer",amount_due:"Amount Due",actions:"Actions",view_all:"View All"}},ql={name:"Name",description:"Description",percent:"Percent",compound_tax:"Compound Tax"},Kl={search:"Search...",customers:"Customers",users:"Users",no_results_found:"No Results Found"},Wl={label:"SWITCH COMPANY",no_results_found:"No Results Found",add_new_company:"Add new company",new_company:"New company",created_message:"Company created successfully"},Zl={today:"Today",this_week:"This Week",this_month:"This Month",this_quarter:"This Quarter",this_year:"This Year",previous_week:"Previous Week",previous_month:"Previous Month",previous_quarter:"Previous Quarter",previous_year:"Previous Year",custom:"Custom"},Hl={title:"Customers",prefix:"Prefix",add_customer:"Add Customer",contacts_list:"Customer List",name:"Name",mail:"Mail | Mails",statement:"Statement",display_name:"Display Name",primary_contact_name:"Primary Contact Name",contact_name:"Contact Name",amount_due:"Amount Due",email:"Email",address:"Address",phone:"Phone",website:"Website",overview:"Overview",invoice_prefix:"Invoice Prefix",estimate_prefix:"Estimate Prefix",payment_prefix:"Payment Prefix",enable_portal:"Enable Portal",country:"Country",state:"State",city:"City",zip_code:"Zip Code",added_on:"Added On",action:"Action",password:"Password",confirm_password:"Confirm Password",street_number:"Street Number",primary_currency:"Primary Currency",description:"Description",add_new_customer:"Add New Customer",save_customer:"Save Customer",update_customer:"Update Customer",customer:"Customer | Customers",new_customer:"New Customer",edit_customer:"Edit Customer",basic_info:"Basic Info",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"Billing Address",shipping_address:"Shipping Address",copy_billing_address:"Copy from Billing",no_customers:"No customers yet!",no_customers_found:"No customers found!",no_contact:"No contact",no_contact_name:"No contact name",list_of_customers:"This section will contain the list of customers.",primary_display_name:"Primary Display Name",select_currency:"Select currency",select_a_customer:"Select a customer",type_or_click:"Type or click to select",new_transaction:"New Transaction",no_matching_customers:"There are no matching customers!",phone_number:"Phone Number",create_date:"Create Date",confirm_delete:"You will not be able to recover this customer and all the related Invoices, Estimates and Payments. | You will not be able to recover these customers and all the related Invoices, Estimates and Payments.",created_message:"Customer created successfully",updated_message:"Customer updated successfully",address_updated_message:"Address Information Updated succesfully",deleted_message:"Customer deleted successfully | Customers deleted successfully",edit_currency_not_allowed:"Cannot change currency once transactions created."},Yl={title:"Items",items_list:"Items List",name:"Name",unit:"Unit",description:"Description",added_on:"Added On",price:"Price",date_of_creation:"Date Of Creation",not_selected:"No item selected",action:"Action",add_item:"Add Item",save_item:"Save Item",update_item:"Update Item",item:"Item | Items",add_new_item:"Add New Item",new_item:"New Item",edit_item:"Edit Item",no_items:"No items yet!",list_of_items:"This section will contain the list of items.",select_a_unit:"select unit",taxes:"Taxes",item_attached_message:"Cannot delete an item which is already in use",confirm_delete:"You will not be able to recover this Item | You will not be able to recover these Items",created_message:"Item created successfully",updated_message:"Item updated successfully",deleted_message:"Item deleted successfully | Items deleted successfully"},Gl={title:"Estimates",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"Estimate | Estimates",estimates_list:"Estimates List",days:"{days} Days",months:"{months} Month",years:"{years} Year",all:"All",paid:"Paid",unpaid:"Unpaid",customer:"CUSTOMER",ref_no:"REF NO.",number:"NUMBER",amount_due:"AMOUNT DUE",partially_paid:"Partially Paid",total:"Total",discount:"Discount",sub_total:"Sub Total",estimate_number:"Estimate Number",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",due_date:"Due Date",expiry_date:"Expiry Date",status:"Status",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",tax:"Tax",estimate_template:"Template",convert_to_invoice:"Convert to Invoice",mark_as_sent:"Mark as Sent",send_estimate:"Send Estimate",resend_estimate:"Resend Estimate",record_payment:"Record Payment",add_estimate:"Add Estimate",save_estimate:"Save Estimate",confirm_conversion:"This estimate will be used to create a new Invoice.",conversion_message:"Invoice created successful",confirm_send_estimate:"This estimate will be sent via email to the customer",confirm_mark_as_sent:"This estimate will be marked as sent",confirm_mark_as_accepted:"This estimate will be marked as Accepted",confirm_mark_as_rejected:"This estimate will be marked as Rejected",no_matching_estimates:"There are no matching estimates!",mark_as_sent_successfully:"Estimate marked as sent successfully",send_estimate_successfully:"Estimate sent successfully",errors:{required:"Field is required"},accepted:"Accepted",rejected:"Rejected",expired:"Expired",sent:"Sent",draft:"Draft",viewed:"Viewed",declined:"Declined",new_estimate:"New Estimate",add_new_estimate:"Add New Estimate",update_Estimate:"Update Estimate",edit_estimate:"Edit Estimate",items:"items",Estimate:"Estimate | Estimates",add_new_tax:"Add New Tax",no_estimates:"No estimates yet!",list_of_estimates:"This section will contain the list of estimates.",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",marked_as_accepted_message:"Estimate marked as accepted",marked_as_rejected_message:"Estimate marked as rejected",confirm_delete:"You will not be able to recover this Estimate | You will not be able to recover these Estimates",created_message:"Estimate created successfully",updated_message:"Estimate updated successfully",deleted_message:"Estimate deleted successfully | Estimates deleted successfully",something_went_wrong:"something went wrong",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"}},Jl={title:"Invoices",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"Invoices List",invoice_information:"Invoice Information",days:"{days} Days",months:"{months} Month",years:"{years} Year",all:"All",paid:"Paid",unpaid:"Unpaid",viewed:"Viewed",overdue:"Overdue",completed:"Completed",customer:"CUSTOMER",paid_status:"PAID STATUS",ref_no:"REF NO.",number:"NUMBER",amount_due:"AMOUNT DUE",partially_paid:"Partially Paid",total:"Total",discount:"Discount",sub_total:"Sub Total",invoice:"Invoice | Invoices",invoice_number:"Invoice Number",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",due_date:"Due Date",status:"Status",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",view:"View",send_invoice:"Send Invoice",resend_invoice:"Resend Invoice",invoice_template:"Invoice Template",conversion_message:"Invoice cloned successful",template:"Select Template",mark_as_sent:"Mark as sent",confirm_send_invoice:"This invoice will be sent via email to the customer",invoice_mark_as_sent:"This invoice will be marked as sent",confirm_mark_as_accepted:"This invoice will be marked as Accepted",confirm_mark_as_rejected:"This invoice will be marked as Rejected",confirm_send:"This invoice will be sent via email to the customer",invoice_date:"Invoice Date",record_payment:"Record Payment",add_new_invoice:"Add New Invoice",update_expense:"Update Expense",edit_invoice:"Edit Invoice",new_invoice:"New Invoice",save_invoice:"Save Invoice",update_invoice:"Update Invoice",add_new_tax:"Add New Tax",no_invoices:"No Invoices yet!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"This section will contain the list of invoices.",select_invoice:"Select Invoice",no_matching_invoices:"There are no matching invoices!",mark_as_sent_successfully:"Invoice marked as sent successfully",invoice_sent_successfully:"Invoice sent successfully",cloned_successfully:"Invoice cloned successfully",clone_invoice:"Clone Invoice",confirm_clone:"This invoice will be cloned into a new Invoice",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"},payment_attached_message:"One of the selected invoices already have a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal",confirm_delete:"You will not be able to recover this Invoice | You will not be able to recover these Invoices",created_message:"Invoice created successfully",updated_message:"Invoice updated successfully",deleted_message:"Invoice deleted successfully | Invoices deleted successfully",marked_as_sent_message:"Invoice marked as sent successfully",something_went_wrong:"something went wrong",invalid_due_amount_message:"Total Invoice amount cannot be less than total paid amount for this Invoice. Please update the invoice or delete the associated payments to continue."},Ql={title:"Recurring Invoices",invoices_list:"Recurring Invoices List",days:"{days} Days",months:"{months} Month",years:"{years} Year",all:"All",paid:"Paid",unpaid:"Unpaid",viewed:"Viewed",overdue:"Overdue",active:"Active",completed:"Completed",customer:"CUSTOMER",paid_status:"PAID STATUS",ref_no:"REF NO.",number:"NUMBER",amount_due:"AMOUNT DUE",partially_paid:"Partially Paid",total:"Total",discount:"Discount",sub_total:"Sub Total",invoice:"Recurring Invoice | Recurring Invoices",invoice_number:"Recurring Invoice Number",next_invoice_date:"Next Invoice Date",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",limit_by:"Limit by",limit_date:"Limit Date",limit_count:"Limit Count",count:"Count",status:"Status",select_a_status:"Select a status",working:"Working",on_hold:"On Hold",complete:"Completed",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",view:"View",basic_info:"Basic Info",send_invoice:"Send Recurring Invoice",auto_send:"Auto Send",resend_invoice:"Resend Recurring Invoice",invoice_template:"Recurring Invoice Template",conversion_message:"Recurring Invoice cloned successful",template:"Template",mark_as_sent:"Mark as sent",confirm_send_invoice:"This recurring invoice will be sent via email to the customer",invoice_mark_as_sent:"This recurring invoice will be marked as sent",confirm_send:"This recurring invoice will be sent via email to the customer",starts_at:"Start Date",due_date:"Invoice Due Date",record_payment:"Record Payment",add_new_invoice:"Add New Recurring Invoice",update_expense:"Update Expense",edit_invoice:"Edit Recurring Invoice",new_invoice:"New Recurring Invoice",send_automatically:"Send Automatically",send_automatically_desc:"Enable this, if you would like to send the invoice automatically to the customer when its created.",save_invoice:"Save Recurring Invoice",update_invoice:"Update Recurring Invoice",add_new_tax:"Add New Tax",no_invoices:"No Recurring Invoices yet!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"This section will contain the list of recurring invoices.",select_invoice:"Select Invoice",no_matching_invoices:"There are no matching recurring invoices!",mark_as_sent_successfully:"Recurring Invoice marked as sent successfully",invoice_sent_successfully:"Recurring Invoice sent successfully",cloned_successfully:"Recurring Invoice cloned successfully",clone_invoice:"Clone Recurring Invoice",confirm_clone:"This recurring invoice will be cloned into a new Recurring Invoice",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"},frequency:{title:"Frequency",select_frequency:"Select Frequency",minute:"Minute",hour:"Hour",day_month:"Day of month",month:"Month",day_week:"Day of week"},confirm_delete:"You will not be able to recover this Invoice | You will not be able to recover these Invoices",created_message:"Recurring Invoice created successfully",updated_message:"Recurring Invoice updated successfully",deleted_message:"Recurring Invoice deleted successfully | Recurring Invoices deleted successfully",marked_as_sent_message:"Recurring Invoice marked as sent successfully",user_email_does_not_exist:"User email does not exist",something_went_wrong:"something went wrong",invalid_due_amount_message:"Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue."},Xl={title:"Payments",payments_list:"Payments List",record_payment:"Record Payment",customer:"Customer",date:"Date",amount:"Amount",action:"Action",payment_number:"Payment Number",payment_mode:"Payment Mode",invoice:"Invoice",note:"Note",add_payment:"Add Payment",new_payment:"New Payment",edit_payment:"Edit Payment",view_payment:"View Payment",add_new_payment:"Add New Payment",send_payment_receipt:"Send Payment Receipt",send_payment:"Send Payment",save_payment:"Save Payment",update_payment:"Update Payment",payment:"Payment | Payments",no_payments:"No payments yet!",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"There are no matching payments!",list_of_payments:"This section will contain the list of payments.",select_payment_mode:"Select payment mode",confirm_mark_as_sent:"This estimate will be marked as sent",confirm_send_payment:"This payment will be sent via email to the customer",send_payment_successfully:"Payment sent successfully",something_went_wrong:"something went wrong",confirm_delete:"You will not be able to recover this Payment | You will not be able to recover these Payments",created_message:"Payment created successfully",updated_message:"Payment updated successfully",deleted_message:"Payment deleted successfully | Payments deleted successfully",invalid_amount_message:"Payment amount is invalid"},ec={title:"Expenses",expenses_list:"Expenses List",select_a_customer:"Select a customer",expense_title:"Title",customer:"Customer",currency:"Currency",contact:"Contact",category:"Category",from_date:"From Date",to_date:"To Date",expense_date:"Date",description:"Description",receipt:"Receipt",amount:"Amount",action:"Action",not_selected:"Not selected",note:"Note",category_id:"Category Id",date:"Date",add_expense:"Add Expense",add_new_expense:"Add New Expense",save_expense:"Save Expense",update_expense:"Update Expense",download_receipt:"Download Receipt",edit_expense:"Edit Expense",new_expense:"New Expense",expense:"Expense | Expenses",no_expenses:"No expenses yet!",list_of_expenses:"This section will contain the list of expenses.",confirm_delete:"You will not be able to recover this Expense | You will not be able to recover these Expenses",created_message:"Expense created successfully",updated_message:"Expense updated successfully",deleted_message:"Expense deleted successfully | Expenses deleted successfully",categories:{categories_list:"Categories List",title:"Title",name:"Name",description:"Description",amount:"Amount",actions:"Actions",add_category:"Add Category",new_category:"New Category",category:"Category | Categories",select_a_category:"Select a category"}},tc={email:"Email",password:"Password",forgot_password:"Forgot Password?",or_signIn_with:"or Sign in with",login:"Login",register:"Register",reset_password:"Reset Password",password_reset_successfully:"Password Reset Successfully",enter_email:"Enter email",enter_password:"Enter Password",retype_password:"Retype Password"},ac={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},ic={title:"Users",users_list:"Users List",name:"Name",description:"Description",added_on:"Added On",date_of_creation:"Date Of Creation",action:"Action",add_user:"Add User",save_user:"Save User",update_user:"Update User",user:"User | Users",add_new_user:"Add New User",new_user:"New User",edit_user:"Edit User",no_users:"No users yet!",list_of_users:"This section will contain the list of users.",email:"Email",phone:"Phone",password:"Password",user_attached_message:"Cannot delete an item which is already in use",confirm_delete:"You will not be able to recover this User | You will not be able to recover these Users",created_message:"User created successfully",updated_message:"User updated successfully",deleted_message:"User deleted successfully | Users deleted successfully",select_company_role:"Select Role for {company}",companies:"Companies"},nc={title:"Report",from_date:"From Date",to_date:"To Date",status:"Status",paid:"Paid",unpaid:"Unpaid",download_pdf:"Download PDF",view_pdf:"View PDF",update_report:"Update Report",report:"Report | Reports",profit_loss:{profit_loss:"Profit & Loss",to_date:"To Date",from_date:"From Date",date_range:"Select Date Range"},sales:{sales:"Sales",date_range:"Select Date Range",to_date:"To Date",from_date:"From Date",report_type:"Report Type"},taxes:{taxes:"Taxes",to_date:"To Date",from_date:"From Date",date_range:"Select Date Range"},errors:{required:"Field is required"},invoices:{invoice:"Invoice",invoice_date:"Invoice Date",due_date:"Due Date",amount:"Amount",contact_name:"Contact Name",status:"Status"},estimates:{estimate:"Estimate",estimate_date:"Estimate Date",due_date:"Due Date",estimate_number:"Estimate Number",ref_number:"Ref Number",amount:"Amount",contact_name:"Contact Name",status:"Status"},expenses:{expenses:"Expenses",category:"Category",date:"Date",amount:"Amount",to_date:"To Date",from_date:"From Date",date_range:"Select Date Range"}},sc={menu_title:{account_settings:"Account Settings",company_information:"Company Information",customization:"Customization",preferences:"Preferences",notifications:"Notifications",tax_types:"Tax Types",expense_category:"Expense Categories",update_app:"Update App",backup:"Backup",file_disk:"File Disk",custom_fields:"Custom Fields",payment_modes:"Payment Modes",notes:"Notes",exchange_rate:"Exchange Rate",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"Settings",setting:"Settings | Settings",general:"General",language:"Language",primary_currency:"Primary Currency",timezone:"Time Zone",date_format:"Date Format",currencies:{title:"Currencies",currency:"Currency | Currencies",currencies_list:"Currencies List",select_currency:"Select Currency",name:"Name",code:"Code",symbol:"Symbol",precision:"Precision",thousand_separator:"Thousand Separator",decimal_separator:"Decimal Separator",position:"Position",position_of_symbol:"Position Of Symbol",right:"Right",left:"Left",action:"Action",add_currency:"Add Currency"},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail Driver",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"Mail Password",username:"Mail Username",mail_config:"Mail Configuration",from_name:"From Mail Name",from_mail:"From Mail Address",encryption:"Mail Encryption",mail_config_desc:"Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc."},pdf:{title:"PDF Setting",footer_text:"Footer Text",pdf_layout:"PDF Layout"},company_info:{company_info:"Company info",company_name:"Company Name",company_logo:"Company Logo",section_description:"Information about your company that will be displayed on invoices, estimates and other documents created by Crater.",phone:"Phone",country:"Country",state:"State",city:"City",address:"Address",zip:"Zip",save:"Save",delete:"Delete",updated_message:"Company information updated successfully",delete_company:"Delete Company",delete_company_description:"Once you delete your company, you will lose all the data and files associated with it permanently.",are_you_absolutely_sure:"Are you absolutely sure?",delete_company_modal_desc:"This action cannot be undone. This will permanently delete {company} and all of its associated data.",delete_company_modal_label:"Please type {company} to confirm"},custom_fields:{title:"Custom Fields",section_description:"Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.",add_custom_field:"Add Custom Field",edit_custom_field:"Edit Custom Field",field_name:"Field Name",label:"Label",type:"Type",name:"Name",slug:"Slug",required:"Required",placeholder:"Placeholder",help_text:"Help Text",default_value:"Default Value",prefix:"Prefix",starting_number:"Starting Number",model:"Model",help_text_description:"Enter some text to help users understand the purpose of this custom field.",suffix:"Suffix",yes:"Yes",no:"No",order:"Order",custom_field_confirm_delete:"You will not be able to recover this Custom Field",already_in_use:"Custom Field is already in use",deleted_message:"Custom Field deleted successfully",options:"options",add_option:"Add Options",add_another_option:"Add another option",sort_in_alphabetical_order:"Sort in Alphabetical Order",add_options_in_bulk:"Add options in bulk",use_predefined_options:"Use Predefined Options",select_custom_date:"Select Custom Date",select_relative_date:"Select Relative Date",ticked_by_default:"Ticked by default",updated_message:"Custom Field updated successfully",added_message:"Custom Field added successfully",press_enter_to_add:"Press enter to add new option",model_in_use:"Cannot update model for fields which are already in use.",type_in_use:"Cannot update type for fields which are already in use."},customization:{customization:"customization",updated_message:"Company information updated successfully",save:"Save",insert_fields:"Insert Fields",learn_custom_format:"Learn how to use custom format",add_new_component:"Add New Component",component:"Component",Parameter:"Parameter",series:"Series",series_description:"To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.",series_param_label:"Series Value",delimiter:"Delimiter",delimiter_description:"Single character for specifying the boundary between 2 separate components. By default its set to -",delimiter_param_label:"Delimiter Value",date_format:"Date Format",date_format_description:"A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.",date_format_param_label:"Format",sequence:"Sequence",sequence_description:"Consecutive sequence of numbers across your company. You can specify the length on the given parameter.",sequence_param_label:"Sequence Length",customer_series:"Customer Series",customer_series_description:"To set a different prefix/postfix for each customer.",customer_sequence:"Customer Sequence",customer_sequence_description:"Consecutive sequence of numbers for each of your customer.",customer_sequence_param_label:"Sequence Length",random_sequence:"Random Sequence",random_sequence_description:"Random alphanumeric string. You can specify the length on the given parameter.",random_sequence_param_label:"Sequence Length",invoices:{title:"Invoices",invoice_number_format:"Invoice Number Format",invoice_number_format_description:"Customize how your invoice number gets generated automatically when you create a new invoice.",preview_invoice_number:"Preview Invoice Number",due_date:"Due Date",due_date_description:"Specify how due date is automatically set when you create an invoice.",due_date_days:"Invoice Due after days",set_due_date_automatically:"Set Due Date Automatically",set_due_date_automatically_description:"Enable this if you wish to set due date automatically when you create a new invoice.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on invoice creation.",default_invoice_email_body:"Default Invoice Email Body",company_address_format:"Company Address Format",shipping_address_format:"Shipping Address Format",billing_address_format:"Billing Address Format",invoice_email_attachment:"Send invoices as attachments",invoice_email_attachment_setting_description:"Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.",invoice_settings_updated:"Invoice Settings updated successfully",retrospective_edits:"Retrospective Edits",allow:"Allow",disable_on_invoice_partial_paid:"Disable after partial payment is recorded",disable_on_invoice_paid:"Disable after full payment is recorded",disable_on_invoice_sent:"Disable after invoice is sent",retrospective_edits_description:" Based on your country's laws or your preference, you can restrict users from editing finalised invoices."},estimates:{title:"Estimates",estimate_number_format:"Estimate Number Format",estimate_number_format_description:"Customize how your estimate number gets generated automatically when you create a new estimate.",preview_estimate_number:"Preview Estimate Number",expiry_date:"Expiry Date",expiry_date_description:"Specify how expiry date is automatically set when you create an estimate.",expiry_date_days:"Estimate Expires after days",set_expiry_date_automatically:"Set Expiry Date Automatically",set_expiry_date_automatically_description:"Enable this if you wish to set expiry date automatically when you create a new estimate.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on estimate creation.",default_estimate_email_body:"Default Estimate Email Body",company_address_format:"Company Address Format",shipping_address_format:"Shipping Address Format",billing_address_format:"Billing Address Format",estimate_email_attachment:"Send estimates as attachments",estimate_email_attachment_setting_description:"Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.",estimate_settings_updated:"Estimate Settings updated successfully",convert_estimate_options:"Estimate Convert Action",convert_estimate_description:"Specify what happens to the estimate after it gets converted to an invoice.",no_action:"No action",delete_estimate:"Delete estimate",mark_estimate_as_accepted:"Mark estimate as accepted"},payments:{title:"Payments",payment_number_format:"Payment Number Format",payment_number_format_description:"Customize how your payment number gets generated automatically when you create a new payment.",preview_payment_number:"Preview Payment Number",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on payment creation.",default_payment_email_body:"Default Payment Email Body",company_address_format:"Company Address Format",from_customer_address_format:"From Customer Address Format",payment_email_attachment:"Send payments as attachments",payment_email_attachment_setting_description:"Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.",payment_settings_updated:"Payment Settings updated successfully"},items:{title:"Items",units:"Units",add_item_unit:"Add Item Unit",edit_item_unit:"Edit Item Unit",unit_name:"Unit Name",item_unit_added:"Item Unit Added",item_unit_updated:"Item Unit Updated",item_unit_confirm_delete:"You will not be able to recover this Item unit",already_in_use:"Item Unit is already in use",deleted_message:"Item Unit deleted successfully"},notes:{title:"Notes",description:"Save time by creating notes and reusing them on your invoices, estimates & payments.",notes:"Notes",type:"Type",add_note:"Add Note",add_new_note:"Add New Note",name:"Name",edit_note:"Edit Note",note_added:"Note added successfully",note_updated:"Note Updated successfully",note_confirm_delete:"You will not be able to recover this Note",already_in_use:"Note is already in use",deleted_message:"Note deleted successfully"}},account_settings:{profile_picture:"Profile Picture",name:"Name",email:"Email",password:"Password",confirm_password:"Confirm Password",account_settings:"Account Settings",save:"Save",section_description:"You can update your name, email & password using the form below.",updated_message:"Account Settings updated successfully"},user_profile:{name:"Name",email:"Email",password:"Password",confirm_password:"Confirm Password"},notification:{title:"Notifications",email:"Send Notifications to",description:"Which email notifications would you like to receive when something changes?",invoice_viewed:"Invoice viewed",invoice_viewed_desc:"When your customer views the invoice sent via crater dashboard.",estimate_viewed:"Estimate viewed",estimate_viewed_desc:"When your customer views the estimate sent via crater dashboard.",save:"Save",email_save_message:"Email saved successfully",please_enter_email:"Please Enter Email"},roles:{title:"Roles",description:"Manage the roles & permissions of this company",save:"Save",add_new_role:"Add New Role",role_name:"Role Name",added_on:"Added on",add_role:"Add Role",edit_role:"Edit Role",name:"Name",permission:"Permission | Permissions",select_all:"Select All",none:"None",confirm_delete:"You will not be able to recover this Role",created_message:"Role created successfully",updated_message:"Role updated successfully",deleted_message:"Role deleted successfully",already_in_use:"Role is already in use"},exchange_rate:{exchange_rate:"Exchange Rate",title:"Fix Currency Exchange issues",description:"Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.",drivers:"Drivers",new_driver:"Add New Provider",edit_driver:"Edit Provider",select_driver:"Select Driver",update:"select exchange rate ",providers_description:"Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.",key:"API Key",name:"Name",driver:"Driver",is_default:"IS DEFAULT",currency:"Currencies",exchange_rate_confirm_delete:"You will not be able to recover this driver",created_message:"Provider Created successfully",updated_message:"Provider Updated Successfully",deleted_message:"Provider Deleted Successfully",error:" You cannot Delete Active Driver",default_currency_error:"This currency is already used in one of the Active Provider",exchange_help_text:"Enter exchange rate to convert from {currency} to {baseCurrency}",currency_freak:"Currency Freak",currency_layer:"Currency Layer",open_exchange_rate:"Open Exchange Rate",currency_converter:"Currency Converter",server:"Server",url:"URL",active:"Active",currency_help_text:"This provider will only be used on above selected currencies",currency_in_used:"The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again."},tax_types:{title:"Tax Types",add_tax:"Add Tax",edit_tax:"Edit Tax",description:"You can add or Remove Taxes as you please. Crater supports Taxes on Individual Items as well as on the invoice.",add_new_tax:"Add New Tax",tax_settings:"Tax Settings",tax_per_item:"Tax Per Item",tax_name:"Tax Name",compound_tax:"Compound Tax",percent:"Percent",action:"Action",tax_setting_description:"Enable this if you want to add taxes to individual invoice items. By default, taxes are added directly to the invoice.",created_message:"Tax type created successfully",updated_message:"Tax type updated successfully",deleted_message:"Tax type deleted successfully",confirm_delete:"You will not be able to recover this Tax Type",already_in_use:"Tax is already in use"},payment_modes:{title:"Payment Modes",description:"Modes of transaction for payments",add_payment_mode:"Add Payment Mode",edit_payment_mode:"Edit Payment Mode",mode_name:"Mode Name",payment_mode_added:"Payment Mode Added",payment_mode_updated:"Payment Mode Updated",payment_mode_confirm_delete:"You will not be able to recover this Payment Mode",already_in_use:"Payment Mode is already in use",deleted_message:"Payment Mode deleted successfully"},expense_category:{title:"Expense Categories",action:"Action",description:"Categories are required for adding expense entries. You can Add or Remove these categories according to your preference.",add_new_category:"Add New Category",add_category:"Add Category",edit_category:"Edit Category",category_name:"Category Name",category_description:"Description",created_message:"Expense Category created successfully",deleted_message:"Expense category deleted successfully",updated_message:"Expense category updated successfully",confirm_delete:"You will not be able to recover this Expense Category",already_in_use:"Category is already in use"},preferences:{currency:"Currency",default_language:"Default Language",time_zone:"Time Zone",fiscal_year:"Financial Year",date_format:"Date Format",discount_setting:"Discount Setting",discount_per_item:"Discount Per Item ",discount_setting_description:"Enable this if you want to add Discount to individual invoice items. By default, Discount is added directly to the invoice.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"Save",preference:"Preference | Preferences",general_settings:"Default preferences for the system.",updated_message:"Preferences updated successfully",select_language:"Select Language",select_time_zone:"Select Time Zone",select_date_format:"Select Date Format",select_financial_year:"Select Financial Year",recurring_invoice_status:"Recurring Invoice Status",create_status:"Create Status",active:"Active",on_hold:"On Hold",update_status:"Update Status",completed:"Completed",company_currency_unchangeable:"Company currency cannot be changed"},update_app:{title:"Update App",description:"You can easily update Crater by checking for a new update by clicking the button below",check_update:"Check for updates",avail_update:"New Update available",next_version:"Next version",requirements:"Requirements",update:"Update Now",update_progress:"Update in progress...",progress_text:"It will just take a few minutes. Please do not refresh the screen or close the window before the update finishes",update_success:"App has been updated! Please wait while your browser window gets reloaded automatically.",latest_message:"No update available! You are on the latest version.",current_version:"Current Version",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",running_migrations:"Running Migrations",finishing_update:"Finishing Update",update_failed:"Update Failed",update_failed_text:"Sorry! Your update failed on : {step} step",update_warning:"All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating."},backup:{title:"Backup | Backups",description:"The backup is a zipfile that contains all files in the directories you specify along with a dump of your database",new_backup:"Add New Backup",create_backup:"Create Backup",select_backup_type:"Select Backup Type",backup_confirm_delete:"You will not be able to recover this Backup",path:"path",new_disk:"New Disk",created_at:"created at",size:"size",dropbox:"dropbox",local:"local",healthy:"healthy",amount_of_backups:"amount of backups",newest_backups:"newest backups",used_storage:"used storage",select_disk:"Select Disk",action:"Action",deleted_message:"Backup deleted successfully",created_message:"Backup created successfully",invalid_disk_credentials:"Invalid credential of selected disk"},disk:{title:"File Disk | File Disks",description:"By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.",created_at:"created at",dropbox:"dropbox",name:"Name",driver:"Driver",disk_type:"Type",disk_name:"Disk Name",new_disk:"Add New Disk",filesystem_driver:"Filesystem Driver",local_driver:"local Driver",local_root:"local Root",public_driver:"Public Driver",public_root:"Public Root",public_url:"Public URL",public_visibility:"Public Visibility",media_driver:"Media Driver",media_root:"Media Root",aws_driver:"AWS Driver",aws_key:"AWS Key",aws_secret:"AWS Secret",aws_region:"AWS Region",aws_bucket:"AWS Bucket",aws_root:"AWS Root",do_spaces_type:"Do Spaces type",do_spaces_key:"Do Spaces key",do_spaces_secret:"Do Spaces Secret",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Dropbox Type",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Key",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Default Driver",is_default:"IS DEFAULT",set_default_disk:"Set Default Disk",set_default_disk_confirm:"This disk will be set as default and all the new PDFs will be saved on this disk",success_set_default_disk:"Disk set as default successfully",save_pdf_to_disk:"Save PDFs to Disk",disk_setting_description:" Enable this, if you wish to save a copy of each Invoice, Estimate & Payment Receipt PDF on your default disk automatically. Turning this option will decrease the load-time when viewing the PDFs.",select_disk:"Select Disk",disk_settings:"Disk Settings",confirm_delete:"Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater",action:"Action",edit_file_disk:"Edit File Disk",success_create:"Disk added successfully",success_update:"Disk updated successfully",error:"Disk addition failed",deleted_message:"File Disk deleted successfully",disk_variables_save_successfully:"Disk Configured Successfully",disk_variables_save_error:"Disk configuration failed.",invalid_disk_credentials:"Invalid credential of selected disk"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},oc={account_info:"Account Information",account_info_desc:"Below details will be used to create the main Administrator account. Also you can change the details anytime after logging in.",name:"Name",email:"Email",password:"Password",confirm_password:"Confirm Password",save_cont:"Save & Continue",company_info:"Company Information",company_info_desc:"This information will be displayed on invoices. Note that you can edit this later on settings page.",company_name:"Company Name",company_logo:"Company Logo",logo_preview:"Logo Preview",preferences:"Company Preferences",preferences_desc:"Specify the default preferences for this company.",currency_set_alert:"The company's currency cannot be changed later.",country:"Country",state:"State",city:"City",address:"Address",street:"Street1 | Street2",phone:"Phone",zip_code:"Zip Code",go_back:"Go Back",currency:"Currency",language:"Language",time_zone:"Time Zone",fiscal_year:"Financial Year",date_format:"Date Format",from_address:"From Address",username:"Username",next:"Next",continue:"Continue",skip:"Skip",database:{database:"Site URL & Database",connection:"Database Connection",host:"Database Host",port:"Database Port",password:"Database Password",app_url:"App URL",app_domain:"App Domain",username:"Database Username",db_name:"Database Name",db_path:"Database Path",desc:"Create a database on your server and set the credentials using the form below."},permissions:{permissions:"Permissions",permission_confirm_title:"Are you sure you want to continue?",permission_confirm_desc:"Folder permission check failed",permission_desc:"Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions."},verify_domain:{title:"Domain Verification",desc:"Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.",app_domain:"App Domain",verify_now:"Verify Now",success:"Domain Verify Successfully.",failed:"Domain verification failed. Please enter valid domain name.",verify_and_continue:"Verify And Continue"},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail Driver",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"Mail Password",username:"Mail Username",mail_config:"Mail Configuration",from_name:"From Mail Name",from_mail:"From Mail Address",encryption:"Mail Encryption",mail_config_desc:"Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc."},req:{system_req:"System Requirements",php_req_version:"Php (version {version} required)",check_req:"Check Requirements",system_req_desc:"Crater has a few server requirements. Make sure that your server has the required php version and all the extensions mentioned below."},errors:{migrate_failed:"Migrate Failed",database_variables_save_error:"Cannot write configuration to .env file. Please check its file permissions",mail_variables_save_error:"Email configuration failed.",connection_failed:"Database connection failed",database_should_be_empty:"Database should be empty"},success:{mail_variables_save_successfully:"Email configured successfully",database_variables_save_successfully:"Database configured successfully."}},rc={invalid_phone:"Invalid Phone Number",invalid_url:"Invalid url (ex: http://www.craterapp.com)",invalid_domain_url:"Invalid url (ex: craterapp.com)",required:"Field is required",email_incorrect:"Incorrect Email.",email_already_taken:"The email has already been taken.",email_does_not_exist:"User with given email doesn't exist",item_unit_already_taken:"This item unit name has already been taken",payment_mode_already_taken:"This payment mode name has already been taken",send_reset_link:"Send Reset Link",not_yet:"Not yet? Send it again",password_min_length:"Password must contain {count} characters",name_min_length:"Name must have at least {count} letters.",prefix_min_length:"Prefix must have at least {count} letters.",enter_valid_tax_rate:"Enter valid tax rate",numbers_only:"Numbers Only.",characters_only:"Characters Only.",password_incorrect:"Passwords must be identical",password_length:"Password must be {count} character long.",qty_must_greater_than_zero:"Quantity must be greater than zero.",price_greater_than_zero:"Price must be greater than zero.",payment_greater_than_zero:"Payment must be greater than zero.",payment_greater_than_due_amount:"Entered Payment is more than due amount of this invoice.",quantity_maxlength:"Quantity should not be greater than 20 digits.",price_maxlength:"Price should not be greater than 20 digits.",price_minvalue:"Price should be greater than 0.",amount_maxlength:"Amount should not be greater than 20 digits.",amount_minvalue:"Amount should be greater than 0.",discount_maxlength:"Discount should not be greater than max discount",description_maxlength:"Description should not be greater than 255 characters.",subject_maxlength:"Subject should not be greater than 100 characters.",message_maxlength:"Message should not be greater than 255 characters.",maximum_options_error:"Maximum of {max} options selected. First remove a selected option to select another.",notes_maxlength:"Notes should not be greater than 65,000 characters.",address_maxlength:"Address should not be greater than 255 characters.",ref_number_maxlength:"Ref Number should not be greater than 255 characters.",prefix_maxlength:"Prefix should not be greater than 5 characters.",something_went_wrong:"something went wrong",number_length_minvalue:"Number length should be greater than 0",at_least_one_ability:"Please select atleast one Permission.",valid_driver_key:"Please enter a valid {driver} key.",valid_exchange_rate:"Please enter a valid exchange rate.",company_name_not_same:"Company name must match with given name."},dc={starter_plan:"This feature is available on Starter plan and onwards!",invalid_provider_key:"Please Enter Valid Provider API Key.",estimate_number_used:"The estimate number has already been taken.",invoice_number_used:"The invoice number has already been taken.",payment_attached:"This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.",payment_number_used:"The payment number has already been taken.",name_already_taken:"The name has already been taken.",receipt_does_not_exist:"Receipt does not exist.",customer_cannot_be_changed_after_payment_is_added:"Customer cannot be change after payment is added",invalid_credentials:"Invalid Credentials.",not_allowed:"Not Allowed",login_invalid_credentials:"These credentials do not match our records.",enter_valid_cron_format:"Please enter a valid cron format",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},lc="Estimate",cc="Estimate Number",_c="Estimate Date",uc="Expiry date",mc="Invoice",pc="Invoice Number",gc="Invoice Date",fc="Due date",vc="Notes",hc="Items",yc="Quantity",bc="Price",kc="Discount",wc="Amount",xc="Subtotal",zc="Total",Sc="Payment",Pc="PAYMENT RECEIPT",jc="Payment Date",Ac="Payment Number",Dc="Payment Mode",Cc="Amount Received",Ec="EXPENSES REPORT",Ic="TOTAL EXPENSE",Nc="PROFIT & LOSS REPORT",Tc="Sales Customer Report",Rc="Sales Item Report",Mc="Tax Summary Report",Fc="INCOME",$c="NET PROFIT",Uc="Sales Report: By Customer",Vc="TOTAL SALES",Oc="Sales Report: By Item",Lc="TAX REPORT",Bc="TOTAL TAX",qc="Tax Types",Kc="Expenses",Wc="Bill to,",Zc="Ship to,",Hc="Received from:",Yc="Tax";var Gc={navigation:Ol,general:Ll,dashboard:Bl,tax_types:ql,global_search:Kl,company_switcher:Wl,dateRange:Zl,customers:Hl,items:Yl,estimates:Gl,invoices:Jl,recurring_invoices:Ql,payments:Xl,expenses:ec,login:tc,modules:ac,users:ic,reports:nc,settings:sc,wizard:oc,validation:rc,errors:dc,pdf_estimate_label:lc,pdf_estimate_number:cc,pdf_estimate_date:_c,pdf_estimate_expire_date:uc,pdf_invoice_label:mc,pdf_invoice_number:pc,pdf_invoice_date:gc,pdf_invoice_due_date:fc,pdf_notes:vc,pdf_items_label:hc,pdf_quantity_label:yc,pdf_price_label:bc,pdf_discount_label:kc,pdf_amount_label:wc,pdf_subtotal:xc,pdf_total:zc,pdf_payment_label:Sc,pdf_payment_receipt_label:Pc,pdf_payment_date:jc,pdf_payment_number:Ac,pdf_payment_mode:Dc,pdf_payment_amount_received_label:Cc,pdf_expense_report_label:Ec,pdf_total_expenses_label:Ic,pdf_profit_loss_label:Nc,pdf_sales_customers_label:Tc,pdf_sales_items_label:Rc,pdf_tax_summery_label:Mc,pdf_income_label:Fc,pdf_net_profit_label:$c,pdf_customer_sales_report:Uc,pdf_total_sales_label:Vc,pdf_item_sales_label:Oc,pdf_tax_report_label:Lc,pdf_total_tax_label:Bc,pdf_tax_types_label:qc,pdf_expenses_label:Kc,pdf_bill_to:Wc,pdf_ship_to:Zc,pdf_received_from:Hc,pdf_tax_label:Yc};const Jc={dashboard:"Panel zarz\u0105dzania",customers:"Kontrahenci",items:"Pozycje",invoices:"Faktury","recurring-invoices":"Faktury cykliczne",expenses:"Wydatki",estimates:"Oferty",payments:"P\u0142atno\u015Bci",reports:"Raporty",settings:"Ustawienia",logout:"Wyloguj",users:"U\u017Cytkownicy",modules:"Modules"},Qc={add_company:"Dodaj firm\u0119",view_pdf:"Wy\u015Bwietl PDF",copy_pdf_url:"Kopiuj adres URL PDF",download_pdf:"\u015Aci\u0105gnij PDF",save:"Zapisz",create:"Stw\xF3rz",cancel:"Anuluj",update:"Zaktualizuj",deselect:"Odznacz",download:"Pobierz",from_date:"Od daty",to_date:"Do daty",from:"Od",to:"Do",ok:"Ok",yes:"Tak",no:"Nie",sort_by:"Sortuj wed\u0142ug",ascending:"Rosn\u0105co",descending:"Malej\u0105co",subject:"Temat",body:"Tre\u015B\u0107",message:"Wiadomo\u015B\u0107",send:"Wy\u015Blij",preview:"Podgl\u0105d",go_back:"Wstecz",back_to_login:"Wr\xF3\u0107 do logowania?",home:"Strona g\u0142\xF3wna",filter:"Filtr",delete:"Usu\u0144",edit:"Edytuj",view:"Widok",add_new_item:"Dodaj now\u0105 pozycj\u0119",clear_all:"Wyczy\u015B\u0107 wszystko",showing:"Wy\u015Bwietlanie",of:"z",actions:"Akcje",subtotal:"SUMA CZ\u0118\u015ACIOWA",discount:"RABAT",fixed:"Sta\u0142y",percentage:"Procentowo",tax:"PODATEK",total_amount:"\u0141\u0104CZNA KWOTA",bill_to:"P\u0142atnik",ship_to:"Wy\u015Blij do",due:"Nale\u017Cno\u015B\u0107",draft:"Wersja robocza",sent:"Wys\u0142ano",all:"Wszystko",select_all:"Zaznacz wszystkie",select_template:"Wybierz Szablon",choose_file:"Kliknij tutaj, aby wybra\u0107 plik",choose_template:"Wybierz szablon",choose:"Wybierz",remove:"Usu\u0144",select_a_status:"Wybierz status",select_a_tax:"Wybierz podatek",search:"Wyszukaj",are_you_sure:"Czy jeste\u015B pewien?",list_is_empty:"Lista jest pusta.",no_tax_found:"Nie znaleziono podatku!",four_zero_four:"404",you_got_lost:"Ups! Zgubi\u0142e\u015B si\u0119!",go_home:"Wr\xF3\u0107 do strony g\u0142\xF3wnej",test_mail_conf:"Konfiguracja poczty testowej",send_mail_successfully:"Wiadomo\u015B\u0107 wys\u0142ana pomy\u015Blnie",setting_updated:"Ustawienia zosta\u0142y zaktualizowane",select_state:"Wybierz wojew\xF3dztwo",select_country:"Wybierz kraj",select_city:"Wybierz miasto",street_1:"Adres 1",street_2:"Adres 2",action_failed:"Niepowodzenie",retry:"Spr\xF3buj ponownie",choose_note:"Wybierz notatk\u0119",no_note_found:"Nie znaleziono notatki",insert_note:"Wstaw notatk\u0119",copied_pdf_url_clipboard:"Skopiowano adres URL pliku PDF do schowka!",copied_url_clipboard:"Copied url to clipboard!",docs:"Dokumentacja",do_you_wish_to_continue:"Czy chcesz kontynuowa\u0107?",note:"Uwaga",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},Xc={select_year:"Wybierz rok",cards:{due_amount:"Do zap\u0142aty",customers:"Kontrahenci",invoices:"Faktury",estimates:"Oferty",payments:"Payments"},chart_info:{total_sales:"Sprzeda\u017C",total_receipts:"Przychody",total_expense:"Wydatki",net_income:"Doch\xF3d netto",year:"Wybierz rok"},monthly_chart:{title:"Sprzeda\u017C i wydatki"},recent_invoices_card:{title:"Nale\u017Cne faktury",due_on:"Termin p\u0142atno\u015Bci",customer:"Kontrahent",amount_due:"Do zap\u0142aty",actions:"Akcje",view_all:"Zobacz wszsytkie"},recent_estimate_card:{title:"Najnowsze oferty",date:"Data",customer:"Kontrahent",amount_due:"Do zap\u0142aty",actions:"Akcje",view_all:"Zobacz wszsytkie"}},e_={name:"Nazwa",description:"Opis",percent:"Procent",compound_tax:"Podatek z\u0142o\u017Cony"},t_={search:"Wyszukaj...",customers:"Kontrahenci",users:"U\u017Cytkownicy",no_results_found:"Nie znaleziono wynik\xF3w"},a_={label:"PRZE\u0141\u0104CZ PRZEDSI\u0118BIORSTWO",no_results_found:"Nie Znaleziono Wynik\xF3w",add_new_company:"Dodaj now\u0105 firm\u0119",new_company:"Nowa firma",created_message:"Firma utworzona pomy\u015Blnie"},i_={today:"Dzisiaj",this_week:"Ten tydzie\u0144",this_month:"Ten miesi\u0105c",this_quarter:"Ten kwarta\u0142",this_year:"Ten rok",previous_week:"Poprzedni Tydzie\u0144",previous_month:"Poprzedni miesi\u0105c",previous_quarter:"Poprzedni kwarta\u0142",previous_year:"Poprzedni Rok",custom:"Custom"},n_={title:"Kontrahenci",prefix:"Prefix",add_customer:"Dodaj kontrahenta",contacts_list:"Lista kontrahent\xF3w",name:"Nazwa",mail:"Poczta | Poczta",statement:"Komunikat",display_name:"Widoczna nazwa",primary_contact_name:"G\u0142\xF3wna osoba kontaktowa",contact_name:"Nazwa kontaktu",amount_due:"Do zap\u0142aty",email:"E-mail",address:"Adres",phone:"Telefon",website:"Strona internetowa",overview:"Przegl\u0105d",invoice_prefix:"Invoice Prefix",estimate_prefix:"Estimate Prefix",payment_prefix:"Payment Prefix",enable_portal:"W\u0142\u0105cz portal",country:"Kraj",state:"Wojew\xF3dztwo",city:"Miasto",zip_code:"Kod pocztowy",added_on:"Dodano dnia",action:"Akcja",password:"Has\u0142a",confirm_password:"Confirm Password",street_number:"Numer ulicy",primary_currency:"Waluta g\u0142\xF3wna",description:"Opis",add_new_customer:"Dodaj nowego kontrahenta",save_customer:"Zapisz kontrahenta",update_customer:"Aktualizuj kontrahenta",customer:"Kontrahent | Kontrahenci",new_customer:"Nowy kontrahent",edit_customer:"Edytuj kontrahenta",basic_info:"Podstawowe informacje",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"Adres do faktury",shipping_address:"Adres dostawy",copy_billing_address:"Kopiuj z rachunku",no_customers:"Brak kontrahent\xF3w!",no_customers_found:"Nie znaleziono kontrahent\xF3w!",no_contact:"Brak kontaktu",no_contact_name:"Brak nazwy kontaktu",list_of_customers:"Ta sekcja b\u0119dzie zawiera\u0107 list\u0119 kontrahent\xF3w.",primary_display_name:"G\u0142\xF3wna nazwa wy\u015Bwietlana",select_currency:"Wybierz walut\u0119",select_a_customer:"Wybierz kontrahenta",type_or_click:"Wpisz lub kliknij aby wybra\u0107",new_transaction:"Nowa transakcja",no_matching_customers:"Brak pasuj\u0105cych kontrahent\xF3w!",phone_number:"Numer telefonu",create_date:"Data utworzenia",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tego kontrahenta i wszystkich powi\u0105zanych faktur, ofert i p\u0142atno\u015Bci. | Nie b\u0119dziesz w stanie odzyska\u0107 tych kontrahent\xF3w i wszystkich powi\u0105zanych faktur, ofert i p\u0142atno\u015Bci.",created_message:"Kontrahent zosta\u0142 utworzony poprawnie",updated_message:"Kontrahent zosta\u0142 zaktualizowany poprawnie",address_updated_message:"Address Information Updated succesfully",deleted_message:"Kontrahent zosta\u0142 usuni\u0119ty pomy\u015Blnie | Kontrahenci zostali usuni\u0119ci pomy\u015Blnie",edit_currency_not_allowed:"Cannot change currency once transactions created."},s_={title:"Pozycje",items_list:"Lista artyku\u0142\xF3w",name:"Nazwa",unit:"Jednostka",description:"Opis",added_on:"Dodane",price:"Cena",date_of_creation:"Data utworzenia",not_selected:"Nie wybrano element\xF3w",action:"Akcja",add_item:"Dodaj pozycj\u0119",save_item:"Zapisz element",update_item:"Aktualizuj element",item:"Pozycja | Pozycje",add_new_item:"Dodaj now\u0105 pozycj\u0119",new_item:"Nowy produkt",edit_item:"Edytuj element",no_items:"Brak element\xF3w!",list_of_items:"Ta sekcja b\u0119dzie zawiera\u0107 list\u0119 pozycji.",select_a_unit:"wybierz jednostk\u0119",taxes:"Podatki",item_attached_message:"Nie mo\u017Cna usun\u0105\u0107 elementu, kt\xF3ry jest ju\u017C u\u017Cywany",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej pozycji | Nie b\u0119dziesz w stanie odzyska\u0107 tych pozycji",created_message:"Element zosta\u0142 pomy\u015Blnie zaktualizowany",updated_message:"Element zosta\u0142 pomy\u015Blnie zaktualizowany",deleted_message:"Pozycja usuni\u0119ta pomy\u015Blnie | Pozycje usuni\u0119te pomy\u015Blnie"},o_={title:"Oferty",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"Oferta | Oferty",estimates_list:"Lista ofert",days:"{days} Dni",months:"{months} Miesi\u0105c",years:"{years} Rok",all:"Wszystkie",paid:"Zap\u0142acone",unpaid:"Niezap\u0142acone",customer:"KONTRAHENT",ref_no:"NR REF.",number:"NUMER",amount_due:"DO ZAP\u0141ATY",partially_paid:"Cz\u0119\u015Bciowo op\u0142acona",total:"Razem",discount:"Rabat",sub_total:"Podsumowanie",estimate_number:"Numer oferty",ref_number:"Numer referencyjny",contact:"Kontakt",add_item:"Dodaj pozycj\u0119",date:"Data",due_date:"Data wa\u017Cno\u015Bci",expiry_date:"Data wyga\u015Bni\u0119cia",status:"Status",add_tax:"Dodaj podatek",amount:"Kwota",action:"Akcja",notes:"Notatki",tax:"Podatek",estimate_template:"Szablon",convert_to_invoice:"Konwertuj do faktury",mark_as_sent:"Oznacz jako wys\u0142ane",send_estimate:"Wy\u015Blij ofert\u0119",resend_estimate:"Wy\u015Blij ponownie ofert\u0119",record_payment:"Zarejestruj p\u0142atno\u015B\u0107",add_estimate:"Dodaj ofert\u0119",save_estimate:"Zapisz ofert\u0119",confirm_conversion:"Ta oferta zostanie u\u017Cyta do utworzenia nowej faktury.",conversion_message:"Faktura zosta\u0142a utworzona pomy\u015Blnie",confirm_send_estimate:"Ta oferta zostanie wys\u0142ana poczt\u0105 elektroniczn\u0105 do kontrahenta",confirm_mark_as_sent:"Ta oferta zostanie oznaczona jako wys\u0142ana",confirm_mark_as_accepted:"Ta oferta zostanie oznaczona jako zatwierdzona",confirm_mark_as_rejected:"Ta oferta zostanie oznaczona jako odrzucona",no_matching_estimates:"Brak pasuj\u0105cych ofert!",mark_as_sent_successfully:"Oferta oznaczona jako wys\u0142ana pomy\u015Blnie",send_estimate_successfully:"Kalkulacja wys\u0142ana pomy\u015Blnie",errors:{required:"To pole jest wymagane"},accepted:"Zaakceptowano",rejected:"Odrzucono",expired:"Expired",sent:"Wys\u0142ano",draft:"Wersja robocza",viewed:"Viewed",declined:"Odrzucony",new_estimate:"Nowa oferta",add_new_estimate:"Dodaj now\u0105 ofert\u0119",update_Estimate:"Zaktualizuj ofert\u0119",edit_estimate:"Edytuj ofert\u0119",items:"pozycje",Estimate:"Oferta | Oferty",add_new_tax:"Dodaj nowy podatek",no_estimates:"Nie ma jeszcze ofert!",list_of_estimates:"Ta sekcja b\u0119dzie zawiera\u0142a list\u0119 ofert.",mark_as_rejected:"Oznacz jako odrzucon\u0105",mark_as_accepted:"Oznacz jako zaakceptowan\u0105",marked_as_accepted_message:"Oferty oznaczone jako zaakceptowane",marked_as_rejected_message:"Oferty oznaczone jako odrzucone",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej oferty | Nie b\u0119dziesz w stanie odzyska\u0107 tych ofert",created_message:"Oferta utworzona pomy\u015Blnie",updated_message:"Oferta zaktualizowana pomy\u015Blnie",deleted_message:"Oferta usuni\u0119ta pomy\u015Blnie | Oferty usuni\u0119te pomy\u015Blnie",something_went_wrong:"co\u015B posz\u0142o nie tak",item:{title:"Tytu\u0142 pozycji",description:"Opis",quantity:"Ilo\u015B\u0107",price:"Cena",discount:"Rabat",total:"Razem",total_discount:"Rabat \u0142\u0105cznie",sub_total:"Podsumowanie",tax:"Podatek",amount:"Kwota",select_an_item:"Wpisz lub kliknij aby wybra\u0107 element",type_item_description:"Opis pozycji (opcjonalnie)"}},r_={title:"Faktury",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"Lista faktur",invoice_information:"Invoice Information",days:"{days} Dni",months:"{months} Miesi\u0105c",years:"{years} Rok",all:"Wszystko",paid:"Zap\u0142acono",unpaid:"Nie zap\u0142acono",viewed:"Przejrzane",overdue:"Zaleg\u0142e",completed:"Uko\u0144czone",customer:"KONTRAHENT",paid_status:"STATUS P\u0141ATNO\u015ACI",ref_no:"NR REF.",number:"NUMER",amount_due:"DO ZAP\u0141ATY",partially_paid:"Cz\u0119\u015Bciowo op\u0142acona",total:"Razem",discount:"Rabat",sub_total:"Podsumowanie",invoice:"Faktura | Faktury",invoice_number:"Numer faktury",ref_number:"Numer referencyjny",contact:"Kontakt",add_item:"Dodaj pozycj\u0119",date:"Data",due_date:"Termin p\u0142atno\u015Bci",status:"Status",add_tax:"Dodaj podatek",amount:"Kwota",action:"Akcja",notes:"Notatki",view:"Widok",send_invoice:"Wy\u015Blij faktur\u0119",resend_invoice:"Wy\u015Blij faktur\u0119 ponownie",invoice_template:"Szablon faktury",conversion_message:"Invoice cloned successful",template:"Szablon",mark_as_sent:"Oznacz jako wys\u0142ane",confirm_send_invoice:"Ta faktura zostanie wys\u0142ana poczt\u0105 elektroniczn\u0105 do kontrahenta",invoice_mark_as_sent:"Ta faktura zostanie oznaczona jako wys\u0142ana",confirm_mark_as_accepted:"This invoice will be marked as Accepted",confirm_mark_as_rejected:"This invoice will be marked as Rejected",confirm_send:"Ta faktura zostanie wys\u0142ana poczt\u0105 elektroniczn\u0105 do kontrahenta",invoice_date:"Data faktury",record_payment:"Zarejestruj p\u0142atno\u015B\u0107",add_new_invoice:"Dodaj now\u0105 faktur\u0119",update_expense:"Zaktualizuj wydatki",edit_invoice:"Edytuj faktur\u0119",new_invoice:"Nowa faktura",save_invoice:"Zapisz faktur\u0119",update_invoice:"Zaktualizuj faktur\u0119",add_new_tax:"Dodaj nowy podatek",no_invoices:"Brak faktur!",mark_as_rejected:"Oznacz jako odrzucon\u0105",mark_as_accepted:"Oznacz jako zaakceptowan\u0105",list_of_invoices:"Ta sekcja b\u0119dzie zawiera\u0107 list\u0119 faktur.",select_invoice:"Wybierz faktur\u0119",no_matching_invoices:"Brak pasuj\u0105cych faktur!",mark_as_sent_successfully:"Faktura oznaczona jako wys\u0142ana pomy\u015Blnie",invoice_sent_successfully:"Faktura wys\u0142ana pomy\u015Blnie",cloned_successfully:"Faktura sklonowana pomy\u015Blnie",clone_invoice:"Sklonuj faktur\u0119",confirm_clone:"Ta faktura zostanie sklonowana do nowej faktury",item:{title:"Tytu\u0142 pozycji",description:"Opis",quantity:"Ilo\u015B\u0107",price:"Cena",discount:"Rabat",total:"Razem",total_discount:"Rabat \u0142\u0105cznie",sub_total:"Podsumowanie",tax:"Podatek",amount:"Kwota",select_an_item:"Wpisz lub kliknij aby wybra\u0107 element",type_item_description:"Opis pozycji (opcjonalnie)"},payment_attached_message:"Jedna z wybranych faktur ma do\u0142\u0105czon\u0105 p\u0142atno\u015B\u0107. Upewnij si\u0119, \u017Ce najpierw usuniesz za\u0142\u0105czone p\u0142atno\u015Bci, aby kontynuowa\u0107 usuwanie",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej faktury | Nie b\u0119dziesz w stanie odzyska\u0107 tych faktur",created_message:"Faktura zosta\u0142a utworzona pomy\u015Blnie",updated_message:"Faktura zosta\u0142a pomy\u015Blnie zaktualizowana",deleted_message:"Faktura usuni\u0119ta pomy\u015Blnie | Faktury usuni\u0119te pomy\u015Blnie",marked_as_sent_message:"Faktura oznaczona jako wys\u0142ana pomy\u015Blnie",something_went_wrong:"co\u015B posz\u0142o nie tak",invalid_due_amount_message:"Ca\u0142kowita kwota faktury nie mo\u017Ce by\u0107 mniejsza ni\u017C ca\u0142kowita kwota zap\u0142acona za t\u0119 faktur\u0119. Prosz\u0119 zaktualizowa\u0107 faktur\u0119 lub usun\u0105\u0107 powi\u0105zane p\u0142atno\u015Bci, aby kontynuowa\u0107."},d_={title:"Faktury cykliczne",invoices_list:"Recurring Invoices List",days:"{days} Dni",months:"{months} Month",years:"{years} Year",all:"Wszystkie",paid:"Zap\u0142acone",unpaid:"Niezap\u0142acone",viewed:"Przegl\u0105dane",overdue:"Zaleg\u0142e",active:"Aktywne",completed:"Uko\u0144czone",customer:"KLIENT",paid_status:"STATUS P\u0141ATNO\u015ACI",ref_no:"NR REF.",number:"NUMER",amount_due:"DO ZAP\u0141ATY",partially_paid:"Cz\u0119\u015Bciowo Op\u0142acona",total:"Razem",discount:"Rabat",sub_total:"Suma Po\u015Brednia",invoice:"Faktura Cykliczna | Faktury Cykliczne",invoice_number:"Numer Faktury Cyklicznej",next_invoice_date:"Next Invoice Date",ref_number:"Numer ref.",contact:"Kontakt",add_item:"Add an Item",date:"Data",limit_by:"Limit by",limit_date:"Limit Date",limit_count:"Limit Count",count:"Liczba",status:"Status",select_a_status:"Wybierz status",working:"Working",on_hold:"On Hold",complete:"Completed",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",view:"View",basic_info:"Basic Info",send_invoice:"Send Recurring Invoice",auto_send:"Auto Send",resend_invoice:"Resend Recurring Invoice",invoice_template:"Recurring Invoice Template",conversion_message:"Recurring Invoice cloned successful",template:"Template",mark_as_sent:"Mark as sent",confirm_send_invoice:"This recurring invoice will be sent via email to the customer",invoice_mark_as_sent:"This recurring invoice will be marked as sent",confirm_send:"This recurring invoice will be sent via email to the customer",starts_at:"Start Date",due_date:"Invoice Due Date",record_payment:"Record Payment",add_new_invoice:"Add New Recurring Invoice",update_expense:"Update Expense",edit_invoice:"Edit Recurring Invoice",new_invoice:"New Recurring Invoice",send_automatically:"Send Automatically",send_automatically_desc:"Enable this, if you would like to send the invoice automatically to the customer when its created.",save_invoice:"Save Recurring Invoice",update_invoice:"Update Recurring Invoice",add_new_tax:"Add New Tax",no_invoices:"No Recurring Invoices yet!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"This section will contain the list of recurring invoices.",select_invoice:"Select Invoice",no_matching_invoices:"There are no matching recurring invoices!",mark_as_sent_successfully:"Recurring Invoice marked as sent successfully",invoice_sent_successfully:"Recurring Invoice sent successfully",cloned_successfully:"Recurring Invoice cloned successfully",clone_invoice:"Clone Recurring Invoice",confirm_clone:"This recurring invoice will be cloned into a new Recurring Invoice",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"},frequency:{title:"Frequency",select_frequency:"Select Frequency",minute:"Minute",hour:"Hour",day_month:"Day of month",month:"Month",day_week:"Day of week"},confirm_delete:"You will not be able to recover this Invoice | You will not be able to recover these Invoices",created_message:"Recurring Invoice created successfully",updated_message:"Recurring Invoice updated successfully",deleted_message:"Recurring Invoice deleted successfully | Recurring Invoices deleted successfully",marked_as_sent_message:"Recurring Invoice marked as sent successfully",user_email_does_not_exist:"User email does not exist",something_went_wrong:"something went wrong",invalid_due_amount_message:"Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue."},l_={title:"P\u0142atno\u015Bci",payments_list:"Lista p\u0142atno\u015Bci",record_payment:"Zarejestruj p\u0142atno\u015B\u0107",customer:"Kontrahent",date:"Data",amount:"Kwota",action:"Akcja",payment_number:"Numer p\u0142atno\u015Bci",payment_mode:"Metoda p\u0142atno\u015Bci",invoice:"Faktura",note:"Notatka",add_payment:"Dodaj p\u0142atno\u015B\u0107",new_payment:"Nowa p\u0142atno\u015B\u0107",edit_payment:"Edytuj p\u0142atno\u015B\u0107",view_payment:"Wy\u015Bwietl p\u0142atno\u015B\u0107",add_new_payment:"Dodaj now\u0105 p\u0142atno\u015B\u0107",send_payment_receipt:"Wy\u015Blij potwierdzenie p\u0142atno\u015Bci",send_payment:"Wy\u015Blij p\u0142atno\u015B\u0107",save_payment:"Zapisz p\u0142atno\u015B\u0107",update_payment:"Zaktualizuj p\u0142atno\u015B\u0107",payment:"P\u0142atno\u015B\u0107 | P\u0142atno\u015Bci",no_payments:"Nie ma jeszcze p\u0142atno\u015Bci!",not_selected:"Nie wybrano",no_invoice:"Brak faktury",no_matching_payments:"Brak pasuj\u0105cych p\u0142atno\u015Bci!",list_of_payments:"Ta sekcja b\u0119dzie zawiera\u0107 list\u0119 p\u0142atno\u015Bci.",select_payment_mode:"Wybierz spos\xF3b p\u0142atno\u015Bci",confirm_mark_as_sent:"Ta oferta zostanie oznaczona jako wys\u0142ana",confirm_send_payment:"Ta p\u0142atno\u015B\u0107 zostanie wys\u0142ana e-mailem do kontrahenta",send_payment_successfully:"P\u0142atno\u015B\u0107 wys\u0142ana pomy\u015Blnie",something_went_wrong:"co\u015B posz\u0142o nie tak",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej p\u0142atno\u015Bci | Nie b\u0119dziesz w stanie odzyska\u0107 tych p\u0142atno\u015Bci",created_message:"P\u0142atno\u015B\u0107 zosta\u0142a pomy\u015Blnie utworzona",updated_message:"P\u0142atno\u015B\u0107 zosta\u0142a pomy\u015Blnie zaktualizowana",deleted_message:"P\u0142atno\u015B\u0107 usuni\u0119ta pomy\u015Blnie | P\u0142atno\u015Bci usuni\u0119te pomy\u015Blnie",invalid_amount_message:"Kwota p\u0142atno\u015Bci jest nieprawid\u0142owa"},c_={title:"Wydatki",expenses_list:"Lista wydatk\xF3w",select_a_customer:"Wybierz kontrahenta",expense_title:"Tytu\u0142",customer:"Kontrahent",currency:"Currency",contact:"Kontakt",category:"Kategoria",from_date:"Od daty",to_date:"Do daty",expense_date:"Data",description:"Opis",receipt:"Potwierdzenie",amount:"Kwota",action:"Akcja",not_selected:"Nie wybrano",note:"Notatka",category_id:"Identyfikator kategorii",date:"Data",add_expense:"Dodaj wydatek",add_new_expense:"Dodaj nowy wydatek",save_expense:"Zapisz wydatek",update_expense:"Zaktualizuj wydatek",download_receipt:"Pobierz potwierdzenie wp\u0142aty",edit_expense:"Edytuj wydatek",new_expense:"Nowy wydatek",expense:"Wydatek | Wydatki",no_expenses:"Nie ma jeszcze wydatk\xF3w!",list_of_expenses:"Ta sekcja b\u0119dzie zawiera\u0142a list\u0119 wydatk\xF3w.",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tego wydatku | Nie b\u0119dziesz w stanie odzyska\u0107 tych wydatk\xF3w",created_message:"Wydatek utworzony pomy\u015Blnie",updated_message:"Wydatek zaktualizowany pomy\u015Blnie",deleted_message:"Wydatek usuni\u0119ty pomy\u015Blnie | Wydatki usuni\u0119te pomy\u015Blnie",categories:{categories_list:"Lista kategorii",title:"Tytu\u0142",name:"Nazwa",description:"Opis",amount:"Kwota",actions:"Akcje",add_category:"Dodaj kategori\u0119",new_category:"Nowa kategoria",category:"Kategoria | Kategorie",select_a_category:"Wybierz kategori\u0119"}},__={email:"E-mail",password:"Has\u0142o",forgot_password:"Nie pami\u0119tasz has\u0142a?",or_signIn_with:"lub zaloguj si\u0119 przez",login:"Logowanie",register:"Rejestracja",reset_password:"Resetuj has\u0142o",password_reset_successfully:"Has\u0142o zosta\u0142o pomy\u015Blnie zresetowane",enter_email:"Wprowad\u017A adres e-mail",enter_password:"Wprowad\u017A has\u0142o",retype_password:"Wprowad\u017A has\u0142o ponownie"},u_={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},m_={title:"U\u017Cytkownicy",users_list:"Lista u\u017Cytkownik\xF3w",name:"Nazwa",description:"Opis",added_on:"Dodano dnia",date_of_creation:"Data utworzenia",action:"Akcja",add_user:"Dodaj u\u017Cytkownika",save_user:"Zapisz u\u017Cytkownika",update_user:"Zaktualizuj u\u017Cytkownika",user:"U\u017Cytkownik | U\u017Cytkownicy",add_new_user:"Dodaj nowego u\u017Cytkownika",new_user:"Nowy u\u017Cytkownik",edit_user:"Edytuj u\u017Cytkownika",no_users:"Brak u\u017Cytkownik\xF3w!",list_of_users:"Ta sekcja b\u0119dzie zawiera\u0142a list\u0119 u\u017Cytkownik\xF3w.",email:"Email",phone:"Telefon",password:"Has\u0142o",user_attached_message:"Nie mo\u017Cna usun\u0105\u0107 elementu, kt\xF3ry jest ju\u017C w u\u017Cyciu",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tego u\u017Cytkownika | Nie b\u0119dziesz w stanie odzyska\u0107 tych u\u017Cytkownik\xF3w",created_message:"U\u017Cytkownik zosta\u0142 utworzony pomy\u015Blnie",updated_message:"U\u017Cytkownik zosta\u0142 zaktualizowany pomy\u015Blnie",deleted_message:"U\u017Cytkownik usuni\u0119ty pomy\u015Blnie | U\u017Cytkownicy usuni\u0119ci pomy\u015Blnie",select_company_role:"Select Role for {company}",companies:"Companies"},p_={title:"Raport",from_date:"Od daty",to_date:"Do daty",status:"Status",paid:"Zap\u0142acono",unpaid:"Nie zap\u0142acono",download_pdf:"Pobierz plik PDF",view_pdf:"Podgl\u0105d PDF",update_report:"Aktualizuj raport",report:"Raport | Raporty",profit_loss:{profit_loss:"Zyski i straty",to_date:"Do daty",from_date:"Od daty",date_range:"Wybierz zakres dat"},sales:{sales:"Sprzeda\u017C",date_range:"Wybierz zakres dat",to_date:"Do daty",from_date:"Od daty",report_type:"Typ raportu"},taxes:{taxes:"Podatki",to_date:"Do daty",from_date:"Od daty",date_range:"Wybierz zakres dat"},errors:{required:"To pole jest wymagane"},invoices:{invoice:"Faktura",invoice_date:"Data faktury",due_date:"Termin p\u0142atno\u015Bci",amount:"Kwota",contact_name:"Nazwa kontaktu",status:"Status"},estimates:{estimate:"Oferta",estimate_date:"Data oferty",due_date:"Data wa\u017Cno\u015Bci",estimate_number:"Numer oferty",ref_number:"Numer referencyjny",amount:"Kwota",contact_name:"Nazwa kontaktu",status:"Status"},expenses:{expenses:"Wydatki",category:"Kategoria",date:"Data",amount:"Kwota",to_date:"Do daty",from_date:"Od daty",date_range:"Wybierz zakres dat"}},g_={menu_title:{account_settings:"Ustawienia konta",company_information:"Informacje o firmie",customization:"Dostosowywanie",preferences:"Opcje",notifications:"Powiadomienia",tax_types:"Rodzaje podatku",expense_category:"Kategorie wydatku",update_app:"Aktualizuj aplikacj\u0119",backup:"Kopia zapasowa",file_disk:"Dysk plik\xF3w",custom_fields:"Pola niestandardowe",payment_modes:"Rodzaje p\u0142atno\u015Bci",notes:"Notatki",exchange_rate:"Exchange Rate",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"Ustawienia",setting:"Ustawienia | Ustawienia",general:"Og\xF3lne",language:"J\u0119zyk",primary_currency:"Waluta g\u0142\xF3wna",timezone:"Strefa czasowa",date_format:"Format daty",currencies:{title:"Waluty",currency:"Waluta | Waluty",currencies_list:"Lista walut",select_currency:"Wybierz walut\u0119",name:"Nazwa",code:"Kod",symbol:"Symbol",precision:"Dok\u0142adno\u015B\u0107",thousand_separator:"Separator tysi\u0119cy",decimal_separator:"Separator dziesi\u0119tny",position:"Pozycja",position_of_symbol:"Po\u0142o\u017Cenie symbolu",right:"Do prawej",left:"Do lewej",action:"Akcja",add_currency:"Dodaj walut\u0119"},mail:{host:"Adres hosta poczty",port:"Port poczty",driver:"Sterownik poczty",secret:"Tajny klucz",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domena",mailgun_endpoint:"Punkt dost\u0119powy Mailgun",ses_secret:"Tajny klucz SES",ses_key:"Klucz SES",password:"Has\u0142o poczty",username:"Nazwa u\u017Cytkownika poczty",mail_config:"Konfiguracja poczty",from_name:"Nazwa nadawcy",from_mail:"Adres e-mail nadawcy",encryption:"Szyfrowanie poczty",mail_config_desc:"Poni\u017Cej znajduje si\u0119 formularz konfiguracji sterownika poczty e-mail do wysy\u0142ania wiadomo\u015Bci e-mail z aplikacji. Mo\u017Cesz r\xF3wnie\u017C skonfigurowa\u0107 zewn\u0119trznych dostawc\xF3w takich jak Sendgrid, SES itp."},pdf:{title:"Ustawienia PDF",footer_text:"Teks stopki",pdf_layout:"Szablon PDF"},company_info:{company_info:"Dane firmy",company_name:"Nazwa firmy",company_logo:"Logo firmy",section_description:"Informacje o Twojej firmie, kt\xF3re b\u0119d\u0105 wy\u015Bwietlane na fakturach, ofertach i innych dokumentach stworzonych przez Crater.",phone:"Telefon",country:"Kraj",state:"Wojew\xF3dztwo",city:"Miasto",address:"Adres",zip:"Kod pocztowy",save:"Zapisz",delete:"Delete",updated_message:"Informacje o firmie zosta\u0142y pomy\u015Blnie zaktualizowane",delete_company:"Delete Company",delete_company_description:"Once you delete your company, you will lose all the data and files associated with it permanently.",are_you_absolutely_sure:"Are you absolutely sure?",delete_company_modal_desc:"This action cannot be undone. This will permanently delete {company} and all of its associated data.",delete_company_modal_label:"Please type {company} to confirm"},custom_fields:{title:"Pola niestandardowe",section_description:"Dostosuj swoje faktury, oferty i wp\u0142ywy p\u0142atno\u015Bci w\u0142asnymi polami. Upewnij si\u0119, \u017Ce u\u017Cywasz poni\u017Cszych p\xF3l w formatach adresowych na stronie ustawie\u0144 dostosowywania.",add_custom_field:"Dodaj pole niestandardowe",edit_custom_field:"Edytuj pole niestandardowe",field_name:"Nazwa pola",label:"Etykieta",type:"Typ",name:"Nazwa",slug:"Slug",required:"Wymagane",placeholder:"Symbol zast\u0119pczy",help_text:"Tekst pomocy",default_value:"Warto\u015B\u0107 domy\u015Blna",prefix:"Prefiks",starting_number:"Numer pocz\u0105tkowy",model:"Model",help_text_description:"Wprowad\u017A jaki\u015B tekst, aby pom\xF3c u\u017Cytkownikom zrozumie\u0107 cel tego pola niestandardowego.",suffix:"Sufiks",yes:"Tak",no:"Nie",order:"Zam\xF3wienie",custom_field_confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tego niestandardowego pola",already_in_use:"Pole niestandardowe jest ju\u017C w u\u017Cyciu",deleted_message:"Pole niestandardowe zosta\u0142o usuni\u0119te pomy\u015Blnie",options:"opcje",add_option:"Dodaj opcje",add_another_option:"Dodaj inn\u0105 opcj\u0119",sort_in_alphabetical_order:"Sortuj wed\u0142ug kolejno\u015Bci alfabetycznej",add_options_in_bulk:"Dodaj opcje zbiorcze",use_predefined_options:"U\u017Cyj predefiniowanych opcji",select_custom_date:"Wybierz niestandardow\u0105 dat\u0119",select_relative_date:"Wybierz dat\u0119 wzgl\u0119dn\u0105",ticked_by_default:"Zaznaczone domy\u015Blnie",updated_message:"Pole niestandardowe zosta\u0142o zaktualizowane pomy\u015Blnie",added_message:"Pole niestandardowe zosta\u0142o dodane pomy\u015Blnie",press_enter_to_add:"Press enter to add new option",model_in_use:"Cannot update model for fields which are already in use.",type_in_use:"Cannot update type for fields which are already in use."},customization:{customization:"dostosowywanie",updated_message:"Informacje o firmie zosta\u0142y pomy\u015Blnie zaktualizowane",save:"Zapisz",insert_fields:"Insert Fields",learn_custom_format:"Learn how to use custom format",add_new_component:"Add New Component",component:"Component",Parameter:"Parameter",series:"Series",series_description:"To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.",series_param_label:"Series Value",delimiter:"Delimiter",delimiter_description:"Single character for specifying the boundary between 2 separate components. By default its set to -",delimiter_param_label:"Delimiter Value",date_format:"Date Format",date_format_description:"A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.",date_format_param_label:"Format",sequence:"Sequence",sequence_description:"Consecutive sequence of numbers across your company. You can specify the length on the given parameter.",sequence_param_label:"Sequence Length",customer_series:"Customer Series",customer_series_description:"To set a different prefix/postfix for each customer.",customer_sequence:"Customer Sequence",customer_sequence_description:"Consecutive sequence of numbers for each of your customer.",customer_sequence_param_label:"Sequence Length",random_sequence:"Random Sequence",random_sequence_description:"Random alphanumeric string. You can specify the length on the given parameter.",random_sequence_param_label:"Sequence Length",invoices:{title:"Faktury",invoice_number_format:"Invoice Number Format",invoice_number_format_description:"Customize how your invoice number gets generated automatically when you create a new invoice.",preview_invoice_number:"Preview Invoice Number",due_date:"Due Date",due_date_description:"Specify how due date is automatically set when you create an invoice.",due_date_days:"Invoice Due after days",set_due_date_automatically:"Set Due Date Automatically",set_due_date_automatically_description:"Enable this if you wish to set due date automatically when you create a new invoice.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on invoice creation.",default_invoice_email_body:"Domy\u015Blny nag\u0142\xF3wek e-maila faktury",company_address_format:"Format adresu firmy",shipping_address_format:"Format adresu dostawy",billing_address_format:"Format adresu do faktury",invoice_email_attachment:"Wy\u015Blij faktury jako za\u0142\u0105czniki",invoice_email_attachment_setting_description:"W\u0142\u0105cz to, je\u015Bli chcesz wysy\u0142a\u0107 faktury jako za\u0142\u0105cznik e-mail. Pami\u0119taj, \u017Ce przycisk 'Zobacz faktur\u0119' w wiadomo\u015Bciach e-mail nie b\u0119dzie ju\u017C wy\u015Bwietlany, gdy jest w\u0142\u0105czony.",invoice_settings_updated:"Invoice Settings updated successfully",retrospective_edits:"Retrospective Edits",allow:"Allow",disable_on_invoice_partial_paid:"Disable after partial payment is recorded",disable_on_invoice_paid:"Disable after full payment is recorded",disable_on_invoice_sent:"Disable after invoice is sent",retrospective_edits_description:" Based on your country's laws or your preference, you can restrict users from editing finalised invoices."},estimates:{title:"Oferty",estimate_number_format:"Estimate Number Format",estimate_number_format_description:"Customize how your estimate number gets generated automatically when you create a new estimate.",preview_estimate_number:"Preview Estimate Number",expiry_date:"Expiry Date",expiry_date_description:"Specify how expiry date is automatically set when you create an estimate.",expiry_date_days:"Estimate Expires after days",set_expiry_date_automatically:"Set Expiry Date Automatically",set_expiry_date_automatically_description:"Enable this if you wish to set expiry date automatically when you create a new estimate.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on estimate creation.",default_estimate_email_body:"Domy\u015Blny nag\u0142\xF3wek e-maila oferty",company_address_format:"Format adresu firmy",shipping_address_format:"Format adresu dostawy",billing_address_format:"Format adresu do faktury",estimate_email_attachment:"Wy\u015Blij oferty jako za\u0142\u0105czniki",estimate_email_attachment_setting_description:"W\u0142\u0105cz to, je\u015Bli chcesz wysy\u0142a\u0107 oferty jako za\u0142\u0105cznik e-mail. Pami\u0119taj, \u017Ce przycisk 'Zobacz ofert\u0119' w wiadomo\u015Bciach e-mail nie b\u0119dzie ju\u017C wy\u015Bwietlany, gdy jest w\u0142\u0105czony.",estimate_settings_updated:"Estimate Settings updated successfully",convert_estimate_options:"Estimate Convert Action",convert_estimate_description:"Specify what happens to the estimate after it gets converted to an invoice.",no_action:"No action",delete_estimate:"Delete estimate",mark_estimate_as_accepted:"Mark estimate as accepted"},payments:{title:"P\u0142atno\u015Bci",payment_number_format:"Payment Number Format",payment_number_format_description:"Customize how your payment number gets generated automatically when you create a new payment.",preview_payment_number:"Preview Payment Number",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on payment creation.",default_payment_email_body:"Domy\u015Blny nag\u0142\xF3wek e-maila p\u0142atno\u015Bci",company_address_format:"Format adresu firmy",from_customer_address_format:"Format adresu nadawcy",payment_email_attachment:"Wy\u015Blij p\u0142atno\u015Bci jako za\u0142\u0105czniki",payment_email_attachment_setting_description:"W\u0142\u0105cz to, je\u015Bli chcesz wysy\u0142a\u0107 p\u0142atno\u015Bci jako za\u0142\u0105cznik e-mail. Pami\u0119taj, \u017Ce przycisk 'Zobacz p\u0142atno\u015B\u0107' w wiadomo\u015Bciach e-mail nie b\u0119dzie ju\u017C wy\u015Bwietlany, gdy jest w\u0142\u0105czony.",payment_settings_updated:"Payment Settings updated successfully"},items:{title:"Pozycje",units:"Jednostki",add_item_unit:"Dodaj jednostk\u0119",edit_item_unit:"Edytuj jednostk\u0119",unit_name:"Nazwa jednostki",item_unit_added:"Dodano jednostk\u0119",item_unit_updated:"Zaktualizowano jednostk\u0119",item_unit_confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej jednostki przedmiotu",already_in_use:"Jednostka pozycji jest ju\u017C w u\u017Cyciu",deleted_message:"Jednostka pozycji zosta\u0142a usuni\u0119ta pomy\u015Blnie"},notes:{title:"Notatki",description:"Oszcz\u0119dzaj czas, tworz\u0105c notatki i ponownie u\u017Cywaj\u0105c ich na fakturach, ofertach i p\u0142atno\u015Bciach.",notes:"Notatki",type:"Typ",add_note:"Dodaj notatk\u0119",add_new_note:"Dodaj now\u0105 notatk\u0119",name:"Nazwa",edit_note:"Edytuj notatk\u0119",note_added:"Notatka zosta\u0142a dodana pomy\u015Blnie",note_updated:"Notatka zaktualizowana pomy\u015Blnie",note_confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej notatki",already_in_use:"Notatka jest ju\u017C w u\u017Cyciu",deleted_message:"Notatka zosta\u0142a usuni\u0119ta pomy\u015Blnie"}},account_settings:{profile_picture:"Zdj\u0119cie profilowe",name:"Nazwa",email:"Email",password:"Has\u0142o",confirm_password:"Potwierd\u017A has\u0142o",account_settings:"Ustawienia konta",save:"Zapisz",section_description:"Mo\u017Cesz zaktualizowa\u0107 swoje imi\u0119, e-mail i has\u0142o u\u017Cywaj\u0105c poni\u017Cszego formularza.",updated_message:"Ustawienia konta zosta\u0142y pomy\u015Blnie zaktualizowane"},user_profile:{name:"Nazwa",email:"Email",password:"Has\u0142o",confirm_password:"Potwierd\u017A has\u0142o"},notification:{title:"Powiadomienie",email:"Wy\u015Blij powiadomienie do",description:"Kt\xF3re powiadomienia e-mail chcesz otrzymywa\u0107 kiedy co\u015B si\u0119 zmieni?",invoice_viewed:"Faktura wy\u015Bwietlona",invoice_viewed_desc:"Kiedy klient wy\u015Bwietli faktur\u0119 wys\u0142an\u0105 za po\u015Brednictwem kokpitu Cratera.",estimate_viewed:"Oferta wy\u015Bwietlona",estimate_viewed_desc:"Kiedy klient wy\u015Bwietli ofert\u0119 wys\u0142an\u0105 za po\u015Brednictwem kokpitu Cratera.",save:"Zapisz",email_save_message:"Wiadomo\u015B\u0107 zapisana pomy\u015Blnie",please_enter_email:"Prosz\u0119 wpisa\u0107 adres e-mail"},roles:{title:"Roles",description:"Manage the roles & permissions of this company",save:"Save",add_new_role:"Add New Role",role_name:"Role Name",added_on:"Added on",add_role:"Add Role",edit_role:"Edit Role",name:"Name",permission:"Permission | Permissions",select_all:"Select All",none:"None",confirm_delete:"You will not be able to recover this Role",created_message:"Role created successfully",updated_message:"Role updated successfully",deleted_message:"Role deleted successfully",already_in_use:"Role is already in use"},exchange_rate:{exchange_rate:"Exchange Rate",title:"Fix Currency Exchange issues",description:"Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.",drivers:"Drivers",new_driver:"Add New Provider",edit_driver:"Edit Provider",select_driver:"Select Driver",update:"select exchange rate ",providers_description:"Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.",key:"API Key",name:"Name",driver:"Driver",is_default:"IS DEFAULT",currency:"Currencies",exchange_rate_confirm_delete:"You will not be able to recover this driver",created_message:"Provider Created successfully",updated_message:"Provider Updated Successfully",deleted_message:"Provider Deleted Successfully",error:" You cannot Delete Active Driver",default_currency_error:"This currency is already used in one of the Active Provider",exchange_help_text:"Enter exchange rate to convert from {currency} to {baseCurrency}",currency_freak:"Currency Freak",currency_layer:"Currency Layer",open_exchange_rate:"Open Exchange Rate",currency_converter:"Currency Converter",server:"Server",url:"URL",active:"Active",currency_help_text:"This provider will only be used on above selected currencies",currency_in_used:"The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again."},tax_types:{title:"Rodzaje opodatkowania",add_tax:"Dodaj podatek",edit_tax:"Edytuj podatek",description:"Mo\u017Cesz dodawa\u0107 lub usuwa\u0107 podatki. Crater obs\u0142uguje podatki od poszczeg\xF3lnych produkt\xF3w, jak r\xF3wnie\u017C na fakturze.",add_new_tax:"Dodaj nowy podatek",tax_settings:"Ustawienia podatku",tax_per_item:"Podatek na produkt",tax_name:"Nazwa podatku",compound_tax:"Podatek z\u0142o\u017Cony",percent:"Procent",action:"Akcja",tax_setting_description:"W\u0142\u0105cz to, je\u015Bli chcesz doda\u0107 podatki do poszczeg\xF3lnych element\xF3w faktury. Domy\u015Blnie podatki s\u0105 dodawane bezpo\u015Brednio do ca\u0142ej faktury.",created_message:"Typ podatku zosta\u0142 pomy\u015Blnie utworzony",updated_message:"Typ podatku zosta\u0142 pomy\u015Blnie zaktualizowany",deleted_message:"Typ podatku zosta\u0142 pomy\u015Blnie usuni\u0119ty",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tego typu podatku",already_in_use:"Ten podatek jest w u\u017Cyciu"},payment_modes:{title:"Payment Modes",description:"Modes of transaction for payments",add_payment_mode:"Add Payment Mode",edit_payment_mode:"Edit Payment Mode",mode_name:"Mode Name",payment_mode_added:"Payment Mode Added",payment_mode_updated:"Payment Mode Updated",payment_mode_confirm_delete:"You will not be able to recover this Payment Mode",already_in_use:"Payment Mode is already in use",deleted_message:"Payment Mode deleted successfully"},expense_category:{title:"Kategorie wydatk\xF3w",action:"Akcja",description:"Kategorie s\u0105 wymagane do dodawania wpis\xF3w wydatk\xF3w. Mo\u017Cesz doda\u0107 lub usun\u0105\u0107 te kategorie zgodnie ze swoimi preferencjami.",add_new_category:"Dodaj now\u0105 kategori\u0119",add_category:"Dodaj kategori\u0119",edit_category:"Edytuj kategori\u0119",category_name:"Nazwa kategorii",category_description:"Opis",created_message:"Kategoria wydatk\xF3w zosta\u0142a utworzona pomy\u015Blnie",deleted_message:"Kategoria wydatk\xF3w zosta\u0142a usuni\u0119ta pomy\u015Blnie",updated_message:"Kategoria wydatk\xF3w zaktualizowana pomy\u015Blnie",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej kategorii wydatk\xF3w",already_in_use:"Kategoria jest ju\u017C w u\u017Cyciu"},preferences:{currency:"Waluta",default_language:"Domy\u015Blny j\u0119zyk",time_zone:"Strefa czasowa",fiscal_year:"Rok finansowy",date_format:"Format daty",discount_setting:"Ustawienia rabatu",discount_per_item:"Rabat na produkt ",discount_setting_description:"W\u0142\u0105cz to, je\u015Bli chcesz doda\u0107 rabat do poszczeg\xF3lnych element\xF3w faktury. Domy\u015Blnie rabat jest dodawany bezpo\u015Brednio do ca\u0142ej faktury.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"Zapisz",preference:"Preferencje | Preferencje",general_settings:"Domy\u015Blne ustawienia systemu.",updated_message:"Preferencje pomy\u015Blnie zaktualizowane",select_language:"Wybierz j\u0119zyk",select_time_zone:"Ustaw stref\u0119 czasow\u0105",select_date_format:"Wybierz format daty",select_financial_year:"Wybierz rok podatkowy",recurring_invoice_status:"Recurring Invoice Status",create_status:"Create Status",active:"Active",on_hold:"On Hold",update_status:"Update Status",completed:"Completed",company_currency_unchangeable:"Company currency cannot be changed"},update_app:{title:"Aktualizuj aplikacj\u0119",description:"Mo\u017Cesz \u0142atwo zaktualizowa\u0107 Cratera poprzez klikni\u0119cie przycisku poni\u017Cej",check_update:"Sprawd\u017A czy s\u0105 dost\u0119pne nowe aktualizacje",avail_update:"Dost\u0119pna nowa aktualizacja",next_version:"Nowa wersja",requirements:"Wymagania",update:"Aktualizuj teraz",update_progress:"Aktualizacja w toku...",progress_text:"To zajmie tylko kilka minut. Prosz\u0119 nie od\u015Bwie\u017Ca\u0107 ekranu ani zamyka\u0107 okna przed zako\u0144czeniem aktualizacji",update_success:"Aplikacja zosta\u0142a zaktualizowana! Prosz\u0119 czeka\u0107, a\u017C okno przegl\u0105darki zostanie automatycznie prze\u0142adowane.",latest_message:"Brak dost\u0119pnych aktualizacji! Posiadasz najnowsz\u0105 wersj\u0119.",current_version:"Aktualna wersja",download_zip_file:"Pobierz plik ZIP",unzipping_package:"Rozpakuj pakiet",copying_files:"Kopiowanie plik\xF3w",deleting_files:"Usuwanie nieu\u017Cywanych plik\xF3w",running_migrations:"Uruchamianie migracji",finishing_update:"Ko\u0144czenie aktualizacji",update_failed:"Aktualizacja nie powiod\u0142a si\u0119",update_failed_text:"Przepraszamy! Twoja aktualizacja nie powiod\u0142a si\u0119 w kroku: {step}",update_warning:"All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating."},backup:{title:"Kopia zapasowa | Kopie zapasowe",description:"Kopia zapasowa jest plikiem zipfile zawieraj\u0105cym wszystkie pliki w katalogach kt\xF3re podasz wraz z zrzutem bazy danych",new_backup:"Dodaj now\u0105 kopi\u0119 zapasow\u0105",create_backup:"Utw\xF3rz kopi\u0119 zapasow\u0105",select_backup_type:"Wybierz typ kopii zapasowej",backup_confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej kopii zapasowej",path:"\u015Bcie\u017Cka",new_disk:"Nowy dysk",created_at:"utworzono w",size:"rozmiar",dropbox:"dropbox",local:"lokalny",healthy:"zdrowy",amount_of_backups:"liczba kopii zapasowych",newest_backups:"najnowsza kopia zapasowa",used_storage:"zu\u017Cyta pami\u0119\u0107",select_disk:"Wybierz dysk",action:"Akcja",deleted_message:"Kopia zapasowa usuni\u0119ta pomy\u015Blnie",created_message:"Kopia zapasowa utworzona pomy\u015Blnie",invalid_disk_credentials:"Nieprawid\u0142owe dane uwierzytelniaj\u0105ce wybranego dysku"},disk:{title:"Dysk plik\xF3w | Dyski plik\xF3w",description:"Domy\u015Blnie Crater u\u017Cyje twojego lokalnego dysku do zapisywania kopii zapasowych, awatara i innych plik\xF3w obrazu. Mo\u017Cesz skonfigurowa\u0107 wi\u0119cej ni\u017C jeden serwer dysku, taki jak DigitalOcean, S3 i Dropbox, zgodnie z Twoimi preferencjami.",created_at:"utworzono w",dropbox:"dropbox",name:"Nazwa",driver:"Sterownik",disk_type:"Typ",disk_name:"Nazwa dysku",new_disk:"Dodaj nowy dysk",filesystem_driver:"Sterownik systemu plik\xF3w",local_driver:"lokalny sterownik",local_root:"g\u0142\xF3wny katalog lokalny",public_driver:"Publiczny sterownik",public_root:"Publiczny g\u0142\xF3wny katalog",public_url:"Publiczny URL",public_visibility:"Widoczno\u015B\u0107 publiczna",media_driver:"Media Driver",media_root:"Media Root",aws_driver:"Sterownik AWS",aws_key:"Klucz AWS",aws_secret:"Tajny klucz AWS",aws_region:"Region AWS",aws_bucket:"Zasobnik AWS",aws_root:"Katalog g\u0142\xF3wny AWS",do_spaces_type:"Typ Do Spaces",do_spaces_key:"Klucz Do Spaces",do_spaces_secret:"Tajny klucz Do Spaces",do_spaces_region:"Region Do Spaces",do_spaces_bucket:"Zasobnik Do Spaces",do_spaces_endpoint:"Punkt dost\u0119powy Do Spaces",do_spaces_root:"Katalog g\u0142\xF3wny Do Spaces",dropbox_type:"Typ Dropbox",dropbox_token:"Token Dropbox",dropbox_key:"Klucz Dropbox",dropbox_secret:"Tajny klucz Dropbox",dropbox_app:"Aplikacja Dropbox",dropbox_root:"Root Dropbox",default_driver:"Domy\u015Blny sterownik",is_default:"JEST DOMY\u015ALNY",set_default_disk:"Ustaw domy\u015Blny dysk",set_default_disk_confirm:"Ten dysk zostanie ustawiony jako domy\u015Blny, a wszystkie nowe pliki PDF zostan\u0105 zapisane na tym dysku",success_set_default_disk:"Dysk zosta\u0142 pomy\u015Blnie ustawiony jako domy\u015Blny",save_pdf_to_disk:"Zapisz pliki PDF na dysku",disk_setting_description:" W\u0142\u0105cz t\u0119 opcj\u0119, je\u015Bli chcesz automatycznie zapisa\u0107 kopi\u0119 ka\u017Cdej faktury, oferty i potwierdzenia p\u0142atno\u015Bci PDF na swoim domy\u015Blnym dysku. W\u0142\u0105czenie tej opcji spowoduje skr\xF3cenie czasu \u0142adowania podczas przegl\u0105dania PDF.",select_disk:"Wybierz dysk",disk_settings:"Ustawienia dysku",confirm_delete:"Twoje istniej\u0105ce pliki i foldery na okre\u015Blonym dysku nie zostan\u0105 zmienione, ale konfiguracja twojego dysku zostanie usuni\u0119ta z Cratera",action:"Akcja",edit_file_disk:"Edytuj dysk plk\xF3w",success_create:"Dysk dodany pomy\u015Blnie",success_update:"Dysk zaktualizowany pomy\u015Blnie",error:"B\u0142\u0105d dodawania dysku",deleted_message:"Dysk plik\xF3w zosta\u0142 usuni\u0119ty pomy\u015Blnie",disk_variables_save_successfully:"Dysk skonfigurowany pomy\u015Blnie",disk_variables_save_error:"Konfiguracja dysku nieudana.",invalid_disk_credentials:"Nieprawid\u0142owe dane uwierzytelniaj\u0105ce wybranego dysku"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},f_={account_info:"Informacje o koncie",account_info_desc:"Poni\u017Csze szczeg\xF3\u0142y zostan\u0105 u\u017Cyte do utworzenia g\u0142\xF3wnego konta administratora. Mo\u017Cesz tak\u017Ce zmieni\u0107 szczeg\xF3\u0142y w dowolnym momencie po zalogowaniu.",name:"Nazwa",email:"E-mail",password:"Has\u0142o",confirm_password:"Potwierd\u017A has\u0142o",save_cont:"Zapisz i kontynuuj",company_info:"Informacje o firmie",company_info_desc:"Ta informacja b\u0119dzie wy\u015Bwietlana na fakturach. Pami\u0119taj, \u017Ce mo\u017Cesz to p\xF3\u017Aniej edytowa\u0107 na stronie ustawie\u0144.",company_name:"Nazwa firmy",company_logo:"Logo firmy",logo_preview:"Podgl\u0105d loga",preferences:"Preferencje",preferences_desc:"Domy\u015Blne preferencje dla systemu.",currency_set_alert:"The company's currency cannot be changed later.",country:"Kraj",state:"Wojew\xF3dztwo",city:"Miasto",address:"Adres",street:"Ulica1 | Ulica2",phone:"Telefon",zip_code:"Kod pocztowy",go_back:"Wstecz",currency:"Waluta",language:"J\u0119zyk",time_zone:"Strefa czasowa",fiscal_year:"Rok finansowy",date_format:"Format daty",from_address:"Adres nadawcy",username:"Nazwa u\u017Cytkownika",next:"Nast\u0119pny",continue:"Kontynuuj",skip:"Pomi\u0144",database:{database:"Adres URL witryny i baza danych",connection:"Po\u0142\u0105czenie z baz\u0105 danych",host:"Host bazy danych",port:"Port bazy danych",password:"Has\u0142o bazy danych",app_url:"Adres aplikacji",app_domain:"Domena aplikacji",username:"Nazwa u\u017Cytkownika bazy danych",db_name:"Nazwa bazy danych",db_path:"\u015Acie\u017Cka do bazy danych",desc:"Utw\xF3rz baz\u0119 danych na swoim serwerze i ustaw dane logowania za pomoc\u0105 poni\u017Cszego formularza."},permissions:{permissions:"Uprawnienia",permission_confirm_title:"Czy na pewno chcesz kontynuowa\u0107?",permission_confirm_desc:"Sprawdzanie uprawnie\u0144 do katalogu nie powiod\u0142o si\u0119",permission_desc:"Poni\u017Cej znajduje si\u0119 lista uprawnie\u0144 folder\xF3w, kt\xF3re s\u0105 wymagane do dzia\u0142ania aplikacji. Je\u015Bli sprawdzenie uprawnie\u0144 nie powiedzie si\u0119, upewnij si\u0119, \u017Ce zaktualizujesz uprawnienia folderu."},verify_domain:{title:"Weryfikacja domeny",desc:"Crater u\u017Cywa uwierzytelniania opartego na sesji, kt\xF3re wymaga weryfikacji domeny dla cel\xF3w bezpiecze\u0144stwa. Wprowad\u017A domen\u0119, na kt\xF3rej b\u0119dziesz mie\u0107 dost\u0119p do swojej aplikacji internetowej.",app_domain:"Domena aplikacji",verify_now:"Potwierd\u017A teraz",success:"Pomy\u015Blnie zweryfikowano domen\u0119.",failed:"Domain verification failed. Please enter valid domain name.",verify_and_continue:"Weryfikuj i kontynuuj"},mail:{host:"Adres hosta poczty",port:"Port poczty",driver:"Spos\xF3b wysy\u0142ania wiadomo\u015Bci e-mail",secret:"Tajny klucz",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domena",mailgun_endpoint:"Punkt dost\u0119powy Mailgun",ses_secret:"Tajny klucz SES",ses_key:"Klucz SES",password:"Has\u0142o poczty",username:"Nazwa u\u017Cytkownika poczty",mail_config:"Konfiguracja poczty",from_name:"Nazwa nadawcy",from_mail:"Adres e-mail nadawcy",encryption:"Szyfrowanie poczty",mail_config_desc:"Poni\u017Cej znajduje si\u0119 formularz konfiguracji sterownika poczty e-mail do wysy\u0142ania wiadomo\u015Bci e-mail z aplikacji. Mo\u017Cesz r\xF3wnie\u017C skonfigurowa\u0107 zewn\u0119trznych dostawc\xF3w takich jak Sendgrid, SES itp."},req:{system_req:"Wymagania systemowe",php_req_version:"Minimalna wersja Php (wymagana wersja {version})",check_req:"Sprawd\u017A wymagania",system_req_desc:"Crater posiada kilka wymaga\u0144 serwera. Upewnij si\u0119, \u017Ce Tw\xF3j serwer ma wymagan\u0105 wersj\u0119 php oraz wszystkie rozszerzenia wymienione poni\u017Cej."},errors:{migrate_failed:"Migracja nie powiod\u0142a si\u0119",database_variables_save_error:"Nie mo\u017Cna zapisa\u0107 konfiguracji do pliku .env. Prosz\u0119 sprawdzi\u0107 jego uprawnienia",mail_variables_save_error:"Konfiguracja email nie powiod\u0142a si\u0119.",connection_failed:"B\u0142\u0105d po\u0142\u0105czenia z baz\u0105 danych",database_should_be_empty:"Baza danych powinna by\u0107 pusta"},success:{mail_variables_save_successfully:"Email zosta\u0142 skonfigurowany pomy\u015Blnie",database_variables_save_successfully:"Baza danych zosta\u0142a skonfigurowana poprawnie."}},v_={invalid_phone:"Nieprawid\u0142owy numer telefonu",invalid_url:"Nieprawid\u0142owy adres url (np. http://www.crater.com)",invalid_domain_url:"Nieprawid\u0142owy adres url (np. crater.com)",required:"Pole jest wymagane",email_incorrect:"Niepoprawny email.",email_already_taken:"Ten adres e-mail jest ju\u017C zaj\u0119ty.",email_does_not_exist:"U\u017Cytkownik z podanym adresem email nie istnieje",item_unit_already_taken:"Ta nazwa jednostki zosta\u0142a ju\u017C zaj\u0119ta",payment_mode_already_taken:"Ta nazwa trybu p\u0142atno\u015Bci zosta\u0142a ju\u017C zaj\u0119ta",send_reset_link:"Wy\u015Blij link do resetowania has\u0142a",not_yet:"Jeszcze nie? Wy\u015Blij ponownie",password_min_length:"Has\u0142o musi zawiera\u0107 co najmniej {count} znak\xF3w",name_min_length:"Nazwa u\u017Cytkownika musi zawiera\u0107 co najmniej {count} znak\xF3w.",prefix_min_length:"Prefix must have at least {count} letters.",enter_valid_tax_rate:"Wprowad\u017A poprawn\u0105 stawk\u0119 podatku",numbers_only:"Tylko liczby.",characters_only:"Tylko znaki.",password_incorrect:"Has\u0142a musz\u0105 by\u0107 identyczne",password_length:"Has\u0142o musi zawiera\u0107 {count} znak\xF3w.",qty_must_greater_than_zero:"Ilo\u015B\u0107 musi by\u0107 wi\u0119ksza ni\u017C zero.",price_greater_than_zero:"Cena musi by\u0107 wi\u0119ksza ni\u017C zero.",payment_greater_than_zero:"P\u0142atno\u015B\u0107 musi by\u0107 wi\u0119ksza ni\u017C zero.",payment_greater_than_due_amount:"Wprowadzona p\u0142atno\u015B\u0107 to wi\u0119cej ni\u017C nale\u017Cna kwota tej faktury.",quantity_maxlength:"Ilo\u015B\u0107 nie powinna by\u0107 wi\u0119ksza ni\u017C 20 cyfr.",price_maxlength:"Cena nie powinna by\u0107 wi\u0119ksza ni\u017C 20 cyfr.",price_minvalue:"Cena powinna by\u0107 wi\u0119ksza ni\u017C 0.",amount_maxlength:"Kwota nie powinna by\u0107 wi\u0119ksza ni\u017C 20 cyfr.",amount_minvalue:"Kwota powinna by\u0107 wi\u0119ksza ni\u017C 0.",discount_maxlength:"Discount should not be greater than max discount",description_maxlength:"Opis nie powinien przekracza\u0107 65 000 znak\xF3w.",subject_maxlength:"Temat nie powinien by\u0107 d\u0142u\u017Cszy ni\u017C 100 znak\xF3w.",message_maxlength:"Wiadomo\u015B\u0107 nie powinna by\u0107 d\u0142u\u017Csza ni\u017C 255 znak\xF3w.",maximum_options_error:"Wybrano maksymalnie {max} opcji. Najpierw usu\u0144 wybran\u0105 opcj\u0119, aby wybra\u0107 inn\u0105.",notes_maxlength:"Notatki nie powinny by\u0107 wi\u0119ksze ni\u017C 65 000 znak\xF3w.",address_maxlength:"Adres nie powinien mie\u0107 wi\u0119cej ni\u017C 255 znak\xF3w.",ref_number_maxlength:"Numer referencyjny nie mo\u017Ce by\u0107 d\u0142u\u017Cszy ni\u017C 255 znak\xF3w.",prefix_maxlength:"Prefiks nie powinien by\u0107 d\u0142u\u017Cszy ni\u017C 5 znak\xF3w.",something_went_wrong:"co\u015B posz\u0142o nie tak",number_length_minvalue:"D\u0142ugo\u015B\u0107 numeru powinna by\u0107 wi\u0119ksza ni\u017C 0",at_least_one_ability:"Please select atleast one Permission.",valid_driver_key:"Please enter a valid {driver} key.",valid_exchange_rate:"Please enter a valid exchange rate.",company_name_not_same:"Company name must match with given name."},h_={starter_plan:"This feature is available on Starter plan and onwards!",invalid_provider_key:"Please Enter Valid Provider API Key.",estimate_number_used:"The estimate number has already been taken.",invoice_number_used:"The invoice number has already been taken.",payment_attached:"This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.",payment_number_used:"The payment number has already been taken.",name_already_taken:"The name has already been taken.",receipt_does_not_exist:"Receipt does not exist.",customer_cannot_be_changed_after_payment_is_added:"Customer cannot be change after payment is added",invalid_credentials:"Invalid Credentials.",not_allowed:"Not Allowed",login_invalid_credentials:"These credentials do not match our records.",enter_valid_cron_format:"Please enter a valid cron format",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},y_="Oferta",b_="Numer oferty",k_="Data oferty",w_="Termin wa\u017Cno\u015Bci",x_="Faktura",z_="Numer faktury",S_="Data faktury",P_="Termin",j_="Notatki",A_="Pozycje",D_="Ilo\u015B\u0107",C_="Cena",E_="Rabat",I_="Kwota",N_="Suma cz\u0119\u015Bciowa",T_="Razem",R_="P\u0142atno\u015B\u0107",M_="POTWIERDZENIE P\u0141ATNO\u015ACI",F_="Data p\u0142atno\u015Bci",$_="Numer p\u0142atno\u015Bci",U_="Metoda p\u0142atno\u015Bci",V_="Kwota otrzymana",O_="SPRAWOZDANIE Z WYDATK\xD3W",L_="WYDATKI OG\xD3\u0141EM",B_="RAPORT ZYSK\xD3W I STRAT",q_="Raport sprzeda\u017Cy obs\u0142ugi kontrahenta",K_="Raport dotycz\u0105cy przedmiotu sprzeda\u017Cy",W_="Raport podsumowania podatku",Z_="PRZYCH\xD3D",H_="ZYSK NETTO",Y_="Raport sprzeda\u017Cy: Wed\u0142ug Kontrahenta",G_="CA\u0141KOWITA SPRZEDA\u017B",J_="Raport sprzeda\u017Cy: Wed\u0142ug produktu",Q_="RAPORT PODATKOWY",X_="CA\u0141KOWITY PODATEK",eu="Rodzaje podatku",tu="Wydatki",au="Wystawiono dla",iu="Wysy\u0142ka do",nu="Otrzymane od:",su="Tax";var ou={navigation:Jc,general:Qc,dashboard:Xc,tax_types:e_,global_search:t_,company_switcher:a_,dateRange:i_,customers:n_,items:s_,estimates:o_,invoices:r_,recurring_invoices:d_,payments:l_,expenses:c_,login:__,modules:u_,users:m_,reports:p_,settings:g_,wizard:f_,validation:v_,errors:h_,pdf_estimate_label:y_,pdf_estimate_number:b_,pdf_estimate_date:k_,pdf_estimate_expire_date:w_,pdf_invoice_label:x_,pdf_invoice_number:z_,pdf_invoice_date:S_,pdf_invoice_due_date:P_,pdf_notes:j_,pdf_items_label:A_,pdf_quantity_label:D_,pdf_price_label:C_,pdf_discount_label:E_,pdf_amount_label:I_,pdf_subtotal:N_,pdf_total:T_,pdf_payment_label:R_,pdf_payment_receipt_label:M_,pdf_payment_date:F_,pdf_payment_number:$_,pdf_payment_mode:U_,pdf_payment_amount_received_label:V_,pdf_expense_report_label:O_,pdf_total_expenses_label:L_,pdf_profit_loss_label:B_,pdf_sales_customers_label:q_,pdf_sales_items_label:K_,pdf_tax_summery_label:W_,pdf_income_label:Z_,pdf_net_profit_label:H_,pdf_customer_sales_report:Y_,pdf_total_sales_label:G_,pdf_item_sales_label:J_,pdf_tax_report_label:Q_,pdf_total_tax_label:X_,pdf_tax_types_label:eu,pdf_expenses_label:tu,pdf_bill_to:au,pdf_ship_to:iu,pdf_received_from:nu,pdf_tax_label:su};const ru={dashboard:"Painel",customers:"Clientes",items:"Itens",invoices:"Faturas",expenses:"Despesas",estimates:"Or\xE7amentos",payments:"Pagamentos",reports:"Relat\xF3rios",settings:"Configura\xE7\xF5es",logout:"Encerrar sess\xE3o"},du={view_pdf:"Ver PDF",download_pdf:"Baixar PDF",save:"Salvar",cancel:"Cancelar",update:"Atualizar",deselect:"Desmarcar",download:"Baixar",from_date:"A partir da Data",to_date:"At\xE9 a Data",from:"De",to:"Para",sort_by:"Ordenar por",ascending:"Crescente",descending:"Descendente",subject:"Sujeita",body:"Corpo",message:"Mensagem",go_back:"Voltar",back_to_login:"Voltar ao Login",home:"Home",filter:"Filtrar",delete:"Excluir",edit:"Editar",view:"Ver",add_new_item:"Adicionar novo item",clear_all:"Limpar tudo",showing:"Mostrando",of:"de",actions:"A\xE7\xF5es",subtotal:"Total parcial",discount:"Desconto",fixed:"Fixado",percentage:"Porcentagem",tax:"Imposto",total_amount:"Quantidade Total",bill_to:"Cobrar a",ship_to:"Envie a",due:"Vencida",draft:"Rascunho",sent:"Enviado",all:"Todos",select_all:"Selecionar tudo",choose_file:"Escolha um arquivo.",choose_template:"Escolha um modelo",choose:"Escolher",remove:"Excluir",powered_by:"Distribu\xEDdo por",bytefury:"Bytefury",select_a_status:"Selecione um status",select_a_tax:"Selecione um Imposto",search:"Buscar",are_you_sure:"Tem certeza?",list_is_empty:"Lista est\xE1 vazia.",no_tax_found:"Imposto n\xE3o encontrado!",four_zero_four:"404",you_got_lost:"Ops! Se perdeu!",go_home:"Ir para Home",test_mail_conf:"Testar configura\xE7\xE3o de email",send_mail_successfully:"Correio enviado com sucesso",setting_updated:"Configura\xE7\xE3o atualizada com sucesso",select_state:"Selecione Estado",select_country:"Selecionar pais",select_city:"Selecionar cidade",street_1:"Rua 1",street_2:"Rua # 2",action_failed:"A\xE7\xE3o: Falhou",retry:"Atualiza\xE7\xE3o falhou"},lu={select_year:"Selecione Ano",cards:{due_amount:"Montante devido",customers:"Clientes",invoices:"Faturas",estimates:"Or\xE7amentos"},chart_info:{total_sales:"Vendas",total_receipts:"Receitas",total_expense:"Despesas",net_income:"Resultado l\xEDquido",year:"Selecione Ano"},monthly_chart:{title:"Vendas e Despesas"},recent_invoices_card:{title:"Faturas vencidas",due_on:"vencido em",customer:"Cliente",amount_due:"Valor Devido",actions:"A\xE7\xF5es",view_all:"Ver todos"},recent_estimate_card:{title:"Or\xE7amentos Recentes",date:"Data",customer:"Cliente",amount_due:"Valor Devido",actions:"A\xE7\xF5es",view_all:"Ver todos"}},cu={name:"Nome",description:"Descri\xE7\xE3o",percent:"Porcentagem",compound_tax:"Imposto compuesto"},_u={title:"Clientes",add_customer:"Adicionar cliente",contacts_list:"Lista de clientes",name:"Nome",display_name:"Nome de exibi\xE7\xE3o",primary_contact_name:"Nome do contato principal",contact_name:"Nome de Contato",amount_due:"Valor Devido",email:"Email",address:"Endere\xE7o",phone:"Telefone",website:"Site",country:"Pais",state:"Estado",city:"Cidade",zip_code:"C\xF3digo postal",added_on:"Adicionado",action:"A\xE7\xE3o",password:"Senha",street_number:"N\xFAmero",primary_currency:"Moeda principal",add_new_customer:"Adicionar novo cliente",save_customer:"Salvar cliente",update_customer:"Atualizar cliente",customer:"Cliente | Clientes",new_customer:"Novo cliente",edit_customer:"Editar cliente",basic_info:"Informa\xE7\xE3o basica",billing_address:"Endere\xE7o de cobran\xE7a",shipping_address:"Endere\xE7o de entrega",copy_billing_address:"C\xF3pia de faturamento",no_customers:"Ainda n\xE3o h\xE1 clientes!",no_customers_found:"Clientes n\xE3o encontrados!",no_contact:"No contact",no_contact_name:"No contact name",list_of_customers:"Esta se\xE7\xE3o conter\xE1 a lista de clientes.",primary_display_name:"Nome de exibi\xE7\xE3o principal",select_currency:"Selecione o tipo de moeda",select_a_customer:"Selecione um cliente",type_or_click:"Digite ou clique para selecionar",new_transaction:"Nova transa\xE7\xE3o",no_matching_customers:"N\xE3o h\xE1 clientes correspondentes!",phone_number:"N\xFAmero de telefone",create_date:"Criar Data",confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar este cliente e todas as faturas, estimativas e pagamentos relacionados. | Voc\xEA n\xE3o poder\xE1 recuperar esses clientes e todas as faturas, estimativas e pagamentos relacionados.",created_message:"Cliente criado com sucesso",updated_message:"Cliente atualizado com sucesso",deleted_message:"Cliente exclu\xEDdo com sucesso | Clientes exclu\xEDdos com sucesso"},uu={title:"Itens",items_list:"Lista de Itens",name:"Nome",unit:"Unidade",description:"Descri\xE7\xE3o",added_on:"Adicionado",price:"Pre\xE7o",date_of_creation:"Data de cria\xE7\xE3o",not_selected:"No item selected",action:"A\xE7\xE3o",add_item:"Adicionar item",save_item:"Salvar item",update_item:"Atualizar item",item:"Item | Itens",add_new_item:"Adicionar novo item",new_item:"Novo item",edit_item:"Editar item",no_items:"Ainda n\xE3o existe itens",list_of_items:"Esta se\xE7\xE3o conter\xE1 a lista de itens.",select_a_unit:"Seleciona unidade",taxes:"Impostos",item_attached_message:"N\xE3o \xE9 poss\xEDvel excluir um item que j\xE1 est\xE1 em uso.",confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar este item | Voc\xEA n\xE3o poder\xE1 recuperar esses itens",created_message:"Item criado com sucesso",updated_message:"Item atualizado com sucesso",deleted_message:"Item exclu\xEDdo com sucesso | Itens Exclu\xEDdos com sucesso"},mu={title:"Or\xE7amentos",estimate:"Or\xE7amento | Or\xE7amentos",estimates_list:"Lista de or\xE7amentos",days:"{dias} dias",months:"{meses} M\xEAs",years:"{Anos} Ano",all:"Todos",paid:"Pago",unpaid:"N\xE3o pago",customer:"CLIENTE",ref_no:"N\xDAMERO DE REFER\xCANCIA.",number:"N\xDAMERO",amount_due:"Valor Devido",partially_paid:"Pago parcialmente",total:"Total",discount:"Desconto",sub_total:"Subtotal",estimate_number:"Numero do Or\xE7amento",ref_number:"Refer\xEAncia",contact:"Contato",add_item:"Adicionar Item",date:"Data",due_date:"Data de Vencimento",expiry_date:"Data de expira\xE7\xE3o",status:"Status",add_tax:"Adicionar Imposto",amount:"Montante",action:"A\xE7\xE3o",notes:"Observa\xE7\xF5es",tax:"Imposto",estimate_template:"Modelo de or\xE7amento",convert_to_invoice:"Converter em fatura",mark_as_sent:"Marcar como enviado",send_estimate:"Enviar or\xE7amento",record_payment:"Registro de pago",add_estimate:"Adicionar or\xE7amento",save_estimate:"Salvar Or\xE7amento",confirm_conversion:"Deseja converter este or\xE7amento em uma fatura?",conversion_message:"Conver\xE7\xE3o realizada com sucesso",confirm_send_estimate:"Este or\xE7amento ser\xE1 enviado por email ao cliente",confirm_mark_as_sent:"Este or\xE7amento ser\xE1 marcado como enviado",confirm_mark_as_accepted:"Este or\xE7amento ser\xE1 marcado como Aceito",confirm_mark_as_rejected:"Este or\xE7amento ser\xE1 marcado como Rejeitado",no_matching_estimates:"N\xE3o h\xE1 or\xE7amentos correspondentes!",mark_as_sent_successfully:"Or\xE7amento como marcado como enviado com sucesso",send_estimate_successfully:"Or\xE7amento enviado com sucesso",errors:{required:"Campo obrigat\xF3rio"},accepted:"Aceito",rejected:"Rejected",sent:"Enviado",draft:"Rascunho",declined:"Rejeitado",new_estimate:"Novo or\xE7amento",add_new_estimate:"Adicionar novo or\xE7amento",update_Estimate:"Atualizar or\xE7amento",edit_estimate:"Editar or\xE7amento",items:"art\xEDculos",Estimate:"Or\xE7amento | Or\xE7amentos",add_new_tax:"Adicionar novo imposto",no_estimates:"Ainda n\xE3o h\xE1 orcamentos",list_of_estimates:"Esta se\xE7\xE3o cont\xE9m a lista de or\xE7amentos.",mark_as_rejected:"Marcar como rejeitado",mark_as_accepted:"Marcar como aceito",marked_as_accepted_message:"Or\xE7amento marcado como aceito",marked_as_rejected_message:"Or\xE7amento marcado como rejeitado",confirm_delete:"N\xE3o poder\xE1 recuperar este or\xE7amento | N\xE3o poder\xE1 recuperar estes or\xE7amentos",created_message:"Or\xE7amento criado com sucesso",updated_message:"Or\xE7amento atualizado com sucesso",deleted_message:"Or\xE7amento exclu\xEDdo com sucesso | Or\xE7amentos exclu\xEDdos com sucesso",something_went_wrong:"Algo deu errado",item:{title:"Titulo do item",description:"Descri\xE7\xE3o",quantity:"Quantidade",price:"Pre\xE7o",discount:"Desconto",total:"Total",total_discount:"Desconto total",sub_total:"Subtotal",tax:"Imposto",amount:"Montante",select_an_item:"Escreva ou clique para selecionar um item",type_item_description:"Tipo Item Descri\xE7\xE3o (opcional)"}},pu={title:"Faturas",invoices_list:"Lista de faturas",days:"{dias} dias",months:"{meses} M\xEAs",years:"{anos} Ano",all:"Todas",paid:"Paga",unpaid:"N\xE3o Paga",viewed:"Viewed",overdue:"Overdue",completed:"Completed",customer:"CLIENTE",paid_status:"STATUS PAGAMENTO",ref_no:"REFER\xCANCIA",number:"N\xDAMERO",amount_due:"VALOR DEVIDO",partially_paid:"Parcialmente pago",total:"Total",discount:"Desconto",sub_total:"Subtotal",invoice:"Fatura | Faturas",invoice_number:"N\xFAmero da fatura",ref_number:"Refer\xEAncia",contact:"Contato",add_item:"Adicionar um item",date:"Data",due_date:"Data de Vencimento",status:"Status",add_tax:"Adicionar imposto",amount:"Montante",action:"A\xE7\xE3o",notes:"Observa\xE7\xF5es",view:"Ver",send_invoice:"Enviar Fatura",invoice_template:"Modelo da Fatura",template:"Modelo",mark_as_sent:"Marcar como enviada",confirm_send_invoice:"Esta fatura ser\xE1 enviada por e-mail ao cliente",invoice_mark_as_sent:"Esta fatura ser\xE1 marcada como enviada",confirm_send:"Esta fatura ser\xE1 enviada por e-mail ao cliente",invoice_date:"Data da Fatura",record_payment:"Gravar Pagamento",add_new_invoice:"Adicionar Nova Fatura",update_expense:"Atualizar Despesa",edit_invoice:"Editar Fatura",new_invoice:"Nova Fatura",save_invoice:"Salvar Fatura",update_invoice:"Atualizar Fatura",add_new_tax:"Adicionar novo Imposto",no_invoices:"Ainda n\xE3o h\xE1 faturas!",list_of_invoices:"Esta se\xE7\xE3o conter\xE1 a lista de faturas.",select_invoice:"Selecionar Fatura",no_matching_invoices:"N\xE3o h\xE1 faturas correspondentes!",mark_as_sent_successfully:"Fatura marcada como enviada com sucesso",invoice_sent_successfully:"Fatura enviada com sucesso",cloned_successfully:"Fatura clonada com sucesso",clone_invoice:"Clonar fatura",confirm_clone:"Esta fatura ser\xE1 clonada em uma nova fatura",item:{title:"Titulo do Item",description:"Descri\xE7\xE3o",quantity:"Quantidade",price:"Pre\xE7o",discount:"Desconto",total:"Total",total_discount:"Desconto Total",sub_total:"SubTotal",tax:"Imposto",amount:"Montante",select_an_item:"Digite ou clique para selecionar um item",type_item_description:"Tipo Descri\xE7\xE3o do item (opcional)"},confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar esta fatura | Voc\xEA n\xE3o poder\xE1 recuperar essas faturas",created_message:"Fatura criada com sucesso",updated_message:"Fatura atualizada com sucesso",deleted_message:"Fatura exclu\xEDda com sucesso | Faturas exclu\xEDdas com sucesso",marked_as_sent_message:"Fatura marcada como enviada com sucesso",something_went_wrong:"Algo deu errado",invalid_due_amount_message:"O valor total da fatura n\xE3o pode ser menor que o valor total pago para esta fatura. Atualize a fatura ou exclua os pagamentos associados para continuar."},gu={title:"Pagamentos",payments_list:"Lista de Pagamentos",record_payment:"Gravar Pagamento",customer:"Cliente",date:"Data",amount:"Montante",action:"A\xE7\xE3o",payment_number:"N\xFAmero do Pagamento",payment_mode:"Forma de Pagamento",invoice:"Fatura",note:"Observa\xE7\xE3o",add_payment:"Adicionar Pagamento",new_payment:"Novo Pagamento",edit_payment:"Editar Pagamento",view_payment:"Ver Pagamento",add_new_payment:"Adicionar novo Pagamento",send_payment_receipt:"Enviar recibo de pagamento",save_payment:"Salvar Pagamento",send_payment:"Mande o pagamento",update_payment:"Atualizar Pagamento",payment:"Pagamento | Pagamentos",no_payments:"Ainda sem pagamentos!",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"N\xE3o h\xE1 pagamentos correspondentes!",list_of_payments:"Esta se\xE7\xE3o conter\xE1 a lista de pagamentos.",select_payment_mode:"Selecione a forma de pagamento",confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar este Pagamento | Voc\xEA n\xE3o poder\xE1 recuperar esses Pagamentos",created_message:"Pagamento criado com sucesso",updated_message:"Pagamento atualizado com sucesso",deleted_message:"Pagamento exclu\xEDdo com sucesso | Pagamentos exclu\xEDdos com sucesso",invalid_amount_message:"O valor do pagamento \xE9 inv\xE1lido"},fu={title:"Despesas",expenses_list:"Lista de Despesas",expense_title:"T\xEDtulo",contact:"Contato",category:"Categoria",customer:"Cliente",from_date:"A partir da Data",to_date:"At\xE9 a Data",expense_date:"Data",description:"Descri\xE7\xE3o",receipt:"Receita",amount:"Montante",action:"A\xE7\xE3o",not_selected:"Not selected",note:"Observa\xE7\xE3o",category_id:"Categoria",date:"Data da Despesa",add_expense:"Adicionar Despesa",add_new_expense:"Adicionar Nova Despesa",save_expense:"Salvar Despesa",update_expense:"Atualizar Despesa",download_receipt:"Baixar Receita",edit_expense:"Editar Despesa",new_expense:"Nova Despesa",expense:"Despesa | Despesas",no_expenses:"Ainda sem Despesas!",list_of_expenses:"Esta se\xE7\xE3o conter\xE1 a lista de despesas.",confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar esta despesa | Voc\xEA n\xE3o poder\xE1 recuperar essas despesas",created_message:"Despesa criada com sucesso",updated_message:"Despesa atualizada com sucesso",deleted_message:"Despesas exclu\xEDdas com sucesso | Despesas exclu\xEDdas com sucesso",categories:{categories_list:"Lista de Categorias",title:"T\xEDtulo",name:"Nome",description:"Descri\xE7\xE3o",amount:"Montante",actions:"A\xE7\xF5es",add_category:"Adicionar Categoria",new_category:"Nova Categoria",category:"Categoria | Categorias",select_a_category:"Selecionar uma Categoria"}},vu={email:"Email",password:"Senha",forgot_password:"Esqueceu a senha?",or_signIn_with:"ou Entre com",login:"Entrar",register:"Registre-se",reset_password:"Resetar Senha",password_reset_successfully:"Senha redefinida com sucesso",enter_email:"Digite email",enter_password:"Digite a senha",retype_password:"Confirme a Senha"},hu={title:"Relat\xF3rio",from_date:"A partir da Data",to_date:"At\xE9 a Data",status:"Status",paid:"Pago",unpaid:"N\xE3o Pago",download_pdf:"Baixar PDF",view_pdf:"Ver PDF",update_report:"Atualizar Relat\xF3rio",report:"Relat\xF3rio | Relat\xF3rios",profit_loss:{profit_loss:"Perda de lucro",to_date:"At\xE9 a Data",from_date:"A partir da Data",date_range:"Selecionar per\xEDodo"},sales:{sales:"Vendas",date_range:"Selecionar per\xEDodo",to_date:"At\xE9 a Data",from_date:"A partir da Data",report_type:"Tipo de Relat\xF3rio"},taxes:{taxes:"Impostos",to_date:"At\xE9 a Data",from_date:"A partir da Data",date_range:"Selecionar per\xEDodo"},errors:{required:"Campo obrigat\xF3rio"},invoices:{invoice:"Fatura",invoice_date:"Data da Fatura",due_date:"Data de Vencimento",amount:"Montante",contact_name:"Nome de Contato",status:"Status"},estimates:{estimate:"Or\xE7amento",estimate_date:"Data do Or\xE7amento",due_date:"Data de Vencimento",estimate_number:"N\xFAmero do Or\xE7amento",ref_number:"Refer\xEAncia",amount:"Montante",contact_name:"Nome de Contato",status:"Status"},expenses:{expenses:"Despesas",category:"Categoria",date:"Data",amount:"Montante",to_date:"At\xE9 a Data",from_date:"A partir da Data",date_range:"Selecionar per\xEDodo"}},yu={menu_title:{account_settings:"Configura\xE7\xF5es da conta",company_information:"Informa\xE7\xF5es da Empresa",customization:"Personalizar",preferences:"Prefer\xEAncias",notifications:"Notifica\xE7\xF5es",tax_types:"Tipos de Impostos",expense_category:"Categorias de Despesas",update_app:"Atualizar Aplicativo",custom_fields:"Os campos personalizados"},title:"Configura\xE7\xF5es",setting:"Configura\xE7\xE3o | Configura\xE7\xF5es",general:"Geral",language:"Idioma",primary_currency:"Mo\xE9da Principal",timezone:"Fuso hor\xE1rio",date_format:"Formato de data",currencies:{title:"Moedas",currency:"Moeda | Moedas",currencies_list:"Moedas",select_currency:"Selecione uma Moeda",name:"Nome",code:"C\xF3digo",symbol:"S\xEDmbolo",precision:"Precis\xE3o",thousand_separator:"Separador de Milhar",decimal_separator:"Separador Decimal",position:"Posi\xE7\xE3o",position_of_symbol:"Posi\xE7\xE3o do S\xEDmbolo",right:"Direita",left:"Esquerda",action:"A\xE7\xE3o",add_currency:"Adicionar Moeda"},mail:{host:"Host de Email",port:"Porta de Email",driver:"Mail Driver",secret:"Segredo",mailgun_secret:"Mailgun Segredo",mailgun_domain:"Dom\xEDnio",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Segredo",ses_key:"SES Chave",password:"Senha do Email",username:"Nome de Usu\xE1rio do Email",mail_config:"Configura\xE7\xE3o de Email",from_name:"Do Nome de Email",from_mail:"Do Endere\xE7o de Email",encryption:"Criptografia de Email",mail_config_desc:"Abaixo est\xE1 o formul\xE1rio para configurar o driver de email para enviar emails do aplicativo. Voc\xEA tamb\xE9m pode configurar provedores de terceiros como Sendgrid, SES etc."},pdf:{title:"Configura\xE7\xF5es de PDF",footer_text:"Texto do Rodap\xE9",pdf_layout:"Layout de PDF"},company_info:{company_info:"Informa\xE7\xE3o da Empresa",company_name:"Nome da Empresa",company_logo:"Logotipo da Empresa",section_description:"Informa\xE7\xF5es sobre sua empresa que ser\xE3o exibidas em Faturas, Or\xE7amentos e outros documentos criados pela Crater.",phone:"Telefone",country:"Pais",state:"Estado",city:"Cidade",address:"Endere\xE7o",zip:"CEP",save:"Salvar",updated_message:"Informa\xE7\xF5es da Empresa atualizadas com sucesso"},custom_fields:{title:"Os campos personalizados",add_custom_field:"Adicionar campo personalizado",edit_custom_field:"Editar campo personalizado",field_name:"Nome do campo",type:"Tipo",name:"Nome",required:"Requeridas",label:"R\xF3tulo",placeholder:"Placeholder",help_text:"Texto de ajuda",default_value:"Valor padr\xE3o",prefix:"Prefixo",starting_number:"N\xFAmero inicial",model:"Modelo",help_text_description:"Digite algum texto para ajudar os usu\xE1rios a entender a finalidade desse campo personalizado.",suffix:"Sufixo",yes:"sim",no:"N\xE3o",order:"Ordem",custom_field_confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar este campo personalizado",already_in_use:"O campo personalizado j\xE1 est\xE1 em uso",deleted_message:"Campo personalizado exclu\xEDdo com sucesso",options:"op\xE7\xF5es",add_option:"Adicionar op\xE7\xF5es",add_another_option:"Adicione outra op\xE7\xE3o",sort_in_alphabetical_order:"Classificar em ordem alfab\xE9tica",add_options_in_bulk:"Adicionar op\xE7\xF5es em massa",use_predefined_options:"Use Predefined Options",select_custom_date:"Selecionar data personalizada",select_relative_date:"Selecionar data relativa",ticked_by_default:"Marcado por padr\xE3o",updated_message:"Campo personalizado atualizado com sucesso",added_message:"Campo personalizado adicionado com sucesso"},customization:{customization:"Personalizar",save:"Salvar",addresses:{title:"Endere\xE7o",section_description:"Voc\xEA pode definir o endere\xE7o de cobran\xE7a do cliente e o formato do endere\xE7o de entrega do cliente (exibido apenas em PDF).",customer_billing_address:"Endere\xE7o de Cobran\xE7a do Cliente",customer_shipping_address:"Endere\xE7o de Entrega do Cliente",company_address:"Endere\xE7o da Empresa",insert_fields:"Inserir Campos",contact:"Contato",address:"Endere\xE7o",display_name:"Nome em Exibi\xE7\xE3o",primary_contact_name:"Nome do Contato Principal",email:"Email",website:"Website",name:"Nome",country:"Pais",state:"Estado",city:"Cidade",company_name:"Nome da Empresa",address_street_1:"Endere\xE7o Rua 1",address_street_2:"Endere\xE7o Rua 2",phone:"Telefone",zip_code:"CEP",address_setting_updated:"Configura\xE7\xE3o de Endere\xE7o Atualizada com Sucesso"},updated_message:"Informa\xE7\xF5es da Empresa atualizadas com sucesso",invoices:{title:"Faturas",notes:"Notas",invoice_prefix:"Fatura Prefixo",invoice_settings:"Configra\xE7\xF5es da Fatura",autogenerate_invoice_number:"Gerar automaticamente o n\xFAmero da Fatura",autogenerate_invoice_number_desc:"Desative isso, se voc\xEA n\xE3o deseja gerar automaticamente n\xFAmeros da Fatura sempre que criar uma nova.",enter_invoice_prefix:"Digite o prefixo da Fatura",terms_and_conditions:"Termos e Condi\xE7\xF5es",invoice_settings_updated:"Configura\xE7\xE3o da Fatura atualizada com sucesso"},estimates:{title:"Or\xE7amentos",estimate_prefix:"Or\xE7amento Prefixo",estimate_settings:"Configura\xE7\xF5es do Or\xE7amento",autogenerate_estimate_number:"Gerar automaticamente o n\xFAmero do Or\xE7amento",estimate_setting_description:"Desative isso, se voc\xEA n\xE3o deseja gerar automaticamente n\xFAmeros do Or\xE7amento sempre que criar um novo.",enter_estimate_prefix:"Digite o prefixo do Or\xE7amento",estimate_setting_updated:"Configura\xE7\xE3o do Or\xE7amento atualizada com sucesso"},payments:{title:"Pagamentos",payment_prefix:"Pagamento Prefixo",payment_settings:"Configura\xE7\xF5es de Pagamento",autogenerate_payment_number:"Gerar automaticamente n\xFAmero do Pagamento",payment_setting_description:"Desative isso, se voc\xEA n\xE3o deseja gerar automaticamente n\xFAmeros do Pagamento sempre que criar um novo.",enter_payment_prefix:"Digite o Prefixo do Pagamento",payment_setting_updated:"Configura\xE7\xF5es de Pagamento atualizada com sucesso",payment_mode:"Modo de pagamento",add_payment_mode:"Adicionar modo de pagamento",edit_payment_mode:"Editar modo de pagamento",mode_name:"Nome do modo",payment_mode_added:"Modo de pagamento adicionado",payment_mode_updated:"Modo de pagamento atualizado",payment_mode_confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar este modo de pagamento",already_in_use:"O modo de pagamento j\xE1 est\xE1 em uso",deleted_message:"Modo de pagamento exclu\xEDdo com sucesso"},items:{title:"Itens",units:"unidades",add_item_unit:"Adicionar unidade de item",edit_item_unit:"Editar unidade de item",unit_name:"Nome da unidade",item_unit_added:"Item Unit Added",item_unit_updated:"Item Unit Updated",item_unit_confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar esta unidade de item",already_in_use:"A unidade do item j\xE1 est\xE1 em uso",deleted_message:"Unidade de item exclu\xEDda com sucesso"}},account_settings:{profile_picture:"Foto do Perfil",name:"Nome",email:"Email",password:"Senha",confirm_password:"Confirmar Senha",account_settings:"Configura\xE7\xF5es da conta",save:"Salvar",section_description:"Voc\xEA pode atualizar seu nome, email e senha usando o formul\xE1rio abaixo.",updated_message:"Configura\xE7\xF5es da conta atualizadas com sucesso"},user_profile:{name:"Nome",email:"Email",password:"Password",confirm_password:"Confirmar Senha"},notification:{title:"Notifica\xE7\xE3o",email:"Enviar Notifica\xE7\xF5es para",description:"Quais notifica\xE7\xF5es por email voc\xEA gostaria de receber quando algo mudar?",invoice_viewed:"Fatura Visualizada",invoice_viewed_desc:"Quando o seu cliente visualiza uma Fatura enviada pelo painel do Crater.",estimate_viewed:"Or\xE7amento Visualizado",estimate_viewed_desc:"Quando o seu cliente visualiza um Or\xE7amento enviada pelo painel do Crater.",save:"Salvar",email_save_message:"E-mail salvo com sucesso",please_enter_email:"Por favor digite um E-mail"},tax_types:{title:"Tipos de Impostos",add_tax:"Adicionar Imposto",edit_tax:"Editar imposto",description:"Voc\xEA pode adicionar ou remover impostos conforme desejar. O Crater suporta impostos sobre itens individuais e tamb\xE9m na Fatura.",add_new_tax:"Adicionar Novo Imposto",tax_settings:"Configura\xE7\xF5es de Impostos",tax_per_item:"Imposto por Item",tax_name:"Nome do Imposto",compound_tax:"Imposto Composto",percent:"Porcentagem",action:"A\xE7\xE3o",tax_setting_description:"Habilite isso se desejar adicionar Impostos a itens da Fatura Idividualmente. Por padr\xE3o, os impostos s\xE3o adicionados diretamente \xE0 Fatura.",created_message:"Tipo de Imposto criado com sucesso",updated_message:"Tipo de Imposto Atualizado com sucesso",deleted_message:"Tipo de Imposto Deletado com sucesso",confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar este tipo de Imposto",already_in_use:"O Imposto j\xE1 est\xE1 em uso"},expense_category:{title:"Categoria de Despesa",action:"A\xE7\xE3o",description:"As Categorias s\xE3o necess\xE1rias para adicionar entradas de Despesas. Voc\xEA pode adicionar ou remover essas Categorias de acordo com sua prefer\xEAncia.",add_new_category:"Adicionar Nova Categoria",add_category:"Adicionar categoria",edit_category:"Editar categoria",category_name:"Nome da Categoria",category_description:"Descri\xE7\xE3o",created_message:"Categoria de Despesa criada com sucesso",deleted_message:"Categoria de Despesa exclu\xEDda com sucesso",updated_message:"Categoria de Despesa atualizada com sucesso",confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar esta Categoria de Despesa",already_in_use:"A categoria j\xE1 est\xE1 em uso"},preferences:{currency:"Moeda",language:"Idioma",time_zone:"Fuso Hor\xE1rio",fiscal_year:"Ano Financeiro",date_format:"Formato da Data",discount_setting:"Configura\xE7\xE3o de Desconto",discount_per_item:"Desconto por Item ",discount_setting_description:"Habilite isso se desejar adicionar desconto a itens de Fatura individualmente. Por padr\xE3o, o desconto \xE9 adicionado diretamente \xE0 Fatura.",save:"Salvar",preference:"Prefer\xEAncia | Prefer\xEAncias",general_settings:"Prefer\xEAncias padr\xE3o para o sistema.",updated_message:"Prefer\xEAncias atualizadas com sucesso",select_language:"Selecione um Idioma",select_time_zone:"Selecione um fuso hor\xE1rio",select_date_formate:"Selecione um formato de data",select_financial_year:"Selecione o ano financeiro"},update_app:{title:"Atualizar Aplicativo",description:"Voc\xEA pode atualizar facilmente o Crater, verifique se h\xE0 novas atualiza\xE7\xF5es, clicando no bot\xE3o abaixo",check_update:"Verifique se h\xE1 atualiza\xE7\xF5es",avail_update:"Nova atualiza\xE7\xE3o dispon\xEDvel",next_version:"Pr\xF3xima vers\xE3o",update:"Atualizar agora",update_progress:"Atualiza\xE7\xE3o em progresso...",progress_text:"Levar\xE1 apenas alguns minutos. N\xE3o atualize a tela ou feche a janela antes que a atualiza\xE7\xE3o seja conclu\xEDda",update_success:"O aplicativo foi atualizado! Aguarde enquanto a janela do navegador \xE9 recarregada automaticamente.",latest_message:"Nenhuma atualiza\xE7\xE3o dispon\xEDvel! Voc\xEA est\xE1 na vers\xE3o mais recente.",current_version:"Vers\xE3o Atual",download_zip_file:"Baixar arquivo ZIP",unzipping_package:"Descompactando o pacote",copying_files:"Copiando arquivos",running_migrations:"Executando migra\xE7\xF5es",finishing_update:"Atualiza\xE7\xE3o de acabamento",update_failed:"Atualiza\xE7\xE3o falhou",update_failed_text:"Desculpa! Sua atualiza\xE7\xE3o falhou em: {step} step"}},bu={account_info:"Informa\xE7\xE3o da conta",account_info_desc:"Os detalhes abaixo ser\xE3o usados para criar a conta principal do administrador. Al\xE9m disso, voc\xEA pode alterar os detalhes a qualquer momento ap\xF3s o login.",name:"Nome",email:"Email",password:"Senha",confirm_password:"Confirmar Senha",save_cont:"Salvar e Continuar",company_info:"Informa\xE7\xE3o da Empresa",company_info_desc:"Esta informa\xE7\xE3o ser\xE1 exibida nas Faturas. Observe que voc\xEA pode editar isso mais tarde na p\xE1gina de configura\xE7\xF5es.",company_name:"Nome da Empresa",company_logo:"Logotipo da Empresa",logo_preview:"Previsualizar Logotipo",preferences:"Prefer\xEAncias",preferences_desc:"Prefer\xEAncias padr\xE3o para o sistema.",country:"Pais",state:"Estado",city:"Cidade",address:"Endere\xE7o",street:"Rua 1 | Rua 2",phone:"Telefone",zip_code:"CEP",go_back:"Voltar",currency:"Moeda",language:"Idioma",time_zone:"Fuso Hor\xE1rio",fiscal_year:"Ano Financeiro",date_format:"Formato de Data",from_address:"Do Endere\xE7o",username:"Nome de Usu\xE1rio",next:"Pr\xF3ximo",continue:"Continuar",skip:"Pular",database:{database:"URL do Site e Base de Dados",connection:"Conex\xE3o da Base de Dados",host:"Host da Base de Dados",port:"Porta da Base de Dados",password:"Senha da Base de Dados",app_url:"URL do Aplicativo",username:"Usu\xE1rio da Base de Dados",db_name:"Nome da Base de Dados",desc:"Crie um Banco de Dados no seu servidor e defina as credenciais usando o formul\xE1rio abaixo."},permissions:{permissions:"Permiss\xF5es",permission_confirm_title:"Voc\xEA tem certeza que quer continuar?",permission_confirm_desc:"Falha na verifica\xE7\xE3o de permiss\xE3o da pasta",permission_desc:"Abaixo est\xE1 a lista de permiss\xF5es de pasta que s\xE3o necess\xE1rias para que o aplicativo funcione. Se a verifica\xE7\xE3o da permiss\xE3o falhar, atualize as permiss\xF5es da pasta."},mail:{host:"Host do email",port:"Porta do email",driver:"Driver do email",secret:"Segredo",mailgun_secret:"Segredo do Mailgun",mailgun_domain:"Dom\xEDnio",mailgun_endpoint:"Endpoint do Mailgun",ses_secret:"Segredo do SES",ses_key:"Chave SES",password:"Senha do email",username:"Nome do Usu\xE1rio do email",mail_config:"Configura\xE7\xE3o de email",from_name:"Nome do email",from_mail:"Endere\xE7o de email",encryption:"Criptografia de email",mail_config_desc:"Abaixo est\xE1 o formul\xE1rio para configurar o driver de email que ser\xE1 usado para enviar emails do aplicativo. Voc\xEA tamb\xE9m pode configurar provedores de terceiros como Sendgrid, SES etc."},req:{system_req:"Requisitos de Sistema",php_req_version:"PHP (vers\xE3o {version} obrigat\xF3ria)",check_req:"Verificar Requisitos",system_req_desc:"O Crater tem alguns requisitos de servidor. Verifique se o seu servidor possui a vers\xE3o do PHP necess\xE1ria e todas as extens\xF5es mencionadas abaixo."},errors:{migrate_failed:"Falha na migra\xE7\xE3o",database_variables_save_error:"N\xE3o \xE9 poss\xEDvel gravar a configura\xE7\xE3o no arquivo .env. Por favor, verifique suas permiss\xF5es de arquivo",mail_variables_save_error:"A configura\xE7\xE3o do email falhou.",connection_failed:"Falha na conex\xE3o com o banco de dados",database_should_be_empty:"O banco de dados deve estar vazio"},success:{mail_variables_save_successfully:"Email configurado com sucesso",database_variables_save_successfully:"Banco de dados configurado com sucesso."}},ku={invalid_phone:"N\xFAmero de telefone inv\xE1lido",invalid_url:"url inv\xE1lidas (ex: http://www.craterapp.com)",required:"Campo obrigat\xF3rio",email_incorrect:"E-mail incorreto",email_already_taken:"O email j\xE1 foi recebido.",email_does_not_exist:"O usu\xE1rio com determinado email n\xE3o existe",send_reset_link:"Enviar link de redefini\xE7\xE3o",not_yet:"Ainda n\xE3o? Envie novamente",password_min_length:"A senha deve conter {count} caracteres",name_min_length:"O nome deve ter pelo menos {count} letras.",enter_valid_tax_rate:"Insira uma taxa de imposto v\xE1lida",numbers_only:"Apenas N\xFAmeros.",characters_only:"Apenas Caracteres.",password_incorrect:"As senhas devem ser id\xEAnticas",password_length:"A senha deve ter {count} caracteres.",qty_must_greater_than_zero:"A quantidade deve ser maior que zero.",price_greater_than_zero:"O pre\xE7o deve ser maior que zero.",payment_greater_than_zero:"O pagamento deve ser maior que zero.",payment_greater_than_due_amount:"O pagamento inserido \xE9 mais do que o valor devido desta fatura.",quantity_maxlength:"A quantidade n\xE3o deve exceder 20 d\xEDgitos.",price_maxlength:"O pre\xE7o n\xE3o deve ser superior a 20 d\xEDgitos.",price_minvalue:"O pre\xE7o deve ser maior que 0.",amount_maxlength:"Montante n\xE3o deve ser superior a 20 d\xEDgitos.",amount_minvalue:"Montante deve ser maior que zero",description_maxlength:"A descri\xE7\xE3o n\xE3o deve ter mais que 255 caracteres.",maximum_options_error:"M\xE1ximo de {max} op\xE7\xF5es selecionadas. Primeiro remova uma op\xE7\xE3o selecionada para selecionar outra.",notes_maxlength:"As anota\xE7\xF5es n\xE3o devem ter mais que 255 caracteres.",address_maxlength:"O endere\xE7o n\xE3o deve ter mais que 255 caracteres.",ref_number_maxlength:"O n\xFAmero de refer\xEAncia n\xE3o deve ter mais que 255 caracteres.",prefix_maxlength:"O prefixo n\xE3o deve ter mais que 5 caracteres."};var wu={navigation:ru,general:du,dashboard:lu,tax_types:cu,customers:_u,items:uu,estimates:mu,invoices:pu,payments:gu,expenses:fu,login:vu,reports:hu,settings:yu,wizard:bu,validation:ku};const xu={dashboard:"Pannello di controllo",customers:"Clienti",items:"Commesse",invoices:"Fatture","recurring-invoices":"Fatture ricorrenti",expenses:"Spese",estimates:"Preventivi",payments:"Pagamenti",reports:"Rapporti",settings:"Configurazione",logout:"Disconnessione",users:"Utenti",modules:"Modules"},zu={add_company:"Aggiungi azienda",view_pdf:"Vedi PDF",copy_pdf_url:"Copia URL PDF",download_pdf:"Scarica PDF",save:"Salva",create:"Crea",cancel:"Elimina",update:"Aggiorna",deselect:"Deseleziona",download:"Scarica",from_date:"Dalla Data",to_date:"Alla Data",from:"Da",to:"A",ok:"Ok",yes:"S\xEC",no:"No",sort_by:"Ordina per",ascending:"Crescente",descending:"Decrescente",subject:"Oggetto",body:"Corpo",message:"Messaggio",send:"Invia",preview:"Anteprima",go_back:"Torna indietro",back_to_login:"Torna al Login?",home:"Home",filter:"Filtro",delete:"Elimina",edit:"Modifica",view:"Visualizza",add_new_item:"Aggiungi nuova Commessa",clear_all:"Pulisci tutto",showing:"Visualizzo",of:"di",actions:"Azioni",subtotal:"SUBTOTALE",discount:"SCONTO",fixed:"Fissato",percentage:"Percentuale",tax:"TASSA",total_amount:"AMMONTARE TOTALE",bill_to:"Fattura a",ship_to:"Invia a",due:"Dovuto",draft:"Bozza",sent:"Inviata",all:"Tutte",select_all:"Seleziona tutto",select_template:"Seleziona Template",choose_file:"Clicca per selezionare un file",choose_template:"Scegli un modello",choose:"Scegli",remove:"Rimuovi",select_a_status:"Seleziona uno Stato",select_a_tax:"Seleziona imposta",search:"Cerca",are_you_sure:"Sei sicuro/a?",list_is_empty:"La lista \xE8 vuota.",no_tax_found:"Nessuna imposta trovata!",four_zero_four:"404",you_got_lost:"Hoops! Ti sei perso",go_home:"Vai alla Home",test_mail_conf:"Configurazione della mail di test",send_mail_successfully:"Mail inviata con successo",setting_updated:"Configurazioni aggiornate con successo",select_state:"Seleziona lo Stato",select_country:"Seleziona Paese",select_city:"Seleziona Citt\xE0",street_1:"Indirizzo 1",street_2:"Indirizzo 2",action_failed:"Errore",retry:"Riprova",choose_note:"Scegli Nota",no_note_found:"Nessuna Nota Trovata",insert_note:"Inserisci Nota",copied_pdf_url_clipboard:"Url PDF copiato negli appunti!",copied_url_clipboard:"Copied url to clipboard!",docs:"Documenti",do_you_wish_to_continue:"Vuoi continuare?",note:"Nota",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},Su={select_year:"Seleziona anno",cards:{due_amount:"Somma dovuta",customers:"Clienti",invoices:"Fatture",estimates:"Preventivi",payments:"Payments"},chart_info:{total_sales:"Vendite",total_receipts:"Ricevute",total_expense:"Uscite",net_income:"Guadagno netto",year:"Seleziona anno"},monthly_chart:{title:"Entrate & Uscite"},recent_invoices_card:{title:"Fatture insolute",due_on:"Data di scadenza",customer:"Cliente",amount_due:"Ammontare dovuto",actions:"Azioni",view_all:"Vedi tutto"},recent_estimate_card:{title:"Preventivi recenti",date:"Data",customer:"Cliente",amount_due:"Ammontare dovuto",actions:"Azioni",view_all:"Vedi tutto"}},Pu={name:"Nome",description:"Descrizione",percent:"Percento",compound_tax:"Imposta composta"},ju={search:"Cerca...",customers:"Clienti",users:"Utenti",no_results_found:"Nessun Risultato Trovato"},Au={label:"CAMBIA AZIENDA",no_results_found:"Nessun Risultato Trovato",add_new_company:"Aggiungi una nuova azienda",new_company:"Nuova Azienda",created_message:"Azienda creata con successo"},Du={today:"Oggi",this_week:"Questa Settimana",this_month:"Questo mese",this_quarter:"Questo Trimestre",this_year:"Anno corrente",previous_week:"Settimana precedente",previous_month:"Mese precedente",previous_quarter:"Trimestre Precedente",previous_year:"Anno Precedente",custom:"Personalizzato"},Cu={title:"Clienti",prefix:"Prefisso",add_customer:"Aggiungi cliente",contacts_list:"Lista clienti",name:"Nome",mail:"Mail | Mails",statement:"Dichiarazione",display_name:"Nome Visibile",primary_contact_name:"Riferimento",contact_name:"Nome Contatto",amount_due:"Ammontare dovuto",email:"Email",address:"Indirizzo",phone:"Telefono",website:"Sito web",overview:"Panoramica",invoice_prefix:"Prefisso Fattura",estimate_prefix:"Prefisso Preventivi",payment_prefix:"Prefisso Pagamento",enable_portal:"Abilita Portale",country:"Paese",state:"Provincia",city:"Citt\xE0",zip_code:"Codice Postale",added_on:"Aggiunto il",action:"Azione",password:"Password",confirm_password:"Conferma Password",street_number:"Numero Civico",primary_currency:"Val\xF9ta Principale",description:"Descrizione",add_new_customer:"Aggiungi nuovo Cliente",save_customer:"Salva Cliente",update_customer:"Aggiorna Cliente",customer:"Cliente | Clienti",new_customer:"Nuovo cliente",edit_customer:"Modifica Cliente",basic_info:"Informazioni",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"Indirizzo di Fatturazione",shipping_address:"Indirizzo di Spedizione",copy_billing_address:"Copia da Fatturazione",no_customers:"Ancora nessun Cliente!",no_customers_found:"Nessun cliente trovato!",no_contact:"Nessun contatto",no_contact_name:"Nessun nome del contatto",list_of_customers:"Qui ci sar\xE0 la lista dei tuoi clienti",primary_display_name:"Mostra il Nome Principale",select_currency:"Selezione Val\xF9ta",select_a_customer:"Seleziona Cliente",type_or_click:"Scrivi o clicca per selezionare",new_transaction:"Nuova transazione",no_matching_customers:"Non ci sono clienti corrispondenti!",phone_number:"Numero di telefono",create_date:"Crea data",confirm_delete:"Non sarai in grado di recuperare questo cliente e tutte le relative fatture, stime e pagamenti. | Non sarai in grado di recuperare questi clienti e tutte le relative fatture, stime e pagamenti.",created_message:"Cliente creato con successo",updated_message:"Cliente aggiornato con successo",address_updated_message:"Address Information Updated succesfully",deleted_message:"Cliente cancellato con successo | Clienti cancellati con successo",edit_currency_not_allowed:"Impossibile cambiare valuta, dopo aver creato transazioni."},Eu={title:"Commesse",items_list:"Lista Commesse",name:"Nome",unit:"Unit\xE0/Tipo",description:"Descrizione",added_on:"Aggiunto il",price:"Prezzo",date_of_creation:"Data di creazione",not_selected:"Nessun elemento selezionato",action:"Azione",add_item:"Aggiungi Commessa",save_item:"Salva",update_item:"Aggiorna",item:"Commessa | Commesse",add_new_item:"Aggiungi nuova Commessa",new_item:"Nuova Commessa",edit_item:"Modifica Commessa",no_items:"Ancora nessuna commessa!",list_of_items:"Qui ci sar\xE0 la lista delle commesse.",select_a_unit:"Seleziona",taxes:"Imposte",item_attached_message:"Non puoi eliminare una Commessa che \xE8 gi\xE0 attiva",confirm_delete:"Non potrai ripristinare la Commessa | Non potrai ripristinare le Commesse",created_message:"Commessa creata con successo",updated_message:"Commessa aggiornata con successo",deleted_message:"Commessa eliminata con successo | Commesse eliminate con successo"},Iu={title:"Preventivi",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"Preventivo | Preventivi",estimates_list:"Lista Preventivi",days:"{days} Giorni",months:"{months} Mese",years:"{years} Anno",all:"Tutti",paid:"Pagato",unpaid:"Non pagato",customer:"CLIENTE",ref_no:"RIF N.",number:"NUMERO",amount_due:"AMMONTARE DOVUTO",partially_paid:"Pagamento Parziale",total:"Totale",discount:"Sconto",sub_total:"Sub Totale",estimate_number:"Preventivo Numero",ref_number:"Numero di Rif.",contact:"Contatto",add_item:"Aggiungi un item",date:"Data",due_date:"Data di pagamento",expiry_date:"Data di scadenza",status:"Stato",add_tax:"Aggiungi Imposta",amount:"Ammontare",action:"Azione",notes:"Note",tax:"Imposta",estimate_template:"Modello",convert_to_invoice:"Converti in Fattura",mark_as_sent:"Segna come Inviata",send_estimate:"Invia preventivo",resend_estimate:"Reinvia Preventivo",record_payment:"Registra Pagamento",add_estimate:"Aggiungi Preventivo",save_estimate:"Salva Preventivo",confirm_conversion:"Questo preventivo verr\xE0 usato per generare una nuova fattura.",conversion_message:"Fattura creata",confirm_send_estimate:"Questo preventivo verr\xE0 inviato al cliente via mail",confirm_mark_as_sent:"Questo preventivo verr\xE0 contrassegnato come inviato",confirm_mark_as_accepted:"Questo preventivo verr\xE0 contrassegnato come Accettato",confirm_mark_as_rejected:"Questo preventivo verr\xE0 contrassegnato come Rifiutato",no_matching_estimates:"Nessun preventivo trovato!",mark_as_sent_successfully:"Preventivo contrassegnato come inviato con successo",send_estimate_successfully:"Preventivo inviato con successo",errors:{required:"Campo obbligatorio"},accepted:"Accettato",rejected:"Rifiutato",expired:"Expired",sent:"Inviato",draft:"Bozza",viewed:"Viewed",declined:"Rifiutato",new_estimate:"Nuovo Preventivo",add_new_estimate:"Crea Nuovo Preventivo",update_Estimate:"Aggiorna preventivo",edit_estimate:"Modifica Preventivo",items:"Commesse",Estimate:"Preventivo | Preventivi",add_new_tax:"Aggiungi una nuova tassa/imposta",no_estimates:"Ancora nessun preventivo!",list_of_estimates:"Questa sezione conterr\xE0 la lista dei preventivi.",mark_as_rejected:"Segna come Rifiutato",mark_as_accepted:"Segna come Accettato",marked_as_accepted_message:"Preventivo contrassegnato come accettato",marked_as_rejected_message:"Preventivo contrassegnato come rifiutato",confirm_delete:"Non potrai pi\xF9 recuperare questo preventivo | Non potrai pi\xF9 recuperare questi preventivi",created_message:"Preventivo creato con successo",updated_message:"Preventivo modificato con successo",deleted_message:"Preventivo eliminato con successo | Preventivi eliminati con successo",something_went_wrong:"Si \xE8 verificato un errore",item:{title:"Titolo Commessa",description:"Descrizione",quantity:"Quantit\xE0",price:"Prezzo",discount:"Sconto",total:"Totale",total_discount:"Sconto Totale",sub_total:"Sub Totale",tax:"Tasse",amount:"Ammontare",select_an_item:"Scrivi o clicca per selezionare un item",type_item_description:"Scrivi una Descrizione (opzionale)"}},Nu={title:"Fatture",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"Lista Fatture",invoice_information:"Invoice Information",days:"{days} Giorni",months:"{months} Mese",years:"{years} Anno",all:"Tutti",paid:"Pagato",unpaid:"Insoluta",viewed:"Visualizzato",overdue:"Scaduta",completed:"Completata",customer:"CLIENTE",paid_status:"STATO DI PAGAMENTO",ref_no:"RIF N.",number:"NUMERO",amount_due:"AMMONTARE DOVUTO",partially_paid:"Parzialmente Pagata",total:"Totale",discount:"Sconto",sub_total:"Sub Totale",invoice:"Fattura | Fatture",invoice_number:"Numero Fattura",ref_number:"Rif Numero",contact:"Contatto",add_item:"Aggiungi Commessa/Item",date:"Data",due_date:"Data di pagamento",status:"Stato",add_tax:"Aggiungi Imposta",amount:"Ammontare",action:"Azione",notes:"Note",view:"Vedi",send_invoice:"Invia Fattura",resend_invoice:"Reinvia Fattura",invoice_template:"Modello Fattura",conversion_message:"Fattura duplicata con successo",template:"Modello",mark_as_sent:"Segna come inviata",confirm_send_invoice:"Questa fattura sar\xE0 inviata via Mail al Cliente",invoice_mark_as_sent:"Questa fattura sar\xE0 contrassegnata come inviata",confirm_mark_as_accepted:"Questa fattura verr\xE0 contrassegnata come Accettata",confirm_mark_as_rejected:"Questa fattura sar\xE0 contrassegnata come Rifiutata",confirm_send:"Questa fattura sar\xE0 inviata via Mail al Cliente",invoice_date:"Data fattura",record_payment:"Registra Pagamento",add_new_invoice:"Aggiungi nuova Fattura",update_expense:"Aggiorna Costo",edit_invoice:"Modifica Fattura",new_invoice:"Nuova Fattura",save_invoice:"Salva fattura",update_invoice:"Aggiorna Fattura",add_new_tax:"Aggiungi tassa/imposta",no_invoices:"Ancora nessuna fattura!",mark_as_rejected:"Segna come rifiutata",mark_as_accepted:"Segna come accettata",list_of_invoices:"Questa sezione conterr\xE0 la lista delle Fatture.",select_invoice:"Seleziona Fattura",no_matching_invoices:"Nessuna fattura trovata!",mark_as_sent_successfully:"Fattura contassegnata come inviata con successo",invoice_sent_successfully:"Fattura inviata correttamente",cloned_successfully:"Fattura copiata con successo",clone_invoice:"Clona Fattura",confirm_clone:"Questa fattura verr\xE0 clonata in una nuova fattura",item:{title:"Titolo Commessa",description:"Descrizione",quantity:"Quantit\xE0",price:"Prezzo",discount:"Sconto",total:"Totale",total_discount:"Sconto Totale",sub_total:"Sub Totale",tax:"Tassa",amount:"Ammontare",select_an_item:"Scrivi o clicca per selezionare un item",type_item_description:"Scrivi una descrizione (opzionale)"},payment_attached_message:"Una delle fatture selezionate ha gi\xE0 associato un pagamento. Assicurati di eliminare il pagamento associato prima di procedere con la rimozione",confirm_delete:"Non potrai recuperare la Fattura cancellata | Non potrai recuperare le Fatture cancellate",created_message:"Fattura creata con successo",updated_message:"Fattura aggiornata con successo",deleted_message:"Fattura cancellata con successo | Fatture cancellate con successo",marked_as_sent_message:"Fattura contrassegnata come inviata con successo",something_went_wrong:"Si \xE8 verificato un errore",invalid_due_amount_message:"L'ammontare totale della fattura non pu\xF2 essere inferiore all'ammontare totale pagato per questa fattura. Modifica la fattura o cancella i pagamenti associati per continuare."},Tu={title:"Fatture ricorrenti",invoices_list:"Elenco Fatture ricorrenti",days:"{days} Giorni",months:"{months} Mese",years:"{years} Anno",all:"Tutte",paid:"Pagata",unpaid:"Non Pagata",viewed:"Vista",overdue:"In ritardo",active:"Attiva",completed:"Completata",customer:"CLIENTE",paid_status:"STATO DI PAGAMENTO",ref_no:"Riferimento #",number:"NUMERO",amount_due:"AMMONTARE DOVUTO",partially_paid:"Parzialmente Pagata",total:"Totale",discount:"Sconto",sub_total:"Totale Parziale",invoice:"Fattura Ricorrente | Fatture Ricorrenti",invoice_number:"Numero Della Fattura Ricorrente",next_invoice_date:"Data Prossima Fattura",ref_number:"Numero di Rif.",contact:"Contatto",add_item:"Aggiungi un elemento",date:"Data",limit_by:"Limita per",limit_date:"Data limite",limit_count:"Conteggio Limite",count:"Conteggio",status:"Stato",select_a_status:"Seleziona uno Stato",working:"Elaborando",on_hold:"In sospeso",complete:"Completate",add_tax:"Aggiungi imposta",amount:"Quantit\xE0",action:"Azione",notes:"Note",view:"Visualizza",basic_info:"Info Di Base",send_invoice:"Invia Fattura Ricorrente",auto_send:"Invio automatico",resend_invoice:"Reinvia Fattura Ricorrente",invoice_template:"Template Fattura Ricorrente",conversion_message:"Fattura duplicata con successo",template:"Template",mark_as_sent:"Segna come inviata",confirm_send_invoice:"Questa fattura ricorrente verr\xE0 inviata via email al cliente",invoice_mark_as_sent:"Questa fattura sar\xE0 contrassegnata come inviata",confirm_send:"Questa fattura ricorrente verr\xE0 inviata via e-mail al cliente",starts_at:"Data Inzio",due_date:"Data di scadenza fattura",record_payment:"Registra Pagamento",add_new_invoice:"Nuova Fattura ricorrente",update_expense:"Aggiorna Spesa",edit_invoice:"Modifica Fattura Ricorrente",new_invoice:"Nuova Fattura Ricorrente",send_automatically:"Invia automaticamente",send_automatically_desc:"Abilitare questa opzione, se si desidera inviare automaticamente la fattura al cliente quando viene creata.",save_invoice:"Salva Fattura Ricorrente",update_invoice:"Aggiorna Fattura Ricorrente",add_new_tax:"Aggiungi una nuova tassa/imposta",no_invoices:"Ancora nessuna Fattura Ricorrente!",mark_as_rejected:"Segna come rifiutata",mark_as_accepted:"Segna come accettata",list_of_invoices:"Questa sezione conterr\xE0 l'elenco delle fatture ricorrenti.",select_invoice:"Seleziona Fattura",no_matching_invoices:"Nessuna fattura trovata!",mark_as_sent_successfully:"Fattura contassegnata come inviata con successo",invoice_sent_successfully:"Fattura inviata con successo",cloned_successfully:"Fattura copiata con successo",clone_invoice:"Duplica Fattura Ricorrente",confirm_clone:"Questa fattura ricorrente verr\xE0 clonata in una nuova fattura ricorrente",item:{title:"Titolo Articolo",description:"Descrizione",quantity:"Quantit\xE0",price:"Prezzo",discount:"Sconto",total:"Totale",total_discount:"Sconto Totale",sub_total:"Totale Parziale",tax:"Tassa",amount:"Importo",select_an_item:"Digita o clicca per selezionare un elemento",type_item_description:"Tipo Descrizione Articolo (Opzionale)"},frequency:{title:"Frequenza",select_frequency:"Seleziona Frequenza",minute:"Minuto",hour:"Ora",day_month:"Giorno del mese",month:"Mese",day_week:"Giorno della settimana"},confirm_delete:"Non sarai in grado di recuperare questa fattura | Non sarai in grado di recuperare queste fatture",created_message:"Fattura ricorrente creata con successo",updated_message:"Fattura ricorrente aggiornata correttamente",deleted_message:"Fattura ricorrente eliminata con successo | Fatture ricorrenti eliminate con successo",marked_as_sent_message:"Fattura ricorrente contrassegnata come inviata correttamente",user_email_does_not_exist:"L'e-mail dell'utente non esiste",something_went_wrong:"qualcosa \xE8 andato storto",invalid_due_amount_message:"L'importo totale delle fatture ricorrenti non pu\xF2 essere inferiore all'importo totale pagato per questa fattura ricorrente. Si prega di aggiornare la fattura o eliminare i pagamenti associati per continuare."},Ru={title:"Pagamenti",payments_list:"Lista Pagamenti",record_payment:"Registra Pagamento",customer:"Cliente",date:"Data",amount:"Ammontare",action:"Azione",payment_number:"Numero di pagamento",payment_mode:"Modalit\xE0 di Pagamento",invoice:"Fattura",note:"Nota",add_payment:"Aggiungi Pagamento",new_payment:"Nuovo Pagamento",edit_payment:"Modifica Pagamento",view_payment:"Vedi Pagamento",add_new_payment:"Aggiungi nuovo pagamento",send_payment_receipt:"Invia ricevuta di pagamento",send_payment:"Inviare il pagamento",save_payment:"Salva pagamento",update_payment:"Aggiorna pagamento",payment:"Pagamento | Pagamenti",no_payments:"Ancora nessun pagamento!",not_selected:"Non Selezionato",no_invoice:"Nessuna fattura",no_matching_payments:"Non ci sono pagamenti!",list_of_payments:"Questa sezione conterr\xE0 la lista dei pagamenti.",select_payment_mode:"Seleziona modalit\xE0 di pagamento",confirm_mark_as_sent:"Questo preventivo verr\xE0 contrassegnato come inviato",confirm_send_payment:"Questo pagamento verr\xE0 inviato via email al cliente",send_payment_successfully:"Pagamento inviato con successo",something_went_wrong:"si \xE8 verificato un errore",confirm_delete:"Non potrai recuperare questo pagamento | Non potrai recuperare questi pagamenti",created_message:"Pagamento creato con successo",updated_message:"Pagamento aggiornato con successo",deleted_message:"Pagamento cancellato con successo | Pagamenti cancellati con successo",invalid_amount_message:"L'ammontare del pagamento non \xE8 valido"},Mu={title:"Spese",expenses_list:"Lista Costi",select_a_customer:"Seleziona Cliente",expense_title:"Titolo",customer:"Cliente",currency:"Valuta",contact:"Contatto",category:"Categoria",from_date:"Dalla Data",to_date:"Alla Data",expense_date:"Data",description:"Descrizione",receipt:"Ricevuta",amount:"Ammontare",action:"Azione",not_selected:"Non selezionata",note:"Nota",category_id:"Id categoria",date:"Data Spesa",add_expense:"Aggiungi Spesa",add_new_expense:"Aggiungi nuova Spesa",save_expense:"Salva la Spesa",update_expense:"Aggiorna Spesa",download_receipt:"Scarica la Ricevuta",edit_expense:"Modifica Spesa",new_expense:"Nuova Spesa",expense:"Spesa | Spese",no_expenses:"Ancora nessuna spesa!",list_of_expenses:"Questa sezione conterr\xE0 la lista delle Spese.",confirm_delete:"Non potrai recuperare questa spesa | Non potrai recuperare queste spese",created_message:"Spesa creata con successo",updated_message:"Spesa modificata con successo",deleted_message:"Spesa cancellata con successo | Spese cancellate con successo",categories:{categories_list:"Lista categorie",title:"Titolo",name:"Nome",description:"Descrizione",amount:"Ammontare",actions:"Azioni",add_category:"Aggiungi Categoria",new_category:"Nuova Categoria",category:"Categoria | Categorie",select_a_category:"Seleziona Categoria"}},Fu={email:"Email",password:"Password",forgot_password:"Password dimenticata?",or_signIn_with:"o fai login con",login:"Accedi",register:"Registrati",reset_password:"Resetta Password",password_reset_successfully:"Password Resettata con successo",enter_email:"Inserisci email",enter_password:"Inserisci Password",retype_password:"Ridigita Password"},$u={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},Uu={title:"Utenti",users_list:"Lista Utenti",name:"Nome",description:"Descrizione",added_on:"Aggiunto il",date_of_creation:"Data di creazione",action:"Azione",add_user:"Aggiungi Utente",save_user:"Salva Utente",update_user:"Aggiorna Utente",user:"Utente | Utenti",add_new_user:"Aggiungi Nuovo Utente",new_user:"Nuovo Utente",edit_user:"Modifica Utente",no_users:"Ancora nessun utente!",list_of_users:"Questa sezione conterr\xE0 l'elenco degli utenti.",email:"Email",phone:"Telefono",password:"Password",user_attached_message:"Non puoi eliminare una Commessa che \xE8 gi\xE0 attiva",confirm_delete:"Non sarai in grado di recuperare questo utente | Non sarai in grado di recuperare questi utenti",created_message:"Utente creato correttamente",updated_message:"Utente aggiornato correttamente",deleted_message:"Utente eliminato con successo | Utenti eliminati con successo",select_company_role:"Seleziona ruolo per {company}",companies:"Aziende"},Vu={title:"Segnala",from_date:"Da",to_date:"A",status:"Stato",paid:"Pagato",unpaid:"Non pagato",download_pdf:"Scarica PDF",view_pdf:"Vedi PDF",update_report:"Aggiorna Report",report:"Segnalazione | Segnalazioni",profit_loss:{profit_loss:"Guadagni & Perdite",to_date:"A",from_date:"Da",date_range:"Seleziona intervallo date"},sales:{sales:"Vendite",date_range:"Seleziona intervallo date",to_date:"A",from_date:"Da",report_type:"Tipo di report"},taxes:{taxes:"Tasse",to_date:"Alla data",from_date:"Dalla data",date_range:"Seleziona intervallo date"},errors:{required:"Campo obbligatorio"},invoices:{invoice:"Fattura",invoice_date:"Data fattura",due_date:"Data di pagamento",amount:"Ammontare",contact_name:"Nome contatto",status:"Stato"},estimates:{estimate:"Preventivo",estimate_date:"Data preventivo",due_date:"Data di pagamento",estimate_number:"Numero di preventivo",ref_number:"Numero di Rif.",amount:"Ammontare",contact_name:"Nome contatto",status:"Stato"},expenses:{expenses:"Spese",category:"Categoria",date:"Data",amount:"Ammontare",to_date:"Alla data",from_date:"Dalla data",date_range:"Seleziona intervallo date"}},Ou={menu_title:{account_settings:"Impostazioni Account",company_information:"Informazioni Azienda",customization:"Personalizzazione",preferences:"Opzioni",notifications:"Notifiche",tax_types:"Tipi di Imposte",expense_category:"Categorie di spesa",update_app:"Aggiorna App",backup:"Backup",file_disk:"Disco File",custom_fields:"Campi personalizzati",payment_modes:"Modalit\xE0 di Pagamento",notes:"Note",exchange_rate:"Tasso di cambio",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"Impostazioni",setting:"Opzione | Impostazioni",general:"Generale",language:"Lingua",primary_currency:"Valuta Principale",timezone:"Fuso Orario",date_format:"Formato data",currencies:{title:"Valute",currency:"Val\xF9ta | Valute",currencies_list:"Lista valute",select_currency:"Seleziona Val\xF9ta",name:"Nome",code:"Codice",symbol:"Simbolo",precision:"Precisione",thousand_separator:"Separatore migliaia",decimal_separator:"Separatore decimali",position:"Posizione",position_of_symbol:"Posizione del Simbolo",right:"Destra",left:"Sinistra",action:"Azione",add_currency:"Aggiungi Val\xF9ta"},mail:{host:"Host Mail",port:"Mail - Porta",driver:"Driver Mail",secret:"Segreto",mailgun_secret:"Segreto Mailgun",mailgun_domain:"Dominio",mailgun_endpoint:"Endpoint Mailgun",ses_secret:"Segreto SES",ses_key:"Chiave SES",password:"Password Email",username:"Nome Utente Email",mail_config:"Configurazione Mail",from_name:"Nome Mittente Mail",from_mail:"Indirizzo Mittente Mail",encryption:"Tipo di cifratura Mail",mail_config_desc:"Form per Configurazione Driver Mail per invio mail dall'App. Puoi anche configurare providers di terze parti come Sendgrid, SES, etc.."},pdf:{title:"Configurazione PDF",footer_text:"Testo Footer",pdf_layout:"Layout PDF"},company_info:{company_info:"Info azienda",company_name:"Nome azienda",company_logo:"Logo azienda",section_description:"Informazioni sulla tua azienda che saranno mostrate in fattura, preventivi ed altri documenti creati dell'applicazione.",phone:"Telefono",country:"Paese",state:"Provincia",city:"Citt\xE0",address:"Indirizzo",zip:"CAP",save:"Salva",delete:"Elimina",updated_message:"Informazioni Azienda aggiornate con successo.",delete_company:"Elimina Azienda",delete_company_description:"Una volta eliminata la tua azienda, perderai tutti i dati e i file associati in modo permanente.",are_you_absolutely_sure:"Sei assolutamente sicuro?",delete_company_modal_desc:"Questa azione non pu\xF2 essere annullata. Questo eliminer\xE0 definitivamente {company} e tutti i suoi dati associati.",delete_company_modal_label:"Digita {company} per confermare"},custom_fields:{title:"Campi personalizzati",section_description:"Personalizza le tue fatture, preventivi e ricevute di pagamento con i tuoi campi. Assicurati di utilizzare i campi aggiunti qui sotto nei campi della pagina Personalizzazione delle impostazioni.",add_custom_field:"Aggiungi campo personalizzato",edit_custom_field:"Modifica campo personalizzato",field_name:"Nome campo",label:"Etichetta",type:"genere",name:"Nome",slug:"URL personalizzato",required:"Necessaria",placeholder:"segnaposto",help_text:"Testo guida",default_value:"Valore predefinito",prefix:"Prefisso",starting_number:"Numero iniziale",model:"Modella",help_text_description:"Inserisci del testo per aiutare gli utenti a comprendere lo scopo di questo campo personalizzato.",suffix:"Suffisso",yes:"s\xEC",no:"No",order:"Ordine",custom_field_confirm_delete:"Non sarai in grado di recuperare questo campo personalizzato",already_in_use:"Il campo personalizzato \xE8 gi\xE0 in uso",deleted_message:"Campo personalizzato eliminato correttamente",options:"opzioni",add_option:"Aggiungi opzioni",add_another_option:"Aggiungi un'altra opzione",sort_in_alphabetical_order:"Ordina in ordine alfabetico",add_options_in_bulk:"Aggiungi opzioni in blocco",use_predefined_options:"Usa opzioni predefinite",select_custom_date:"Seleziona la data personalizzata",select_relative_date:"Seleziona la data relativa",ticked_by_default:"Contrassegnato per impostazione predefinita",updated_message:"Campo personalizzato aggiornato correttamente",added_message:"Campo personalizzato aggiunto correttamente",press_enter_to_add:"Premi Invio per aggiungere una nuova opzione",model_in_use:"Impossibile aggiornare il modello per i campi gi\xE0 in uso.",type_in_use:"Impossibile aggiornare il tipo per i campi gi\xE0 in uso."},customization:{customization:"personalizzazione",updated_message:"Info azienda aggiornate con successo",save:"Salva",insert_fields:"Inserisci Campi",learn_custom_format:"Impara come utilizzare il formato personalizzato",add_new_component:"Aggiungi un componente",component:"Componente",Parameter:"Parametro",series:"Serie",series_description:"Per impostare un prefisso statico / postfix come 'INV' attraverso la tua azienda. Supporta la lunghezza del personaggio fino a 4 caratteri.",series_param_label:"Valore Serie",delimiter:"Delimitatore",delimiter_description:"Singolo carattere per specificare il confine tra 2 componenti separati. Per impostazione predefinita \xE8 impostato a -",delimiter_param_label:"Valore Delimitatore",date_format:"Formato data",date_format_description:"Un campo di data e ora locale che accetta un parametro di formato. Il formato predefinito: 'Y' rende l'anno corrente.",date_format_param_label:"Formato",sequence:"Sequenza",sequence_description:"Sequenza numerica nella tua azienda. Puoi specificare la lunghezza sul parametro specificato.",sequence_param_label:"Lunghezza Sequenza",customer_series:"Serie Cliente",customer_series_description:"Per impostare un prefisso/postfix diverso per ogni cliente.",customer_sequence:"Sequenza Cliente",customer_sequence_description:"Sequenza consecutiva di numeri per ogni vostro cliente.",customer_sequence_param_label:"Lunghezza Sequenza",random_sequence:"Sequenza Casuale",random_sequence_description:"Stringa alfanumerica casuale. Puoi specificare la lunghezza sul parametro dato.",random_sequence_param_label:"Lunghezza Sequenza",invoices:{title:"Fatture",invoice_number_format:"Formato Numero Fattura",invoice_number_format_description:"Personalizza il modo in cui il numero di fattura viene generato automaticamente quando crei una nuova fattura.",preview_invoice_number:"Anteprima Numero Fattura",due_date:"Data di pagamento",due_date_description:"Specificare come la data di scadenza viene impostata automaticamente quando si crea una fattura.",due_date_days:"Scadenza dopo (giorni)",set_due_date_automatically:"Imposta Data Di Scadenza Automaticamente",set_due_date_automatically_description:"Abilita questa opzione se vuoi impostare automaticamente la data di scadenza quando crei una nuova fattura.",default_formats:"Formato predefinito",default_formats_description:"Sotto i formati dati vengono utilizzati per riempire automaticamente i campi alla creazione della fattura.",default_invoice_email_body:"Corpo Email Fattura Predefinito",company_address_format:"Formato Indirizzo Azienda",shipping_address_format:"Formato Indirizzo Di Spedizione",billing_address_format:"Formato Indirizzo Fatturazione",invoice_email_attachment:"Invia fatture come allegati",invoice_email_attachment_setting_description:"Abilita questa opzione se vuoi inviare fatture come allegati email. Si prega di notare che il pulsante 'Visualizza fattura' nelle email non verr\xE0 pi\xF9 visualizzato quando ci\xF2 viene abilitato.",invoice_settings_updated:"Impostazioni fatture aggiornate con successo",retrospective_edits:"Modifica Retrospettiva",allow:"Permetti",disable_on_invoice_partial_paid:"Disabilita dopo la registrazione del pagamento parziale",disable_on_invoice_paid:"Disabilita dopo la registrazione del pagamento parziale",disable_on_invoice_sent:"Disabilita dopo l'invio della fattura",retrospective_edits_description:" In base alle leggi del tuo paese o alle tue preferenze, puoi limitare gli utenti dalla modifica delle fatture finalizzate."},estimates:{title:"Preventivi",estimate_number_format:"Formato del Numero di Serie",estimate_number_format_description:"Personalizza il modo in cui il numero di fattura viene generato automaticamente quando crei una nuova fattura.",preview_estimate_number:"Anteprima Numero Preventivo",expiry_date:"Data di scadenza",expiry_date_description:"Specificare come la data di scadenza viene impostata automaticamente quando si crea una fattura.",expiry_date_days:"Stima Scade dopo giorni",set_expiry_date_automatically:"Imposta Data Di Scadenza Automaticamente",set_expiry_date_automatically_description:"Abilita questa opzione se vuoi impostare automaticamente la data di scadenza quando crei una nuova fattura.",default_formats:"Formato predefinito",default_formats_description:"Sotto i formati dati vengono utilizzati per riempire automaticamente i campi alla creazione della fattura.",default_estimate_email_body:"Corpo Email Preventivo Predefinito",company_address_format:"Formato Indirizzo Azienda",shipping_address_format:"Formato Indirizzo Spedizione",billing_address_format:"Formato Indirizzo Fatturazione",estimate_email_attachment:"Invia stime come allegati",estimate_email_attachment_setting_description:"Abilita questa opzione se vuoi inviare fatture come allegati email. Si prega di notare che il pulsante 'Visualizza fattura' nelle email non verr\xE0 pi\xF9 visualizzato quando ci\xF2 viene abilitato.",estimate_settings_updated:"Impostazioni preventivi aggiornate con successo",convert_estimate_options:"Preventivo Converti Azione",convert_estimate_description:"Specificare cosa succede al preventivo dopo che viene convertito in una fattura.",no_action:"Nessuna azione",delete_estimate:"Elimina preventivo",mark_estimate_as_accepted:"Segna preventivo come accettato"},payments:{title:"Pagamenti",payment_number_format:"Formato Numero Pagamento",payment_number_format_description:"Personalizza il modo in cui il numero di fattura viene generato automaticamente quando crei una nuova fattura.",preview_payment_number:"Anteprima Numero Di Pagamento",default_formats:"Formato predefinito",default_formats_description:"Sotto i formati dati vengono utilizzati per riempire automaticamente i campi alla creazione della fattura.",default_payment_email_body:"Corpo Email Pagamento Predefinito",company_address_format:"Formato Indirizzo Azienda",from_customer_address_format:"Dal Formato Indirizzo Cliente",payment_email_attachment:"Invia stime come allegati",payment_email_attachment_setting_description:"Abilita questa opzione se vuoi inviare fatture come allegati email. Si prega di notare che il pulsante 'Visualizza fattura' nelle email non verr\xE0 pi\xF9 visualizzato quando ci\xF2 viene abilitato.",payment_settings_updated:"Impostazioni di pagamento aggiornate con successo"},items:{title:"Commesse",units:"unit\xE0",add_item_unit:"Aggiungi Unit\xE0 Item",edit_item_unit:"Modifica unit\xE0 articolo",unit_name:"Nome",item_unit_added:"Unit\xE0 aggiunta",item_unit_updated:"Unit\xE0 aggiornata",item_unit_confirm_delete:"Non potrai ripristinare questa unit\xE0 Item",already_in_use:"Unit\xE0 Item gi\xE0 in uso",deleted_message:"Unit\xE0 item eliminata con successo"},notes:{title:"Note",description:"Risparmia tempo creando note e riutilizzandole sulle tue fatture, preventivi e pagamenti.",notes:"Note",type:"genere",add_note:"Aggiungi Nota",add_new_note:"Aggiungi nuova nota",name:"Nome",edit_note:"Modifica nota",note_added:"Nota aggiunta correttamente",note_updated:"Nota aggiornata correttamente",note_confirm_delete:"Non sar\xE0 possibile recuperare questa nota",already_in_use:"Nota gi\xE0 in uso",deleted_message:"Nota eliminata con successo"}},account_settings:{profile_picture:"Immagine profilo",name:"Nome",email:"Email",password:"Password",confirm_password:"Conferma Password",account_settings:"Impostazioni Account",save:"Salva",section_description:"Puoi aggiornare nome email e password utilizzando il form qui sotto.",updated_message:"Impostazioni account aggiornate con successo"},user_profile:{name:"Nome",email:"Email",password:"Password",confirm_password:"Conferma Password"},notification:{title:"Notifica",email:"Invia notifiche a",description:"Quali notifiche email vorresti ricevere quando qualcosa cambia?",invoice_viewed:"Fattura visualizzata",invoice_viewed_desc:"Quando il cliente visualizza la fattura inviata via dashboard applicazione.",estimate_viewed:"Preventivo visualizzato",estimate_viewed_desc:"Quando il cliente visualizza il preventivo inviato dall'applicazione.",save:"Salva",email_save_message:"Email salvata con successo",please_enter_email:"Inserisci Email"},roles:{title:"Ruoli",description:"Gestisci i ruoli e i permessi di questa azienda",save:"Salva",add_new_role:"Aggiungi Nuovo Ruolo",role_name:"Nome Ruolo",added_on:"Aggiunto il",add_role:"Aggiungi Ruolo",edit_role:"Modifica Ruolo",name:"Nome",permission:"Permesso | Permessi",select_all:"Seleziona tutto",none:"Nessuno",confirm_delete:"Non sarai in grado di recuperare questo ruolo",created_message:"Utente creato correttamente",updated_message:"Ruolo aggiornato correttamente",deleted_message:"Ruolo eliminato con successo",already_in_use:"Ruolo gi\xE0 in uso"},exchange_rate:{exchange_rate:"Tasso di cambio",title:"Correggi i problemi di cambio valuta",description:"Inserisci il tasso di cambio di tutte le valute menzionate di seguito per aiutare il Cratere a calcolare correttamente gli importi in {currency}.",drivers:"Drivers",new_driver:"Aggiungi Nuovo Fornitore",edit_driver:"Modifica Fornitore",select_driver:"Seleziona Driver",update:"seleziona il tasso di cambio ",providers_description:"Configura qui i tuoi fornitori di tassi di cambio per recuperare automaticamente l'ultimo tasso di cambio sulle transazioni.",key:"API Key",name:"Nome",driver:"Driver",is_default:"\xC9 PREDEFINITO",currency:"Valute",exchange_rate_confirm_delete:"Non sar\xE0 possibile recuperare questo driver",created_message:"Fornitore creato con successo",updated_message:"Provider Aggiornato Con Successo",deleted_message:"Provider Eliminato Con Successo",error:" Impossibile Eliminare Il Driver Attivo",default_currency_error:"Questa valuta \xE8 gi\xE0 utilizzata in uno dei Provider Attivi",exchange_help_text:"Inserisci il tasso di cambio da {currency} a {baseCurrency}",currency_freak:"Valuta Freak",currency_layer:"Livello Valuta",open_exchange_rate:"Tasso Di Cambio Aperto",currency_converter:"Convertitore Valuta",server:"Server",url:"Indirizzo",active:"Attivo",currency_help_text:"Questo provider sar\xE0 utilizzato solo sulle valute sopra selezionate",currency_in_used:"Le seguenti valute sono gi\xE0 attive su un altro provider. Si prega di rimuovere queste valute dalla selezione per attivare nuovamente questo provider."},tax_types:{title:"Tipi di Imposte",add_tax:"Aggiungi Imposta",edit_tax:"Modifica imposta",description:"Puoi aggiongere e rimuovere imposte a piacimento. Vengono supportate Tasse differenti per prodotti/servizi specifici esattamento come per le fatture.",add_new_tax:"Aggiungi nuova imposta",tax_settings:"Impostazioni Imposte",tax_per_item:"Tassa per prodotto/servizio",tax_name:"Nome imposta",compound_tax:"Imposta composta",percent:"Percento",action:"Azione",tax_setting_description:"Abilita se vuoi aggiungere imposte specifiche per prodotti o servizi. Di default le imposte sono aggiunte direttamente alla fattura.",created_message:"Tipo di imposta creato con successo",updated_message:"Tipo di imposta aggiornato con successo",deleted_message:"Tipo di imposta eliminato con successo",confirm_delete:"Non potrai ripristinare questo tipo di imposta",already_in_use:"Imposta gi\xE0 in uso"},payment_modes:{title:"Modalit\xE0 di pagamento",description:"Modalit\xE0 di transazione per i pagamenti",add_payment_mode:"Aggiungi modalit\xE0 di pagamento",edit_payment_mode:"Modifica modalit\xE0 di pagamento",mode_name:"Nome modalit\xE0",payment_mode_added:"Modalit\xE0 di pagamento aggiunta",payment_mode_updated:"Modalit\xE0 di pagamento aggiornata",payment_mode_confirm_delete:"Non potrai ripristinare la modalit\xE0 di pagamento",already_in_use:"Modalit\xE0 di pagamento gi\xE0 in uso",deleted_message:"Modalit\xE0 di pagamento eliminata con successo"},expense_category:{title:"Categorie di spesa",action:"Azione",description:"Le categorie sono necessarie per aggiungere delle voci di spesa. Puoi aggiungere o eliminare queste categorie in base alle tue preferenze.",add_new_category:"Aggiungi nuova categoria",add_category:"Aggiungi categoria",edit_category:"Modifica categoria",category_name:"Nome Categoria",category_description:"Descrizione",created_message:"Categoria di spesa creata con successo",deleted_message:"Categoria di spesa eliminata con successo",updated_message:"Categoria di spesa aggiornata con successo",confirm_delete:"Non potrai ripristinare questa categoria di spesa",already_in_use:"Categoria gi\xE0 in uso"},preferences:{currency:"Val\xF9ta",default_language:"Lingua predefinita",time_zone:"Fuso Orario",fiscal_year:"Anno finanziario",date_format:"Formato Data",discount_setting:"Impostazione Sconto",discount_per_item:"Sconto Per Item ",discount_setting_description:"Abilita se vuoi aggiungere uno sconto ad uno specifica fattura. Di default, lo sconto \xE8 aggiunto direttamente in fattura.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"Salva",preference:"Preferenza | Preferenze",general_settings:"Impostazioni di default del sistema.",updated_message:"Preferenze aggiornate con successo",select_language:"seleziona lingua",select_time_zone:"Seleziona Time Zone",select_date_format:"Seleziona Formato Data",select_financial_year:"Seleziona anno finanziario",recurring_invoice_status:"Stato Fattura Ricorrente",create_status:"Crea stato",active:"Attivo",on_hold:"In sospeso",update_status:"Aggiorna stato",completed:"Completato",company_currency_unchangeable:"La valuta dell'azienda non pu\xF2 essere cambiata"},update_app:{title:"Aggiorna App",description:"Puoi facilmente aggiornare l'app. Aggiorna cliccando sul bottone qui sotto",check_update:"Controllo aggiornamenti",avail_update:"Aggiornamento disponibile",next_version:"Versione successiva",requirements:"Requisiti",update:"Aggiorna ora",update_progress:"Aggiornamento in corso...",progress_text:"Sar\xE0 necessario qualche minuto. Per favore non aggiornare la pagina e non chiudere la finestra prima che l'aggiornamento sia completato",update_success:"L'App \xE8 aggiornata! Attendi che la pagina venga ricaricata automaticamente.",latest_message:"Nessun aggiornamneto disponibile! Sei gi\xE0 alla versione pi\xF9 recente.",current_version:"Versione corrente",download_zip_file:"Scarica il file ZIP",unzipping_package:"Pacchetto di decompressione",copying_files:"Copia dei file",deleting_files:"Eliminazione dei file inutilizzati",running_migrations:"Esecuzione delle migrazioni",finishing_update:"Aggiornamento di finitura",update_failed:"Aggiornamento non riuscito",update_failed_text:"Scusate! L'aggiornamento non \xE8 riuscito il: passaggio {step}",update_warning:"Tutti i file dell'applicazione e i file di modello predefiniti verranno sovrascritti quando si aggiorna l'applicazione utilizzando questa utility. Si prega di fare un backup dei modelli e del database prima di aggiornare."},backup:{title:"Backup | Backups",description:"Il backup \xE8 un file zip che contiene tutti i file nelle cartelle specificate con un dump del vostro database",new_backup:"Nuovo Backup",create_backup:"Crea Backup",select_backup_type:"Scegli tipo di backup",backup_confirm_delete:"Non sar\xE0 possibile recuperare questo backup",path:"percorso",new_disk:"Nuovo Disco",created_at:"creato il",size:"dimensioni",dropbox:"dropbox",local:"locale",healthy:"sano",amount_of_backups:"quantit\xE0 di backup",newest_backups:"backup pi\xF9 recenti",used_storage:"spazio utilizzato",select_disk:"Seleziona Disco",action:"Azione",deleted_message:"Backup eliminato con successo",created_message:"Backup creato con successo",invalid_disk_credentials:"Credenziali del disco selezionato non valide"},disk:{title:"Disco File | Dischi File",description:"Per impostazione predefinita, Crater utilizzer\xE0 il disco locale per salvare backup, avatar e altri file di immagine. Puoi configurare pi\xF9 di un driver disco come DigitalOcean, S3 e Dropbox in base alle tue preferenze.",created_at:"creato il",dropbox:"dropbox",name:"Nome",driver:"Driver",disk_type:"genere",disk_name:"Nome Disco",new_disk:"Aggiungi Nuovo Disco",filesystem_driver:"Driver Filesystem",local_driver:"driver locale",local_root:"radice locale",public_driver:"Driver Pubblico",public_root:"Root Pubblica",public_url:"Url Pubblico",public_visibility:"Visibilit\xE0 Pubblica",media_driver:"Driver Media",media_root:"Media Root",aws_driver:"Driver AWS",aws_key:"Chiave AWS",aws_secret:"Segreto AWS",aws_region:"Regione AWS",aws_bucket:"Bucket AWS",aws_root:"Root AWS",do_spaces_type:"tipo Do Spaces",do_spaces_key:"chiave Do Spaces",do_spaces_secret:"segreto Do Spaces",do_spaces_region:"regione Do Spaces",do_spaces_bucket:"bucket Do Spaces",do_spaces_endpoint:"endpoint Do Spaces",do_spaces_root:"root Do Spaces",dropbox_type:"Tipo Dropbox",dropbox_token:"Token Dropbox",dropbox_key:"Chiave Dropbox",dropbox_secret:"Segreto Dropbox",dropbox_app:"App Dropbox",dropbox_root:"Root Dropbox",default_driver:"Driver Predefinito",is_default:"\xC8 DEFAULT",set_default_disk:"Imposta Disco Predefinito",set_default_disk_confirm:"Questo disco sar\xE0 impostato come predefinito e tutti i nuovi PDF saranno salvati su questo disco",success_set_default_disk:"Disco impostato come predefinito correttamente",save_pdf_to_disk:"Salva i PDF su disco",disk_setting_description:" Abilita questa opzione, se vuoi salvare automaticamente una copia di ogni PDF Fattura, Preventivo e Ricevuta di Pagamento sul tuo disco predefinito. Attivare questa opzione diminuir\xE0 il tempo di caricamento durante la visualizzazione dei PDF.",select_disk:"Seleziona Disco",disk_settings:"Impostazioni Disco",confirm_delete:"I file e le cartelle esistenti nel disco specificato non saranno toccati, ma la configurazione del disco sar\xE0 eliminata dal Crater",action:"Azione",edit_file_disk:"Modifica Disco File",success_create:"Disco aggiunto correttamente",success_update:"Disco aggiornato correttamente",error:"Aggiunta del disco fallita",deleted_message:"Disco file eliminato con successo",disk_variables_save_successfully:"Disco Configurato Con successo",disk_variables_save_error:"Configurazione disco fallita.",invalid_disk_credentials:"Credenziali del disco selezionato non valide"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},Lu={account_info:"Informazioni Account",account_info_desc:"I dettagli qui sotto verranno usati per creare l'account principale dell'Amministratore. Puoi modificarli in qualsiasi momento dopo esserti loggato come Amministratore.",name:"Nome",email:"Email",password:"Password",confirm_password:"Conferma Password",save_cont:"Salva & Continua",company_info:"Informazioni Azienda",company_info_desc:"Questa informazione verr\xE0 mostrata nelle fatture. Puoi modificare queste informazione in un momento successivo dalla pagina delle impostazioni.",company_name:"Nome Azienda",company_logo:"Logo Azienda",logo_preview:"Anteprima Logo",preferences:"Impostazioni",preferences_desc:"Impostazioni di default del sistema.",currency_set_alert:"La valuta dell'azienda non pu\xF2 essere modificata pi\xF9 tardi.",country:"Paese",state:"Provincia",city:"Citt\xE0",address:"Indirizzo",street:"Indirizzo1 | Indirizzo2",phone:"Telefono",zip_code:"CAP/Zip Code",go_back:"Torna indietro",currency:"Val\xF9ta",language:"Lingua",time_zone:"Fuso Orario",fiscal_year:"Anno Finanziario",date_format:"Formato Date",from_address:"Indirizzo - Da",username:"Nome utente",next:"Successivo",continue:"Continua",skip:"Salta",database:{database:"URL del sito & database",connection:"Connessione Database",host:"Host Database",port:"Database - Porta",password:"Password Database",app_url:"URL dell'App",app_domain:"Dominio App",username:"Nome Utente del Database",db_name:"Database Nome",db_path:"Percorso del database",desc:"Crea un database sul tuo server e setta le credenziali usando il form qui sotto."},permissions:{permissions:"Permessi",permission_confirm_title:"Sei sicuro di voler continuare?",permission_confirm_desc:"Controllo sui permessi Cartelle, fallito",permission_desc:"Qui sotto la lista dei permessi richiesti per far funzionare correttamente l'App. Se il controllo dei permessi fallisce, assicurati di aggiornare/modificare i permessi sulle cartelle."},verify_domain:{title:"Verifica Dominio",desc:"Crater utilizza l'autenticazione basata su sessione, che richiede la verifica del dominio per scopi di sicurezza. Inserisci il dominio su cui accederai alla tua applicazione web.",app_domain:"Dominio App",verify_now:"Verifica Ora",success:"Dominio Verificato Con Successo.",failed:"Verifica del dominio fallita. Inserisci un nome di dominio valido.",verify_and_continue:"Verifica e continua"},mail:{host:"Host Mail",port:"Mail - Porta",driver:"Driver Mail",secret:"Segreto",mailgun_secret:"Segreto Mailgun",mailgun_domain:"Dominio",mailgun_endpoint:"Endpoint Mailgun",ses_secret:"Segreto SES",ses_key:"Chiave SES",password:"Password Email",username:"Nome Utente Email",mail_config:"Configurazione Mail",from_name:"Nome mittente mail",from_mail:"Indirizzo mittente mail",encryption:"Tipo di cifratura Mail",mail_config_desc:"Form per configurazione del 'driver mail' per inviare emails dall'App. Puoi anche configurare servizi di terze parti come Sendgrid, SES, ecc.."},req:{system_req:"Requisiti di Sistema",php_req_version:"Php (versione {version} richiesta)",check_req:"Controllo Requisiti",system_req_desc:"Crater ha alcuni requisiti di sistema. Assicurati che il server ha la versione di php richiesta e tutte le estensioni necessarie."},errors:{migrate_failed:"Migrazione Fallita",database_variables_save_error:"Impossibile scrivere la configurazione nel file .env. Si prega di controllare i permessi dei file",mail_variables_save_error:"Configurazione email fallita.",connection_failed:"Connessione al Database fallita",database_should_be_empty:"Il database dovrebbe essere vuoto"},success:{mail_variables_save_successfully:"Email configurata con successo",database_variables_save_successfully:"Database configurato con successo."}},Bu={invalid_phone:"Numero di telefono invalido",invalid_url:"URL non valido (es: http://www.crater.com)",invalid_domain_url:"URL non valido (es: crater.com)",required:"Campo obbligatorio",email_incorrect:"Email non corretta.",email_already_taken:"Email gi\xE0 in uso.",email_does_not_exist:"L'utente con questa email non esiste",item_unit_already_taken:"Questo nome item \xE8 gi\xE0 utilizzato",payment_mode_already_taken:"Questa modalit\xE0 di pagamento \xE8 gi\xE0 stata inserita.",send_reset_link:"Invia Link di Reset",not_yet:"Non ancora? Invia di nuovo",password_min_length:"La password deve contenere {count} caratteri",name_min_length:"Il nome deve avere almeno {count} lettere.",prefix_min_length:"Il prefisso deve contenere almeno {count} lettere.",enter_valid_tax_rate:"Inserisci un tasso di imposta valido",numbers_only:"Solo numeri.",characters_only:"Solo caratteri.",password_incorrect:"La Password deve essere identica",password_length:"La password deve essere lunga {count} caratteri.",qty_must_greater_than_zero:"La quantit\xE0 deve essere maggiore di zero.",price_greater_than_zero:"Il prezzo deve essere maggiore di zero.",payment_greater_than_zero:"Il pagamento deve essere maggiore di zero.",payment_greater_than_due_amount:"Il pagamento inserito \xE8 maggiore di quello indicato in fattura.",quantity_maxlength:"La Quantit\xE0 non pu\xF2 essere maggiore di 20 cifre.",price_maxlength:"Il prezzo non pu\xF2 contenere pi\xF9 di 20 cifre.",price_minvalue:"Il prezzo deve essere maggiore di 0.",amount_maxlength:"La somma non deve contenere pi\xF9 di 20 cifre.",amount_minvalue:"La somma deve essere maggiore di 0.",discount_maxlength:"Lo sconto non deve essere superiore allo sconto massimo",description_maxlength:"La Descrizione non deve superare i 255 caratteri.",subject_maxlength:"L'Oggetto non deve superare i 100 caratter.",message_maxlength:"Il messaggio non pu\xF2 superare i 255 caratteri.",maximum_options_error:"Massimo di {max} opzioni selezionate. Per selezionare un'altra opzione deseleziona prima una opzione.",notes_maxlength:"Le note non possono superare i 255 caratteri.",address_maxlength:"L'Indirizzo non pu\xF2 eccedere i 255 caratteri.",ref_number_maxlength:"Il Numero di Riferimento non pu\xF2 superare i 255 caratteri.",prefix_maxlength:"Il Prefisso non pu\xF2 superare i 5 caratteri.",something_went_wrong:"Si \xE8 verificato un errore",number_length_minvalue:"La lunghezza del numero deve essere maggiore di 0",at_least_one_ability:"Seleziona almeno un permesso.",valid_driver_key:"Inserisci una chiave {driver} valida.",valid_exchange_rate:"Inserisci un tasso di cambio valido.",company_name_not_same:"Il nome dell'azienda deve corrispondere al nome indicato."},qu={starter_plan:"Questa funzione \xE8 disponibile dal piano Starter, in poi!",invalid_provider_key:"Inserisci una API Key valida per il Fornitore.",estimate_number_used:"Il numero stimato \xE8 gi\xE0 stato preso.",invoice_number_used:"Il numero della fattura \xE8 gi\xE0 stato utilizzato.",payment_attached:"Una delle fatture selezionate ha gi\xE0 associato un pagamento. Assicurati di eliminare il pagamento associato prima di procedere con la rimozione.",payment_number_used:"Questa modalit\xE0 di pagamento \xE8 gi\xE0 stata inserita.",name_already_taken:"Questo Nome esiste gi\xE1.",receipt_does_not_exist:"La ricevuta non esiste.",customer_cannot_be_changed_after_payment_is_added:"Il cliente non pu\xF2 essere modificato dopo aver aggiunto il pagamento",invalid_credentials:"Credenziali non valide",not_allowed:"Non Consentito",login_invalid_credentials:"Queste credenziali non corrispondono ai nostri record.",enter_valid_cron_format:"Inserisci un formato cron valido",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},Ku="Preventivo",Wu="Preventivo Numero",Zu="Data preventivo",Hu="Data di scadenza",Yu="Fattura",Gu="Numero Fattura",Ju="Data fattura",Qu="Data di pagamento",Xu="Note",em="Commesse",tm="Quantit\xE0",am="Prezzo",im="Sconto",nm="Ammontare",sm="Parziale",om="Totale",rm="Pagamento",dm="RICEVUTA DI PAGAMENTO",lm="Data di pagamento",cm="Numero di pagamento",_m="Modalit\xE0 di Pagamento",um="Importo Ricevuto",mm="RELAZIONE SPESE",pm="TOTALE SPESE",gm="RELAZIONE PROFITTO E PERDITE",fm="Report Vendite Clienti",vm="Rapporto vendite",hm="Rapporto Riepilogo Tasse",ym="REDDITO",bm="PROFITTO NETTO",km="Relazione Vendite: Per Cliente",wm="TOTALE VENDITE",xm="Relazione Vendite: Per Articolo",zm="RELAZIONE FISCALE",Sm="TOTALE IMPOSTA",Pm="Tipi di Imposta",jm="Uscite",Am="Fattura a,",Dm="Invia a,",Cm="Ricevuto da:",Em="Tassa";var Im={navigation:xu,general:zu,dashboard:Su,tax_types:Pu,global_search:ju,company_switcher:Au,dateRange:Du,customers:Cu,items:Eu,estimates:Iu,invoices:Nu,recurring_invoices:Tu,payments:Ru,expenses:Mu,login:Fu,modules:$u,users:Uu,reports:Vu,settings:Ou,wizard:Lu,validation:Bu,errors:qu,pdf_estimate_label:Ku,pdf_estimate_number:Wu,pdf_estimate_date:Zu,pdf_estimate_expire_date:Hu,pdf_invoice_label:Yu,pdf_invoice_number:Gu,pdf_invoice_date:Ju,pdf_invoice_due_date:Qu,pdf_notes:Xu,pdf_items_label:em,pdf_quantity_label:tm,pdf_price_label:am,pdf_discount_label:im,pdf_amount_label:nm,pdf_subtotal:sm,pdf_total:om,pdf_payment_label:rm,pdf_payment_receipt_label:dm,pdf_payment_date:lm,pdf_payment_number:cm,pdf_payment_mode:_m,pdf_payment_amount_received_label:um,pdf_expense_report_label:mm,pdf_total_expenses_label:pm,pdf_profit_loss_label:gm,pdf_sales_customers_label:fm,pdf_sales_items_label:vm,pdf_tax_summery_label:hm,pdf_income_label:ym,pdf_net_profit_label:bm,pdf_customer_sales_report:km,pdf_total_sales_label:wm,pdf_item_sales_label:xm,pdf_tax_report_label:zm,pdf_total_tax_label:Sm,pdf_tax_types_label:Pm,pdf_expenses_label:jm,pdf_bill_to:Am,pdf_ship_to:Dm,pdf_received_from:Cm,pdf_tax_label:Em};const Nm={dashboard:"Komandna tabla",customers:"Klijenti",items:"Stavke",invoices:"Fakture","recurring-invoices":"Recurring Invoices",expenses:"Rashodi",estimates:"Profakture",payments:"Uplate",reports:"Izve\u0161taji",settings:"Pode\u0161avanja",logout:"Odjavi se",users:"Korisnici",modules:"Modules"},Tm={add_company:"Dodaj kompaniju",view_pdf:"Pogledaj PDF",copy_pdf_url:"Kopiraj PDF link",download_pdf:"Preuzmi PDF",save:"Sa\u010Duvaj",create:"Napravi",cancel:"Otka\u017Ei",update:"A\u017Euriraj",deselect:"Poni\u0161ti izbor",download:"Preuzmi",from_date:"Od Datuma",to_date:"Do Datuma",from:"Po\u0161iljalac",to:"Primalac",ok:"Ok",yes:"Yes",no:"No",sort_by:"Rasporedi Po",ascending:"Rastu\u0107e",descending:"Opadaju\u0107e",subject:"Predmet",body:"Telo",message:"Poruka",send:"Po\u0161alji",preview:"Preview",go_back:"Idi nazad",back_to_login:"Nazad na prijavu?",home:"Po\u010Detna",filter:"Filter",delete:"Obri\u0161i",edit:"Izmeni",view:"Pogledaj",add_new_item:"Dodaj novu stavku",clear_all:"Izbri\u0161i sve",showing:"Prikazivanje",of:"od",actions:"Akcije",subtotal:"UKUPNO",discount:"POPUST",fixed:"Fiksno",percentage:"Procenat",tax:"POREZ",total_amount:"UKUPAN IZNOS",bill_to:"Ra\u010Dun za",ship_to:"Isporu\u010Diti za",due:"Du\u017Ean",draft:"U izradi",sent:"Poslato",all:"Sve",select_all:"Izaberi sve",select_template:"Select Template",choose_file:"Klikni ovde da izabere\u0161 fajl",choose_template:"Izaberi \u0161ablon",choose:"Izaberi",remove:"Ukloni",select_a_status:"Izaberi status",select_a_tax:"Izaberi porez",search:"Pretraga",are_you_sure:"Da li ste sigurni?",list_is_empty:"Lista je prazna.",no_tax_found:"Porez nije prona\u0111en!",four_zero_four:"404",you_got_lost:"Ups! Izgubio si se!",go_home:"Idi na po\u010Detnu stranicu",test_mail_conf:"Testiraj pode\u0161avanje Po\u0161te",send_mail_successfully:"Po\u0161ta uspe\u0161no poslata",setting_updated:"Pode\u0161avanje uspe\u0161no a\u017Eurirano",select_state:"Odaberi saveznu dr\u017Eavu",select_country:"Odaberi dr\u017Eavu",select_city:"Odaberi grad",street_1:"Adresa 1",street_2:"Adresa 2",action_failed:"Akcija nije uspela",retry:"Poku\u0161aj ponovo",choose_note:"Odaberi napomenu",no_note_found:"Ne postoje sa\u010Duvane napomene",insert_note:"Unesi bele\u0161ku",copied_pdf_url_clipboard:"Link do PDF fajla kopiran!",copied_url_clipboard:"Copied url to clipboard!",docs:"Docs",do_you_wish_to_continue:"Do you wish to continue?",note:"Note",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},Rm={select_year:"Odaberi godinu",cards:{due_amount:"Du\u017Ean iznos",customers:"Klijenti",invoices:"Fakture",estimates:"Profakture",payments:"Payments"},chart_info:{total_sales:"Prodaja",total_receipts:"Ra\u010Duni",total_expense:"Rashodi",net_income:"Prihod NETO",year:"Odaberi godinu"},monthly_chart:{title:"Prodaja & Rashodi"},recent_invoices_card:{title:"Dospele fakture",due_on:"Datum dospevanja",customer:"Klijent",amount_due:"Iznos dospe\u0107a",actions:"Akcije",view_all:"Pogledaj sve"},recent_estimate_card:{title:"Nedavne profakture",date:"Datum",customer:"Klijent",amount_due:"Iznos dospe\u0107a",actions:"Akcije",view_all:"Pogledaj sve"}},Mm={name:"Naziv",description:"Opis",percent:"Procenat",compound_tax:"Slo\u017Eeni porez"},Fm={search:"Pretraga...",customers:"Klijenti",users:"Korisnici",no_results_found:"Nema rezultata"},$m={label:"SWITCH COMPANY",no_results_found:"No Results Found",add_new_company:"Add new company",new_company:"New company",created_message:"Company created successfully"},Um={today:"Today",this_week:"This Week",this_month:"This Month",this_quarter:"This Quarter",this_year:"This Year",previous_week:"Previous Week",previous_month:"Previous Month",previous_quarter:"Previous Quarter",previous_year:"Previous Year",custom:"Custom"},Vm={title:"Klijenti",prefix:"Prefix",add_customer:"Dodaj Klijenta",contacts_list:"Lista klijenata",name:"Naziv",mail:"Mail | Mail-ovi",statement:"Izjava",display_name:"Naziv koji se prikazuje",primary_contact_name:"Primarna kontakt osoba",contact_name:"Naziv kontakt osobe",amount_due:"Iznos dospe\u0107a",email:"E-mail",address:"Adresa",phone:"Telefon",website:"Veb stranica",overview:"Pregled",invoice_prefix:"Invoice Prefix",estimate_prefix:"Estimate Prefix",payment_prefix:"Payment Prefix",enable_portal:"Uklju\u010Di portal",country:"Dr\u017Eava",state:"Savezna dr\u017Eava",city:"Grad",zip_code:"Po\u0161tanski broj",added_on:"Datum dodavanja",action:"Akcija",password:"\u0160ifra",confirm_password:"Confirm Password",street_number:"Broj ulice",primary_currency:"Primarna valuta",description:"Opis",add_new_customer:"Dodaj novog klijenta",save_customer:"Sa\u010Duvaj klijenta",update_customer:"A\u017Euriraj klijenta",customer:"Klijent | Klijenti",new_customer:"Nov klijent",edit_customer:"Izmeni klijenta",basic_info:"Osnovne informacije",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"Adresa za naplatu",shipping_address:"Adresa za dostavu",copy_billing_address:"Kopiraj iz adrese za naplatu",no_customers:"Jo\u0161 uvek nema klijenata!",no_customers_found:"Klijenti nisu prona\u0111eni!",no_contact:"Nema kontakta",no_contact_name:"Nema naziva kontakta",list_of_customers:"Ova sekcija \u0107e da sadr\u017Ei spisak klijenata.",primary_display_name:"Primarni naziv koji se prikazuje",select_currency:"Odaberi valutu",select_a_customer:"Odaberi klijenta",type_or_click:"Unesi tekst ili klikni da izabere\u0161",new_transaction:"Nova transakcija",no_matching_customers:"Ne postoje klijenti koji odgovaraju pretrazi!",phone_number:"Broj telefona",create_date:"Datum kreiranja",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovog klijenta i sve njegove Fakture, Profakture i Uplate. | Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ove klijente i njihove Fakture, Profakture i Uplate.",created_message:"Klijent uspe\u0161no kreiran",updated_message:"Klijent uspe\u0161no a\u017Euriran",address_updated_message:"Address Information Updated succesfully",deleted_message:"Klijent uspe\u0161no obrisan | Klijenti uspe\u0161no obrisani",edit_currency_not_allowed:"Cannot change currency once transactions created."},Om={title:"Stavke",items_list:"Lista stavki",name:"Naziv",unit:"Jedinica",description:"Opis",added_on:"Datum dodavanja",price:"Cena",date_of_creation:"Datum kreiranja",not_selected:"Nije odabrana niti jedna stavka",action:"Akcije",add_item:"Dodaj Stavku",save_item:"Sa\u010Duvaj Stavku",update_item:"A\u017Euriraj Stavku",item:"Stavka | Stavke",add_new_item:"Dodaj novu stavku",new_item:"Nova stavka",edit_item:"Izmeni stavku",no_items:"Jo\u0161 uvek nema stavki!",list_of_items:"Ova sekcija \u0107e da sadr\u017Ei spisak stavki.",select_a_unit:"odaberi jedinicu",taxes:"Porezi",item_attached_message:"Nije dozvoljeno brisanje stavke koje se koristi",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovu Stavku | Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ove Stavke",created_message:"Stavka uspe\u0161no kreirana",updated_message:"Stavka uspe\u0161no a\u017Eurirana",deleted_message:"Stavka uspe\u0161no obrisana | Stavke uspe\u0161no obrisane"},Lm={title:"Profakture",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"Profaktura | Profakture",estimates_list:"Lista profaktura",days:"{days} Dan",months:"{months} Mesec",years:"{years} Godina",all:"Sve",paid:"Pla\u0107eno",unpaid:"Nepla\u0107eno",customer:"KLIJENT",ref_no:"POZIV NA BROJ",number:"BROJ",amount_due:"IZNOS DOSPE\u0106A",partially_paid:"Delimi\u010Dno Pla\u0107eno",total:"Ukupno za pla\u0107anje",discount:"Popust",sub_total:"Osnovica za obra\u010Dun PDV-a",estimate_number:"Broj profakture",ref_number:"Poziv na broj",contact:"Kontakt",add_item:"Dodaj stavku",date:"Datum",due_date:"Datum Dospe\u0107a",expiry_date:"Datum Isteka",status:"Status",add_tax:"Dodaj Porez",amount:"Iznos",action:"Akcija",notes:"Napomena",tax:"Porez",estimate_template:"\u0160ablon",convert_to_invoice:"Pretvori u Fakturu",mark_as_sent:"Ozna\u010Di kao Poslato",send_estimate:"Po\u0161alji Profakturu",resend_estimate:"Ponovo po\u0161alji Profakturu",record_payment:"Unesi uplatu",add_estimate:"Dodaj Profakturu",save_estimate:"Sa\u010Duvaj Profakturu",confirm_conversion:"Detalji ove Profakture \u0107e biti iskori\u0161\u0107eni za pravljenje Fakture.",conversion_message:"Faktura uspe\u0161no kreirana",confirm_send_estimate:"Ova Profaktura \u0107e biti poslata putem Email-a klijentu",confirm_mark_as_sent:"Ova Profaktura \u0107e biti ozna\u010Dena kao Poslata",confirm_mark_as_accepted:"Ova Profaktura \u0107e biti ozna\u010Dena kao Prihva\u0107ena",confirm_mark_as_rejected:"Ova Profaktura \u0107e biti ozna\u010Dena kao Odbijena",no_matching_estimates:"Ne postoji odgovaraju\u0107a profaktura!",mark_as_sent_successfully:"Profaktura uspe\u0161no ozna\u010Dena kao Poslata",send_estimate_successfully:"Profaktura uspe\u0161no poslata",errors:{required:"Polje je obavezno"},accepted:"Prihva\u0107eno",rejected:"Odbijeno",expired:"Expired",sent:"Poslato",draft:"U izradi",viewed:"Viewed",declined:"Odbijeno",new_estimate:"Nova Profaktura",add_new_estimate:"Dodaj novu Profakturu",update_Estimate:"A\u017Euriraj Profakturu",edit_estimate:"Izmeni Profakturu",items:"stavke",Estimate:"Profaktura | Profakture",add_new_tax:"Dodaj nov Porez",no_estimates:"Jo\u0161 uvek nema Profaktura!",list_of_estimates:"Ova sekcija \u0107e da sadr\u017Ei spisak Profaktura.",mark_as_rejected:"Ozna\u010Di kao odbijeno",mark_as_accepted:"Ozna\u010Di kao prihva\u0107eno",marked_as_accepted_message:"Profaktura ozna\u010Dena kao prihva\u0107ena",marked_as_rejected_message:"Profaktura ozna\u010Dena kao odbijena",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovu Profakturu | Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ove Profakture",created_message:"Profaktura uspe\u0161no kreirana",updated_message:"Profaktura uspe\u0161no a\u017Eurirana",deleted_message:"Profaktura uspe\u0161no obrisana | Profakture uspe\u0161no obrisane",something_went_wrong:"ne\u0161to je krenulo naopako",item:{title:"Naziv stavke",description:"Opis",quantity:"Koli\u010Dina",price:"Cena",discount:"Popust",total:"Ukupno za pla\u0107anje",total_discount:"Ukupan popust",sub_total:"Ukupno",tax:"Porez",amount:"Iznos",select_an_item:"Unesi tekst ili klikni da izabere\u0161",type_item_description:"Unesi opis Stavke (nije obavezno)"}},Bm={title:"Fakture",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"List Faktura",invoice_information:"Invoice Information",days:"{days} dan",months:"{months} Mesec",years:"{years} Godina",all:"Sve",paid:"Pla\u0107eno",unpaid:"Nepla\u0107eno",viewed:"Pogledano",overdue:"Nepodmireno",completed:"Zavr\u0161eno",customer:"KLIJENT",paid_status:"STATUS UPLATE",ref_no:"POZIV NA BROJ",number:"BROJ",amount_due:"IZNOS DOSPE\u0106A",partially_paid:"Delimi\u010Dno pla\u0107eno",total:"Ukupno za pla\u0107anje",discount:"Popust",sub_total:"Osnovica za obra\u010Dun PDV-a",invoice:"Faktura | Fakture",invoice_number:"Broj Fakture",ref_number:"Poziv na broj",contact:"Kontakt",add_item:"Dodaj Stavku",date:"Datum",due_date:"Datum Dospe\u0107a",status:"Status",add_tax:"Dodaj Porez",amount:"Iznos",action:"Akcija",notes:"Napomena",view:"Pogledaj",send_invoice:"Po\u0161alji Fakturu",resend_invoice:"Ponovo po\u0161alji Fakturu",invoice_template:"\u0160ablon Fakture",conversion_message:"Invoice cloned successful",template:"\u0160ablon",mark_as_sent:"Ozna\u010Di kao Poslato",confirm_send_invoice:"Ova Faktura \u0107e biti poslata putem Email-a klijentu",invoice_mark_as_sent:"Ova Faktura \u0107e biti ozna\u010Dena kao poslata",confirm_mark_as_accepted:"This invoice will be marked as Accepted",confirm_mark_as_rejected:"This invoice will be marked as Rejected",confirm_send:"Ova Faktura \u0107e biti poslata putem Email-a klijentu",invoice_date:"Datum Fakture",record_payment:"Unesi Uplatu",add_new_invoice:"Dodaj novu Fakturu",update_expense:"A\u017Euriraj Rashod",edit_invoice:"Izmeni Fakturu",new_invoice:"Nova Faktura",save_invoice:"Sa\u010Duvaj Fakturu",update_invoice:"A\u017Euriraj Fakturu",add_new_tax:"Dodaj nov Porez",no_invoices:"Jo\u0161 uvek nema Faktura!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"Ova sekcija \u0107e da sadr\u017Ei spisak Faktura.",select_invoice:"Odaberi Fakturu",no_matching_invoices:"Ne postoje Fakture koje odgovaraju pretrazi!",mark_as_sent_successfully:"Faktura uspe\u0161no ozna\u010Dena kao Poslata",invoice_sent_successfully:"Invoice sent successfully",cloned_successfully:"Uspe\u0161no napravljen duplikat Fakture",clone_invoice:"Napravi duplikat",confirm_clone:"Ova Faktura \u0107e biti duplikat nove Fakture",item:{title:"Naziv Stavke",description:"Opis",quantity:"Koli\u010Dina",price:"Cena",discount:"Popust",total:"Ukupno za pla\u0107anje",total_discount:"Ukupan popust",sub_total:"Ukupno",tax:"Porez",amount:"Iznos",select_an_item:"Unesi tekst ili klikni da izabere\u0161",type_item_description:"Unesi opis Stavke (nije obavezno)"},payment_attached_message:"Jedna od odabranih faktura ve\u0107 ima uplatu povezanu sa njom. Obri\u0161ite prvo povezane uplate da bi nastavili sa brisanjem",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovu Fakturu | Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ove Fakture",created_message:"Faktura uspe\u0161no kreirana",updated_message:"Faktura uspe\u0161no a\u017Eurirana",deleted_message:"Faktura uspe\u0161no obrisana | Fakture uspe\u0161no obrisane",marked_as_sent_message:"Faktura ozna\u010Dena kao uspe\u0161no poslata",something_went_wrong:"ne\u0161to je krenulo naopako",invalid_due_amount_message:"Ukupan iznos za pla\u0107anje u fakturi ne mo\u017Ee biti manji od iznosa uplate za ovu fakturu. Molim Vas a\u017Eurirajte fakturu ili obri\u0161ite uplate koje su povezane sa ovom fakturom da bi nastavili."},qm={title:"Recurring Invoices",invoices_list:"Recurring Invoices List",days:"{days} Days",months:"{months} Month",years:"{years} Year",all:"All",paid:"Paid",unpaid:"Unpaid",viewed:"Viewed",overdue:"Overdue",active:"Active",completed:"Completed",customer:"CUSTOMER",paid_status:"PAID STATUS",ref_no:"REF NO.",number:"NUMBER",amount_due:"AMOUNT DUE",partially_paid:"Partially Paid",total:"Total",discount:"Discount",sub_total:"Sub Total",invoice:"Recurring Invoice | Recurring Invoices",invoice_number:"Recurring Invoice Number",next_invoice_date:"Next Invoice Date",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",limit_by:"Limit by",limit_date:"Limit Date",limit_count:"Limit Count",count:"Count",status:"Status",select_a_status:"Select a status",working:"Working",on_hold:"On Hold",complete:"Completed",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",view:"View",basic_info:"Basic Info",send_invoice:"Send Recurring Invoice",auto_send:"Auto Send",resend_invoice:"Resend Recurring Invoice",invoice_template:"Recurring Invoice Template",conversion_message:"Recurring Invoice cloned successful",template:"Template",mark_as_sent:"Mark as sent",confirm_send_invoice:"This recurring invoice will be sent via email to the customer",invoice_mark_as_sent:"This recurring invoice will be marked as sent",confirm_send:"This recurring invoice will be sent via email to the customer",starts_at:"Start Date",due_date:"Invoice Due Date",record_payment:"Record Payment",add_new_invoice:"Add New Recurring Invoice",update_expense:"Update Expense",edit_invoice:"Edit Recurring Invoice",new_invoice:"New Recurring Invoice",send_automatically:"Send Automatically",send_automatically_desc:"Enable this, if you would like to send the invoice automatically to the customer when its created.",save_invoice:"Save Recurring Invoice",update_invoice:"Update Recurring Invoice",add_new_tax:"Add New Tax",no_invoices:"No Recurring Invoices yet!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"This section will contain the list of recurring invoices.",select_invoice:"Select Invoice",no_matching_invoices:"There are no matching recurring invoices!",mark_as_sent_successfully:"Recurring Invoice marked as sent successfully",invoice_sent_successfully:"Recurring Invoice sent successfully",cloned_successfully:"Recurring Invoice cloned successfully",clone_invoice:"Clone Recurring Invoice",confirm_clone:"This recurring invoice will be cloned into a new Recurring Invoice",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"},frequency:{title:"Frequency",select_frequency:"Select Frequency",minute:"Minute",hour:"Hour",day_month:"Day of month",month:"Month",day_week:"Day of week"},confirm_delete:"You will not be able to recover this Invoice | You will not be able to recover these Invoices",created_message:"Recurring Invoice created successfully",updated_message:"Recurring Invoice updated successfully",deleted_message:"Recurring Invoice deleted successfully | Recurring Invoices deleted successfully",marked_as_sent_message:"Recurring Invoice marked as sent successfully",user_email_does_not_exist:"User email does not exist",something_went_wrong:"something went wrong",invalid_due_amount_message:"Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue."},Km={title:"Uplate",payments_list:"Lista uplata",record_payment:"Unesi Uplatu",customer:"Klijent",date:"Datum",amount:"Iznos",action:"Akcija",payment_number:"Broj uplate",payment_mode:"Na\u010Din pla\u0107anja",invoice:"Faktura",note:"Napomena",add_payment:"Dodaj Uplatu",new_payment:"Nova Uplata",edit_payment:"Izmeni Uplatu",view_payment:"Vidi Uplatu",add_new_payment:"Dodaj Novu Uplatu",send_payment_receipt:"Po\u0161alji potvrdu o uplati",send_payment:"Po\u0161alji Uplatu",save_payment:"Sa\u010Duvaj Uplatu",update_payment:"A\u017Euriraj Uplatu",payment:"Uplata | Uplate",no_payments:"Jo\u0161 uvek nema uplata!",not_selected:"Nema odabranih",no_invoice:"Nema ra\u010Duna",no_matching_payments:"Ne postoje uplate koje odgovaraju pretrazi!",list_of_payments:"Ova sekcija \u0107e da sadr\u017Ei listu uplata.",select_payment_mode:"Odaberi na\u010Din pla\u0107anja",confirm_mark_as_sent:"Ovo pla\u0107anje \u0107e biti ozna\u010Dena kao Poslata",confirm_send_payment:"Ovo pla\u0107anje \u0107e biti poslato putem Email-a klijentu",send_payment_successfully:"Pla\u0107anje uspe\u0161no poslato",something_went_wrong:"ne\u0161to je krenulo naopako",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovu Uplatu | Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ove Uplate",created_message:"Uplata uspe\u0161no kreirana",updated_message:"Uplata uspe\u0161no a\u017Eurirana",deleted_message:"Uplata uspe\u0161no obrisana | Uplate uspe\u0161no obrisane",invalid_amount_message:"Iznos Uplate je pogre\u0161an"},Wm={title:"Rashodi",expenses_list:"Lista Rashoda",select_a_customer:"Odaberi klijenta",expense_title:"Naslov",customer:"Klijent",currency:"Currency",contact:"Kontakt",category:"Kategorija",from_date:"Datum od",to_date:"Datum do",expense_date:"Datum",description:"Opis",receipt:"Ra\u010Dun",amount:"Iznos",action:"Akcija",not_selected:"Nije odabrano",note:"Napomena",category_id:"ID kategorije",date:"Datum",add_expense:"Dodaj Rashod",add_new_expense:"Dodaj Novi Rashod",save_expense:"Sa\u010Duvaj Rashod",update_expense:"A\u017Euriraj Rashod",download_receipt:"Preuzmi Ra\u010Dun",edit_expense:"Izmeni Rashod",new_expense:"Novi Rashod",expense:"Rashod | Rashodi",no_expenses:"Jo\u0161 uvek nema rashoda!",list_of_expenses:"Ova sekcija \u0107e da sadr\u017Ei listu rashoda.",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovaj Rashod | Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ove Rashode",created_message:"Rashod uspe\u0161no kreiran",updated_message:"Rashod uspe\u0161no a\u017Euriran",deleted_message:"Rashod uspe\u0161no obrisan | Rashodi uspe\u0161no obrisani",categories:{categories_list:"Lista Kategorija",title:"Naslov",name:"Naziv",description:"Opis",amount:"Iznos",actions:"Akcije",add_category:"Dodaj Kategoriju",new_category:"Nova Kategorija",category:"Kategorija | Kategorije",select_a_category:"Izaberi kategoriju"}},Zm={email:"E-mail",password:"\u0160ifra",forgot_password:"Zaboravili ste \u0161ifru?",or_signIn_with:"ili se prijavite sa",login:"Prijava",register:"Registracija",reset_password:"Restujte \u0161ifru",password_reset_successfully:"\u0160ifra Uspe\u0161no Resetovana",enter_email:"Unesi email",enter_password:"Unesi \u0161ifru",retype_password:"Ponovo unesi \u0161ifru"},Hm={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},Ym={title:"Korisnici",users_list:"Lista korisnika",name:"Ime i prezime",description:"Opis",added_on:"Datum dodavanja",date_of_creation:"Datum kreiranja",action:"Akcija",add_user:"Dodaj Korisnika",save_user:"Sa\u010Duvaj Korisnika",update_user:"A\u017Euriraj Korisnika",user:"Korisnik | Korisnici",add_new_user:"Dodaj novog korisnika",new_user:"Nov Korisnik",edit_user:"Izmeni Korisnika",no_users:"Jo\u0161 uvek nema korisnika!",list_of_users:"Ova sekcija \u0107e da sadr\u017Ei listu korisnika.",email:"E-mail",phone:"Broj telefona",password:"\u0160ifra",user_attached_message:"Ne mo\u017Eete obrisati stavku koja je ve\u0107 u upotrebi",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovog Korisnika | Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ove Korisnike",created_message:"Korisnik uspe\u0161no napravljen",updated_message:"Korisnik uspe\u0161no a\u017Euriran",deleted_message:"Korisnik uspe\u0161no obrisan | Korisnici uspe\u0161no obrisani",select_company_role:"Select Role for {company}",companies:"Companies"},Gm={title:"Izve\u0161taj",from_date:"Datum od",to_date:"Datum do",status:"Status",paid:"Pla\u0107eno",unpaid:"Nepla\u0107eno",download_pdf:"Preuzmi PDF",view_pdf:"Pogledaj PDF",update_report:"A\u017Euriraj Izve\u0161taj",report:"Izve\u0161taj | Izve\u0161taji",profit_loss:{profit_loss:"Prihod & Rashod",to_date:"Datum do",from_date:"Datum od",date_range:"Izaberi opseg datuma"},sales:{sales:"Prodaja",date_range:"Izaberi opseg datuma",to_date:"Datum do",from_date:"Datum od",report_type:"Tip Izve\u0161taja"},taxes:{taxes:"Porezi",to_date:"Datum do",from_date:"Datum od",date_range:"Izaberi opseg datuma"},errors:{required:"Polje je obavezno"},invoices:{invoice:"Faktura",invoice_date:"Datum Fakture",due_date:"Datum Dospe\u0107a",amount:"Iznos",contact_name:"Ime Kontakta",status:"Status"},estimates:{estimate:"Profaktura",estimate_date:"Datum Profakture",due_date:"Datum Dospe\u0107a",estimate_number:"Broj Profakture",ref_number:"Poziv na broj",amount:"Iznos",contact_name:"Ime Kontakta",status:"Status"},expenses:{expenses:"Rashodi",category:"Kategorija",date:"Datum",amount:"Iznos",to_date:"Datum do",from_date:"Datum od",date_range:"Izaberi opseg datuma"}},Jm={menu_title:{account_settings:"Pode\u0161avanje Naloga",company_information:"Podaci o firmi",customization:"Prilago\u0111avanje",preferences:"Preferencija",notifications:"Obave\u0161tenja",tax_types:"Tipovi Poreza",expense_category:"Kategorije Rashoda",update_app:"A\u017Euriraj Aplikaciju",backup:"Bekap",file_disk:"File Disk",custom_fields:"Prilago\u0111ena polja",payment_modes:"Na\u010Din pla\u0107anja",notes:"Napomene",exchange_rate:"Exchange Rate",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"Pode\u0161avanja",setting:"Pode\u0161avanje | Pode\u0161avanja",general:"Op\u0161te",language:"Jezik",primary_currency:"Primarna Valuta",timezone:"Vremenska Zona",date_format:"Format Datuma",currencies:{title:"Valute",currency:"Valuta | Valute",currencies_list:"Lista Valuta",select_currency:"Odaberi Valutu",name:"Naziv",code:"Kod",symbol:"Simbol",precision:"Preciznost",thousand_separator:"Separator za hiljade",decimal_separator:"Separator za decimale",position:"Pozicija",position_of_symbol:"Pozicija simbola",right:"Desno",left:"Levo",action:"Akcija",add_currency:"Dodaj Valutu"},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail drajver",secret:"\u0160ifra",mailgun_secret:"Mailgun \u0160ifra",mailgun_domain:"Domen",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES \u0160ifra",ses_key:"SES Klju\u010D",password:"Mail \u0160ifra",username:"Mail Korisni\u010Dko Ime",mail_config:"Mail Pode\u0161avanje",from_name:"Naziv po\u0161iljaoca",from_mail:"E-mail adresa po\u0161iljaoca",encryption:"E-mail enkripcija",mail_config_desc:"Ispod se nalazi forma za pode\u0161avanje E-mail drajvera za slanje po\u0161te iz aplikacije. Tako\u0111e mo\u017Eete podesiti provajdere tre\u0107e strane kao Sendgrid, SES itd."},pdf:{title:"PDF Pode\u0161avanje",footer_text:"Tekstualno zaglavlje na dnu strane",pdf_layout:"PDF Raspored"},company_info:{company_info:"Podaci o firmi",company_name:"Naziv firme",company_logo:"Logo firme",section_description:"Informacije o Va\u0161oj firmi \u0107e biti prikazane na fakturama, profakturama i drugim dokumentima koji se prave u ovoj aplikaciji.",phone:"Telefon",country:"Dr\u017Eava",state:"Savezna Dr\u017Eava",city:"Grad",address:"Adresa",zip:"Po\u0161tanski broj",save:"Sa\u010Duvaj",delete:"Delete",updated_message:"Podaci o firmi uspe\u0161no sa\u010Duvani",delete_company:"Delete Company",delete_company_description:"Once you delete your company, you will lose all the data and files associated with it permanently.",are_you_absolutely_sure:"Are you absolutely sure?",delete_company_modal_desc:"This action cannot be undone. This will permanently delete {company} and all of its associated data.",delete_company_modal_label:"Please type {company} to confirm"},custom_fields:{title:"Prilago\u0111ena polja",section_description:"Prilagodite va\u0161e Fakture, Profakture i Uplate (priznanice) sa svojim poljima. Postarajte se da koristite polja navedena ispod na formatu adrese na stranici Pode\u0161avanja/Prilago\u0111avanje.",add_custom_field:"Dodaj prilago\u0111eno polje",edit_custom_field:"Izmeni prilago\u0111eno polje",field_name:"Naziv polja",label:"Oznaka",type:"Tip",name:"Naziv",slug:"Slug",required:"Obavezno",placeholder:"Opis polja (Placeholder)",help_text:"Pomo\u0107ni tekst",default_value:"Podrazumevana vrednost",prefix:"Prefiks",starting_number:"Po\u010Detni broj",model:"Model",help_text_description:"Unesite opis koji \u0107e pomo\u0107i korisnicima da razumeju svrhu ovog prilago\u0111enog polja.",suffix:"Sufiks",yes:"Da",no:"Ne",order:"Redosled",custom_field_confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovo prilago\u0111eno polje",already_in_use:"Prilago\u0111eno polje je ve\u0107 u upotrebi",deleted_message:"Prilago\u0111eno polje je uspe\u0161no obrisano",options:"opcije",add_option:"Dodaj opcije",add_another_option:"Dodaj jo\u0161 jednu opciju",sort_in_alphabetical_order:"Pore\u0111aj po Abecedi",add_options_in_bulk:"Grupno dodavanje opcija",use_predefined_options:"Koristi predefinisane opcije",select_custom_date:"Odaberi datum",select_relative_date:"Odaberi relativan datum",ticked_by_default:"Podrazumevano odabrano",updated_message:"Prilago\u0111eno polje uspe\u0161no a\u017Eurirano",added_message:"Prilago\u0111eno polje uspe\u0161no dodato",press_enter_to_add:"Press enter to add new option",model_in_use:"Cannot update model for fields which are already in use.",type_in_use:"Cannot update type for fields which are already in use."},customization:{customization:"prilago\u0111avanje",updated_message:"Podaci o firmi su uspe\u0161no a\u017Eurirani",save:"Sa\u010Duvaj",insert_fields:"Insert Fields",learn_custom_format:"Learn how to use custom format",add_new_component:"Add New Component",component:"Component",Parameter:"Parameter",series:"Series",series_description:"To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.",series_param_label:"Series Value",delimiter:"Delimiter",delimiter_description:"Single character for specifying the boundary between 2 separate components. By default its set to -",delimiter_param_label:"Delimiter Value",date_format:"Date Format",date_format_description:"A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.",date_format_param_label:"Format",sequence:"Sequence",sequence_description:"Consecutive sequence of numbers across your company. You can specify the length on the given parameter.",sequence_param_label:"Sequence Length",customer_series:"Customer Series",customer_series_description:"To set a different prefix/postfix for each customer.",customer_sequence:"Customer Sequence",customer_sequence_description:"Consecutive sequence of numbers for each of your customer.",customer_sequence_param_label:"Sequence Length",random_sequence:"Random Sequence",random_sequence_description:"Random alphanumeric string. You can specify the length on the given parameter.",random_sequence_param_label:"Sequence Length",invoices:{title:"Fakture",invoice_number_format:"Invoice Number Format",invoice_number_format_description:"Customize how your invoice number gets generated automatically when you create a new invoice.",preview_invoice_number:"Preview Invoice Number",due_date:"Due Date",due_date_description:"Specify how due date is automatically set when you create an invoice.",due_date_days:"Invoice Due after days",set_due_date_automatically:"Set Due Date Automatically",set_due_date_automatically_description:"Enable this if you wish to set due date automatically when you create a new invoice.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on invoice creation.",default_invoice_email_body:"Podrazumevan sadr\u017Eaj email-a za Fakture",company_address_format:"Format adrese firme",shipping_address_format:"Format adrese za dostavu firme",billing_address_format:"Format adrese za naplatu firme",invoice_email_attachment:"Po\u0161alji ra\u010Dun kao prilog",invoice_email_attachment_setting_description:"Omogu\u0107ite ovo ako \u017Eelite da \u0161aljete fakture kao prilog e-po\u0161te. Imajte na umu da dugme 'Prika\u017Ei fakturu' u e-porukama vi\u0161e ne\u0107e biti prikazano kada je omogu\u0107eno.",invoice_settings_updated:"Invoice Settings updated successfully",retrospective_edits:"Retrospective Edits",allow:"Allow",disable_on_invoice_partial_paid:"Disable after partial payment is recorded",disable_on_invoice_paid:"Disable after full payment is recorded",disable_on_invoice_sent:"Disable after invoice is sent",retrospective_edits_description:" Based on your country's laws or your preference, you can restrict users from editing finalised invoices."},estimates:{title:"Profakture",estimate_number_format:"Estimate Number Format",estimate_number_format_description:"Customize how your estimate number gets generated automatically when you create a new estimate.",preview_estimate_number:"Preview Estimate Number",expiry_date:"Expiry Date",expiry_date_description:"Specify how expiry date is automatically set when you create an estimate.",expiry_date_days:"Estimate Expires after days",set_expiry_date_automatically:"Set Expiry Date Automatically",set_expiry_date_automatically_description:"Enable this if you wish to set expiry date automatically when you create a new estimate.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on estimate creation.",default_estimate_email_body:"Podrazumevan sadr\u017Eaj email-a za Profakture",company_address_format:"Format adrese firme",shipping_address_format:"Format adrese za dostavu firme",billing_address_format:"Format adrese za naplatu firme",estimate_email_attachment:"Po\u0161aljite procjene kao priloge",estimate_email_attachment_setting_description:"Omogu\u0107ite ovo ako \u017Eelite da po\u0161aljete procjene kao prilog e-po\u0161te. Imajte na umu da dugme 'Prika\u017Ei procjenu' u e-porukama vi\u0161e ne\u0107e biti prikazano kada je omogu\u0107eno.",estimate_settings_updated:"Estimate Settings updated successfully",convert_estimate_options:"Estimate Convert Action",convert_estimate_description:"Specify what happens to the estimate after it gets converted to an invoice.",no_action:"No action",delete_estimate:"Delete estimate",mark_estimate_as_accepted:"Mark estimate as accepted"},payments:{title:"Uplate",payment_number_format:"Payment Number Format",payment_number_format_description:"Customize how your payment number gets generated automatically when you create a new payment.",preview_payment_number:"Preview Payment Number",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on payment creation.",default_payment_email_body:"Podrazumevan sadr\u017Eaj email-a za potvrdu o pla\u0107anju (ra\u010Dun)",company_address_format:"Format adrese firme",from_customer_address_format:"Format adrese klijenta",payment_email_attachment:"Po\u0161aljite uplate kao priloge",payment_email_attachment_setting_description:"Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.",payment_settings_updated:"Payment Settings updated successfully"},items:{title:"Stavke",units:"Jedinice",add_item_unit:"Dodaj jedinicu stavke",edit_item_unit:"Izmeni jedinicu stavke",unit_name:"Naziv jedinice",item_unit_added:"Jedinica stavke dodata",item_unit_updated:"Jedinica stavke a\u017Eurirana",item_unit_confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovu jedinicu stavke",already_in_use:"Jedinica stavke se ve\u0107 koristi",deleted_message:"Jedinica stavke uspe\u0161no obrisana"},notes:{title:"Napomene",description:"U\u0161tedite vreme pravlje\u0107i napomene i koriste\u0107i ih na fakturama, profakturama i uplatama.",notes:"Napomene",type:"Tip",add_note:"Dodaj Napomenu",add_new_note:"Dodaj novu Napomenu",name:"Naziv",edit_note:"Izmeni Napomenu",note_added:"Napomena uspe\u0161no dodata",note_updated:"Napomena uspe\u0161no a\u017Eurirana",note_confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovu Napomenu",already_in_use:"Napomena se ve\u0107 koristi",deleted_message:"Napomena uspe\u0161no obrisana"}},account_settings:{profile_picture:"Profilna slika",name:"Ime i prezime",email:"Email",password:"\u0160ifra",confirm_password:"Potvrdi \u0161ifru",account_settings:"Pode\u0161avanje naloga",save:"Sa\u010Duvaj",section_description:"Mo\u017Eete a\u017Eurirati Va\u0161e ime i prezime, email, \u0161ifru koriste\u0107i formu ispod.",updated_message:"Pode\u0161avanje naloga uspe\u0161no a\u017Eurirano"},user_profile:{name:"Ime i prezime",email:"Email",password:"\u0160ifra",confirm_password:"Potvrdi \u0161ifru"},notification:{title:"Obave\u0161tenje",email:"\u0160alji obave\u0161tenja na",description:"Koja email obave\u0161tenja bi \u017Eeleli da dobijate kada se ne\u0161to promeni?",invoice_viewed:"Faktura gledana",invoice_viewed_desc:"Kada klijent pogleda fakturu koja je poslata putem ove aplikacije.",estimate_viewed:"Profaktura gledana",estimate_viewed_desc:"Kada klijent pogleda profakturu koja je poslata putem ove aplikacije.",save:"Sa\u010Duvaj",email_save_message:"Email uspe\u0161no sa\u010Duvan",please_enter_email:"Molim Vas unesite E-mail"},roles:{title:"Roles",description:"Manage the roles & permissions of this company",save:"Save",add_new_role:"Add New Role",role_name:"Role Name",added_on:"Added on",add_role:"Add Role",edit_role:"Edit Role",name:"Name",permission:"Permission | Permissions",select_all:"Select All",none:"None",confirm_delete:"You will not be able to recover this Role",created_message:"Role created successfully",updated_message:"Role updated successfully",deleted_message:"Role deleted successfully",already_in_use:"Role is already in use"},exchange_rate:{exchange_rate:"Exchange Rate",title:"Fix Currency Exchange issues",description:"Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.",drivers:"Drivers",new_driver:"Add New Provider",edit_driver:"Edit Provider",select_driver:"Select Driver",update:"select exchange rate ",providers_description:"Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.",key:"API Key",name:"Name",driver:"Driver",is_default:"IS DEFAULT",currency:"Currencies",exchange_rate_confirm_delete:"You will not be able to recover this driver",created_message:"Provider Created successfully",updated_message:"Provider Updated Successfully",deleted_message:"Provider Deleted Successfully",error:" You cannot Delete Active Driver",default_currency_error:"This currency is already used in one of the Active Provider",exchange_help_text:"Enter exchange rate to convert from {currency} to {baseCurrency}",currency_freak:"Currency Freak",currency_layer:"Currency Layer",open_exchange_rate:"Open Exchange Rate",currency_converter:"Currency Converter",server:"Server",url:"URL",active:"Active",currency_help_text:"This provider will only be used on above selected currencies",currency_in_used:"The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again."},tax_types:{title:"Tipovi Poreza",add_tax:"Dodaj Porez",edit_tax:"Izmeni Porez",description:"Mo\u017Eete dodavati ili uklanjati poreze kako \u017Eelite. Ova aplikacija podr\u017Eava porez kako na individualnim stavkama tako i na fakturi.",add_new_tax:"Dodaj Nov Porez",tax_settings:"Pode\u0161avanje Poreza",tax_per_item:"Porez po Stavki",tax_name:"Naziv Poreza",compound_tax:"Slo\u017Een Porez",percent:"Procenat",action:"Akcija",tax_setting_description:"Izaberite ovo ako \u017Eelite da dodajete porez na individualne stavke. Podrazumevano pona\u0161anje je da je porez dodat direktno na fakturu.",created_message:"Tip poreza uspe\u0161no kreiran",updated_message:"Tip poreza uspe\u0161no a\u017Euriran",deleted_message:"Tip poreza uspe\u0161no obrisan",confirm_delete:"Ne\u0107ete mo\u0107i da povratite ovaj Tip Poreza",already_in_use:"Porez se ve\u0107 koristi"},payment_modes:{title:"Payment Modes",description:"Modes of transaction for payments",add_payment_mode:"Add Payment Mode",edit_payment_mode:"Edit Payment Mode",mode_name:"Mode Name",payment_mode_added:"Payment Mode Added",payment_mode_updated:"Payment Mode Updated",payment_mode_confirm_delete:"You will not be able to recover this Payment Mode",already_in_use:"Payment Mode is already in use",deleted_message:"Payment Mode deleted successfully"},expense_category:{title:"Kategorija Rashoda",action:"Akcija",description:"Kategorije su obavezne za dodavanje rashoda. Mo\u017Ee\u0161 da doda\u0161 ili obri\u0161e\u0161 ove kategorije po svojoj \u017Eelji.",add_new_category:"Dodaj novu kategoriju",add_category:"Dodaj kategoriju",edit_category:"Izmeni kategoriju",category_name:"Naziv kategorije",category_description:"Opis",created_message:"Kagetorija rashoda je uspe\u0161no kreirana",deleted_message:"Kategorija rashoda je uspe\u0161no izbrisana",updated_message:"Kategorija rashoda je uspe\u0161no a\u017Eurirana",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovu kategoriju rashoda",already_in_use:"Kategorija se ve\u0107 koristi"},preferences:{currency:"Valuta",default_language:"Jezik",time_zone:"Vremenska Zona",fiscal_year:"Finansijska Godina",date_format:"Format datuma",discount_setting:"Pode\u0161avanja za popuste",discount_per_item:"Popust po stavci",discount_setting_description:"Izaberite ovo ako \u017Eelite da dodajete Popust na individualne stavke. Podrazumevano pona\u0161anje je da je Popust dodat direktno na fakturu.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"Sa\u010Duvaj",preference:"Preferencija | Preferencije",general_settings:"Podrazumevane preferencije za sistem",updated_message:"Preferencije su uspe\u0161no a\u017Eurirane",select_language:"Izaberi Jezik",select_time_zone:"Izaberi Vremensku Zonu",select_date_format:"Izaberi Format Datuma",select_financial_year:"Izaberi Finansijsku Godinu",recurring_invoice_status:"Recurring Invoice Status",create_status:"Create Status",active:"Active",on_hold:"On Hold",update_status:"Update Status",completed:"Completed",company_currency_unchangeable:"Company currency cannot be changed"},update_app:{title:"A\u017Euriraj aplikaciju",description:"Lako mo\u017Ee\u0161 da a\u017Eurira\u0161 Crater tako \u0161to \u0107e\u0161 uraditi proveru novih verzija klikom na polje ispod",check_update:"Proveri a\u017Euriranost",avail_update:"Dostupna je nova verzija",next_version:"Slede\u0107a verzija",requirements:"Zahtevi",update:"A\u017Euriraj sad",update_progress:"A\u017Euriranje je u toku...",progress_text:"Traja\u0107e svega par minuta. Nemojte osve\u017Eavati ili zatvoriti stranicu dok a\u017Euriranje ne bude gotovo",update_success:"Aplikacija je a\u017Eurirana! Molim Vas Sa\u010Dekajte da se stranica osve\u017Ei automatski.",latest_message:"Nema nove verzije! A\u017Eurirana poslednja verzija.",current_version:"Trenutna verzija",download_zip_file:"Preuzmi ZIP paket",unzipping_package:"Raspakivanje paketa",copying_files:"Kopiranje datoteka",deleting_files:"Brisanje fajlova koji nisu u upotrebi",running_migrations:"Migracije u toku",finishing_update:"Zavr\u0161avanje a\u017Euriranja",update_failed:"Neuspe\u0161no a\u017Euriranje",update_failed_text:"\u017Dao mi je! Tvoje a\u017Euriranje nije uspelo na koraku broj: {step} korak",update_warning:"All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating."},backup:{title:"Bekap | Bekapi",description:"Bekap je zip arhiva koja sadr\u017Ei sve fajlove iz foldera koje ste specificirali, tako\u0111e sadr\u017Ei bekap baze.",new_backup:"Dodaj novi Bekap",create_backup:"Napravi Bekap",select_backup_type:"Izaberi tip Bekapa",backup_confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovaj Bekap",path:"putanja",new_disk:"Novi Disk",created_at:"datum kreiranja",size:"veli\u010Dina",dropbox:"dropbox",local:"lokalni",healthy:"zdrav",amount_of_backups:"broj bekapa",newest_backups:"najnoviji bekapi",used_storage:"kori\u0161c\u0301eno skladi\u0161te",select_disk:"Izaberi Disk",action:"Akcija",deleted_message:"Bekap uspe\u0161no obrisan",created_message:"Bekap uspe\u0161no napravljen",invalid_disk_credentials:"Pogre\u0161ni kredencijali za odabrani disk"},disk:{title:"File Disk | File Disks",description:"Podrazumevano pona\u0161anje je da Crater koristi lokalni disk za \u010Duvanje bekapa, avatara i ostalih slika. Mo\u017Eete podesiti vi\u0161e od jednog disk drajvera od provajdera poput DigitalOcean, S3 i Dropbox po va\u0161oj \u017Eelji.",created_at:"datum kreiranja",dropbox:"dropbox",name:"Naziv",driver:"Drajver",disk_type:"Tip",disk_name:"Naziv Diska",new_disk:"Dodaj novi Disk",filesystem_driver:"Filesystem Driver",local_driver:"lokalni Drajver",local_root:"local Root",public_driver:"Public Driver",public_root:"Public Root",public_url:"Public URL",public_visibility:"Public Visibility",media_driver:"Media Driver",media_root:"Media Root",aws_driver:"AWS Driver",aws_key:"AWS Key",aws_secret:"AWS Secret",aws_region:"AWS Region",aws_bucket:"AWS Bucket",aws_root:"AWS Root",do_spaces_type:"Do Spaces type",do_spaces_key:"Do Spaces key",do_spaces_secret:"Do Spaces Secret",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Dropbox Type",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Key",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Podrazumevani Drajver",is_default:"DA LI JE PODRAZUMEVAN",set_default_disk:"Postavi Podrazumevani Disk",set_default_disk_confirm:"Ovaj disk \u0107e biti postavljen kao podrazumevan i svi novi PDF fajlovi \u0107e biti sa\u010Duvani na ovom disku",success_set_default_disk:"Disk je uspe\u0161no postavljen kao podrazumevan",save_pdf_to_disk:"Sa\u010Duvaj PDF fajlove na Disk",disk_setting_description:" Uklju\u010Dite ovo ako \u017Eelite da sa\u010Duvate kopiju PDF fajla svake Fakture, Profakture i Uplate na va\u0161 podrazumevani disk automatski. Uklju\u010Divanjem ove opcije \u0107ete smanjiti vreme u\u010Ditavanja pri pregledu PDF fajlova.",select_disk:"Izaberi Disk",disk_settings:"Disk Pode\u0161avanja",confirm_delete:"Ovo ne\u0107e uticati na va\u0161e postoje\u0107e fajlove i foldere na navedenom disku, ali \u0107e se konfiguracija va\u0161eg diska izbrisati iz Cratera.",action:"Akcija",edit_file_disk:"Izmeni File Disk",success_create:"Disk uspe\u0161no dodat",success_update:"Disk uspe\u0161no a\u017Euriran",error:"Dodavanje diska nije uspelo",deleted_message:"File Disk uspe\u0161no obrisan",disk_variables_save_successfully:"Disk uspe\u0161no pode\u0161en",disk_variables_save_error:"Pode\u0161avanje diska nije uspelo.",invalid_disk_credentials:"Pogre\u0161an kredencijal za disk koji je naveden"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},Qm={account_info:"Informacije o nalogu",account_info_desc:"Detalji u nastavku \u0107e se koristiti za kreiranje glavnog administratorskog naloga. Mogu\u0107e ih je izmeniti u bilo kom trenutku nakon prijavljivanja.",name:"Naziv",email:"E-mail",password:"\u0160ifra",confirm_password:"Potvrdi \u0161ifru",save_cont:"Sa\u010Duvaj & Nastavi",company_info:"Informacije o firmi",company_info_desc:"Ove informacije \u0107e biti prikazane na fakturama. Mogu\u0107e ih je izmeniti kasnije u pode\u0161avanjima.",company_name:"Naziv firme",company_logo:"Logo firme",logo_preview:"Pregled logoa",preferences:"Preference",preferences_desc:"Podrazumevane Preference za sistem",currency_set_alert:"The company's currency cannot be changed later.",country:"Dr\u017Eava",state:"Savezna Dr\u017Eava",city:"Grad",address:"Adresa",street:"Ulica1 | Ulica2",phone:"Telefon",zip_code:"Po\u0161tanski broj",go_back:"Vrati se nazad",currency:"Valuta",language:"Jezik",time_zone:"Vremenska zona",fiscal_year:"Finansijska godina",date_format:"Format datuma",from_address:"Adresa po\u0161iljaoca",username:"Korisni\u010Dko ime",next:"Slede\u0107e",continue:"Nastavi",skip:"Presko\u010Di",database:{database:"URL stranice & baze podataka",connection:"Veza baze podataka",host:"Host baze podataka",port:"Port baze podataka",password:"\u0160ifra baze podataka",app_url:"URL aplikacije",app_domain:"Domen aplikacije",username:"Korisni\u010Dko ime baze podataka",db_name:"Naziv baze podataka",db_path:"Putanja do baze",desc:"Kreiraj bazu podataka na svom serveru i postavi kredencijale prate\u0107i obrazac u nastavku."},permissions:{permissions:"Dozvole",permission_confirm_title:"Da li ste sigurni da \u017Eelite da nastavite?",permission_confirm_desc:"Provera dozvola za foldere nije uspela",permission_desc:"U nastavku se nalazi lista dozvola za foldere koji su neophodni kako bi alikacija radila. Ukoliko provera dozvola ne uspe, a\u017Euriraj svoju listu dozvola za te foldere."},verify_domain:{title:"Domain Verification",desc:"Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.",app_domain:"App Domain",verify_now:"Verify Now",success:"Domain Verify Successfully.",failed:"Domain verification failed. Please enter valid domain name.",verify_and_continue:"Verify And Continue"},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail drajver",secret:"\u0160ifra",mailgun_secret:"Mailgun \u0160ifra",mailgun_domain:"Domen",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES \u0160ifra",ses_key:"SES Klju\u010D",password:"\u0160ifra za e-mail",username:"Koristni\u010Dko ime za e-mail",mail_config:"E-mail konfigurisanje",from_name:"Naziv po\u0161iljaoca",from_mail:"E-mail adresa po\u0161iljaoca",encryption:"E-mail enkripcija",mail_config_desc:"Ispod se nalazi forma za pode\u0161avanje E-mail drajvera za slanje po\u0161te iz aplikacije. Tako\u0111e mo\u017Eete podesiti provajdere tre\u0107e strane kao Sendgrid, SES itd."},req:{system_req:"Sistemski zahtevi",php_req_version:"Zahteva se PHP verzija {version} ",check_req:"Proveri zahteve",system_req_desc:"Crater ima nekoliko zahteva za server. Proveri da li tvoj server ima potrebnu verziju PHP-a i sva navedena pro\u0161irenja navedena u nastavku"},errors:{migrate_failed:"Neuspe\u0161no migriranje",database_variables_save_error:"Konfiguraciju nije moguc\u0301e zapisati u .env datoteku. Proveri dozvole za datoteku",mail_variables_save_error:"E-mail konfigurisanje je neuspe\u0161no",connection_failed:"Neuspe\u0161na konekcija sa bazom podataka",database_should_be_empty:"Baza podataka treba da bude prazna"},success:{mail_variables_save_successfully:"E-mail je uspe\u0161no konfigurisan",database_variables_save_successfully:"Baza podataka je uspe\u0161no konfigurisana"}},Xm={invalid_phone:"Pogre\u0161an Broj Telefona",invalid_url:"Neva\u017Ee\u0107i URL (primer: http://www.crater.com)",invalid_domain_url:"Pogre\u0161an URL (primer: crater.com)",required:"Obavezno polje",email_incorrect:"Pogre\u0161an E-mail",email_already_taken:"Navedeni E-mail je zauzet",email_does_not_exist:"Korisnik sa navedenom e-mail adresom ne postoji",item_unit_already_taken:"Naziv ove jedinice stavke je zauzet",payment_mode_already_taken:"Naziv ovog na\u010Dina pla\u0107anja je zauzet",send_reset_link:"Po\u0161alji link za resetovanje",not_yet:"Jo\u0161 uvek ni\u0161ta? Po\u0161alji ponovo",password_min_length:"\u0160ifra mora imati {count} karaktera",name_min_length:"Naziv mora imati najmanje {count} slova",prefix_min_length:"Prefix must have at least {count} letters.",enter_valid_tax_rate:"Unesite odgovaraju\u0107u poresku stopu",numbers_only:"Mogu se unositi samo brojevi",characters_only:"Mogu se unositi samo karakteri",password_incorrect:"\u0160ifra mora biti identi\u010Dna",password_length:"\u0160ifra mora imati {count} karaktera",qty_must_greater_than_zero:"Koli\u010Dina mora biti ve\u0107a od 0.",price_greater_than_zero:"Cena mora biti ve\u0107a od 0",payment_greater_than_zero:"Uplata mora biti ve\u0107a od 0",payment_greater_than_due_amount:"Uneta uplata je ve\u0107a od dospelog iznosa ove fakture",quantity_maxlength:"Koli\u010Dina ne mo\u017Ee imati vi\u0161e od 20 cifara",price_maxlength:"Cena ne mo\u017Ee imati vi\u0161e od 20 cifara",price_minvalue:"Cena mora biti ve\u0107a od 0",amount_maxlength:"Iznos ne mo\u017Ee da ima vi\u0161e od 20 cifara",amount_minvalue:"Iznos mora biti ve\u0107i od 0",discount_maxlength:"Discount should not be greater than max discount",description_maxlength:"Opis ne mo\u017Ee da ima vi\u0161e od 65,000 karaktera",subject_maxlength:"Predmet ne mo\u017Ee da ima vi\u0161e od 100 karaktera",message_maxlength:"Poruka ne mo\u017Ee da ima vi\u0161e od 255 karaktera",maximum_options_error:"Maksimalan broj opcija je izabran. Prvo uklonite izabranu opciju da biste izabrali drugu",notes_maxlength:"Napomena ne mo\u017Ee da ima vi\u0161e od 65,000 karaktera",address_maxlength:"Adresa ne mo\u017Ee da ima vi\u0161e od 255 karaktera",ref_number_maxlength:"Poziv na broj ne mo\u017Ee da ima vi\u0161e od 225 karaktera",prefix_maxlength:"Prefiks ne mo\u017Ee da ima vi\u0161e od 5 karaktera",something_went_wrong:"ne\u0161to je krenulo naopako",number_length_minvalue:"Number length should be greater than 0",at_least_one_ability:"Please select atleast one Permission.",valid_driver_key:"Please enter a valid {driver} key.",valid_exchange_rate:"Please enter a valid exchange rate.",company_name_not_same:"Company name must match with given name."},ep={starter_plan:"This feature is available on Starter plan and onwards!",invalid_provider_key:"Please Enter Valid Provider API Key.",estimate_number_used:"The estimate number has already been taken.",invoice_number_used:"The invoice number has already been taken.",payment_attached:"This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.",payment_number_used:"The payment number has already been taken.",name_already_taken:"The name has already been taken.",receipt_does_not_exist:"Receipt does not exist.",customer_cannot_be_changed_after_payment_is_added:"Customer cannot be change after payment is added",invalid_credentials:"Invalid Credentials.",not_allowed:"Not Allowed",login_invalid_credentials:"These credentials do not match our records.",enter_valid_cron_format:"Please enter a valid cron format",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},tp="Profaktura",ap="Broj Profakture",ip="Datum Profakture",np="Datum isteka Profakture",sp="Faktura",op="Broj Fakture",rp="Datum Fakture",dp="Datum dospe\u0107a Fakture",lp="Napomena",cp="Stavke",_p="Koli\u010Dina",up="Cena",mp="Popust",pp="Iznos",gp="Osnovica za obra\u010Dun PDV-a",fp="Ukupan iznos",vp="Payment",hp="POTVRDA O UPLATI",yp="Datum Uplate",bp="Broj Uplate",kp="Na\u010Din Uplate",wp="Iznos Uplate",xp="IZVE\u0160TAJ O RASHODIMA",zp="RASHODI UKUPNO",Sp="IZVE\u0160TAJ O PRIHODIMA I RASHODIMA",Pp="Sales Customer Report",jp="Sales Item Report",Ap="Tax Summary Report",Dp="PRIHOD",Cp="NETO PROFIT",Ep="Izve\u0161taj o Prodaji: Po Klijentu",Ip="PRODAJA UKUPNO",Np="Izve\u0161taj o Prodaji: Po Stavci",Tp="IZVE\u0160TAJ O POREZIMA",Rp="UKUPNO POREZ",Mp="Tipovi Poreza",Fp="Rashodi",$p="Ra\u010Dun za,",Up="Isporu\u010Diti za,",Vp="Poslat od strane:",Op="Tax";var Lp={navigation:Nm,general:Tm,dashboard:Rm,tax_types:Mm,global_search:Fm,company_switcher:$m,dateRange:Um,customers:Vm,items:Om,estimates:Lm,invoices:Bm,recurring_invoices:qm,payments:Km,expenses:Wm,login:Zm,modules:Hm,users:Ym,reports:Gm,settings:Jm,wizard:Qm,validation:Xm,errors:ep,pdf_estimate_label:tp,pdf_estimate_number:ap,pdf_estimate_date:ip,pdf_estimate_expire_date:np,pdf_invoice_label:sp,pdf_invoice_number:op,pdf_invoice_date:rp,pdf_invoice_due_date:dp,pdf_notes:lp,pdf_items_label:cp,pdf_quantity_label:_p,pdf_price_label:up,pdf_discount_label:mp,pdf_amount_label:pp,pdf_subtotal:gp,pdf_total:fp,pdf_payment_label:vp,pdf_payment_receipt_label:hp,pdf_payment_date:yp,pdf_payment_number:bp,pdf_payment_mode:kp,pdf_payment_amount_received_label:wp,pdf_expense_report_label:xp,pdf_total_expenses_label:zp,pdf_profit_loss_label:Sp,pdf_sales_customers_label:Pp,pdf_sales_items_label:jp,pdf_tax_summery_label:Ap,pdf_income_label:Dp,pdf_net_profit_label:Cp,pdf_customer_sales_report:Ep,pdf_total_sales_label:Ip,pdf_item_sales_label:Np,pdf_tax_report_label:Tp,pdf_total_tax_label:Rp,pdf_tax_types_label:Mp,pdf_expenses_label:Fp,pdf_bill_to:$p,pdf_ship_to:Up,pdf_received_from:Vp,pdf_tax_label:Op};const Bp={dashboard:"Overzicht",customers:"Klanten",items:"Artikelen",invoices:"Facturen","recurring-invoices":"Periodieke factuur",expenses:"Uitgaven",estimates:"Offertes",payments:"Betalingen",reports:"Rapporten",settings:"Instellingen",logout:"Uitloggen",users:"Gebruikers",modules:"Modules"},qp={add_company:"Bedrijf toevoegen",view_pdf:"Bekijk PDF",copy_pdf_url:"Kopieer PDF-URL",download_pdf:"Download PDF",save:"Opslaan",create:"Maak",cancel:"Annuleren",update:"Bijwerken",deselect:"Deselecteren",download:"Download",from_date:"Vanaf datum",to_date:"T/m datum",from:"Vanaf",to:"Naar.",ok:"Ok\xE9.",yes:"Ja.",no:"Nee.",sort_by:"Sorteer op",ascending:"Oplopend",descending:"Aflopend",subject:"Onderwerp",body:"Inhoud",message:"Bericht.",send:"Verstuur",preview:"Voorbeeld",go_back:"Ga terug",back_to_login:"Terug naar Inloggen?",home:"Home",filter:"Filter",delete:"Verwijderen",edit:"Bewerken",view:"Bekijken",add_new_item:"Voeg een nieuw item toe",clear_all:"Wis alles",showing:"Weergegeven",of:"van",actions:"Acties",subtotal:"SUBTOTAAL",discount:"KORTING",fixed:"Gemaakt",percentage:"Percentage",tax:"BELASTING",total_amount:"TOTAALBEDRAG",bill_to:"Factuur aan",ship_to:"Verzend naar",due:"Openstaand",draft:"Concept",sent:"Verzonden",all:"Alles",select_all:"Selecteer alles",select_template:"Sjabloon selecteren",choose_file:"Klik hier om een bestand te kiezen",choose_template:"Kies een sjabloon",choose:"Kiezen",remove:"Verwijderen",select_a_status:"Selecteer een status",select_a_tax:"Selecteer een belasting",search:"Zoeken",are_you_sure:"Weet je het zeker?",list_is_empty:"Lijst is leeg.",no_tax_found:"Geen belasting gevonden!",four_zero_four:"404",you_got_lost:"Oeps!\xA0Je bent verdwaald!",go_home:"Ga naar home",test_mail_conf:"E-mailconfiguratie testen",send_mail_successfully:"Mail is succesvol verzonden",setting_updated:"Instelling succesvol bijgewerkt",select_state:"Selecteer staat",select_country:"Selecteer land",select_city:"Selecteer stad",street_1:"straat 1",street_2:"Straat # 2",action_failed:"Actie: mislukt",retry:"Retr",choose_note:"Kies notitie",no_note_found:"Geen notitie gevonden",insert_note:"Notitie invoegen",copied_pdf_url_clipboard:"PDF link naar klembord gekopieerd!",copied_url_clipboard:"Copied url to clipboard!",docs:"Documenten",do_you_wish_to_continue:"Wilt u Doorgaan?",note:"Notitie",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},Kp={select_year:"Selecteer jaar",cards:{due_amount:"Openstaand bedrag",customers:"Klanten",invoices:"Facturen",estimates:"Offertes",payments:"Payments"},chart_info:{total_sales:"Verkoop",total_receipts:"Inkomsten",total_expense:"Uitgaven",net_income:"Netto inkomen",year:"Selecteer jaar"},monthly_chart:{title:"Verkoop en kosten"},recent_invoices_card:{title:"Openstaande facturen",due_on:"Openstaand op",customer:"Klant",amount_due:"Openstaand bedrag",actions:"Acties",view_all:"Toon alles"},recent_estimate_card:{title:"Recente offertes",date:"Datum",customer:"Klant",amount_due:"Openstaand bedrag",actions:"Acties",view_all:"Toon alles"}},Wp={name:"Naam",description:"Omschrijving",percent:"Procent",compound_tax:"Verbinding Ta"},Zp={search:"Zoeken...",customers:"Klanten",users:"Gebruikers",no_results_found:"Geen zoekresultaten"},Hp={label:"VERANDER BEDRIJF",no_results_found:"Geen resultaten gevonden",add_new_company:"Nieuw bedrijf toevoegen",new_company:"Nieuw bedrijf",created_message:"Bedrijf met succes aangemaakt"},Yp={today:"Vandaag",this_week:"Deze week",this_month:"Deze maand",this_quarter:"Dit kwartaal",this_year:"Dit jaar",previous_week:"Vorige week",previous_month:"Vorige maand",previous_quarter:"Vorig kwartaal",previous_year:"Vorig jaar",custom:"Aangepast"},Gp={title:"Klanten",prefix:"Voorvoegsel",add_customer:"Klant toevoegen",contacts_list:"Klantenlijst",name:"Naam",mail:"Mail | Mails",statement:"Verklaring",display_name:"Weergavenaam",primary_contact_name:"Naam primaire contactpersoon",contact_name:"Contactnaam",amount_due:"Openstaand bedrag",email:"E-mail",address:"Adres",phone:"Telefoon",website:"Website",overview:"Overzicht",invoice_prefix:"Factuurvoorvoegsel",estimate_prefix:"Schatting voorvoegsel",payment_prefix:"Betalingsvoorvoegsel",enable_portal:"Activeer Portaal",country:"Land",state:"Provincie",city:"Stad",zip_code:"Postcode",added_on:"Toegevoegd",action:"Actie",password:"Wachtwoord",confirm_password:"Bevestig wachtwoord",street_number:"Huisnummer",primary_currency:"Primaire valuta",description:"Omschrijving",add_new_customer:"Nieuwe klant toevoegen",save_customer:"Klant opslaan",update_customer:"Klant bijwerken",customer:"Klant |\xA0Klanten",new_customer:"Nieuwe klant",edit_customer:"Klant bewerken",basic_info:"Basis informatie",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"factuur adres",shipping_address:"Verzendingsadres",copy_billing_address:"Kopi\xEBren van facturering",no_customers:"Nog geen klanten!",no_customers_found:"Geen klanten gevonden!",no_contact:"Geen contact",no_contact_name:"Geen contactnaam",list_of_customers:"Hier vind je jouw klanten terug.",primary_display_name:"Primaire weergavenaam",select_currency:"Selecteer valuta",select_a_customer:"Selecteer een klant",type_or_click:"Typ of klik om te selecteren",new_transaction:"Nieuwe transactie",no_matching_customers:"Er zijn geen overeenkomende klanten!",phone_number:"Telefoonnummer",create_date:"Aangemaakt op",confirm_delete:"Deze klant en alle gerelateerde facturen, offertes en betalingen worden permanent verwijderd.\xA0|\xA0Deze klanten en alle gerelateerde facturen, offertes en betalingen worden permanent verwijderd.",created_message:"Klant succesvol aangemaakt",updated_message:"Klant succesvol ge\xFCpdatet",address_updated_message:"Address Information Updated succesfully",deleted_message:"Klant succesvol verwijderd |\xA0Klanten zijn succesvol verwijderd",edit_currency_not_allowed:"Kan valuta niet wijzigen zodra de transacties zijn aangemaakt."},Jp={title:"Artikelen",items_list:"Lijst met items",name:"Naam",unit:"Eenheid",description:"Omschrijving",added_on:"Toegevoegd",price:"Prijs",date_of_creation:"Datum van creatie",not_selected:"Geen item geselecteerd",action:"Actie",add_item:"Voeg item toe",save_item:"Item opslaan",update_item:"Item bijwerken",item:"Artikel |\xA0Artikelen",add_new_item:"Voeg een nieuw item toe",new_item:"Nieuw item",edit_item:"Item bewerken",no_items:"Nog geen items!",list_of_items:"Hier vind je jouw artikelen terug.",select_a_unit:"selecteer eenheid",taxes:"Belastingen",item_attached_message:"Kan een item dat al in gebruik is niet verwijderen",confirm_delete:"U kunt dit item | niet herstellen\xA0U kunt deze items niet herstellen",created_message:"Item succesvol aangemaakt",updated_message:"Item succesvol bijgewerkt",deleted_message:"Item succesvol verwijderd |\xA0Items zijn verwijderd"},Qp={title:"Offertes",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"Offerte |\xA0Offertes",estimates_list:"Lijst met offertes",days:"{dagen} dagen",months:"{months} Maand",years:"{jaar} jaar",all:"Allemaal",paid:"Betaald",unpaid:"Onbetaald",customer:"Klant",ref_no:"Ref Nr.",number:"Aantal",amount_due:"Bedrag",partially_paid:"Gedeeltelijk betaald",total:"Totaal",discount:"Korting",sub_total:"Subtotaal",estimate_number:"Offerte nummer",ref_number:"Referentie nummer",contact:"Contact",add_item:"Voeg een item toe",date:"Datum",due_date:"Vervaldatum",expiry_date:"Vervaldatum",status:"Status",add_tax:"Belasting toevoegen",amount:"Bedrag",action:"Actie",notes:"Opmerkingen",tax:"Belasting",estimate_template:"Sjabloon",convert_to_invoice:"Converteren naar factuur",mark_as_sent:"Markeren als verzonden",send_estimate:"Verzend offerte",resend_estimate:"Offerte opnieuw verzenden",record_payment:"Betaling registreren",add_estimate:"Offerte toevoegen",save_estimate:"Bewaar offerte",confirm_conversion:"Deze offerte wordt gebruikt om een nieuwe factuur te maken.",conversion_message:"Factuur gemaakt",confirm_send_estimate:"Deze offerte wordt via e-mail naar de klant gestuurd",confirm_mark_as_sent:"Deze offerte wordt gemarkeerd als verzonden",confirm_mark_as_accepted:"Deze offerte wordt gemarkeerd als Geaccepteerd",confirm_mark_as_rejected:"Deze offerte wordt gemarkeerd als Afgewezen",no_matching_estimates:"Er zijn geen overeenkomende offertes!",mark_as_sent_successfully:"Offerte gemarkeerd als succesvol verzonden",send_estimate_successfully:"Offerte succesvol verzonden",errors:{required:"Veld is vereist"},accepted:"Geaccepteerd",rejected:"Afgewezen",expired:"Expired",sent:"Verzonden",draft:"Concept",viewed:"Viewed",declined:"Geweigerd",new_estimate:"Nieuwe offerte",add_new_estimate:"Offerte toevoegen",update_Estimate:"Offerte bijwerken",edit_estimate:"Offerte bewerken",items:"artikelen",Estimate:"Offerte |\xA0Offertes",add_new_tax:"Nieuwe belasting toevoegen",no_estimates:"Nog geen offertes!",list_of_estimates:"Hier vind je jouw offertes terug.",mark_as_rejected:"Markeer als afgewezen",mark_as_accepted:"Markeer als geaccepteerd",marked_as_accepted_message:"Offerte gemarkeerd als geaccepteerd",marked_as_rejected_message:"Offerte gemarkeerd als afgewezen",confirm_delete:"U kunt deze offerte | niet herstellen\xA0U kunt deze offertes niet herstellen",created_message:"Offerte is gemaakt",updated_message:"Offerte succesvol bijgewerkt",deleted_message:"Offerte succesvol verwijderd |\xA0Offertes zijn succesvol verwijderd",something_went_wrong:"Er is iets fout gegaan",item:{title:"Titel van het item",description:"Omschrijving",quantity:"Aantal stuks",price:"Prijs",discount:"Korting",total:"Totaal",total_discount:"Totale korting",sub_total:"Subtotaal",tax:"Belasting",amount:"Bedrag",select_an_item:"Typ of klik om een item te selecteren",type_item_description:"Type Item Beschrijving (optioneel)"}},Xp={title:"Facturen",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"Facturenlijst",invoice_information:"Invoice Information",days:"{dagen} dagen",months:"{months} Maand",years:"{jaar} jaar",all:"Allemaal",paid:"Betaald",unpaid:"Onbetaald",viewed:"Bekeken",overdue:"Over tijd",completed:"Voltooid",customer:"Klant",paid_status:"Betaling",ref_no:"REF NR.",number:"AANTAL",amount_due:"BEDRAG",partially_paid:"Gedeeltelijk betaald",total:"Totaal",discount:"Korting",sub_total:"Subtotaal",invoice:"Factuur |\xA0Facturen",invoice_number:"Factuurnummer",ref_number:"Referentie nummer",contact:"Contact",add_item:"Voeg een item toe",date:"Datum",due_date:"Vervaldatum",status:"Status",add_tax:"Belasting toevoegen",amount:"Bedrag",action:"Actie",notes:"Opmerkingen",view:"Bekijken",send_invoice:"Factuur verzenden",resend_invoice:"Factuur opnieuw verzenden",invoice_template:"Factuursjabloon",conversion_message:"Factuur succesvol gekloond",template:"Sjabloon",mark_as_sent:"Markeer als verzonden",confirm_send_invoice:"Deze factuur wordt via e-mail naar de klant gestuurd",invoice_mark_as_sent:"Deze factuur wordt gemarkeerd als verzonden",confirm_mark_as_accepted:"Deze offerte wordt gemarkeerd als Geaccepteerd",confirm_mark_as_rejected:"Deze factuur wordt gemarkeerd als Afgewezen",confirm_send:"Deze factuur wordt via e-mail naar de klant gestuurd",invoice_date:"Factuur datum",record_payment:"Betaling registreren",add_new_invoice:"Nieuwe factuur toevoegen",update_expense:"Onkosten bijwerken",edit_invoice:"Factuur bewerken",new_invoice:"Nieuwe factuur",save_invoice:"Factuur opslaan",update_invoice:"Factuur bijwerken",add_new_tax:"Nieuwe belasting toevoegen",no_invoices:"Nog geen facturen!",mark_as_rejected:"Markeer als afgewezen",mark_as_accepted:"Markeer als geaccepteerd",list_of_invoices:"Hier vind je jouw facturen terug.",select_invoice:"Selecteer Factuur",no_matching_invoices:"Er zijn geen overeenkomende facturen!",mark_as_sent_successfully:"Factuur gemarkeerd als succesvol verzonden",invoice_sent_successfully:"Factuur succesvol verzonden",cloned_successfully:"Factuur succesvol gekloond",clone_invoice:"Factuur klonen",confirm_clone:"Deze factuur wordt gekloond in een nieuwe factuur",item:{title:"Titel van het item",description:"Omschrijving",quantity:"Aantal stuks",price:"Prijs",discount:"Korting",total:"Totaal",total_discount:"Totale korting",sub_total:"Subtotaal",tax:"Belasting",amount:"Bedrag",select_an_item:"Typ of klik om een item te selecteren",type_item_description:"Type Item Beschrijving (optioneel)"},payment_attached_message:"Aan een van de geselecteerde facturen is al een betaling gekoppeld.\xA0Zorg ervoor dat u eerst de bijgevoegde betalingen verwijdert om door te gaan met de verwijdering",confirm_delete:"Deze factuur wordt permanent verwijderd |\xA0Deze facturen worden permanent verwijderd",created_message:"Factuur succesvol aangemaakt",updated_message:"Factuur succesvol bijgewerkt",deleted_message:"Factuur succesvol verwijderd |\xA0Facturen succesvol verwijderd",marked_as_sent_message:"Factuur gemarkeerd als succesvol verzonden",something_went_wrong:"Er is iets fout gegaan",invalid_due_amount_message:"Het totale factuurbedrag mag niet lager zijn dan het totale betaalde bedrag voor deze factuur.\xA0Werk de factuur bij of verwijder de bijbehorende betalingen om door te gaan."},eg={title:"Periodieke facturen",invoices_list:"Periodieke facturen lijst",days:"{days} dagen",months:"{months} maanden",years:"{years} jaar",all:"Alles",paid:"Betaald",unpaid:"Onbetaald",viewed:"Bekeken",overdue:"Achterstallig",active:"Actief",completed:"Voltooid",customer:"KLANT",paid_status:"BETAALD STATUS",ref_no:"REF NR.",number:"NUMMER",amount_due:"Bedrag",partially_paid:"Gedeeltelijk betaald",total:"Totaal",discount:"Korting",sub_total:"Subtotaal",invoice:"Periodieke factuur / Periodieke facturen",invoice_number:"Periodieke facturen",next_invoice_date:"Volgende factuurdatum",ref_number:"Referentie nummer",contact:"Contact",add_item:"Item toevoegen",date:"Datum",limit_by:"Beperken door",limit_date:"Uiterste datum",limit_count:"Limiet aantal",count:"Aantal",status:"Status",select_a_status:"Selecteer een status",working:"Bezig",on_hold:"Niet actief",complete:"Voltooid",add_tax:"Belasting toevoegen",amount:"Bedrag",action:"Actie",notes:"Opmerkingen",view:"Bekijken",basic_info:"Basis informatie",send_invoice:"Verstuur periodieke factuur",auto_send:"Automatisch verzenden",resend_invoice:"Verstuur periodieke factuur opnieuw",invoice_template:"Periodieke factuur sjabloon",conversion_message:"Periodieke factuur succesvol gekopieerd",template:"Sjabloon",mark_as_sent:"Markeer als verzonden",confirm_send_invoice:"Deze periodieke factuur wordt via e-mail naar de klant gestuurd",invoice_mark_as_sent:"Deze periodieke factuur wordt gemarkeerd als verzonden",confirm_send:"Deze terugkerende factuur wordt via e-mail naar de klant gestuurd",starts_at:"Startdatum",due_date:"Vervaldatum factuur",record_payment:"Betaling registreren",add_new_invoice:"Nieuwe periodieke factuur toevoegen",update_expense:"Onkosten bijwerken",edit_invoice:"Periodieke factuur bewerken",new_invoice:"Nieuwe periodieke factuur toevoegen",send_automatically:"Automatisch verzenden",send_automatically_desc:"Schakel dit in als u de factuur automatisch aan de klant wilt sturen wanneer deze is aangemaakt.",save_invoice:"Bewaar periodieke factuur",update_invoice:"Periodieke factuur bewerken",add_new_tax:"Nieuwe btw toevoegen",no_invoices:"Nog geen periodieke facturen!",mark_as_rejected:"Markeer als afgewezen",mark_as_accepted:"Markeer als geaccepteerd",list_of_invoices:"Hier vind je de periodieke facturen terug.",select_invoice:"Selecteer Factuur",no_matching_invoices:"Er zijn geen overeenkomende periodieke facturen!",mark_as_sent_successfully:"Periodieke factuur gemarkeerd als succesvol verzonden",invoice_sent_successfully:"Periodieke factuur succesvol verzonden",cloned_successfully:"Terugkerende factuur succesvol gekopieerd",clone_invoice:"Kopieer periodieke factuur",confirm_clone:"Deze periodieke factuur wordt gekopieerd naar een nieuwe periodieke factuur",item:{title:"Item titel",description:"Beschrijving",quantity:"Aantal",price:"Prijs",discount:"Korting",total:"Totaal",total_discount:"Totale korting",sub_total:"Subtotaal",tax:"Btw",amount:"Bedrag",select_an_item:"Typ of klik om een item te selecteren",type_item_description:"Type item beschrijving (optioneel)"},frequency:{title:"Frequentie",select_frequency:"Frequentie selecteren",minute:"Minuut",hour:"Uur",day_month:"Dag van de maand",month:"Maand",day_week:"Dag van de week"},confirm_delete:"Deze factuur wordt permanent verwijderd |\xA0Deze facturen worden permanent verwijderd",created_message:"Terugkerende factuur succesvol gecre\xEBerd",updated_message:"Terugkerende factuur succesvol bijgewerkt",deleted_message:"Periodieke factuur succesvol verwijderd |\xA0Periodieke facturen succesvol verwijderd",marked_as_sent_message:"Periodieke factuur gemarkeerd als succesvol verzonden",user_email_does_not_exist:"E-mailadres van gebruiker bestaat niet",something_went_wrong:"er is iets fout gegaan",invalid_due_amount_message:"Het totale factuurbedrag mag niet lager zijn dan het totale betaalde bedrag voor deze factuur.\xA0Werk de factuur bij of verwijder de bijbehorende betalingen om door te gaan."},tg={title:"Betalingen",payments_list:"Betalingslijst",record_payment:"Bestaling registreren",customer:"Klant",date:"Datum",amount:"Bedrag",action:"Actie",payment_number:"Betalingsnummer",payment_mode:"Betaalmethode",invoice:"Factuur",note:"Notitie",add_payment:"Betaling toevoegen",new_payment:"Nieuwe betaling",edit_payment:"Betaling bewerken",view_payment:"Bekijk betaling",add_new_payment:"Nieuwe betaling toevoegen",send_payment_receipt:"Betaalbewijs verzenden",send_payment:"Verstuur betaling",save_payment:"Betaling opslaan",update_payment:"Betaling bijwerken",payment:"Betaling |\xA0Betalingen",no_payments:"Nog geen betalingen!",not_selected:"Niet geselecteerd",no_invoice:"Geen factuur",no_matching_payments:"Er zijn geen overeenkomende betalingen!",list_of_payments:"Hier vind je jouw betalingen terug.",select_payment_mode:"Selecteer betalingswijze",confirm_mark_as_sent:"Deze offerte wordt gemarkeerd als verzonden",confirm_send_payment:"Deze betaling wordt via e-mail naar de klant gestuurd",send_payment_successfully:"Betaling succesvol verzonden",something_went_wrong:"Er is iets fout gegaan",confirm_delete:"Deze betaling wordt permanent verwijderd |\xA0Deze betalingen worden permanent verwijderd",created_message:"De betaling is succesvol aangemaakt",updated_message:"Betaling succesvol bijgewerkt",deleted_message:"Betaling succesvol verwijderd |\xA0Betalingen zijn verwijderd",invalid_amount_message:"Het bedrag van de betaling is ongeldig"},ag={title:"Uitgaven",expenses_list:"Uitgavenlijst",select_a_customer:"Selecteer een klant",expense_title:"Titel",customer:"Klant",currency:"Valuta",contact:"Contact",category:"Categorie",from_date:"Van datum",to_date:"Tot datum",expense_date:"Datum",description:"Omschrijving",receipt:"Bon",amount:"Bedrag",action:"Actie",not_selected:"Niet geselecteerd",note:"Notitie",category_id:"Categorie ID",date:"Uitgavendatum",add_expense:"Kosten toevoegen",add_new_expense:"Kosten toevoegen",save_expense:"Kosten opslaan",update_expense:"Onkosten bijwerken",download_receipt:"Ontvangstbewijs downloaden",edit_expense:"Uitgaven bewerken",new_expense:"Kosten toevoegen",expense:"Uitgaven |\xA0Uitgaven",no_expenses:"Nog geen kosten!",list_of_expenses:"Hier vind je jouw uitgaven terug.",confirm_delete:"Deze uitgave wordt permanent verwijderd | Deze kosten worden permanent verwijderd",created_message:"Kosten succesvol gemaakt",updated_message:"Kosten succesvol bijgewerkt",deleted_message:"Kosten succesvol verwijderd |\xA0Uitgaven zijn verwijderd",categories:{categories_list:"Categorie\xEBnlijst",title:"Titel",name:"Naam",description:"Omschrijving",amount:"Bedrag",actions:"Acties",add_category:"categorie toevoegen",new_category:"Nieuwe categorie",category:"Categorie |\xA0Categorie\xEBn",select_a_category:"Selecteer een categorie"}},ig={email:"E-mail",password:"Wachtwoord",forgot_password:"Wachtwoord vergeten?",or_signIn_with:"of Log in met",login:"Log in",register:"Registreren",reset_password:"Wachtwoord opnieuw instellen",password_reset_successfully:"Wachtwoord opnieuw ingesteld",enter_email:"Voer email in",enter_password:"Voer wachtwoord in",retype_password:"Geef nogmaals het wachtwoord"},ng={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},sg={title:"Gebruikers",users_list:"Gebruikerslijst",name:"Naam",description:"Omschrijving",added_on:"Toegevoegd",date_of_creation:"Datum van creatie",action:"Actie",add_user:"Gebruiker toevoegen",save_user:"Gebruiker opslaan",update_user:"Gebruiker bijwerken",user:"Gebruiker | Gebruikers",add_new_user:"Nieuwe gebruiker toevoegen",new_user:"Nieuwe gebruiker",edit_user:"Gebruiker bewerken",no_users:"Nog geen gebruikers!",list_of_users:"Deze sectie zal de lijst met gebruikers bevatten.",email:"E-mail",phone:"Telefoon",password:"Wachtwoord",user_attached_message:"Kan een item dat al in gebruik is niet verwijderen",confirm_delete:"Je kunt deze gebruiker later niet herstellen | Je kunt deze gebruikers later niet herstellen",created_message:"Gebruiker succesvol aangemaakt",updated_message:"Gebruiker met succes bijgewerkt",deleted_message:"Gebruiker succesvol verwijderd | Gebruikers succesvol verwijderd",select_company_role:"Selecteer rol voor {company}",companies:"Bedrijven"},og={title:"Verslag doen van",from_date:"Van datum",to_date:"Tot datum",status:"Status",paid:"Betaald",unpaid:"Onbetaald",download_pdf:"Download PDF",view_pdf:"Bekijk PDF",update_report:"Rapport bijwerken",report:"Verslag |\xA0Rapporten",profit_loss:{profit_loss:"Verlies",to_date:"Tot datum",from_date:"Van datum",date_range:"Selecteer Datumbereik"},sales:{sales:"Verkoop",date_range:"Selecteer datumbereik",to_date:"Tot datum",from_date:"Van datum",report_type:"Rapporttype"},taxes:{taxes:"Belastingen",to_date:"Tot datum",from_date:"Van datum",date_range:"Selecteer Datumbereik"},errors:{required:"Veld is vereist"},invoices:{invoice:"Factuur",invoice_date:"Factuur datum",due_date:"Vervaldatum",amount:"Bedrag",contact_name:"Contactnaam",status:"Status"},estimates:{estimate:"Offerte",estimate_date:"Offerte Datum",due_date:"Vervaldatum",estimate_number:"Offerte nummer",ref_number:"Referentie nummer",amount:"Bedrag",contact_name:"Contactnaam",status:"Status"},expenses:{expenses:"Uitgaven",category:"Categorie",date:"Datum",amount:"Bedrag",to_date:"Tot datum",from_date:"Van datum",date_range:"Selecteer Datumbereik"}},rg={menu_title:{account_settings:"Account instellingen",company_information:"Bedrijfsinformatie",customization:"Aanpassen",preferences:"Voorkeuren",notifications:"Kennisgevingen",tax_types:"Belastingtypen",expense_category:"Onkostencategorie\xEBn",update_app:"App bijwerken",backup:"Back-up",file_disk:"Bestandsopslag",custom_fields:"Aangepaste velden",payment_modes:"Betaalmethodes",notes:"Opmerkingen",exchange_rate:"Wisselkoers",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"Instellingen",setting:"Instellingen |\xA0Instellingen",general:"Algemeen",language:"Taal",primary_currency:"Primaire valuta",timezone:"Tijdzone",date_format:"Datumnotatie",currencies:{title:"Valuta's",currency:"Valuta |\xA0Valuta's",currencies_list:"Lijst van valuta's",select_currency:"selecteer valuta",name:"Naam",code:"Code",symbol:"Symbool",precision:"Precisie",thousand_separator:"Duizend scheidingsteken",decimal_separator:"Decimaalscheidingsteken",position:"Positie",position_of_symbol:"Positie van symbool",right:"Rechtsaf",left:"Links",action:"Actie",add_currency:"Valuta toevoegen"},mail:{host:"Mail host",port:"Mail Port",driver:"Mail-stuurprogramma",secret:"Geheim",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domein",mailgun_endpoint:"Mailgun-eindpunt",ses_secret:"SES Secret",ses_key:"SES-sleutel",password:"Mail wachtwoord",username:"Mail gebruikersnaam",mail_config:"E-mailconfiguratie",from_name:"Van Mail Name",from_mail:"Van e-mailadres",encryption:"E-mailversleuteling",mail_config_desc:"Hieronder vindt u het formulier voor het configureren van het e-mailstuurprogramma voor het verzenden van e-mails vanuit de app.\xA0U kunt ook externe providers zoals Sendgrid, SES enz. Configureren."},pdf:{title:"PDF-instelling",footer_text:"Voettekst",pdf_layout:"PDF indeling"},company_info:{company_info:"Bedrijfsinfo",company_name:"Bedrijfsnaam",company_logo:"Bedrijfslogo",section_description:"Informatie over uw bedrijf die wordt weergegeven op facturen, offertes en andere documenten die door Crater zijn gemaakt.",phone:"Telefoon",country:"Land",state:"Provincie",city:"Stad",address:"Adres",zip:"Postcode",save:"Opslaan",delete:"Verwijderen",updated_message:"Bedrijfsinformatie succesvol bijgewerkt",delete_company:"Bedrijf verwijderen",delete_company_description:"Zodra u uw bedrijf verwijdert, verliest u alle gegevens en bestanden die eraan gekoppeld zijn.",are_you_absolutely_sure:"Weet u het zeker?",delete_company_modal_desc:"Deze actie kan niet ongedaan worden gemaakt. Dit zal {company} en alle bijbehorende gegevens permanent verwijderen.",delete_company_modal_label:"Typ {company} om te bevestigen"},custom_fields:{title:"Aangepaste velden",section_description:"Uw facturen, offertes & betalingsbewijzen aanpassen met uw eigen velden. Gebruik onderstaande velden op het adres format op de Customization instellings pagina.",add_custom_field:"Extra veld toevoegen",edit_custom_field:"Veld wijzigen",field_name:"Veld naam",label:"Label",type:"Type",name:"Naam",slug:"Slug",required:"Verplicht",placeholder:"Tijdelijke plaatshouder",help_text:"Hulp Text",default_value:"Standaard waarde",prefix:"Voorvoegsel",starting_number:"Startnummer",model:"Model",help_text_description:"Voer tekst in om gebruikers te helpen het doel van dit aangepaste veld te begrijpen.",suffix:"Achtervoegsel",yes:"Ja",no:"Nee",order:"Volgorde",custom_field_confirm_delete:"U kunt dit veld niet herstellen",already_in_use:"Aangepast veld is al in gebruik",deleted_message:"Aangepast veld is succesvol verwijderd",options:"opties",add_option:"Optie toevoegen",add_another_option:"Nog een optie toevoegen",sort_in_alphabetical_order:"Sorteer op alfabetische volgorde",add_options_in_bulk:"Voeg opties toe in bulk",use_predefined_options:"Gebruik voorgedefinieerde opties",select_custom_date:"Selecteer een aangepaste datum",select_relative_date:"Selecteer relatieve datum",ticked_by_default:"Standaard aangevinkt",updated_message:"Aangepast veld is succesvol aangepast",added_message:"Aangepast veld is succesvol toegevoegd",press_enter_to_add:"Druk op Enter om een nieuwe optie toe te voegen",model_in_use:"Kan model niet bijwerken voor velden die al in gebruik zijn.",type_in_use:"Kan type niet bijwerken voor velden die al in gebruik zijn."},customization:{customization:"aanpassen",updated_message:"Bedrijfsinformatie succesvol bijgewerkt",save:"Opslaan",insert_fields:"Velden invoegen",learn_custom_format:"Leer hoe je een aangepast formaat kunt gebruiken",add_new_component:"Component toevoegen",component:"Component",Parameter:"Parameter",series:"Reeksen",series_description:"Om een statische voorvoegsel/postfix zoals 'INV' in uw hele bedrijf in te stellen. Het ondersteunt tekenlengte tot 4 tekens.",series_param_label:"Serie Waarde",delimiter:"Scheidingsteken",delimiter_description:"Enkel teken voor het opgeven van de grens tussen 2 verschillende componenten. Standaard is het ingesteld op -",delimiter_param_label:"Scheidingsteken waarde",date_format:"Datumformaat",date_format_description:"Een lokaal datum- en tijdveld dat een formaatparameter accepteert. Het standaardformaat: 'Y' geeft het huidige jaar weer.",date_format_param_label:"Formaat",sequence:"Volgnummer",sequence_description:"Opeenvolgende nummering voor uw bedrijf. U kunt de lengte opgeven op de aangegeven parameter.",sequence_param_label:"Volgnummerlengte",customer_series:"Voorvoegsel",customer_series_description:"Om een andere voor- of achtervoegsel voor elke klant in te stellen.",customer_sequence:"Klantnummer",customer_sequence_description:"Een volgnummer voor elk van uw klanten.",customer_sequence_param_label:"Klantnummerlengte",random_sequence:"Willekeurige reeks",random_sequence_description:"Willekeurige alfanumerieke tekenreeks. U kunt de lengte opgeven op de aangegeven parameters.",random_sequence_param_label:"Volgnummerlengte",invoices:{title:"Facturen",invoice_number_format:"Factuurnummer indeling",invoice_number_format_description:"Wijzig hoe uw factuurnummer automatisch wordt gegenereerd bij het aanmaken van een nieuwe factuur.",preview_invoice_number:"Voorbeeldweergave factuurnummer indeling",due_date:"Vervaldatum",due_date_description:"Geef aan hoe de vervaldatum automatisch wordt ingesteld wanneer u een factuur aanmaakt.",due_date_days:"Factuur verlopen na dagen",set_due_date_automatically:"Vervaldatum automatisch vullen",set_due_date_automatically_description:"Schakel dit in als u automatisch een vervaldatum wilt instellen wanneer u een nieuwe factuur aanmaakt.",default_formats:"Standaard opmaak",default_formats_description:"Onderstaand formaat wordt gebruikt om de velden automatisch in te vullen bij het aanmaken van facturen.",default_invoice_email_body:"Standaard factuur email text",company_address_format:"Bedrijfsadres format",shipping_address_format:"Verzendadres format",billing_address_format:"Factuuradres format",invoice_email_attachment:"Stuur factuur als bijlage",invoice_email_attachment_setting_description:"Schakel dit in als u facturen als e-mailbijlage wilt verzenden. Houd er rekening mee dat de knop 'Factuur bekijken' in e-mails niet meer wordt weergegeven wanneer deze is ingeschakeld.",invoice_settings_updated:"Factuurinstelling succesvol bijgewerkt",retrospective_edits:"Retrospectieve bewerkingen",allow:"Toestaan",disable_on_invoice_partial_paid:"Uitschakelen nadat gedeeltelijke betaling is opgeslagen",disable_on_invoice_paid:"Uitschakelen nadat volledige betaling is opgenomen",disable_on_invoice_sent:"Uitschakelen nadat factuur is verzonden",retrospective_edits_description:" Op basis van de wetten van uw land of uw voorkeur, kunt u gebruikers beperken om afgeronde facturen te bewerken."},estimates:{title:"Offertes",estimate_number_format:"Offerte nummer formaat",estimate_number_format_description:"Aanpassen hoe uw offertes nummer automatisch wordt gegenereerd als u een nieuwe offerte aanmaakt.",preview_estimate_number:"Voorbeeld offertes nummer",expiry_date:"Vervaldatum",expiry_date_description:"Geef aan hoe de vervaldatum automatisch wordt ingesteld wanneer u een offerte aanmaakt.",expiry_date_days:"Offerte vervalt over dagen",set_expiry_date_automatically:"Automatisch vervaldatum instellen",set_expiry_date_automatically_description:"Schakel dit in als u automatisch de vervaldatum wilt instellen wanneer u een nieuwe schatting maakt.",default_formats:"Standaardformaat",default_formats_description:"Onderstaand formaten wordt gebruikt om de velden automatisch in te vullen bij het aanmaken van offerte.",default_estimate_email_body:"Standaard offerte email text",company_address_format:"Bedrijfsadres format",shipping_address_format:"Verzendadres format",billing_address_format:"Factuuradres Format",estimate_email_attachment:"Stuur offerte als bijlage",estimate_email_attachment_setting_description:"Schakel dit in als u de offertes als e-mailbijlage wilt verzenden. Houd er rekening mee dat de knop 'Bekijk offerte' in e-mails niet meer wordt weergegeven wanneer deze is ingeschakeld.",estimate_settings_updated:"Instelling Offerte succesvol bijgewerkt",convert_estimate_options:"Offerte omzetten actie",convert_estimate_description:"Specificeer wat er gebeurt met de offerte nadat deze omgezet is naar een factuur.",no_action:"Geen handeling",delete_estimate:"Schatting verwijderen",mark_estimate_as_accepted:"Markeren offerte als geaccepteerd"},payments:{title:"Betalingen",payment_number_format:"Betalingnummer formaat",payment_number_format_description:"Aanpassen hoe uw offertes nummer automatisch wordt gegenereerd als u een nieuwe offerte aanmaakt.",preview_payment_number:"Bekijk betalingsnummer",default_formats:"Standaard formaten",default_formats_description:"Onderstaande formaten worden gebruikt om de velden automatisch in te vullen bij het maken van betalingen.",default_payment_email_body:"Standaard format betalingsmail",company_address_format:"Bedrijfsadres format",from_customer_address_format:"Van klant adres formaat",payment_email_attachment:"Stuur betaalbewijs als bijlage",payment_email_attachment_setting_description:"Schakel dit in als u de betalingsbewijzen als e-mailbijlage wilt verzenden. Houd er rekening mee dat de knop 'Betaling bekijken' in e-mails niet meer wordt weergegeven wanneer deze is ingeschakeld.",payment_settings_updated:"Betalingsinstelling ge\xFCpdatet"},items:{title:"Artikelen",units:"eenheden",add_item_unit:"Itemeenheid toevoegen",edit_item_unit:"Itemeenheid bewerken",unit_name:"Naam eenheid",item_unit_added:"Item Eenheid toegevoegd",item_unit_updated:"Artikeleenheid bijgewerkt",item_unit_confirm_delete:"U kunt dit item niet terughalen",already_in_use:"Item Unit is al in gebruik",deleted_message:"Artikeleenheid succesvol verwijderd"},notes:{title:"Opmerkingen",description:"Bespaar tijd door notities te maken en ze opnieuw te gebruiken op uw facturen, ramingen en betalingen.",notes:"Opmerkingen",type:"Type",add_note:"Notitie toevoegen",add_new_note:"Voeg een nieuwe notitie toe",name:"Naam",edit_note:"Notitie bewerken",note_added:"Notitie toegevoegd",note_updated:"Notitie bijgewerkt",note_confirm_delete:"U kunt deze notitie niet terughalen",already_in_use:"Notitie is reeds in gebruik",deleted_message:"Notitie verwijderd"}},account_settings:{profile_picture:"Profielfoto",name:"Naam",email:"E-mail",password:"Wachtwoord",confirm_password:"bevestig wachtwoord",account_settings:"Account instellingen",save:"Opslaan",section_description:"U kunt uw naam, e-mailadres en wachtwoord bijwerken via onderstaand formulier.",updated_message:"Accountinstellingen succesvol bijgewerkt"},user_profile:{name:"Naam",email:"E-mail",password:"Wachtwoord",confirm_password:"Bevestig wachtwoord"},notification:{title:"Kennisgeving",email:"Stuur meldingen naar",description:"Welke e-mailmeldingen wilt u ontvangen als er iets verandert?",invoice_viewed:"Factuur bekeken",invoice_viewed_desc:"Wanneer uw klant de factuur bekijkt die via het kraterdashboard is verzonden.",estimate_viewed:"Offerte bekeken",estimate_viewed_desc:"Wanneer uw klant de offerte bekijkt die via het kraterdashboard is verzonden.",save:"Opslaan",email_save_message:"E-mail succesvol opgeslagen",please_enter_email:"Voer e-mailadres in"},roles:{title:"Rollen",description:"Beheer de rollen en machtigingen van dit bedrijf",save:"Opslaan",add_new_role:"Nieuwe rol toevoegen",role_name:"Rol naam",added_on:"Toegevoegd op",add_role:"Rol toevoegen",edit_role:"Rol bewerken",name:"Naam",permission:"Machtiging Machtigingen",select_all:"Selecteer alles",none:"Geen",confirm_delete:"Dit rol wordt permanent verwijderd",created_message:"Rol succesvol gemaakt",updated_message:"Rol succesvol bijgewerkt",deleted_message:"Rol succesvol verwijderd",already_in_use:"Rol is reeds in gebruik"},exchange_rate:{exchange_rate:"Wisselkoers",title:"Problemen met wisselkoersen oplossen",description:"Voer de wisselkoers in van alle onderstaande valuta's om Crater te helpen de bedragen in {currency} goed te berekenen.",drivers:"Stuurprogramma 's",new_driver:"Voeg nieuwe provider toe",edit_driver:"Provider bewerken",select_driver:"Selecteer stuurprogramma",update:"selecteer wisselkoers ",providers_description:"Configureer hier uw wisselkoersaanbieders om de laatste wisselkoers voor transacties automatisch op te halen.",key:"API sleutel",name:"Naam",driver:"Stuurprogramma",is_default:"IS STANDAARD",currency:"Valuta's",exchange_rate_confirm_delete:"Dit stuurprogramma wordt permanent verwijderd",created_message:"Provider succesvol aangemaakt",updated_message:"Provider succesvol bijgewerkt",deleted_message:"Provider succesvol verwijderd",error:" U kunt de actieve stuurprogramma niet verwijderen",default_currency_error:"Deze valuta wordt al gebruikt in een van de Actieve Provider",exchange_help_text:"Voer de wisselkoers in om te converteren van {currency} naar {baseCurrency}",currency_freak:"Valuta Freak",currency_layer:"Currency Layer",open_exchange_rate:"Open Exchange Rate",currency_converter:"Valuta omzetter",server:"Server",url:"URL",active:"Actief",currency_help_text:"This provider will only be used on above selected currencies",currency_in_used:"The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again."},tax_types:{title:"Belastingtypen",add_tax:"Belasting toevoegen",edit_tax:"Belasting bewerken",description:"U kunt naar believen belastingen toevoegen of verwijderen.\xA0Crater ondersteunt belastingen op individuele items en op de factuur.",add_new_tax:"Nieuwe belasting toevoegen",tax_settings:"Belastinginstellingen",tax_per_item:"Belasting per item",tax_name:"Belastingnaam",compound_tax:"Samengestelde belasting",percent:"Procent",action:"Actie",tax_setting_description:"Schakel dit in als u belastingen wilt toevoegen aan afzonderlijke factuuritems.\xA0Standaard worden belastingen rechtstreeks aan de factuur toegevoegd.",created_message:"Belastingtype is gemaakt",updated_message:"Belastingtype succesvol bijgewerkt",deleted_message:"Belastingtype succesvol verwijderd",confirm_delete:"Dit belastingtype wordt permanent verwijderd",already_in_use:"Belasting al in gebruik"},payment_modes:{title:"Betaalmethodes",description:"Modes of transaction for payments",add_payment_mode:"Add Payment Mode",edit_payment_mode:"Edit Payment Mode",mode_name:"Mode Name",payment_mode_added:"Betaalwijze toegevoegd",payment_mode_updated:"Payment Mode Updated",payment_mode_confirm_delete:"You will not be able to recover this Payment Mode",already_in_use:"Payment Mode is already in use",deleted_message:"Payment Mode deleted successfully"},expense_category:{title:"Onkostencategorie\xEBn",action:"Actie",description:"Categorie\xEBn zijn vereist voor het toevoegen van onkostenposten.\xA0U kunt deze categorie\xEBn naar wens toevoegen of verwijderen.",add_new_category:"Voeg een nieuwe categorie toe",add_category:"categorie toevoegen",edit_category:"Categorie bewerken",category_name:"categorie naam",category_description:"Omschrijving",created_message:"Onkostencategorie succesvol aangemaakt",deleted_message:"Uitgavencategorie is verwijderd",updated_message:"Uitgavencategorie is bijgewerkt",confirm_delete:"U kunt deze uitgavencategorie niet herstellen",already_in_use:"Categorie al in gebruik"},preferences:{currency:"Valuta",default_language:"Standaard taal",time_zone:"Tijdzone",fiscal_year:"Financieel jaar",date_format:"Datumnotatie",discount_setting:"Kortingsinstelling",discount_per_item:"Korting per item",discount_setting_description:"Schakel dit in als u korting wilt toevoegen aan afzonderlijke factuuritems.\xA0Standaard wordt korting rechtstreeks aan de factuur toegevoegd.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"Opslaan",preference:"Voorkeur |\xA0Voorkeuren",general_settings:"Standaardvoorkeuren voor het systeem.",updated_message:"Voorkeuren succesvol bijgewerkt",select_language:"Selecteer taal",select_time_zone:"Selecteer Tijdzone",select_date_format:"Selecteer datum/tijdindeling",select_financial_year:"Selecteer financieel ja",recurring_invoice_status:"Recurring Invoice Status",create_status:"Create Status",active:"Active",on_hold:"In wacht",update_status:"Updatestatus",completed:"Voltooid",company_currency_unchangeable:"Bedrijfsvaluta kan niet worden gewijzigd"},update_app:{title:"App bijwerken",description:"U kunt Crater eenvoudig bijwerken door te controleren op een nieuwe update door op de onderstaande knop te klikken",check_update:"Controleer op updates",avail_update:"Nieuwe update beschikbaar",next_version:"Volgende versie",requirements:"Vereisten",update:"Nu updaten",update_progress:"Update wordt uitgevoerd...",progress_text:"Het duurt maar een paar minuten.\xA0Vernieuw het scherm niet en sluit het venster niet voordat de update is voltooid",update_success:"App is bijgewerkt!\xA0Een ogenblik geduld, uw browservenster wordt automatisch opnieuw geladen.",latest_message:"Geen update beschikbaar!\xA0U gebruikt de nieuwste versie.",current_version:"Huidige versie",download_zip_file:"Download ZIP-bestand",unzipping_package:"Pakket uitpakken",copying_files:"Bestanden kopi\xEBren",deleting_files:"Ongebruikte bestanden verwijderen",running_migrations:"Migraties uitvoeren",finishing_update:"Afwerking Update",update_failed:"Update mislukt",update_failed_text:"Sorry!\xA0Je update is mislukt op: {step} step ",update_warning:"All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating."},backup:{title:"Backup | Backups",description:"De back-up is een zipfile met alle bestanden in de mappen die je opgeeft samen met een dump van je database",new_backup:"Nieuwe back-up",create_backup:"Backup maken",select_backup_type:"Backup-type selecteren",backup_confirm_delete:"U kunt deze back-up niet terughalen",path:"pad",new_disk:"Nieuwe schijf",created_at:"aangemaakt op",size:"grootte",dropbox:"dropbox",local:"lokaal",healthy:"gezond",amount_of_backups:"aantal back-ups",newest_backups:"nieuwste back-ups",used_storage:"gebruikte opslag",select_disk:"Selecteer Disk",action:"Actie",deleted_message:"Back-up is succesvol verwijderd",created_message:"Back-up successvol gemaakt",invalid_disk_credentials:"Ongeldige inloggegevens voor geselecteerde schijf"},disk:{title:"Bestandsschijf | Bestandsschijven",description:"Standaard gebruikt Crater uw lokale schijf om back-ups, avatars en andere afbeeldingen op te slaan. U kunt indien gewenst meer dan \xE9\xE9n opslaglocatie configureren zoals DigitalOcean, S3 en Dropbox.",created_at:"aangemaakt op",dropbox:"dropbox",name:"Naam",driver:"Stuurprogramma",disk_type:"Type",disk_name:"Naam van de schijf",new_disk:"Nieuwe schijf toevoegen",filesystem_driver:"Bestandssysteem locatie",local_driver:"lokaal besturingsprogramma",local_root:"locale schijf",public_driver:"Publiek besturingsprogramma",public_root:"Openbare schijf",public_url:"Publieke URL",public_visibility:"Publieke zichtbaarheid",media_driver:"Media stuurprogramma",media_root:"Media schijf",aws_driver:"AWS Stuurprogramma",aws_key:"AWS Sleutel",aws_secret:"AWS Secret",aws_region:"AWS Regio",aws_bucket:"AWS Bucket",aws_root:"AWS Root",do_spaces_type:"Do Spaces type",do_spaces_key:"Do Spaces Key",do_spaces_secret:"Do Spaces Secret",do_spaces_region:"Do Spaces Regio",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Dropbox Type",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Key",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Standaard stuurprogramma",is_default:"IS STANDAARD",set_default_disk:"Standaardschijf instellen",set_default_disk_confirm:"Deze schijf zal als standaard worden ingesteld en alle nieuwe PDF's worden opgeslagen op deze schijf",success_set_default_disk:"Standaardschijf ingesteld",save_pdf_to_disk:"PDF's opslaan op schijf",disk_setting_description:" Schakel dit in als je een kopie van elke factuur, raming en betalingsbewijs automatisch op je standaard schijf wilt opslaan. Het inschakelen van deze optie zal de laadtijd verminderen wanneer de PDF's worden bekeken.",select_disk:"Selecteer Schijf",disk_settings:"Schijfinstellingen",confirm_delete:"Uw bestaande bestanden en mappen in de opgegeven schijf worden niet be\xEFnvloed, maar uw schijfconfiguratie wordt uit Crater verwijderd",action:"Actie",edit_file_disk:"Bestandsschijf bewerken",success_create:"Schijf toegevoegd",success_update:"Schijf bijgewerkt",error:"Schijf niet toegevoegd",deleted_message:"Bestandsschijf verwijderd",disk_variables_save_successfully:"Schijf geconfigureerd",disk_variables_save_error:"Schijfconfiguratie mislukt.",invalid_disk_credentials:"Ongeldige inloggegevens voor geselecteerde schijf"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},dg={account_info:"Account Informatie",account_info_desc:"Onderstaande gegevens worden gebruikt om het hoofdbeheerdersaccount te maken.\xA0Ook kunt u de gegevens op elk moment wijzigen na inloggen.",name:"Naam",email:"E-mail",password:"Wachtwoord",confirm_password:"bevestig wachtwoord",save_cont:"Opslaan doorgaan",company_info:"Bedrijfsinformatie",company_info_desc:"Deze informatie wordt weergegeven op facturen.\xA0Merk op dat u dit later op de instellingenpagina kunt bewerken.",company_name:"Bedrijfsnaam",company_logo:"Bedrijfslogo",logo_preview:"Logo Voorbeeld",preferences:"Voorkeuren",preferences_desc:"Standaardvoorkeuren voor het systeem.",currency_set_alert:"The company's currency cannot be changed later.",country:"Land",state:"Provincie",city:"Stad",address:"Adres",street:"Straat1 |\xA0Straat # 2",phone:"Telefoon",zip_code:"Postcode",go_back:"Ga terug",currency:"Valuta",language:"Taal",time_zone:"Tijdzone",fiscal_year:"Financieel jaar",date_format:"Datumnotatie",from_address:"Van adres",username:"Gebruikersnaam",next:"De volgende",continue:"Doorgaan met",skip:"Overslaan",database:{database:"Site-URL en database",connection:"Database verbinding",host:"Database host",port:"Databasepoort",password:"Database wachtwoord",app_url:"App-URL",app_domain:"App Domein",username:"Database gebruikersnaam",db_name:"Database naam",db_path:"Databankpad",desc:"Maak een database op uw server en stel de referenties in via het onderstaande formulier."},permissions:{permissions:"Rechten",permission_confirm_title:"Weet je zeker dat je door wilt gaan?",permission_confirm_desc:"Controle van maprechten is mislukt",permission_desc:"Hieronder vindt u de lijst met mapmachtigingen die vereist zijn om de app te laten werken.\xA0Als de machtigingscontrole mislukt, moet u de mapmachtigingen bijwerken."},verify_domain:{title:"Menselijke Verificatie",desc:"Crater maakt gebruik van sessie gebaseerde authenticatie die domeinverificatie vereist voor veiligheidsdoeleinden. Voer het domein in waarop u toegang zult krijgen tot uw webapplicatie.",app_domain:"App Domein",verify_now:"Nu verifi\xEBren",success:"E-mailadres succesvol geverifieerd.",failed:"Domain verification failed. Please enter valid domain name.",verify_and_continue:"Verifi\xEBren en doorgaan"},mail:{host:"E-mail server",port:"E-mail Poort",driver:"Mail-stuurprogramma",secret:"Geheim",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domein",mailgun_endpoint:"Mailgun-eindpunt",ses_secret:"SES Secret",ses_key:"SES-sleutel",password:"Mail wachtwoord",username:"Mail gebruikersnaam",mail_config:"E-mailconfiguratie",from_name:"Van Mail Name",from_mail:"Van e-mailadres",encryption:"E-mailversleuteling",mail_config_desc:"Hieronder vindt u het formulier voor het configureren van het e-mailstuurprogramma voor het verzenden van e-mails vanuit de app.\xA0U kunt ook externe providers zoals Sendgrid, SES enz. Configureren."},req:{system_req:"systeem vereisten",php_req_version:"PHP (versie {versie} vereist))",check_req:"Controleer vereisten",system_req_desc:"Crater heeft een paar serververeisten.\xA0Zorg ervoor dat uw server de vereiste php-versie heeft en alle onderstaande extensies."},errors:{migrate_failed:"Migreren mislukt",database_variables_save_error:"Kan configuratie niet schrijven naar .env-bestand.\xA0Controleer de bestandsrechten",mail_variables_save_error:"E-mailconfiguratie is mislukt.",connection_failed:"Databaseverbinding mislukt",database_should_be_empty:"Database moet leeg zijn"},success:{mail_variables_save_successfully:"E-mail succesvol geconfigureerd",database_variables_save_successfully:"Database succesvol geconfigureerd."}},lg={invalid_phone:"Ongeldig Telefoonnummer",invalid_url:"Ongeldige URL (bijvoorbeeld: http://www.crater.com))",invalid_domain_url:"Ongeldige URL (bijvoorbeeld: crater.com))",required:"Veld is verplicht",email_incorrect:"Incorrecte Email.",email_already_taken:"De email is al in gebruik.",email_does_not_exist:"Gebruiker met opgegeven e-mailadres bestaat niet",item_unit_already_taken:"De naam van dit item is al in gebruik",payment_mode_already_taken:"Deze naam voor de betalingsmodus is al in gebruik",send_reset_link:"Stuur resetlink",not_yet:"Nog niet?\xA0Stuur het opnieuw",password_min_length:"Wachtwoord moet {count} tekens bevatten",name_min_length:"Naam moet minimaal {count} letters bevatten.",prefix_min_length:"Prefix must have at least {count} letters.",enter_valid_tax_rate:"Voer een geldig belastingtarief in",numbers_only:"Alleen nummers.",characters_only:"Alleen tekens.",password_incorrect:"Wachtwoorden moeten identiek zijn",password_length:"Wachtwoord moet {count} tekens lang zijn.",qty_must_greater_than_zero:"Hoeveelheid moet groter zijn dan nul.",price_greater_than_zero:"Prijs moet groter zijn dan nul.",payment_greater_than_zero:"De betaling moet hoger zijn dan nul.",payment_greater_than_due_amount:"Ingevoerde betaling is meer dan het openstaande bedrag van deze factuur.",quantity_maxlength:"Het aantal mag niet groter zijn dan 20 cijfers.",price_maxlength:"Prijs mag niet groter zijn dan 20 cijfers.",price_minvalue:"Prijs moet hoger zijn dan 0.",amount_maxlength:"Bedrag mag niet groter zijn dan 20 cijfers.",amount_minvalue:"Bedrag moet groter zijn dan 0.",discount_maxlength:"Discount should not be greater than max discount",description_maxlength:"De beschrijving mag niet meer dan 255 tekens bevatten.",subject_maxlength:"Het onderwerp mag niet meer dan 100 tekens bevatten.",message_maxlength:"Bericht mag niet groter zijn dan 255 tekens.",maximum_options_error:"Maximaal {max} opties geselecteerd.\xA0Verwijder eerst een geselecteerde optie om een andere te selecteren.",notes_maxlength:"Notities mogen niet langer zijn dan 255 tekens.",address_maxlength:"Adres mag niet groter zijn dan 255 tekens.",ref_number_maxlength:"Ref-nummer mag niet groter zijn dan 255 tekens.",prefix_maxlength:"Het voorvoegsel mag niet meer dan 5 tekens bevatten.",something_went_wrong:"Er is iets fout gegaan",number_length_minvalue:"Het getal moet groter zijn dan 0",at_least_one_ability:"Please select atleast one Permission.",valid_driver_key:"Please enter a valid {driver} key.",valid_exchange_rate:"Please enter a valid exchange rate.",company_name_not_same:"Bedrijfsnaam moet overeenkomen met de opgegeven naam."},cg={starter_plan:"Deze functie is beschikbaar vanaf het Starter abonnement!",invalid_provider_key:"Voer een geldige API-sleutel in.",estimate_number_used:"Dit offertenummer is reeds in gebruik.",invoice_number_used:"Dit factuurnummer is reeds in gebruik.",payment_attached:"This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.",payment_number_used:"Dit factuurnummer is reeds in gebruik.",name_already_taken:"Deze naam is reeds in gebruik.",receipt_does_not_exist:"Receipt does not exist.",customer_cannot_be_changed_after_payment_is_added:"Customer cannot be change after payment is added",invalid_credentials:"Inloggegevens ongeldig.",not_allowed:"Niet toegestaan",login_invalid_credentials:"Deze gegevens zijn niet correct.",enter_valid_cron_format:"Please enter a valid cron format",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},_g="Offerte",ug="Offerte nummer",mg="Offerte Datum",pg="Vervaldatum",gg="Factuur",fg="Factuurnummer",vg="Factuur datum",hg="Vervaldatum",yg="Opmerkingen",bg="Artikelen",kg="Aantal stuks",wg="Prijs",xg="Korting",zg="Bedrag",Sg="Subtotaal",Pg="Totaal",jg="Betaling",Ag="Betalingsafschrift",Dg="Betalingsdatum",Cg="Betalingsnummer",Eg="Betaalmethode",Ig="Ontvangen bedrag",Ng="UITGAVEN RAPPORT",Tg="TOTALE UITGAVEN",Rg="WINST & VERLIES RAPPORT",Mg="Klant verkoop rapport",Fg="Artikel verkooprapport",$g="Belastingoverzicht",Ug="INKOMEN",Vg="NETTO WINST",Og="Verkooprapport: per klant",Lg="TOTALE VERKOPEN",Bg="Verkooprapport: Per Item",qg="BELASTINGEN RAPPORT",Kg="TOTALE BELASTINGEN",Wg="Belastingtypen",Zg="Uitgaven",Hg="Rekening naar,",Yg="Verzend naar,",Gg="Ontvangen van:",Jg="Btw";var Qg={navigation:Bp,general:qp,dashboard:Kp,tax_types:Wp,global_search:Zp,company_switcher:Hp,dateRange:Yp,customers:Gp,items:Jp,estimates:Qp,invoices:Xp,recurring_invoices:eg,payments:tg,expenses:ag,login:ig,modules:ng,users:sg,reports:og,settings:rg,wizard:dg,validation:lg,errors:cg,pdf_estimate_label:_g,pdf_estimate_number:ug,pdf_estimate_date:mg,pdf_estimate_expire_date:pg,pdf_invoice_label:gg,pdf_invoice_number:fg,pdf_invoice_date:vg,pdf_invoice_due_date:hg,pdf_notes:yg,pdf_items_label:bg,pdf_quantity_label:kg,pdf_price_label:wg,pdf_discount_label:xg,pdf_amount_label:zg,pdf_subtotal:Sg,pdf_total:Pg,pdf_payment_label:jg,pdf_payment_receipt_label:Ag,pdf_payment_date:Dg,pdf_payment_number:Cg,pdf_payment_mode:Eg,pdf_payment_amount_received_label:Ig,pdf_expense_report_label:Ng,pdf_total_expenses_label:Tg,pdf_profit_loss_label:Rg,pdf_sales_customers_label:Mg,pdf_sales_items_label:Fg,pdf_tax_summery_label:$g,pdf_income_label:Ug,pdf_net_profit_label:Vg,pdf_customer_sales_report:Og,pdf_total_sales_label:Lg,pdf_item_sales_label:Bg,pdf_tax_report_label:qg,pdf_total_tax_label:Kg,pdf_tax_types_label:Wg,pdf_expenses_label:Zg,pdf_bill_to:Hg,pdf_ship_to:Yg,pdf_received_from:Gg,pdf_tax_label:Jg};const Xg={dashboard:"\uACC4\uAE30\uBC18",customers:"\uACE0\uAC1D",items:"\uC544\uC774\uD15C",invoices:"\uC1A1\uC7A5",expenses:"\uACBD\uBE44",estimates:"\uACAC\uC801",payments:"\uC9C0\uBD88",reports:"\uBCF4\uACE0\uC11C",settings:"\uC124\uC815",logout:"\uB85C\uADF8 \uC544\uC6C3",users:"\uC0AC\uC6A9\uC790"},ef={add_company:"\uD68C\uC0AC \uCD94\uAC00",view_pdf:"PDF\uBCF4\uAE30",copy_pdf_url:"PDF URL \uBCF5\uC0AC",download_pdf:"PDF \uB2E4\uC6B4\uB85C\uB4DC",save:"\uC800\uC7A5",create:"\uCC3D\uC870\uD558\uB2E4",cancel:"\uCDE8\uC18C",update:"\uCD5C\uC2E0 \uC815\uBCF4",deselect:"\uC120\uD0DD \uCDE8\uC18C",download:"\uB2E4\uC6B4\uB85C\uB4DC",from_date:"\uC2DC\uC791 \uB0A0\uC9DC",to_date:"\uD604\uC7AC\uAE4C\uC9C0",from:"\uC5D0\uC11C",to:"\uC5D0",sort_by:"\uC815\uB82C \uAE30\uC900",ascending:"\uC624\uB984\uCC28\uC21C",descending:"\uB0B4\uB9BC\uCC28\uC21C",subject:"\uC81C\uBAA9",body:"\uBAB8",message:"\uBA54\uC2DC\uC9C0",send:"\uBCF4\uB0B4\uB2E4",go_back:"\uB3CC\uC544 \uAC00\uAE30",back_to_login:"\uB85C\uADF8\uC778\uC73C\uB85C \uB3CC\uC544\uAC00\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?",home:"\uC9D1",filter:"\uD544\uD130",delete:"\uC9C0\uC6B0\uB2E4",edit:"\uD3B8\uC9D1\uD558\uB2E4",view:"\uC804\uB9DD",add_new_item:"\uC0C8 \uD56D\uBAA9 \uCD94\uAC00",clear_all:"\uBAA8\uB450 \uC9C0\uC6B0\uAE30",showing:"\uC804\uC2DC",of:"\uC758",actions:"\uD589\uC704",subtotal:"\uC18C\uACC4",discount:"\uD560\uC778",fixed:"\uACB0\uC815\uB41C",percentage:"\uBC31\uBD84\uC728",tax:"\uC138",total_amount:"\uCD1D\uC561",bill_to:"\uCCAD\uAD6C \uB300\uC0C1",ship_to:"\uBC30\uC1A1\uC9C0",due:"\uC815\uB2F9\uD55C",draft:"\uCD08\uC548",sent:"\uBCF4\uB0C4",all:"\uBAA8\uB450",select_all:"\uBAA8\uB450 \uC120\uD0DD",choose_file:"\uD30C\uC77C\uC744 \uC120\uD0DD\uD558\uB824\uBA74 \uC5EC\uAE30\uB97C \uD074\uB9AD\uD558\uC2ED\uC2DC\uC624",choose_template:"\uD15C\uD50C\uB9BF \uC120\uD0DD",choose:"\uACE0\uB974\uB2E4",remove:"\uC5C6\uC560\uB2E4",powered_by:"\uC81C\uACF5",bytefury:"\uBC14\uC774\uD2B8 \uD4E8\uB9AC",select_a_status:"\uC0C1\uD0DC \uC120\uD0DD",select_a_tax:"\uC138\uAE08 \uC120\uD0DD",search:"\uAC80\uC0C9",are_you_sure:"\uD655\uC2E4\uD569\uB2C8\uAE4C?",list_is_empty:"\uBAA9\uB85D\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4.",no_tax_found:"\uC138\uAE08\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",four_zero_four:"404",you_got_lost:"\uC774\uB7F0! \uB2F9\uC2E0\uC740 \uAE38\uC744 \uC783\uC5C8\uC2B5\uB2C8\uB2E4!",go_home:"\uC9D1\uC5D0\uAC00",test_mail_conf:"\uBA54\uC77C \uAD6C\uC131 \uD14C\uC2A4\uD2B8",send_mail_successfully:"\uBA54\uC77C\uC744 \uC131\uACF5\uC801\uC73C\uB85C \uBCF4\uB0C8\uC2B5\uB2C8\uB2E4.",setting_updated:"\uC124\uC815\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",select_state:"\uC8FC \uC120\uD0DD",select_country:"\uAD6D\uAC00 \uC120\uD0DD",select_city:"\uB3C4\uC2DC \uC120\uD0DD",street_1:"\uAC70\uB9AC 1",street_2:"\uAC70\uB9AC 2",action_failed:"\uC791\uC5C5 \uC2E4\uD328",retry:"\uB2E4\uC2DC \uD574 \uBCF4\uB2E4",choose_note:"\uCC38\uACE0 \uC120\uD0DD",no_note_found:"\uBA54\uBAA8\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",insert_note:"\uBA54\uBAA8 \uC0BD\uC785",copied_pdf_url_clipboard:"PDF URL\uC744 \uD074\uB9BD \uBCF4\uB4DC\uC5D0 \uBCF5\uC0AC\uD588\uC2B5\uB2C8\uB2E4!"},tf={select_year:"\uC5F0\uB3C4 \uC120\uD0DD",cards:{due_amount:"\uC9C0\uBD88\uC561",customers:"\uACE0\uAC1D",invoices:"\uC1A1\uC7A5",estimates:"\uACAC\uC801"},chart_info:{total_sales:"\uB9E4\uC0C1",total_receipts:"\uC601\uC218\uC99D",total_expense:"\uACBD\uBE44",net_income:"\uC21C\uC774\uC775",year:"\uC5F0\uB3C4 \uC120\uD0DD"},monthly_chart:{title:"\uB9E4\uC0C1"},recent_invoices_card:{title:"\uB9CC\uAE30 \uC1A1\uC7A5",due_on:"\uAE30\uD55C",customer:"\uACE0\uAC1D",amount_due:"\uC9C0\uBD88\uC561",actions:"\uD589\uC704",view_all:"\uBAA8\uB450\uBCF4\uAE30"},recent_estimate_card:{title:"\uCD5C\uADFC \uACAC\uC801",date:"\uB370\uC774\uD2B8",customer:"\uACE0\uAC1D",amount_due:"\uC9C0\uBD88\uC561",actions:"\uD589\uC704",view_all:"\uBAA8\uB450\uBCF4\uAE30"}},af={name:"\uC774\uB984",description:"\uAE30\uC220",percent:"\uD37C\uC13C\uD2B8",compound_tax:"\uBCF5\uD569 \uC138"},nf={search:"\uAC80\uC0C9...",customers:"\uACE0\uAC1D",users:"\uC0AC\uC6A9\uC790",no_results_found:"\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4"},sf={title:"\uACE0\uAC1D",add_customer:"\uACE0\uAC1D \uCD94\uAC00",contacts_list:"\uACE0\uAC1D \uBAA9\uB85D",name:"\uC774\uB984",mail:"\uBA54\uC77C | \uBA54\uC77C",statement:"\uC131\uBA85\uC11C",display_name:"\uC774\uB984 \uD45C\uC2DC\uD558\uAE30",primary_contact_name:"\uAE30\uBCF8 \uC5F0\uB77D\uCC98 \uC774\uB984",contact_name:"\uB2F4\uB2F9\uC790 \uC774\uB984",amount_due:"\uC9C0\uBD88\uC561",email:"\uC774\uBA54\uC77C",address:"\uC8FC\uC18C",phone:"\uC804\uD654",website:"\uC6F9 \uC0AC\uC774\uD2B8",overview:"\uAC1C\uC694",enable_portal:"\uD3EC\uD138 \uD65C\uC131\uD654",country:"\uAD6D\uAC00",state:"\uC0C1\uD0DC",city:"\uC2DC\uD2F0",zip_code:"\uC6B0\uD3B8 \uBC88\uD638",added_on:"\uCD94\uAC00\uB428",action:"\uB3D9\uC791",password:"\uC554\uD638",street_number:"\uBC88\uC9C0",primary_currency:"\uAE30\uBCF8 \uD1B5\uD654",description:"\uAE30\uC220",add_new_customer:"\uC2E0\uADDC \uACE0\uAC1D \uCD94\uAC00",save_customer:"\uACE0\uAC1D \uC800\uC7A5",update_customer:"\uACE0\uAC1D \uC5C5\uB370\uC774\uD2B8",customer:"\uACE0\uAC1D | \uACE0\uAC1D",new_customer:"\uC2E0\uADDC \uACE0\uAC1D",edit_customer:"\uACE0\uAC1D \uD3B8\uC9D1",basic_info:"\uAE30\uBCF8 \uC815\uBCF4",billing_address:"\uCCAD\uAD6C \uC9C0 \uC8FC\uC18C",shipping_address:"\uBC30\uC1A1 \uC8FC\uC18C",copy_billing_address:"\uACB0\uC81C\uC5D0\uC11C \uBCF5\uC0AC",no_customers:"\uC544\uC9C1 \uACE0\uAC1D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",no_customers_found:"\uACE0\uAC1D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",no_contact:"\uC5F0\uB77D\uCC98 \uC5C6\uC74C",no_contact_name:"\uC5F0\uB77D\uCC98 \uC774\uB984\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",list_of_customers:"\uC774 \uC139\uC158\uC5D0\uB294 \uACE0\uAC1D \uBAA9\uB85D\uC774 \uD3EC\uD568\uB429\uB2C8\uB2E4.",primary_display_name:"\uAE30\uBCF8 \uD45C\uC2DC \uC774\uB984",select_currency:"\uD1B5\uD654 \uC120\uD0DD",select_a_customer:"\uACE0\uAC1D \uC120\uD0DD",type_or_click:"\uC785\uB825\uD558\uAC70\uB098 \uD074\uB9AD\uD558\uC5EC \uC120\uD0DD",new_transaction:"\uC0C8\uB85C\uC6B4 \uAC70\uB798",no_matching_customers:"\uC77C\uCE58\uD558\uB294 \uACE0\uAC1D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",phone_number:"\uC804\uD654 \uBC88\uD638",create_date:"\uB0A0\uC9DC \uC0DD\uC131",confirm_delete:"\uC774 \uACE0\uAC1D\uACFC \uBAA8\uB4E0 \uAD00\uB828 \uC1A1\uC7A5, \uACAC\uC801 \uBC0F \uC9C0\uBD88\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. | \uC774\uB7EC\uD55C \uACE0\uAC1D \uBC0F \uBAA8\uB4E0 \uAD00\uB828 \uCCAD\uAD6C\uC11C, \uACAC\uC801 \uBC0F \uC9C0\uBD88\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",created_message:"\uACE0\uAC1D\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uACE0\uAC1D\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uD588\uC2B5\uB2C8\uB2E4.",deleted_message:"\uACE0\uAC1D\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4. | \uACE0\uAC1D\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},of={title:"\uC544\uC774\uD15C",items_list:"\uD488\uBAA9 \uBAA9\uB85D",name:"\uC774\uB984",unit:"\uB2E8\uC704",description:"\uAE30\uC220",added_on:"\uCD94\uAC00\uB428",price:"\uAC00\uACA9",date_of_creation:"\uC0DD\uC131 \uC77C",not_selected:"\uC120\uD0DD\uD55C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",action:"\uB3D9\uC791",add_item:"\uC544\uC774\uD15C \uCD94\uAC00",save_item:"\uD56D\uBAA9 \uC800\uC7A5",update_item:"\uD56D\uBAA9 \uC5C5\uB370\uC774\uD2B8",item:"\uD56D\uBAA9 | \uC544\uC774\uD15C",add_new_item:"\uC0C8 \uD56D\uBAA9 \uCD94\uAC00",new_item:"\uC0C8\uB85C\uC6B4 \uBB3C\uD488",edit_item:"\uD56D\uBAA9 \uD3B8\uC9D1",no_items:"\uC544\uC9C1 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",list_of_items:"\uC774 \uC139\uC158\uC5D0\uB294 \uD56D\uBAA9 \uBAA9\uB85D\uC774 \uD3EC\uD568\uB429\uB2C8\uB2E4.",select_a_unit:"\uB2E8\uC704 \uC120\uD0DD",taxes:"\uAD6C\uC2E4",item_attached_message:"\uC774\uBBF8 \uC0AC\uC6A9\uC911\uC778 \uD56D\uBAA9\uC740 \uC0AD\uC81C\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",confirm_delete:"\uC774 \uD56D\uBAA9\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. | \uC774 \uD56D\uBAA9\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",created_message:"\uD56D\uBAA9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uD56D\uBAA9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uD56D\uBAA9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4. | \uD56D\uBAA9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},rf={title:"\uACAC\uC801",estimate:"\uACAC\uC801 | \uACAC\uC801",estimates_list:"\uACAC\uC801 \uBAA9\uB85D",days:"{days} \uC77C",months:"{months} \uAC1C\uC6D4",years:"{years} \uB144",all:"\uBAA8\uB450",paid:"\uC720\uB8CC",unpaid:"\uBBF8\uC9C0\uAE09",customer:"\uACE0\uAC1D",ref_no:"\uCC38\uC870 \uBC88\uD638.",number:"\uBC88\uD638",amount_due:"\uC9C0\uBD88\uC561",partially_paid:"\uBD80\uBD84 \uC9C0\uBD88",total:"\uD569\uACC4",discount:"\uD560\uC778",sub_total:"\uC18C\uACC4",estimate_number:"\uACAC\uC801 \uBC88\uD638",ref_number:"\uCC38\uC870 \uBC88\uD638",contact:"\uC811\uCD09",add_item:"\uD56D\uBAA9 \uCD94\uAC00",date:"\uB370\uC774\uD2B8",due_date:"\uB9C8\uAC10\uC77C",expiry_date:"\uB9CC\uB8CC\uC77C",status:"\uC0C1\uD0DC",add_tax:"\uC138\uAE08 \uCD94\uAC00",amount:"\uC591",action:"\uB3D9\uC791",notes:"\uB178\uD2B8",tax:"\uC138",estimate_template:"\uC8FC\uD615",convert_to_invoice:"\uC1A1\uC7A5\uC73C\uB85C \uBCC0\uD658",mark_as_sent:"\uBCF4\uB0B8 \uAC83\uC73C\uB85C \uD45C\uC2DC",send_estimate:"\uACAC\uC801 \uBCF4\uB0B4\uAE30",resend_estimate:"\uACAC\uC801 \uC7AC\uC804\uC1A1",record_payment:"\uAE30\uB85D \uC9C0\uBD88",add_estimate:"\uACAC\uC801 \uCD94\uAC00",save_estimate:"\uACAC\uC801 \uC800\uC7A5",confirm_conversion:"\uC774 \uACAC\uC801\uC740 \uC0C8 \uC778\uBCF4\uC774\uC2A4\uB97C \uB9CC\uB4DC\uB294 \uB370 \uC0AC\uC6A9\uB429\uB2C8\uB2E4.",conversion_message:"\uC778\uBCF4\uC774\uC2A4\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",confirm_send_estimate:"\uC774 \uACAC\uC801\uC740 \uC774\uBA54\uC77C\uC744 \uD1B5\uD574 \uACE0\uAC1D\uC5D0\uAC8C \uC804\uC1A1\uB429\uB2C8\uB2E4.",confirm_mark_as_sent:"\uC774 \uACAC\uC801\uC740 \uC804\uC1A1 \uB41C \uAC83\uC73C\uB85C \uD45C\uC2DC\uB429\uB2C8\uB2E4.",confirm_mark_as_accepted:"\uC774 \uACAC\uC801\uC740 \uC218\uB77D \uB428\uC73C\uB85C \uD45C\uC2DC\uB429\uB2C8\uB2E4.",confirm_mark_as_rejected:"\uC774 \uACAC\uC801\uC740 \uAC70\uBD80 \uB428\uC73C\uB85C \uD45C\uC2DC\uB429\uB2C8\uB2E4.",no_matching_estimates:"\uC77C\uCE58\uD558\uB294 \uACAC\uC801\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",mark_as_sent_successfully:"\uC131\uACF5\uC801\uC73C\uB85C \uC804\uC1A1 \uB41C \uAC83\uC73C\uB85C \uD45C\uC2DC\uB41C \uACAC\uC801",send_estimate_successfully:"\uACAC\uC801\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC804\uC1A1\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",errors:{required:"\uD544\uB4DC\uB294 \uD544\uC218\uC785\uB2C8\uB2E4"},accepted:"\uC218\uB77D \uB428",rejected:"\uAC70\uBD80 \uB428",sent:"\uBCF4\uB0C4",draft:"\uCD08\uC548",declined:"\uAC70\uBD80 \uB428",new_estimate:"\uC0C8\uB85C\uC6B4 \uACAC\uC801",add_new_estimate:"\uC0C8\uB85C\uC6B4 \uACAC\uC801 \uCD94\uAC00",update_Estimate:"\uACAC\uC801 \uC5C5\uB370\uC774\uD2B8",edit_estimate:"\uACAC\uC801 \uC218\uC815",items:"\uD56D\uBAA9",Estimate:"\uACAC\uC801 | \uACAC\uC801",add_new_tax:"\uC0C8 \uC138\uAE08 \uCD94\uAC00",no_estimates:"\uC544\uC9C1 \uACAC\uC801\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",list_of_estimates:"\uC774 \uC139\uC158\uC5D0\uB294 \uACAC\uC801 \uBAA9\uB85D\uC774 \uD3EC\uD568\uB429\uB2C8\uB2E4.",mark_as_rejected:"\uAC70\uBD80 \uB428\uC73C\uB85C \uD45C\uC2DC",mark_as_accepted:"\uC218\uB77D \uB428\uC73C\uB85C \uD45C\uC2DC",marked_as_accepted_message:"\uC218\uB77D \uB41C \uAC83\uC73C\uB85C \uD45C\uC2DC\uB41C \uACAC\uC801",marked_as_rejected_message:"\uAC70\uBD80 \uB41C \uAC83\uC73C\uB85C \uD45C\uC2DC\uB41C \uACAC\uC801",confirm_delete:"\uC774 \uACAC\uC801\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. | \uC774 \uACAC\uC801\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",created_message:"\uACAC\uC801\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uACAC\uC801\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uC608\uC0C1\uCE58\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4. | \uACAC\uC801\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",something_went_wrong:"\uBB54\uAC00 \uC798\uBABB \uB410\uC5B4",item:{title:"\uD56D\uBAA9 \uC81C\uBAA9",description:"\uAE30\uC220",quantity:"\uC218\uB7C9",price:"\uAC00\uACA9",discount:"\uD560\uC778",total:"\uD569\uACC4",total_discount:"\uCD1D \uD560\uC778",sub_total:"\uC18C\uACC4",tax:"\uC138",amount:"\uC591",select_an_item:"\uD56D\uBAA9\uC744 \uC785\uB825\uD558\uAC70\uB098 \uD074\uB9AD\uD558\uC5EC \uC120\uD0DD",type_item_description:"\uC720\uD615 \uD56D\uBAA9 \uC124\uBA85 (\uC120\uD0DD \uC0AC\uD56D)"}},df={title:"\uC1A1\uC7A5",invoices_list:"\uC1A1\uC7A5 \uBAA9\uB85D",days:"{days} \uC77C",months:"{months} \uAC1C\uC6D4",years:"{years} \uB144",all:"\uBAA8\uB450",paid:"\uC720\uB8CC",unpaid:"\uBBF8\uC9C0\uAE09",viewed:"\uC870\uD68C",overdue:"\uC5F0\uCCB4",completed:"\uC644\uB8CC",customer:"\uACE0\uAC1D",paid_status:"\uC9C0\uBD88 \uC0C1\uD0DC",ref_no:"\uCC38\uC870 \uBC88\uD638.",number:"\uBC88\uD638",amount_due:"\uC9C0\uBD88\uC561",partially_paid:"\uBD80\uBD84 \uC9C0\uBD88",total:"\uD569\uACC4",discount:"\uD560\uC778",sub_total:"\uC18C\uACC4",invoice:"\uC1A1\uC7A5 | \uC1A1\uC7A5",invoice_number:"\uC1A1\uC7A5 \uBC88\uD638",ref_number:"\uCC38\uC870 \uBC88\uD638",contact:"\uC811\uCD09",add_item:"\uD56D\uBAA9 \uCD94\uAC00",date:"\uB370\uC774\uD2B8",due_date:"\uB9C8\uAC10\uC77C",status:"\uC0C1\uD0DC",add_tax:"\uC138\uAE08 \uCD94\uAC00",amount:"\uC591",action:"\uB3D9\uC791",notes:"\uB178\uD2B8",view:"\uC804\uB9DD",send_invoice:"\uC1A1\uC7A5\uC744 \uBCF4\uB0B4\uB2E4",resend_invoice:"\uC778\uBCF4\uC774\uC2A4 \uC7AC\uC804\uC1A1",invoice_template:"\uC1A1\uC7A5 \uD15C\uD50C\uB9BF",template:"\uC8FC\uD615",mark_as_sent:"\uBCF4\uB0B8 \uAC83\uC73C\uB85C \uD45C\uC2DC",confirm_send_invoice:"\uC774 \uC778\uBCF4\uC774\uC2A4\uB294 \uC774\uBA54\uC77C\uC744 \uD1B5\uD574 \uACE0\uAC1D\uC5D0\uAC8C \uBC1C\uC1A1\uB429\uB2C8\uB2E4.",invoice_mark_as_sent:"\uC774 \uC778\uBCF4\uC774\uC2A4\uB294 \uBCF4\uB0B8 \uAC83\uC73C\uB85C \uD45C\uC2DC\uB429\uB2C8\uB2E4.",confirm_send:"\uC774 \uC778\uBCF4\uC774\uC2A4\uB294 \uC774\uBA54\uC77C\uC744 \uD1B5\uD574 \uACE0\uAC1D\uC5D0\uAC8C \uBC1C\uC1A1\uB429\uB2C8\uB2E4.",invoice_date:"\uC1A1\uC7A5 \uB0A0\uC9DC",record_payment:"\uAE30\uB85D \uC9C0\uBD88",add_new_invoice:"\uC0C8 \uC1A1\uC7A5 \uCD94\uAC00",update_expense:"\uBE44\uC6A9 \uC5C5\uB370\uC774\uD2B8",edit_invoice:"\uC1A1\uC7A5 \uD3B8\uC9D1",new_invoice:"\uC0C8 \uC1A1\uC7A5",save_invoice:"\uC1A1\uC7A5 \uC800\uC7A5",update_invoice:"\uC1A1\uC7A5 \uC5C5\uB370\uC774\uD2B8",add_new_tax:"\uC0C8 \uC138\uAE08 \uCD94\uAC00",no_invoices:"\uC544\uC9C1 \uC778\uBCF4\uC774\uC2A4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4!",list_of_invoices:"\uC774 \uC139\uC158\uC5D0\uB294 \uC1A1\uC7A5 \uBAA9\uB85D\uC774 \uD3EC\uD568\uB429\uB2C8\uB2E4.",select_invoice:"\uC1A1\uC7A5 \uC120\uD0DD",no_matching_invoices:"\uC77C\uCE58\uD558\uB294 \uC1A1\uC7A5\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",mark_as_sent_successfully:"\uC131\uACF5\uC801\uC73C\uB85C \uBC1C\uC1A1 \uB41C \uAC83\uC73C\uB85C \uD45C\uC2DC\uB41C \uC1A1\uC7A5",invoice_sent_successfully:"\uC778\uBCF4\uC774\uC2A4\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC804\uC1A1\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",cloned_successfully:"\uC1A1\uC7A5\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uBCF5\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",clone_invoice:"\uC1A1\uC7A5 \uBCF5\uC81C",confirm_clone:"\uC774 \uC1A1\uC7A5\uC740 \uC0C8 \uC1A1\uC7A5\uC5D0 \uBCF5\uC81C\uB429\uB2C8\uB2E4.",item:{title:"\uD56D\uBAA9 \uC81C\uBAA9",description:"\uAE30\uC220",quantity:"\uC218\uB7C9",price:"\uAC00\uACA9",discount:"\uD560\uC778",total:"\uD569\uACC4",total_discount:"\uCD1D \uD560\uC778",sub_total:"\uC18C\uACC4",tax:"\uC138",amount:"\uC591",select_an_item:"\uD56D\uBAA9\uC744 \uC785\uB825\uD558\uAC70\uB098 \uD074\uB9AD\uD558\uC5EC \uC120\uD0DD",type_item_description:"\uC720\uD615 \uD56D\uBAA9 \uC124\uBA85 (\uC120\uD0DD \uC0AC\uD56D)"},confirm_delete:"\uC774 \uC778\uBCF4\uC774\uC2A4\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. | \uC774\uB7EC\uD55C \uC778\uBCF4\uC774\uC2A4\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",created_message:"\uC1A1\uC7A5\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uC1A1\uC7A5\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uC1A1\uC7A5\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4. | \uC778\uBCF4\uC774\uC2A4\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",marked_as_sent_message:"\uC131\uACF5\uC801\uC73C\uB85C \uBC1C\uC1A1 \uB41C \uAC83\uC73C\uB85C \uD45C\uC2DC\uB41C \uC1A1\uC7A5",something_went_wrong:"\uBB54\uAC00 \uC798\uBABB \uB410\uC5B4",invalid_due_amount_message:"\uCD1D \uC1A1\uC7A5 \uAE08\uC561\uC740\uC774 \uC1A1\uC7A5\uC5D0 \uB300\uD55C \uCD1D \uC9C0\uBD88 \uAE08\uC561\uBCF4\uB2E4 \uC791\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uACC4\uC18D\uD558\uB824\uBA74 \uC778\uBCF4\uC774\uC2A4\uB97C \uC5C5\uB370\uC774\uD2B8\uD558\uAC70\uB098 \uAD00\uB828 \uACB0\uC81C\uB97C \uC0AD\uC81C\uD558\uC138\uC694."},lf={title:"\uC9C0\uBD88",payments_list:"\uC9C0\uBD88 \uBAA9\uB85D",record_payment:"\uAE30\uB85D \uC9C0\uBD88",customer:"\uACE0\uAC1D",date:"\uB370\uC774\uD2B8",amount:"\uC591",action:"\uB3D9\uC791",payment_number:"\uACB0\uC81C \uBC88\uD638",payment_mode:"\uC9C0\uBD88 \uBAA8\uB4DC",invoice:"\uC1A1\uC7A5",note:"\uB178\uD2B8",add_payment:"\uC9C0\uBD88 \uCD94\uAC00",new_payment:"\uC0C8\uB85C\uC6B4 \uC9C0\uBD88",edit_payment:"\uACB0\uC81C \uC218\uC815",view_payment:"\uACB0\uC81C\uBCF4\uAE30",add_new_payment:"\uC0C8 \uC9C0\uBD88 \uCD94\uAC00",send_payment_receipt:"\uACB0\uC81C \uC601\uC218\uC99D \uBCF4\uB0B4\uAE30",send_payment:"\uC9C0\uBD88 \uBCF4\uB0B4\uAE30",save_payment:"\uC9C0\uBD88 \uC800\uC7A5",update_payment:"\uACB0\uC81C \uC5C5\uB370\uC774\uD2B8",payment:"\uC9C0\uBD88 | \uC9C0\uBD88",no_payments:"\uC544\uC9C1 \uACB0\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4!",not_selected:"\uC120\uD0DD\uB418\uC9C0 \uC54A\uC740",no_invoice:"\uC1A1\uC7A5 \uC5C6\uC74C",no_matching_payments:"\uC77C\uCE58\uD558\uB294 \uC9C0\uBD88\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",list_of_payments:"\uC774 \uC139\uC158\uC5D0\uB294 \uC9C0\uBD88 \uBAA9\uB85D\uC774 \uD3EC\uD568\uB429\uB2C8\uB2E4.",select_payment_mode:"\uACB0\uC81C \uBAA8\uB4DC \uC120\uD0DD",confirm_mark_as_sent:"\uC774 \uACAC\uC801\uC740 \uC804\uC1A1 \uB41C \uAC83\uC73C\uB85C \uD45C\uC2DC\uB429\uB2C8\uB2E4.",confirm_send_payment:"\uC774 \uACB0\uC81C\uB294 \uC774\uBA54\uC77C\uC744 \uD1B5\uD574 \uACE0\uAC1D\uC5D0\uAC8C \uC804\uC1A1\uB429\uB2C8\uB2E4.",send_payment_successfully:"\uC9C0\uBD88\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC804\uC1A1\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",something_went_wrong:"\uBB54\uAC00 \uC798\uBABB \uB410\uC5B4",confirm_delete:"\uC774 \uC9C0\uBD88\uAE08\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. | \uC774 \uC9C0\uAE09\uAE08\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",created_message:"\uACB0\uC81C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uACB0\uC81C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uACB0\uC81C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4. | \uACB0\uC81C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",invalid_amount_message:"\uACB0\uC81C \uAE08\uC561\uC774 \uC798\uBABB\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},cf={title:"\uACBD\uBE44",expenses_list:"\uBE44\uC6A9 \uBAA9\uB85D",select_a_customer:"\uACE0\uAC1D \uC120\uD0DD",expense_title:"\uD45C\uC81C",customer:"\uACE0\uAC1D",contact:"\uC811\uCD09",category:"\uBC94\uC8FC",from_date:"\uC2DC\uC791 \uB0A0\uC9DC",to_date:"\uD604\uC7AC\uAE4C\uC9C0",expense_date:"\uB370\uC774\uD2B8",description:"\uAE30\uC220",receipt:"\uC601\uC218\uC99D",amount:"\uC591",action:"\uB3D9\uC791",not_selected:"\uC120\uD0DD\uB418\uC9C0 \uC54A\uC740",note:"\uB178\uD2B8",category_id:"\uCE74\uD14C\uACE0\uB9AC ID",date:"\uB370\uC774\uD2B8",add_expense:"\uBE44\uC6A9 \uCD94\uAC00",add_new_expense:"\uC2E0\uADDC \uBE44\uC6A9 \uCD94\uAC00",save_expense:"\uBE44\uC6A9 \uC808\uAC10",update_expense:"\uBE44\uC6A9 \uC5C5\uB370\uC774\uD2B8",download_receipt:"\uC601\uC218\uC99D \uB2E4\uC6B4\uB85C\uB4DC",edit_expense:"\uBE44\uC6A9 \uD3B8\uC9D1",new_expense:"\uC0C8\uB85C\uC6B4 \uBE44\uC6A9",expense:"\uBE44\uC6A9 | \uACBD\uBE44",no_expenses:"\uC544\uC9C1 \uBE44\uC6A9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",list_of_expenses:"\uC774 \uC139\uC158\uC5D0\uB294 \uBE44\uC6A9 \uBAA9\uB85D\uC774 \uD3EC\uD568\uB429\uB2C8\uB2E4.",confirm_delete:"\uC774 \uBE44\uC6A9\uC744 \uD68C\uC218 \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. | \uC774\uB7EC\uD55C \uBE44\uC6A9\uC740 \uD68C\uC218 \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",created_message:"\uBE44\uC6A9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uBE44\uC6A9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uBE44\uC6A9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4. | \uBE44\uC6A9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",categories:{categories_list:"\uCE74\uD14C\uACE0\uB9AC \uBAA9\uB85D",title:"\uD45C\uC81C",name:"\uC774\uB984",description:"\uAE30\uC220",amount:"\uC591",actions:"\uD589\uC704",add_category:"\uCE74\uD14C\uACE0\uB9AC \uCD94\uAC00",new_category:"\uC0C8 \uBD84\uB958",category:"\uCE74\uD14C\uACE0\uB9AC | \uCE74\uD14C\uACE0\uB9AC",select_a_category:"\uCE74\uD14C\uACE0\uB9AC \uC120\uD0DD"}},_f={email:"\uC774\uBA54\uC77C",password:"\uC554\uD638",forgot_password:"\uBE44\uBC00\uBC88\uD638\uB97C \uC78A\uC73C \uC168\uB098\uC694?",or_signIn_with:"\uB610\uB294 \uB2E4\uC74C\uC73C\uB85C \uB85C\uADF8\uC778",login:"\uB85C\uADF8\uC778",register:"\uB808\uC9C0\uC2A4\uD130",reset_password:"\uC554\uD638\uB97C \uC7AC\uC124\uC815",password_reset_successfully:"\uBE44\uBC00\uBC88\uD638 \uC7AC\uC124\uC815 \uC131\uACF5",enter_email:"\uC774\uBA54\uC77C \uC785\uB825",enter_password:"\uC554\uD638\uB97C \uC785\uB825",retype_password:"\uBE44\uBC00\uBC88\uD638 \uC7AC \uC785\uB825"},uf={title:"\uC0AC\uC6A9\uC790",users_list:"\uC0AC\uC6A9\uC790 \uBAA9\uB85D",name:"\uC774\uB984",description:"\uAE30\uC220",added_on:"\uCD94\uAC00\uB428",date_of_creation:"\uC0DD\uC131 \uC77C",action:"\uB3D9\uC791",add_user:"\uC0AC\uC6A9\uC790 \uCD94\uAC00",save_user:"\uC0AC\uC6A9\uC790 \uC800\uC7A5",update_user:"\uC0AC\uC6A9\uC790 \uC5C5\uB370\uC774\uD2B8",user:"\uC0AC\uC6A9\uC790 | \uC0AC\uC6A9\uC790",add_new_user:"\uC0C8 \uC0AC\uC6A9\uC790 \uCD94\uAC00",new_user:"\uC0C8\uB85C\uC6B4 \uC0AC\uC6A9\uC790",edit_user:"\uC0AC\uC6A9\uC790 \uD3B8\uC9D1",no_users:"\uC544\uC9C1 \uC0AC\uC6A9\uC790\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4!",list_of_users:"\uC774 \uC139\uC158\uC5D0\uB294 \uC0AC\uC6A9\uC790 \uBAA9\uB85D\uC774 \uD3EC\uD568\uB429\uB2C8\uB2E4.",email:"\uC774\uBA54\uC77C",phone:"\uC804\uD654",password:"\uC554\uD638",user_attached_message:"\uC774\uBBF8 \uC0AC\uC6A9\uC911\uC778 \uD56D\uBAA9\uC740 \uC0AD\uC81C\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",confirm_delete:"\uC774 \uC0AC\uC6A9\uC790\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. | \uC774\uB7EC\uD55C \uC0AC\uC6A9\uC790\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",created_message:"\uC0AC\uC6A9\uC790\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uC0AC\uC6A9\uC790\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uC0AC\uC6A9\uC790\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4. | \uC0AC\uC6A9\uC790\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},mf={title:"\uBCF4\uACE0\uC11C",from_date:"\uC2DC\uC791 \uB0A0\uC9DC",to_date:"\uD604\uC7AC\uAE4C\uC9C0",status:"\uC0C1\uD0DC",paid:"\uC720\uB8CC",unpaid:"\uBBF8\uC9C0\uAE09",download_pdf:"PDF \uB2E4\uC6B4\uB85C\uB4DC",view_pdf:"PDF\uBCF4\uAE30",update_report:"\uBCF4\uACE0\uC11C \uC5C5\uB370\uC774\uD2B8",report:"\uC2E0\uACE0 | \uBCF4\uACE0\uC11C",profit_loss:{profit_loss:"\uC774\uC775",to_date:"\uD604\uC7AC\uAE4C\uC9C0",from_date:"\uC2DC\uC791 \uB0A0\uC9DC",date_range:"\uAE30\uAC04 \uC120\uD0DD"},sales:{sales:"\uB9E4\uC0C1",date_range:"\uAE30\uAC04 \uC120\uD0DD",to_date:"\uD604\uC7AC\uAE4C\uC9C0",from_date:"\uC2DC\uC791 \uB0A0\uC9DC",report_type:"\uBCF4\uACE0\uC11C \uC720\uD615"},taxes:{taxes:"\uAD6C\uC2E4",to_date:"\uD604\uC7AC\uAE4C\uC9C0",from_date:"\uC2DC\uC791 \uB0A0\uC9DC",date_range:"\uAE30\uAC04 \uC120\uD0DD"},errors:{required:"\uD544\uB4DC\uB294 \uD544\uC218\uC785\uB2C8\uB2E4"},invoices:{invoice:"\uC1A1\uC7A5",invoice_date:"\uC1A1\uC7A5 \uB0A0\uC9DC",due_date:"\uB9C8\uAC10\uC77C",amount:"\uC591",contact_name:"\uB2F4\uB2F9\uC790 \uC774\uB984",status:"\uC0C1\uD0DC"},estimates:{estimate:"\uACAC\uC801",estimate_date:"\uC608\uC0C1 \uB0A0\uC9DC",due_date:"\uB9C8\uAC10\uC77C",estimate_number:"\uACAC\uC801 \uBC88\uD638",ref_number:"\uCC38\uC870 \uBC88\uD638",amount:"\uC591",contact_name:"\uB2F4\uB2F9\uC790 \uC774\uB984",status:"\uC0C1\uD0DC"},expenses:{expenses:"\uACBD\uBE44",category:"\uBC94\uC8FC",date:"\uB370\uC774\uD2B8",amount:"\uC591",to_date:"\uD604\uC7AC\uAE4C\uC9C0",from_date:"\uC2DC\uC791 \uB0A0\uC9DC",date_range:"\uAE30\uAC04 \uC120\uD0DD"}},pf={menu_title:{account_settings:"\uACC4\uC815 \uC124\uC815",company_information:"\uD68C\uC0AC \uC815\uBCF4",customization:"\uCEE4\uC2A4\uD130\uB9C8\uC774\uC9D5",preferences:"\uD658\uACBD \uC124\uC815",notifications:"\uC54C\uB9BC",tax_types:"\uC138\uAE08 \uC720\uD615",expense_category:"\uBE44\uC6A9 \uBC94\uC8FC",update_app:"\uC571 \uC5C5\uB370\uC774\uD2B8",backup:"\uC9C0\uC6D0",file_disk:"\uD30C\uC77C \uB514\uC2A4\uD06C",custom_fields:"\uC0AC\uC6A9\uC790 \uC815\uC758 \uD544\uB4DC",payment_modes:"\uC9C0\uBD88 \uBAA8\uB4DC",notes:"\uB178\uD2B8"},title:"\uC124\uC815",setting:"\uC124\uC815 | \uC124\uC815",general:"\uC77C\uBC18",language:"\uC5B8\uC5B4",primary_currency:"\uAE30\uBCF8 \uD1B5\uD654",timezone:"\uC2DC\uAC04\uB300",date_format:"\uB0A0\uC9DC \uD615\uC2DD",currencies:{title:"\uD1B5\uD654",currency:"\uD1B5\uD654 | \uD1B5\uD654",currencies_list:"\uD1B5\uD654 \uBAA9\uB85D",select_currency:"\uD1B5\uD654 \uC120\uD0DD",name:"\uC774\uB984",code:"\uC554\uD638",symbol:"\uC0C1\uC9D5",precision:"\uC815\uB3C4",thousand_separator:"\uCC9C \uAD6C\uBD84\uC790",decimal_separator:"\uC18C\uC218\uC810 \uAD6C\uBD84 \uAE30\uD638",position:"\uC704\uCE58",position_of_symbol:"\uAE30\uD638 \uC704\uCE58",right:"\uAD8C\uB9AC",left:"\uC67C\uCABD",action:"\uB3D9\uC791",add_currency:"\uD1B5\uD654 \uCD94\uAC00"},mail:{host:"\uBA54\uC77C \uD638\uC2A4\uD2B8",port:"\uBA54\uC77C \uD3EC\uD2B8",driver:"\uBA54\uC77C \uB4DC\uB77C\uC774\uBC84",secret:"\uBE44\uBC00",mailgun_secret:"Mailgun \uBE44\uBC00",mailgun_domain:"\uB3C4\uBA54\uC778",mailgun_endpoint:"Mailgun \uC5D4\uB4DC \uD3EC\uC778\uD2B8",ses_secret:"SES \uBE44\uBC00",ses_key:"SES \uD0A4",password:"\uBA54\uC77C \uBE44\uBC00\uBC88\uD638",username:"\uBA54\uC77C \uC0AC\uC6A9\uC790 \uC774\uB984",mail_config:"\uBA54\uC77C \uAD6C\uC131",from_name:"\uBA54\uC77C \uC774\uB984\uC5D0\uC11C",from_mail:"\uBA54\uC77C \uC8FC\uC18C\uC5D0\uC11C",encryption:"\uBA54\uC77C \uC554\uD638\uD654",mail_config_desc:"\uB2E4\uC74C\uC740 \uC571\uC5D0\uC11C \uC774\uBA54\uC77C\uC744 \uBCF4\uB0B4\uAE30\uC704\uD55C \uC774\uBA54\uC77C \uB4DC\uB77C\uC774\uBC84 \uAD6C\uC131 \uC591\uC2DD\uC785\uB2C8\uB2E4. Sendgrid, SES \uB4F1\uACFC \uAC19\uC740 \uD0C0\uC0AC \uACF5\uAE09\uC790\uB97C \uAD6C\uC131 \uD560 \uC218\uB3C4 \uC788\uC2B5\uB2C8\uB2E4."},pdf:{title:"PDF \uC124\uC815",footer_text:"\uBC14\uB2E5 \uAE00 \uD14D\uC2A4\uD2B8",pdf_layout:"PDF \uB808\uC774\uC544\uC6C3"},company_info:{company_info:"\uD68C\uC0AC \uC815\uBCF4",company_name:"\uD68C\uC0AC \uC774\uB984",company_logo:"\uD68C\uC0AC \uB85C\uACE0",section_description:"Crater\uC5D0\uC11C \uC0DD\uC131 \uD55C \uC1A1\uC7A5, \uACAC\uC801 \uBC0F \uAE30\uD0C0 \uBB38\uC11C\uC5D0 \uD45C\uC2DC \uB420 \uD68C\uC0AC\uC5D0 \uB300\uD55C \uC815\uBCF4.",phone:"\uC804\uD654",country:"\uAD6D\uAC00",state:"\uC0C1\uD0DC",city:"\uC2DC\uD2F0",address:"\uC8FC\uC18C",zip:"\uC9C0\uD37C",save:"\uC800\uC7A5",updated_message:"\uD68C\uC0AC \uC815\uBCF4\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},custom_fields:{title:"\uC0AC\uC6A9\uC790 \uC815\uC758 \uD544\uB4DC",section_description:"\uC1A1\uC7A5, \uACAC\uC801 \uC0AC\uC6A9\uC790 \uC9C0\uC815",add_custom_field:"\uC0AC\uC6A9\uC790 \uC815\uC758 \uD544\uB4DC \uCD94\uAC00",edit_custom_field:"\uC0AC\uC6A9\uC790 \uC815\uC758 \uD544\uB4DC \uD3B8\uC9D1",field_name:"\uBD84\uC57C \uBA85",label:"\uC0C1\uD45C",type:"\uC720\uD615",name:"\uC774\uB984",required:"\uD544\uC218",placeholder:"\uC790\uB9AC \uD45C\uC2DC \uC790",help_text:"\uB3C4\uC6C0\uB9D0 \uD14D\uC2A4\uD2B8",default_value:"\uAE30\uBCF8\uAC12",prefix:"\uC811\uB450\uC0AC",starting_number:"\uC2DC\uC791 \uBC88\uD638",model:"\uBAA8\uB378",help_text_description:"\uC0AC\uC6A9\uC790\uAC00\uC774 \uC0AC\uC6A9\uC790 \uC815\uC758 \uD544\uB4DC\uC758 \uBAA9\uC801\uC744 \uC774\uD574\uD558\uB294 \uB370 \uB3C4\uC6C0\uC774\uB418\uB294 \uD14D\uC2A4\uD2B8\uB97C \uC785\uB825\uD558\uC2ED\uC2DC\uC624.",suffix:"\uC811\uBBF8\uC0AC",yes:"\uC608",no:"\uC544\uB2C8",order:"\uC8FC\uBB38",custom_field_confirm_delete:"\uC774 \uC0AC\uC6A9\uC790 \uC815\uC758 \uD544\uB4DC\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",already_in_use:"\uB9DE\uCDA4 \uC785\uB825\uB780\uC774 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.",deleted_message:"\uB9DE\uCDA4 \uC785\uB825\uB780\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",options:"\uC635\uC158",add_option:"\uC635\uC158 \uCD94\uAC00",add_another_option:"\uB2E4\uB978 \uC635\uC158 \uCD94\uAC00",sort_in_alphabetical_order:"\uC54C\uD30C\uBCB3\uC21C\uC73C\uB85C \uC815\uB82C",add_options_in_bulk:"\uC77C\uAD04 \uC635\uC158 \uCD94\uAC00",use_predefined_options:"\uBBF8\uB9AC \uC815\uC758 \uB41C \uC635\uC158 \uC0AC\uC6A9",select_custom_date:"\uB9DE\uCDA4 \uB0A0\uC9DC \uC120\uD0DD",select_relative_date:"\uC0C1\uB300 \uB0A0\uC9DC \uC120\uD0DD",ticked_by_default:"\uAE30\uBCF8\uC801\uC73C\uB85C \uC120\uD0DD\uB428",updated_message:"\uB9DE\uCDA4 \uC785\uB825\uB780\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",added_message:"\uB9DE\uCDA4 \uC785\uB825\uB780\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uCD94\uAC00\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},customization:{customization:"\uB9DE\uCDA4\uD654",save:"\uC800\uC7A5",addresses:{title:"\uAD6C\uC560",section_description:"\uACE0\uAC1D \uCCAD\uAD6C \uC8FC\uC18C \uBC0F \uACE0\uAC1D \uBC30\uC1A1 \uC8FC\uC18C \uD615\uC2DD\uC744 \uC124\uC815\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4 (PDF\uB85C\uB9CC \uD45C\uC2DC\uB428).",customer_billing_address:"\uACE0\uAC1D \uCCAD\uAD6C \uC8FC\uC18C",customer_shipping_address:"\uACE0\uAC1D \uBC30\uC1A1 \uC8FC\uC18C",company_address:"\uD68C\uC0AC \uC8FC\uC18C",insert_fields:"\uD544\uB4DC \uC0BD\uC785",contact:"\uC811\uCD09",address:"\uC8FC\uC18C",display_name:"\uC774\uB984 \uD45C\uC2DC\uD558\uAE30",primary_contact_name:"\uAE30\uBCF8 \uC5F0\uB77D\uCC98 \uC774\uB984",email:"\uC774\uBA54\uC77C",website:"\uC6F9 \uC0AC\uC774\uD2B8",name:"\uC774\uB984",country:"\uAD6D\uAC00",state:"\uC0C1\uD0DC",city:"\uC2DC\uD2F0",company_name:"\uD68C\uC0AC \uC774\uB984",address_street_1:"\uC8FC\uC18C \uAC70\uB9AC 1",address_street_2:"\uC8FC\uC18C Street 2",phone:"\uC804\uD654",zip_code:"\uC6B0\uD3B8 \uBC88\uD638",address_setting_updated:"\uC8FC\uC18C \uC124\uC815\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},updated_message:"\uD68C\uC0AC \uC815\uBCF4\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",invoices:{title:"\uC1A1\uC7A5",notes:"\uB178\uD2B8",invoice_prefix:"\uC1A1\uC7A5 \uC811\uB450\uC0AC",default_invoice_email_body:"\uAE30\uBCF8 \uC1A1\uC7A5 \uC774\uBA54\uC77C \uBCF8\uBB38",invoice_settings:"\uC1A1\uC7A5 \uC124\uC815",autogenerate_invoice_number:"\uC1A1\uC7A5 \uBC88\uD638 \uC790\uB3D9 \uC0DD\uC131",autogenerate_invoice_number_desc:"\uC0C8 \uC778\uBCF4\uC774\uC2A4\uB97C \uC0DD\uC131 \uD560 \uB54C\uB9C8\uB2E4 \uC778\uBCF4\uC774\uC2A4 \uBC88\uD638\uB97C \uC790\uB3D9 \uC0DD\uC131\uD558\uC9C0 \uC54A\uC73C\uB824\uBA74\uC774 \uAE30\uB2A5\uC744 \uBE44\uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624.",invoice_email_attachment:"\uC1A1\uC7A5\uC744 \uCCA8\uBD80 \uD30C\uC77C\uB85C \uBCF4\uB0B4\uAE30",invoice_email_attachment_setting_description:"\uC778\uBCF4\uC774\uC2A4\uB97C \uC774\uBA54\uC77C \uCCA8\uBD80 \uD30C\uC77C\uB85C \uBCF4\uB0B4\uB824\uBA74\uC774 \uC635\uC158\uC744 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624. \uC774\uBA54\uC77C\uC758 '\uC778\uBCF4\uC774\uC2A4\uBCF4\uAE30'\uBC84\uD2BC\uC774 \uD65C\uC131\uD654\uB418\uBA74 \uB354 \uC774\uC0C1 \uD45C\uC2DC\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",enter_invoice_prefix:"\uC1A1\uC7A5 \uC811\uB450\uC0AC \uC785\uB825",terms_and_conditions:"\uC774\uC6A9 \uC57D\uAD00",company_address_format:"\uD68C\uC0AC \uC8FC\uC18C \uD615\uC2DD",shipping_address_format:"\uBC30\uC1A1 \uC8FC\uC18C \uD615\uC2DD",billing_address_format:"\uCCAD\uAD6C \uC9C0 \uC8FC\uC18C \uD615\uC2DD",invoice_settings_updated:"\uC778\uBCF4\uC774\uC2A4 \uC124\uC815\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},estimates:{title:"\uACAC\uC801",estimate_prefix:"\uC811\uB450\uC0AC \uCD94\uC815",default_estimate_email_body:"\uAE30\uBCF8 \uC608\uC0C1 \uC774\uBA54\uC77C \uBCF8\uBB38",estimate_settings:"\uC608\uC0C1 \uC124\uC815",autogenerate_estimate_number:"\uACAC\uC801 \uBC88\uD638 \uC790\uB3D9 \uC0DD\uC131",estimate_setting_description:"\uC0C8 \uACAC\uC801\uC744 \uC0DD\uC131 \uD560 \uB54C\uB9C8\uB2E4 \uACAC\uC801 \uBC88\uD638\uB97C \uC790\uB3D9 \uC0DD\uC131\uD558\uC9C0 \uC54A\uC73C\uB824\uBA74\uC774 \uAE30\uB2A5\uC744 \uBE44\uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624.",estimate_email_attachment:"\uACAC\uC801\uC744 \uCCA8\uBD80 \uD30C\uC77C\uB85C \uBCF4\uB0B4\uAE30",estimate_email_attachment_setting_description:"\uACAC\uC801\uC744 \uC774\uBA54\uC77C \uCCA8\uBD80 \uD30C\uC77C\uB85C \uBCF4\uB0B4\uB824\uBA74\uC774 \uC635\uC158\uC744 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624. \uC774\uBA54\uC77C\uC758 '\uC608\uC0C1\uBCF4\uAE30'\uBC84\uD2BC\uC774 \uD65C\uC131\uD654\uB418\uBA74 \uB354 \uC774\uC0C1 \uD45C\uC2DC\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",enter_estimate_prefix:"\uACAC\uC801 \uC811\uB450\uC0AC \uC785\uB825",estimate_setting_updated:"\uC608\uC0C1 \uC124\uC815\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",company_address_format:"\uD68C\uC0AC \uC8FC\uC18C \uD615\uC2DD",billing_address_format:"\uCCAD\uAD6C \uC9C0 \uC8FC\uC18C \uD615\uC2DD",shipping_address_format:"\uBC30\uC1A1 \uC8FC\uC18C \uD615\uC2DD"},payments:{title:"\uC9C0\uBD88",description:"\uC9C0\uBD88\uC744\uC704\uD55C \uAC70\uB798 \uBC29\uC2DD",payment_prefix:"\uC9C0\uBD88 \uC811\uB450\uC0AC",default_payment_email_body:"\uAE30\uBCF8 \uACB0\uC81C \uC774\uBA54\uC77C \uBCF8\uBB38",payment_settings:"\uACB0\uC81C \uC124\uC815",autogenerate_payment_number:"\uACB0\uC81C \uBC88\uD638 \uC790\uB3D9 \uC0DD\uC131",payment_setting_description:"\uC0C8 \uACB0\uC81C\uB97C \uC0DD\uC131 \uD560 \uB54C\uB9C8\uB2E4 \uACB0\uC81C \uBC88\uD638\uB97C \uC790\uB3D9 \uC0DD\uC131\uD558\uC9C0 \uC54A\uC73C\uB824\uBA74\uC774 \uAE30\uB2A5\uC744 \uBE44\uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624.",payment_email_attachment:"\uCCA8\uBD80 \uD30C\uC77C\uB85C \uC9C0\uBD88 \uBCF4\uB0B4\uAE30",payment_email_attachment_setting_description:"\uACB0\uC81C \uC601\uC218\uC99D\uC744 \uC774\uBA54\uC77C \uCCA8\uBD80 \uD30C\uC77C\uB85C \uBCF4\uB0B4\uB824\uBA74\uC774 \uC635\uC158\uC744 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624. \uC774\uBA54\uC77C\uC758 '\uACB0\uC81C\uBCF4\uAE30'\uBC84\uD2BC\uC774 \uD65C\uC131\uD654\uB418\uBA74 \uB354 \uC774\uC0C1 \uD45C\uC2DC\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",enter_payment_prefix:"\uC9C0\uBD88 \uC811\uB450\uC0AC \uC785\uB825",payment_setting_updated:"\uACB0\uC81C \uC124\uC815\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",payment_modes:"\uC9C0\uBD88 \uBAA8\uB4DC",add_payment_mode:"\uACB0\uC81C \uBAA8\uB4DC \uCD94\uAC00",edit_payment_mode:"\uACB0\uC81C \uBAA8\uB4DC \uC218\uC815",mode_name:"\uBAA8\uB4DC \uC774\uB984",payment_mode_added:"\uACB0\uC81C \uBAA8\uB4DC \uCD94\uAC00",payment_mode_updated:"\uACB0\uC81C \uBAA8\uB4DC \uC5C5\uB370\uC774\uD2B8",payment_mode_confirm_delete:"\uC774 \uACB0\uC81C \uBAA8\uB4DC\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",already_in_use:"\uACB0\uC81C \uBAA8\uB4DC\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.",deleted_message:"\uACB0\uC81C \uBAA8\uB4DC\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",company_address_format:"\uD68C\uC0AC \uC8FC\uC18C \uD615\uC2DD",from_customer_address_format:"\uACE0\uAC1D \uC8FC\uC18C \uD615\uC2DD\uC5D0\uC11C"},items:{title:"\uC544\uC774\uD15C",units:"\uB2E8\uC704",add_item_unit:"\uD56D\uBAA9 \uB2E8\uC704 \uCD94\uAC00",edit_item_unit:"\uD56D\uBAA9 \uB2E8\uC704 \uD3B8\uC9D1",unit_name:"\uB2E8\uC704 \uC774\uB984",item_unit_added:"\uD56D\uBAA9 \uB2E8\uC704 \uCD94\uAC00\uB428",item_unit_updated:"\uD56D\uBAA9 \uB2E8\uC704 \uC5C5\uB370\uC774\uD2B8 \uB428",item_unit_confirm_delete:"\uC774 \uD56D\uBAA9 \uB2E8\uC704\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",already_in_use:"\uD56D\uBAA9 \uB2E8\uC704\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.",deleted_message:"\uD56D\uBAA9 \uB2E8\uC704\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},notes:{title:"\uB178\uD2B8",description:"\uBA54\uBAA8\uB97C \uC791\uC131\uD558\uACE0 \uC1A1\uC7A5, \uACAC\uC801\uC11C\uC5D0 \uC7AC\uC0AC\uC6A9\uD558\uC5EC \uC2DC\uAC04 \uC808\uC57D",notes:"\uB178\uD2B8",type:"\uC720\uD615",add_note:"\uBA54\uBAA8\uB97C \uCD94\uAC00",add_new_note:"\uC0C8 \uBA54\uBAA8 \uCD94\uAC00",name:"\uC774\uB984",edit_note:"\uBA54\uBAA8 \uC218\uC815",note_added:"\uBA54\uBAA8\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uCD94\uAC00\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",note_updated:"\uCC38\uACE0 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",note_confirm_delete:"\uC774 \uBA54\uBAA8\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",already_in_use:"\uBA54\uBAA8\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.",deleted_message:"\uBA54\uBAA8\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."}},account_settings:{profile_picture:"\uD504\uB85C\uD544 \uC0AC\uC9C4",name:"\uC774\uB984",email:"\uC774\uBA54\uC77C",password:"\uC554\uD638",confirm_password:"\uBE44\uBC00\uBC88\uD638 \uD655\uC778",account_settings:"\uACC4\uC815 \uC124\uC815",save:"\uC800\uC7A5",section_description:"\uC774\uB984, \uC774\uBA54\uC77C\uC744 \uC5C5\uB370\uC774\uD2B8 \uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",updated_message:"\uACC4\uC815 \uC124\uC815\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},user_profile:{name:"\uC774\uB984",email:"\uC774\uBA54\uC77C",password:"\uC554\uD638",confirm_password:"\uBE44\uBC00\uBC88\uD638 \uD655\uC778"},notification:{title:"\uACF5\uACE0",email:"\uC54C\uB9BC \uBCF4\uB0B4\uAE30",description:"\uBCC0\uACBD \uC0AC\uD56D\uC774\uC788\uC744 \uB54C \uC5B4\uB5A4 \uC774\uBA54\uC77C \uC54C\uB9BC\uC744 \uBC1B\uC73C\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?",invoice_viewed:"\uC1A1\uC7A5 \uC870\uD68C",invoice_viewed_desc:"\uACE0\uAC1D\uC774 \uBD84\uD654\uAD6C \uB300\uC2DC \uBCF4\uB4DC\uB97C \uD1B5\uD574 \uC804\uC1A1 \uB41C \uC1A1\uC7A5\uC744 \uBCFC \uB54C.",estimate_viewed:"\uBCF8 \uACAC\uC801",estimate_viewed_desc:"\uACE0\uAC1D\uC774 \uBD84\uD654\uAD6C \uB300\uC2DC \uBCF4\uB4DC\uB97C \uD1B5\uD574 \uC804\uC1A1 \uB41C \uACAC\uC801\uC744 \uBCFC \uB54C.",save:"\uC800\uC7A5",email_save_message:"\uC774\uBA54\uC77C\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",please_enter_email:"\uC774\uBA54\uC77C\uC744 \uC785\uB825\uD558\uC2ED\uC2DC\uC624"},tax_types:{title:"\uC138\uAE08 \uC720\uD615",add_tax:"\uC138\uAE08 \uCD94\uAC00",edit_tax:"\uC138\uAE08 \uC218\uC815",description:"\uC6D0\uD558\uB294\uB300\uB85C \uC138\uAE08\uC744 \uCD94\uAC00\uD558\uAC70\uB098 \uC81C\uAC70 \uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. Crater\uB294 \uC1A1\uC7A5\uBFD0\uB9CC \uC544\uB2C8\uB77C \uAC1C\uBCC4 \uD488\uBAA9\uC5D0 \uB300\uD55C \uC138\uAE08\uC744 \uC9C0\uC6D0\uD569\uB2C8\uB2E4.",add_new_tax:"\uC0C8 \uC138\uAE08 \uCD94\uAC00",tax_settings:"\uC138\uAE08 \uC124\uC815",tax_per_item:"\uD488\uBAA9 \uB2F9 \uC138\uAE08",tax_name:"\uC138\uAE08 \uC774\uB984",compound_tax:"\uBCF5\uD569 \uC138",percent:"\uD37C\uC13C\uD2B8",action:"\uB3D9\uC791",tax_setting_description:"\uAC1C\uBCC4 \uC1A1\uC7A5 \uD56D\uBAA9\uC5D0 \uC138\uAE08\uC744 \uCD94\uAC00\uD558\uB824\uBA74\uC774 \uC635\uC158\uC744 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624. \uAE30\uBCF8\uC801\uC73C\uB85C \uC138\uAE08\uC740 \uC1A1\uC7A5\uC5D0 \uC9C1\uC811 \uCD94\uAC00\uB429\uB2C8\uB2E4.",created_message:"\uC138\uAE08 \uC720\uD615\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uC138\uAE08 \uC720\uD615\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uC138\uAE08 \uC720\uD615\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",confirm_delete:"\uC774 \uC138\uAE08 \uC720\uD615\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",already_in_use:"\uC138\uAE08\uC774 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4."},expense_category:{title:"\uBE44\uC6A9 \uBC94\uC8FC",action:"\uB3D9\uC791",description:"\uBE44\uC6A9 \uD56D\uBAA9\uC744 \uCD94\uAC00\uD558\uB824\uBA74 \uCE74\uD14C\uACE0\uB9AC\uAC00 \uD544\uC694\uD569\uB2C8\uB2E4. \uAE30\uBCF8 \uC124\uC815\uC5D0 \uB530\uB77C \uC774\uB7EC\uD55C \uBC94\uC8FC\uB97C \uCD94\uAC00\uD558\uAC70\uB098 \uC81C\uAC70 \uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",add_new_category:"\uC0C8 \uCE74\uD14C\uACE0\uB9AC \uCD94\uAC00",add_category:"\uCE74\uD14C\uACE0\uB9AC \uCD94\uAC00",edit_category:"\uCE74\uD14C\uACE0\uB9AC \uC218\uC815",category_name:"\uCE74\uD14C\uACE0\uB9AC \uC774\uB984",category_description:"\uAE30\uC220",created_message:"\uBE44\uC6A9 \uBC94\uC8FC\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uBE44\uC6A9 \uBC94\uC8FC\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uBE44\uC6A9 \uBC94\uC8FC\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",confirm_delete:"\uC774 \uBE44\uC6A9 \uBC94\uC8FC\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",already_in_use:"\uCE74\uD14C\uACE0\uB9AC\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4."},preferences:{currency:"\uD1B5\uD654",default_language:"\uAE30\uBCF8 \uC5B8\uC5B4",time_zone:"\uC2DC\uAC04\uB300",fiscal_year:"\uD68C\uACC4 \uC5F0\uB3C4",date_format:"\uB0A0\uC9DC \uD615\uC2DD",discount_setting:"\uD560\uC778 \uC124\uC815",discount_per_item:"\uD488\uBAA9\uBCC4 \uD560\uC778",discount_setting_description:"\uAC1C\uBCC4 \uC1A1\uC7A5 \uD56D\uBAA9\uC5D0 \uD560\uC778\uC744 \uCD94\uAC00\uD558\uB824\uBA74\uC774 \uC635\uC158\uC744 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624. \uAE30\uBCF8\uC801\uC73C\uB85C \uD560\uC778\uC740 \uC1A1\uC7A5\uC5D0 \uC9C1\uC811 \uCD94\uAC00\uB429\uB2C8\uB2E4.",save:"\uC800\uC7A5",preference:"\uC120\uD638\uB3C4 | \uD658\uACBD \uC124\uC815",general_settings:"\uC2DC\uC2A4\uD15C\uC758 \uAE30\uBCF8 \uAE30\uBCF8 \uC124\uC815\uC785\uB2C8\uB2E4.",updated_message:"\uD658\uACBD \uC124\uC815\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",select_language:"\uC5B8\uC5B4 \uC120\uD0DD",select_time_zone:"\uC2DC\uAC04\uB300 \uC120\uD0DD",select_date_format:"\uB0A0\uC9DC \uD615\uC2DD \uC120\uD0DD",select_financial_year:"\uD68C\uACC4 \uC5F0\uB3C4 \uC120\uD0DD"},update_app:{title:"\uC571 \uC5C5\uB370\uC774\uD2B8",description:"\uC544\uB798 \uBC84\uD2BC\uC744 \uD074\uB9AD\uD558\uC5EC \uC0C8\uB85C\uC6B4 \uC5C5\uB370\uC774\uD2B8\uB97C \uD655\uC778\uD558\uC5EC Crater\uB97C \uC27D\uAC8C \uC5C5\uB370\uC774\uD2B8 \uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",check_update:"\uC5C5\uB370\uC774\uD2B8 \uD655\uC778",avail_update:"\uC0C8\uB85C\uC6B4 \uC5C5\uB370\uC774\uD2B8 \uC0AC\uC6A9 \uAC00\uB2A5",next_version:"\uB2E4\uC74C \uBC84\uC804",requirements:"\uC694\uAD6C \uC0AC\uD56D",update:"\uC9C0\uAE08 \uC5C5\uB370\uC774\uD2B8",update_progress:"\uC5C5\uB370\uC774\uD2B8 \uC9C4\uD589 \uC911 ...",progress_text:"\uBA87 \uBD84 \uC815\uB3C4 \uAC78\uB9BD\uB2C8\uB2E4. \uC5C5\uB370\uC774\uD2B8\uAC00 \uC644\uB8CC\uB418\uAE30 \uC804\uC5D0 \uD654\uBA74\uC744 \uC0C8\uB85C \uACE0\uCE58\uAC70\uB098 \uCC3D\uC744 \uB2EB\uC9C0 \uB9C8\uC2ED\uC2DC\uC624.",update_success:"\uC571\uC774 \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4! \uBE0C\uB77C\uC6B0\uC800 \uCC3D\uC774 \uC790\uB3D9\uC73C\uB85C \uB2E4\uC2DC\uB85C\uB4DC\uB418\uB294 \uB3D9\uC548 \uC7A0\uC2DC \uAE30\uB2E4\uB824\uC8FC\uC2ED\uC2DC\uC624.",latest_message:"\uC0AC\uC6A9 \uAC00\uB2A5\uD55C \uC5C5\uB370\uC774\uD2B8\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4! \uCD5C\uC2E0 \uBC84\uC804\uC744 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.",current_version:"\uD604\uC7AC \uBC84\uC804",download_zip_file:"ZIP \uD30C\uC77C \uB2E4\uC6B4\uB85C\uB4DC",unzipping_package:"\uD328\uD0A4\uC9C0 \uC555\uCD95 \uD574\uC81C",copying_files:"\uD30C\uC77C \uBCF5\uC0AC",deleting_files:"\uC0AC\uC6A9\uD558\uC9C0 \uC54A\uB294 \uD30C\uC77C \uC0AD\uC81C",running_migrations:"\uB9C8\uC774\uADF8\uB808\uC774\uC158 \uC2E4\uD589",finishing_update:"\uC5C5\uB370\uC774\uD2B8 \uC644\uB8CC",update_failed:"\uC5C5\uB370\uC774\uD2B8\uAC00 \uC2E4\uD328",update_failed_text:"\uC8C4\uC1A1\uD569\uB2C8\uB2E4! \uC5C5\uB370\uC774\uD2B8 \uC2E4\uD328 : {step} \uB2E8\uACC4"},backup:{title:"\uBC31\uC5C5 | \uBC31\uC5C5",description:"\uBC31\uC5C5\uC740 \uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uB364\uD504\uC640 \uD568\uAED8 \uC9C0\uC815\uD55C \uB514\uB809\uD1A0\uB9AC\uC758 \uBAA8\uB4E0 \uD30C\uC77C\uC744 \uD3EC\uD568\uD558\uB294 zip \uD30C\uC77C\uC785\uB2C8\uB2E4.",new_backup:"\uC0C8 \uBC31\uC5C5 \uCD94\uAC00",create_backup:"\uBC31\uC5C5 \uC0DD\uC131",select_backup_type:"\uBC31\uC5C5 \uC720\uD615 \uC120\uD0DD",backup_confirm_delete:"\uC774 \uBC31\uC5C5\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",path:"\uD1B5\uB85C",new_disk:"\uC0C8 \uB514\uC2A4\uD06C",created_at:"\uC5D0 \uC0DD\uC131",size:"\uD06C\uAE30",dropbox:"\uB4DC\uB86D \uBC15\uC2A4",local:"\uD604\uC9C0",healthy:"\uAC74\uAC15\uD55C",amount_of_backups:"\uBC31\uC5C5 \uC591",newest_backups:"\uCD5C\uC2E0 \uBC31\uC5C5",used_storage:"\uC911\uACE0 \uC800\uC7A5",select_disk:"\uB514\uC2A4\uD06C \uC120\uD0DD",action:"\uB3D9\uC791",deleted_message:"\uBC31\uC5C5\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",created_message:"\uBC31\uC5C5\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",invalid_disk_credentials:"\uC120\uD0DD\uD55C \uB514\uC2A4\uD06C\uC758 \uC798\uBABB\uB41C \uC790\uACA9 \uC99D\uBA85"},disk:{title:"\uD30C\uC77C \uB514\uC2A4\uD06C | \uD30C\uC77C \uB514\uC2A4\uD06C",description:"\uAE30\uBCF8\uC801\uC73C\uB85C Crater\uB294 \uBC31\uC5C5, \uC544\uBC14\uD0C0 \uBC0F \uAE30\uD0C0 \uC774\uBBF8\uC9C0 \uD30C\uC77C\uC744 \uC800\uC7A5\uD558\uAE30 \uC704\uD574 \uB85C\uCEEC \uB514\uC2A4\uD06C\uB97C \uC0AC\uC6A9\uD569\uB2C8\uB2E4. \uC120\uD638\uB3C4\uC5D0 \uB530\uB77C DigitalOcean, S3 \uBC0F Dropbox\uC640 \uAC19\uC740 \uB458 \uC774\uC0C1\uC758 \uB514\uC2A4\uD06C \uB4DC\uB77C\uC774\uBC84\uB97C \uAD6C\uC131 \uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",created_at:"\uC5D0 \uC0DD\uC131",dropbox:"\uB4DC\uB86D \uBC15\uC2A4",name:"\uC774\uB984",driver:"\uC6B4\uC804\uC0AC",disk_type:"\uC720\uD615",disk_name:"\uB514\uC2A4\uD06C \uC774\uB984",new_disk:"\uC0C8 \uB514\uC2A4\uD06C \uCD94\uAC00",filesystem_driver:"\uD30C\uC77C \uC2DC\uC2A4\uD15C \uB4DC\uB77C\uC774\uBC84",local_driver:"\uB85C\uCEEC \uB4DC\uB77C\uC774\uBC84",local_root:"\uB85C\uCEEC \uB8E8\uD2B8",public_driver:"\uACF5\uACF5 \uC6B4\uC804\uC790",public_root:"\uACF5\uAC1C \uB8E8\uD2B8",public_url:"\uACF5\uAC1C URL",public_visibility:"\uACF5\uAC1C \uAC00\uC2DC\uC131",media_driver:"\uBBF8\uB514\uC5B4 \uB4DC\uB77C\uC774\uBC84",media_root:"\uBBF8\uB514\uC5B4 \uB8E8\uD2B8",aws_driver:"AWS \uB4DC\uB77C\uC774\uBC84",aws_key:"AWS \uD0A4",aws_secret:"AWS \uBE44\uBC00",aws_region:"AWS \uB9AC\uC804",aws_bucket:"AWS \uBC84\uD0B7",aws_root:"AWS \uB8E8\uD2B8",do_spaces_type:"Do Spaces \uC720\uD615",do_spaces_key:"Do Spaces \uD0A4",do_spaces_secret:"\uC2A4\uD398\uC774\uC2A4 \uC2DC\uD06C\uB9BF",do_spaces_region:"Do Spaces \uC601\uC5ED",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces \uB05D\uC810",do_spaces_root:"\uACF5\uAC04 \uB8E8\uD2B8 \uC218\uD589",dropbox_type:"Dropbox \uC720\uD615",dropbox_token:"Dropbox \uD1A0\uD070",dropbox_key:"Dropbox \uD0A4",dropbox_secret:"Dropbox \uBE44\uBC00",dropbox_app:"Dropbox \uC571",dropbox_root:"Dropbox \uB8E8\uD2B8",default_driver:"\uAE30\uBCF8 \uB4DC\uB77C\uC774\uBC84",is_default:"\uAE30\uBCF8\uAC12\uC785\uB2C8\uB2E4.",set_default_disk:"\uAE30\uBCF8 \uB514\uC2A4\uD06C \uC124\uC815",set_default_disk_confirm:"\uC774 \uB514\uC2A4\uD06C\uB294 \uAE30\uBCF8\uAC12\uC73C\uB85C \uC124\uC815\uB418\uBA70 \uBAA8\uB4E0 \uC0C8 PDF\uAC00\uC774 \uB514\uC2A4\uD06C\uC5D0 \uC800\uC7A5\uB429\uB2C8\uB2E4.",success_set_default_disk:"\uB514\uC2A4\uD06C\uAC00 \uAE30\uBCF8\uAC12\uC73C\uB85C \uC124\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",save_pdf_to_disk:"PDF\uB97C \uB514\uC2A4\uD06C\uC5D0 \uC800\uC7A5",disk_setting_description:"\uAC01 \uC1A1\uC7A5\uC758 \uC0AC\uBCF8\uC744 \uC800\uC7A5\uD558\uB824\uBA74 \uC774\uAC83\uC744 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624.",select_disk:"\uB514\uC2A4\uD06C \uC120\uD0DD",disk_settings:"\uB514\uC2A4\uD06C \uC124\uC815",confirm_delete:"\uAE30\uC874 \uD30C\uC77C",action:"\uB3D9\uC791",edit_file_disk:"\uD30C\uC77C \uB514\uC2A4\uD06C \uD3B8\uC9D1",success_create:"\uB514\uC2A4\uD06C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uCD94\uAC00\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",success_update:"\uB514\uC2A4\uD06C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",error:"\uB514\uC2A4\uD06C \uCD94\uAC00 \uC2E4\uD328",deleted_message:"\uD30C\uC77C \uB514\uC2A4\uD06C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",disk_variables_save_successfully:"\uB514\uC2A4\uD06C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uAD6C\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",disk_variables_save_error:"\uB514\uC2A4\uD06C \uAD6C\uC131\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.",invalid_disk_credentials:"\uC120\uD0DD\uD55C \uB514\uC2A4\uD06C\uC758 \uC798\uBABB\uB41C \uC790\uACA9 \uC99D\uBA85"}},gf={account_info:"\uACC4\uC815 \uC815\uBCF4",account_info_desc:"\uC544\uB798 \uC138\uBD80 \uC815\uBCF4\uB294 \uAE30\uBCF8 \uAD00\uB9AC\uC790 \uACC4\uC815\uC744 \uB9CC\uB4DC\uB294 \uB370 \uC0AC\uC6A9\uB429\uB2C8\uB2E4. \uB610\uD55C \uB85C\uADF8\uC778 \uD6C4 \uC5B8\uC81C\uB4E0\uC9C0 \uC138\uBD80 \uC815\uBCF4\uB97C \uBCC0\uACBD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",name:"\uC774\uB984",email:"\uC774\uBA54\uC77C",password:"\uC554\uD638",confirm_password:"\uBE44\uBC00\uBC88\uD638 \uD655\uC778",save_cont:"\uC800\uC7A5",company_info:"\uD68C\uC0AC \uC815\uBCF4",company_info_desc:"\uC774 \uC815\uBCF4\uB294 \uC1A1\uC7A5\uC5D0 \uD45C\uC2DC\uB429\uB2C8\uB2E4. \uB098\uC911\uC5D0 \uC124\uC815 \uD398\uC774\uC9C0\uC5D0\uC11C \uC218\uC815\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",company_name:"\uD68C\uC0AC \uC774\uB984",company_logo:"\uD68C\uC0AC \uB85C\uACE0",logo_preview:"\uB85C\uACE0 \uBBF8\uB9AC\uBCF4\uAE30",preferences:"\uD658\uACBD \uC124\uC815",preferences_desc:"\uC2DC\uC2A4\uD15C\uC758 \uAE30\uBCF8 \uAE30\uBCF8 \uC124\uC815\uC785\uB2C8\uB2E4.",country:"\uAD6D\uAC00",state:"\uC0C1\uD0DC",city:"\uC2DC\uD2F0",address:"\uC8FC\uC18C",street:"Street1 | Street2",phone:"\uC804\uD654",zip_code:"\uC6B0\uD3B8 \uBC88\uD638",go_back:"\uB3CC\uC544 \uAC00\uAE30",currency:"\uD1B5\uD654",language:"\uC5B8\uC5B4",time_zone:"\uC2DC\uAC04\uB300",fiscal_year:"\uD68C\uACC4 \uC5F0\uB3C4",date_format:"\uB0A0\uC9DC \uD615\uC2DD",from_address:"\uC8FC\uC18C\uC5D0\uC11C",username:"\uC0AC\uC6A9\uC790 \uC774\uB984",next:"\uB2E4\uC74C",continue:"\uACC4\uC18D\uD558\uB2E4",skip:"\uAC74\uB108 \uB6F0\uAE30",database:{database:"\uC0AC\uC774\uD2B8 URL",connection:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uC5F0\uACB0",host:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uD638\uC2A4\uD2B8",port:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uD3EC\uD2B8",password:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uBE44\uBC00\uBC88\uD638",app_url:"\uC571 URL",app_domain:"\uC571 \uB3C4\uBA54\uC778",username:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uC0AC\uC6A9\uC790 \uC774\uB984",db_name:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uC774\uB984",db_path:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uACBD\uB85C",desc:"\uC11C\uBC84\uC5D0 \uB370\uC774\uD130\uBCA0\uC774\uC2A4\uB97C \uB9CC\uB4E4\uACE0 \uC544\uB798 \uC591\uC2DD\uC744 \uC0AC\uC6A9\uD558\uC5EC \uC790\uACA9 \uC99D\uBA85\uC744 \uC124\uC815\uD569\uB2C8\uB2E4."},permissions:{permissions:"\uAD8C\uD55C",permission_confirm_title:"\uB108 \uC815\uB9D0 \uACC4\uC18D\uD558\uACE0 \uC2F6\uB2C8?",permission_confirm_desc:"\uD3F4\uB354 \uAD8C\uD55C \uD655\uC778 \uC2E4\uD328",permission_desc:"\uB2E4\uC74C\uC740 \uC571\uC774 \uC791\uB3D9\uD558\uB294 \uB370 \uD544\uC694\uD55C \uD3F4\uB354 \uAD8C\uD55C \uBAA9\uB85D\uC785\uB2C8\uB2E4. \uAD8C\uD55C \uD655\uC778\uC5D0 \uC2E4\uD328\uD558\uBA74 \uD3F4\uB354 \uAD8C\uD55C\uC744 \uC5C5\uB370\uC774\uD2B8\uD558\uC2ED\uC2DC\uC624."},mail:{host:"\uBA54\uC77C \uD638\uC2A4\uD2B8",port:"\uBA54\uC77C \uD3EC\uD2B8",driver:"\uBA54\uC77C \uB4DC\uB77C\uC774\uBC84",secret:"\uBE44\uBC00",mailgun_secret:"Mailgun \uBE44\uBC00",mailgun_domain:"\uB3C4\uBA54\uC778",mailgun_endpoint:"Mailgun \uC5D4\uB4DC \uD3EC\uC778\uD2B8",ses_secret:"SES \uBE44\uBC00",ses_key:"SES \uD0A4",password:"\uBA54\uC77C \uBE44\uBC00\uBC88\uD638",username:"\uBA54\uC77C \uC0AC\uC6A9\uC790 \uC774\uB984",mail_config:"\uBA54\uC77C \uAD6C\uC131",from_name:"\uBA54\uC77C \uC774\uB984\uC5D0\uC11C",from_mail:"\uBA54\uC77C \uC8FC\uC18C\uC5D0\uC11C",encryption:"\uBA54\uC77C \uC554\uD638\uD654",mail_config_desc:"\uB2E4\uC74C\uC740 \uC571\uC5D0\uC11C \uC774\uBA54\uC77C\uC744 \uBCF4\uB0B4\uAE30\uC704\uD55C \uC774\uBA54\uC77C \uB4DC\uB77C\uC774\uBC84 \uAD6C\uC131 \uC591\uC2DD\uC785\uB2C8\uB2E4. Sendgrid, SES \uB4F1\uACFC \uAC19\uC740 \uD0C0\uC0AC \uACF5\uAE09\uC790\uB97C \uAD6C\uC131 \uD560 \uC218\uB3C4 \uC788\uC2B5\uB2C8\uB2E4."},req:{system_req:"\uC2DC\uC2A4\uD15C \uC694\uAD6C \uC0AC\uD56D",php_req_version:"PHP (\uBC84\uC804 {version} \uD544\uC694)",check_req:"\uC694\uAD6C \uC0AC\uD56D \uD655\uC778",system_req_desc:"\uD06C\uB808\uC774\uD130\uC5D0\uB294 \uBA87 \uAC00\uC9C0 \uC11C\uBC84 \uC694\uAD6C \uC0AC\uD56D\uC774 \uC788\uC2B5\uB2C8\uB2E4. \uC11C\uBC84\uC5D0 \uD544\uC694\uD55C PHP \uBC84\uC804\uACFC \uC544\uB798\uC5D0 \uC5B8\uAE09 \uB41C \uBAA8\uB4E0 \uD655\uC7A5\uC774 \uC788\uB294\uC9C0 \uD655\uC778\uD558\uC2ED\uC2DC\uC624."},errors:{migrate_failed:"\uB9C8\uC774\uADF8\uB808\uC774\uC158 \uC2E4\uD328",database_variables_save_error:".env \uD30C\uC77C\uC5D0 \uAD6C\uC131\uC744 \uC4F8 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uD30C\uC77C \uAD8C\uD55C\uC744 \uD655\uC778\uD558\uC2ED\uC2DC\uC624",mail_variables_save_error:"\uC774\uBA54\uC77C \uAD6C\uC131\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.",connection_failed:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uC5F0\uACB0 \uC2E4\uD328",database_should_be_empty:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4\uB294 \uBE44\uC5B4 \uC788\uC5B4\uC57C\uD569\uB2C8\uB2E4."},success:{mail_variables_save_successfully:"\uC774\uBA54\uC77C\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uAD6C\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",database_variables_save_successfully:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uAD6C\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4."}},ff={invalid_phone:"\uC720\uD6A8\uD558\uC9C0 \uC54A\uC740 \uC804\uD654 \uBC88\uD638",invalid_url:"\uC798\uBABB\uB41C URL (\uC608 : http://www.craterapp.com)",invalid_domain_url:"\uC798\uBABB\uB41C URL (\uC608 : craterapp.com)",required:"\uD544\uB4DC\uB294 \uD544\uC218\uC785\uB2C8\uB2E4",email_incorrect:"\uC798\uBABB\uB41C \uC774\uBA54\uC77C.",email_already_taken:"\uC774\uBA54\uC77C\uC774 \uC774\uBBF8 \uC0AC\uC6A9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",email_does_not_exist:"\uC8FC\uC5B4\uC9C4 \uC774\uBA54\uC77C\uC744 \uAC00\uC9C4 \uC0AC\uC6A9\uC790\uAC00 \uC874\uC7AC\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4",item_unit_already_taken:"\uC774 \uD56D\uBAA9 \uB2E8\uC704 \uC774\uB984\uC740 \uC774\uBBF8 \uC0AC\uC6A9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",payment_mode_already_taken:"\uC774 \uACB0\uC81C \uBAA8\uB4DC \uC774\uB984\uC740 \uC774\uBBF8 \uC0AC\uC6A9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",send_reset_link:"\uC7AC\uC124\uC815 \uB9C1\uD06C \uBCF4\uB0B4\uAE30",not_yet:"\uC544\uC9C1? \uB2E4\uC2DC \uBCF4\uB0B4\uC918",password_min_length:"\uBE44\uBC00\uBC88\uD638\uB294 {count}\uC790\uB97C \uD3EC\uD568\uD574\uC57C\uD569\uB2C8\uB2E4.",name_min_length:"\uC774\uB984\uC740 {count} \uC790 \uC774\uC0C1\uC774\uC5B4\uC57C\uD569\uB2C8\uB2E4.",enter_valid_tax_rate:"\uC720\uD6A8\uD55C \uC138\uC728\uC744 \uC785\uB825\uD558\uC138\uC694.",numbers_only:"\uC22B\uC790 \uB9CC.",characters_only:"\uBB38\uC790 \uB9CC.",password_incorrect:"\uBE44\uBC00\uBC88\uD638\uB294 \uB3D9\uC77C\uD574\uC57C\uD569\uB2C8\uB2E4.",password_length:"\uBE44\uBC00\uBC88\uD638\uB294 {count} \uC790 \uC5EC\uC57C\uD569\uB2C8\uB2E4.",qty_must_greater_than_zero:"\uC218\uB7C9\uC740 0\uBCF4\uB2E4 \uCEE4\uC57C\uD569\uB2C8\uB2E4.",price_greater_than_zero:"\uAC00\uACA9\uC740 0\uBCF4\uB2E4 \uCEE4\uC57C\uD569\uB2C8\uB2E4.",payment_greater_than_zero:"\uACB0\uC81C \uAE08\uC561\uC740 0\uBCF4\uB2E4 \uCEE4\uC57C\uD569\uB2C8\uB2E4.",payment_greater_than_due_amount:"\uC785\uB825 \uB41C \uACB0\uC81C \uAE08\uC561\uC774\uC774 \uC1A1\uC7A5\uC758 \uB9CC\uAE30 \uAE08\uC561\uC744 \uCD08\uACFC\uD569\uB2C8\uB2E4.",quantity_maxlength:"\uC218\uB7C9\uC740 20 \uC790\uB9AC\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",price_maxlength:"\uAC00\uACA9\uC740 20 \uC790\uB9AC\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",price_minvalue:"\uAC00\uACA9\uC740 0\uBCF4\uB2E4 \uCEE4\uC57C\uD569\uB2C8\uB2E4.",amount_maxlength:"\uAE08\uC561\uC740 20 \uC790\uB9AC\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",amount_minvalue:"\uAE08\uC561\uC740 0\uBCF4\uB2E4 \uCEE4\uC57C\uD569\uB2C8\uB2E4.",description_maxlength:"\uC124\uBA85\uC740 65,000\uC790\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",subject_maxlength:"\uC81C\uBAA9\uC740 100 \uC790 \uC774\uD558 \uC5EC\uC57C\uD569\uB2C8\uB2E4.",message_maxlength:"\uBA54\uC2DC\uC9C0\uB294 255\uC790\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",maximum_options_error:"\uCD5C\uB300 {max} \uAC1C\uC758 \uC635\uC158\uC774 \uC120\uD0DD\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBA3C\uC800 \uC120\uD0DD\uD55C \uC635\uC158\uC744 \uC81C\uAC70\uD558\uC5EC \uB2E4\uB978 \uC635\uC158\uC744 \uC120\uD0DD\uD558\uC2ED\uC2DC\uC624.",notes_maxlength:"\uBA54\uBAA8\uB294 65,000\uC790\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",address_maxlength:"\uC8FC\uC18C\uB294 255\uC790\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",ref_number_maxlength:"\uCC38\uC870 \uBC88\uD638\uB294 255\uC790\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",prefix_maxlength:"\uC811\uB450\uC0AC\uB294 5 \uC790 \uC774\uD558 \uC5EC\uC57C\uD569\uB2C8\uB2E4.",something_went_wrong:"\uBB54\uAC00 \uC798\uBABB \uB410\uC5B4"},vf="\uACAC\uC801",hf="\uACAC\uC801 \uBC88\uD638",yf="\uC608\uC0C1 \uB0A0\uC9DC",bf="\uB9CC\uB8CC\uC77C",kf="\uC1A1\uC7A5",wf="\uC1A1\uC7A5 \uBC88\uD638",xf="\uC1A1\uC7A5 \uB0A0\uC9DC",zf="\uB9C8\uAC10\uC77C",Sf="\uB178\uD2B8",Pf="\uC544\uC774\uD15C",jf="\uC218\uB7C9",Af="\uAC00\uACA9",Df="\uD560\uC778",Cf="\uC591",Ef="\uC18C\uACC4",If="\uD569\uACC4",Nf="\uC9C0\uBD88",Tf="\uC601\uC218\uC99D",Rf="\uACB0\uC81C\uC77C",Mf="\uACB0\uC81C \uBC88\uD638",Ff="\uC9C0\uBD88 \uBAA8\uB4DC",$f="\uBC1B\uC740 \uAE08\uC561",Uf="\uBE44\uC6A9 \uBCF4\uACE0\uC11C",Vf="\uCD1D \uBE44\uC6A9",Of="\uC774\uC775",Lf="\uD310\uB9E4 \uACE0\uAC1D \uBCF4\uACE0\uC11C",Bf="\uD310\uB9E4 \uD488\uBAA9 \uBCF4\uACE0\uC11C",qf="\uC138\uAE08 \uC694\uC57D \uBCF4\uACE0\uC11C",Kf="\uC218\uC785",Wf="\uC21C\uC774\uC775",Zf="\uD310\uB9E4 \uBCF4\uACE0\uC11C : \uACE0\uAC1D \uBCC4",Hf="\uCD1D \uB9E4\uCD9C",Yf="\uD310\uB9E4 \uBCF4\uACE0\uC11C : \uD488\uBAA9\uBCC4",Gf="\uC138\uAE08 \uBCF4\uACE0\uC11C",Jf="\uCD1D \uC138\uAE08",Qf="\uC138\uAE08 \uC720\uD615",Xf="\uACBD\uBE44",ev="\uCCAD\uAD6C\uC11C,",tv="\uBC30\uC1A1\uC9C0,",av="\uBC1B\uC740 \uC0AC\uB78C :",iv="\uC138";var nv={navigation:Xg,general:ef,dashboard:tf,tax_types:af,global_search:nf,customers:sf,items:of,estimates:rf,invoices:df,payments:lf,expenses:cf,login:_f,users:uf,reports:mf,settings:pf,wizard:gf,validation:ff,pdf_estimate_label:vf,pdf_estimate_number:hf,pdf_estimate_date:yf,pdf_estimate_expire_date:bf,pdf_invoice_label:kf,pdf_invoice_number:wf,pdf_invoice_date:xf,pdf_invoice_due_date:zf,pdf_notes:Sf,pdf_items_label:Pf,pdf_quantity_label:jf,pdf_price_label:Af,pdf_discount_label:Df,pdf_amount_label:Cf,pdf_subtotal:Ef,pdf_total:If,pdf_payment_label:Nf,pdf_payment_receipt_label:Tf,pdf_payment_date:Rf,pdf_payment_number:Mf,pdf_payment_mode:Ff,pdf_payment_amount_received_label:$f,pdf_expense_report_label:Uf,pdf_total_expenses_label:Vf,pdf_profit_loss_label:Of,pdf_sales_customers_label:Lf,pdf_sales_items_label:Bf,pdf_tax_summery_label:qf,pdf_income_label:Kf,pdf_net_profit_label:Wf,pdf_customer_sales_report:Zf,pdf_total_sales_label:Hf,pdf_item_sales_label:Yf,pdf_tax_report_label:Gf,pdf_total_tax_label:Jf,pdf_tax_types_label:Qf,pdf_expenses_label:Xf,pdf_bill_to:ev,pdf_ship_to:tv,pdf_received_from:av,pdf_tax_label:iv};const sv={dashboard:"Inform\u0101cijas panelis",customers:"Klienti",items:"Preces",invoices:"R\u0113\u0137ini","recurring-invoices":"Regul\u0101rie r\u0113\u0137ini",expenses:"Izdevumi",estimates:"Apr\u0113\u0137ini",payments:"Maks\u0101jumi",reports:"Atskaites",settings:"Iestat\u012Bjumi",logout:"Iziet",users:"Lietot\u0101ji",modules:"Modules"},ov={add_company:"Pievienot uz\u0146\u0113mumu",view_pdf:"Apskat\u012Bt PDF",copy_pdf_url:"Kop\u0113t PDF saiti",download_pdf:"Lejupiel\u0101d\u0113t PDF",save:"Saglab\u0101t",create:"Izveidot",cancel:"Atcelt",update:"Atjaunin\u0101t",deselect:"Atcelt iez\u012Bm\u0113\u0161anu",download:"Lejupiel\u0101d\u0113t",from_date:"Datums no",to_date:"Datums l\u012Bdz",from:"No",to:"Kam",ok:"Labi",yes:"J\u0101",no:"N\u0113",sort_by:"K\u0101rtot p\u0113c",ascending:"Augo\u0161\u0101 sec\u012Bb\u0101",descending:"Dilsto\u0161\u0101 sec\u012Bb\u0101",subject:"Temats",body:"Saturs",message:"Zi\u0146ojums",send:"Nos\u016Bt\u012Bt",preview:"Priek\u0161skat\u012Bt\u012Bjums",go_back:"Atpaka\u013C",back_to_login:"Atpaka\u013C uz autoriz\u0101ciju?",home:"S\u0101kums",filter:"Filtr\u0113t",delete:"Dz\u0113st",edit:"Labot",view:"Skat\u012Bt",add_new_item:"Pievienot jaunu",clear_all:"Not\u012Br\u012Bt visu",showing:"R\u0101da",of:"no",actions:"Darb\u012Bbas",subtotal:"KOP\u0100",discount:"ATLAIDE",fixed:"Fiks\u0113ts",percentage:"Procenti",tax:"Nodoklis",total_amount:"KOP\u0100 APMAKSAI",bill_to:"Sa\u0146\u0113m\u0113js",ship_to:"Pieg\u0101d\u0101t uz",due:"L\u012Bdz",draft:"Melnraksts",sent:"Nos\u016Bt\u012Bts",all:"Visi",select_all:"Iez\u012Bm\u0113t visu",select_template:"Izv\u0113l\u0113ties veidni",choose_file:"Spied \u0161eit, lai izv\u0113l\u0113tos failu",choose_template:"Izv\u0113laties sagatavi",choose:"Izv\u0113lies",remove:"Dz\u0113st",select_a_status:"Izv\u0113lieties statusu",select_a_tax:"Izv\u0113l\u0113ties nodokli",search:"Mekl\u0113t",are_you_sure:"Vai esat p\u0101rliecin\u0101ts?",list_is_empty:"Saraksts ir tuk\u0161s.",no_tax_found:"Nodoklis nav atrasts!",four_zero_four:"404",you_got_lost:"Op\u0101! Esi apmald\u012Bjies!",go_home:"Uz S\u0101kumu",test_mail_conf:"J\u016Bsu e-pasta uzst\u0101d\u012Bjumu tests",send_mail_successfully:"Veiksm\u012Bgi nos\u016Bt\u012Bts",setting_updated:"Iestat\u012Bjumi tika veiksm\u012Bgi atjaunin\u0101ti",select_state:"Izv\u0113lieties re\u0123ionu",select_country:"Izv\u0113l\u0113ties valsti",select_city:"Izv\u0113lieties pils\u0113tu",street_1:"Adrese 1",street_2:"Adrese 2",action_failed:"Darb\u012Bba neizdev\u0101s",retry:"Atk\u0101rtot",choose_note:"Izv\u0113lieties piez\u012Bmi",no_note_found:"Piez\u012Bmes nav atrastas",insert_note:"Ievietot piez\u012Bmi",copied_pdf_url_clipboard:"Saglab\u0101t PDF saiti!",copied_url_clipboard:"Copied url to clipboard!",docs:"Dokumenti",do_you_wish_to_continue:"Vai v\u0113lies turpin\u0101t?",note:"Piez\u012Bme",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},rv={select_year:"Izv\u0113lieties gadu",cards:{due_amount:"Apmaksas summa",customers:"Klienti",invoices:"R\u0113\u0137ini",estimates:"Apr\u0113\u0137ini",payments:"Payments"},chart_info:{total_sales:"P\u0101rdotais",total_receipts:"\u010Ceki",total_expense:"Izdevumi",net_income:"Pe\u013C\u0146a",year:"Izv\u0113lieties gadu"},monthly_chart:{title:"P\u0101rdotais un Izdevumi"},recent_invoices_card:{title:"Pien\u0101ko\u0161ie r\u0113\u0137ini",due_on:"Termi\u0146\u0161",customer:"Klients",amount_due:"Apmaksas summa",actions:"Darb\u012Bbas",view_all:"Skat\u012Bt visus"},recent_estimate_card:{title:"Nesenie apr\u0113\u0137ini",date:"Datums",customer:"Klients",amount_due:"Apmaksas summa",actions:"Darb\u012Bbas",view_all:"Skat\u012Bt visus"}},dv={name:"Nosaukums",description:"Apraksts",percent:"Procenti",compound_tax:"Saliktie nodok\u013Ci"},lv={search:"Mekl\u0113t...",customers:"Klienti",users:"Lietot\u0101ji",no_results_found:"Nav atbilsto\u0161u rezult\u0101tu"},cv={label:"NOMAIN\u012AT UZ\u0145\u0112MUMU",no_results_found:"Nekas netika atrasts",add_new_company:"Pievienot jaunu uz\u0146\u0113mumu",new_company:"Jauns uz\u0146\u0113mums",created_message:"Uz\u0146\u0113mums veiksm\u012Bgi pievienots"},_v={today:"\u0160odien",this_week:"\u0160oned\u0113\u013C",this_month:"\u0160om\u0113nes",this_quarter:"Ceturksn\u012B",this_year:"\u0160ogad",previous_week:"Iepriek\u0161\u0113j\u0101 ned\u0113\u013Ca",previous_month:"Iepriek\u0161\u0113j\u0101 m\u0113nes\u012B",previous_quarter:"Iepriek\u0161\u0113j\u0101 ceturksn\u012B",previous_year:"Iepriek\u0161\u0113j\u0101 gad\u0101",custom:"Piel\u0101gots"},uv={title:"Klienti",prefix:"Prefikss",add_customer:"Pievienot klientu",contacts_list:"Klientu saraksts",name:"V\u0101rds",mail:"Pasts",statement:"Pazi\u0146ojums",display_name:"Nosaukums",primary_contact_name:"Galven\u0101 kontakta v\u0101rds",contact_name:"Kontaktpersonas v\u0101rds",amount_due:"Kop\u0101",email:"E-pasts",address:"Adrese",phone:"Telefona numurs",website:"M\u0101jaslapa",overview:"P\u0101rskats",invoice_prefix:"R\u0113\u0137ina prefikss",estimate_prefix:"Apr\u0113\u0137inu prefikss",payment_prefix:"Maks\u0101juma prefikss",enable_portal:"Aktiviz\u0113t port\u0101lu",country:"Valsts",state:"Re\u0123ions",city:"Pils\u0113ta",zip_code:"Pasta indekss",added_on:"Pievienots",action:"Darb\u012Bba",password:"Parole",confirm_password:"Apstipriniet paroli",street_number:"Adrese",primary_currency:"Prim\u0101r\u0101 val\u016Bta",description:"Apraksts",add_new_customer:"Pievienot jaunu klientu",save_customer:"Saglab\u0101t klientu",update_customer:"Atjaunin\u0101t klientu",customer:"Klients | Klienti",new_customer:"Jauns klients",edit_customer:"Redi\u0123\u0113t klientu",basic_info:"Pamatinform\u0101cija",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"Juridisk\u0101 adrese",shipping_address:"Pieg\u0101des adrese",copy_billing_address:"Kop\u0113t no juridisk\u0101s adreses",no_customers:"Pagaid\u0101m nav klientu!",no_customers_found:"Klienti netika atrasti!",no_contact:"Nav kontaktu",no_contact_name:"Nav kontaktv\u0101rda",list_of_customers:"\u0160aj\u0101 sada\u013C\u0101 b\u016Bs klientu saraksts.",primary_display_name:"Klienta nosaukums",select_currency:"Izv\u0113lieties val\u016Btu",select_a_customer:"Izv\u0113l\u0113ties klientu",type_or_click:"Rakst\u012Bt vai spiest, lai izv\u0113l\u0113tos",new_transaction:"Jauns dar\u012Bjums",no_matching_customers:"Netika atrasts neviens klients!",phone_number:"Telefona numurs",create_date:"Izveido\u0161anas datums",confirm_delete:"J\u016Bs nevar\u0113sit atg\u016Bt \u0161o klientu un visus saist\u012Btos r\u0113\u0137inus, apr\u0113\u0137inus un maks\u0101jumus.",created_message:"Klients izveidots veiksm\u012Bgi",updated_message:"Klients atjaunin\u0101ts veiksm\u012Bgi",address_updated_message:"Address Information Updated succesfully",deleted_message:"Klients veiksm\u012Bgi izdz\u0113sts",edit_currency_not_allowed:"Nevar izmain\u012Bt val\u016Btu, ja maks\u0101jums ir veikts."},mv={title:"Preces",items_list:"Pre\u010Du saraksts",name:"Nosaukums",unit:"Vien\u012Bba",description:"Apraksts",added_on:"Pievienots",price:"Cena",date_of_creation:"Izveido\u0161anas datums",not_selected:"Nekas netika izv\u0113l\u0113ts",action:"Darb\u012Bba",add_item:"Pievienot",save_item:"Saglab\u0101t",update_item:"Atjaunin\u0101t",item:"Prece | Preces",add_new_item:"Pievienot jaunu preci",new_item:"Jauna prece",edit_item:"Redi\u0123\u0113t preci",no_items:"Nav pre\u010Du!",list_of_items:"\u0160aj\u0101 sada\u013C\u0101 b\u016Bs pre\u010Du/pakalpojumu saraksts.",select_a_unit:"atlasiet vien\u012Bbu",taxes:"Nodok\u013Ci",item_attached_message:"Nevar dz\u0113st preci, kura tiek izmantota",confirm_delete:"J\u016Bs nevar\u0113siet atg\u016Bt \u0161o preci",created_message:"Prece izveidota veiksm\u012Bgi",updated_message:"Prece atjaunin\u0101ta veiksm\u012Bgi",deleted_message:"Prece veiksm\u012Bgi izdz\u0113sta"},pv={title:"Apr\u0113\u0137ini",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"Apr\u0113\u0137ins | Apr\u0113\u0137ini",estimates_list:"Apr\u0113\u0137inu saraksts",days:"{days} Dienas",months:"{months} M\u0113nesis",years:"{years} Gads",all:"Visi",paid:"Apmaks\u0101ts",unpaid:"Neapmaks\u0101ts",customer:"KLIENTS",ref_no:"REF NR.",number:"NUMURS",amount_due:"Summa apmaksai",partially_paid:"Da\u013C\u0113ji apmaks\u0101ts",total:"Kop\u0101",discount:"Atlaide",sub_total:"Starpsumma",estimate_number:"Apr\u0113\u0137ina numurs",ref_number:"Ref numurs",contact:"Kontakti",add_item:"Pievienot preci",date:"Datums",due_date:"Apmaksas termi\u0146\u0161",expiry_date:"Termi\u0146a beigu datums",status:"Status",add_tax:"Pievienot nodokli",amount:"Summa",action:"Darb\u012Bba",notes:"Piez\u012Bmes",tax:"Nodoklis",estimate_template:"Sagatave",convert_to_invoice:"P\u0101rveidot par r\u0113\u0137inu",mark_as_sent:"Atz\u012Bm\u0113t k\u0101 nos\u016Bt\u012Btu",send_estimate:"Nos\u016Bt\u012Bt apr\u0113\u0137inu",resend_estimate:"Atk\u0101rtoti nos\u016Bt\u012Bt apr\u0113\u0137inu",record_payment:"Izveidot maks\u0101jumu",add_estimate:"Pievienot apr\u0113\u0137inu",save_estimate:"Saglab\u0101t apr\u0113\u0137inu",confirm_conversion:"\u0160is apr\u0113\u0137ins tiks izmantots, lai izveidotu jaunu r\u0113\u0137inu.",conversion_message:"R\u0113\u0137ins izveidots veiksm\u012Bgi",confirm_send_estimate:"\u0160is apr\u0113\u0137ins tiks nos\u016Bt\u012Bts klientam e-past\u0101",confirm_mark_as_sent:"Apr\u0113\u0137ins tiks atz\u012Bm\u0113ts k\u0101 nos\u016Bt\u012Bts",confirm_mark_as_accepted:"Apr\u0113\u0137ins tiks atz\u012Bm\u0113ts k\u0101 apstiprin\u0101ts",confirm_mark_as_rejected:"Apr\u0113\u0137ins tiks atz\u012Bm\u0113ts k\u0101 noraid\u012Bts",no_matching_estimates:"Netika atrasts neviens apr\u0113\u0137ins!",mark_as_sent_successfully:"Apr\u0113\u0137ins atz\u012Bm\u0113ts k\u0101 veiksm\u012Bgi nos\u016Bt\u012Bts",send_estimate_successfully:"Apr\u0113\u0137ins veiksm\u012Bgi nos\u016Bt\u012Bts",errors:{required:"\u0160is lauks ir oblig\u0101ts"},accepted:"Apstiprin\u0101ts",rejected:"Noraid\u012Bts",expired:"Expired",sent:"Nos\u016Bt\u012Bts",draft:"Melnraksts",viewed:"Viewed",declined:"Noraid\u012Bts",new_estimate:"Jauns apr\u0113\u0137ins",add_new_estimate:"Pievienot jaunu apr\u0113\u0137inu",update_Estimate:"Atjaunin\u0101t apr\u0113\u0137inu",edit_estimate:"Labot apr\u0113\u0137inu",items:"preces",Estimate:"Apr\u0113\u0137ins | Apr\u0113\u0137ini",add_new_tax:"Pievienot jaunu nodokli",no_estimates:"V\u0113l nav apr\u0113\u0137inu!",list_of_estimates:"\u0160aj\u0101 sada\u013C\u0101 b\u016Bs apr\u0113\u0137inu saraksts.",mark_as_rejected:"Atz\u012Bm\u0113t k\u0101 noraid\u012Btu",mark_as_accepted:"Atz\u012Bm\u0113t k\u0101 apstiprin\u0101tu",marked_as_accepted_message:"Apr\u0113\u0137ins atz\u012Bm\u0113ts k\u0101 apstiprin\u0101ts",marked_as_rejected_message:"Apr\u0113\u0137ins atz\u012Bm\u0113ts k\u0101 noraid\u012Bts",confirm_delete:"J\u016Bs nevar\u0113siet atg\u016Bt \u0161o apr\u0113\u0137inu | J\u016Bs nevar\u0113siet atg\u016Bt \u0161o apr\u0113\u0137inus",created_message:"Apr\u0113\u0137ins izveidots veiksm\u012Bgi",updated_message:"Apr\u0113\u0137ins atjaunin\u0101ts veiksm\u012Bgi",deleted_message:"Apr\u0113\u0137ins veiksm\u012Bgi izdz\u0113sts | Apr\u0113\u0137ini veiksm\u012Bgi izdz\u0113sti",something_went_wrong:"kaut kas nog\u0101ja greizi",item:{title:"Preces nosaukums",description:"Apraksts",quantity:"Daudzums",price:"Cena",discount:"Atlaide",total:"Kop\u0101",total_discount:"Kop\u0113j\u0101 atlaide",sub_total:"Starpsumma",tax:"Nodoklis",amount:"Summa",select_an_item:"Rakst\u012Bt vai spiest, lai izv\u0113l\u0113tos",type_item_description:"Ievadiet preces/pakalpojuma aprakstu (nav oblig\u0101ti)"}},gv={title:"R\u0113\u0137ini",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"R\u0113\u0137inu saraksts",invoice_information:"Invoice Information",days:"{days} Dienas",months:"{months} M\u0113nesis",years:"{years} Gads",all:"Visi",paid:"Apmaks\u0101ts",unpaid:"Neapmaks\u0101ts",viewed:"Apskat\u012Bts",overdue:"Kav\u0113ts",completed:"Pabeigts",customer:"KLIENTS",paid_status:"APMAKSAS STATUS",ref_no:"REF NR.",number:"NUMURS",amount_due:"SUMMA APMAKSAI",partially_paid:"Da\u013C\u0113ji apmaks\u0101ts",total:"Kop\u0101",discount:"Atlaide",sub_total:"Starpsumma",invoice:"R\u0113\u0137ins | R\u0113\u0137ini",invoice_number:"R\u0113\u0137ina numurs",ref_number:"Ref numurs",contact:"Kontakti",add_item:"Pievienot preci",date:"Datums",due_date:"Apmaksas termi\u0146\u0161",status:"Status",add_tax:"Pievienot nodokli",amount:"Summa",action:"Darb\u012Bba",notes:"Piez\u012Bmes",view:"Skat\u012Bt",send_invoice:"Nos\u016Bt\u012Bt r\u0113\u0137inu",resend_invoice:"Nos\u016Bt\u012Bt r\u0113\u0137inu atk\u0101rtoti",invoice_template:"R\u0113\u0137ina sagatave",conversion_message:"R\u0113\u0137ins ir veiksm\u012Bgi nokop\u0113ts",template:"Sagatave",mark_as_sent:"Atz\u012Bm\u0113t k\u0101 nos\u016Bt\u012Btu",confirm_send_invoice:"\u0160is r\u0113\u0137ins tiks nos\u016Bt\u012Bts klientam e-past\u0101",invoice_mark_as_sent:"R\u0113\u0137ins tiks atz\u012Bm\u0113ts k\u0101 nos\u016Bt\u012Bts",confirm_mark_as_accepted:"R\u0113\u0137ins tiks atz\u012Bm\u0113ts k\u0101 apstiprin\u0101ts",confirm_mark_as_rejected:"R\u0113\u0137ins tiks atz\u012Bm\u0113ts k\u0101 noraid\u012Bts",confirm_send:"\u0160is r\u0113\u0137ins tiks nos\u016Bt\u012Bts klientam e-past\u0101",invoice_date:"R\u0113\u0137ina datums",record_payment:"Izveidot maks\u0101jumu",add_new_invoice:"Jauns r\u0113\u0137ins",update_expense:"Atjaunin\u0101t izdevumu",edit_invoice:"Redi\u0123\u0113t r\u0113\u0137inu",new_invoice:"Jauns r\u0113\u0137ins",save_invoice:"Saglab\u0101t r\u0113\u0137inu",update_invoice:"Atjaunin\u0101t r\u0113\u0137inu",add_new_tax:"Pievienot jaunu nodokli",no_invoices:"V\u0113l nav r\u0113\u0137inu!",mark_as_rejected:"Atz\u012Bm\u0113t k\u0101 noraid\u012Btu",mark_as_accepted:"Atz\u012Bm\u0113t k\u0101 apstiprin\u0101tu",list_of_invoices:"\u0160aj\u0101 sada\u013C\u0101 b\u016Bs r\u0113\u0137inu saraksts.",select_invoice:"Izv\u0113laties r\u0113\u0137inu",no_matching_invoices:"Netika atrasts neviens r\u0113\u0137ins!",mark_as_sent_successfully:"R\u0113\u0137ins atz\u012Bm\u0113ts k\u0101 veiksm\u012Bgi nos\u016Bt\u012Bts",invoice_sent_successfully:"R\u0113\u0137ins ir veiksm\u012Bgi nos\u016Bt\u012Bts",cloned_successfully:"R\u0113\u0137ins ir veiksm\u012Bgi nokop\u0113ts",clone_invoice:"Kop\u0113t r\u0113\u0137inu",confirm_clone:"\u0160is r\u0113\u0137ins tiks nokop\u0113ts k\u0101 jauns r\u0113\u0137ins",item:{title:"Preces nosaukums",description:"Apraksts",quantity:"Daudzums",price:"Cena",discount:"Atlaide",total:"Kop\u0101",total_discount:"Kop\u0113j\u0101 atlaide",sub_total:"Starpsumma",tax:"Nodoklis",amount:"Summa",select_an_item:"Rakst\u012Bt vai spiest, lai izv\u0113l\u0113tos",type_item_description:"Ievadiet preces/pakalpojuma aprakstu (nav oblig\u0101ti)"},payment_attached_message:"Vienam no atz\u012Bm\u0113tajiem r\u0113\u0137iniem jau ir pievienots maks\u0101jums. P\u0101rliecinieties, ka pievienoti maks\u0101jumi ir izdz\u0113sti",confirm_delete:"J\u016Bs nevar\u0113siet atg\u016Bt \u0161o r\u0113\u0137inu | J\u016Bs nevar\u0113siet atg\u016Bt \u0161os r\u0113\u0137inus",created_message:"R\u0113\u0137ins izveidots veiksm\u012Bgi",updated_message:"R\u0113\u0137ins ir veiksm\u012Bgi atjaunin\u0101ts",deleted_message:"R\u0113\u0137ins veiksm\u012Bgi izdz\u0113sts | R\u0113\u0137ini veiksm\u012Bgi izdz\u0113sti",marked_as_sent_message:"R\u0113\u0137ins atz\u012Bm\u0113ts k\u0101 veiksm\u012Bgi nos\u016Bt\u012Bts",something_went_wrong:"kaut kas nog\u0101ja greizi",invalid_due_amount_message:"R\u0113\u0137ina kop\u0113j\u0101 summa nevar b\u016Bt maz\u0101ka par kop\u0113jo apmaks\u0101to summu. L\u016Bdzu atjauniniet r\u0113\u0137inu vai dz\u0113siet piesaist\u012Btos maks\u0101jumus, lai turpin\u0101tu."},fv={title:"Regul\u0101rie r\u0113\u0137ini",invoices_list:"Regul\u0101ro r\u0113\u0137inu saraksts",days:"{days} Dienas",months:"{months} Month",years:"{years} Year",all:"All",paid:"Paid",unpaid:"Unpaid",viewed:"Viewed",overdue:"Overdue",active:"Active",completed:"Completed",customer:"CUSTOMER",paid_status:"PAID STATUS",ref_no:"REF NO.",number:"NUMBER",amount_due:"AMOUNT DUE",partially_paid:"Partially Paid",total:"Total",discount:"Discount",sub_total:"Sub Total",invoice:"Recurring Invoice | Recurring Invoices",invoice_number:"Recurring Invoice Number",next_invoice_date:"Next Invoice Date",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",limit_by:"Limit by",limit_date:"Limit Date",limit_count:"Limit Count",count:"Count",status:"Status",select_a_status:"Select a status",working:"Working",on_hold:"On Hold",complete:"Completed",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",view:"View",basic_info:"Basic Info",send_invoice:"Send Recurring Invoice",auto_send:"Auto Send",resend_invoice:"Resend Recurring Invoice",invoice_template:"Recurring Invoice Template",conversion_message:"Recurring Invoice cloned successful",template:"Template",mark_as_sent:"Mark as sent",confirm_send_invoice:"This recurring invoice will be sent via email to the customer",invoice_mark_as_sent:"This recurring invoice will be marked as sent",confirm_send:"This recurring invoice will be sent via email to the customer",starts_at:"S\u0101kuma datums",due_date:"R\u0113\u0137ina apmaksas datumu",record_payment:"Izveidot maks\u0101jumu",add_new_invoice:"Pievienot jaunu regul\u0101ro r\u0113\u0137inu",update_expense:"Update Expense",edit_invoice:"Edit Recurring Invoice",new_invoice:"New Recurring Invoice",send_automatically:"Send Automatically",send_automatically_desc:"Enable this, if you would like to send the invoice automatically to the customer when its created.",save_invoice:"Save Recurring Invoice",update_invoice:"Update Recurring Invoice",add_new_tax:"Add New Tax",no_invoices:"No Recurring Invoices yet!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"This section will contain the list of recurring invoices.",select_invoice:"Select Invoice",no_matching_invoices:"There are no matching recurring invoices!",mark_as_sent_successfully:"Recurring Invoice marked as sent successfully",invoice_sent_successfully:"Recurring Invoice sent successfully",cloned_successfully:"Recurring Invoice cloned successfully",clone_invoice:"Clone Recurring Invoice",confirm_clone:"This recurring invoice will be cloned into a new Recurring Invoice",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"},frequency:{title:"Frequency",select_frequency:"Select Frequency",minute:"Minute",hour:"Hour",day_month:"Day of month",month:"Month",day_week:"Day of week"},confirm_delete:"You will not be able to recover this Invoice | You will not be able to recover these Invoices",created_message:"Recurring Invoice created successfully",updated_message:"Recurring Invoice updated successfully",deleted_message:"Recurring Invoice deleted successfully | Recurring Invoices deleted successfully",marked_as_sent_message:"Recurring Invoice marked as sent successfully",user_email_does_not_exist:"User email does not exist",something_went_wrong:"something went wrong",invalid_due_amount_message:"Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue."},vv={title:"Maks\u0101jumi",payments_list:"Maks\u0101jumu saraksts",record_payment:"Izveidot maks\u0101jumu",customer:"Klients",date:"Datums",amount:"Summa",action:"Darb\u012Bba",payment_number:"Maks\u0101juma numurs",payment_mode:"Apmaksas veids",invoice:"R\u0113\u0137ins",note:"Piez\u012Bme",add_payment:"Pievienot maks\u0101jumu",new_payment:"Jauns maks\u0101jums",edit_payment:"Labot maks\u0101jumu",view_payment:"Skat\u012Bt maks\u0101jumu",add_new_payment:"Pievienot jaunu maks\u0101jumu",send_payment_receipt:"Nos\u016Bt\u012Bt maks\u0101juma izdruku",send_payment:"Nos\u016Bt\u012Bt maks\u0101jumu",save_payment:"Saglab\u0101t maks\u0101jumu",update_payment:"Labot maks\u0101jumu",payment:"Maks\u0101jums | Maks\u0101jumi",no_payments:"Nav pievienotu maks\u0101jumu!",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"Netika atrasts neviens maks\u0101jums!",list_of_payments:"\u0160aj\u0101 sada\u013C\u0101 b\u016Bs maks\u0101jumu saraksts.",select_payment_mode:"Izv\u0113l\u0113ties maks\u0101juma veidu",confirm_mark_as_sent:"Apr\u0113\u0137ins tiks atz\u012Bm\u0113ts k\u0101 nos\u016Bt\u012Bts",confirm_send_payment:"\u0160is maks\u0101jums tiks nos\u016Bt\u012Bts klientam e-past\u0101",send_payment_successfully:"Maks\u0101jums veiksm\u012Bgi nos\u016Bt\u012Bts",something_went_wrong:"kaut kas nog\u0101ja greizi",confirm_delete:"J\u016Bs nevar\u0113siet atg\u016Bt \u0161o maks\u0101jumu | J\u016Bs nevar\u0113siet atg\u016Bt \u0161os maks\u0101jumus",created_message:"Maks\u0101jums veiksm\u012Bgi izveidots",updated_message:"Maks\u0101jums veiksm\u012Bgi labots",deleted_message:"Maks\u0101jums veiksm\u012Bgi izdz\u0113sts | Maks\u0101jumi veiksm\u012Bgi izdz\u0113sti",invalid_amount_message:"Maks\u0101juma summa nav pareiza"},hv={title:"Izdevumi",expenses_list:"Izdevumu saraksts",select_a_customer:"Izv\u0113l\u0113ties klientu",expense_title:"Nosaukums",customer:"Klients",currency:"Currency",contact:"Kontakti",category:"Kategorija",from_date:"Datums no",to_date:"Datums l\u012Bdz",expense_date:"Datums",description:"Apraksts",receipt:"\u010Ceks",amount:"Summa",action:"Darb\u012Bba",not_selected:"Not selected",note:"Piez\u012Bme",category_id:"Kategorijas Id",date:"Datums",add_expense:"Pievienot izdevumu",add_new_expense:"Pievienot jaunu izdevumu",save_expense:"Saglab\u0101t izdevumu",update_expense:"Atjaunin\u0101t izdevumu",download_receipt:"Lejupiel\u0101d\u0113t \u010Deku",edit_expense:"Labot izdevumu",new_expense:"Jauns izdevums",expense:"Izdevums | Izdevumi",no_expenses:"V\u0113l nav izdevumu!",list_of_expenses:"\u0160aj\u0101 sada\u013C\u0101 b\u016Bs izdevumu saraksts.",confirm_delete:"J\u016Bs nevar\u0113siet atg\u016Bt \u0161o izdevumu | J\u016Bs nevar\u0113siet atg\u016Bt \u0161os izdevumus",created_message:"Izdevums izveidots veiksm\u012Bgi",updated_message:"Izdevums atjaunin\u0101ts veiksm\u012Bgi",deleted_message:"Izdevums veiksm\u012Bgi izdz\u0113sts | Izdevumi veiksm\u012Bgi izdz\u0113sti",categories:{categories_list:"Kategoriju saraksts",title:"Nosaukums",name:"V\u0101rds",description:"Apraksts",amount:"Summa",actions:"Darb\u012Bbas",add_category:"Pievienot kategoriju",new_category:"Jauna Kategorija",category:"Kategorija | Kategorijas",select_a_category:"Izv\u0113lieties kategoriju"}},yv={email:"E-pasts",password:"Parole",forgot_password:"Aizmirsi paroli?",or_signIn_with:"vai pierakst\u012Bties ar",login:"Ielogoties",register:"Re\u0123istr\u0113ties",reset_password:"Atjaunot paroli",password_reset_successfully:"Parole atjaunota veiksm\u012Bgi",enter_email:"Ievadiet e-pastu",enter_password:"Ievadiet paroli",retype_password:"Atk\u0101rtoti ievadiet paroli"},bv={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},kv={title:"Lietot\u0101ji",users_list:"Lietot\u0101ju saraksts",name:"V\u0101rds",description:"Apraksts",added_on:"Pievienots",date_of_creation:"Izveido\u0161anas datums",action:"Darb\u012Bba",add_user:"Pievienot lietot\u0101ju",save_user:"Saglab\u0101t lietot\u0101ju",update_user:"Atjaunin\u0101t lietot\u0101ju",user:"Lietot\u0101js | Lietot\u0101ji",add_new_user:"Pievienot jaunu lietot\u0101ju",new_user:"Jauns lietot\u0101js",edit_user:"Redi\u0123\u0113t lietot\u0101ju",no_users:"Pagaid\u0101m nav lietot\u0101ju!",list_of_users:"\u0160aj\u0101 sada\u013C\u0101 b\u016Bs lietot\u0101ju saraksts.",email:"E-pasts",phone:"Telefona numurs",password:"Parole",user_attached_message:"Nevar dz\u0113st preci, kura tiek izmantota",confirm_delete:"J\u016Bs nevar\u0113siet atg\u016Bt \u0161o lietot\u0101ju | J\u016Bs nevar\u0113siet atg\u016Bt \u0161os lietot\u0101jus",created_message:"Lietot\u0101js veiksm\u012Bgi izveidots",updated_message:"Lietot\u0101js veiksm\u012Bgi labots",deleted_message:"Lietot\u0101js veiksm\u012Bgi izdz\u0113sts",select_company_role:"Select Role for {company}",companies:"Companies"},wv={title:"Atskaite",from_date:"Datums no",to_date:"Datums l\u012Bdz",status:"Status",paid:"Apmaks\u0101ts",unpaid:"Neapmaks\u0101ts",download_pdf:"Lejupiel\u0101d\u0113t PDF",view_pdf:"Apskat\u012Bt PDF",update_report:"Labot atskaiti",report:"Atskaite | Atskaites",profit_loss:{profit_loss:"Pe\u013C\u0146a & Zaud\u0113jumi",to_date:"Datums l\u012Bdz",from_date:"Datums no",date_range:"Izv\u0113l\u0113ties datumus"},sales:{sales:"P\u0101rdotais",date_range:"Izv\u0113l\u0113ties datumus",to_date:"Datums l\u012Bdz",from_date:"Datums no",report_type:"Atskaites veids"},taxes:{taxes:"Nodok\u013Ci",to_date:"Datums l\u012Bdz",from_date:"Datums no",date_range:"Izv\u0113l\u0113ties datumus"},errors:{required:"\u0160is lauks ir oblig\u0101ts"},invoices:{invoice:"R\u0113\u0137ins",invoice_date:"R\u0113\u0137ina datums",due_date:"Apmaksas termi\u0146\u0161",amount:"Summa",contact_name:"Kontaktpersonas v\u0101rds",status:"Status"},estimates:{estimate:"Apr\u0113\u0137ins",estimate_date:"Apr\u0113\u0137ina datums",due_date:"Termi\u0146\u0161",estimate_number:"Apr\u0113\u0137ina numurs",ref_number:"Ref numurs",amount:"Summa",contact_name:"Kontaktpersonas v\u0101rds",status:"Status"},expenses:{expenses:"Izdevumi",category:"Kategorija",date:"Datums",amount:"Summa",to_date:"Datums l\u012Bdz",from_date:"Datums no",date_range:"Izv\u0113l\u0113ties datumus"}},xv={menu_title:{account_settings:"Konta iestat\u012Bjumi",company_information:"Uz\u0146\u0113muma inform\u0101cija",customization:"Piel\u0101go\u0161ana",preferences:"Iestat\u012Bjumi",notifications:"Pazi\u0146ojumi",tax_types:"Nodok\u013Cu veidi",expense_category:"Izdevumu kategorijas",update_app:"Atjaunin\u0101t App",backup:"Rezerves kopija",file_disk:"Disks",custom_fields:"Piel\u0101gotie lauki",payment_modes:"Apmaksas veidi",notes:"Piez\u012Bmes",exchange_rate:"Exchange Rate",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"Iestat\u012Bjumi",setting:"Iestat\u012Bjumi | Iestat\u012Bjumi",general:"Visp\u0101r\u012Bgi",language:"Valoda",primary_currency:"Prim\u0101r\u0101 val\u016Bta",timezone:"Laika josla",date_format:"Datuma form\u0101ts",currencies:{title:"Val\u016Btas",currency:"Val\u016Bta | Val\u016Btas",currencies_list:"Val\u016Btu saraksts",select_currency:"Izv\u0113leties val\u016Btu",name:"Nosaukums",code:"Kods",symbol:"Simbols",precision:"Precizit\u0101te",thousand_separator:"T\u016Bksto\u0161u atdal\u012Bt\u0101js",decimal_separator:"Decim\u0101lda\u013Cu atdal\u012Bt\u0101js",position:"Poz\u012Bcija",position_of_symbol:"Poz\u012Bcijas simbols",right:"Pa labi",left:"Pa kreisi",action:"Darb\u012Bba",add_currency:"Pievienot val\u016Btu"},mail:{host:"E-pasta serveris",port:"E-pasta ports",driver:"E-pasta draiveris",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Dom\u0113ns",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"E-pasta parole",username:"E-pasta lietot\u0101jv\u0101rds",mail_config:"E-pasta konfigur\u0101cija",from_name:"E-pasts no",from_mail:"E-pasta adrese no kuras s\u016Bt\u012Bt",encryption:"E-pasta \u0161ifr\u0113\u0161ana",mail_config_desc:"Zem\u0101k ir e-pasta konfigur\u0113\u0161anas forma. J\u016Bs varat konfigur\u0113t ar\u012B tre\u0161\u0101s puses servisus k\u0101 Sendgrid, SES u.c."},pdf:{title:"PDF uzst\u0101d\u012Bjumi",footer_text:"K\u0101jenes teksts",pdf_layout:"PDF izk\u0101rtojums"},company_info:{company_info:"Uz\u0146\u0113muma inform\u0101cija",company_name:"Uz\u0146\u0113muma nosaukums",company_logo:"Uz\u0146\u0113muma logo",section_description:"Inform\u0101cija par uz\u0146\u0113mumu kura tiks uzr\u0101d\u012Bta r\u0113\u0137inos, apr\u0113\u0137inos un citos dokumentos kurus veidosiet Crater sist\u0113m\u0101.",phone:"Telefona numurs",country:"Valsts",state:"Re\u0123ions",city:"Pils\u0113ta",address:"Adrese",zip:"Pasta indekss",save:"Saglab\u0101t",delete:"Delete",updated_message:"Uz\u0146\u0113muma inform\u0101cija veiksm\u012Bgi saglab\u0101ta",delete_company:"Delete Company",delete_company_description:"Once you delete your company, you will lose all the data and files associated with it permanently.",are_you_absolutely_sure:"Are you absolutely sure?",delete_company_modal_desc:"This action cannot be undone. This will permanently delete {company} and all of its associated data.",delete_company_modal_label:"Please type {company} to confirm"},custom_fields:{title:"Piel\u0101gotie lauki",section_description:"Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.",add_custom_field:"Add Custom Field",edit_custom_field:"Edit Custom Field",field_name:"Field Name",label:"Label",type:"Type",name:"Name",slug:"Slug",required:"Required",placeholder:"Placeholder",help_text:"Help Text",default_value:"Noklus\u0113juma v\u0113rt\u012Bba",prefix:"Prefikss",starting_number:"S\u0101kuma numurs",model:"Modelis",help_text_description:"Enter some text to help users understand the purpose of this custom field.",suffix:"Suffix",yes:"J\u0101",no:"N\u0113",order:"Order",custom_field_confirm_delete:"You will not be able to recover this Custom Field",already_in_use:"Custom Field is already in use",deleted_message:"Custom Field deleted successfully",options:"options",add_option:"Add Options",add_another_option:"Add another option",sort_in_alphabetical_order:"Sort in Alphabetical Order",add_options_in_bulk:"Add options in bulk",use_predefined_options:"Use Predefined Options",select_custom_date:"Select Custom Date",select_relative_date:"Select Relative Date",ticked_by_default:"Ticked by default",updated_message:"Custom Field updated successfully",added_message:"Custom Field added successfully",press_enter_to_add:"Press enter to add new option",model_in_use:"Cannot update model for fields which are already in use.",type_in_use:"Cannot update type for fields which are already in use."},customization:{customization:"piel\u0101go\u0161ana",updated_message:"Uz\u0146\u0113muma inform\u0101cija veiksm\u012Bgi saglab\u0101ta",save:"Saglab\u0101t",insert_fields:"Insert Fields",learn_custom_format:"Learn how to use custom format",add_new_component:"Add New Component",component:"Component",Parameter:"Parameter",series:"Series",series_description:"To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.",series_param_label:"Series Value",delimiter:"Delimiter",delimiter_description:"Single character for specifying the boundary between 2 separate components. By default its set to -",delimiter_param_label:"Delimiter Value",date_format:"Date Format",date_format_description:"A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.",date_format_param_label:"Format",sequence:"Sequence",sequence_description:"Consecutive sequence of numbers across your company. You can specify the length on the given parameter.",sequence_param_label:"Sequence Length",customer_series:"Customer Series",customer_series_description:"To set a different prefix/postfix for each customer.",customer_sequence:"Customer Sequence",customer_sequence_description:"Consecutive sequence of numbers for each of your customer.",customer_sequence_param_label:"Sequence Length",random_sequence:"Random Sequence",random_sequence_description:"Random alphanumeric string. You can specify the length on the given parameter.",random_sequence_param_label:"Sequence Length",invoices:{title:"R\u0113\u0137ini",invoice_number_format:"Invoice Number Format",invoice_number_format_description:"Customize how your invoice number gets generated automatically when you create a new invoice.",preview_invoice_number:"Preview Invoice Number",due_date:"Due Date",due_date_description:"Specify how due date is automatically set when you create an invoice.",due_date_days:"Invoice Due after days",set_due_date_automatically:"Set Due Date Automatically",set_due_date_automatically_description:"Enable this if you wish to set due date automatically when you create a new invoice.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on invoice creation.",default_invoice_email_body:"Default Invoice Email Body",company_address_format:"Uz\u0146\u0113muma adreses form\u0101ts",shipping_address_format:"Pieg\u0101des adreses form\u0101ts",billing_address_format:"Maks\u0101t\u0101ja / Uz\u0146\u0113muma adreses form\u0101ts",invoice_email_attachment:"Send invoices as attachments",invoice_email_attachment_setting_description:"Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.",invoice_settings_updated:"Invoice Settings updated successfully",retrospective_edits:"Retrospective Edits",allow:"Allow",disable_on_invoice_partial_paid:"Disable after partial payment is recorded",disable_on_invoice_paid:"Disable after full payment is recorded",disable_on_invoice_sent:"Disable after invoice is sent",retrospective_edits_description:" Based on your country's laws or your preference, you can restrict users from editing finalised invoices."},estimates:{title:"Apr\u0113\u0137ini",estimate_number_format:"Estimate Number Format",estimate_number_format_description:"Customize how your estimate number gets generated automatically when you create a new estimate.",preview_estimate_number:"Preview Estimate Number",expiry_date:"Expiry Date",expiry_date_description:"Specify how expiry date is automatically set when you create an estimate.",expiry_date_days:"Estimate Expires after days",set_expiry_date_automatically:"Set Expiry Date Automatically",set_expiry_date_automatically_description:"Enable this if you wish to set expiry date automatically when you create a new estimate.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on estimate creation.",default_estimate_email_body:"Noklus\u0113jamais Apr\u0113\u0137ina e-pasta saturs",company_address_format:"Uz\u0146\u0113muma adreses form\u0101ts",shipping_address_format:"Pieg\u0101des adreses form\u0101ts",billing_address_format:"Maks\u0101t\u0101ja / Uz\u0146\u0113muma adreses form\u0101ts",estimate_email_attachment:"Send estimates as attachments",estimate_email_attachment_setting_description:"Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.",estimate_settings_updated:"Estimate Settings updated successfully",convert_estimate_options:"Estimate Convert Action",convert_estimate_description:"Specify what happens to the estimate after it gets converted to an invoice.",no_action:"No action",delete_estimate:"Delete estimate",mark_estimate_as_accepted:"Mark estimate as accepted"},payments:{title:"Maks\u0101jumi",payment_number_format:"Payment Number Format",payment_number_format_description:"Customize how your payment number gets generated automatically when you create a new payment.",preview_payment_number:"Preview Payment Number",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on payment creation.",default_payment_email_body:"Noklus\u0113jamais Maks\u0101juma e-pasta saturs",company_address_format:"Uz\u0146\u0113muma adreses form\u0101ts",from_customer_address_format:"No Klienta adreses form\u0101ts",payment_email_attachment:"Send payments as attachments",payment_email_attachment_setting_description:"Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.",payment_settings_updated:"Payment Settings updated successfully"},items:{title:"Preces",units:"Vien\u012Bbas",add_item_unit:"Pievienot Preces vien\u012Bbu",edit_item_unit:"Labot Preces vien\u012Bbu",unit_name:"Vien\u012Bbas nosaukums",item_unit_added:"Preces vien\u012Bba pievienota",item_unit_updated:"Preces vien\u012Bba atjaunota",item_unit_confirm_delete:"Jums neb\u016Bs iesp\u0113jas atg\u016Bt \u0161o Preces vien\u012Bbu",already_in_use:"Preces vien\u012Bba jau tiek izmantota",deleted_message:"Preces vien\u012Bba veiksm\u012Bgi izdz\u0113sta"},notes:{title:"Piez\u012Bmes",description:"Save time by creating notes and reusing them on your invoices, estimates & payments.",notes:"Notes",type:"Type",add_note:"Add Note",add_new_note:"Add New Note",name:"Name",edit_note:"Edit Note",note_added:"Note added successfully",note_updated:"Note Updated successfully",note_confirm_delete:"You will not be able to recover this Note",already_in_use:"Note is already in use",deleted_message:"Note deleted successfully"}},account_settings:{profile_picture:"Profile Picture",name:"Name",email:"Email",password:"Password",confirm_password:"Confirm Password",account_settings:"Account Settings",save:"Save",section_description:"You can update your name, email & password using the form below.",updated_message:"Account Settings updated successfully"},user_profile:{name:"Name",email:"Email",password:"Password",confirm_password:"Confirm Password"},notification:{title:"Notifications",email:"Send Notifications to",description:"Which email notifications would you like to receive when something changes?",invoice_viewed:"Invoice viewed",invoice_viewed_desc:"When your customer views the invoice sent via crater dashboard.",estimate_viewed:"Estimate viewed",estimate_viewed_desc:"When your customer views the estimate sent via crater dashboard.",save:"Save",email_save_message:"Email saved successfully",please_enter_email:"Please Enter Email"},roles:{title:"Roles",description:"Manage the roles & permissions of this company",save:"Save",add_new_role:"Add New Role",role_name:"Role Name",added_on:"Added on",add_role:"Add Role",edit_role:"Edit Role",name:"Name",permission:"Permission | Permissions",select_all:"Select All",none:"None",confirm_delete:"You will not be able to recover this Role",created_message:"Role created successfully",updated_message:"Role updated successfully",deleted_message:"Role deleted successfully",already_in_use:"Role is already in use"},exchange_rate:{exchange_rate:"Exchange Rate",title:"Fix Currency Exchange issues",description:"Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.",drivers:"Drivers",new_driver:"Add New Provider",edit_driver:"Edit Provider",select_driver:"Select Driver",update:"select exchange rate ",providers_description:"Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.",key:"API Key",name:"Name",driver:"Driver",is_default:"IS DEFAULT",currency:"Currencies",exchange_rate_confirm_delete:"You will not be able to recover this driver",created_message:"Provider Created successfully",updated_message:"Provider Updated Successfully",deleted_message:"Provider Deleted Successfully",error:" You cannot Delete Active Driver",default_currency_error:"This currency is already used in one of the Active Provider",exchange_help_text:"Enter exchange rate to convert from {currency} to {baseCurrency}",currency_freak:"Currency Freak",currency_layer:"Currency Layer",open_exchange_rate:"Open Exchange Rate",currency_converter:"Currency Converter",server:"Server",url:"URL",active:"Active",currency_help_text:"This provider will only be used on above selected currencies",currency_in_used:"The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again."},tax_types:{title:"Tax Types",add_tax:"Add Tax",edit_tax:"Edit Tax",description:"You can add or Remove Taxes as you please. Crater supports Taxes on Individual Items as well as on the invoice.",add_new_tax:"Add New Tax",tax_settings:"Tax Settings",tax_per_item:"Tax Per Item",tax_name:"Tax Name",compound_tax:"Compound Tax",percent:"Percent",action:"Action",tax_setting_description:"Enable this if you want to add taxes to individual invoice items. By default, taxes are added directly to the invoice.",created_message:"Tax type created successfully",updated_message:"Tax type updated successfully",deleted_message:"Tax type deleted successfully",confirm_delete:"Jums neb\u016Bs iesp\u0113jas atg\u016Bt \u0161o Nodok\u013Ca veidu",already_in_use:"Nodoklis jau tiek izmantots"},payment_modes:{title:"Payment Modes",description:"Modes of transaction for payments",add_payment_mode:"Add Payment Mode",edit_payment_mode:"Edit Payment Mode",mode_name:"Mode Name",payment_mode_added:"Payment Mode Added",payment_mode_updated:"Payment Mode Updated",payment_mode_confirm_delete:"You will not be able to recover this Payment Mode",already_in_use:"Payment Mode is already in use",deleted_message:"Payment Mode deleted successfully"},expense_category:{title:"Izdevumu kategorijas",action:"Darb\u012Bba",description:"Kategorijas ir oblig\u0101tas, lai pievienotu Izdevumus.",add_new_category:"Pievienot jaunu kategoriju",add_category:"Pievienot kategoriju",edit_category:"Redi\u0123\u0113t kategoriju",category_name:"Kategorijas nosaukums",category_description:"Apraksts",created_message:"Izdevumu kategorija izveidota veiksm\u012Bgi",deleted_message:"Izdevumu kategorija veiksm\u012Bgi izdz\u0113sta",updated_message:"Izdevumu kategorija atjaunin\u0101ta veiksm\u012Bgi",confirm_delete:"Jums neb\u016Bs iesp\u0113jas atg\u016Bt \u0161o Izdevumu kategoriju",already_in_use:"Kategorija jau tiek izmantota"},preferences:{currency:"Val\u016Bta",default_language:"Noklus\u0113juma valoda",time_zone:"Laika josla",fiscal_year:"Finan\u0161u gads",date_format:"Datuma form\u0101ts",discount_setting:"Atlai\u017Eu iestat\u012Bjumi",discount_per_item:"Atlaide par preci/pakalpojumu ",discount_setting_description:"Iesp\u0113jot \u0161o, lai pie\u0161\u0137irtu atlaides individu\u0101l\u0101m r\u0113\u0137ina prec\u0113m. P\u0113c noklus\u0113juma, atlaide tiek piem\u0113rota r\u0113\u0137inam.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"Saglab\u0101t",preference:"Iestat\u012Bjumi | Iestat\u012Bjumi",general_settings:"Noklus\u0113jamie iestat\u012Bjumi sist\u0113mai.",updated_message:"Iestat\u012Bjumi atjaunin\u0101ti veiksm\u012Bgi",select_language:"Izv\u0113lieties valodu",select_time_zone:"Izv\u0113laties laika joslu",select_date_format:"Izv\u0113laties datuma form\u0101tu",select_financial_year:"Izv\u0113laties finan\u0161u gadu",recurring_invoice_status:"Recurring Invoice Status",create_status:"Create Status",active:"Active",on_hold:"On Hold",update_status:"Update Status",completed:"Completed",company_currency_unchangeable:"Company currency cannot be changed"},update_app:{title:"Atjaunin\u0101t App",description:"J\u016Bs varat atjaunin\u0101t Crater sist\u0113mas versiju pavisam vienk\u0101r\u0161i - spie\u017Eot uz pogas zem\u0101k",check_update:"Mekl\u0113t atjaunin\u0101jumus",avail_update:"Pieejami jauni atjaunin\u0101jumi",next_version:"N\u0101kam\u0101 versija",requirements:"Pras\u012Bbas",update:"Atjaunin\u0101t tagad",update_progress:"Notiek atjaunin\u0101\u0161ana...",progress_text:"Tas pras\u012Bs tikai da\u017Eas min\u016Btes. Pirms atjaunin\u0101\u0161anas beig\u0101m, l\u016Bdzu, neatsvaidziniet ekr\u0101nu un neaizveriet logu",update_success:"Sist\u0113ma ir atjaunin\u0101ta! L\u016Bdzu, uzgaidiet, kam\u0113r p\u0101rl\u016Bkprogrammas logs tiks autom\u0101tiski iel\u0101d\u0113ts.",latest_message:"Atjaunin\u0101jumi nav pieejami! Jums ir jaun\u0101k\u0101 versija.",current_version:"Versija",download_zip_file:"Lejupiel\u0101d\u0113t ZIP failu",unzipping_package:"Atarhiv\u0113 Zip failu",copying_files:"Notiek failu kop\u0113\u0161ana",deleting_files:"Deleting Unused files",running_migrations:"Notiek migr\u0101cijas",finishing_update:"Pabeidz atjaunin\u0101jumu",update_failed:"Atjaunin\u0101\u0161ana neizdev\u0101s",update_failed_text:"Atvainojiet! J\u016Bsu atjaunin\u0101juma laik\u0101 notika k\u013C\u016Bda: {step}. sol\u012B",update_warning:"All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating."},backup:{title:"Backup | Backups",description:"The backup is a zipfile that contains all files in the directories you specify along with a dump of your database",new_backup:"Add New Backup",create_backup:"Create Backup",select_backup_type:"Select Backup Type",backup_confirm_delete:"You will not be able to recover this Backup",path:"path",new_disk:"New Disk",created_at:"created at",size:"size",dropbox:"dropbox",local:"local",healthy:"healthy",amount_of_backups:"amount of backups",newest_backups:"newest backups",used_storage:"used storage",select_disk:"Select Disk",action:"Action",deleted_message:"Backup deleted successfully",created_message:"Backup created successfully",invalid_disk_credentials:"Invalid credential of selected disk"},disk:{title:"File Disk | File Disks",description:"By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.",created_at:"created at",dropbox:"dropbox",name:"Name",driver:"Driver",disk_type:"Type",disk_name:"Disk Name",new_disk:"Add New Disk",filesystem_driver:"Filesystem Driver",local_driver:"local Driver",local_root:"local Root",public_driver:"Public Driver",public_root:"Public Root",public_url:"Public URL",public_visibility:"Public Visibility",media_driver:"Media Driver",media_root:"Media Root",aws_driver:"AWS Driver",aws_key:"AWS Key",aws_secret:"AWS Secret",aws_region:"AWS Region",aws_bucket:"AWS Bucket",aws_root:"AWS Root",do_spaces_type:"Do Spaces type",do_spaces_key:"Do Spaces key",do_spaces_secret:"Do Spaces Secret",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Dropbox Type",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Key",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Default Driver",is_default:"IR NOKLUS\u0112JAMS",set_default_disk:"Iestatiet noklus\u0113juma disku",set_default_disk_confirm:"This disk will be set as default and all the new PDFs will be saved on this disk",success_set_default_disk:"Disks ir veiksm\u012Bgi iestat\u012Bts k\u0101 noklus\u0113jums",save_pdf_to_disk:"Saglab\u0101t PDF uz diska",disk_setting_description:" Iesp\u0113jot \u0161o, ja v\u0113laties lai katru r\u0113\u0137ina, apr\u0113\u0137ina un maks\u0101juma izdrukas PDF kopiju saglab\u0101tu disk\u0101. \u0160\u012B opcija samazin\u0101s iel\u0101d\u0113\u0161anas laiku, kad apskat\u012Bsiet PDF.",select_disk:"Izv\u0113lieties disku",disk_settings:"Diska uzst\u0101d\u012Bjumi",confirm_delete:"J\u016Bsu eso\u0161ie faili un mapes nor\u0101d\u012Btaj\u0101 disk\u0101 netiks ietekm\u0113ti, bet diska konfigur\u0101cija tiks izdz\u0113sta no Crater sist\u0113mas",action:"Darb\u012Bba",edit_file_disk:"Labot failu disku",success_create:"Disks tika pievienots veiksm\u012Bgi",success_update:"Disks atjaunin\u0101ts veiksm\u012Bgi",error:"Diska pievieno\u0161anas k\u013C\u016Bda",deleted_message:"Failu disks veiksm\u012Bgi izdz\u0113sts",disk_variables_save_successfully:"Disks konfigur\u0113ts veiksm\u012Bgi",disk_variables_save_error:"Diska konfigur\u0101cija neveiksm\u012Bga.",invalid_disk_credentials:"Nepareizi pieejas dati atz\u012Bm\u0113tajam diskam"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},zv={account_info:"Konta inform\u0101cija",account_info_desc:"Zem\u0101k sniegt\u0101 inform\u0101cija tiks izmantota galven\u0101 administratora konta izveidei. J\u016Bs var\u0113siet main\u012Bt inform\u0101ciju jebkur\u0101 laik\u0101 p\u0113c ielogo\u0161an\u0101s.",name:"V\u0101rds",email:"E-pasts",password:"Parole",confirm_password:"Apstipriniet paroli",save_cont:"Saglab\u0101t un turpin\u0101t",company_info:"Uz\u0146\u0113muma inform\u0101cija",company_info_desc:"\u0160\u012B inform\u0101cija tiks par\u0101d\u012Bta r\u0113\u0137inos. \u0145emiet v\u0113r\u0101, ka v\u0113l\u0101k to var redi\u0123\u0113t iestat\u012Bjumu lap\u0101.",company_name:"Uz\u0146\u0113muma nosaukums",company_logo:"Uz\u0146\u0113muma logo",logo_preview:"Logo",preferences:"Iestat\u012Bjumi",preferences_desc:"Noklus\u0113jamie iestat\u012Bjumi sist\u0113mai.",currency_set_alert:"The company's currency cannot be changed later.",country:"Valsts",state:"Re\u0123ions",city:"Pils\u0113ta",address:"Adrese",street:"Adrese1 | Adrese2",phone:"Telefona numurs",zip_code:"Pasta indekss",go_back:"Atpaka\u013C",currency:"Val\u016Bta",language:"Valoda",time_zone:"Time Zone",fiscal_year:"Financial Year",date_format:"Date Format",from_address:"From Address",username:"Username",next:"Next",continue:"Continue",skip:"Skip",database:{database:"Site URL & Database",connection:"Database Connection",host:"Database Host",port:"Database Port",password:"Database Password",app_url:"App URL",app_domain:"App Domain",username:"Database Username",db_name:"Database Name",db_path:"Database Path",desc:"Create a database on your server and set the credentials using the form below."},permissions:{permissions:"Permissions",permission_confirm_title:"Are you sure you want to continue?",permission_confirm_desc:"Folder permission check failed",permission_desc:"Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions."},verify_domain:{title:"Domain Verification",desc:"Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.",app_domain:"App Domain",verify_now:"Verify Now",success:"Domain Verify Successfully.",failed:"Domain verification failed. Please enter valid domain name.",verify_and_continue:"Verify And Continue"},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail Driver",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"Mail Password",username:"Mail Username",mail_config:"Mail Configuration",from_name:"From Mail Name",from_mail:"From Mail Address",encryption:"Mail Encryption",mail_config_desc:"Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc."},req:{system_req:"System Requirements",php_req_version:"Php (version {version} required)",check_req:"P\u0101rbaud\u012Bt pras\u012Bbas",system_req_desc:"Crater sist\u0113mai ir da\u017Eas servera pras\u012Bbas. P\u0101rliecinieties, ka j\u016Bsu serverim ir vajadz\u012Bg\u0101 php versija un visi t\u0101l\u0101k min\u0113tie papla\u0161in\u0101jumi."},errors:{migrate_failed:"Migr\u0101cija neizdev\u0101s",database_variables_save_error:"Nevar\u0113ja konfigur\u0113t .env failu. L\u016Bdzu p\u0101rbaudiet faila pieejas",mail_variables_save_error:"E-pasta konfigur\u0101cija neveiksm\u012Bga.",connection_failed:"Datub\u0101zes savienojums neveiksm\u012Bgs",database_should_be_empty:"Datub\u0101zei j\u0101b\u016Bt tuk\u0161ai"},success:{mail_variables_save_successfully:"E-pasts konfigur\u0113ts veiksm\u012Bgi",database_variables_save_successfully:"Database configured successfully."}},Sv={invalid_phone:"Invalid Phone Number",invalid_url:"Invalid url (ex: http://www.craterapp.com)",invalid_domain_url:"Invalid url (ex: craterapp.com)",required:"Field is required",email_incorrect:"Incorrect Email.",email_already_taken:"The email has already been taken.",email_does_not_exist:"User with given email doesn't exist",item_unit_already_taken:"This item unit name has already been taken",payment_mode_already_taken:"This payment mode name has already been taken",send_reset_link:"Send Reset Link",not_yet:"Not yet? Send it again",password_min_length:"Password must contain {count} characters",name_min_length:"Name must have at least {count} letters.",prefix_min_length:"Prefix must have at least {count} letters.",enter_valid_tax_rate:"Enter valid tax rate",numbers_only:"Numbers Only.",characters_only:"Characters Only.",password_incorrect:"Passwords must be identical",password_length:"Password must be {count} character long.",qty_must_greater_than_zero:"Quantity must be greater than zero.",price_greater_than_zero:"Price must be greater than zero.",payment_greater_than_zero:"Payment must be greater than zero.",payment_greater_than_due_amount:"Entered Payment is more than due amount of this invoice.",quantity_maxlength:"Quantity should not be greater than 20 digits.",price_maxlength:"Price should not be greater than 20 digits.",price_minvalue:"Price should be greater than 0.",amount_maxlength:"Amount should not be greater than 20 digits.",amount_minvalue:"Amount should be greater than 0.",discount_maxlength:"Discount should not be greater than max discount",description_maxlength:"Description should not be greater than 255 characters.",subject_maxlength:"Subject should not be greater than 100 characters.",message_maxlength:"Message should not be greater than 255 characters.",maximum_options_error:"Maximum of {max} options selected. First remove a selected option to select another.",notes_maxlength:"Notes should not be greater than 255 characters.",address_maxlength:"Address should not be greater than 255 characters.",ref_number_maxlength:"Ref Number should not be greater than 255 characters.",prefix_maxlength:"Prefix should not be greater than 5 characters.",something_went_wrong:"something went wrong",number_length_minvalue:"Number length should be greater than 0",at_least_one_ability:"Please select atleast one Permission.",valid_driver_key:"Please enter a valid {driver} key.",valid_exchange_rate:"Please enter a valid exchange rate.",company_name_not_same:"Company name must match with given name."},Pv={starter_plan:"This feature is available on Starter plan and onwards!",invalid_provider_key:"Please Enter Valid Provider API Key.",estimate_number_used:"The estimate number has already been taken.",invoice_number_used:"The invoice number has already been taken.",payment_attached:"This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.",payment_number_used:"The payment number has already been taken.",name_already_taken:"The name has already been taken.",receipt_does_not_exist:"Receipt does not exist.",customer_cannot_be_changed_after_payment_is_added:"Customer cannot be change after payment is added",invalid_credentials:"Invalid Credentials.",not_allowed:"Not Allowed",login_invalid_credentials:"These credentials do not match our records.",enter_valid_cron_format:"Please enter a valid cron format",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},jv="Apr\u0113\u0137ins",Av="Apr\u0113\u0137ina numurs",Dv="Apr\u0113\u0137ina datums",Cv="Der\u012Bgs l\u012Bdz",Ev="R\u0113\u0137ins",Iv="R\u0113\u0137ina numurs",Nv="R\u0113\u0137ina datums",Tv="Apmaksas termi\u0146\u0161",Rv="Notes",Mv="Nosaukums",Fv="Daudzums",$v="Cena",Uv="Atlaide",Vv="Summa",Ov="Starpsumma",Lv="Kop\u0101",Bv="Payment",qv="MAKS\u0100JUMA IZDRUKA",Kv="Maks\u0101juma datums",Wv="Maks\u0101juma numurs",Zv="Apmaksas veids",Hv="Sa\u0146emt\u0101 summa",Yv="IZDEVUMU ATSKAITE",Gv="KOP\u0100 IZDEVUMI",Jv="PE\u013B\u0145AS & IZDEVUMU ATSKAITE",Qv="Sales Customer Report",Xv="Sales Item Report",eh="Tax Summary Report",th="IEN\u0100KUMI",ah="PE\u013B\u0145A",ih="Atskaite par p\u0101rdoto: P\u0113c lietot\u0101ja",nh="KOP\u0100 P\u0100RDOTAIS",sh="Atskaite par p\u0101rdoto: P\u0113c preces/pakalpojuma",oh="NODOK\u013BU ATSKAITE",rh="NODOK\u013BI KOP\u0100",dh="Nodok\u013Cu veidi",lh="Izdevumi",ch="Sa\u0146\u0113m\u0113js,",_h="Pieg\u0101des adrese,",uh="Sa\u0146emts no:",mh="Tax";var ph={navigation:sv,general:ov,dashboard:rv,tax_types:dv,global_search:lv,company_switcher:cv,dateRange:_v,customers:uv,items:mv,estimates:pv,invoices:gv,recurring_invoices:fv,payments:vv,expenses:hv,login:yv,modules:bv,users:kv,reports:wv,settings:xv,wizard:zv,validation:Sv,errors:Pv,pdf_estimate_label:jv,pdf_estimate_number:Av,pdf_estimate_date:Dv,pdf_estimate_expire_date:Cv,pdf_invoice_label:Ev,pdf_invoice_number:Iv,pdf_invoice_date:Nv,pdf_invoice_due_date:Tv,pdf_notes:Rv,pdf_items_label:Mv,pdf_quantity_label:Fv,pdf_price_label:$v,pdf_discount_label:Uv,pdf_amount_label:Vv,pdf_subtotal:Ov,pdf_total:Lv,pdf_payment_label:Bv,pdf_payment_receipt_label:qv,pdf_payment_date:Kv,pdf_payment_number:Wv,pdf_payment_mode:Zv,pdf_payment_amount_received_label:Hv,pdf_expense_report_label:Yv,pdf_total_expenses_label:Gv,pdf_profit_loss_label:Jv,pdf_sales_customers_label:Qv,pdf_sales_items_label:Xv,pdf_tax_summery_label:eh,pdf_income_label:th,pdf_net_profit_label:ah,pdf_customer_sales_report:ih,pdf_total_sales_label:nh,pdf_item_sales_label:sh,pdf_tax_report_label:oh,pdf_total_tax_label:rh,pdf_tax_types_label:dh,pdf_expenses_label:lh,pdf_bill_to:ch,pdf_ship_to:_h,pdf_received_from:uh,pdf_tax_label:mh};const gh={dashboard:"\xD6versikt",customers:"Kunder",items:"Artiklar",invoices:"Fakturor","recurring-invoices":"\xC5terkommande fakturor",expenses:"Utgifter",estimates:"Kostnadsf\xF6rslag",payments:"Betalningar",reports:"Rapporter",settings:"Inst\xE4llningar",logout:"Logga ut",users:"Anv\xE4ndare",modules:"Modules"},fh={add_company:"Skapa f\xF6retag",view_pdf:"Visa PDF",copy_pdf_url:"Kopiera adress till PDF",download_pdf:"Ladda ner PDF",save:"Spara",create:"Skapa",cancel:"Avbryt",update:"Uppdatera",deselect:"Avmarkera",download:"Ladda ner",from_date:"Fr\xE5n datum",to_date:"Till datum",from:"Fr\xE5n",to:"Till",ok:"Ok",yes:"Ja",no:"Nej",sort_by:"Sortera p\xE5",ascending:"Stigande",descending:"Fallande",subject:"\xC4mne",body:"Inneh\xE5ll",message:"Meddelande",send:"Skicka",preview:"F\xF6rhandsgranska",go_back:"Tillbaka",back_to_login:"Till inloggningssidan?",home:"Hem",filter:"Filter",delete:"Ta bort",edit:"Editera",view:"Visa",add_new_item:"Skapa artikel",clear_all:"Rensa alla",showing:"Visar",of:"av",actions:"Funktioner",subtotal:"DELSUMMA",discount:"RABATT",fixed:"Fast",percentage:"Procent",tax:"MOMS",total_amount:"TOTALSUMMA",bill_to:"Faktureras till",ship_to:"Levereras till",due:"F\xF6rfallen",draft:"F\xF6rslag",sent:"Skickat",all:"Alla",select_all:"V\xE4lj alla",select_template:"V\xE4lj mall",choose_file:"Klicka h\xE4r f\xF6r att v\xE4lja fil",choose_template:"V\xE4lj mall",choose:"V\xE4lj",remove:"Ta bort",select_a_status:"V\xE4lj status",select_a_tax:"V\xE4lj moms",search:"S\xF6k",are_you_sure:"\xC4r du s\xE4ker?",list_is_empty:"Listan \xE4r tom.",no_tax_found:"Hittade inte moms!",four_zero_four:"404",you_got_lost:"Hoppsan! Nu \xE4r du vilse!",go_home:"G\xE5 hem",test_mail_conf:"Testa epostinst\xE4llningar",send_mail_successfully:"Lyckades skicka epost",setting_updated:"Inst\xE4llningar uppdaterades",select_state:"V\xE4lj kommun",select_country:"V\xE4lj land",select_city:"V\xE4lj stad",street_1:"Gatuadress 1",street_2:"Gatuadress 2",action_failed:"F\xF6rs\xF6k misslyckades",retry:"F\xF6rs\xF6k igen",choose_note:"V\xE4lj notering",no_note_found:"Inga noteringar hittades",insert_note:"L\xE4gg till notering",copied_pdf_url_clipboard:"Url till PDF kopierades till urklipp!",copied_url_clipboard:"Copied url to clipboard!",docs:"Dokumentation",do_you_wish_to_continue:"Vill du forts\xE4tta?",note:"Notering",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},vh={select_year:"V\xE4lj \xE5r",cards:{due_amount:"F\xF6rfallet belopp",customers:"Kunder",invoices:"Fakturor",estimates:"Kostnadsf\xF6rslag",payments:"Payments"},chart_info:{total_sales:"F\xF6rs\xE4ljning",total_receipts:"Kvitton",total_expense:"Utgifter",net_income:"Nettoinkomst",year:"V\xE4lj \xE5r"},monthly_chart:{title:"F\xF6rs\xE4ljning och utgifter"},recent_invoices_card:{title:"F\xF6rfallna fakturor",due_on:"F\xF6rfaller den",customer:"Kund",amount_due:"F\xF6rfallet belopp",actions:"Handlingar",view_all:"Visa alla"},recent_estimate_card:{title:"Senaste kostnadsf\xF6rslag",date:"Datum",customer:"Kund",amount_due:"F\xF6rfallet belopp",actions:"Handlingar",view_all:"Visa alla"}},hh={name:"Namn",description:"Beskrivning",percent:"Provent",compound_tax:"Sammansatt moms"},yh={search:"S\xF6k...",customers:"Kunder",users:"Anv\xE4ndare",no_results_found:"Hittade inga resultat"},bh={label:"Byt f\xF6retag",no_results_found:"Inga resultat hittades",add_new_company:"L\xE4gg till nytt f\xF6retag",new_company:"Nytt f\xF6retag",created_message:"F\xF6retaget har skapats"},kh={today:"Idag",this_week:"Denna vecka",this_month:"Denna m\xE5nad",this_quarter:"Detta kvartal",this_year:"I \xE5r",previous_week:"F\xF6reg\xE5ende vecka",previous_month:"F\xF6reg\xE5ende m\xE5nad",previous_quarter:"F\xF6reg\xE5ende kvartal",previous_year:"F\xF6reg\xE5ende \xE5r",custom:"Anpassad"},wh={title:"Kunder",prefix:"Prefix",add_customer:"L\xE4gg till kund",contacts_list:"Kundlista",name:"Namn",mail:"Epost | Epost",statement:"P\xE5st\xE5ende",display_name:"Visningsnamn",primary_contact_name:"Prim\xE4r kontakts namn",contact_name:"Kontaktnamn",amount_due:"F\xF6rfallet belopp",email:"Epost",address:"Adress",phone:"Telefon",website:"Hemsida",overview:"\xD6versikt",invoice_prefix:"Prefix f\xF6r fakturor",estimate_prefix:"Prefix f\xF6r kostnadsf\xF6rslag",payment_prefix:"Prefix f\xF6r betalningar",enable_portal:"Aktivera portal",country:"Land",state:"Kommun",city:"Stad",zip_code:"Postnummer",added_on:"Tillagd den",action:"Handling",password:"L\xF6senord",confirm_password:"Bekr\xE4fta l\xF6senord",street_number:"Gatnummer",primary_currency:"Huvudvaluta",description:"Beskrivning",add_new_customer:"L\xE4gg till ny kund",save_customer:"Spara kund",update_customer:"Uppdatera kund",customer:"Kund | Kunder",new_customer:"Ny kund",edit_customer:"\xC4ndra kund",basic_info:"Information",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"Fakturaadress",shipping_address:"Leveransadress",copy_billing_address:"Kopiera fr\xE5n faktura",no_customers:"Inga kunder \xE4n!",no_customers_found:"Hittade inga kunder!",no_contact:"Inga kontakter",no_contact_name:"Kontaktnamn",list_of_customers:"H\xE4r kommer det finnas en lista med kunder.",primary_display_name:"Visningsnamn",select_currency:"V\xE4lj valuta",select_a_customer:"V\xE4lj kund",type_or_click:"Skriv eller klicka f\xF6r att v\xE4lja",new_transaction:"Ny transaktion",no_matching_customers:"Matchade inte med n\xE5gon kund!",phone_number:"Telefonnummer",create_date:"Skapandedatum",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna kund eller n\xE5gra relaterade fakturor, kostnadsf\xF6rslag eller betalningar. | Du kommer inte kunna \xE5terst\xE4lla dessa kunder eller n\xE5gra relaterade fakturor, kostnadsf\xF6rslag eller betalningar.",created_message:"Kund skapades",updated_message:"Kund uppdaterades",address_updated_message:"Address Information Updated succesfully",deleted_message:"Kund raderades | Kunder raderades",edit_currency_not_allowed:"Kan inte \xE4ndra valuta n\xE4r transaktioner har skapats."},xh={title:"Artiklar",items_list:"Artikellista",name:"Namn",unit:"Enhet",description:"Beskrivning",added_on:"Tillagd den",price:"Pris",date_of_creation:"Skapandedatum",not_selected:"Inga poster valda",action:"Handling",add_item:"Skapa artikel",save_item:"Spara artikel",update_item:"Uppdatera artiklar",item:"Artikel | Artiklar",add_new_item:"Skapa ny artikel",new_item:"Ny artikel",edit_item:"\xC4ndra artikel",no_items:"Inga artiklar \xE4n!",list_of_items:"H\xE4r kommer lista \xF6ver artiklar vara.",select_a_unit:"v\xE4lj enhet",taxes:"Moms",item_attached_message:"Kan inte radera en artikel som anv\xE4nds",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna artikel | Du kommer inte kunna \xE5terst\xE4lla dessa artiklar",created_message:"Artikel skapades",updated_message:"Artikel uppdaterades",deleted_message:"Artikel raderades | Artiklar raderades"},zh={title:"Kostnadsf\xF6rslag",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"Kostnadsf\xF6rslag | Kostnadsf\xF6rslag",estimates_list:"Lista med kostnadsf\xF6rslag",days:"{days} dagar",months:"{months} m\xE5nader",years:"{years} \xE5r",all:"Alla",paid:"Betalda",unpaid:"Obetalda",customer:"KUND",ref_no:"REF NR.",number:"NUMMER",amount_due:"F\xD6RFALLET BELOPP",partially_paid:"Delbetald",total:"Summa",discount:"Rabatt",sub_total:"Delsumma",estimate_number:"Kostnadsf\xF6rslagsnummer",ref_number:"Ref Nummer",contact:"Kontakt",add_item:"L\xE4gg till artikel",date:"Datum",due_date:"F\xF6rfallodatum",expiry_date:"Utg\xE5ngsdatum",status:"Status",add_tax:"L\xE4gg till moms",amount:"Belopp",action:"Handling",notes:"Noteringar",tax:"Moms",estimate_template:"Mall",convert_to_invoice:"Konvertera till faktura",mark_as_sent:"Markerade som skickad",send_estimate:"Skicka kostnadsf\xF6rslag",resend_estimate:"Skicka kostnadsf\xF6rslag igen",record_payment:"Registrera betalning",add_estimate:"L\xE4gg till kostnadsf\xF6rslag",save_estimate:"Spara kostnadsf\xF6rslag",confirm_conversion:"Detta kostnadsf\xF6rslag anv\xE4nds f\xF6r att skapa ny faktura.",conversion_message:"Faktura skapades",confirm_send_estimate:"Detta kostnadsf\xF6rslag skickas via epost till kund",confirm_mark_as_sent:"Detta kostnadsf\xF6rslag markeras som skickat",confirm_mark_as_accepted:"Detta kostnadsf\xF6rslag markeras som accepterad",confirm_mark_as_rejected:"Detta kostnadsf\xF6rslag markeras som avvisad",no_matching_estimates:"Inga matchande kostnadsf\xF6rslag!",mark_as_sent_successfully:"Kostnadsf\xF6rslag markerat som skickat",send_estimate_successfully:"Kostnadsf\xF6rslag skickades",errors:{required:"F\xE4ltet \xE4r tvingande"},accepted:"Accepterad",rejected:"Avvisad",expired:"Expired",sent:"Skickat",draft:"Utkast",viewed:"Viewed",declined:"Avvisad",new_estimate:"Nytt kostnadsf\xF6rslag",add_new_estimate:"Skapa nytt kostnadsf\xF6rslag",update_Estimate:"Uppdatera kostnadsf\xF6rslag",edit_estimate:"\xC4ndra kostnadsf\xF6rslag",items:"artiklar",Estimate:"Kostnadsf\xF6rslag | Kostnadsf\xF6rslag",add_new_tax:"Skapa ny momssats",no_estimates:"Inga kostnadsf\xF6rslag \xE4n!",list_of_estimates:"H\xE4r kommer det finnas kostnadsf\xF6rslag.",mark_as_rejected:"Markera som avvisad",mark_as_accepted:"Markera som godk\xE4nd",marked_as_accepted_message:"Kostnadsf\xF6rslag markerad som godk\xE4nd",marked_as_rejected_message:"Kostnadsf\xF6rslag markerad som avvisad",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla detta kostnadsf\xF6rslag | Du kommer inte kunna \xE5terst\xE4lla dessa kostnadsf\xF6rslag",created_message:"Kostnadsf\xF6rslag skapades",updated_message:"Kostnadsf\xF6rslag \xE4ndrades",deleted_message:"Kostnadsf\xF6rslag raderades | Kostnadsf\xF6rslag raderades",something_went_wrong:"n\xE5got gick fel",item:{title:"Artikelnamn",description:"Beskrivning",quantity:"Antal",price:"Pris",discount:"Rabatt",total:"Summa",total_discount:"Rabattsumma",sub_total:"Delsumma",tax:"Moms",amount:"Summa",select_an_item:"Skriv eller klicka f\xF6r att v\xE4lja artikel",type_item_description:"Skriv in artikelns beskrivning (frivilligt)"}},Sh={title:"Fakturor",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"Fakturor",invoice_information:"Invoice Information",days:"{days} dagar",months:"{months} m\xE5nader",years:"{years} \xE5r",all:"Alla",paid:"Betalda",unpaid:"Obetalda",viewed:"Visade",overdue:"F\xF6rfallna",completed:"Slutf\xF6rda",customer:"KUNDER",paid_status:"BETALSTATUS",ref_no:"REF NR.",number:"NUMMER",amount_due:"F\xD6RFALLET BELOPP",partially_paid:"Delbetald",total:"Summa",discount:"Rabatt",sub_total:"Delsumma",invoice:"Faktura | Fakturor",invoice_number:"Fakturanummer",ref_number:"Ref Nummer",contact:"Kontakt",add_item:"L\xE4gg till artikel",date:"Datum",due_date:"F\xF6rfallodatum",status:"Status",add_tax:"L\xE4gg till moms",amount:"Summa",action:"Handling",notes:"Noteringar",view:"Visa",send_invoice:"Skicka faktura",resend_invoice:"Skicka faktura igen",invoice_template:"Fakturamall",conversion_message:"Fakturan kopierades",template:"Mall",mark_as_sent:"Markera som skickad",confirm_send_invoice:"Denna faktura skickas via epost till kunden",invoice_mark_as_sent:"Denna faktura markeras som skickad",confirm_mark_as_accepted:"Denna faktura kommer att markeras som Godk\xE4nd",confirm_mark_as_rejected:"Denna faktura kommer att markeras som Avvisad",confirm_send:"Denna faktura skickas via epost till kunden",invoice_date:"Fakturadatum",record_payment:"Registrera betalning",add_new_invoice:"L\xE4gg till ny faktura",update_expense:"\xC4ndra utgifter",edit_invoice:"Editera faktura",new_invoice:"Ny faktura",save_invoice:"Spara faktura",update_invoice:"Uppdatera faktura",add_new_tax:"L\xE4gg till ny momssats",no_invoices:"Inga fakturor \xE4n!",mark_as_rejected:"Markera som avvisad",mark_as_accepted:"Markera som godk\xE4nd",list_of_invoices:"H\xE4r kommer det vara en lista med fakturor.",select_invoice:"V\xE4lj faktura",no_matching_invoices:"Inga matchande fakturor!",mark_as_sent_successfully:"Fakturans status \xE4ndrad till skickad",invoice_sent_successfully:"Fakturan skickades",cloned_successfully:"Fakturan kopierades",clone_invoice:"Kopiera faktura",confirm_clone:"Denna faktura kopieras till en ny faktura",item:{title:"Artikelnamn",description:"Beskvirning",quantity:"Antal",price:"Pris",discount:"Rabatt",total:"Summa",total_discount:"Totalsumma",sub_total:"Delsumma",tax:"Moms",amount:"Summa",select_an_item:"Skriv eller klicka f\xF6r att v\xE4lja artikel",type_item_description:"Artikeltypsbeskrivning (frivillig)"},payment_attached_message:"En av dom valda fakturorna har redan en betalning kopplad till sig. Du m\xE5ste radera dom kopplade betalningarna f\xF6rst f\xF6r att kunna forts\xE4tta raderingen",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna faktura | Du kommer inte kunna \xE5terst\xE4lla dessa fakturor",created_message:"Faktura skapades",updated_message:"Faktura uppdaterades",deleted_message:"Faktura raderades | fakturor raderades",marked_as_sent_message:"Faktura markerad som skickad",something_went_wrong:"n\xE5got blev fel",invalid_due_amount_message:"Totalsumman f\xF6r fakturan kan inte vara l\xE4gra \xE4n den betalda summan. V\xE4nligen uppdatera fakturan eller radera dom kopplade betalningarna."},Ph={title:"\xC5terkommande fakturor",invoices_list:"\xC5terkommande fakturor",days:"{days} Dagar",months:"{months} M\xE5nader",years:"{years} \xC5r",all:"Alla",paid:"Betalda",unpaid:"Obetalda",viewed:"Visade",overdue:"F\xF6rsenade",active:"Aktiva",completed:"Slutf\xF6rda",customer:"KUND",paid_status:"BETALSTATUS",ref_no:"REF NR.",number:"NUMMER",amount_due:"F\xD6RFALLET BELOPP",partially_paid:"Delbetald",total:"Summa",discount:"Rabatt",sub_total:"Delsumma",invoice:"Recurring Invoice | Recurring Invoices",invoice_number:"Recurring Invoice Number",next_invoice_date:"Next Invoice Date",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",limit_by:"Limit by",limit_date:"Limit Date",limit_count:"Limit Count",count:"Count",status:"Status",select_a_status:"Select a status",working:"Working",on_hold:"On Hold",complete:"Completed",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",view:"View",basic_info:"Basic Info",send_invoice:"Send Recurring Invoice",auto_send:"Auto Send",resend_invoice:"Resend Recurring Invoice",invoice_template:"Recurring Invoice Template",conversion_message:"Recurring Invoice cloned successful",template:"Template",mark_as_sent:"Mark as sent",confirm_send_invoice:"This recurring invoice will be sent via email to the customer",invoice_mark_as_sent:"This recurring invoice will be marked as sent",confirm_send:"This recurring invoice will be sent via email to the customer",starts_at:"Start Date",due_date:"Invoice Due Date",record_payment:"Record Payment",add_new_invoice:"Add New Recurring Invoice",update_expense:"Update Expense",edit_invoice:"Edit Recurring Invoice",new_invoice:"New Recurring Invoice",send_automatically:"Send Automatically",send_automatically_desc:"Enable this, if you would like to send the invoice automatically to the customer when its created.",save_invoice:"Save Recurring Invoice",update_invoice:"Update Recurring Invoice",add_new_tax:"Add New Tax",no_invoices:"No Recurring Invoices yet!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"This section will contain the list of recurring invoices.",select_invoice:"Select Invoice",no_matching_invoices:"There are no matching recurring invoices!",mark_as_sent_successfully:"Recurring Invoice marked as sent successfully",invoice_sent_successfully:"Recurring Invoice sent successfully",cloned_successfully:"Recurring Invoice cloned successfully",clone_invoice:"Clone Recurring Invoice",confirm_clone:"This recurring invoice will be cloned into a new Recurring Invoice",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"},frequency:{title:"Frequency",select_frequency:"Select Frequency",minute:"Minute",hour:"Hour",day_month:"Day of month",month:"Month",day_week:"Day of week"},confirm_delete:"You will not be able to recover this Invoice | You will not be able to recover these Invoices",created_message:"Recurring Invoice created successfully",updated_message:"Recurring Invoice updated successfully",deleted_message:"Recurring Invoice deleted successfully | Recurring Invoices deleted successfully",marked_as_sent_message:"Recurring Invoice marked as sent successfully",user_email_does_not_exist:"User email does not exist",something_went_wrong:"something went wrong",invalid_due_amount_message:"Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue."},jh={title:"Betalningar",payments_list:"Lista med betalningar",record_payment:"Registrera betalning",customer:"Kund",date:"Datum",amount:"Summa",action:"Handling",payment_number:"Betalningsnummer",payment_mode:"Betalningss\xE4tt",invoice:"Faktura",note:"Notering",add_payment:"Skapa betalning",new_payment:"Ny betalning",edit_payment:"\xC4ndra betalning",view_payment:"Visa betalning",add_new_payment:"Skapa ny betalning",send_payment_receipt:"Skicka kvitto p\xE5 betalning",send_payment:"Skicka betalning",save_payment:"Spara betalning",update_payment:"Uppdatera betalning",payment:"Betalning | Betalningar",no_payments:"Inga betalningar \xE4n!",not_selected:"Ej markerad",no_invoice:"Ingen faktura",no_matching_payments:"Inga matchande betalningar!",list_of_payments:"H\xE4r kommer listan med betalningar finnas.",select_payment_mode:"V\xE4lj betalningss\xE4tt",confirm_mark_as_sent:"Detta kostnadsf\xF6rslag markeras som skickat",confirm_send_payment:"Denna betalning skickas till kunden via epost",send_payment_successfully:"Betalningen skickades",something_went_wrong:"n\xE5got gick fel",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna betalning | Du kommer inte kunna \xE5terst\xE4lla dessa betalningar",created_message:"Betalning skapades",updated_message:"Betalning uppdaterades",deleted_message:"Betalning raderades | Betalningar raderades",invalid_amount_message:"Betalsumman \xE4r ogiltig"},Ah={title:"Utgifter",expenses_list:"Lista med utgifter",select_a_customer:"V\xE4lj en kund",expense_title:"Titel",customer:"Kund",currency:"Currency",contact:"Kontakt",category:"Kategori",from_date:"Fr\xE5n datum",to_date:"Till datum",expense_date:"Datum",description:"Beskrivning",receipt:"Kvitto",amount:"Summa",action:"Handling",not_selected:"Ej markerad",note:"Notering",category_id:"Kategorins ID",date:"Datum",add_expense:"L\xE4gg till utgift",add_new_expense:"L\xE4gg till ny utgift",save_expense:"Spara utgift",update_expense:"Uppdatera utgift",download_receipt:"Ladda ner kvitto",edit_expense:"\xC4ndra utgift",new_expense:"Ny utgift",expense:"Utgift | Utgifter",no_expenses:"Inga utgifter \xE4n!",list_of_expenses:"H\xE4r kommer utgifterna finnas.",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna utgift | Du kommer inte kunna \xE5terst\xE4lla dessa utgifter",created_message:"Utgift skapades",updated_message:"Utgift \xE4ndrades",deleted_message:"Utgift raderades | utgifterna raderades",categories:{categories_list:"Kategorier",title:"Titel",name:"Namn",description:"Beskrivning",amount:"Summa",actions:"Handlingar",add_category:"L\xE4gg till kategori",new_category:"Ny kategori",category:"Kategori | Kategorier",select_a_category:"V\xE4lj en kategori"}},Dh={email:"Epost",password:"L\xF6senord",forgot_password:"Gl\xF6mt l\xF6senord?",or_signIn_with:"eller logga in med",login:"Logga in",register:"Registrera",reset_password:"\xC5terst\xE4ll l\xF6senord",password_reset_successfully:"L\xF6senord \xE5terst\xE4llt",enter_email:"Skriv in epost",enter_password:"Skriv in l\xF6senord",retype_password:"Skriv l\xF6senordet igen"},Ch={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},Eh={title:"Anv\xE4ndare",users_list:"Anv\xE4ndare",name:"Namn",description:"Beskrivning",added_on:"Tillagd den",date_of_creation:"Datum skapad",action:"Handling",add_user:"L\xE4gg till anv\xE4ndare",save_user:"Spara anv\xE4ndare",update_user:"Uppdatera anv\xE4ndare",user:"Anv\xE4ndare | Anv\xE4ndare",add_new_user:"L\xE4gg till ny anv\xE4ndare",new_user:"Ny anv\xE4ndare",edit_user:"\xC4ndra anv\xE4ndare",no_users:"Inga anv\xE4ndare \xE4n!",list_of_users:"H\xE4r kommer man se alla anv\xE4ndare.",email:"Epost",phone:"Telefon",password:"L\xF6senord",user_attached_message:"Kan inte ta bort ett objeckt som anv\xE4nds",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna anv\xE4ndare | Du kommer inte kunna \xE5terst\xE4lla dessa anv\xE4ndare",created_message:"Anv\xE4ndare skapades",updated_message:"Anv\xE4ndare uppdaterades",deleted_message:"Anv\xE4ndaren raderades | Anv\xE4ndarna raderades",select_company_role:"Select Role for {company}",companies:"Companies"},Ih={title:"Rapport",from_date:"Fr\xE5n datum",to_date:"Till datum",status:"Status",paid:"Betald",unpaid:"Obetald",download_pdf:"Ladda ner PDF",view_pdf:"Visa PDF",update_report:"Uppdatera rapport",report:"Rapport | Rapporter",profit_loss:{profit_loss:"Inkomst och utgifter",to_date:"Till datum",from_date:"Fr\xE5n datum",date_range:"V\xE4lj datumintervall"},sales:{sales:"F\xF6rs\xE4ljningar",date_range:"V\xE4lj datumintervall",to_date:"Till datum",from_date:"Fr\xE5n datum",report_type:"Rapporttyp"},taxes:{taxes:"Momssatser",to_date:"Till datum",from_date:"Fr\xE5n datum",date_range:"V\xE4lj datumintervall"},errors:{required:"F\xE4ltet \xE4r tvingande"},invoices:{invoice:"Faktura",invoice_date:"Fakturadatum",due_date:"F\xF6rfallodatum",amount:"Summa",contact_name:"Kontaktnamn",status:"Status"},estimates:{estimate:"Kostnadsf\xF6rslag",estimate_date:"Kostnadsf\xF6rslagsdatum",due_date:"F\xF6rfallodatum",estimate_number:"Kostnadsf\xF6rslagsnummer",ref_number:"Ref Nummer",amount:"Summa",contact_name:"Kontaktnamn",status:"Status"},expenses:{expenses:"Utgifter",category:"Kategori",date:"Datum",amount:"Summa",to_date:"Till datum",from_date:"Fr\xE5n datum",date_range:"V\xE4lj datumintervall"}},Nh={menu_title:{account_settings:"Kontoinst\xE4llningar",company_information:"F\xF6retagsinformation",customization:"Anpassning",preferences:"Inst\xE4llningar",notifications:"Notifieringar",tax_types:"Momssatser",expense_category:"Utgiftskategorier",update_app:"Uppdatera appen",backup:"Backup",file_disk:"File Disk",custom_fields:"Anpassade f\xE4lt",payment_modes:"Betalmetoder",notes:"Noteringar",exchange_rate:"Exchange Rate",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"Inst\xE4llningar",setting:"Inst\xE4llningar | Inst\xE4llningar",general:"Allm\xE4n",language:"Spr\xE5k",primary_currency:"Prim\xE4r valuta",timezone:"Tidszon",date_format:"Datumformat",currencies:{title:"Valutor",currency:"Valuta | Valutor",currencies_list:"Lista med valutor",select_currency:"V\xE4lj valuta",name:"Namn",code:"Kod",symbol:"Symbol",precision:"Precision",thousand_separator:"Tusenavgr\xE4nsare",decimal_separator:"Decimalavgr\xE4nsare",position:"Position",position_of_symbol:"Symbolens position",right:"H\xF6ger",left:"V\xE4nster",action:"Handling",add_currency:"L\xE4gg till valuta"},mail:{host:"V\xE4rdadress",port:"Port",driver:"Typ",secret:"Hemlighet",mailgun_secret:"Mailgun Secret",mailgun_domain:"Dom\xE4n",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"L\xF6senord",username:"Anv\xE4ndarnamn",mail_config:"Epostinst\xE4llningar",from_name:"Fr\xE5n namn",from_mail:"Fr\xE5n adress",encryption:"Kryptering",mail_config_desc:"Nedan formul\xE4r anv\xE4nds f\xF6r att konfigurera vilket s\xE4tt som ska anv\xE4ndar f\xF6r att skicka epost. Du kan ocks\xE5 anv\xE4nda tredjepartsleverant\xF6r som Sendgrid, SES o.s.v."},pdf:{title:"PDF-inst\xE4llningar",footer_text:"Sidfotstext",pdf_layout:"PDF-layout"},company_info:{company_info:"F\xF6retagsinfo",company_name:"F\xF6retagsnamn",company_logo:"F\xF6retagslogga",section_description:"Information om ditt f\xF6retags som kommer visas p\xE5 fakturor, kostnadsf\xF6rslag och andra dokument skapade av Crater.",phone:"Telefon",country:"Land",state:"Kommun",city:"Stad",address:"Adress",zip:"Postnr",save:"Spara",delete:"Delete",updated_message:"F\xF6retagsinformation uppdaterad",delete_company:"Delete Company",delete_company_description:"Once you delete your company, you will lose all the data and files associated with it permanently.",are_you_absolutely_sure:"Are you absolutely sure?",delete_company_modal_desc:"This action cannot be undone. This will permanently delete {company} and all of its associated data.",delete_company_modal_label:"Please type {company} to confirm"},custom_fields:{title:"Anpassade f\xE4lt",section_description:"Anpassa fakturor, kostnadsf\xF6rslag och kvitton med dina egna f\xE4lt. Anv\xE4nd nedanst\xE5ende f\xE4lt i adressforamteringen p\xE5 anpassningarnas inst\xE4llningssida.",add_custom_field:"L\xE4gg till anpassat f\xE4lt",edit_custom_field:"\xC4ndra anpassade f\xE4lt",field_name:"F\xE4ltnamn",label:"Etikett",type:"Typ",name:"Namn",slug:"Slug",required:"Tvingad",placeholder:"Placeholder",help_text:"Hj\xE4lptext",default_value:"Standardv\xE4rde",prefix:"Prefix",starting_number:"Startnummer",model:"Modell",help_text_description:"Skriv in text som hj\xE4lper anv\xE4ndaren f\xF6rst\xE5 vad det anpassade f\xE4ltet anv\xE4nds f\xF6r.",suffix:"Suffix",yes:"Ja",no:"Nej",order:"Ordning",custom_field_confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla detta anpassade f\xE4lt",already_in_use:"Det anpassade f\xE4ltet anv\xE4nds",deleted_message:"Det anpassade f\xE4ltet raderades",options:"val",add_option:"L\xE4gg till val",add_another_option:"L\xE4gg till ett till val",sort_in_alphabetical_order:"Sortera i alfabetisk ordning",add_options_in_bulk:"L\xE4gg till flera val",use_predefined_options:"Anv\xE4nd f\xF6rinst\xE4llda val",select_custom_date:"V\xE4lj anpassat datum",select_relative_date:"V\xE4lj relativt datum",ticked_by_default:"Ikryssad fr\xE5n start",updated_message:"Anpassat f\xE4lt uppdaterades",added_message:"Anpassat f\xE4lt skapat",press_enter_to_add:"Press enter to add new option",model_in_use:"Cannot update model for fields which are already in use.",type_in_use:"Cannot update type for fields which are already in use."},customization:{customization:"Anpassning",updated_message:"F\xF6retagsinformation uppdaterades",save:"Spara",insert_fields:"Insert Fields",learn_custom_format:"Learn how to use custom format",add_new_component:"Add New Component",component:"Component",Parameter:"Parameter",series:"Series",series_description:"To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.",series_param_label:"Series Value",delimiter:"Delimiter",delimiter_description:"Single character for specifying the boundary between 2 separate components. By default its set to -",delimiter_param_label:"Delimiter Value",date_format:"Date Format",date_format_description:"A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.",date_format_param_label:"Format",sequence:"Sequence",sequence_description:"Consecutive sequence of numbers across your company. You can specify the length on the given parameter.",sequence_param_label:"Sequence Length",customer_series:"Customer Series",customer_series_description:"To set a different prefix/postfix for each customer.",customer_sequence:"Customer Sequence",customer_sequence_description:"Consecutive sequence of numbers for each of your customer.",customer_sequence_param_label:"Sequence Length",random_sequence:"Random Sequence",random_sequence_description:"Random alphanumeric string. You can specify the length on the given parameter.",random_sequence_param_label:"Sequence Length",invoices:{title:"Fakturor",invoice_number_format:"Invoice Number Format",invoice_number_format_description:"Customize how your invoice number gets generated automatically when you create a new invoice.",preview_invoice_number:"Preview Invoice Number",due_date:"Due Date",due_date_description:"Specify how due date is automatically set when you create an invoice.",due_date_days:"Invoice Due after days",set_due_date_automatically:"Set Due Date Automatically",set_due_date_automatically_description:"Enable this if you wish to set due date automatically when you create a new invoice.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on invoice creation.",default_invoice_email_body:"Standardtext f\xF6r faktura",company_address_format:"Formatering av f\xF6retagsadress",shipping_address_format:"Formatering av leveransadress",billing_address_format:"Formatering av fakturaadress",invoice_email_attachment:"Skicka fakturor som bilagor",invoice_email_attachment_setting_description:'Aktivera detta om du vill skicka fakturor som e-postbilaga. Observera att knappen "Visa faktura" i e-post inte l\xE4ngre kommer att visas n\xE4r den \xE4r aktiverad.',invoice_settings_updated:"Invoice Settings updated successfully",retrospective_edits:"Retrospective Edits",allow:"Allow",disable_on_invoice_partial_paid:"Disable after partial payment is recorded",disable_on_invoice_paid:"Disable after full payment is recorded",disable_on_invoice_sent:"Disable after invoice is sent",retrospective_edits_description:" Based on your country's laws or your preference, you can restrict users from editing finalised invoices."},estimates:{title:"Kostnadsf\xF6rslag",estimate_number_format:"Estimate Number Format",estimate_number_format_description:"Customize how your estimate number gets generated automatically when you create a new estimate.",preview_estimate_number:"Preview Estimate Number",expiry_date:"Expiry Date",expiry_date_description:"Specify how expiry date is automatically set when you create an estimate.",expiry_date_days:"Estimate Expires after days",set_expiry_date_automatically:"Set Expiry Date Automatically",set_expiry_date_automatically_description:"Enable this if you wish to set expiry date automatically when you create a new estimate.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on estimate creation.",default_estimate_email_body:"Standardtext f\xF6r kostnadsf\xF6rslag",company_address_format:"Formatering av f\xF6retagsadress",shipping_address_format:"Formatering av leveransadress",billing_address_format:"Formatering av fakturaadress",estimate_email_attachment:"Send estimates as attachments",estimate_email_attachment_setting_description:'Aktivera detta om du vill skicka offerterna som en e-postbilaga. Observera att knappen "Visa offert" i e-post inte l\xE4ngre kommer att visas n\xE4r den \xE4r aktiverad.',estimate_settings_updated:"Estimate Settings updated successfully",convert_estimate_options:"Estimate Convert Action",convert_estimate_description:"Specify what happens to the estimate after it gets converted to an invoice.",no_action:"No action",delete_estimate:"Delete estimate",mark_estimate_as_accepted:"Mark estimate as accepted"},payments:{title:"Betalningar",payment_number_format:"Payment Number Format",payment_number_format_description:"Customize how your payment number gets generated automatically when you create a new payment.",preview_payment_number:"Preview Payment Number",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on payment creation.",default_payment_email_body:"Standardtext f\xF6r betalningar",company_address_format:"Format f\xF6r f\xF6retagsadress",from_customer_address_format:"Format f\xF6r kundens fr\xE5n-adress",payment_email_attachment:"Skicka betalningar som bilagor",payment_email_attachment_setting_description:'Aktivera detta om du vill skicka betalningskvitton som en e-postbilaga. Observera att knappen "Visa betalning" i e-post inte l\xE4ngre kommer att visas n\xE4r den \xE4r aktiverad.',payment_settings_updated:"Payment Settings updated successfully"},items:{title:"Artiklar",units:"Enheter",add_item_unit:"L\xE4gg till artikelenhet",edit_item_unit:"Editera artikelenhet",unit_name:"Enhets namn",item_unit_added:"Artikelenhet tillagd",item_unit_updated:"Artikelenhet uppdaterad",item_unit_confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna artikelenhet",already_in_use:"Artikelenhet anv\xE4nds",deleted_message:"Artikelenhet raderades"},notes:{title:"Noteringar",description:"Spara tid genom att skapa noteringar som kan \xE5teranv\xE4ndas p\xE5 fakturor, betalningsf\xF6rslag, och betalningar.",notes:"Noteringar",type:"Typ",add_note:"L\xE4gg till notering",add_new_note:"L\xE4gg till ny notering",name:"Namn",edit_note:"Editera notering",note_added:"Notering skapades",note_updated:"Notering uppdaterades",note_confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna notering",already_in_use:"Notering anv\xE4nds",deleted_message:"Notering raderades"}},account_settings:{profile_picture:"Profilbild",name:"Namn",email:"Epost",password:"L\xF6senord",confirm_password:"Bekr\xE4fta l\xF6senord",account_settings:"Kontoinst\xE4llningar",save:"Spara",section_description:"Du kan uppdatera namn, epost och l\xF6senord med hj\xE4lp av formul\xE4ret nedan.",updated_message:"Kontoinst\xE4llningar uppdaterades"},user_profile:{name:"Namn",email:"Epost",password:"L\xF6senord",confirm_password:"Bekr\xE4fta l\xF6senord"},notification:{title:"Notifieringar",email:"Skicka notifiering till",description:"Vilka notifieringar vill du ha via epost n\xE4r n\xE5got \xE4ndras?",invoice_viewed:"Faktura kollad",invoice_viewed_desc:"N\xE4r din kund kollar fakturan via craters \xF6versikt.",estimate_viewed:"Betalf\xF6rslag kollad",estimate_viewed_desc:"N\xE4r din kund kollar betalf\xF6rslag via craters \xF6versikt.",save:"Spara",email_save_message:"Epost sparades",please_enter_email:"Skriv in epostadress"},roles:{title:"Roles",description:"Manage the roles & permissions of this company",save:"Save",add_new_role:"Add New Role",role_name:"Role Name",added_on:"Added on",add_role:"Add Role",edit_role:"Edit Role",name:"Name",permission:"Permission | Permissions",select_all:"Select All",none:"None",confirm_delete:"You will not be able to recover this Role",created_message:"Role created successfully",updated_message:"Role updated successfully",deleted_message:"Role deleted successfully",already_in_use:"Role is already in use"},exchange_rate:{exchange_rate:"Exchange Rate",title:"Fix Currency Exchange issues",description:"Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.",drivers:"Drivers",new_driver:"Add New Provider",edit_driver:"Edit Provider",select_driver:"Select Driver",update:"select exchange rate ",providers_description:"Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.",key:"API Key",name:"Name",driver:"Driver",is_default:"IS DEFAULT",currency:"Currencies",exchange_rate_confirm_delete:"You will not be able to recover this driver",created_message:"Provider Created successfully",updated_message:"Provider Updated Successfully",deleted_message:"Provider Deleted Successfully",error:" You cannot Delete Active Driver",default_currency_error:"This currency is already used in one of the Active Provider",exchange_help_text:"Enter exchange rate to convert from {currency} to {baseCurrency}",currency_freak:"Currency Freak",currency_layer:"Currency Layer",open_exchange_rate:"Open Exchange Rate",currency_converter:"Currency Converter",server:"Server",url:"URL",active:"Active",currency_help_text:"This provider will only be used on above selected currencies",currency_in_used:"The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again."},tax_types:{title:"Momssatser",add_tax:"L\xE4gg till moms",edit_tax:"\xC4ndra moms",description:"Du kan l\xE4gga till och ta bort momssatser som du vill. Crater har st\xF6d f\xF6r moms per artikel men \xE4ven per faktura.",add_new_tax:"L\xE4gg till ny momssats",tax_settings:"Momssattsinst\xE4llningar",tax_per_item:"Moms per artikel",tax_name:"Namn",compound_tax:"Sammansatt moms",percent:"Procent",action:"Handling",tax_setting_description:"Aktivera detta om du vill l\xE4gga till momssats p\xE5 individuella fakturaartiklar. Som standard s\xE4tts moms direkt p\xE5 fakturan.",created_message:"Momssats skapades",updated_message:"Momssats uppdaterades",deleted_message:"Momssats raderades",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna Momssats",already_in_use:"Momssats anv\xE4nds"},payment_modes:{title:"Payment Modes",description:"Modes of transaction for payments",add_payment_mode:"Add Payment Mode",edit_payment_mode:"Edit Payment Mode",mode_name:"Mode Name",payment_mode_added:"Payment Mode Added",payment_mode_updated:"Payment Mode Updated",payment_mode_confirm_delete:"You will not be able to recover this Payment Mode",already_in_use:"Payment Mode is already in use",deleted_message:"Payment Mode deleted successfully"},expense_category:{title:"Kategorier f\xF6r utgifter",action:"Handling",description:"Kategorier kr\xE4vs f\xF6r att l\xE4gga till utgifter. Du kan l\xE4gga till och ta bort dessa kategorier som du vill",add_new_category:"L\xE4gg till ny kategori",add_category:"L\xE4gg till kategori",edit_category:"\xC4ndra kategori",category_name:"Kategorinamn",category_description:"Beskrivning",created_message:"Utgiftskategori skapades",deleted_message:"Utgiftskategori raderades",updated_message:"Utgiftskategori uppdaterades",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna utgiftskategori",already_in_use:"Kategorin anv\xE4nds"},preferences:{currency:"Valuta",default_language:"Standardspr\xE5k",time_zone:"Tidszon",fiscal_year:"R\xE4kenskaps\xE5r",date_format:"Datumformattering",discount_setting:"Rabattinst\xE4llningar",discount_per_item:"Rabatt per artikel ",discount_setting_description:"Aktivera detta om du vill kunna l\xE4gga rabatt p\xE5 enskilda fakturaartiklar. Rabatt ges som standard p\xE5 hela fakturan.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"Spara",preference:"Preferens | Preferenser",general_settings:"Standardpreferenser f\xF6r systemet.",updated_message:"Preferenser uppdaterades",select_language:"V\xE4lj spr\xE5k",select_time_zone:"V\xE4lj tidszon",select_date_format:"V\xE4lj datumformat",select_financial_year:"V\xE4lj r\xE4kenskaps\xE5r",recurring_invoice_status:"Recurring Invoice Status",create_status:"Create Status",active:"Active",on_hold:"On Hold",update_status:"Update Status",completed:"Completed",company_currency_unchangeable:"Company currency cannot be changed"},update_app:{title:"Uppdatera applikationen",description:"Du kan enkelt uppdatera Crater genom att s\xF6ka efter uppdateringar via knappen nedan",check_update:"S\xF6k efter uppdateringar",avail_update:"Uppdatering \xE4r tillg\xE4nglig",next_version:"N\xE4sta version",requirements:"Krav",update:"Uppdatera nu",update_progress:"Uppdaterar...",progress_text:"Det kommer bara ta n\xE5gra minuter. St\xE4ng eller uppdatera inte webl\xE4saren f\xF6rr\xE4n uppdateringen \xE4r f\xE4rdig.",update_success:"Applikationen har uppdaterats! V\xE4nta s\xE5 kommer f\xF6nstret laddas om automatiskt..",latest_message:"Ingen uppdatering tillg\xE4nglig! Du har den senaste versionen.",current_version:"Nuvarande version",download_zip_file:"Ladda ner ZIP-fil",unzipping_package:"Zippar upp paket",copying_files:"Kopierar filer",deleting_files:"Tar bort oanv\xE4nda filer",running_migrations:"K\xF6r migreringar",finishing_update:"Avslutar uppdateringen",update_failed:"Uppdatering misslyckades",update_failed_text:"Uppdateringen misslyckades p\xE5 steg : {step} step",update_warning:"All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating."},backup:{title:"S\xE4kerhetskopiering | S\xE4kerhetskopieringar",description:"S\xE4kerhetskopian \xE4r en zip-fil som inneh\xE5ller alla filer i katalogerna du v\xE4ljer samt en kopia av databasen",new_backup:"Skapa ny s\xE4kerhetskopia",create_backup:"Skapa s\xE4kerhetskopia",select_backup_type:"V\xE4lj typ av s\xE4kerhetskopia",backup_confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna s\xE4kerhetskopia",path:"s\xF6kv\xE4g",new_disk:"Ny disk",created_at:"skapad den",size:"storlek",dropbox:"dropbox",local:"lokal",healthy:"h\xE4lsosam",amount_of_backups:"antal s\xE4kerhetskopior",newest_backups:"senaste s\xE4kerhetskopiorna",used_storage:"anv\xE4nt utrymme",select_disk:"V\xE4lj disk",action:"Handling",deleted_message:"S\xE4kerhetskopia raderad",created_message:"S\xE4kerhetskopia skapades",invalid_disk_credentials:"Ogiltiga autentiseringsuppgifter f\xF6r den valda disken"},disk:{title:"Lagring | Lagringar",description:"Crater anv\xE4nder din lokala disk som standard f\xF6r att spara s\xE4kerhetskopior, avatarer och andra bildfiler. Du kan st\xE4lla in fler lagringsenheter s\xE5som DigitalOcean, S3 och Dropbox beroende av ditt behov.",created_at:"skapad den",dropbox:"dropbox",name:"Namn",driver:"Plats",disk_type:"Typ",disk_name:"Lagringsenhetsnamn",new_disk:"L\xE4gg till ny lagringsenhet",filesystem_driver:"Enhetsplats",local_driver:"Lokal enhet",local_root:"S\xF6kv\xE4g p\xE5 lokal enhet",public_driver:"Offentlig drivrutin",public_root:"Offentlig rot",public_url:"Offentlig URL",public_visibility:"Offentlig synlighet",media_driver:"Mediaenhet",media_root:"Media Root",aws_driver:"AWS",aws_key:"Nyckel",aws_secret:"L\xF6senord",aws_region:"Region",aws_bucket:"Bucket",aws_root:"S\xF6kv\xE4g",do_spaces_type:"Do Spaces type",do_spaces_key:"Nyckel",do_spaces_secret:"L\xF6senord",do_spaces_region:"Region",do_spaces_bucket:"Bucket",do_spaces_endpoint:"Endpoint",do_spaces_root:"S\xF6kv\xE4g",dropbox_type:"Typ",dropbox_token:"Token",dropbox_key:"Nyckel",dropbox_secret:"L\xF6senord",dropbox_app:"App",dropbox_root:"S\xF6kv\xE4g",default_driver:"Standard",is_default:"\xC4r standard",set_default_disk:"V\xE4lj som standard",set_default_disk_confirm:"Denna disk kommer bli standard och alla nya PFDer blir sparade h\xE4r",success_set_default_disk:"Disk vald som standard",save_pdf_to_disk:"Spara PDFer till disk",disk_setting_description:"Aktivera detta om du vill ha en kopia av varje faktura, kostnadsf\xF6rslag, och betalningskvitto som PDF p\xE5 din standard disk automatiskt.Aktiverar du denna funktion s\xE5 kommer laddtiderna f\xF6r visning av PDFer minskas.",select_disk:"V\xE4lj Disk",disk_settings:"Diskinst\xE4llningar",confirm_delete:"Dina existerande filer och kataloger p\xE5 den valda disken kommer inte p\xE5verkas men inst\xE4llningarna f\xF6r disken raderas fr\xE5n Crater",action:"Handling",edit_file_disk:"\xC4ndra disk",success_create:"Disk skapades",success_update:"Disk uppdaterades",error:"Fel vid skapande av disk",deleted_message:"Disk raderades",disk_variables_save_successfully:"Diskinst\xE4llningar sparades",disk_variables_save_error:"N\xE5got gick fel vid sparning av diskinst\xE4llningar",invalid_disk_credentials:"Felaktiga uppgifter vid val av disk"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},Th={account_info:"Kontoinformation",account_info_desc:"Nedan detaljer anv\xE4nds f\xF6r att skapa huvudadministrat\xF6rskonto. Du kan \xE4ndra detta i efterhand.",name:"Namn",email:"Epost",password:"L\xF6senord",confirm_password:"Bekr\xE4fta l\xF6senord",save_cont:"Spara och forts\xE4tt",company_info:"F\xF6retagsinformation",company_info_desc:"Denna information visas p\xE5 fakturor. Du kan \xE4ndra detta i efterhand p\xE5 sidan f\xF6r inst\xE4llningar.",company_name:"F\xF6retagsnamn",company_logo:"F\xF6retagslogga",logo_preview:"F\xF6rhandsvisning av logga",preferences:"Inst\xE4llningar",preferences_desc:"Standardinst\xE4llningar f\xF6r systemet.",currency_set_alert:"The company's currency cannot be changed later.",country:"Land",state:"Kommun",city:"Stad",address:"Adress",street:"Gatuadress1 | Gatuadress2",phone:"Telefon",zip_code:"Postnr",go_back:"Tillbaka",currency:"Valuta",language:"Spr\xE5k",time_zone:"Tidszon",fiscal_year:"R\xE4kenskaps\xE5r",date_format:"Datumformat",from_address:"Fr\xE5n adress",username:"Anv\xE4ndarnamn",next:"N\xE4sta",continue:"Forts\xE4tt",skip:"Hoppa \xF6ver",database:{database:"Sidans URL & Databas",connection:"Databasanslutning",host:"V\xE4rdadress till databasen",port:"Port till databasen",password:"L\xF6senord till databasen",app_url:"Appens URL",app_domain:"Appens Dom\xE4n",username:"Anv\xE4ndarnamn till databasen",db_name:"Databasens namn",db_path:"Databasens s\xF6kv\xE4g",desc:"Skapa en database p\xE5 din server och st\xE4ll in autentiseringsuppgifter i formul\xE4ret nedan."},permissions:{permissions:"Beh\xF6righeter",permission_confirm_title:"\xC4r du s\xE4ker p\xE5 att du vill forts\xE4tta?",permission_confirm_desc:"Fel beh\xF6righeter vid kontroll p\xE5 katalogen",permission_desc:"Nedan \xE4r en lista p\xE5 katalogr\xE4ttigheter som kr\xE4vs f\xF6r att denna app ska fungera. Om beh\xF6righetskontrollen misslyckas, uppdatera beh\xF6righeterna f\xF6r katalogerna."},verify_domain:{title:"Domain Verification",desc:"Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.",app_domain:"App Domain",verify_now:"Verify Now",success:"Domain Verify Successfully.",failed:"Domain verification failed. Please enter valid domain name.",verify_and_continue:"Verify And Continue"},mail:{host:"V\xE4rdadress till epost",port:"Port till epost",driver:"Typ",secret:"Hemlighet",mailgun_secret:"Hemlighet",mailgun_domain:"Dom\xE4n",mailgun_endpoint:"Endpoint",ses_secret:"Hemlighet",ses_key:"Nyckel",password:"L\xF6senord",username:"Anv\xE4ndarnamn",mail_config:"Epostinst\xE4llningar",from_name:"Namn som st\xE5r vid utg\xE5ende epost",from_mail:"Epostadress som anv\xE4nds som returadress vid utg\xE5ende epost",encryption:"Epostkryptering",mail_config_desc:"Nedan formul\xE4r anv\xE4nds f\xF6r att konfigurera vilket s\xE4tt som ska anv\xE4ndar f\xF6r att skicka epost. Du kan ocks\xE5 anv\xE4nda tredjepartsleverant\xF6r som Sendgrid, SES o.s.v."},req:{system_req:"Systemkrav",php_req_version:"Php (version {version} kr\xE4vs)",check_req:"Kontrollera krav",system_req_desc:"Crater har n\xE5gra krav p\xE5 din server. Kontrollera att din server har den n\xF6dv\xE4ndiga versionen av PHP och alla till\xE4gg som n\xE4mns nedan."},errors:{migrate_failed:"Migration misslyckades",database_variables_save_error:"Kan inte skriva till .env-filen. Kontrollera dina beh\xF6righeter till filen",mail_variables_save_error:"Epostinst\xE4llningar misslyckades.",connection_failed:"Databasanslutning misslyckades",database_should_be_empty:"Databasen m\xE5ste vara tom"},success:{mail_variables_save_successfully:"Epostinst\xE4llningar sparades.",database_variables_save_successfully:"Databasinst\xE4llningar sparades."}},Rh={invalid_phone:"Felaktigt telefonnummer",invalid_url:"Felaktig url (ex: http://www.crater.com)",invalid_domain_url:"Felaktig url (ex: crater.com)",required:"F\xE4ltet \xE4r tvingande",email_incorrect:"Felaktig epostadress.",email_already_taken:"Denna epostadress finns redan.",email_does_not_exist:"Anv\xE4ndare med den epostadressen finns inte",item_unit_already_taken:"Detta artikelenhetsnamn finns redan",payment_mode_already_taken:"Betalningsmetodsnamnet finns redan",send_reset_link:"Skicka l\xE4nk f\xF6r \xE5terst\xE4llning",not_yet:"Inte \xE4n? Skicka igen",password_min_length:"L\xF6senordet m\xE5ste inneh\xE5lla {count} tecken",name_min_length:"Namn m\xE5ste ha minst {count} bokst\xE4ver.",prefix_min_length:"Prefix must have at least {count} letters.",enter_valid_tax_rate:"Skriv in till\xE5ten momssats",numbers_only:"Endast siffror.",characters_only:"Endast bokst\xE4ver.",password_incorrect:"L\xF6senorden m\xE5ste \xF6verensst\xE4mma",password_length:"L\xF6senordet m\xE5ste vara minst {count} tecken.",qty_must_greater_than_zero:"Antal m\xE5ste vara st\xF6rre \xE4n noll.",price_greater_than_zero:"Pris m\xE5ste vara st\xF6rre \xE4n noll.",payment_greater_than_zero:"Betalningen m\xE5ste vara st\xF6rre \xE4n noll.",payment_greater_than_due_amount:"Inslagen betalning \xE4r st\xF6rre \xE4n summan p\xE5 denna faktura.",quantity_maxlength:"Antal kan inte vara st\xF6rre \xE4n 20 siffror.",price_maxlength:"Pris kan inte vara st\xF6rre \xE4n 20 siffror.",price_minvalue:"Pris m\xE5ste vara st\xF6rre \xE4n 0.",amount_maxlength:"Belopp kan inte vara st\xF6rre \xE4n 20 siffror.",amount_minvalue:"Belopp m\xE5ste vara st\xF6rre \xE4n 9.",discount_maxlength:"Discount should not be greater than max discount",description_maxlength:"Beskrivning f\xE5r inte inneh\xE5lla fler \xE4n 255 tecken.",subject_maxlength:"\xC4mne f\xE5r inte inneh\xE5lla fler \xE4n 100 tecken.",message_maxlength:"Meddelande f\xE5r inte inneh\xE5lla fler \xE4n 255 tecken.",maximum_options_error:"H\xF6gst {max} val. Ta bort ett val f\xF6r att kunna l\xE4gga till ett annat.",notes_maxlength:"Noteringar kan inte vara st\xF6rre \xE4n 255 tecken.",address_maxlength:"Adress kan inte vara st\xF6rre \xE4n 255 tecken.",ref_number_maxlength:"Referensnummer kan inte vara st\xF6rre \xE4n 255 tecken.",prefix_maxlength:"Prefix kan inte vara st\xF6rre \xE4n 5 tecken.",something_went_wrong:"n\xE5got blev fel",number_length_minvalue:"Number length should be greater than 0",at_least_one_ability:"Please select atleast one Permission.",valid_driver_key:"Please enter a valid {driver} key.",valid_exchange_rate:"Please enter a valid exchange rate.",company_name_not_same:"Company name must match with given name."},Mh={starter_plan:"This feature is available on Starter plan and onwards!",invalid_provider_key:"Please Enter Valid Provider API Key.",estimate_number_used:"The estimate number has already been taken.",invoice_number_used:"The invoice number has already been taken.",payment_attached:"This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.",payment_number_used:"The payment number has already been taken.",name_already_taken:"The name has already been taken.",receipt_does_not_exist:"Receipt does not exist.",customer_cannot_be_changed_after_payment_is_added:"Customer cannot be change after payment is added",invalid_credentials:"Invalid Credentials.",not_allowed:"Not Allowed",login_invalid_credentials:"These credentials do not match our records.",enter_valid_cron_format:"Please enter a valid cron format",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},Fh="Kostnadsf\xF6rslag",$h="Kostnadsf\xF6rslagsnummer",Uh="Kostnadsf\xF6rslagsdatum",Vh="Utg\xE5ngsdatum",Oh="Faktura",Lh="Fakturanummer",Bh="Fakturadatum",qh="Inbetalningsdatum",Kh="Noteringar",Wh="Artiklar",Zh="Antal",Hh="Kostnad",Yh="Rabatt",Gh="Belopp",Jh="Delsumma",Qh="Summa",Xh="Payment",ey="Betalningskvitto",ty="Betalningsdatum",ay="Betalningsnummer",iy="Betalningstyp",ny="Belopp mottaget",sy="Kostnadsrapport",oy="Totalkostnad",ry="Resultat- och f\xF6rlustrapport",dy="Sales Customer Report",ly="Sales Item Report",cy="Tax Summary Report",_y="Inkomst",uy="Nettof\xF6rtj\xE4nst",my="F\xF6rs\xE4ljningsrapport: Per kund",py="SUMMA F\xD6RS\xC4LJNINGAR",gy="F\xF6rs\xE4ljningsrapport: Per artikel",fy="Momsrapport",vy="SUMMA MOMS",hy="Momssatser",yy="Utgifter",by="Faktureras till,",ky="Skickas till,",wy="Fr\xE5n:",xy="Tax";var zy={navigation:gh,general:fh,dashboard:vh,tax_types:hh,global_search:yh,company_switcher:bh,dateRange:kh,customers:wh,items:xh,estimates:zh,invoices:Sh,recurring_invoices:Ph,payments:jh,expenses:Ah,login:Dh,modules:Ch,users:Eh,reports:Ih,settings:Nh,wizard:Th,validation:Rh,errors:Mh,pdf_estimate_label:Fh,pdf_estimate_number:$h,pdf_estimate_date:Uh,pdf_estimate_expire_date:Vh,pdf_invoice_label:Oh,pdf_invoice_number:Lh,pdf_invoice_date:Bh,pdf_invoice_due_date:qh,pdf_notes:Kh,pdf_items_label:Wh,pdf_quantity_label:Zh,pdf_price_label:Hh,pdf_discount_label:Yh,pdf_amount_label:Gh,pdf_subtotal:Jh,pdf_total:Qh,pdf_payment_label:Xh,pdf_payment_receipt_label:ey,pdf_payment_date:ty,pdf_payment_number:ay,pdf_payment_mode:iy,pdf_payment_amount_received_label:ny,pdf_expense_report_label:sy,pdf_total_expenses_label:oy,pdf_profit_loss_label:ry,pdf_sales_customers_label:dy,pdf_sales_items_label:ly,pdf_tax_summery_label:cy,pdf_income_label:_y,pdf_net_profit_label:uy,pdf_customer_sales_report:my,pdf_total_sales_label:py,pdf_item_sales_label:gy,pdf_tax_report_label:fy,pdf_total_tax_label:vy,pdf_tax_types_label:hy,pdf_expenses_label:yy,pdf_bill_to:by,pdf_ship_to:ky,pdf_received_from:wy,pdf_tax_label:xy};const Sy={dashboard:"Hlavn\xFD Panel",customers:"Z\xE1kazn\xEDci",items:"Polo\u017Eky",invoices:"Fakt\xFAry","recurring-invoices":"Recurring Invoices",expenses:"V\xFDdaje",estimates:"Cenov\xE9 odhady",payments:"Platby",reports:"Reporty",settings:"Nastavenia",logout:"Odhl\xE1si\u0165 sa",users:"U\u017Eivatelia",modules:"Modules"},Py={add_company:"Prida\u0165 firmu",view_pdf:"Zobrazi\u0165 PDF",copy_pdf_url:"Kop\xEDrova\u0165 PDF adresu",download_pdf:"Stiahnu\u0165 PDF",save:"Ulo\u017Ei\u0165",create:"Vytvori\u0165",cancel:"Zru\u0161i\u0165",update:"Aktualizova\u0165",deselect:"Zru\u0161i\u0165 v\xFDber",download:"Stiahnu\u0165",from_date:"Od d\xE1tumu",to_date:"Do d\xE1tumu",from:"Od",to:"Pre",ok:"Ok",yes:"Yes",no:"No",sort_by:"Zoradi\u0165 pod\u013Ea",ascending:"Vzostupne",descending:"Zostupne",subject:"Predmet",body:"Telo textu",message:"Spr\xE1va",send:"Odosla\u0165",preview:"Preview",go_back:"Sp\xE4\u0165",back_to_login:"Sp\xE4\u0165 na prihl\xE1senie?",home:"Domov",filter:"Filtrova\u0165",delete:"Odstr\xE1ni\u0165",edit:"Upravi\u0165",view:"Zobrazi\u0165",add_new_item:"Prida\u0165 nov\xFA polo\u017Eku",clear_all:"Vy\u010Disti\u0165 v\u0161etko",showing:"Zobrazuje sa",of:"z",actions:"Akcie",subtotal:"MEDZIS\xDA\u010CET",discount:"Z\u013DAVA",fixed:"Pevn\xE9",percentage:"Percento",tax:"DA\u0147",total_amount:"SUMA SPOLU",bill_to:"Faktura\u010Dn\xE1 adresa",ship_to:"Adresa doru\u010Denia",due:"Term\xEDn",draft:"Koncept",sent:"Odoslan\xE9",all:"V\u0161etko",select_all:"Vybra\u0165 v\u0161etky",select_template:"Select Template",choose_file:"Kliknite sem pre vybratie s\xFAboru",choose_template:"Vybra\u0165 vzh\u013Ead",choose:"Vybra\u0165",remove:"Odstr\xE1ni\u0165",select_a_status:"Vyberte stav",select_a_tax:"Vyberte da\u0148",search:"H\u013Eada\u0165",are_you_sure:"Ste si ist\xFD?",list_is_empty:"Zoznam je pr\xE1zdny.",no_tax_found:"\u017Diadna da\u0148 nebola n\xE1jden\xE1!",four_zero_four:"404",you_got_lost:"Ups! Stratili ste sa!",go_home:"\xCDs\u0165 domov",test_mail_conf:"Otestova\u0165 e-mailov\xFA konfigur\xE1ciu",send_mail_successfully:"E-Mail odoslan\xFD \xFAspe\u0161ne",setting_updated:"Nastavenia boli \xFAspe\u0161ne aktualizovan\xE9",select_state:"Vyberte \u0161t\xE1t",select_country:"Vyberte krajinu",select_city:"Vyberte mesto",street_1:"Prv\xFD riadok ulice",street_2:"Druh\xFD riadok ulice",action_failed:"Akcia ne\xFAspe\u0161n\xE1",retry:"Sk\xFAsi\u0165 znova",choose_note:"Vyberte pozn\xE1mku",no_note_found:"Neboli n\xE1jden\xE9 \u017Eiadne pozn\xE1mky",insert_note:"Vlo\u017E pozn\xE1mku",copied_pdf_url_clipboard:"Copied PDF url to clipboard!",copied_url_clipboard:"Copied url to clipboard!",docs:"Docs",do_you_wish_to_continue:"Do you wish to continue?",note:"Note",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},jy={select_year:"Vyberte rok",cards:{due_amount:"\u010Ciastka k zaplateniu",customers:"Z\xE1kazn\xEDci",invoices:"Fakt\xFAry",estimates:"Cenov\xE9 odhady",payments:"Payments"},chart_info:{total_sales:"Predaje",total_receipts:"Doklady o zaplaten\xED",total_expense:"V\xFDdaje",net_income:"\u010Cist\xFD pr\xEDjem",year:"Vyberte rok"},monthly_chart:{title:"Predaje a V\xFDdaje"},recent_invoices_card:{title:"Splatn\xE9 fakt\xFAry",due_on:"Term\xEDn splatenia",customer:"Z\xE1kazn\xEDk",amount_due:"\u010Ciastka k zaplateniu",actions:"Akcie",view_all:"Zobrazi\u0165 v\u0161etko"},recent_estimate_card:{title:"Ned\xE1vne cenov\xE9 odhady",date:"D\xE1tum",customer:"Z\xE1kazn\xEDk",amount_due:"Cena",actions:"Akcie",view_all:"Zobrazi\u0165 v\u0161etky"}},Ay={name:"Meno",description:"Popis",percent:"Percento",compound_tax:"Zlo\u017Een\xE1 da\u0148"},Dy={search:"H\u013Eada\u0165...",customers:"Z\xE1kazn\xEDci",users:"U\u017Eivatelia",no_results_found:"Neboli n\xE1jden\xE9 \u017Eiadne v\xFDsledky"},Cy={label:"SWITCH COMPANY",no_results_found:"No Results Found",add_new_company:"Add new company",new_company:"New company",created_message:"Company created successfully"},Ey={today:"Today",this_week:"This Week",this_month:"This Month",this_quarter:"This Quarter",this_year:"This Year",previous_week:"Previous Week",previous_month:"Previous Month",previous_quarter:"Previous Quarter",previous_year:"Previous Year",custom:"Custom"},Iy={title:"Z\xE1kazn\xEDci",prefix:"Prefix",add_customer:"Prida\u0165 Z\xE1kazn\xEDka",contacts_list:"Zoznam z\xE1kazn\xEDkov",name:"Meno",mail:"E-mail | E-maily",statement:"V\xFDpis",display_name:"Zobrazovan\xE9 meno",primary_contact_name:"Meno Prim\xE1rneho Kontaktu",contact_name:"Meno Kontaktu",amount_due:"\u010Ciastka k zaplateniu",email:"E-mail",address:"Adresa",phone:"Telef\xF3n",website:"Webov\xE9 str\xE1nky",overview:"Preh\u013Ead",invoice_prefix:"Invoice Prefix",estimate_prefix:"Estimate Prefix",payment_prefix:"Payment Prefix",enable_portal:"Aktivova\u0165 port\xE1l",country:"Krajina",state:"\u0160t\xE1t",city:"Mesto",zip_code:"PS\u010C",added_on:"Pridan\xE9 D\u0148a",action:"Akcia",password:"Heslo",confirm_password:"Confirm Password",street_number:"\u010C\xEDslo Ulice",primary_currency:"Hlavn\xE1 Mena",description:"Popis",add_new_customer:"Prida\u0165 Nov\xE9ho Z\xE1kazn\xEDka",save_customer:"Ulo\u017Ei\u0165 Z\xE1kazn\xEDka",update_customer:"Aktualizova\u0165 Zak\xE1zn\xEDka",customer:"Z\xE1kazn\xEDk | Z\xE1kazn\xEDci",new_customer:"Nov\xFD Z\xE1kazn\xEDk",edit_customer:"Upravi\u0165 Z\xE1kazn\xEDka",basic_info:"Z\xE1kladn\xE9 Inform\xE1cie",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"Faktura\u010Dn\xE1 Adresa",shipping_address:"Doru\u010Dovacia Adresa",copy_billing_address:"Kop\xEDrova\u0165 pod\u013Ea Faktura\u010Dnej adresy",no_customers:"Zatia\u013E nebol pridan\xFD \u017Eiadny z\xE1kazn\xEDk!",no_customers_found:"Nen\xE1jden\xED \u017Eiadni z\xE1kazn\xEDci!",no_contact:"No contact",no_contact_name:"No contact name",list_of_customers:"T\xE1to sekcia bude obsahova\u0165 zoznam z\xE1kazn\xEDkov.",primary_display_name:"Hlavn\xE9 meno pre zobrazenie",select_currency:"Vyberte menu",select_a_customer:"Vyberte z\xE1kazn\xEDka",type_or_click:"Za\u010Dnite p\xEDsa\u0165 alebo kliknite pre vybratie",new_transaction:"Nov\xE1 Transakcia",no_matching_customers:"Nena\u0161li sa \u017Eiadny z\xE1kazn\xEDci sp\u013A\u0148aj\xFAce Va\u0161e podmienky!",phone_number:"Telef\xF3nne \u010C\xEDslo",create_date:"D\xE1tum Vytvorenia",confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 tohto z\xE1kazn\xEDka ani \u017Eiadne fakt\xFAry, cenov\xE9 odhady alebo platby s n\xEDm spojen\xE9. | Nebudete m\xF4c\u0165 obnovi\u0165 t\xFDchto z\xE1kazn\xEDkov ani \u017Eiadne fakt\xFAry, cenov\xE9 odhady alebo platby s nimi spojen\xE9.",created_message:"Z\xE1kazn\xEDk \xFAspe\u0161ne vytvoren\xFD",updated_message:"Z\xE1kazn\xEDk \xFAspe\u0161ne aktualizovan\xFD",address_updated_message:"Address Information Updated succesfully",deleted_message:"Z\xE1kazn\xEDk \xFAspe\u0161ne odstr\xE1nen\xFD | Z\xE1kazn\xEDci \xFAspe\u0161ne odstr\xE1nen\xED",edit_currency_not_allowed:"Cannot change currency once transactions created."},Ny={title:"Polo\u017Eky",items_list:"Zoznam Polo\u017Eiek",name:"Meno",unit:"Jednotka",description:"Popis",added_on:"Pridan\xE9 D\u0148a",price:"Cena",date_of_creation:"D\xE1tum Vytvorenia",not_selected:"No item selected",action:"Akcia",add_item:"Prida\u0165 Polo\u017Eku",save_item:"Ulo\u017Ei\u0165 Polo\u017Eku",update_item:"Aktualizova\u0165 Polo\u017Eku",item:"Polo\u017Eka | Polo\u017Eky",add_new_item:"Prida\u0165 Nov\xFA Polo\u017Eku",new_item:"Nov\xE1 polo\u017Eka",edit_item:"Upravi\u0165 Polo\u017Eku",no_items:"Zatia\u013E \u017Eiadn\xE9 polo\u017Eky!",list_of_items:"T\xE1to sekcia bude obsahova\u0165 zoznam z\xE1kazn\xEDkov.",select_a_unit:"vyberte jednotku",taxes:"Dane",item_attached_message:"Nie je mo\u017En\xE9 vymaza\u0165 polo\u017Eku, ktor\xE1 sa pou\u017E\xEDva",confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 t\xFAto Polo\u017Eku | Nebudete m\xF4c\u0165 obnovi\u0165 tieto Polo\u017Eky",created_message:"Polo\u017Eka \xFAspe\u0161ne vytvoren\xE1",updated_message:"Polo\u017Eka \xFAspe\u0161ne aktualizovan\xE1",deleted_message:"Polo\u017Eka \xFAspe\u0161ne odstr\xE1nen\xE1 | Polo\u017Eky \xFAspe\u0161ne odstr\xE1nen\xE9"},Ty={title:"Cenov\xE9 odhady",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"Cenov\xFD odhad | Cenov\xE9 odhady",estimates_list:"Zoznam Cenov\xFDch odhadov",days:"{days} Dn\xED",months:"{months} Mesiac",years:"{years} Rok",all:"V\u0161etko",paid:"Zaplaten\xE9",unpaid:"Nezaplaten\xE9",customer:"Z\xC1KAZN\xCDK",ref_no:"REF \u010C.",number:"\u010C\xCDSLO",amount_due:"Dl\u017En\xE1 suma",partially_paid:"\u010Ciasto\u010Dne Zaplaten\xE9",total:"Spolu",discount:"Z\u013Eava",sub_total:"Medzis\xFA\u010Det",estimate_number:"\u010C\xEDslo Cenov\xE9ho odhadu",ref_number:"Ref. \u010C\xEDslo",contact:"Kontakt",add_item:"Prida\u0165 Polo\u017Eku",date:"D\xE1tum",due_date:"D\xE1tum Splatnosti",expiry_date:"D\xE1tum Ukon\u010Denia Platnosti",status:"Stav",add_tax:"Prida\u0165 Da\u0148",amount:"Suma",action:"Akcia",notes:"Pozn\xE1mky",tax:"Da\u0148",estimate_template:"Vzh\u013Ead",convert_to_invoice:"Konvertova\u0165 do Fakt\xFAry",mark_as_sent:"Ozna\u010Di\u0165 ako odoslan\xE9",send_estimate:"Odosla\u0165 Cenov\xFD odhad",resend_estimate:"Znovu Odosla\u0165 Cenov\xFD odhad",record_payment:"Zaznamena\u0165 Platbu",add_estimate:"Vytvori\u0165 Cenov\xFD odhad",save_estimate:"Ulo\u017Ei\u0165 Cenov\xFD odhad",confirm_conversion:"Tento cenov\xFD odhad bude pou\u017Eit\xFD k vytvoreniu novej Fakt\xFAry.",conversion_message:"Fakt\xFAra \xFAspe\u0161ne vytvoren\xE1",confirm_send_estimate:"Tento Cenov\xFD odhad bude odoslan\xFD z\xE1kazn\xEDkovi prostredn\xEDctvom e-mailu",confirm_mark_as_sent:"Tento Cenov\xFD odhad bude ozna\u010Den\xFD ako odoslan\xFD",confirm_mark_as_accepted:"Tento Cenov\xFD odhad bude ozna\u010Den\xFD ako Prijat\xFD",confirm_mark_as_rejected:"Tento Cenov\xFD odhad bude ozna\u010Den\xFD ako Odmietnut\xFD",no_matching_estimates:"Nena\u0161li sa \u017Eiadne Cenov\xE9 odhady sp\u013A\u0148aj\xFAce Va\u0161e podmienky!",mark_as_sent_successfully:"Cenov\xFD odhad \xFAspe\u0161ne ozna\u010Den\xFD ako odoslan\xFD",send_estimate_successfully:"Cenov\xFD odhad \xFAspe\u0161ne odoslan\xFD",errors:{required:"Pole je povinn\xE9"},accepted:"Prij\xE1t\xE1",rejected:"Rejected",expired:"Expired",sent:"Odoslan\xE1",draft:"Koncept",viewed:"Viewed",declined:"Zru\u0161en\xFD",new_estimate:"Nov\xFD Cenov\xFD odhad",add_new_estimate:"Prida\u0165 nov\xFD Cenov\xFD odhad",update_Estimate:"Aktualizova\u0165 Cenov\xFD odhad",edit_estimate:"Upravi\u0165 Cenov\xFD odhad",items:"polo\u017Eky",Estimate:"Cenov\xFD odhad | Cenov\xE9 odhady",add_new_tax:"Prida\u0165 Nov\xFA Da\u0148",no_estimates:"Zatia\u013E \u017Eiadne cenov\xE9 odhady",list_of_estimates:"T\xE1to sekcia bude obsahova\u0165 zoznam cenov\xFDch odhadov.",mark_as_rejected:"Ozna\u010Di\u0165 ako odmietnut\xFA",mark_as_accepted:"Ozna\u010Den\xFD ako prijat\xFA",marked_as_accepted_message:"Cenov\xFD odhad ozna\u010Den\xFD ako schv\xE1len\xFD",marked_as_rejected_message:"Cenov\xFD odhad ozna\u010Den\xFD ako odmietnut\xFD",confirm_delete:"Nebude mo\u017En\xE9 obnovi\u0165 cenov\xFD odhad | Nebude mo\u017En\xE9 obnovi\u0165 cenov\xE9 odhady",created_message:"Cenov\xFD odhad \xFAspe\u0161n\xE9 vytvoren\xFD",updated_message:"Cenov\xFD odhad \xFAspe\u0161n\xE9 aktualizovan\xFD",deleted_message:"Cenov\xFD odhad \xFAspe\u0161n\xE9 vymazan\xFD | Cenov\xE9 odhady \xFAspe\u0161n\xE9 vymazan\xE9",something_went_wrong:"Nie\u010Do neprebehlo v poriadku, odsk\xFA\u0161ajte pros\xEDm znova.",item:{title:"N\xE1zov Polo\u017Eky",description:"Popis",quantity:"Mno\u017Estvo",price:"Cena",discount:"Z\u013Eava",total:"Celkom",total_discount:"Celkov\xE1 z\u013Eava",sub_total:"Medzis\xFA\u010Det",tax:"Da\u0148",amount:"Suma",select_an_item:"Za\u010Dnite p\xEDsa\u0165 alebo kliknite pre vybratie polo\u017Eky",type_item_description:"Zadajte Popis Polo\u017Eky (volite\u013En\xE9)"}},Ry={title:"Fakt\xFAry",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"Zoznam Fakt\xFAr",invoice_information:"Invoice Information",days:"{days} \u010Ee\u0148",months:"{months} Mesiac",years:"{years} Rok",all:"V\u0161etko",paid:"Zaplaten\xE9",unpaid:"Nezaplaten\xE9",viewed:"Viewed",overdue:"Overdue",completed:"Completed",customer:"Z\xC1KAZN\xCDK",paid_status:"Stav platby",ref_no:"REF \u010C.",number:"\u010C\xCDSLO",amount_due:"Dl\u017En\xE1 suma",partially_paid:"\u010Ciasto\u010Dne Zaplaten\xE9",total:"Spolu",discount:"Z\u013Eava",sub_total:"Medzis\xFA\u010Det",invoice:"Fakt\xFAra | Fakt\xFAry",invoice_number:"\u010C\xEDslo Fakt\xFAry",ref_number:"Ref. \u010C\xEDslo",contact:"Kontakt",add_item:"Prida\u0165 Polo\u017Eku",date:"D\xE1tum",due_date:"D\xE1tum Splatnosti",status:"Stav",add_tax:"Prida\u0165 Da\u0148",amount:"Suma",action:"Akcia",notes:"Pozn\xE1mky",view:"Zobrazi\u0165",send_invoice:"Odosla\u0165 Fakt\xFAru",resend_invoice:"Odosla\u0165 Fakt\xFAru Znovu",invoice_template:"Vzh\u013Ead fakt\xFAry",conversion_message:"Invoice cloned successful",template:"Vzh\u013Ead",mark_as_sent:"Ozna\u010Di\u0165 ako odoslan\xFA",confirm_send_invoice:"T\xE1to fakt\xFAra bude odoslan\xE1 z\xE1kazn\xEDkovi prostredn\xEDctvom e-mailu",invoice_mark_as_sent:"T\xE1to fakt\xFAra bude ozna\u010Den\xE1 ako odoslan\xE1",confirm_mark_as_accepted:"This invoice will be marked as Accepted",confirm_mark_as_rejected:"This invoice will be marked as Rejected",confirm_send:"T\xE1to fakt\xFAra bude odoslan\xE1 z\xE1kazn\xEDkovi prostredn\xEDctvom e-mailu",invoice_date:"D\xE1tum Vystavenia",record_payment:"Zaznamena\u0165 Platbu",add_new_invoice:"Nov\xE1 Fakt\xFAra",update_expense:"Update Expense",edit_invoice:"Upravi\u0165 Fakt\xFAru",new_invoice:"Nov\xE1 Fakt\xFAra",save_invoice:"Ulo\u017Ei\u0165 Fakt\xFAru",update_invoice:"Upravi\u0165 Fakt\xFAru",add_new_tax:"Prida\u0165 Nov\xFA Da\u0148",no_invoices:"Zatia\u013E nem\xE1te \u017Eiadn\xE9 fakt\xFAry!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"T\xE1to sekcia bude obsahova\u0165 zoznam fakt\xFAr",select_invoice:"Vybra\u0165 Fakt\xFAru",no_matching_invoices:"Nena\u0161li sa \u017Eiadne fakt\xFAry!",mark_as_sent_successfully:"Fakt\xFAra ozna\u010Den\xE1 ako \xFAspe\u0161ne odoslan\xE1",invoice_sent_successfully:"Invoice sent successfully",cloned_successfully:"Fakt\xFAra bola \xFAspe\u0161ne okop\xEDrovan\xE1",clone_invoice:"Kop\xEDrova\u0165 fakt\xFAru",confirm_clone:"Fakt\xFAra bude okop\xEDrovan\xE1 do novej",item:{title:"N\xE1zov polo\u017Eky",description:"Popis",quantity:"Mno\u017Estvo",price:"Cena",discount:"Z\u013Eava",total:"Celkom",total_discount:"Celkov\xE1 z\u013Eava",sub_total:"Medzis\xFA\u010Det",tax:"Da\u0148",amount:"\u010Ciastka",select_an_item:"Nap\xED\u0161te alebo vyberte polo\u017Eku",type_item_description:"Popis polo\u017Eky (volite\u013En\xE9)"},payment_attached_message:"K jednej z vybran\xFDch fakt\xFAr u\u017E je pripojen\xE1 platba. Nezabudnite najsk\xF4r vymaza\u0165 prilo\u017Een\xE9 platby, aby ste mohli pokra\u010Dova\u0165 v odstr\xE1nen\xED",confirm_delete:"T\xFAto fakt\xFAru nebude mo\u017En\xE9 obnovi\u0165 | Tieto fakt\xFAry nebude mo\u017En\xE9 obnovi\u0165",created_message:"Fakt\xFAra \xFAspe\u0161ne vytvoren\xE1",updated_message:"Fakt\xFAra \xFAspe\u0161ne aktualizovan\xE1",deleted_message:"Fakt\xFAra \xFAspe\u0161ne vymazan\xE1 | Fakt\xFAry \xFAspe\u0161ne vymazan\xE9",marked_as_sent_message:"Fakt\xFAra \xFAspe\u0161ne ozna\u010Den\xE1 ako odoslan\xE1",something_went_wrong:"Nie\u010Do neprebehlo v poriadku, odsk\xFA\u0161ajte pros\xEDm znova.",invalid_due_amount_message:"Celkov\xE1 suma fakt\xFAry nem\xF4\u017Ee by\u0165 ni\u017E\u0161ia ako celkov\xE1 suma zaplaten\xE1 za t\xFAto fakt\xFAru. Ak chcete pokra\u010Dova\u0165, aktualizujte fakt\xFAru alebo odstr\xE1\u0148te s\xFAvisiace platby."},My={title:"Recurring Invoices",invoices_list:"Recurring Invoices List",days:"{days} Days",months:"{months} Month",years:"{years} Year",all:"All",paid:"Paid",unpaid:"Unpaid",viewed:"Viewed",overdue:"Overdue",active:"Active",completed:"Completed",customer:"CUSTOMER",paid_status:"PAID STATUS",ref_no:"REF NO.",number:"NUMBER",amount_due:"AMOUNT DUE",partially_paid:"Partially Paid",total:"Total",discount:"Discount",sub_total:"Sub Total",invoice:"Recurring Invoice | Recurring Invoices",invoice_number:"Recurring Invoice Number",next_invoice_date:"Next Invoice Date",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",limit_by:"Limit by",limit_date:"Limit Date",limit_count:"Limit Count",count:"Count",status:"Status",select_a_status:"Select a status",working:"Working",on_hold:"On Hold",complete:"Completed",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",view:"View",basic_info:"Basic Info",send_invoice:"Send Recurring Invoice",auto_send:"Auto Send",resend_invoice:"Resend Recurring Invoice",invoice_template:"Recurring Invoice Template",conversion_message:"Recurring Invoice cloned successful",template:"Template",mark_as_sent:"Mark as sent",confirm_send_invoice:"This recurring invoice will be sent via email to the customer",invoice_mark_as_sent:"This recurring invoice will be marked as sent",confirm_send:"This recurring invoice will be sent via email to the customer",starts_at:"Start Date",due_date:"Invoice Due Date",record_payment:"Record Payment",add_new_invoice:"Add New Recurring Invoice",update_expense:"Update Expense",edit_invoice:"Edit Recurring Invoice",new_invoice:"New Recurring Invoice",send_automatically:"Send Automatically",send_automatically_desc:"Enable this, if you would like to send the invoice automatically to the customer when its created.",save_invoice:"Save Recurring Invoice",update_invoice:"Update Recurring Invoice",add_new_tax:"Add New Tax",no_invoices:"No Recurring Invoices yet!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"This section will contain the list of recurring invoices.",select_invoice:"Select Invoice",no_matching_invoices:"There are no matching recurring invoices!",mark_as_sent_successfully:"Recurring Invoice marked as sent successfully",invoice_sent_successfully:"Recurring Invoice sent successfully",cloned_successfully:"Recurring Invoice cloned successfully",clone_invoice:"Clone Recurring Invoice",confirm_clone:"This recurring invoice will be cloned into a new Recurring Invoice",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"},frequency:{title:"Frequency",select_frequency:"Select Frequency",minute:"Minute",hour:"Hour",day_month:"Day of month",month:"Month",day_week:"Day of week"},confirm_delete:"You will not be able to recover this Invoice | You will not be able to recover these Invoices",created_message:"Recurring Invoice created successfully",updated_message:"Recurring Invoice updated successfully",deleted_message:"Recurring Invoice deleted successfully | Recurring Invoices deleted successfully",marked_as_sent_message:"Recurring Invoice marked as sent successfully",user_email_does_not_exist:"User email does not exist",something_went_wrong:"something went wrong",invalid_due_amount_message:"Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue."},Fy={title:"Platby",payments_list:"Zoznam Platieb",record_payment:"Zaznamena\u0165 Platbu",customer:"Z\xE1kazn\xEDk",date:"D\xE1tum",amount:"Suma",action:"Akcia",payment_number:"\u010C\xEDslo Platby",payment_mode:"Sp\xF4sob Platby",invoice:"Fakt\xFAra",note:"Pozn\xE1mka",add_payment:"Prida\u0165 Platbu",new_payment:"Nov\xE1 Platba",edit_payment:"\xDApravi\u0165 Platbu",view_payment:"Zobrazi\u0165 Platbu",add_new_payment:"Nov\xE1 Platba",send_payment_receipt:"Posla\u0165 Doklad o Zaplaten\xED",send_payment:"Odosla\u0165 Platbu",save_payment:"Ulo\u017Ei\u0165 Platbu",update_payment:"\xDApravi\u0165 Platbu",payment:"Platba | Platby",no_payments:"Zatia\u013E nem\xE1te \u017Eiadne platby!",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"Nena\u0161li sa \u017Eiadne platby sp\u013A\u0148aj\xFAce Va\u0161e podmienky!",list_of_payments:"T\xE1to sekcia bude obsahova\u0165 zoznam platieb.",select_payment_mode:"Vyberte sp\xF4sob platby",confirm_mark_as_sent:"Tento cenov\xFD odhad bude ozna\u010Den\xFD ako odoslan\xFD",confirm_send_payment:"Tento cenov\xFD odhad bude odoslan\xFD z\xE1kazn\xEDkovi prostredn\xEDctvom e-mailu",send_payment_successfully:"Platba \xFAspe\u0161ne odoslan\xE1",something_went_wrong:"Nie\u010Do neprebehlo v poriadku, odsk\xFA\u0161ajte pros\xEDm znova.",confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 t\xFAto Platbu | Nebudete m\xF4c\u0165 obnovi\u0165 tieto Platby",created_message:"Platba \xFAspe\u0161ne vytvoren\xE1",updated_message:"Platba \xFAspe\u0161ne upravena",deleted_message:"Platba \xFAspe\u0161ne odstr\xE1nen\xE1 | Platby \xFAspe\u0161ne odstr\xE1nen\xE9",invalid_amount_message:"Suma platby nie je spr\xE1vna"},$y={title:"V\xFDdaje",expenses_list:"Zoznam V\xFDdajov",select_a_customer:"Vyberte z\xE1kazn\xEDka",expense_title:"Nadpis",customer:"Z\xE1kazn\xEDk",currency:"Currency",contact:"Kontakt",category:"Kateg\xF3ria",from_date:"Od d\xE1tumu",to_date:"Do d\xE1tumu",expense_date:"D\xE1tum",description:"Popis",receipt:"Doklad o zaplaten\xED",amount:"Suma",action:"Akcia",not_selected:"Not selected",note:"Pozn\xE1mka",category_id:"ID kateg\xF3rie",date:"D\xE1tum",add_expense:"Prida\u0165 V\xFDdaj",add_new_expense:"Prida\u0165 Nov\xFD V\xFDdaj",save_expense:"Ulo\u017Ei\u0165 V\xFDdaj",update_expense:"Aktualizova\u0165 V\xFDdaj",download_receipt:"Stiahnu\u0165 doklad o zaplaten\xED",edit_expense:"Upravi\u0165 V\xFDdaj",new_expense:"Nov\xFD V\xFDdaj",expense:"V\xFDdaj | V\xFDdaje",no_expenses:"Zatia\u013E nem\xE1te \u017Eiadne v\xFDdaje!",list_of_expenses:"T\xE1to sekcia bude obsahova\u0165 zoznam v\xFDdajov.",confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 tento V\xFDdaj | Nebudete m\xF4c\u0165 obnovi\u0165 tieto V\xFDdaje",created_message:"V\xFDdaj \xFAspe\u0161ne vytvoren\xFD",updated_message:"V\xFDdaj \xFAspe\u0161ne aktualizovan\xFD",deleted_message:"V\xFDdaj \xFAspe\u0161ne odstr\xE1nen\xFD | V\xFDdaje \xFAspe\u0161ne odstr\xE1nen\xE9",categories:{categories_list:"Zoznam kateg\xF3ri\xED",title:"Nadpis",name:"N\xE1zov",description:"Popis",amount:"Suma",actions:"Akcie",add_category:"Prida\u0165 Kateg\xF3riu",new_category:"Nov\xE1 Kateg\xF3ria",category:"Kateg\xF3ria | Kateg\xF3rie",select_a_category:"Vyberte kateg\xF3riu"}},Uy={email:"E-mail",password:"Heslo",forgot_password:"Zabudol som heslo",or_signIn_with:"alebo sa prihl\xE1si\u0165 pomocou",login:"Prihl\xE1si\u0165 sa",register:"Registrova\u0165 sa",reset_password:"Obnovi\u0165 heslo",password_reset_successfully:"Heslo \xDAspe\u0161ne Obnoven\xE9",enter_email:"Zadajte e-mail",enter_password:"Zadajte heslo",retype_password:"Znova zadajte heslo"},Vy={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},Oy={title:"U\u017Eivatelia",users_list:"Zoznam U\u017E\xEDvate\u013Eov",name:"Meno",description:"Popis",added_on:"Pridan\xE9 D\u0148a",date_of_creation:"D\xE1tum Vytvorenia",action:"Akcia",add_user:"Prida\u0165 pou\u017E\xEDvate\u013Ea",save_user:"Ulo\u017Ei\u0165 pou\u017E\xEDvate\u013Ea",update_user:"Aktualizova\u0165 pou\u017E\xEDvate\u013Ea",user:"U\u017E\xEDvate\u013E | U\u017E\xEDvatelia",add_new_user:"Prida\u0165 Nov\xE9ho U\u017E\xEDvate\u013Ea",new_user:"Nov\xFD u\u017E\xEDvate\u013E",edit_user:"Upravi\u0165 U\u017E\xEDvate\u013Ea",no_users:"Zatia\u013E nebol pridan\xFD \u017Eiadny u\u017E\xEDvate\u013E!",list_of_users:"T\xE1to sekcia bude obsahova\u0165 zoznam u\u017E\xEDvate\u013Eov.",email:"E-mail",phone:"Telef\xF3n",password:"Heslo",user_attached_message:"Nie je mo\u017En\xE9 vymaza\u0165 akt\xEDvneho u\u017E\xEDvate\u013Ea",confirm_delete:"Nebude mo\u017En\xE9 obnovi\u0165 tohto pou\u017E\xEDvate\u013Ea | Nebude mo\u017En\xE9 obnovi\u0165 t\xFDchto pou\u017E\xEDvate\u013Eov",created_message:"U\u017E\xEDvate\u013E \xFAspe\u0161ne vytvoren\xFD",updated_message:"U\u017E\xEDvate\u013E \xFAspe\u0161ne aktualizovan\xE1",deleted_message:"U\u017E\xEDvate\u013E \xFAspe\u0161ne odstr\xE1nen\xFD | U\u017E\xEDvatelia \xFAspe\u0161ne odstr\xE1nen\xED",select_company_role:"Select Role for {company}",companies:"Companies"},Ly={title:"Reporty",from_date:"Od d\xE1tumu",to_date:"Do d\xE1tumu",status:"Stav",paid:"Zaplaten\xE1",unpaid:"Nezaplaten\xE1",download_pdf:"Stiahnu\u0165 PDF",view_pdf:"Zobrazi\u0165 PDF",update_report:"Aktualizova\u0165 Report",report:"Report | Reporty",profit_loss:{profit_loss:"Ziskt a Straty",to_date:"Do d\xE1tumu",from_date:"Od d\xE1tumu",date_range:"Vybra\u0165 rozsah d\xE1tumu"},sales:{sales:"Predaje",date_range:"Vybra\u0165 rozsah d\xE1tumu",to_date:"Do d\xE1tumu",from_date:"Od d\xE1tumu",report_type:"Typ Reportu"},taxes:{taxes:"Dane",to_date:"Do d\xE1tumu",from_date:"Od d\xE1tumu",date_range:"Vybra\u0165 Rozsah D\xE1tumu"},errors:{required:"Pole je povinn\xE9"},invoices:{invoice:"Fakt\xFAra",invoice_date:"D\xE1tum Vystavenia",due_date:"D\xE1tum Splatnosti",amount:"Suma",contact_name:"Kontaktn\xE1 Osoba",status:"Stav"},estimates:{estimate:"Cenov\xFD odhad",estimate_date:"D\xE1tum cenov\xE9ho odhadu",due_date:"D\xE1tum platnosti cenov\xE9ho odhadu",estimate_number:"\u010C\xEDslo cenov\xE9ho odhadu",ref_number:"Ref. \u010C\xEDslo",amount:"Suma",contact_name:"Kontaktn\xE1 Osoba",status:"Stav"},expenses:{expenses:"V\xFDdaje",category:"Kateg\xF3ria",date:"D\xE1tum",amount:"Suma",to_date:"Do d\xE1tumu",from_date:"Od d\xE1tumu",date_range:"Vybra\u0165 Rozsah D\xE1tumu"}},By={menu_title:{account_settings:"Nastavenia \xFA\u010Dtu",company_information:"Inform\xE1cie o Firme",customization:"Prisp\xF4sobenie",preferences:"Preferencie",notifications:"Upozornenia",tax_types:"Typy Dan\xED",expense_category:"Kateg\xF3rie cenov\xFDch odhadov",update_app:"Aktualizova\u0165 Aplik\xE1ciu",backup:"Z\xE1loha",file_disk:"S\xFAborov\xFD disk",custom_fields:"Vlastn\xE9 Polia",payment_modes:"Sp\xF4soby Platby",notes:"Pozn\xE1mky",exchange_rate:"Exchange Rate",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"Nastavenia",setting:"Nastavenia | Nastavenia",general:"V\u0161eobecn\xE9",language:"Jazyk",primary_currency:"Hlavn\xE1 Mena",timezone:"\u010Casov\xE9 P\xE1smo",date_format:"Form\xE1t D\xE1tumu",currencies:{title:"Meny",currency:"Mena | Meny",currencies_list:"Zoznam Mien",select_currency:"Vyberte Menu",name:"Meno",code:"K\xF3d",symbol:"Symbol",precision:"Presnos\u0165",thousand_separator:"Oddelova\u010D Tis\xEDciek",decimal_separator:"Oddelova\u010D Desatinn\xFDch Miest",position:"Poz\xEDcia",position_of_symbol:"Poz\xEDcia Symbolu",right:"Vpravo",left:"V\u013Eavo",action:"Akcia",add_currency:"Prida\u0165 nov\xFA Menu"},mail:{host:"Host E-mailu",port:"Port E-mailu",driver:"Driver E-mailu",secret:"Tajn\xFD K\u013E\xFA\u010D (secret)",mailgun_secret:"Tajn\xFD k\u013E\xFA\u010D Mailgun (secret)",mailgun_domain:"Dom\xE9na",mailgun_endpoint:"Endpoint Mailgun",ses_secret:"SES Tajn\xFD K\u013E\xFA\u010D (secret)",ses_key:"SES k\u013E\xFA\u010D (key)",password:"E-mailov\xE9 heslo",username:"E-mailov\xE9 meno (username)",mail_config:"Konfigur\xE1cia E-mailov",from_name:"Meno odosielate\u013Ea",from_mail:"E-mail odosielate\u013Ea",encryption:"E-mailov\xE1 Enkrypcia",mail_config_desc:"Ni\u017E\u0161ie n\xE1jdete konfigur\xE1ciu E-mailu pou\u017Eit\xE9ho k odosielaniu E-mailov z aplik\xE1cie Crater. M\xF4\u017Eete taktie\u017E nastavi\u0165 spojenie so slu\u017Ebami tret\xEDch str\xE1n ako napr\xEDklad Sendgrid, SES a pod."},pdf:{title:"Nastavenia PDF",footer_text:"Text v p\xE4ti\u010Dke",pdf_layout:"Rozlo\u017Eenie PDF"},company_info:{company_info:"Inform\xE1cie o spolo\u010Dnosti",company_name:"N\xE1zov spolo\u010Dnosti",company_logo:"Logo spolo\u010Dnosti",section_description:"Inform\xE1cie o Va\u0161ej firme, ktor\xE9 bud\xFA zobrazen\xE9 na fakt\xFArach, cenov\xFDch odhadoch a in\xFDch dokumentoch vytvoren\xFDch v\u010Faka Creater.",phone:"Telef\xF3n",country:"Krajina",state:"\u0160t\xE1t",city:"Mesto",address:"Adresa",zip:"PS\u010C",save:"Ulo\u017Ei\u0165",delete:"Delete",updated_message:"Inform\xE1cie o firme \xFAspe\u0161ne aktualizovan\xE9",delete_company:"Delete Company",delete_company_description:"Once you delete your company, you will lose all the data and files associated with it permanently.",are_you_absolutely_sure:"Are you absolutely sure?",delete_company_modal_desc:"This action cannot be undone. This will permanently delete {company} and all of its associated data.",delete_company_modal_label:"Please type {company} to confirm"},custom_fields:{title:"Vlastn\xE9 Polia",section_description:"Personalizujte si Fakt\xFAry, Cenov\xE9 Odhady a Potvrdenia o platbe pomocou vlastn\xFDch pol\xED. Uistite sa, \u017Ee ste ni\u017E\u0161ie vytvoren\xE9 polia pou\u017Eili v form\xE1te adresy na str\xE1nke nastaven\xED personaliz\xE1cie.",add_custom_field:"Prida\u0165 Vlastn\xE9 Pole",edit_custom_field:"Upravi\u0165 Vlastn\xE9 Pole",field_name:"Meno Po\u013Ea",label:"Zna\u010Dka",type:"Typ",name:"N\xE1zov",slug:"Slug",required:"Povinn\xE9",placeholder:"Umiestnenie",help_text:"Pomocn\xFD Text",default_value:"Predvolen\xE1 hodnota",prefix:"Predpona",starting_number:"Po\u010Diato\u010Dn\xE9 \u010C\xEDslo",model:"Model",help_text_description:"Nap\xED\u0161te popis aby u\u017E\xEDvatelia lep\u0161ie pochopili v\xFDznam tohto po\u013Ea.",suffix:"Pr\xEDpona",yes:"\xC1no",no:"Nie",order:"Objedna\u0165",custom_field_confirm_delete:"Nebudete m\xF4c\u0165 obnovit toto vlastn\xE9 pole",already_in_use:"Toto vlastne pole sa u\u017E pou\u017E\xEDva",deleted_message:"Vlastn\xE9 pole \xFAspe\u0161ne vymazan\xE9",options:"mo\u017Enosti",add_option:"Prida\u0165 Mo\u017Enosti",add_another_option:"Prida\u0165 \u010Fa\u013E\u0161iu mo\u017Enost\u0165",sort_in_alphabetical_order:"Zoradi\u0165 v abecednom porad\xED",add_options_in_bulk:"Prida\u0165 hromadn\xE9 mo\u017Enosti",use_predefined_options:"Pou\u017Ei\u0165 predvolen\xE9 mo\u017Enosti",select_custom_date:"Vybrat vlastn\xFD d\xE1tum",select_relative_date:"Vybra\u0165 Relat\xEDvny D\xE1tum",ticked_by_default:"Predvolene ozna\u010Den\xE9",updated_message:"Vlastn\xE9 pole \xFAspe\u0161ne aktualizovan\xE9",added_message:"Vlastne pole \xFAspe\u0161ne pridan\xE9",press_enter_to_add:"Press enter to add new option",model_in_use:"Cannot update model for fields which are already in use.",type_in_use:"Cannot update type for fields which are already in use."},customization:{customization:"Prisp\xF4sobenie",updated_message:"Inform\xE1cie o firme \xFAspe\u0161ne aktualizovan\xE9",save:"Ulo\u017Ei\u0165",insert_fields:"Insert Fields",learn_custom_format:"Learn how to use custom format",add_new_component:"Add New Component",component:"Component",Parameter:"Parameter",series:"Series",series_description:"To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.",series_param_label:"Series Value",delimiter:"Delimiter",delimiter_description:"Single character for specifying the boundary between 2 separate components. By default its set to -",delimiter_param_label:"Delimiter Value",date_format:"Date Format",date_format_description:"A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.",date_format_param_label:"Format",sequence:"Sequence",sequence_description:"Consecutive sequence of numbers across your company. You can specify the length on the given parameter.",sequence_param_label:"Sequence Length",customer_series:"Customer Series",customer_series_description:"To set a different prefix/postfix for each customer.",customer_sequence:"Customer Sequence",customer_sequence_description:"Consecutive sequence of numbers for each of your customer.",customer_sequence_param_label:"Sequence Length",random_sequence:"Random Sequence",random_sequence_description:"Random alphanumeric string. You can specify the length on the given parameter.",random_sequence_param_label:"Sequence Length",invoices:{title:"Fakt\xFAry",invoice_number_format:"Invoice Number Format",invoice_number_format_description:"Customize how your invoice number gets generated automatically when you create a new invoice.",preview_invoice_number:"Preview Invoice Number",due_date:"Due Date",due_date_description:"Specify how due date is automatically set when you create an invoice.",due_date_days:"Invoice Due after days",set_due_date_automatically:"Set Due Date Automatically",set_due_date_automatically_description:"Enable this if you wish to set due date automatically when you create a new invoice.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on invoice creation.",default_invoice_email_body:"Prednastaven\xE9 telo e-mailu fakt\xFAry",company_address_format:"Form\xE1t firemnej adresy",shipping_address_format:"Form\xE1t doru\u010Dovacej adresy",billing_address_format:"Form\xE1t faktura\u010Dnej adresy",invoice_email_attachment:"Send invoices as attachments",invoice_email_attachment_setting_description:"Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.",invoice_settings_updated:"Invoice Settings updated successfully",retrospective_edits:"Retrospective Edits",allow:"Allow",disable_on_invoice_partial_paid:"Disable after partial payment is recorded",disable_on_invoice_paid:"Disable after full payment is recorded",disable_on_invoice_sent:"Disable after invoice is sent",retrospective_edits_description:" Based on your country's laws or your preference, you can restrict users from editing finalised invoices."},estimates:{title:"Cenov\xFD odhad",estimate_number_format:"Estimate Number Format",estimate_number_format_description:"Customize how your estimate number gets generated automatically when you create a new estimate.",preview_estimate_number:"Preview Estimate Number",expiry_date:"Expiry Date",expiry_date_description:"Specify how expiry date is automatically set when you create an estimate.",expiry_date_days:"Estimate Expires after days",set_expiry_date_automatically:"Set Expiry Date Automatically",set_expiry_date_automatically_description:"Enable this if you wish to set expiry date automatically when you create a new estimate.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on estimate creation.",default_estimate_email_body:"Prednastaven\xE9 telo e-mailu cenov\xE9ho dohadu",company_address_format:"Form\xE1t firemnej adresy",shipping_address_format:"Form\xE1t faktura\u010Dnej adresy",billing_address_format:"Form\xE1t faktura\u010Dnej adresy",estimate_email_attachment:"Send estimates as attachments",estimate_email_attachment_setting_description:"Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.",estimate_settings_updated:"Estimate Settings updated successfully",convert_estimate_options:"Estimate Convert Action",convert_estimate_description:"Specify what happens to the estimate after it gets converted to an invoice.",no_action:"No action",delete_estimate:"Delete estimate",mark_estimate_as_accepted:"Mark estimate as accepted"},payments:{title:"Platby",payment_number_format:"Payment Number Format",payment_number_format_description:"Customize how your payment number gets generated automatically when you create a new payment.",preview_payment_number:"Preview Payment Number",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on payment creation.",default_payment_email_body:"Prednastaven\xE9 telo e-mailu platby",company_address_format:"Form\xE1t firemnej adresy",from_customer_address_format:"Z form\xE1tu adresy z\xE1kazn\xEDka",payment_email_attachment:"Send payments as attachments",payment_email_attachment_setting_description:"Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.",payment_settings_updated:"Payment Settings updated successfully"},items:{title:"Polo\u017Eky",units:"Jednotky",add_item_unit:"Prida\u0165 Jednotku",edit_item_unit:"Upravi\u0165 Jednotku",unit_name:"N\xE1zov Jednotky",item_unit_added:"Jednotka \xFAspe\u0161ne pridan\xE1",item_unit_updated:"Jednotka \xFAspe\u0161ne aktualizovan\xE1",item_unit_confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 t\xFAto Jednotku",already_in_use:"Jednotk\xE1 sa pr\xE1ve pou\u017E\xEDva",deleted_message:"Jednotka \xFAspe\u0161ne odstr\xE1nena"},notes:{title:"Pozn\xE1mky",description:"U\u0161etrite \u010Das vytv\xE1ran\xEDm pozn\xE1mok a ich op\xE4tovn\xFDm pou\u017Eit\xEDm vo svojich fakt\xFArach, odhadoch a platb\xE1ch.",notes:"Pozn\xE1mky",type:"Typ",add_note:"Prida\u0165 pozn\xE1mku",add_new_note:"Prida\u0165 Nov\xFA Pozn\xE1mku",name:"N\xE1zov",edit_note:"Upravi\u0165 pozn\xE1mku",note_added:"Pozn\xE1mka \xFAspe\u0161ne pridan\xE1",note_updated:"Pozn\xE1mka \xFAspe\u0161ne aktualizovan\xE1",note_confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 t\xFAto Pozn\xE1mku",already_in_use:"Pozn\xE1mka sa pr\xE1ve pou\u017E\xEDva",deleted_message:"Pozn\xE1mka \xFAspe\u0161ne odstr\xE1nena"}},account_settings:{profile_picture:"Profilov\xE1 Fotka",name:"Meno",email:"Email",password:"Heslo",confirm_password:"Potvrdi\u0165 heslo",account_settings:"Nastavenie \xFA\u010Dtu",save:"Ulo\u017Ei\u0165",section_description:"Svoje meno, e-mail a heslo m\xF4\u017Eete aktualizova\u0165 pomocou formul\xE1ra ni\u017E\u0161ie.",updated_message:"Nastavenia \xFA\u010Dtu boli \xFAspe\u0161ne aktualizovan\xE9"},user_profile:{name:"Meno",email:"Email",password:"Heslo",confirm_password:"Potvrdi\u0165 heslo"},notification:{title:"Upozornenia",email:"Odosla\u0165 upozornenie",description:"Ktor\xE9 e-mailov\xE9 upozornenia chcete dost\xE1va\u0165 ke\u010F sa nie\u010Do zmen\xED?",invoice_viewed:"Fakt\xFAra zobrazen\xE1",invoice_viewed_desc:"Ke\u010F si v\xE1\u0161 z\xE1kazn\xEDk prezer\xE1 fakt\xFAru odoslan\xFA cez Hlavn\xFD Panel.",estimate_viewed:"Cenov\xFD odhad zobrazen\xFD",estimate_viewed_desc:"Ke\u010F si v\xE1\u0161 z\xE1kazn\xEDk prezer\xE1 cenov\xFD odhad odoslan\xFD cez Hlavn\xFD Panel.",save:"Ulo\u017Ei\u0165",email_save_message:"E-mail bol \xFAspe\u0161ne ulo\u017Een\xFD",please_enter_email:"Zadajte e-mail"},roles:{title:"Roles",description:"Manage the roles & permissions of this company",save:"Save",add_new_role:"Add New Role",role_name:"Role Name",added_on:"Added on",add_role:"Add Role",edit_role:"Edit Role",name:"Name",permission:"Permission | Permissions",select_all:"Select All",none:"None",confirm_delete:"You will not be able to recover this Role",created_message:"Role created successfully",updated_message:"Role updated successfully",deleted_message:"Role deleted successfully",already_in_use:"Role is already in use"},exchange_rate:{exchange_rate:"Exchange Rate",title:"Fix Currency Exchange issues",description:"Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.",drivers:"Drivers",new_driver:"Add New Provider",edit_driver:"Edit Provider",select_driver:"Select Driver",update:"select exchange rate ",providers_description:"Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.",key:"API Key",name:"Name",driver:"Driver",is_default:"IS DEFAULT",currency:"Currencies",exchange_rate_confirm_delete:"You will not be able to recover this driver",created_message:"Provider Created successfully",updated_message:"Provider Updated Successfully",deleted_message:"Provider Deleted Successfully",error:" You cannot Delete Active Driver",default_currency_error:"This currency is already used in one of the Active Provider",exchange_help_text:"Enter exchange rate to convert from {currency} to {baseCurrency}",currency_freak:"Currency Freak",currency_layer:"Currency Layer",open_exchange_rate:"Open Exchange Rate",currency_converter:"Currency Converter",server:"Server",url:"URL",active:"Active",currency_help_text:"This provider will only be used on above selected currencies",currency_in_used:"The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again."},tax_types:{title:"Typ dan\xED",add_tax:"Prida\u0165 da\u0148",edit_tax:"Upravi\u0165 Da\u0148",description:"M\xF4\u017Eete prida\u0165 alebo odobra\u0165 dane. Crater podporuje dane jednotliv\xFDch polo\u017Eiek aj na fakt\xFAre.",add_new_tax:"Prida\u0165 Nov\xFA Da\u0148",tax_settings:"Nastavenia dan\xED",tax_per_item:"Da\u0148 pre ka\u017Ed\xFA Polo\u017Eku zvl\xE1\u0161\u0165",tax_name:"N\xE1zov Dane",compound_tax:"Zlo\u017Een\xE1 da\u0148",percent:"Percento",action:"Akcia",tax_setting_description:"T\xFAto mo\u017Enos\u0165 povo\u013Ete, ak chcete prida\u0165 dane k jednotliv\xFDm polo\u017Ek\xE1m fakt\xFAr. \u0160tandardne sa dane pripo\u010D\xEDtavaj\xFA priamo k fakt\xFAre.",created_message:"Da\u0148 \xFAspe\u0161ne vytvoren\xE1",updated_message:"Da\u0148 \xFAspe\u0161ne aktualizovan\xE1",deleted_message:"Da\u0148 \xFAspe\u0161ne odstr\xE1nen\xE1",confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 da\u0148",already_in_use:"Da\u0148 u\u017E sa u\u017E po\u017E\xEDva"},payment_modes:{title:"Payment Modes",description:"Modes of transaction for payments",add_payment_mode:"Add Payment Mode",edit_payment_mode:"Edit Payment Mode",mode_name:"Mode Name",payment_mode_added:"Payment Mode Added",payment_mode_updated:"Payment Mode Updated",payment_mode_confirm_delete:"You will not be able to recover this Payment Mode",already_in_use:"Payment Mode is already in use",deleted_message:"Payment Mode deleted successfully"},expense_category:{title:"Kateg\xF3rie v\xFDdajov",action:"Akcia",description:"Na pridanie polo\u017Eiek v\xFDdavkov s\xFA povinn\xE9 kateg\xF3rie. Tieto kateg\xF3rie m\xF4\u017Eete prida\u0165 alebo odstr\xE1ni\u0165 pod\u013Ea svojich preferenci\xED.",add_new_category:"Prida\u0165 Nov\xFA Kateg\xF3riu",add_category:"Prida\u0165 Kateg\xF3riu",edit_category:"Upravi\u0165 Kateg\xF3riu",category_name:"N\xE1zov Kateg\xF3rie",category_description:"Popis",created_message:"Kateg\xF3ria cenov\xE9ho odhadu \xFAspe\u0161ne vytvoren\xE1",deleted_message:"Kateg\xF3ria cenov\xE9ho odhadu \xFAspe\u0161ne odstr\xE1nena",updated_message:"Kateg\xF3ria cenov\xE9ho odhadu \xFAspe\u0161ne aktualizovan\xE1",confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 t\xFAto kateg\xF3riu cenov\xFDch odhadov",already_in_use:"Kateg\xF3ria sa u\u017E pou\u017E\xEDva"},preferences:{currency:"Mena",default_language:"Predvolen\xFD Jazyk",time_zone:"\u010Casov\xE9 P\xE1smo",fiscal_year:"Fi\u0161k\xE1lny Rok",date_format:"Form\xE1t D\xE1tumu",discount_setting:"Nastavenia Z\u013Eavy",discount_per_item:"Z\u013Eava pre ka\u017Ed\xFA Polo\u017Eku zvl\xE1\u0161\u0165 ",discount_setting_description:"T\xFAto mo\u017Enos\u0165 povo\u013Ete, ak chcete prida\u0165 z\u013Eavu k jednotliv\xFDm polo\u017Ek\xE1m fakt\xFAry. \u0160tandardne sa z\u013Eava pripo\u010D\xEDtava priamo k fakt\xFAre.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"Ulo\u017Ei\u0165",preference:"Preferencie | Preferencie",general_settings:"Syst\xE9movo predvolen\xE9 preferencie.",updated_message:"Preferencie \xFAspe\u0161ne aktualizovan\xE9",select_language:"Vyberte Jazyk",select_time_zone:"Vyberte \u010Casov\xE9 P\xE1smo",select_date_format:"Vybra\u0165 Form\xE1t D\xE1tumu",select_financial_year:"Vyberte Fi\u0161k\xE1lny Rok",recurring_invoice_status:"Recurring Invoice Status",create_status:"Create Status",active:"Active",on_hold:"On Hold",update_status:"Update Status",completed:"Completed",company_currency_unchangeable:"Company currency cannot be changed"},update_app:{title:"Aktualizova\u0165 Aplik\xE1ciu",description:"Aplik\xE1ciu m\xF4\u017Ete jednoducho aktualizova\u0165 tla\u010Ditkom ni\u017E\u0161ie",check_update:"Skontrolova\u0165 Aktualiz\xE1cie",avail_update:"Nov\xE1 aktualiz\xE1cia je k dispoz\xEDcii",next_version:"\u010Eal\u0161ia Verzia",requirements:"Po\u017Eiadavky",update:"Aktualizova\u0165",update_progress:"Aktualiz\xE1cia prebieha...",progress_text:"Bude to trva\u0165 len p\xE1r min\xFAt. Pred dokon\u010Den\xEDm aktualiz\xE1cie neobnovujte obrazovku ani nezatv\xE1rajte okno.",update_success:"App bola aktualizovan\xE1! Po\u010Dkajte, k\xFDm sa okno v\xE1\u0161ho prehliada\u010Da na\u010D\xEDta automaticky.",latest_message:"Nie je k dispoz\xEDcii \u017Eiadna aktualiz\xE1cia! Pou\u017E\xEDvate najnov\u0161iu verziu.",current_version:"Aktu\xE1lna verzia",download_zip_file:"Stiahnu\u0165 ZIP s\xFAbor",unzipping_package:"Rozbali\u0165 bal\xEDk",copying_files:"Kop\xEDrovanie s\xFAborov",deleting_files:"Deleting Unused files",running_migrations:"Prebieha Migr\xE1cia",finishing_update:"Ukon\u010Dovanie Aktualiz\xE1cie",update_failed:"Aktualiz\xE1cia zlyhala!",update_failed_text:"Aktualiz\xE1cia zlyhala na : {step} kroku",update_warning:"All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating."},backup:{title:"Z\xE1loha | Z\xE1lohy",description:"Z\xE1loha je vo form\xE1te zip ktor\xFD obsahuje v\u0161etky s\xFAbory v adres\xE1roch vr\xE1tane v\xFDpisu z datab\xE1zy.",new_backup:"Vytvori\u0165 z\xE1lohu",create_backup:"Vytvori\u0165 z\xE1lohu",select_backup_type:"Vybra\u0165 typ z\xE1lohy",backup_confirm_delete:"Nebude mo\u017En\xE9 obnovi\u0165 t\xFAto z\xE1lohu",path:"cesta",new_disk:"Nov\xFD Disk",created_at:"vytvoren\xE9",size:"velkost",dropbox:"dropbox",local:"local",healthy:"v poriadku",amount_of_backups:"po\u010Det z\xE1loh",newest_backups:"najnov\u0161ie z\xE1lohy",used_storage:"vyu\u017Eit\xE9 miesto na disku",select_disk:"Vybra\u0165 disk",action:"Akcia",deleted_message:"Z\xE1loha \xFAspe\u0161ne vymazan\xE1",created_message:"Z\xE1loha \xFAspe\u0161ne vytvoren\xE1",invalid_disk_credentials:"Nespr\xE1vne prihlasovacie \xFAdaje na disk"},disk:{title:"File Disk | File Disks",description:"V predvolenom nastaven\xED pou\u017Eije Crater v\xE1\u0161 lok\xE1lny disk na ukladanie z\xE1loh, avatarov a in\xFDch obrazov\xFDch s\xFAborov. M\xF4\u017Eete nakonfigurova\u0165 viac ako jeden disku ako napr. DigitalOcean, S3 a Dropbox pod\u013Ea va\u0161ich preferenci\xED.",created_at:"vytvoren\xE9",dropbox:"Dropbox",name:"N\xE1zov",driver:"Driver",disk_type:"Typ",disk_name:"N\xE1zov Disku",new_disk:"Prida\u0165 Nov\xFD Disk",filesystem_driver:"Driver syst\xE9mov\xFDch s\xFAborov",local_driver:"lok\xE1lny Driver",local_root:"Lok\xE1lka Cesta (root)",public_driver:"Verejn\xFD Driver",public_root:"Verejn\xE1 Cesta (root)",public_url:"Verejn\xE1 URL",public_visibility:"Vidite\u013En\xE9 pre Verejnos\u0165",media_driver:"Driver m\xE9di\xED",media_root:"Root m\xE9di\xED",aws_driver:"AWS Driver",aws_key:"AWS K\u013E\xFA\u010D (key)",aws_secret:"AWS Tajn\xFD K\u013E\xFA\u010D (secret)",aws_region:"AWS Regi\xF3n",aws_bucket:"AWP Bucket",aws_root:"AWP Cesta (root)",do_spaces_type:"Do Spaces type",do_spaces_key:"Do Spaces key",do_spaces_secret:"Do Spaces Secret",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Dropbox Type",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Key",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Predvolen\xFD Driver",is_default:"Je predvolen\xFD",set_default_disk:"Nastavi\u0165 predvolen\xFD disk",set_default_disk_confirm:"This disk will be set as default and all the new PDFs will be saved on this disk",success_set_default_disk:"Disk \xFAspe\u0161ne nastaven\xFD ako predvolen\xFD",save_pdf_to_disk:"Ulo\u017E PDFs na Disk",disk_setting_description:"T\xFAto mo\u017Enos\u0165 povo\u013Ete ak si chcete automaticky ulo\u017Ei\u0165 k\xF3piu ka\u017Ed\xE9ho s\xFAboru PDF s fakturami, odhadmi a pr\xEDjmami na predvolen\xFD disk. Pou\u017Eit\xEDm tejto mo\u017Enosti skr\xE1tite dobu na\u010D\xEDtania pri prezeran\xED s\xFAborov PDF.",select_disk:"Vybra\u0165 Disk",disk_settings:"Nastavenie Disku",confirm_delete:"Va\u0161e existuj\xFAce s\xFAbory a prie\u010Dinky na zadanom disku nebud\xFA ovplyvnen\xE9 ale konfigur\xE1cia v\xE1\u0161ho disku bude odstr\xE1nen\xE1 z Crateru",action:"Akcia",edit_file_disk:"Upravit Disk",success_create:"Disk \xFAspe\u0161ne pridan\xFD",success_update:"Disk \xFAspe\u0161ne aktualizovan\xFD",error:"Pridanie disku zlyhalo",deleted_message:"Disk bol \xFAspe\u0161ne odstr\xE1nen\xFD",disk_variables_save_successfully:"Disk bol \xFAspe\u0161ne pridan\xFD",disk_variables_save_error:"Konfigur\xE1cia disku zlyhala.",invalid_disk_credentials:"Neplatn\xE9 prihlasovacie \xFAdaje pre Disk"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},qy={account_info:"Inform\xE1cie o \xFA\u010Dte",account_info_desc:"Ni\u017E\u0161ie uveden\xE9 podrobnosti sa pou\u017Eij\xFA na vytvorenie hlavn\xE9ho \xFA\u010Dtu spr\xE1vcu. Tie m\xF4\u017Eete kedyko\u013Evek zmeni\u0165 po prihl\xE1sen\xED.",name:"Meno",email:"Email",password:"Heslo",confirm_password:"Potvrdi\u0165 heslo",save_cont:"Ulo\u017Ei\u0165 a pokra\u010Dova\u0165",company_info:"Firemn\xE9 \xFAdaje",company_info_desc:"Tieto inform\xE1cie sa zobrazia na fakt\xFArach. Nesk\xF4r ich v\u0161ak m\xF4\u017Eete upravi\u0165.",company_name:"N\xE1zov firmy",company_logo:"Firemn\xE9 logo",logo_preview:"N\xE1h\u013Ead loga",preferences:"Preferencie",preferences_desc:"Predvolen\xE9 nastavenie syst\xE9mu.",currency_set_alert:"The company's currency cannot be changed later.",country:"Krajina",state:"\u0160t\xE1t",city:"Mesto",address:"Adresa",street:"Ulica1 | Ulica2",phone:"Telef\xF3n",zip_code:"PS\u010C",go_back:"Nasp\xE4\u0165",currency:"Mena",language:"Jazyk",time_zone:"\u010Casov\xE9 p\xE1smo",fiscal_year:"Fi\u0161k\xE1lny rok",date_format:"Form\xE1t d\xE1tumu",from_address:"Z adresy",username:"Prihlasovacie meno",next:"\u010Ea\u013E\u0161\xED",continue:"Pokra\u010Dova\u0165",skip:"Vynecha\u0165",database:{database:"URL Adresa Aplik\xE1cie a Datab\xE1za",connection:"Pripojenie k datab\xE1ze",host:"Datab\xE1za - Host",port:"Datab\xE1za - Port",password:"Heslo do datab\xE1zy",app_url:"URL Adresa Aplik\xE1cie",app_domain:"Dom\xE9na aplik\xE1cie",username:"Prihlasovacie meno do datab\xE1zy",db_name:"N\xE1zov datab\xE1zy",db_path:"Datab\xE1z\xE1 - cesta (path)",desc:"Vytvorte datab\xE1zu na svojom serveri a pomocou nasleduj\xFAceho formul\xE1ra nastavte poverenia."},permissions:{permissions:"Opr\xE1vnenia",permission_confirm_title:"Ste si ist\xFD \u017Ee chcete pokra\u010Dova\u0165?",permission_confirm_desc:"Nedostato\u010Dn\xE9 opr\xE1vnenia na prie\u010Dinky in\u0161tal\xE1cie",permission_desc:"Ni\u017E\u0161ie je uveden\xFD zoznam povolen\xED prie\u010Dinkov ktor\xE9 s\xFA potrebn\xE9 na fungovanie aplik\xE1cie. Ak kontrola povolen\xED zlyh\xE1 nezabudnite aktualizova\u0165 povolenia prie\u010Dinka."},verify_domain:{title:"Domain Verification",desc:"Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.",app_domain:"App Domain",verify_now:"Verify Now",success:"Domain Verify Successfully.",failed:"Domain verification failed. Please enter valid domain name.",verify_and_continue:"Verify And Continue"},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail Driver",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"Mail Password",username:"Mail Username",mail_config:"Mail Configuration",from_name:"From Mail Name",from_mail:"From Mail Address",encryption:"Mail Encryption",mail_config_desc:"Ni\u017E\u0161ie je uveden\xFD formul\xE1r na konfigur\xE1ciu ovl\xE1da\u010Da e-mailu na odosielanie e-mailov z aplik\xE1cie. M\xF4\u017Eete tie\u017E nakonfigurova\u0165 aj extern\xFDch poskytovate\u013Eov napr\xEDklad Sendgrid apod."},req:{system_req:"Syst\xE9mov\xE9 po\u017Eiadavky",php_req_version:"Php (verzia {version} po\u017Eadovan\xE1)",check_req:"Skontrolujte po\u017Eiadavky",system_req_desc:"Crater m\xE1 nieko\u013Eko po\u017Eiadaviek na server. Skontrolujte \u010Di m\xE1 v\xE1\u0161 server po\u017Eadovan\xFA verziu php a v\u0161etky moduly uveden\xE9 ni\u017E\u0161ie."},errors:{migrate_failed:"Migr\xE1ci zlyhala",database_variables_save_error:"Nie je mo\u017En\xE9 zap\xEDsa\u0165 konfigur\xE1ciu do .env file. Skontrolujte opr\xE1vnenia",mail_variables_save_error:"Konfigur\xE1cia emailu zlyhala.",connection_failed:"Pripojenie k datab\xE1ze zlyhalo",database_should_be_empty:"Datab\xE1za mus\xED by\u0165 pr\xE1zdna"},success:{mail_variables_save_successfully:"Email \xFAspe\u0161ne nakonfigurovan\xFD",database_variables_save_successfully:"Datab\xE1za \xFAspe\u0161ne nakonfigurovan\xE1."}},Ky={invalid_phone:"Zl\xE9 telef\xF3nn\xE9 \u010D\xEDslo",invalid_url:"Nespr\xE1vna URL adresa (ex: http://www.crater.com)",invalid_domain_url:"Nespr\xE1vna URL (ex: crater.com)",required:"Povinn\xE9 pole",email_incorrect:"Zl\xFD email.",email_already_taken:"Email sa uz pou\u017E\xEDva.",email_does_not_exist:"Pou\u017E\xEDvate\u013E s t\xFDmto emailom neexistuje.",item_unit_already_taken:"N\xE1zov tejto polo\u017Eky sa u\u017E pou\u017E\xEDva",payment_mode_already_taken:"N\xE1zov tohto typu platby sa u\u017E pou\u017E\xEDva",send_reset_link:"Odosla\u0165 resetovac\xED link",not_yet:"Email e\u0161te nepri\u0161iel? Znova odosla\u0165",password_min_length:"Heslo mus\xED obsahova\u0165 {count} znaky",name_min_length:"Meno mus\xED ma\u0165 minim\xE1lne {count} p\xEDsmen.",prefix_min_length:"Prefix must have at least {count} letters.",enter_valid_tax_rate:"Zadajte platn\xFA sadzbu dane",numbers_only:"Iba \u010D\xEDsla.",characters_only:"Iba znaky.",password_incorrect:"Hesl\xE1 musia by\u0165 rovnak\xE9",password_length:"Heslo musi obsahova\u0165 minim\xE1lne {count} znakov.",qty_must_greater_than_zero:"Mno\u017Estvo mus\xED by\u0165 viac ako 0.",price_greater_than_zero:"Cena mus\xED by\u0165 viac ako 0.",payment_greater_than_zero:"Platba mus\xED by\u0165 viac ako 0.",payment_greater_than_due_amount:"Zadan\xE1 platba je vy\u0161\u0161ia ako suma na fakt\xFAre.",quantity_maxlength:"Mno\u017Estvo by nemalo obsahova\u0165 ako 20 \u010D\xEDslic.",price_maxlength:"Cena by nemala obsahova\u0165 viac ako 20 \u010D\xEDslic.",price_minvalue:"Suma musi by\u0165 vy\u0161\u0161ia ako 0.",amount_maxlength:"\u010Ciastka by nemala obsahova\u0165 viac ako 20 \u010D\xEDslic.",amount_minvalue:"\u010Ciastka mus\xED by\u0165 va\u010D\u0161ia ako 0.",discount_maxlength:"Discount should not be greater than max discount",description_maxlength:"Popis nesmie obsahova\u0165 viac ako 255 znaokv.",subject_maxlength:"Predmet nesmie obsahova\u0165 viac ako 100 znakov.",message_maxlength:"Spr\xE1va nesmie obsahova\u0165 viac ako 255 znakov.",maximum_options_error:"Maxim\xE1lny po\u010Det z {max} mo\u017Enosti vybran\xFD. Najprv odstr\xE1nte aspo\u0148 jednu mo\u017Enost a n\xE1sledne vyberte in\xFA.",notes_maxlength:"Pozn\xE1mky nesm\xFA obsahova\u0165 viac ako 100 znakov.",address_maxlength:"Adresa nesmie obsahova\u0165 viac ako 255 znakov",ref_number_maxlength:"Referen\u010Dn\xE9 \u010Dislo nesmie obsahova\u0165 viac ako 255 znakov",prefix_maxlength:"Predpona nesmie ma\u0165 viac ako 5 znakov.",something_went_wrong:"Nie\u010Do neprebehlo v poriadku, odsk\xFA\u0161ajte pros\xEDm znova.",number_length_minvalue:"Number length should be greater than 0",at_least_one_ability:"Please select atleast one Permission.",valid_driver_key:"Please enter a valid {driver} key.",valid_exchange_rate:"Please enter a valid exchange rate.",company_name_not_same:"Company name must match with given name."},Wy={starter_plan:"This feature is available on Starter plan and onwards!",invalid_provider_key:"Please Enter Valid Provider API Key.",estimate_number_used:"The estimate number has already been taken.",invoice_number_used:"The invoice number has already been taken.",payment_attached:"This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.",payment_number_used:"The payment number has already been taken.",name_already_taken:"The name has already been taken.",receipt_does_not_exist:"Receipt does not exist.",customer_cannot_be_changed_after_payment_is_added:"Customer cannot be change after payment is added",invalid_credentials:"Invalid Credentials.",not_allowed:"Not Allowed",login_invalid_credentials:"These credentials do not match our records.",enter_valid_cron_format:"Please enter a valid cron format",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},Zy="Cenov\xFD odhad",Hy="\u010C\xEDslo cenov\xE9ho odhadu",Yy="D\xE1tum cenov\xE9ho odhadu",Gy="Platnos\u0165 cenov\xE9ho odhadu",Jy="Fakt\xFAra",Qy="\u010C\xEDslo fakt\xFAry",Xy="D\xE1tum vystavenia",eb="D\xE1tum splatnosti",tb="Pozn\xE1mky",ab="Polo\u017Eky",ib="Po\u010Det",nb="Cena",sb="Z\u013Eava",ob="Celkom",rb="Medzis\xFA\u010Det",db="S\xFA\u010Det",lb="Payment",cb="Doklad o zaplaten\xED",_b="D\xE1tum platby",ub="\u010C\xEDslo platby",mb="Sp\xF4sob platby",pb="Prijat\xE1 suma",gb="Report v\xFDdajov",fb="Celkov\xE9 v\xFDdaje",vb="Zisky a straty",hb="Sales Customer Report",yb="Sales Item Report",bb="Tax Summary Report",kb="Pr\xEDjem",wb="\u010Cist\xFD pr\xEDjem",xb="Report predajov: Pod\u013Ea z\xE1kazn\xEDkov",zb="Celkov\xE9 predaje",Sb="Report predajov: Pod\u013Ea polo\u017Eky",Pb="Report dan\xED",jb="Celkov\xE9 dane",Ab="Typy dan\xED",Db="V\xFDdaje",Cb="Fakturova\u0165,",Eb="Doru\u010Di\u0165,",Ib="Prijat\xE9 od:",Nb="Tax";var Tb={navigation:Sy,general:Py,dashboard:jy,tax_types:Ay,global_search:Dy,company_switcher:Cy,dateRange:Ey,customers:Iy,items:Ny,estimates:Ty,invoices:Ry,recurring_invoices:My,payments:Fy,expenses:$y,login:Uy,modules:Vy,users:Oy,reports:Ly,settings:By,wizard:qy,validation:Ky,errors:Wy,pdf_estimate_label:Zy,pdf_estimate_number:Hy,pdf_estimate_date:Yy,pdf_estimate_expire_date:Gy,pdf_invoice_label:Jy,pdf_invoice_number:Qy,pdf_invoice_date:Xy,pdf_invoice_due_date:eb,pdf_notes:tb,pdf_items_label:ab,pdf_quantity_label:ib,pdf_price_label:nb,pdf_discount_label:sb,pdf_amount_label:ob,pdf_subtotal:rb,pdf_total:db,pdf_payment_label:lb,pdf_payment_receipt_label:cb,pdf_payment_date:_b,pdf_payment_number:ub,pdf_payment_mode:mb,pdf_payment_amount_received_label:pb,pdf_expense_report_label:gb,pdf_total_expenses_label:fb,pdf_profit_loss_label:vb,pdf_sales_customers_label:hb,pdf_sales_items_label:yb,pdf_tax_summery_label:bb,pdf_income_label:kb,pdf_net_profit_label:wb,pdf_customer_sales_report:xb,pdf_total_sales_label:zb,pdf_item_sales_label:Sb,pdf_tax_report_label:Pb,pdf_total_tax_label:jb,pdf_tax_types_label:Ab,pdf_expenses_label:Db,pdf_bill_to:Cb,pdf_ship_to:Eb,pdf_received_from:Ib,pdf_tax_label:Nb};const Rb={dashboard:"B\u1EA3ng \u0111i\u1EC1u khi\u1EC3n",customers:"Kh\xE1ch h\xE0ng",items:"M\u1EB7t h\xE0ng",invoices:"H\xF3a \u0111\u01A1n","recurring-invoices":"H\xF3a \u0111\u01A1n \u0111\u1ECBnh k\u1EF3",expenses:"Chi ph\xED",estimates:"\u01AF\u1EDBc t\xEDnh",payments:"Thanh to\xE1n",reports:"B\xE1o c\xE1o",settings:"C\xE0i \u0111\u1EB7t",logout:"\u0110\u0103ng xu\u1EA5t",users:"Ng\u01B0\u1EDDi d\xF9ng",modules:"Modules"},Mb={add_company:"Th\xEAm c\xF4ng ty",view_pdf:"Xem PDF",copy_pdf_url:"Sao ch\xE9p Url PDF",download_pdf:"t\u1EA3i PDF",save:"Ti\u1EBFt ki\u1EC7m",create:"T\u1EA1o n\xEAn",cancel:"Hu\u1EF7 b\u1ECF",update:"C\u1EADp nh\u1EADt",deselect:"B\u1ECF ch\u1ECDn",download:"T\u1EA3i xu\u1ED1ng",from_date:"T\u1EEB ng\xE0y",to_date:"\u0110\u1EBFn nay",from:"T\u1EEB",to:"\u0110\u1EBFn",ok:"OK",yes:"\u0110\xFAng",no:"Kh\xF4ng",sort_by:"S\u1EAFp x\u1EBFp theo",ascending:"T\u0103ng d\u1EA7n",descending:"Gi\u1EA3m d\u1EA7n",subject:"M\xF4n h\u1ECDc",body:"Th\xE2n h\xECnh",message:"Th\xF4ng \u0111i\u1EC7p",send:"G\u1EEDi",preview:"Xem tr\u01B0\u1EDBc",go_back:"Quay l\u1EA1i",back_to_login:"Quay l\u1EA1i \u0111\u0103ng nh\u1EADp?",home:"Trang Ch\u1EE7",filter:"B\u1ED9 l\u1ECDc",delete:"X\xF3a b\u1ECF",edit:"Bi\xEAn t\u1EADp",view:"L\u01B0\u1EE3t xem",add_new_item:"Th\xEAm m\u1EE5c m\u1EDBi",clear_all:"L\xE0m s\u1EA1ch t\u1EA5t c\u1EA3",showing:"Hi\u1EC3n th\u1ECB",of:"c\u1EE7a",actions:"H\xE0nh \u0111\u1ED9ng",subtotal:"TI\xCAU \u0110\u1EC0",discount:"GI\u1EA2M GI\xC1",fixed:"\u0111\xE3 s\u1EEDa",percentage:"Ph\u1EA7n tr\u0103m",tax:"THU\u1EBE",total_amount:"T\xD4\u0309NG C\xD4\u0323NG",bill_to:"Hoa \u0111\u01A1n \u0111\xEA\u0309",ship_to:"T\xE0u",due:"\u0110\u1EBFn h\u1EA1n",draft:"B\u1EA3n nh\xE1p",sent:"G\u1EDFi",all:"T\u1EA5t c\u1EA3",select_all:"Ch\u1ECDn t\u1EA5t c\u1EA3",select_template:"Ch\u1ECDn Template",choose_file:"B\u1EA5m v\xE0o \u0111\xE2y \u0111\u1EC3 ch\u1ECDn m\u1ED9t t\u1EADp tin",choose_template:"Ch\u1ECDn m\u1ED9t m\u1EABu",choose:"Ch\u1ECDn",remove:"T\u1EA9y",select_a_status:"Ch\u1ECDn m\u1ED9t tr\u1EA1ng th\xE1i",select_a_tax:"Ch\u1ECDn thu\u1EBF",search:"T\xECm ki\u1EBFm",are_you_sure:"B\u1EA1n c\xF3 ch\u1EAFc kh\xF4ng?",list_is_empty:"Danh s\xE1ch tr\u1ED1ng.",no_tax_found:"Kh\xF4ng t\xECm th\u1EA5y thu\u1EBF!",four_zero_four:"404",you_got_lost:"R\u1EA5t ti\u1EBFc! B\u1EA1n b\u1ECB l\u1EA1c r\u1ED3i!",go_home:"V\u1EC1 nh\xE0",test_mail_conf:"Ki\u1EC3m tra c\u1EA5u h\xECnh th\u01B0",send_mail_successfully:"Th\u01B0 \u0111\xE3 \u0111\u01B0\u1EE3c g\u1EEDi th\xE0nh c\xF4ng",setting_updated:"\u0110\xE3 c\u1EADp nh\u1EADt c\xE0i \u0111\u1EB7t th\xE0nh c\xF4ng",select_state:"Ch\u1ECDn tr\u1EA1ng th\xE1i",select_country:"Ch\u1ECDn qu\u1ED1c gia",select_city:"L\u1EF1a ch\u1ECDn th\xE0nh ph\u1ED1",street_1:"\u0111\u01B0\u1EDDng s\u1ED1 1",street_2:"\u0110\u01B0\u1EDDng 2",action_failed:"Di\u1EC5n: \u0110\xE3 th\u1EA5t b\u1EA1i",retry:"Th\u1EED l\u1EA1i",choose_note:"Ch\u1ECDn Ghi ch\xFA",no_note_found:"Kh\xF4ng t\xECm th\u1EA5y ghi ch\xFA",insert_note:"Ch\xE8n ghi ch\xFA",copied_pdf_url_clipboard:"\u0110\xE3 sao ch\xE9p url PDF v\xE0o khay nh\u1EDB t\u1EA1m!",copied_url_clipboard:"Copied url to clipboard!",docs:"T\xE0i li\u1EC7u",do_you_wish_to_continue:"B\u1EA1n c\xF3 mu\u1ED1n ti\u1EBFp t\u1EE5c kh\xF4ng?",note:"Ghi ch\xFA",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},Fb={select_year:"Ch\u1ECDn n\u0103m",cards:{due_amount:"S\u1ED1 ti\u1EC1n \u0111\u1EBFn h\u1EA1n",customers:"Kh\xE1ch h\xE0ng",invoices:"H\xF3a \u0111\u01A1n",estimates:"\u01AF\u1EDBc t\xEDnh",payments:"Payments"},chart_info:{total_sales:"B\xE1n h\xE0ng",total_receipts:"Bi\xEAn lai",total_expense:"Chi ph\xED",net_income:"Thu nh\u1EADp r\xF2ng",year:"Ch\u1ECDn n\u0103m"},monthly_chart:{title:"B\xE1n h\xE0ng"},recent_invoices_card:{title:"H\xF3a \u0111\u01A1n \u0111\u1EBFn h\u1EA1n",due_on:"\u0110\u1EBFn h\u1EA1n v\xE0o",customer:"kh\xE1ch h\xE0ng",amount_due:"S\u1ED1 ti\u1EC1n \u0111\u1EBFn h\u1EA1n",actions:"H\xE0nh \u0111\u1ED9ng",view_all:"Xem t\u1EA5t c\u1EA3"},recent_estimate_card:{title:"C\xE1c \u01B0\u1EDBc t\xEDnh g\u1EA7n \u0111\xE2y",date:"Ng\xE0y",customer:"kh\xE1ch h\xE0ng",amount_due:"S\u1ED1 ti\u1EC1n \u0111\u1EBFn h\u1EA1n",actions:"H\xE0nh \u0111\u1ED9ng",view_all:"Xem t\u1EA5t c\u1EA3"}},$b={name:"T\xEAn",description:"S\u1EF1 mi\xEAu t\u1EA3",percent:"Ph\u1EA7n tr\u0103m",compound_tax:"Thu\u1EBF t\u1ED5ng h\u1EE3p"},Ub={search:"T\xECm ki\u1EBFm...",customers:"Kh\xE1ch h\xE0ng",users:"Ng\u01B0\u1EDDi d\xF9ng",no_results_found:"Kh\xF4ng t\xECm th\u1EA5y k\u1EBFt qu\u1EA3 n\xE0o"},Vb={label:"\u0110\u1ED5i doanh nghi\u1EC7p",no_results_found:"Kh\xF4ng t\xECm th\u1EA5y k\u1EBFt qu\u1EA3 n\xE0o",add_new_company:"Th\xEAm doanh nghi\u1EC7p",new_company:"Doanh nghi\u1EC7p m\u1EDBi",created_message:"Kh\u1EDFi t\u1EA1o doanh nghi\u1EC7p th\xE0nh c\xF4ng"},Ob={today:"H\xF4m nay",this_week:"Tu\u1EA7n n\xE0y",this_month:"Th\xE1ng n\xE0y",this_quarter:"Qu\xFD n\xE0y",this_year:"N\u0103m nay",previous_week:"Tu\u1EA7n tr\u01B0\u1EDBc",previous_month:"Th\xE1ng tr\u01B0\u1EDBc",previous_quarter:"Qu\xFD tr\u01B0\u1EDBc",previous_year:"N\u0103m tr\u01B0\u1EDBc",custom:"Tu\u1EF3 ch\u1EC9nh"},Lb={title:"Kh\xE1ch h\xE0ng",prefix:"Ti\u1EC1n t\u1ED1",add_customer:"Th\xEAm kh\xE1ch h\xE0ng",contacts_list:"Danh s\xE1ch kh\xE1ch h\xE0ng",name:"T\xEAn",mail:"Th\u01B0 t\xEDn | Th\u01B0",statement:"Tuy\xEAn b\u1ED1",display_name:"T\xEAn hi\u1EC3n th\u1ECB",primary_contact_name:"T\xEAn li\xEAn h\u1EC7 ch\xEDnh",contact_name:"T\xEAn Li\xEAn l\u1EA1c",amount_due:"S\u1ED1 ti\u1EC1n \u0111\u1EBFn h\u1EA1n",email:"E-mail",address:"\u0110\u1ECBa ch\u1EC9",phone:"\u0110i\u1EC7n tho\u1EA1i",website:"Trang m\u1EA1ng",overview:"T\u1ED5ng quat",invoice_prefix:"Ti\u1EC1n t\u1ED1 h\xF3a \u0111\u01A1n",estimate_prefix:"Ti\u1EC1n t\u1ED1 \u01B0\u1EDBc t\xEDnh",payment_prefix:"Ti\u1EC1n t\u1ED1 thanh to\xE1n",enable_portal:"B\u1EADt C\u1ED5ng th\xF4ng tin",country:"Qu\u1ED1c gia",state:"Ti\u1EC3u bang",city:"Tp.",zip_code:"M\xE3 B\u01B0u Ch\xEDnh",added_on:"\u0110\xE3 th\xEAm v\xE0o",action:"Ho\u1EA1t \u0111\u1ED9ng",password:"M\u1EADt kh\u1EA9u",confirm_password:"X\xE1c nh\u1EADn m\u1EADt kh\u1EA9u",street_number:"S\u1ED1 \u0111\u01B0\u1EDDng",primary_currency:"Ti\u1EC1n t\u1EC7 ch\xEDnh",description:"S\u1EF1 mi\xEAu t\u1EA3",add_new_customer:"Th\xEAm kh\xE1ch h\xE0ng m\u1EDBi",save_customer:"L\u01B0u kh\xE1ch h\xE0ng",update_customer:"C\u1EADp nh\u1EADt kh\xE1ch h\xE0ng",customer:"Kh\xE1ch h\xE0ng | Kh\xE1ch h\xE0ng",new_customer:"Kh\xE1ch h\xE0ng m\u1EDBi",edit_customer:"Ch\u1EC9nh s\u1EEDa kh\xE1ch h\xE0ng",basic_info:"Th\xF4ng tin c\u01A1 b\u1EA3n",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"\u0110\u1ECBa ch\u1EC9 thanh to\xE1n",shipping_address:"\u0110\u1ECBa ch\u1EC9 giao h\xE0ng",copy_billing_address:"Sao ch\xE9p t\u1EEB thanh to\xE1n",no_customers:"Ch\u01B0a c\xF3 kh\xE1ch h\xE0ng!",no_customers_found:"Kh\xF4ng t\xECm th\u1EA5y kh\xE1ch h\xE0ng n\xE0o!",no_contact:"Kh\xF4ng c\xF3 li\xEAn l\u1EA1c",no_contact_name:"Kh\xF4ng c\xF3 t\xEAn li\xEAn h\u1EC7",list_of_customers:"Ph\u1EA7n n\xE0y s\u1EBD ch\u1EE9a danh s\xE1ch c\xE1c kh\xE1ch h\xE0ng.",primary_display_name:"T\xEAn hi\u1EC3n th\u1ECB ch\xEDnh",select_currency:"Ch\u1ECDn \u0111\u01A1n v\u1ECB ti\u1EC1n t\u1EC7",select_a_customer:"Ch\u1ECDn m\u1ED9t kh\xE1ch h\xE0ng",type_or_click:"Nh\u1EADp ho\u1EB7c nh\u1EA5p \u0111\u1EC3 ch\u1ECDn",new_transaction:"Giao d\u1ECBch m\u1EDBi",no_matching_customers:"Kh\xF4ng c\xF3 kh\xE1ch h\xE0ng ph\xF9 h\u1EE3p!",phone_number:"S\u1ED1 \u0111i\u1EC7n tho\u1EA1i",create_date:"T\u1EA1o ng\xE0y",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c kh\xE1ch h\xE0ng n\xE0y v\xE0 t\u1EA5t c\u1EA3 c\xE1c H\xF3a \u0111\u01A1n, \u01AF\u1EDBc t\xEDnh v\xE0 Thanh to\xE1n c\xF3 li\xEAn quan. | B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c nh\u1EEFng kh\xE1ch h\xE0ng n\xE0y v\xE0 t\u1EA5t c\u1EA3 c\xE1c H\xF3a \u0111\u01A1n, \u01AF\u1EDBc t\xEDnh v\xE0 Thanh to\xE1n c\xF3 li\xEAn quan.",created_message:"Kh\xE1ch h\xE0ng \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt kh\xE1ch h\xE0ng th\xE0nh c\xF4ng",address_updated_message:"Address Information Updated succesfully",deleted_message:"\u0110\xE3 x\xF3a kh\xE1ch h\xE0ng th\xE0nh c\xF4ng | \u0110\xE3 x\xF3a kh\xE1ch h\xE0ng th\xE0nh c\xF4ng",edit_currency_not_allowed:"Kh\xF4ng th\u1EC3 \u0111\u1ED5i ti\u1EC1n t\u1EC7 khi b\u1EA3n d\u1ECBch \u0111\xE3 \u0111\u01B0\u1EE3c t\u1EA1o."},Bb={title:"M\u1EB7t h\xE0ng",items_list:"Danh s\xE1ch m\u1EB7t h\xE0ng",name:"T\xEAn",unit:"\u0110\u01A1n v\u1ECB",description:"S\u1EF1 mi\xEAu t\u1EA3",added_on:"\u0110\xE3 th\xEAm v\xE0o",price:"Gi\xE1 b\xE1n",date_of_creation:"Ng\xE0y t\u1EA1o",not_selected:"Kh\xF4ng c\xF3 m\u1EE5c n\xE0o \u0111\u01B0\u1EE3c ch\u1ECDn",action:"Ho\u1EA1t \u0111\u1ED9ng",add_item:"Th\xEAm m\u1EB7t h\xE0ng",save_item:"L\u01B0u m\u1EE5c",update_item:"C\u1EADp nh\u1EADt m\u1EB7t h\xE0ng",item:"M\u1EB7t h\xE0ng | M\u1EB7t h\xE0ng",add_new_item:"Th\xEAm m\u1EE5c m\u1EDBi",new_item:"V\u1EADt ph\u1EA9m m\u1EDBi",edit_item:"Ch\u1EC9nh s\u1EEDa m\u1EE5c",no_items:"Ch\u01B0a c\xF3 m\u1EB7t h\xE0ng n\xE0o!",list_of_items:"Ph\u1EA7n n\xE0y s\u1EBD ch\u1EE9a danh s\xE1ch c\xE1c m\u1EE5c.",select_a_unit:"ch\u1ECDn \u0111\u01A1n v\u1ECB",taxes:"Thu\u1EBF",item_attached_message:"Kh\xF4ng th\u1EC3 x\xF3a m\u1ED9t m\u1EE5c \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c V\u1EADt ph\u1EA9m n\xE0y | B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c c\xE1c M\u1EE5c n\xE0y",created_message:"M\u1EE5c \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt m\u1EB7t h\xE0ng th\xE0nh c\xF4ng",deleted_message:"\u0110\xE3 x\xF3a m\u1EE5c th\xE0nh c\xF4ng | C\xE1c m\u1EE5c \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng"},qb={title:"\u01AF\u1EDBc t\xEDnh",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"\u01AF\u1EDBc t\xEDnh | \u01AF\u1EDBc t\xEDnh",estimates_list:"Danh s\xE1ch \u01B0\u1EDBc t\xEDnh",days:"{days} Ng\xE0y",months:"{th\xE1ng} th\xE1ng",years:"{n\u0103m} N\u0103m",all:"T\u1EA5t c\u1EA3",paid:"\u0110\xE3 thanh to\xE1n",unpaid:"Ch\u01B0a thanh to\xE1n",customer:"KH\xC1CH H\xC0NG",ref_no:"REF KH\xD4NG.",number:"CON S\u1ED0",amount_due:"S\u1ED0 TI\u1EC0N \u0110\xDANG",partially_paid:"Thanh to\xE1n m\u1ED9t ph\u1EA7n",total:"To\xE0n b\u1ED9",discount:"Gi\u1EA3m gi\xE1",sub_total:"T\u1ED5ng ph\u1EE5",estimate_number:"S\u1ED1 \u01B0\u1EDBc t\xEDnh",ref_number:"S\u1ED1 REF",contact:"Ti\u1EBFp x\xFAc",add_item:"Th\xEAm m\u1ED9t m\u1EB7t h\xE0ng",date:"Ng\xE0y",due_date:"Ng\xE0y \u0111\xE1o h\u1EA1n",expiry_date:"Ng\xE0y h\u1EBFt h\u1EA1n",status:"Tr\u1EA1ng th\xE1i",add_tax:"Th\xEAm thu\u1EBF",amount:"S\u1ED1 ti\u1EC1n",action:"Ho\u1EA1t \u0111\u1ED9ng",notes:"Ghi ch\xFA",tax:"Thu\u1EBF",estimate_template:"B\u1EA3n m\u1EABu",convert_to_invoice:"Chuy\u1EC3n \u0111\u1ED5i sang h\xF3a \u0111\u01A1n",mark_as_sent:"\u0110\xE1nh d\u1EA5u l\xE0 \u0110\xE3 g\u1EEDi",send_estimate:"G\u1EEDi \u01B0\u1EDBc t\xEDnh",resend_estimate:"G\u1EEDi l\u1EA1i \u01B0\u1EDBc t\xEDnh",record_payment:"Ghi l\u1EA1i Thanh to\xE1n",add_estimate:"Th\xEAm \u01B0\u1EDBc t\xEDnh",save_estimate:"L\u01B0u \u01B0\u1EDBc t\xEDnh",confirm_conversion:"\u01AF\u1EDBc t\xEDnh n\xE0y s\u1EBD \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng \u0111\u1EC3 t\u1EA1o H\xF3a \u0111\u01A1n m\u1EDBi.",conversion_message:"H\xF3a \u0111\u01A1n \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",confirm_send_estimate:"\u01AF\u1EDBc t\xEDnh n\xE0y s\u1EBD \u0111\u01B0\u1EE3c g\u1EEDi qua email cho kh\xE1ch h\xE0ng",confirm_mark_as_sent:"\u01AF\u1EDBc t\xEDnh n\xE0y s\u1EBD \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0111\xE3 g\u1EEDi",confirm_mark_as_accepted:"\u01AF\u1EDBc t\xEDnh n\xE0y s\u1EBD \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0110\xE3 ch\u1EA5p nh\u1EADn",confirm_mark_as_rejected:"\u01AF\u1EDBc t\xEDnh n\xE0y s\u1EBD \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 B\u1ECB t\u1EEB ch\u1ED1i",no_matching_estimates:"Kh\xF4ng c\xF3 \u01B0\u1EDBc t\xEDnh ph\xF9 h\u1EE3p!",mark_as_sent_successfully:"\u01AF\u1EDBc t\xEDnh \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0111\xE3 g\u1EEDi th\xE0nh c\xF4ng",send_estimate_successfully:"\u01AF\u1EDBc t\xEDnh \u0111\xE3 \u0111\u01B0\u1EE3c g\u1EEDi th\xE0nh c\xF4ng",errors:{required:"L\u0129nh v\u1EF1c \u0111\u01B0\u1EE3c y\xEAu c\u1EA7u"},accepted:"\u0110\xE3 \u0111\u01B0\u1EE3c ch\u1EA5p nh\u1EADn",rejected:"T\u1EEB ch\u1ED1i",expired:"Expired",sent:"G\u1EDFi",draft:"B\u1EA3n nh\xE1p",viewed:"Viewed",declined:"Suy gi\u1EA3m",new_estimate:"\u01AF\u1EDBc t\xEDnh m\u1EDBi",add_new_estimate:"Th\xEAm \u01B0\u1EDBc t\xEDnh m\u1EDBi",update_Estimate:"C\u1EADp nh\u1EADt \u01B0\u1EDBc t\xEDnh",edit_estimate:"Ch\u1EC9nh s\u1EEDa \u01B0\u1EDBc t\xEDnh",items:"m\u1EB7t h\xE0ng",Estimate:"\u01AF\u1EDBc t\xEDnh | \u01AF\u1EDBc t\xEDnh",add_new_tax:"Th\xEAm thu\u1EBF m\u1EDBi",no_estimates:"Ch\u01B0a c\xF3 \u01B0\u1EDBc t\xEDnh n\xE0o!",list_of_estimates:"Ph\u1EA7n n\xE0y s\u1EBD ch\u1EE9a danh s\xE1ch c\xE1c \u01B0\u1EDBc t\xEDnh.",mark_as_rejected:"\u0110\xE1nh d\u1EA5u l\xE0 b\u1ECB t\u1EEB ch\u1ED1i",mark_as_accepted:"\u0110\xE1nh d\u1EA5u l\xE0 \u0111\xE3 ch\u1EA5p nh\u1EADn",marked_as_accepted_message:"\u01AF\u1EDBc t\xEDnh \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0111\u01B0\u1EE3c ch\u1EA5p nh\u1EADn",marked_as_rejected_message:"\u01AF\u1EDBc t\xEDnh \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 b\u1ECB t\u1EEB ch\u1ED1i",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c \u01AF\u1EDBc t\xEDnh n\xE0y | B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c c\xE1c \u01AF\u1EDBc t\xEDnh n\xE0y",created_message:"\u01AF\u1EDBc t\xEDnh \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt \u01B0\u1EDBc t\xEDnh th\xE0nh c\xF4ng",deleted_message:"\u0110\xE3 x\xF3a \u01B0\u1EDBc t\xEDnh th\xE0nh c\xF4ng | \u0110\xE3 x\xF3a \u01B0\u1EDBc t\xEDnh th\xE0nh c\xF4ng",something_went_wrong:"c\xF3 g\xEC \u0111\xF3 kh\xF4ng \u1ED5n",item:{title:"Danh m\u1EE5c",description:"S\u1EF1 mi\xEAu t\u1EA3",quantity:"\u0110\u1ECBnh l\u01B0\u1EE3ng",price:"Gi\xE1 b\xE1n",discount:"Gi\u1EA3m gi\xE1",total:"To\xE0n b\u1ED9",total_discount:"T\u1ED5ng kh\u1EA5u tr\u1EEB",sub_total:"T\u1ED5ng ph\u1EE5",tax:"Thu\u1EBF",amount:"S\u1ED1 ti\u1EC1n",select_an_item:"Nh\u1EADp ho\u1EB7c nh\u1EA5p \u0111\u1EC3 ch\u1ECDn m\u1ED9t m\u1EE5c",type_item_description:"Lo\u1EA1i M\u1EE5c M\xF4 t\u1EA3 (t\xF9y ch\u1ECDn)"}},Kb={title:"H\xF3a \u0111\u01A1n",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"Danh s\xE1ch h\xF3a \u0111\u01A1n",invoice_information:"Invoice Information",days:"{days} Ng\xE0y",months:"{th\xE1ng} th\xE1ng",years:"{n\u0103m} N\u0103m",all:"T\u1EA5t c\u1EA3",paid:"\u0110\xE3 thanh to\xE1n",unpaid:"Ch\u01B0a thanh to\xE1n",viewed:"\u0110\xE3 xem",overdue:"Qu\xE1 h\u1EA1n",completed:"\u0110\xE3 ho\xE0n th\xE0nh",customer:"KH\xC1CH H\xC0NG",paid_status:"TR\u1EA0NG TH\xC1I \u0110\xC3 TR\u1EA2 TI\u1EC0N",ref_no:"REF KH\xD4NG.",number:"CON S\u1ED0",amount_due:"S\u1ED0 TI\u1EC0N \u0110\xDANG",partially_paid:"Thanh to\xE1n m\u1ED9t ph\u1EA7n",total:"To\xE0n b\u1ED9",discount:"Gi\u1EA3m gi\xE1",sub_total:"T\u1ED5ng ph\u1EE5",invoice:"H\xF3a \u0111\u01A1n | H\xF3a \u0111\u01A1n",invoice_number:"S\u1ED1 h\xF3a \u0111\u01A1n",ref_number:"S\u1ED1 REF",contact:"Ti\u1EBFp x\xFAc",add_item:"Th\xEAm m\u1ED9t m\u1EB7t h\xE0ng",date:"Ng\xE0y",due_date:"Ng\xE0y \u0111\xE1o h\u1EA1n",status:"Tr\u1EA1ng th\xE1i",add_tax:"Th\xEAm thu\u1EBF",amount:"S\u1ED1 ti\u1EC1n",action:"Ho\u1EA1t \u0111\u1ED9ng",notes:"Ghi ch\xFA",view:"L\u01B0\u1EE3t xem",send_invoice:"G\u1EEDi h\xF3a \u0111\u01A1n",resend_invoice:"G\u1EEDi l\u1EA1i h\xF3a \u0111\u01A1n",invoice_template:"M\u1EABu h\xF3a \u0111\u01A1n",conversion_message:"H\xF3a \u0111\u01A1n \u0111\u01B0\u1EE3c sao ch\xE9p th\xE0nh c\xF4ng",template:"B\u1EA3n m\u1EABu",mark_as_sent:"\u0110\xE1nh d\u1EA5u l\xE0 \u0111\xE3 g\u1EEDi",confirm_send_invoice:"H\xF3a \u0111\u01A1n n\xE0y s\u1EBD \u0111\u01B0\u1EE3c g\u1EEDi qua email cho kh\xE1ch h\xE0ng",invoice_mark_as_sent:"H\xF3a \u0111\u01A1n n\xE0y s\u1EBD \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0111\xE3 g\u1EEDi",confirm_mark_as_accepted:"H\xF3a \u0111\u01A1n n\xE0y s\u1EBD \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0110\xE3 ch\u1EA5p nh\u1EADn",confirm_mark_as_rejected:"H\xF3a \u0111\u01A1n n\xE0y s\u1EBD \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0110\xE3 t\u1EEB ch\u1ED1i",confirm_send:"H\xF3a \u0111\u01A1n n\xE0y s\u1EBD \u0111\u01B0\u1EE3c g\u1EEDi qua email cho kh\xE1ch h\xE0ng",invoice_date:"Ng\xE0y l\u1EADp h\xF3a \u0111\u01A1n",record_payment:"Ghi l\u1EA1i Thanh to\xE1n",add_new_invoice:"Th\xEAm h\xF3a \u0111\u01A1n m\u1EDBi",update_expense:"C\u1EADp nh\u1EADt chi ph\xED",edit_invoice:"Ch\u1EC9nh s\u1EEDa h\xF3a \u0111\u01A1n",new_invoice:"H\xF3a \u0111\u01A1n m\u1EDBi",save_invoice:"L\u01B0u h\xF3a \u0111\u01A1n",update_invoice:"C\u1EADp nh\u1EADt h\xF3a \u0111\u01A1n",add_new_tax:"Th\xEAm thu\u1EBF m\u1EDBi",no_invoices:"Ch\u01B0a c\xF3 h\xF3a \u0111\u01A1n!",mark_as_rejected:"\u0110\xE1nh d\u1EA5u l\xE0 b\u1ECB t\u1EEB ch\u1ED1i",mark_as_accepted:"\u0110\xE1nh d\u1EA5u l\xE0 \u0111\xE3 ch\u1EA5p nh\u1EADn",list_of_invoices:"Ph\u1EA7n n\xE0y s\u1EBD ch\u1EE9a danh s\xE1ch c\xE1c h\xF3a \u0111\u01A1n.",select_invoice:"Ch\u1ECDn h\xF3a \u0111\u01A1n",no_matching_invoices:"Kh\xF4ng c\xF3 h\xF3a \u0111\u01A1n ph\xF9 h\u1EE3p!",mark_as_sent_successfully:"H\xF3a \u0111\u01A1n \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0111\xE3 g\u1EEDi th\xE0nh c\xF4ng",invoice_sent_successfully:"H\xF3a \u0111\u01A1n \u0111\xE3 \u0111\u01B0\u1EE3c g\u1EEDi th\xE0nh c\xF4ng",cloned_successfully:"H\xF3a \u0111\u01A1n \u0111\u01B0\u1EE3c sao ch\xE9p th\xE0nh c\xF4ng",clone_invoice:"H\xF3a \u0111\u01A1n nh\xE2n b\u1EA3n",confirm_clone:"H\xF3a \u0111\u01A1n n\xE0y s\u1EBD \u0111\u01B0\u1EE3c sao ch\xE9p v\xE0o m\u1ED9t H\xF3a \u0111\u01A1n m\u1EDBi",item:{title:"Danh m\u1EE5c",description:"S\u1EF1 mi\xEAu t\u1EA3",quantity:"\u0110\u1ECBnh l\u01B0\u1EE3ng",price:"Gi\xE1 b\xE1n",discount:"Gi\u1EA3m gi\xE1",total:"To\xE0n b\u1ED9",total_discount:"T\u1ED5ng kh\u1EA5u tr\u1EEB",sub_total:"T\u1ED5ng ph\u1EE5",tax:"Thu\u1EBF",amount:"S\u1ED1 ti\u1EC1n",select_an_item:"Nh\u1EADp ho\u1EB7c nh\u1EA5p \u0111\u1EC3 ch\u1ECDn m\u1ED9t m\u1EE5c",type_item_description:"Lo\u1EA1i M\u1EE5c M\xF4 t\u1EA3 (t\xF9y ch\u1ECDn)"},payment_attached_message:"M\u1ED9t trong c\xE1c h\xF3a \u0111\u01A1n \u0111\u01B0\u1EE3c ch\u1ECDn \u0111\xE3 c\xF3 m\u1ED9t kho\u1EA3n thanh to\xE1n \u0111\u01B0\u1EE3c \u0111\xEDnh k\xE8m. \u0110\u1EA3m b\u1EA3o x\xF3a c\xE1c kho\u1EA3n thanh to\xE1n \u0111\xEDnh k\xE8m tr\u01B0\u1EDBc \u0111\u1EC3 ti\u1EBFp t\u1EE5c x\xF3a",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c H\xF3a \u0111\u01A1n n\xE0y | B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c c\xE1c H\xF3a \u0111\u01A1n n\xE0y",created_message:"H\xF3a \u0111\u01A1n \u0111\xE3 \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt h\xF3a \u0111\u01A1n th\xE0nh c\xF4ng",deleted_message:"H\xF3a \u0111\u01A1n \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng | H\xF3a \u0111\u01A1n \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng",marked_as_sent_message:"H\xF3a \u0111\u01A1n \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0111\xE3 g\u1EEDi th\xE0nh c\xF4ng",something_went_wrong:"c\xF3 g\xEC \u0111\xF3 kh\xF4ng \u1ED5n",invalid_due_amount_message:"T\u1ED5ng s\u1ED1 ti\u1EC1n tr\xEAn H\xF3a \u0111\u01A1n kh\xF4ng \u0111\u01B0\u1EE3c nh\u1ECF h\u01A1n t\u1ED5ng s\u1ED1 ti\u1EC1n \u0111\xE3 thanh to\xE1n cho H\xF3a \u0111\u01A1n n\xE0y. Vui l\xF2ng c\u1EADp nh\u1EADt h\xF3a \u0111\u01A1n ho\u1EB7c x\xF3a c\xE1c kho\u1EA3n thanh to\xE1n li\xEAn quan \u0111\u1EC3 ti\u1EBFp t\u1EE5c."},Wb={title:"H\xF3a \u0111\u01A1n \u0111\u1ECBnh k\u1EF3",invoices_list:"H\xF3a \u0111\u01A1n \u0111\u1ECBnh k\u1EF3",days:"{days} Ng\xE0y",months:"{months} Th\xE1ng",years:"{years} N\u0103m",all:"T\u1EA5t c\u1EA3",paid:"\u0110\xE3 thanh to\xE1n",unpaid:"Ch\u01B0a thanh to\xE1n",viewed:"\u0110\xE3 xem",overdue:"Qu\xE1 h\u1EA1n",active:"Ho\u1EA1t \u0111\u1ED9ng",completed:"Ho\xE0n th\xE0nh",customer:"KH\xC1CH H\xC0NG",paid_status:"PAID STATUS",ref_no:"REF NO.",number:"NUMBER",amount_due:"AMOUNT DUE",partially_paid:"Partially Paid",total:"Total",discount:"Discount",sub_total:"Sub Total",invoice:"Recurring Invoice | Recurring Invoices",invoice_number:"Recurring Invoice Number",next_invoice_date:"Next Invoice Date",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",limit_by:"Limit by",limit_date:"Limit Date",limit_count:"Limit Count",count:"Count",status:"Status",select_a_status:"Select a status",working:"Working",on_hold:"On Hold",complete:"Completed",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",view:"View",basic_info:"Basic Info",send_invoice:"Send Recurring Invoice",auto_send:"Auto Send",resend_invoice:"Resend Recurring Invoice",invoice_template:"Recurring Invoice Template",conversion_message:"Recurring Invoice cloned successful",template:"Template",mark_as_sent:"Mark as sent",confirm_send_invoice:"This recurring invoice will be sent via email to the customer",invoice_mark_as_sent:"This recurring invoice will be marked as sent",confirm_send:"This recurring invoice will be sent via email to the customer",starts_at:"Start Date",due_date:"Invoice Due Date",record_payment:"Record Payment",add_new_invoice:"Add New Recurring Invoice",update_expense:"Update Expense",edit_invoice:"Edit Recurring Invoice",new_invoice:"New Recurring Invoice",send_automatically:"Send Automatically",send_automatically_desc:"Enable this, if you would like to send the invoice automatically to the customer when its created.",save_invoice:"Save Recurring Invoice",update_invoice:"C\u1EADp nh\u1EADt H\xF3a \u0111\u01A1n \u0111\u1ECBnh k\u1EF3",add_new_tax:"Th\xEAm thu\u1EBF m\u1EDBi",no_invoices:"Ch\u01B0a c\xF3 H\xF3a \u0111\u01A1n \u0111\u1ECBnh k\u1EF3 n\xE0o!",mark_as_rejected:"\u0110\xE1nh d\u1EA5u l\xE0 b\u1ECB t\u1EEB ch\u1ED1i",mark_as_accepted:"\u0110\xE1nh d\u1EA5u l\xE0 \u0111\xE3 ch\u1EA5p nh\u1EADn",list_of_invoices:"This section will contain the list of recurring invoices.",select_invoice:"Select Invoice",no_matching_invoices:"There are no matching recurring invoices!",mark_as_sent_successfully:"Recurring Invoice marked as sent successfully",invoice_sent_successfully:"Recurring Invoice sent successfully",cloned_successfully:"Recurring Invoice cloned successfully",clone_invoice:"Clone Recurring Invoice",confirm_clone:"This recurring invoice will be cloned into a new Recurring Invoice",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"},frequency:{title:"Frequency",select_frequency:"Select Frequency",minute:"Minute",hour:"Hour",day_month:"Day of month",month:"Month",day_week:"Day of week"},confirm_delete:"You will not be able to recover this Invoice | You will not be able to recover these Invoices",created_message:"Recurring Invoice created successfully",updated_message:"Recurring Invoice updated successfully",deleted_message:"Recurring Invoice deleted successfully | Recurring Invoices deleted successfully",marked_as_sent_message:"Recurring Invoice marked as sent successfully",user_email_does_not_exist:"User email does not exist",something_went_wrong:"something went wrong",invalid_due_amount_message:"Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue."},Zb={title:"Thanh to\xE1n",payments_list:"Danh s\xE1ch thanh to\xE1n",record_payment:"Ghi l\u1EA1i Thanh to\xE1n",customer:"kh\xE1ch h\xE0ng",date:"Ng\xE0y",amount:"S\u1ED1 ti\u1EC1n",action:"Ho\u1EA1t \u0111\u1ED9ng",payment_number:"S\u1ED1 ti\u1EC1n ph\u1EA3i tr\u1EA3",payment_mode:"Ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n",invoice:"H\xF3a \u0111\u01A1n",note:"Ghi ch\xFA",add_payment:"Th\xEAm thanh to\xE1n",new_payment:"Thanh to\xE1n m\u1EDBi",edit_payment:"Ch\u1EC9nh s\u1EEDa Thanh to\xE1n",view_payment:"Xem thanh to\xE1n",add_new_payment:"Th\xEAm thanh to\xE1n m\u1EDBi",send_payment_receipt:"G\u1EEDi bi\xEAn lai thanh to\xE1n",send_payment:"G\u1EEDi h\xF3a \u0111\u01A1n",save_payment:"L\u01B0u thanh to\xE1n",update_payment:"C\u1EADp nh\u1EADt thanh to\xE1n",payment:"Thanh to\xE1n | Thanh to\xE1n",no_payments:"Ch\u01B0a c\xF3 kho\u1EA3n thanh to\xE1n n\xE0o!",not_selected:"Kh\xF4ng \u0111\u01B0\u1EE3c ch\u1ECDn",no_invoice:"Kh\xF4ng c\xF3 h\xF3a \u0111\u01A1n",no_matching_payments:"Kh\xF4ng c\xF3 kho\u1EA3n thanh to\xE1n n\xE0o ph\xF9 h\u1EE3p!",list_of_payments:"Ph\u1EA7n n\xE0y s\u1EBD ch\u1EE9a danh s\xE1ch c\xE1c kho\u1EA3n thanh to\xE1n.",select_payment_mode:"Ch\u1ECDn ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n",confirm_mark_as_sent:"\u01AF\u1EDBc t\xEDnh n\xE0y s\u1EBD \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0111\xE3 g\u1EEDi",confirm_send_payment:"Kho\u1EA3n thanh to\xE1n n\xE0y s\u1EBD \u0111\u01B0\u1EE3c g\u1EEDi qua email cho kh\xE1ch h\xE0ng",send_payment_successfully:"Thanh to\xE1n \u0111\xE3 \u0111\u01B0\u1EE3c g\u1EEDi th\xE0nh c\xF4ng",something_went_wrong:"c\xF3 g\xEC \u0111\xF3 kh\xF4ng \u1ED5n",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c Thanh to\xE1n n\xE0y | B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c c\xE1c Kho\u1EA3n thanh to\xE1n n\xE0y",created_message:"Thanh to\xE1n \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt thanh to\xE1n th\xE0nh c\xF4ng",deleted_message:"\u0110\xE3 x\xF3a thanh to\xE1n th\xE0nh c\xF4ng | Thanh to\xE1n \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng",invalid_amount_message:"S\u1ED1 ti\u1EC1n thanh to\xE1n kh\xF4ng h\u1EE3p l\u1EC7"},Hb={title:"Chi ph\xED",expenses_list:"Danh s\xE1ch chi ph\xED",select_a_customer:"Ch\u1ECDn m\u1ED9t kh\xE1ch h\xE0ng",expense_title:"Ti\xEAu \u0111\u1EC1",customer:"kh\xE1ch h\xE0ng",currency:"Currency",contact:"Ti\u1EBFp x\xFAc",category:"th\u1EC3 lo\u1EA1i",from_date:"T\u1EEB ng\xE0y",to_date:"\u0110\u1EBFn nay",expense_date:"Ng\xE0y",description:"S\u1EF1 mi\xEAu t\u1EA3",receipt:"Bi\xEAn lai",amount:"S\u1ED1 ti\u1EC1n",action:"Ho\u1EA1t \u0111\u1ED9ng",not_selected:"Kh\xF4ng \u0111\u01B0\u1EE3c ch\u1ECDn",note:"Ghi ch\xFA",category_id:"Th\u1EC3 lo\u1EA1i ID",date:"Ng\xE0y",add_expense:"Th\xEAm chi ph\xED",add_new_expense:"Th\xEAm chi ph\xED m\u1EDBi",save_expense:"Ti\u1EBFt ki\u1EC7m chi ph\xED",update_expense:"C\u1EADp nh\u1EADt chi ph\xED",download_receipt:"Bi\xEAn nh\u1EADn t\u1EA3i xu\u1ED1ng",edit_expense:"Ch\u1EC9nh s\u1EEDa chi ph\xED",new_expense:"Chi ph\xED m\u1EDBi",expense:"Chi ph\xED | Chi ph\xED",no_expenses:"Ch\u01B0a c\xF3 chi ph\xED!",list_of_expenses:"Ph\u1EA7n n\xE0y s\u1EBD ch\u1EE9a danh s\xE1ch c\xE1c chi ph\xED.",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 thu h\u1ED3i Kho\u1EA3n chi ph\xED n\xE0y | B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 thu h\u1ED3i c\xE1c Kho\u1EA3n chi ph\xED n\xE0y",created_message:"\u0110\xE3 t\u1EA1o th\xE0nh c\xF4ng chi ph\xED",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt chi ph\xED th\xE0nh c\xF4ng",deleted_message:"\u0110\xE3 x\xF3a th\xE0nh c\xF4ng chi ph\xED | \u0110\xE3 x\xF3a th\xE0nh c\xF4ng chi ph\xED",categories:{categories_list:"Danh s\xE1ch h\u1EA1ng m\u1EE5c",title:"Ti\xEAu \u0111\u1EC1",name:"T\xEAn",description:"S\u1EF1 mi\xEAu t\u1EA3",amount:"S\u1ED1 ti\u1EC1n",actions:"H\xE0nh \u0111\u1ED9ng",add_category:"th\xEAm th\xEA\u0309 loa\u0323i",new_category:"Danh m\u1EE5c m\u1EDBi",category:"Th\u1EC3 lo\u1EA1i | Th\u1EC3 lo\u1EA1i",select_a_category:"Ch\u1ECDn m\u1ED9t danh m\u1EE5c"}},Yb={email:"E-mail",password:"M\u1EADt kh\u1EA9u",forgot_password:"Qu\xEAn m\u1EADt kh\u1EA9u?",or_signIn_with:"ho\u1EB7c \u0110\u0103ng nh\u1EADp b\u1EB1ng",login:"\u0110\u0103ng nh\u1EADp",register:"\u0110\u0103ng k\xFD",reset_password:"\u0110\u1EB7t l\u1EA1i m\u1EADt kh\u1EA9u",password_reset_successfully:"\u0110\u1EB7t l\u1EA1i m\u1EADt kh\u1EA9u th\xE0nh c\xF4ng",enter_email:"Nh\u1EADp email",enter_password:"Nh\u1EADp m\u1EADt kh\u1EA9u",retype_password:"G\xF5 l\u1EA1i m\u1EADt kh\u1EA9u"},Gb={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},Jb={title:"Ng\u01B0\u1EDDi d\xF9ng",users_list:"Danh s\xE1ch ng\u01B0\u1EDDi d\xF9ng",name:"T\xEAn",description:"S\u1EF1 mi\xEAu t\u1EA3",added_on:"\u0110\xE3 th\xEAm v\xE0o",date_of_creation:"Ng\xE0y t\u1EA1o",action:"Ho\u1EA1t \u0111\u1ED9ng",add_user:"Th\xEAm ng\u01B0\u1EDDi d\xF9ng",save_user:"L\u01B0u ng\u01B0\u1EDDi d\xF9ng",update_user:"C\u1EADp nh\u1EADt ng\u01B0\u1EDDi d\xF9ng",user:"Ng\u01B0\u1EDDi d\xF9ng | Ng\u01B0\u1EDDi d\xF9ng",add_new_user:"Th\xEAm ng\u01B0\u1EDDi d\xF9ng m\u1EDBi",new_user:"Ng\u01B0\u1EDDi d\xF9ng m\u1EDBi",edit_user:"Ng\u01B0\u1EDDi d\xF9ng bi\xEAn t\u1EADp",no_users:"Ch\u01B0a c\xF3 ng\u01B0\u1EDDi d\xF9ng n\xE0o!",list_of_users:"Ph\u1EA7n n\xE0y s\u1EBD ch\u1EE9a danh s\xE1ch ng\u01B0\u1EDDi d\xF9ng.",email:"E-mail",phone:"\u0110i\u1EC7n tho\u1EA1i",password:"M\u1EADt kh\u1EA9u",user_attached_message:"Kh\xF4ng th\u1EC3 x\xF3a m\u1ED9t m\u1EE5c \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c Ng\u01B0\u1EDDi d\xF9ng n\xE0y | B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c nh\u1EEFng Ng\u01B0\u1EDDi d\xF9ng n\xE0y",created_message:"Ng\u01B0\u1EDDi d\xF9ng \u0111\xE3 \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt ng\u01B0\u1EDDi d\xF9ng th\xE0nh c\xF4ng",deleted_message:"\u0110\xE3 x\xF3a ng\u01B0\u1EDDi d\xF9ng th\xE0nh c\xF4ng | \u0110\xE3 x\xF3a ng\u01B0\u1EDDi d\xF9ng th\xE0nh c\xF4ng",select_company_role:"Select Role for {company}",companies:"Companies"},Qb={title:"B\xE1o c\xE1o",from_date:"T\u1EEB ng\xE0y",to_date:"\u0110\u1EBFn nay",status:"Tr\u1EA1ng th\xE1i",paid:"\u0110\xE3 thanh to\xE1n",unpaid:"Ch\u01B0a thanh to\xE1n",download_pdf:"t\u1EA3i PDF",view_pdf:"Xem PDF",update_report:"C\u1EADp nh\u1EADt b\xE1o c\xE1o",report:"B\xE1o c\xE1o | B\xE1o c\xE1o",profit_loss:{profit_loss:"L\u1EE3i nhu\u1EADn",to_date:"\u0110\u1EBFn nay",from_date:"T\u1EEB ng\xE0y",date_range:"Ch\u1ECDn ph\u1EA1m vi ng\xE0y"},sales:{sales:"B\xE1n h\xE0ng",date_range:"Ch\u1ECDn ph\u1EA1m vi ng\xE0y",to_date:"\u0110\u1EBFn nay",from_date:"T\u1EEB ng\xE0y",report_type:"Lo\u1EA1i b\xE1o c\xE1o"},taxes:{taxes:"Thu\u1EBF",to_date:"\u0110\u1EBFn nay",from_date:"T\u1EEB ng\xE0y",date_range:"Ch\u1ECDn ph\u1EA1m vi ng\xE0y"},errors:{required:"L\u0129nh v\u1EF1c \u0111\u01B0\u1EE3c y\xEAu c\u1EA7u"},invoices:{invoice:"H\xF3a \u0111\u01A1n",invoice_date:"Ng\xE0y l\u1EADp h\xF3a \u0111\u01A1n",due_date:"Ng\xE0y \u0111\xE1o h\u1EA1n",amount:"S\u1ED1 ti\u1EC1n",contact_name:"T\xEAn Li\xEAn l\u1EA1c",status:"Tr\u1EA1ng th\xE1i"},estimates:{estimate:"\u01AF\u1EDBc t\xEDnh",estimate_date:"Ng\xE0y \u01B0\u1EDBc t\xEDnh",due_date:"Ng\xE0y \u0111\xE1o h\u1EA1n",estimate_number:"S\u1ED1 \u01B0\u1EDBc t\xEDnh",ref_number:"S\u1ED1 REF",amount:"S\u1ED1 ti\u1EC1n",contact_name:"T\xEAn Li\xEAn l\u1EA1c",status:"Tr\u1EA1ng th\xE1i"},expenses:{expenses:"Chi ph\xED",category:"th\u1EC3 lo\u1EA1i",date:"Ng\xE0y",amount:"S\u1ED1 ti\u1EC1n",to_date:"\u0110\u1EBFn nay",from_date:"T\u1EEB ng\xE0y",date_range:"Ch\u1ECDn ph\u1EA1m vi ng\xE0y"}},Xb={menu_title:{account_settings:"C\xE0i \u0111\u1EB7t t\xE0i kho\u1EA3n",company_information:"Th\xF4ng tin c\xF4ng ty",customization:"T\xF9y bi\u1EBFn",preferences:"S\u1EDF th\xEDch",notifications:"Th\xF4ng b\xE1o",tax_types:"C\xE1c lo\u1EA1i thu\u1EBF",expense_category:"H\u1EA1ng m\u1EE5c Chi ph\xED",update_app:"C\u1EADp nh\u1EADt \u1EE9ng d\u1EE5ng",backup:"Sao l\u01B0u",file_disk:"\u0110\u0129a t\u1EC7p",custom_fields:"Tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh",payment_modes:"Ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n",notes:"Ghi ch\xFA",exchange_rate:"Exchange Rate",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"C\xE0i \u0111\u1EB7t",setting:"C\xE0i \u0111\u1EB7t | C\xE0i \u0111\u1EB7t",general:"Chung",language:"Ng\xF4n ng\u1EEF",primary_currency:"Ti\u1EC1n t\u1EC7 ch\xEDnh",timezone:"M\xFAi gi\u1EDD",date_format:"\u0110\u1ECBnh d\u1EA1ng ng\xE0y th\xE1ng",currencies:{title:"Ti\u1EC1n t\u1EC7",currency:"Ti\u1EC1n t\u1EC7 | Ti\u1EC1n t\u1EC7",currencies_list:"Danh s\xE1ch ti\u1EC1n t\u1EC7",select_currency:"Ch\u1ECDn ti\u1EC1n t\u1EC7",name:"T\xEAn",code:"M\xE3",symbol:"Bi\u1EC3u t\u01B0\u1EE3ng",precision:"\u0110\u1ED9 ch\xEDnh x\xE1c",thousand_separator:"H\xE0ng ng\xE0n m\xE1y t\xE1ch",decimal_separator:"Ph\xE2n s\u1ED1 th\u1EADp ph\xE2n",position:"Ch\u1EE9c v\u1EE5",position_of_symbol:"V\u1ECB tr\xED c\u1EE7a bi\u1EC3u t\u01B0\u1EE3ng",right:"\u0110\xFAng",left:"Tr\xE1i",action:"Ho\u1EA1t \u0111\u1ED9ng",add_currency:"Th\xEAm ti\u1EC1n t\u1EC7"},mail:{host:"M\xE1y ch\u1EE7 Th\u01B0",port:"C\u1ED5ng th\u01B0",driver:"Tr\xECnh \u0111i\u1EC1u khi\u1EC3n Th\u01B0",secret:"B\xED m\u1EADt",mailgun_secret:"B\xED m\u1EADt Mailgun",mailgun_domain:"Mi\u1EC1n",mailgun_endpoint:"\u0110i\u1EC3m cu\u1ED1i c\u1EE7a Mailgun",ses_secret:"B\xED m\u1EADt SES",ses_key:"Kh\xF3a SES",password:"M\u1EADt kh\u1EA9u th\u01B0",username:"T\xEAn ng\u01B0\u1EDDi d\xF9ng th\u01B0",mail_config:"C\u1EA5u h\xECnh th\u01B0",from_name:"T\u1EEB t\xEAn th\u01B0",from_mail:"T\u1EEB \u0111\u1ECBa ch\u1EC9 th\u01B0",encryption:"M\xE3 h\xF3a Th\u01B0",mail_config_desc:"D\u01B0\u1EDBi \u0111\xE2y l\xE0 bi\u1EC3u m\u1EABu \u0110\u1ECBnh c\u1EA5u h\xECnh tr\xECnh \u0111i\u1EC1u khi\u1EC3n Email \u0111\u1EC3 g\u1EEDi email t\u1EEB \u1EE9ng d\u1EE5ng. B\u1EA1n c\u0169ng c\xF3 th\u1EC3 \u0111\u1ECBnh c\u1EA5u h\xECnh c\xE1c nh\xE0 cung c\u1EA5p b\xEAn th\u1EE9 ba nh\u01B0 Sendgrid, SES, v.v."},pdf:{title:"C\xE0i \u0111\u1EB7t PDF",footer_text:"V\u0103n b\u1EA3n ch\xE2n trang",pdf_layout:"B\u1ED1 c\u1EE5c PDF"},company_info:{company_info:"Th\xF4ng tin c\xF4ng ty",company_name:"T\xEAn c\xF4ng ty",company_logo:"Logo c\xF4ng ty",section_description:"Th\xF4ng tin v\u1EC1 c\xF4ng ty c\u1EE7a b\u1EA1n s\u1EBD \u0111\u01B0\u1EE3c hi\u1EC3n th\u1ECB tr\xEAn h\xF3a \u0111\u01A1n, \u01B0\u1EDBc t\xEDnh v\xE0 c\xE1c t\xE0i li\u1EC7u kh\xE1c do Crater t\u1EA1o.",phone:"\u0110i\u1EC7n tho\u1EA1i",country:"Qu\u1ED1c gia",state:"Ti\u1EC3u bang",city:"Tp.",address:"\u0110\u1ECBa ch\u1EC9",zip:"Zip",save:"Ti\u1EBFt ki\u1EC7m",delete:"Delete",updated_message:"Th\xF4ng tin c\xF4ng ty \u0111\u01B0\u1EE3c c\u1EADp nh\u1EADt th\xE0nh c\xF4ng",delete_company:"Delete Company",delete_company_description:"Once you delete your company, you will lose all the data and files associated with it permanently.",are_you_absolutely_sure:"Are you absolutely sure?",delete_company_modal_desc:"This action cannot be undone. This will permanently delete {company} and all of its associated data.",delete_company_modal_label:"Please type {company} to confirm"},custom_fields:{title:"Tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh",section_description:"T\xF9y ch\u1EC9nh h\xF3a \u0111\u01A1n, \u01B0\u1EDBc t\xEDnh c\u1EE7a b\u1EA1n",add_custom_field:"Th\xEAm tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh",edit_custom_field:"Ch\u1EC9nh s\u1EEDa tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh",field_name:"T\xEAn tr\u01B0\u1EDDng",label:"Nh\xE3n",type:"Ki\u1EC3u",name:"T\xEAn",slug:"Slug",required:"C\u1EA7n thi\u1EBFt",placeholder:"Tr\xECnh gi\u1EEF ch\u1ED7",help_text:"V\u0103n b\u1EA3n tr\u1EE3 gi\xFAp",default_value:"Gi\xE1 tr\u1ECB m\u1EB7c \u0111\u1ECBnh",prefix:"Ti\u1EBFp \u0111\u1EA7u ng\u1EEF",starting_number:"S\u1ED1 b\u1EAFt \u0111\u1EA7u",model:"M\xF4 h\xECnh",help_text_description:"Nh\u1EADp m\u1ED9t s\u1ED1 v\u0103n b\u1EA3n \u0111\u1EC3 gi\xFAp ng\u01B0\u1EDDi d\xF9ng hi\u1EC3u m\u1EE5c \u0111\xEDch c\u1EE7a tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh n\xE0y.",suffix:"H\u1EADu t\u1ED1",yes:"\u0110\xFAng",no:"Kh\xF4ng",order:"\u0110\u1EB7t h\xE0ng",custom_field_confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c Tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh n\xE0y",already_in_use:"Tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",deleted_message:"Tr\u01B0\u1EDDng T\xF9y ch\u1EC9nh \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng",options:"c\xE1c t\xF9y ch\u1ECDn",add_option:"Th\xEAm t\xF9y ch\u1ECDn",add_another_option:"Th\xEAm m\u1ED9t t\xF9y ch\u1ECDn kh\xE1c",sort_in_alphabetical_order:"S\u1EAFp x\u1EBFp theo th\u1EE9 t\u1EF1 b\u1EA3ng ch\u1EEF c\xE1i",add_options_in_bulk:"Th\xEAm h\xE0ng lo\u1EA1t t\xF9y ch\u1ECDn",use_predefined_options:"S\u1EED d\u1EE5ng c\xE1c t\xF9y ch\u1ECDn \u0111\u01B0\u1EE3c x\xE1c \u0111\u1ECBnh tr\u01B0\u1EDBc",select_custom_date:"Ch\u1ECDn ng\xE0y t\xF9y ch\u1EC9nh",select_relative_date:"Ch\u1ECDn ng\xE0y t\u01B0\u01A1ng \u0111\u1ED1i",ticked_by_default:"\u0110\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u theo m\u1EB7c \u0111\u1ECBnh",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh th\xE0nh c\xF4ng",added_message:"Tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh \u0111\xE3 \u0111\u01B0\u1EE3c th\xEAm th\xE0nh c\xF4ng",press_enter_to_add:"Press enter to add new option",model_in_use:"Cannot update model for fields which are already in use.",type_in_use:"Cannot update type for fields which are already in use."},customization:{customization:"s\u1EF1 t\xF9y bi\u1EBFn",updated_message:"Th\xF4ng tin c\xF4ng ty \u0111\u01B0\u1EE3c c\u1EADp nh\u1EADt th\xE0nh c\xF4ng",save:"Ti\u1EBFt ki\u1EC7m",insert_fields:"Insert Fields",learn_custom_format:"Learn how to use custom format",add_new_component:"Add New Component",component:"Component",Parameter:"Parameter",series:"Series",series_description:"To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.",series_param_label:"Series Value",delimiter:"Delimiter",delimiter_description:"Single character for specifying the boundary between 2 separate components. By default its set to -",delimiter_param_label:"Delimiter Value",date_format:"Date Format",date_format_description:"A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.",date_format_param_label:"Format",sequence:"Sequence",sequence_description:"Consecutive sequence of numbers across your company. You can specify the length on the given parameter.",sequence_param_label:"Sequence Length",customer_series:"Customer Series",customer_series_description:"To set a different prefix/postfix for each customer.",customer_sequence:"Customer Sequence",customer_sequence_description:"Consecutive sequence of numbers for each of your customer.",customer_sequence_param_label:"Sequence Length",random_sequence:"Random Sequence",random_sequence_description:"Random alphanumeric string. You can specify the length on the given parameter.",random_sequence_param_label:"Sequence Length",invoices:{title:"H\xF3a \u0111\u01A1n",invoice_number_format:"Invoice Number Format",invoice_number_format_description:"Customize how your invoice number gets generated automatically when you create a new invoice.",preview_invoice_number:"Preview Invoice Number",due_date:"Due Date",due_date_description:"Specify how due date is automatically set when you create an invoice.",due_date_days:"Invoice Due after days",set_due_date_automatically:"Set Due Date Automatically",set_due_date_automatically_description:"Enable this if you wish to set due date automatically when you create a new invoice.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on invoice creation.",default_invoice_email_body:"N\u1ED9i dung email h\xF3a \u0111\u01A1n m\u1EB7c \u0111\u1ECBnh",company_address_format:"\u0110\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 c\xF4ng ty",shipping_address_format:"\u0110\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 giao h\xE0ng",billing_address_format:"\u0110\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 thanh to\xE1n",invoice_email_attachment:"G\u1EEDi h\xF3a \u0111\u01A1n d\u01B0\u1EDBi d\u1EA1ng t\u1EC7p \u0111\xEDnh k\xE8m",invoice_email_attachment_setting_description:"B\u1EADt t\xEDnh n\u0103ng n\xE0y n\u1EBFu b\u1EA1n mu\u1ED1n g\u1EEDi h\xF3a \u0111\u01A1n d\u01B0\u1EDBi d\u1EA1ng t\u1EC7p \u0111\xEDnh k\xE8m email. Xin l\u01B0u \xFD r\u1EB1ng n\xFAt 'Xem H\xF3a \u0111\u01A1n' trong email s\u1EBD kh\xF4ng \u0111\u01B0\u1EE3c hi\u1EC3n th\u1ECB n\u1EEFa khi \u0111\u01B0\u1EE3c b\u1EADt.",invoice_settings_updated:"Invoice Settings updated successfully",retrospective_edits:"Retrospective Edits",allow:"Allow",disable_on_invoice_partial_paid:"Disable after partial payment is recorded",disable_on_invoice_paid:"Disable after full payment is recorded",disable_on_invoice_sent:"Disable after invoice is sent",retrospective_edits_description:" Based on your country's laws or your preference, you can restrict users from editing finalised invoices."},estimates:{title:"\u01AF\u1EDBc t\xEDnh",estimate_number_format:"Estimate Number Format",estimate_number_format_description:"Customize how your estimate number gets generated automatically when you create a new estimate.",preview_estimate_number:"Preview Estimate Number",expiry_date:"Expiry Date",expiry_date_description:"Specify how expiry date is automatically set when you create an estimate.",expiry_date_days:"Estimate Expires after days",set_expiry_date_automatically:"Set Expiry Date Automatically",set_expiry_date_automatically_description:"Enable this if you wish to set expiry date automatically when you create a new estimate.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on estimate creation.",default_estimate_email_body:"N\u1ED9i dung Email \u01AF\u1EDBc t\xEDnh M\u1EB7c \u0111\u1ECBnh",company_address_format:"\u0110\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 c\xF4ng ty",shipping_address_format:"\u0110\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 giao h\xE0ng",billing_address_format:"\u0110\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 thanh to\xE1n",estimate_email_attachment:"G\u1EEDi \u01B0\u1EDBc t\xEDnh d\u01B0\u1EDBi d\u1EA1ng t\u1EC7p \u0111\xEDnh k\xE8m",estimate_email_attachment_setting_description:"B\u1EADt t\xEDnh n\u0103ng n\xE0y n\u1EBFu b\u1EA1n mu\u1ED1n g\u1EEDi \u01B0\u1EDBc t\xEDnh d\u01B0\u1EDBi d\u1EA1ng t\u1EC7p \u0111\xEDnh k\xE8m email. Xin l\u01B0u \xFD r\u1EB1ng n\xFAt 'Xem \u01AF\u1EDBc t\xEDnh' trong email s\u1EBD kh\xF4ng \u0111\u01B0\u1EE3c hi\u1EC3n th\u1ECB n\u1EEFa khi \u0111\u01B0\u1EE3c b\u1EADt.",estimate_settings_updated:"Estimate Settings updated successfully",convert_estimate_options:"Estimate Convert Action",convert_estimate_description:"Specify what happens to the estimate after it gets converted to an invoice.",no_action:"No action",delete_estimate:"Delete estimate",mark_estimate_as_accepted:"Mark estimate as accepted"},payments:{title:"Thanh to\xE1n",payment_number_format:"Payment Number Format",payment_number_format_description:"Customize how your payment number gets generated automatically when you create a new payment.",preview_payment_number:"Preview Payment Number",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on payment creation.",default_payment_email_body:"N\u1ED9i dung Email Thanh to\xE1n M\u1EB7c \u0111\u1ECBnh",company_address_format:"\u0110\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 c\xF4ng ty",from_customer_address_format:"T\u1EEB \u0111\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 kh\xE1ch h\xE0ng",payment_email_attachment:"G\u1EEDi thanh to\xE1n d\u01B0\u1EDBi d\u1EA1ng t\u1EC7p \u0111\xEDnh k\xE8m",payment_email_attachment_setting_description:"B\u1EADt t\xEDnh n\u0103ng n\xE0y n\u1EBFu b\u1EA1n mu\u1ED1n g\u1EEDi bi\xEAn nh\u1EADn thanh to\xE1n d\u01B0\u1EDBi d\u1EA1ng t\u1EC7p \u0111\xEDnh k\xE8m email. Xin l\u01B0u \xFD r\u1EB1ng n\xFAt 'Xem Thanh to\xE1n' trong email s\u1EBD kh\xF4ng \u0111\u01B0\u1EE3c hi\u1EC3n th\u1ECB n\u1EEFa khi \u0111\u01B0\u1EE3c b\u1EADt.",payment_settings_updated:"Payment Settings updated successfully"},items:{title:"M\u1EB7t h\xE0ng",units:"C\xE1c \u0111\u01A1n v\u1ECB",add_item_unit:"Th\xEAm \u0111\u01A1n v\u1ECB m\u1EB7t h\xE0ng",edit_item_unit:"Ch\u1EC9nh s\u1EEDa \u0111\u01A1n v\u1ECB m\u1EB7t h\xE0ng",unit_name:"T\xEAn b\xE0i",item_unit_added:"\u0110\u01A1n v\u1ECB m\u1EB7t h\xE0ng \u0111\xE3 \u0111\u01B0\u1EE3c th\xEAm",item_unit_updated:"\u0110\xE3 c\u1EADp nh\u1EADt \u0111\u01A1n v\u1ECB m\u1EB7t h\xE0ng",item_unit_confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c \u0111\u01A1n v\u1ECB M\u1EB7t h\xE0ng n\xE0y",already_in_use:"\u0110\u01A1n v\u1ECB v\u1EADt ph\u1EA9m \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",deleted_message:"\u0110\u01A1n v\u1ECB m\u1EB7t h\xE0ng \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng"},notes:{title:"Ghi ch\xFA",description:"Ti\u1EBFt ki\u1EC7m th\u1EDDi gian b\u1EB1ng c\xE1ch t\u1EA1o ghi ch\xFA v\xE0 s\u1EED d\u1EE5ng l\u1EA1i ch\xFAng tr\xEAn h\xF3a \u0111\u01A1n, \u01B0\u1EDBc t\xEDnh c\u1EE7a b\u1EA1n",notes:"Ghi ch\xFA",type:"Ki\u1EC3u",add_note:"Th\xEAm ghi ch\xFA",add_new_note:"Th\xEAm ghi ch\xFA m\u1EDBi",name:"T\xEAn",edit_note:"Ch\u1EC9nh s\u1EEDa ghi ch\xFA",note_added:"\u0110\xE3 th\xEAm ghi ch\xFA th\xE0nh c\xF4ng",note_updated:"\u0110\xE3 c\u1EADp nh\u1EADt ghi ch\xFA th\xE0nh c\xF4ng",note_confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c Ghi ch\xFA n\xE0y",already_in_use:"Ghi ch\xFA \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",deleted_message:"\u0110\xE3 x\xF3a ghi ch\xFA th\xE0nh c\xF4ng"}},account_settings:{profile_picture:"\u1EA2nh \u0111\u1EA1i di\u1EC7n",name:"T\xEAn",email:"E-mail",password:"M\u1EADt kh\u1EA9u",confirm_password:"X\xE1c nh\u1EADn m\u1EADt kh\u1EA9u",account_settings:"C\xE0i \u0111\u1EB7t t\xE0i kho\u1EA3n",save:"Ti\u1EBFt ki\u1EC7m",section_description:"B\u1EA1n c\xF3 th\u1EC3 c\u1EADp nh\u1EADt t\xEAn, email c\u1EE7a m\xECnh",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt c\xE0i \u0111\u1EB7t t\xE0i kho\u1EA3n th\xE0nh c\xF4ng"},user_profile:{name:"T\xEAn",email:"E-mail",password:"M\u1EADt kh\u1EA9u",confirm_password:"X\xE1c nh\u1EADn m\u1EADt kh\u1EA9u"},notification:{title:"Th\xF4ng b\xE1o",email:"G\u1EEDi th\xF4ng b\xE1o t\u1EDBi",description:"B\u1EA1n mu\u1ED1n nh\u1EADn th\xF4ng b\xE1o email n\xE0o khi c\xF3 \u0111i\u1EC1u g\xEC \u0111\xF3 thay \u0111\u1ED5i?",invoice_viewed:"H\xF3a \u0111\u01A1n \u0111\xE3 xem",invoice_viewed_desc:"Khi kh\xE1ch h\xE0ng c\u1EE7a b\u1EA1n xem h\xF3a \u0111\u01A1n \u0111\u01B0\u1EE3c g\u1EEDi qua b\u1EA3ng \u0111i\u1EC1u khi\u1EC3n mi\u1EC7ng n\xFAi l\u1EEDa.",estimate_viewed:"\u01AF\u1EDBc t\xEDnh \u0111\xE3 xem",estimate_viewed_desc:"Khi kh\xE1ch h\xE0ng c\u1EE7a b\u1EA1n xem \u01B0\u1EDBc t\xEDnh \u0111\u01B0\u1EE3c g\u1EEDi qua b\u1EA3ng \u0111i\u1EC1u khi\u1EC3n mi\u1EC7ng n\xFAi l\u1EEDa.",save:"Ti\u1EBFt ki\u1EC7m",email_save_message:"Email \u0111\xE3 \u0111\u01B0\u1EE3c l\u01B0u th\xE0nh c\xF4ng",please_enter_email:"Vui l\xF2ng nh\u1EADp Email"},roles:{title:"Roles",description:"Manage the roles & permissions of this company",save:"Save",add_new_role:"Add New Role",role_name:"Role Name",added_on:"Added on",add_role:"Add Role",edit_role:"Edit Role",name:"Name",permission:"Permission | Permissions",select_all:"Select All",none:"None",confirm_delete:"You will not be able to recover this Role",created_message:"Role created successfully",updated_message:"Role updated successfully",deleted_message:"Role deleted successfully",already_in_use:"Role is already in use"},exchange_rate:{exchange_rate:"Exchange Rate",title:"Fix Currency Exchange issues",description:"Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.",drivers:"Drivers",new_driver:"Add New Provider",edit_driver:"Edit Provider",select_driver:"Select Driver",update:"select exchange rate ",providers_description:"Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.",key:"API Key",name:"Name",driver:"Driver",is_default:"IS DEFAULT",currency:"Currencies",exchange_rate_confirm_delete:"You will not be able to recover this driver",created_message:"Provider Created successfully",updated_message:"Provider Updated Successfully",deleted_message:"Provider Deleted Successfully",error:" You cannot Delete Active Driver",default_currency_error:"This currency is already used in one of the Active Provider",exchange_help_text:"Enter exchange rate to convert from {currency} to {baseCurrency}",currency_freak:"Currency Freak",currency_layer:"Currency Layer",open_exchange_rate:"Open Exchange Rate",currency_converter:"Currency Converter",server:"Server",url:"URL",active:"Active",currency_help_text:"This provider will only be used on above selected currencies",currency_in_used:"The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again."},tax_types:{title:"C\xE1c lo\u1EA1i thu\u1EBF",add_tax:"Th\xEAm thu\u1EBF",edit_tax:"Ch\u1EC9nh s\u1EEDa thu\u1EBF",description:"B\u1EA1n c\xF3 th\u1EC3 th\xEAm ho\u1EB7c b\u1EDBt thu\u1EBF t\xF9y \xFD. Crater h\u1ED7 tr\u1EE3 Thu\u1EBF \u0111\u1ED1i v\u1EDBi c\xE1c m\u1EB7t h\xE0ng ri\xEAng l\u1EBB c\u0169ng nh\u01B0 tr\xEAn h\xF3a \u0111\u01A1n.",add_new_tax:"Th\xEAm thu\u1EBF m\u1EDBi",tax_settings:"C\xE0i \u0111\u1EB7t thu\u1EBF",tax_per_item:"Thu\u1EBF m\u1ED7i m\u1EB7t h\xE0ng",tax_name:"T\xEAn thu\u1EBF",compound_tax:"Thu\u1EBF t\u1ED5ng h\u1EE3p",percent:"Ph\u1EA7n tr\u0103m",action:"Ho\u1EA1t \u0111\u1ED9ng",tax_setting_description:"B\u1EADt t\xEDnh n\u0103ng n\xE0y n\u1EBFu b\u1EA1n mu\u1ED1n th\xEAm thu\u1EBF v\xE0o c\xE1c m\u1EE5c h\xF3a \u0111\u01A1n ri\xEAng l\u1EBB. Theo m\u1EB7c \u0111\u1ECBnh, thu\u1EBF \u0111\u01B0\u1EE3c th\xEAm tr\u1EF1c ti\u1EBFp v\xE0o h\xF3a \u0111\u01A1n.",created_message:"Lo\u1EA1i thu\u1EBF \u0111\xE3 \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt th\xE0nh c\xF4ng lo\u1EA1i thu\u1EBF",deleted_message:"\u0110\xE3 x\xF3a th\xE0nh c\xF4ng lo\u1EA1i thu\u1EBF",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c Lo\u1EA1i thu\u1EBF n\xE0y",already_in_use:"Thu\u1EBF \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng"},payment_modes:{title:"Payment Modes",description:"Modes of transaction for payments",add_payment_mode:"Add Payment Mode",edit_payment_mode:"Edit Payment Mode",mode_name:"Mode Name",payment_mode_added:"Payment Mode Added",payment_mode_updated:"Payment Mode Updated",payment_mode_confirm_delete:"You will not be able to recover this Payment Mode",already_in_use:"Payment Mode is already in use",deleted_message:"Payment Mode deleted successfully"},expense_category:{title:"H\u1EA1ng m\u1EE5c Chi ph\xED",action:"Ho\u1EA1t \u0111\u1ED9ng",description:"C\xE1c danh m\u1EE5c \u0111\u01B0\u1EE3c y\xEAu c\u1EA7u \u0111\u1EC3 th\xEAm c\xE1c m\u1EE5c chi ph\xED. B\u1EA1n c\xF3 th\u1EC3 Th\xEAm ho\u1EB7c X\xF3a c\xE1c danh m\u1EE5c n\xE0y t\xF9y theo s\u1EDF th\xEDch c\u1EE7a m\xECnh.",add_new_category:"Th\xEAm danh m\u1EE5c m\u1EDBi",add_category:"th\xEAm th\xEA\u0309 loa\u0323i",edit_category:"Ch\u1EC9nh s\u1EEDa danh m\u1EE5c",category_name:"t\xEAn danh m\u1EE5c",category_description:"S\u1EF1 mi\xEAu t\u1EA3",created_message:"Danh m\u1EE5c Chi ph\xED \u0111\xE3 \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",deleted_message:"\u0110\xE3 x\xF3a th\xE0nh c\xF4ng danh m\u1EE5c chi ph\xED",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt danh m\u1EE5c chi ph\xED th\xE0nh c\xF4ng",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c Danh m\u1EE5c Chi ph\xED n\xE0y",already_in_use:"Danh m\u1EE5c \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng"},preferences:{currency:"Ti\u1EC1n t\u1EC7",default_language:"Ng\xF4n ng\u1EEF m\u1EB7c \u0111\u1ECBnh",time_zone:"M\xFAi gi\u1EDD",fiscal_year:"N\u0103m t\xE0i ch\xEDnh",date_format:"\u0110\u1ECBnh d\u1EA1ng ng\xE0y th\xE1ng",discount_setting:"C\xE0i \u0111\u1EB7t chi\u1EBFt kh\u1EA5u",discount_per_item:"Gi\u1EA3m gi\xE1 cho m\u1ED7i m\u1EB7t h\xE0ng",discount_setting_description:"B\u1EADt t\xEDnh n\u0103ng n\xE0y n\u1EBFu b\u1EA1n mu\u1ED1n th\xEAm Gi\u1EA3m gi\xE1 v\xE0o c\xE1c m\u1EB7t h\xE0ng h\xF3a \u0111\u01A1n ri\xEAng l\u1EBB. Theo m\u1EB7c \u0111\u1ECBnh, Gi\u1EA3m gi\xE1 \u0111\u01B0\u1EE3c th\xEAm tr\u1EF1c ti\u1EBFp v\xE0o h\xF3a \u0111\u01A1n.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"Ti\u1EBFt ki\u1EC7m",preference:"S\u1EDF th\xEDch | S\u1EDF th\xEDch",general_settings:"T\xF9y ch\u1ECDn m\u1EB7c \u0111\u1ECBnh cho h\u1EC7 th\u1ED1ng.",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt th\xE0nh c\xF4ng c\xE1c t\xF9y ch\u1ECDn",select_language:"Ch\u1ECDn ng\xF4n ng\u1EEF",select_time_zone:"Ch\u1ECDn m\xFAi gi\u1EDD",select_date_format:"Ch\u1ECDn \u0111\u1ECBnh d\u1EA1ng ng\xE0y",select_financial_year:"Ch\u1ECDn n\u0103m t\xE0i ch\xEDnh",recurring_invoice_status:"Recurring Invoice Status",create_status:"Create Status",active:"Active",on_hold:"On Hold",update_status:"Update Status",completed:"Completed",company_currency_unchangeable:"Company currency cannot be changed"},update_app:{title:"C\u1EADp nh\u1EADt \u1EE9ng d\u1EE5ng",description:"B\u1EA1n c\xF3 th\u1EC3 d\u1EC5 d\xE0ng c\u1EADp nh\u1EADt Crater b\u1EB1ng c\xE1ch ki\u1EC3m tra b\u1EA3n c\u1EADp nh\u1EADt m\u1EDBi b\u1EB1ng c\xE1ch nh\u1EA5p v\xE0o n\xFAt b\xEAn d\u01B0\u1EDBi",check_update:"Ki\u1EC3m tra c\u1EADp nh\u1EADt",avail_update:"C\u1EADp nh\u1EADt m\u1EDBi c\xF3 s\u1EB5n",next_version:"Phi\xEAn b\u1EA3n ti\u1EBFp theo",requirements:"Y\xEAu c\u1EA7u",update:"C\u1EADp nh\u1EADt b\xE2y gi\u1EDD",update_progress:"\u0110ang c\u1EADp nh\u1EADt ...",progress_text:"N\xF3 s\u1EBD ch\u1EC9 m\u1EA5t m\u1ED9t v\xE0i ph\xFAt. Vui l\xF2ng kh\xF4ng l\xE0m m\u1EDBi m\xE0n h\xECnh ho\u1EB7c \u0111\xF3ng c\u1EEDa s\u1ED5 tr\u01B0\u1EDBc khi c\u1EADp nh\u1EADt k\u1EBFt th\xFAc",update_success:"\u1EE8ng d\u1EE5ng \u0111\xE3 \u0111\u01B0\u1EE3c c\u1EADp nh\u1EADt! Vui l\xF2ng \u0111\u1EE3i trong khi c\u1EEDa s\u1ED5 tr\xECnh duy\u1EC7t c\u1EE7a b\u1EA1n \u0111\u01B0\u1EE3c t\u1EA3i l\u1EA1i t\u1EF1 \u0111\u1ED9ng.",latest_message:"Kh\xF4ng c\xF3 b\u1EA3n c\u1EADp nh\u1EADt n\xE0o! B\u1EA1n \u0111ang s\u1EED d\u1EE5ng phi\xEAn b\u1EA3n m\u1EDBi nh\u1EA5t.",current_version:"Phi\xEAn b\u1EA3n hi\u1EC7n t\u1EA1i",download_zip_file:"T\u1EA3i xu\u1ED1ng t\u1EC7p ZIP",unzipping_package:"G\xF3i gi\u1EA3i n\xE9n",copying_files:"Sao ch\xE9p c\xE1c t\u1EADp tin",deleting_files:"X\xF3a c\xE1c t\u1EC7p kh\xF4ng s\u1EED d\u1EE5ng",running_migrations:"Ch\u1EA1y di c\u01B0",finishing_update:"C\u1EADp nh\u1EADt k\u1EBFt th\xFAc",update_failed:"C\u1EADp nh\u1EADt kh\xF4ng th\xE0nh c\xF4ng",update_failed_text:"L\u1EA5y l\xE0m ti\u1EBFc! C\u1EADp nh\u1EADt c\u1EE7a b\u1EA1n kh\xF4ng th\xE0nh c\xF4ng v\xE0o: b\u01B0\u1EDBc {step}",update_warning:"All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating."},backup:{title:"Sao l\u01B0u | Sao l\u01B0u",description:"B\u1EA3n sao l\u01B0u l\xE0 m\u1ED9t t\u1EC7p zip ch\u1EE9a t\u1EA5t c\u1EA3 c\xE1c t\u1EC7p trong th\u01B0 m\u1EE5c b\u1EA1n ch\u1EC9 \u0111\u1ECBnh c\xF9ng v\u1EDBi m\u1ED9t k\u1EBFt xu\u1EA5t c\u01A1 s\u1EDF d\u1EEF li\u1EC7u c\u1EE7a b\u1EA1n",new_backup:"Th\xEAm b\u1EA3n sao l\u01B0u m\u1EDBi",create_backup:"T\u1EA1o b\u1EA3n sao",select_backup_type:"Ch\u1ECDn lo\u1EA1i sao l\u01B0u",backup_confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c B\u1EA3n sao l\u01B0u n\xE0y",path:"con \u0111\u01B0\u1EDDng",new_disk:"\u0110\u0129a m\u1EDBi",created_at:"\u0111\u01B0\u1EE3c t\u1EA1o ra t\u1EA1i",size:"k\xEDch th\u01B0\u1EDBc",dropbox:"dropbox",local:"\u0111\u1ECBa ph\u01B0\u01A1ng",healthy:"kh\u1ECFe m\u1EA1nh",amount_of_backups:"l\u01B0\u1EE3ng sao l\u01B0u",newest_backups:"b\u1EA3n sao l\u01B0u m\u1EDBi nh\u1EA5t",used_storage:"l\u01B0u tr\u1EEF \u0111\xE3 s\u1EED d\u1EE5ng",select_disk:"Ch\u1ECDn \u0111\u0129a",action:"Ho\u1EA1t \u0111\u1ED9ng",deleted_message:"\u0110\xE3 x\xF3a b\u1EA3n sao l\u01B0u th\xE0nh c\xF4ng",created_message:"\u0110\xE3 t\u1EA1o th\xE0nh c\xF4ng b\u1EA3n sao l\u01B0u",invalid_disk_credentials:"Th\xF4ng tin \u0111\u0103ng nh\u1EADp kh\xF4ng h\u1EE3p l\u1EC7 c\u1EE7a \u0111\u0129a \u0111\xE3 ch\u1ECDn"},disk:{title:"\u0110\u0129a t\u1EADp tin | \u0110\u0129a T\u1EC7p",description:"Theo m\u1EB7c \u0111\u1ECBnh, Crater s\u1EBD s\u1EED d\u1EE5ng \u0111\u0129a c\u1EE5c b\u1ED9 c\u1EE7a b\u1EA1n \u0111\u1EC3 l\u01B0u c\xE1c b\u1EA3n sao l\u01B0u, \u1EA3nh \u0111\u1EA1i di\u1EC7n v\xE0 c\xE1c t\u1EC7p h\xECnh \u1EA3nh kh\xE1c. B\u1EA1n c\xF3 th\u1EC3 \u0111\u1ECBnh c\u1EA5u h\xECnh nhi\u1EC1u h\u01A1n m\u1ED9t tr\xECnh \u0111i\u1EC1u khi\u1EC3n \u0111\u0129a nh\u01B0 DigitalOcean, S3 v\xE0 Dropbox theo s\u1EDF th\xEDch c\u1EE7a m\xECnh.",created_at:"\u0111\u01B0\u1EE3c t\u1EA1o ra t\u1EA1i",dropbox:"dropbox",name:"T\xEAn",driver:"Ng\u01B0\u1EDDi l\xE1i xe",disk_type:"Ki\u1EC3u",disk_name:"T\xEAn \u0111\u0129a",new_disk:"Th\xEAm \u0111\u0129a m\u1EDBi",filesystem_driver:"Tr\xECnh \u0111i\u1EC1u khi\u1EC3n h\u1EC7 th\u1ED1ng t\u1EADp tin",local_driver:"Tr\xECnh \u0111i\u1EC1u khi\u1EC3n \u0111\u1ECBa ph\u01B0\u01A1ng",local_root:"G\u1ED1c c\u1EE5c b\u1ED9",public_driver:"T\xE0i x\u1EBF c\xF4ng c\u1ED9ng",public_root:"G\u1ED1c c\xF4ng khai",public_url:"URL c\xF4ng khai",public_visibility:"Hi\u1EC3n th\u1ECB c\xF4ng khai",media_driver:"Tr\xECnh \u0111i\u1EC1u khi\u1EC3n ph\u01B0\u01A1ng ti\u1EC7n",media_root:"G\u1ED1c ph\u01B0\u01A1ng ti\u1EC7n",aws_driver:"Tr\xECnh \u0111i\u1EC1u khi\u1EC3n AWS",aws_key:"Kh\xF3a AWS",aws_secret:"B\xED m\u1EADt AWS",aws_region:"Khu v\u1EF1c AWS",aws_bucket:"Nh\xF3m AWS",aws_root:"G\u1ED1c AWS",do_spaces_type:"L\xE0m ki\u1EC3u Spaces",do_spaces_key:"Do ph\xEDm Spaces",do_spaces_secret:"L\xE0m b\xED m\u1EADt v\u1EC1 kh\xF4ng gian",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Lo\u1EA1i h\u1ED9p ch\u1EE9a",dropbox_token:"M\xE3 th\xF4ng b\xE1o Dropbox",dropbox_key:"Kh\xF3a Dropbox",dropbox_secret:"B\xED m\u1EADt Dropbox",dropbox_app:"\u1EE8ng d\u1EE5ng Dropbox",dropbox_root:"G\u1ED1c Dropbox",default_driver:"Tr\xECnh \u0111i\u1EC1u khi\u1EC3n m\u1EB7c \u0111\u1ECBnh",is_default:"L\xC0 \u0110\u1ECANH NGH\u0128A",set_default_disk:"\u0110\u1EB7t \u0111\u0129a m\u1EB7c \u0111\u1ECBnh",set_default_disk_confirm:"\u0110\u0129a n\xE0y s\u1EBD \u0111\u01B0\u1EE3c \u0111\u1EB7t l\xE0m m\u1EB7c \u0111\u1ECBnh v\xE0 t\u1EA5t c\u1EA3 c\xE1c t\u1EC7p PDF m\u1EDBi s\u1EBD \u0111\u01B0\u1EE3c l\u01B0u tr\xEAn \u0111\u0129a n\xE0y",success_set_default_disk:"\u0110\u0129a \u0111\u01B0\u1EE3c \u0111\u1EB7t l\xE0m m\u1EB7c \u0111\u1ECBnh th\xE0nh c\xF4ng",save_pdf_to_disk:"L\u01B0u PDF v\xE0o \u0111\u0129a",disk_setting_description:"B\u1EADt t\xEDnh n\u0103ng n\xE0y, n\u1EBFu b\u1EA1n mu\u1ED1n l\u01B0u m\u1ED9t b\u1EA3n sao c\u1EE7a m\u1ED7i H\xF3a \u0111\u01A1n, \u01AF\u1EDBc t\xEDnh",select_disk:"Ch\u1ECDn \u0111\u0129a",disk_settings:"C\xE0i \u0111\u1EB7t \u0111\u0129a",confirm_delete:"T\u1EC7p hi\u1EC7n c\xF3 c\u1EE7a b\u1EA1n",action:"Ho\u1EA1t \u0111\u1ED9ng",edit_file_disk:"Ch\u1EC9nh s\u1EEDa \u0110\u0129a T\u1EC7p",success_create:"\u0110\xE3 th\xEAm \u0111\u0129a th\xE0nh c\xF4ng",success_update:"\u0110\xE3 c\u1EADp nh\u1EADt \u0111\u0129a th\xE0nh c\xF4ng",error:"Th\xEAm \u0111\u0129a kh\xF4ng th\xE0nh c\xF4ng",deleted_message:"\u0110\u0129a T\u1EC7p \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng",disk_variables_save_successfully:"\u0110\xE3 c\u1EA5u h\xECnh \u0111\u0129a th\xE0nh c\xF4ng",disk_variables_save_error:"C\u1EA5u h\xECnh \u0111\u0129a kh\xF4ng th\xE0nh c\xF4ng.",invalid_disk_credentials:"Th\xF4ng tin \u0111\u0103ng nh\u1EADp kh\xF4ng h\u1EE3p l\u1EC7 c\u1EE7a \u0111\u0129a \u0111\xE3 ch\u1ECDn"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},ek={account_info:"th\xF4ng tin t\xE0i kho\u1EA3n",account_info_desc:"Th\xF4ng tin chi ti\u1EBFt d\u01B0\u1EDBi \u0111\xE2y s\u1EBD \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng \u0111\u1EC3 t\u1EA1o t\xE0i kho\u1EA3n Qu\u1EA3n tr\u1ECB vi\xEAn ch\xEDnh. Ngo\xE0i ra, b\u1EA1n c\xF3 th\u1EC3 thay \u0111\u1ED5i th\xF4ng tin chi ti\u1EBFt b\u1EA5t c\u1EE9 l\xFAc n\xE0o sau khi \u0111\u0103ng nh\u1EADp.",name:"T\xEAn",email:"E-mail",password:"M\u1EADt kh\u1EA9u",confirm_password:"X\xE1c nh\u1EADn m\u1EADt kh\u1EA9u",save_cont:"Ti\u1EBFt ki\u1EC7m",company_info:"Th\xF4ng tin c\xF4ng ty",company_info_desc:"Th\xF4ng tin n\xE0y s\u1EBD \u0111\u01B0\u1EE3c hi\u1EC3n th\u1ECB tr\xEAn h\xF3a \u0111\u01A1n. L\u01B0u \xFD r\u1EB1ng b\u1EA1n c\xF3 th\u1EC3 ch\u1EC9nh s\u1EEDa \u0111i\u1EC1u n\xE0y sau tr\xEAn trang c\xE0i \u0111\u1EB7t.",company_name:"T\xEAn c\xF4ng ty",company_logo:"Logo c\xF4ng ty",logo_preview:"Xem tr\u01B0\u1EDBc Logo",preferences:"S\u1EDF th\xEDch",preferences_desc:"T\xF9y ch\u1ECDn m\u1EB7c \u0111\u1ECBnh cho h\u1EC7 th\u1ED1ng.",currency_set_alert:"The company's currency cannot be changed later.",country:"Qu\u1ED1c gia",state:"Ti\u1EC3u bang",city:"Tp.",address:"\u0110\u1ECBa ch\u1EC9",street:"Ph\u1ED11 | Street2",phone:"\u0110i\u1EC7n tho\u1EA1i",zip_code:"M\xE3 B\u01B0u Ch\xEDnh",go_back:"Quay l\u1EA1i",currency:"Ti\u1EC1n t\u1EC7",language:"Ng\xF4n ng\u1EEF",time_zone:"M\xFAi gi\u1EDD",fiscal_year:"N\u0103m t\xE0i ch\xEDnh",date_format:"\u0110\u1ECBnh d\u1EA1ng ng\xE0y th\xE1ng",from_address:"T\u1EEB \u0111\u1ECBa ch\u1EC9",username:"t\xEAn t\xE0i kho\u1EA3n",next:"K\u1EBF ti\u1EBFp",continue:"Ti\u1EBFp t\u1EE5c",skip:"Nh\u1EA3y",database:{database:"URL trang web",connection:"K\u1EBFt n\u1ED1i c\u01A1 s\u1EDF d\u1EEF li\u1EC7u",host:"M\xE1y ch\u1EE7 c\u01A1 s\u1EDF d\u1EEF li\u1EC7u",port:"C\u1ED5ng c\u01A1 s\u1EDF d\u1EEF li\u1EC7u",password:"M\u1EADt kh\u1EA9u c\u01A1 s\u1EDF d\u1EEF li\u1EC7u",app_url:"URL \u1EE9ng d\u1EE5ng",app_domain:"Mi\u1EC1n \u1EE9ng d\u1EE5ng",username:"T\xEAn ng\u01B0\u1EDDi d\xF9ng c\u01A1 s\u1EDF d\u1EEF li\u1EC7u",db_name:"T\xEAn c\u01A1 s\u1EDF d\u1EEF li\u1EC7u",db_path:"\u0110\u01B0\u1EDDng d\u1EABn c\u01A1 s\u1EDF d\u1EEF li\u1EC7u",desc:"T\u1EA1o c\u01A1 s\u1EDF d\u1EEF li\u1EC7u tr\xEAn m\xE1y ch\u1EE7 c\u1EE7a b\u1EA1n v\xE0 \u0111\u1EB7t th\xF4ng tin \u0111\u0103ng nh\u1EADp b\u1EB1ng bi\u1EC3u m\u1EABu b\xEAn d\u01B0\u1EDBi."},permissions:{permissions:"Quy\u1EC1n",permission_confirm_title:"B\u1EA1n c\xF3 ch\u1EAFc ch\u1EAFn mu\u1ED1n ti\u1EBFp t\u1EE5c kh\xF4ng?",permission_confirm_desc:"Ki\u1EC3m tra quy\u1EC1n th\u01B0 m\u1EE5c kh\xF4ng th\xE0nh c\xF4ng",permission_desc:"D\u01B0\u1EDBi \u0111\xE2y l\xE0 danh s\xE1ch c\xE1c quy\u1EC1n \u0111\u1ED1i v\u1EDBi th\u01B0 m\u1EE5c \u0111\u01B0\u1EE3c y\xEAu c\u1EA7u \u0111\u1EC3 \u1EE9ng d\u1EE5ng ho\u1EA1t \u0111\u1ED9ng. N\u1EBFu ki\u1EC3m tra quy\u1EC1n kh\xF4ng th\xE0nh c\xF4ng, h\xE3y \u0111\u1EA3m b\u1EA3o c\u1EADp nh\u1EADt quy\u1EC1n th\u01B0 m\u1EE5c c\u1EE7a b\u1EA1n."},verify_domain:{title:"Domain Verification",desc:"Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.",app_domain:"App Domain",verify_now:"Verify Now",success:"Domain Verify Successfully.",failed:"Domain verification failed. Please enter valid domain name.",verify_and_continue:"Verify And Continue"},mail:{host:"M\xE1y ch\u1EE7 Th\u01B0",port:"C\u1ED5ng th\u01B0",driver:"Tr\xECnh \u0111i\u1EC1u khi\u1EC3n Th\u01B0",secret:"B\xED m\u1EADt",mailgun_secret:"B\xED m\u1EADt Mailgun",mailgun_domain:"Mi\u1EC1n",mailgun_endpoint:"\u0110i\u1EC3m cu\u1ED1i c\u1EE7a Mailgun",ses_secret:"B\xED m\u1EADt SES",ses_key:"Kh\xF3a SES",password:"M\u1EADt kh\u1EA9u th\u01B0",username:"T\xEAn ng\u01B0\u1EDDi d\xF9ng th\u01B0",mail_config:"C\u1EA5u h\xECnh th\u01B0",from_name:"T\u1EEB t\xEAn th\u01B0",from_mail:"T\u1EEB \u0111\u1ECBa ch\u1EC9 th\u01B0",encryption:"M\xE3 h\xF3a Th\u01B0",mail_config_desc:"D\u01B0\u1EDBi \u0111\xE2y l\xE0 bi\u1EC3u m\u1EABu \u0110\u1ECBnh c\u1EA5u h\xECnh tr\xECnh \u0111i\u1EC1u khi\u1EC3n Email \u0111\u1EC3 g\u1EEDi email t\u1EEB \u1EE9ng d\u1EE5ng. B\u1EA1n c\u0169ng c\xF3 th\u1EC3 \u0111\u1ECBnh c\u1EA5u h\xECnh c\xE1c nh\xE0 cung c\u1EA5p b\xEAn th\u1EE9 ba nh\u01B0 Sendgrid, SES, v.v."},req:{system_req:"y\xEAu c\u1EA7u h\u1EC7 th\u1ED1ng",php_req_version:"Php (b\u1EAFt bu\u1ED9c ph\u1EA3i c\xF3 phi\xEAn b\u1EA3n {version})",check_req:"Ki\u1EC3m tra y\xEAu c\u1EA7u",system_req_desc:"Crater c\xF3 m\u1ED9t s\u1ED1 y\xEAu c\u1EA7u m\xE1y ch\u1EE7. \u0110\u1EA3m b\u1EA3o r\u1EB1ng m\xE1y ch\u1EE7 c\u1EE7a b\u1EA1n c\xF3 phi\xEAn b\u1EA3n php b\u1EAFt bu\u1ED9c v\xE0 t\u1EA5t c\u1EA3 c\xE1c ph\u1EA7n m\u1EDF r\u1ED9ng \u0111\u01B0\u1EE3c \u0111\u1EC1 c\u1EADp b\xEAn d\u01B0\u1EDBi."},errors:{migrate_failed:"Di chuy\u1EC3n kh\xF4ng th\xE0nh c\xF4ng",database_variables_save_error:"Kh\xF4ng th\u1EC3 ghi c\u1EA5u h\xECnh v\xE0o t\u1EC7p .env. Vui l\xF2ng ki\u1EC3m tra quy\u1EC1n \u0111\u1ED1i v\u1EDBi t\u1EC7p c\u1EE7a n\xF3",mail_variables_save_error:"C\u1EA5u h\xECnh email kh\xF4ng th\xE0nh c\xF4ng.",connection_failed:"K\u1EBFt n\u1ED1i c\u01A1 s\u1EDF d\u1EEF li\u1EC7u kh\xF4ng th\xE0nh c\xF4ng",database_should_be_empty:"C\u01A1 s\u1EDF d\u1EEF li\u1EC7u ph\u1EA3i tr\u1ED1ng"},success:{mail_variables_save_successfully:"Email \u0111\u01B0\u1EE3c \u0111\u1ECBnh c\u1EA5u h\xECnh th\xE0nh c\xF4ng",database_variables_save_successfully:"\u0110\xE3 c\u1EA5u h\xECnh th\xE0nh c\xF4ng c\u01A1 s\u1EDF d\u1EEF li\u1EC7u."}},tk={invalid_phone:"S\u1ED1 \u0111i\u1EC7n tho\u1EA1i kh\xF4ng h\u1EE3p l\u1EC7",invalid_url:"Url kh\xF4ng h\u1EE3p l\u1EC7 (v\xED d\u1EE5: http://www.crater.com)",invalid_domain_url:"Url kh\xF4ng h\u1EE3p l\u1EC7 (v\xED d\u1EE5: crater.com)",required:"L\u0129nh v\u1EF1c \u0111\u01B0\u1EE3c y\xEAu c\u1EA7u",email_incorrect:"Email kh\xF4ng ch\xEDnh x\xE1c.",email_already_taken:"L\xE1 th\u01B0 \u0111\xE3 \u0111\u01B0\u1EE3c l\u1EA5y \u0111i.",email_does_not_exist:"Ng\u01B0\u1EDDi d\xF9ng c\xF3 email \u0111\xE3 cho kh\xF4ng t\u1ED3n t\u1EA1i",item_unit_already_taken:"T\xEAn \u0111\u01A1n v\u1ECB m\u1EB7t h\xE0ng n\xE0y \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",payment_mode_already_taken:"T\xEAn ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n n\xE0y \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",send_reset_link:"G\u1EEDi li\xEAn k\u1EBFt \u0111\u1EB7t l\u1EA1i",not_yet:"Ch\u01B0a? G\u1EEDi l\u1EA1i",password_min_length:"M\u1EADt kh\u1EA9u ph\u1EA3i ch\u1EE9a {count} k\xFD t\u1EF1",name_min_length:"T\xEAn ph\u1EA3i c\xF3 \xEDt nh\u1EA5t {count} ch\u1EEF c\xE1i.",prefix_min_length:"Prefix must have at least {count} letters.",enter_valid_tax_rate:"Nh\u1EADp thu\u1EBF su\u1EA5t h\u1EE3p l\u1EC7",numbers_only:"Ch\u1EC9 s\u1ED1.",characters_only:"Ch\u1EC9 nh\xE2n v\u1EADt.",password_incorrect:"M\u1EADt kh\u1EA9u ph\u1EA3i gi\u1ED1ng h\u1EC7t nhau",password_length:"M\u1EADt kh\u1EA9u ph\u1EA3i d\xE0i {count} k\xFD t\u1EF1.",qty_must_greater_than_zero:"S\u1ED1 l\u01B0\u1EE3ng ph\u1EA3i l\u1EDBn h\u01A1n kh\xF4ng.",price_greater_than_zero:"Gi\xE1 ph\u1EA3i l\u1EDBn h\u01A1n 0.",payment_greater_than_zero:"Kho\u1EA3n thanh to\xE1n ph\u1EA3i l\u1EDBn h\u01A1n 0.",payment_greater_than_due_amount:"Thanh to\xE1n \u0111\xE3 nh\u1EADp nhi\u1EC1u h\u01A1n s\u1ED1 ti\u1EC1n \u0111\u1EBFn h\u1EA1n c\u1EE7a h\xF3a \u0111\u01A1n n\xE0y.",quantity_maxlength:"S\u1ED1 l\u01B0\u1EE3ng kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 20 ch\u1EEF s\u1ED1.",price_maxlength:"Gi\xE1 kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 20 ch\u1EEF s\u1ED1.",price_minvalue:"Gi\xE1 ph\u1EA3i l\u1EDBn h\u01A1n 0.",amount_maxlength:"S\u1ED1 ti\u1EC1n kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 20 ch\u1EEF s\u1ED1.",amount_minvalue:"S\u1ED1 ti\u1EC1n ph\u1EA3i l\u1EDBn h\u01A1n 0.",discount_maxlength:"Discount should not be greater than max discount",description_maxlength:"M\xF4 t\u1EA3 kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 65.000 k\xFD t\u1EF1.",subject_maxlength:"Ch\u1EE7 \u0111\u1EC1 kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 100 k\xFD t\u1EF1.",message_maxlength:"Tin nh\u1EAFn kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 255 k\xFD t\u1EF1.",maximum_options_error:"\u0110\xE3 ch\u1ECDn t\u1ED1i \u0111a {max} t\xF9y ch\u1ECDn. \u0110\u1EA7u ti\xEAn, h\xE3y x\xF3a m\u1ED9t t\xF9y ch\u1ECDn \u0111\xE3 ch\u1ECDn \u0111\u1EC3 ch\u1ECDn m\u1ED9t t\xF9y ch\u1ECDn kh\xE1c.",notes_maxlength:"Ghi ch\xFA kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 65.000 k\xFD t\u1EF1.",address_maxlength:"\u0110\u1ECBa ch\u1EC9 kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 255 k\xFD t\u1EF1.",ref_number_maxlength:"S\u1ED1 tham chi\u1EBFu kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 255 k\xFD t\u1EF1.",prefix_maxlength:"Ti\u1EC1n t\u1ED1 kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 5 k\xFD t\u1EF1.",something_went_wrong:"c\xF3 g\xEC \u0111\xF3 kh\xF4ng \u1ED5n",number_length_minvalue:"Number length should be greater than 0",at_least_one_ability:"Please select atleast one Permission.",valid_driver_key:"Please enter a valid {driver} key.",valid_exchange_rate:"Please enter a valid exchange rate.",company_name_not_same:"Company name must match with given name."},ak={starter_plan:"This feature is available on Starter plan and onwards!",invalid_provider_key:"Please Enter Valid Provider API Key.",estimate_number_used:"The estimate number has already been taken.",invoice_number_used:"The invoice number has already been taken.",payment_attached:"This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.",payment_number_used:"The payment number has already been taken.",name_already_taken:"The name has already been taken.",receipt_does_not_exist:"Receipt does not exist.",customer_cannot_be_changed_after_payment_is_added:"Customer cannot be change after payment is added",invalid_credentials:"Invalid Credentials.",not_allowed:"Not Allowed",login_invalid_credentials:"These credentials do not match our records.",enter_valid_cron_format:"Please enter a valid cron format",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},ik="\u01AF\u1EDBc t\xEDnh",nk="S\u1ED1 \u01B0\u1EDBc t\xEDnh",sk="Ng\xE0y \u01B0\u1EDBc t\xEDnh",ok="Ng\xE0y h\u1EBFt h\u1EA1n",rk="H\xF3a \u0111\u01A1n",dk="S\u1ED1 h\xF3a \u0111\u01A1n",lk="Ng\xE0y l\u1EADp h\xF3a \u0111\u01A1n",ck="Ng\xE0y \u0111\xE1o h\u1EA1n",_k="Ghi ch\xFA",uk="M\u1EB7t h\xE0ng",mk="\u0110\u1ECBnh l\u01B0\u1EE3ng",pk="Gi\xE1 b\xE1n",gk="Gi\u1EA3m gi\xE1",fk="S\u1ED1 ti\u1EC1n",vk="T\u1ED5ng ph\u1EE5",hk="To\xE0n b\u1ED9",yk="Thanh to\xE1n",bk="H\xD3A \u0110\u01A0N THANH TO\xC1N",kk="Ng\xE0y thanh to\xE1n",wk="S\u1ED1 ti\u1EC1n ph\u1EA3i tr\u1EA3",xk="Ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n",zk="S\u1ED1 ti\u1EC1n nh\u1EADn \u0111\u01B0\u1EE3c",Sk="B\xC1O C\xC1O CHI PH\xCD",Pk="T\u1ED4NG CHI PH\xCD",jk="L\u1EE2I NHU\u1EACN",Ak="B\xE1o c\xE1o kh\xE1ch h\xE0ng b\xE1n h\xE0ng",Dk="B\xE1o c\xE1o m\u1EB7t h\xE0ng b\xE1n h\xE0ng",Ck="B\xE1o c\xE1o T\xF3m t\u1EAFt Thu\u1EBF",Ek="THU NH\u1EACP = EARNINGS",Ik="L\u1EE2I NHU\u1EACN R\xD2NG",Nk="B\xE1o c\xE1o b\xE1n h\xE0ng: B\u1EDFi kh\xE1ch h\xE0ng",Tk="T\u1ED4NG DOANH S\u1ED0 B\xC1N H\xC0NG",Rk="B\xE1o c\xE1o b\xE1n h\xE0ng: Theo m\u1EB7t h\xE0ng",Mk="B\xC1O C\xC1O THU\u1EBE",Fk="T\u1ED4NG THU\u1EBE",$k="C\xE1c lo\u1EA1i thu\u1EBF",Uk="Chi ph\xED",Vk="Hoa \u0111\u01A1n \u0111\xEA\u0309,",Ok="T\xE0u,",Lk="Nh\xE2\u0323n \u0111\u01B0\u01A1\u0323c t\u01B0:",Bk="Tax";var qk={navigation:Rb,general:Mb,dashboard:Fb,tax_types:$b,global_search:Ub,company_switcher:Vb,dateRange:Ob,customers:Lb,items:Bb,estimates:qb,invoices:Kb,recurring_invoices:Wb,payments:Zb,expenses:Hb,login:Yb,modules:Gb,users:Jb,reports:Qb,settings:Xb,wizard:ek,validation:tk,errors:ak,pdf_estimate_label:ik,pdf_estimate_number:nk,pdf_estimate_date:sk,pdf_estimate_expire_date:ok,pdf_invoice_label:rk,pdf_invoice_number:dk,pdf_invoice_date:lk,pdf_invoice_due_date:ck,pdf_notes:_k,pdf_items_label:uk,pdf_quantity_label:mk,pdf_price_label:pk,pdf_discount_label:gk,pdf_amount_label:fk,pdf_subtotal:vk,pdf_total:hk,pdf_payment_label:yk,pdf_payment_receipt_label:bk,pdf_payment_date:kk,pdf_payment_number:wk,pdf_payment_mode:xk,pdf_payment_amount_received_label:zk,pdf_expense_report_label:Sk,pdf_total_expenses_label:Pk,pdf_profit_loss_label:jk,pdf_sales_customers_label:Ak,pdf_sales_items_label:Dk,pdf_tax_summery_label:Ck,pdf_income_label:Ek,pdf_net_profit_label:Ik,pdf_customer_sales_report:Nk,pdf_total_sales_label:Tk,pdf_item_sales_label:Rk,pdf_tax_report_label:Mk,pdf_total_tax_label:Fk,pdf_tax_types_label:$k,pdf_expenses_label:Uk,pdf_bill_to:Vk,pdf_ship_to:Ok,pdf_received_from:Lk,pdf_tax_label:Bk};const Kk={dashboard:"\u03A4\u03B1\u03BC\u03C0\u03BB\u03CC",customers:"\u03A0\u03B5\u03BB\u03AC\u03C4\u03B5\u03C2",items:"\u03A0\u03C1\u03BF\u03CA\u03CC\u03BD\u03C4\u03B1",invoices:"\u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1","recurring-invoices":"\u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1",expenses:"\u0388\u03BE\u03BF\u03B4\u03B1",estimates:"\u0395\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",payments:"\u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AD\u03C2",reports:"\u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AD\u03C2",settings:"\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2",logout:"\u0391\u03C0\u03BF\u03C3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7",users:"\u03A7\u03C1\u03AE\u03C3\u03C4\u03B5\u03C2",modules:"Modules"},Wk={add_company:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u0395\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2",view_pdf:"\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE PDF",copy_pdf_url:"\u0391\u03BD\u03C4\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE \u03C3\u03C5\u03BD\u03B4\u03AD\u03C3\u03BC\u03BF\u03C5 PDF",download_pdf:"\u039B\u03AE\u03C8\u03B7 PDF",save:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7",create:"\u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1",cancel:"\u0391\u03BA\u03CD\u03C1\u03C9\u03C3\u03B7",update:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7",deselect:"\u0391\u03C0\u03BF\u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE",download:"\u039A\u03B1\u03C4\u03B5\u03B2\u03AC\u03C3\u03C4\u03B5 \u03C4\u03BF",from_date:"\u0391\u03C0\u03CC \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",to_date:"\u0388\u03C9\u03C2 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",from:"A\u03C0\u03CC",to:"\u03A0\u03C1\u03BF\u03C2",ok:"\u039F\u03BA",yes:"\u039D\u03B1\u03B9",no:"\u038C\u03C7\u03B9",sort_by:"\u03A4\u03B1\u03BE\u03B9\u03BD\u03CC\u03BC\u03B7\u03C3\u03B7 \u03BA\u03B1\u03C4\u03AC",ascending:"\u0391\u03CD\u03BE\u03BF\u03C5\u03C3\u03B1",descending:"\u03A6\u03B8\u03AF\u03BD\u03BF\u03C5\u03C3\u03B1",subject:"\u0398\u03AD\u03BC\u03B1",body:"\u03A3\u03CE\u03BC\u03B1",message:"\u039C\u03AE\u03BD\u03C5\u03BC\u03B1",send:"\u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE",preview:"\u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03C3\u03BA\u03CC\u03C0\u03B7\u03C3\u03B7",go_back:"\u0395\u03C0\u03B9\u03C3\u03C4\u03C1\u03BF\u03C6\u03AE",back_to_login:"\u03A0\u03AF\u03C3\u03C9 \u03C3\u03C4\u03B7\u03BD \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1 \u03A3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7\u03C2;",home:"\u0391\u03C1\u03C7\u03B9\u03BA\u03AE",filter:"\u03A6\u03AF\u03BB\u03C4\u03C1\u03B1",delete:"\u0394\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE",edit:"\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1",view:"\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE",add_new_item:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039D\u03AD\u03BF\u03C5 \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5",clear_all:"\u0395\u03BA\u03BA\u03B1\u03B8\u03AC\u03C1\u03B9\u03C3\u03B7 \u03CC\u03BB\u03C9\u03BD",showing:"\u0395\u03BC\u03C6\u03B1\u03BD\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9",of:"\u03C4\u03BF\u03C5",actions:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B5\u03C2",subtotal:"\u039C\u03B5\u03C1\u03B9\u03BA\u03CC \u03A3\u03CD\u03BD\u03BF\u03BB\u03BF",discount:"\u0388\u039A\u03A0\u03A4\u03A9\u03A3\u0397",fixed:"\u03A3\u03C4\u03B1\u03B8\u03B5\u03C1\u03CC",percentage:"\u03A0\u03BF\u03C3\u03BF\u03C3\u03C4\u03CC",tax:"\u03A6\u039F\u03A1\u039F\u03A3",total_amount:"\u03A3\u03A5\u039D\u039F\u039B\u0399\u039A\u039F \u03A0\u039F\u03A3\u039F",bill_to:"\u03A7\u03C1\u03AD\u03C9\u03C3\u03B7 \u03C3\u03B5",ship_to:"\u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE \u03C3\u03B5",due:"\u039F\u03C6\u03B5\u03B9\u03BB\u03CC\u03BC\u03B5\u03BD\u03BF",draft:"\u03A0\u03C1\u03CC\u03C7\u03B5\u03B9\u03C1\u03BF",sent:"\u0391\u03C0\u03B5\u03C3\u03C4\u03B1\u03BB\u03BC\u03AD\u03BD\u03B1",all:"\u038C\u03BB\u03B1",select_all:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u038C\u03BB\u03C9\u03BD",select_template:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03A0\u03C1\u03BF\u03C4\u03CD\u03C0\u03BF\u03C5",choose_file:"\u039A\u03AC\u03BD\u03C4\u03B5 \u03BA\u03BB\u03B9\u03BA \u03B5\u03B4\u03CE \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B5\u03C0\u03B9\u03BB\u03AD\u03BE\u03B5\u03C4\u03B5 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF",choose_template:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03AD\u03BD\u03B1 \u03C0\u03C1\u03CC\u03C4\u03C5\u03C0\u03BF",choose:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5",remove:"\u039A\u03B1\u03C4\u03AC\u03C1\u03B3\u03B7\u03C3\u03B7",select_a_status:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03BA\u03B1\u03C4\u03AC\u03C3\u03C4\u03B1\u03C3\u03B7",select_a_tax:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03C6\u03CC\u03C1\u03BF",search:"\u0391\u03BD\u03B1\u03B6\u03AE\u03C4\u03B7\u03C3\u03B7",are_you_sure:"\u0395\u03AF\u03C3\u03C4\u03B5 \u03C3\u03AF\u03B3\u03BF\u03C5\u03C1\u03BF\u03C2/\u03B7;",list_is_empty:"\u0397 \u03BB\u03AF\u03C3\u03C4\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BA\u03B5\u03BD\u03AE.",no_tax_found:"\u0394\u03B5\u03BD \u03B2\u03C1\u03AD\u03B8\u03B7\u03BA\u03B5 \u03C6\u03CC\u03C1\u03BF\u03C2!",four_zero_four:"404",you_got_lost:"\u039F\u03C5\u03C0\u03C2! \u0388\u03C7\u03B5\u03C4\u03B5 \u03A7\u03B1\u03B8\u03B5\u03AF!",go_home:"\u039C\u03B5\u03C4\u03AC\u03B2\u03B1\u03C3\u03B7 \u03C3\u03C4\u03B7\u03BD \u0391\u03C1\u03C7\u03B9\u03BA\u03AE",test_mail_conf:"\u0394\u03BF\u03BA\u03B9\u03BC\u03AE \u03A1\u03CD\u03B8\u03BC\u03B9\u03C3\u03B7\u03C2 \u0391\u03BB\u03BB\u03B7\u03BB\u03BF\u03B3\u03C1\u03B1\u03C6\u03AF\u03B1\u03C2",send_mail_successfully:"\u03A4\u03BF \u039C\u03AE\u03BD\u03C5\u03BC\u03B1 \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",setting_updated:"\u039F\u03B9 \u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03B8\u03B7\u03BA\u03B1\u03BD \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",select_state:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03BD\u03BF\u03BC\u03BF\u03CD",select_country:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03A7\u03CE\u03C1\u03B1\u03C2",select_city:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03A0\u03CC\u03BB\u03B7\u03C2",street_1:"\u039F\u03B4\u03CC\u03C2 1",street_2:"\u039F\u03B4\u03CC\u03C2 2",action_failed:"\u0391\u03C0\u03BF\u03C4\u03C5\u03C7\u03AF\u03B1 \u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1\u03C2",retry:"\u0395\u03C0\u03B1\u03BD\u03AC\u03BB\u03B7\u03C8\u03B7",choose_note:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03A3\u03B7\u03BC\u03B5\u03AF\u03C9\u03C3\u03B7\u03C2",no_note_found:"\u0394\u03B5\u03BD \u0392\u03C1\u03AD\u03B8\u03B7\u03BA\u03B5 \u03A3\u03B7\u03BC\u03B5\u03AF\u03C9\u03C3\u03B7",insert_note:"\u0395\u03B9\u03C3\u03B1\u03B3\u03C9\u03B3\u03AE \u03A3\u03B7\u03BC\u03B5\u03AF\u03C9\u03C3\u03B7\u03C2",copied_pdf_url_clipboard:"\u0391\u03BD\u03C4\u03B9\u03B3\u03C1\u03AC\u03C6\u03B7\u03BA\u03B5 \u03C4\u03BF url \u03C4\u03BF\u03C5 PDF \u03C3\u03C4o \u03C0\u03C1\u03CC\u03C7\u03B5\u03B9\u03C1\u03BF!",copied_url_clipboard:"Copied url to clipboard!",docs:"\u0388\u03B3\u03B3\u03C1\u03B1\u03C6\u03B1",do_you_wish_to_continue:"\u0398\u03AD\u03BB\u03B5\u03C4\u03B5 \u03BD\u03B1 \u03C3\u03C5\u03BD\u03B5\u03C7\u03AF\u03C3\u03B5\u03C4\u03B5;",note:"\u03A3\u03B7\u03BC\u03B5\u03AF\u03C9\u03C3\u03B7",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},Zk={select_year:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03AD\u03C4\u03BF\u03C5\u03C2",cards:{due_amount:"\u039F\u03C6\u03B5\u03B9\u03BB\u03CC\u03BC\u03B5\u03BD\u03BF \u03A0\u03BF\u03C3\u03CC",customers:"\u03A0\u03B5\u03BB\u03AC\u03C4\u03B5\u03C2",invoices:"\u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1",estimates:"\u0395\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",payments:"Payments"},chart_info:{total_sales:"\u03A0\u03C9\u03BB\u03AE\u03C3\u03B5\u03B9\u03C2",total_receipts:"\u0391\u03C0\u03BF\u03B4\u03B5\u03AF\u03BE\u03B5\u03B9\u03C2",total_expense:"\u0388\u03BE\u03BF\u03B4\u03B1",net_income:"\u039A\u03B1\u03B8\u03B1\u03C1\u03CC \u0395\u03B9\u03C3\u03CC\u03B4\u03B7\u03BC\u03B1",year:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03AD\u03C4\u03BF\u03C5\u03C2"},monthly_chart:{title:"\u03A0\u03C9\u03BB\u03AE\u03C3\u03B5\u03B9\u03C2 & \u0388\u03BE\u03BF\u03B4\u03B1"},recent_invoices_card:{title:"\u0391\u03BD\u03B5\u03BE\u03CC\u03C6\u03BB\u03B7\u03C4\u03B1 \u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1",due_on:"\u0395\u03BE\u03CC\u03C6\u03BB\u03B7\u03C3\u03B7 \u0388\u03C9\u03C2",customer:"\u03A0\u03B5\u03BB\u03AC\u03C4\u03B7\u03C2",amount_due:"\u039F\u03C6\u03B5\u03B9\u03BB\u03CC\u03BC\u03B5\u03BD\u03BF \u03C0\u03BF\u03C3\u03CC",actions:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B5\u03C2",view_all:"\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE \u038C\u03BB\u03C9\u03BD"},recent_estimate_card:{title:"\u03A0\u03C1\u03CC\u03C3\u03C6\u03B1\u03C4\u03B5\u03C2 \u0395\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",customer:"\u03A0\u03B5\u03BB\u03AC\u03C4\u03B7\u03C2",amount_due:"\u039F\u03C6\u03B5\u03B9\u03BB\u03CC\u03BC\u03B5\u03BD\u03BF \u03A0\u03BF\u03C3\u03CC",actions:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B5\u03C2",view_all:"\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE \u038C\u03BB\u03C9\u03BD"}},Hk={name:"\u038C\u03BD\u03BF\u03BC\u03B1",description:"\u03A0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE",percent:"\u03A0\u03BF\u03C3\u03BF\u03C3\u03C4\u03CC",compound_tax:"\u03A3\u03CD\u03BD\u03B8\u03B5\u03C4\u03BF\u03C2 \u03A6\u03CC\u03C1\u03BF\u03C2"},Yk={search:"\u0391\u03BD\u03B1\u03B6\u03AE\u03C4\u03B7\u03C3\u03B7...",customers:"\u03A0\u03B5\u03BB\u03AC\u03C4\u03B5\u03C2",users:"\u03A7\u03C1\u03AE\u03C3\u03C4\u03B5\u03C2",no_results_found:"\u0394\u03B5\u03BD \u0392\u03C1\u03AD\u03B8\u03B7\u03BA\u03B1\u03BD \u0391\u03C0\u03BF\u03C4\u03B5\u03BB\u03AD\u03C3\u03BC\u03B1\u03C4\u03B1"},Gk={label:"\u0391\u039B\u039B\u0391\u0393\u0397 \u0395\u03A4\u0391\u0399\u03A1\u0395\u0399\u0391\u03A3",no_results_found:"\u0394\u03B5\u03BD \u0392\u03C1\u03AD\u03B8\u03B7\u03BA\u03B1\u03BD \u0391\u03C0\u03BF\u03C4\u03B5\u03BB\u03AD\u03C3\u03BC\u03B1\u03C4\u03B1",add_new_company:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03BD\u03AD\u03B1\u03C2 \u03B5\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2",new_company:"\u039D\u03AD\u03B1 \u03B5\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1",created_message:"\u0397 \u03B5\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AE\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2"},Jk={today:"\u03A3\u03AE\u03BC\u03B5\u03C1\u03B1",this_week:"\u03A4\u03C1\u03AD\u03C7\u03BF\u03C5\u03C3\u03B1 \u0395\u03B2\u03B4\u03BF\u03BC\u03AC\u03B4\u03B1",this_month:"\u03A4\u03C1\u03AD\u03C7\u03C9\u03BD \u039C\u03AE\u03BD\u03B1\u03C2",this_quarter:"\u03A4\u03C1\u03AD\u03C7\u03BF\u03BD \u03A4\u03C1\u03AF\u03BC\u03B7\u03BD\u03BF",this_year:"\u03A4\u03C1\u03AD\u03C7\u03BF\u03BD \u0388\u03C4\u03BF\u03C2",previous_week:"\u03A0\u03C1\u03BF\u03B7\u03B3\u03BF\u03CD\u03BC\u03B5\u03BD\u03B7 \u0395\u03B2\u03B4\u03BF\u03BC\u03AC\u03B4\u03B1",previous_month:"\u03A0\u03C1\u03BF\u03B7\u03B3\u03BF\u03CD\u03BC\u03B5\u03BD\u03BF\u03C2 \u039C\u03AE\u03BD\u03B1\u03C2",previous_quarter:"\u03A0\u03C1\u03BF\u03B7\u03B3\u03BF\u03CD\u03BC\u03B5\u03BD\u03BF \u03A4\u03C1\u03AF\u03BC\u03B7\u03BD\u03BF",previous_year:"\u03A0\u03C1\u03BF\u03B7\u03B3\u03BF\u03CD\u03BC\u03B5\u03BD\u03BF \u0388\u03C4\u03BF\u03C2",custom:"\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF"},Qk={title:"\u03A0\u03B5\u03BB\u03AC\u03C4\u03B5\u03C2",prefix:"\u03A0\u03C1\u03CC\u03B8\u03B5\u03BC\u03B1",add_customer:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03A0\u03B5\u03BB\u03AC\u03C4\u03B7",contacts_list:"\u039B\u03AF\u03C3\u03C4\u03B1 \u03A0\u03B5\u03BB\u03B1\u03C4\u03CE\u03BD",name:"\u038C\u03BD\u03BF\u03BC\u03B1",mail:"\u039C\u03AE\u03BD\u03C5\u03BC\u03B1 \u03B7\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03BF\u03CD \u03C4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B5\u03AF\u03BF\u03C5",statement:"\u039A\u03B1\u03C4\u03AC\u03C3\u03C4\u03B1\u03C3\u03B7",display_name:"\u0395\u03BC\u03C6\u03B1\u03BD\u03B9\u03B6\u03CC\u03BC\u03B5\u03BD\u03BF \u038C\u03BD\u03BF\u03BC\u03B1",primary_contact_name:"\u039A\u03CD\u03C1\u03B9\u03B1 \u03B5\u03C0\u03B1\u03C6\u03AE",contact_name:"\u038C\u03BD\u03BF\u03BC\u03B1 \u0395\u03C0\u03B1\u03C6\u03AE\u03C2",amount_due:"\u039F\u03C6\u03B5\u03B9\u03BB\u03CC\u03BC\u03B5\u03BD\u03BF \u03A0\u03BF\u03C3\u03CC",email:"\u0397\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03AE \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7",address:"\u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7",phone:"\u03A4\u03B7\u03BB\u03AD\u03C6\u03C9\u03BD\u03BF",website:"\u0399\u03C3\u03C4\u03BF\u03C3\u03B5\u03BB\u03AF\u03B4\u03B1",overview:"\u0395\u03C0\u03B9\u03C3\u03BA\u03CC\u03C0\u03B7\u03C3\u03B7",invoice_prefix:"\u03A0\u03C1\u03CC\u03B8\u03B5\u03BC\u03B1 \u03C0\u03B1\u03C1\u03B1\u03C3\u03C4\u03B1\u03C4\u03B9\u03BA\u03BF\u03CD",estimate_prefix:"\u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u03A0\u03C1\u03BF\u03B8\u03AD\u03BC\u03B1\u03C4\u03BF\u03C2",payment_prefix:"\u03A0\u03C1\u03CC\u03B8\u03B5\u03BC\u03B1 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",enable_portal:"\u0395\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03B7 \u03A0\u03CD\u03BB\u03B7\u03C2",country:"\u03A7\u03CE\u03C1\u03B1",state:"\u039D\u03BF\u03BC\u03CC\u03C2",city:"\u03A0\u03CC\u03BB\u03B7",zip_code:"\u03A4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B9\u03BA\u03CC\u03C2 \u03BA\u03CE\u03B4\u03B9\u03BA\u03B1\u03C2",added_on:"\u03A0\u03C1\u03BF\u03C3\u03C4\u03AD\u03B8\u03B7\u03BA\u03B5 \u03A3\u03C4\u03B9\u03C2",action:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1",password:"\u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2",confirm_password:"\u0395\u03C0\u03B9\u03B2\u03B5\u03B2\u03B1\u03AF\u03C9\u03C3\u03B7 \u039A\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD",street_number:"\u0391\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03BF\u03B4\u03BF\u03CD",primary_currency:"\u039A\u03CD\u03C1\u03B9\u03BF \u039D\u03CC\u03BC\u03B9\u03C3\u03BC\u03B1",description:"\u03A0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE",add_new_customer:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039D\u03AD\u03BF\u03C5 \u03A0\u03B5\u03BB\u03AC\u03C4\u03B7",save_customer:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7",update_customer:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u03C0\u03B5\u03BB\u03B1\u03C4\u03CE\u03BD",customer:"\u03A0\u03B5\u03BB\u03AC\u03C4\u03B5\u03C2 - \u03A0\u03B5\u03BB\u03AC\u03C4\u03B5\u03C2",new_customer:"\u039D\u03AD\u03BF\u03C2 \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7\u03C2",edit_customer:`\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u03A0\u03B5\u03BB\u03AC\u03C4\u03B7 +`,basic_info:"\u0392\u03B1\u03C3\u03B9\u03BA\u03AD\u03C2 \u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B5\u03C2",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"\u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 \u03A7\u03C1\u03AD\u03C9\u03C3\u03B7\u03C2",shipping_address:"\u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 \u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE\u03C2",copy_billing_address:"\u0391\u03BD\u03C4\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE \u03B1\u03C0\u03CC \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B7\u03C3\u03B7",no_customers:"\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03BF\u03C5\u03BD \u03C0\u03B5\u03BB\u03AC\u03C4\u03B5\u03C2 \u03B1\u03BA\u03CC\u03BC\u03B1!",no_customers_found:"\u0394\u03B5\u03BD \u03B2\u03C1\u03AD\u03B8\u03B7\u03BA\u03B1\u03BD \u03C0\u03B5\u03BB\u03AC\u03C4\u03B5\u03C2",no_contact:"\u039A\u03B1\u03BC\u03BC\u03AF\u03B1 \u03B5\u03C0\u03B1\u03C6\u03AE",no_contact_name:"\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03B5\u03B9 \u03CC\u03BD\u03BF\u03BC\u03B1 \u03B5\u03C0\u03B1\u03C6\u03AE\u03C2",list_of_customers:"\u0391\u03C5\u03C4\u03AE \u03B7 \u03B5\u03BD\u03CC\u03C4\u03B7\u03C4\u03B1 \u03B8\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 \u03C4\u03B7 \u03BB\u03AF\u03C3\u03C4\u03B1 \u03C0\u03B5\u03BB\u03B1\u03C4\u03CE\u03BD.",primary_display_name:"\u039A\u03CD\u03C1\u03B9\u03BF \u0395\u03BC\u03C6\u03B1\u03BD\u03B9\u03B6\u03CC\u03BC\u03B5\u03BD\u03BF \u038C\u03BD\u03BF\u03BC\u03B1",select_currency:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03BD\u03BF\u03BC\u03AF\u03C3\u03BC\u03B1\u03C4\u03BF\u03C2",select_a_customer:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03AD\u03BD\u03B1\u03BD \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7",type_or_click:"\u03A0\u03BB\u03B7\u03BA\u03C4\u03C1\u03BF\u03BB\u03BF\u03B3\u03AE\u03C3\u03C4\u03B5 \u03AE \u03BA\u03AC\u03BD\u03C4\u03B5 \u03BA\u03BB\u03B9\u03BA \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B5\u03C0\u03B9\u03BB\u03AD\u03BE\u03B5\u03C4\u03B5 \u03AD\u03BD\u03B1 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF",new_transaction:"\u039D\u03AD\u03B1 \u03C3\u03C5\u03BD\u03B1\u03BB\u03BB\u03B1\u03B3\u03AE",no_matching_customers:"\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03BF\u03C5\u03BD \u03C0\u03B5\u03BB\u03AC\u03C4\u03B5\u03C2 \u03C0\u03BF\u03C5 \u03BD\u03B1 \u03C4\u03B1\u03B9\u03C1\u03B9\u03AC\u03B6\u03BF\u03C5\u03BD!",phone_number:"\u0391\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03A4\u03B7\u03BB\u03B5\u03C6\u03CE\u03BD\u03BF\u03C5",create_date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1\u03C2",confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03CC\u03BD \u03C4\u03BF\u03BD \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7 \u03BA\u03B1\u03B9 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03C3\u03C7\u03B5\u03C4\u03B9\u03BA\u03AC \u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1, \u0395\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2 \u03BA\u03B1\u03B9 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AD\u03C2. \u221A \u0394\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03BF\u03CD\u03C2 \u03C4\u03BF\u03C5\u03C2 \u03C0\u03B5\u03BB\u03AC\u03C4\u03B5\u03C2 \u03BA\u03B1\u03B9 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03C3\u03C7\u03B5\u03C4\u03B9\u03BA\u03AC \u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1, \u0395\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2 \u03BA\u03B1\u03B9 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AD\u03C2.",created_message:"\u039F \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7\u03C2 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AE\u03B8\u03B7\u03BA\u03B5 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1",updated_message:"\u039F \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7\u03C2 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03B8\u03B7\u03BA\u03B5 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1",address_updated_message:"Address Information Updated succesfully",deleted_message:"\u03A0\u03B5\u03BB\u03AC\u03C4\u03B7\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C6\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2 | \u039F\u03B9 \u03C0\u03B5\u03BB\u03AC\u03C4\u03B5\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C6\u03B7\u03BA\u03B1\u03BD \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1",edit_currency_not_allowed:"\u0394\u03B5\u03BD \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03C5\u03BD\u03B1\u03C4\u03AE \u03B7 \u03B1\u03BB\u03BB\u03B1\u03B3\u03AE \u03BD\u03BF\u03BC\u03AF\u03C3\u03BC\u03B1\u03C4\u03BF\u03C2 \u03BC\u03CC\u03BB\u03B9\u03C2 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03B7\u03B8\u03BF\u03CD\u03BD \u03C3\u03C5\u03BD\u03B1\u03BB\u03BB\u03B1\u03B3\u03AD\u03C2."},Xk={title:"\u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1",items_list:"\u039B\u03AF\u03C3\u03C4\u03B1 \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03C9\u03BD",name:"\u038C\u03BD\u03BF\u03BC\u03B1",unit:"\u039C\u03BF\u03BD\u03AC\u03B4\u03B1",description:"\u03A0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE",added_on:"\u03A0\u03C1\u03BF\u03C3\u03C4\u03AD\u03B8\u03B7\u03BA\u03B5 \u03A3\u03C4\u03B9\u03C2",price:"\u03A4\u03B9\u03BC\u03AE",date_of_creation:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1\u03C2",not_selected:"\u0394\u03B5\u03BD \u03AD\u03C7\u03B5\u03B9 \u03B5\u03C0\u03B9\u03BB\u03B5\u03C7\u03B8\u03B5\u03AF \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF",action:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1",add_item:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5",save_item:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5",update_item:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5",item:"\u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF | \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1",add_new_item:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039D\u03AD\u03BF\u03C5 \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5",new_item:"\u039D\u03AD\u03BF \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF",edit_item:"\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5",no_items:"\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03BF\u03C5\u03BD \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03B1\u03BA\u03CC\u03BC\u03B1!",list_of_items:"\u0391\u03C5\u03C4\u03AE \u03B7 \u03B5\u03BD\u03CC\u03C4\u03B7\u03C4\u03B1 \u03B8\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 \u03C4\u03B7 \u03BB\u03AF\u03C3\u03C4\u03B1 \u03C4\u03C9\u03BD \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03C9\u03BD.",select_a_unit:"\u03B5\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03BC\u03BF\u03BD\u03AC\u03B4\u03B1",taxes:"\u03A6\u03CC\u03C1\u03BF\u03B9",item_attached_message:"\u0394\u03B5\u03BD \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03C5\u03BD\u03B1\u03C4\u03AE \u03B7 \u03B4\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03B5\u03BD\u03CC\u03C2 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5 \u03C0\u03BF\u03C5 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF\u03C4\u03B1\u03B9 \u03AE\u03B4\u03B7",confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03AE \u03C4\u03B7\u03BD \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u2019, \u03B4\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03AD\u03C2 \u03C4\u03B9\u03C2 \u03B5\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",created_message:"\u03A4\u03BF \u03B1\u03BD\u03C4\u03B9\u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AE\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",updated_message:"\u03A4\u03BF \u03B1\u03BD\u03C4\u03B9\u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",deleted_message:"\u039F \u03C5\u03C0\u03BF\u03BB\u03BF\u03B3\u03B9\u03C3\u03BC\u03CC\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C6\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2"},ew={title:"\u0395\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"\u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 | \u0395\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",estimates_list:"\u039B\u03AF\u03C3\u03C4\u03B1 \u0395\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03C9\u03BD",days:"{days} \u0397\u03BC\u03AD\u03C1\u03B5\u03C2",months:"{months} \u039C\u03AE\u03BD\u03B1\u03C2",years:"{years} \u0388\u03C4\u03BF\u03C2",all:"\u038C\u03BB\u03B1",paid:"\u0395\u03BE\u03BF\u03C6\u03BB\u03B7\u03BC\u03AD\u03BD\u03BF",unpaid:"\u0391\u03BD\u03B5\u03BE\u03CC\u03C6\u03BB\u03B7\u03C4\u03BF",customer:"\u03A4\u0395\u039B\u03A9\u039D\u0395\u0399\u0391\u039A\u0397",ref_no:"REF NO.",number:"\u0391\u03A1\u0399\u0398\u039C\u039F\u03A3",amount_due:"\u03A0\u039F\u03A3\u039F \u03A0\u03A1\u039F\u03A3 \u03A0\u039B\u0397\u03A1\u03A9\u039C\u0397",partially_paid:"\u039C\u03B5\u03C1\u03B9\u03BA\u03CE\u03C2 \u0395\u03BE\u03BF\u03C6\u03BB\u03B7\u03BC\u03AD\u03BD\u03BF",total:"\u03A3\u03CD\u03BD\u03BF\u03BB\u03BF\xA0",discount:"\u0388\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7",sub_total:"\u039C\u03B5\u03C1\u03B9\u03BA\u03CC \u03A3\u03CD\u03BD\u03BF\u03BB\u03BF",estimate_number:"\u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u0391\u03C1\u03B9\u03B8\u03BC\u03BF\u03CD",ref_number:"\u0391\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC\u03C2",contact:"\u0395\u03C0\u03B9\u03BA\u03BF\u03B9\u03BD\u03C9\u03BD\u03AF\u03B1",add_item:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5",date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",due_date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BB\u03AE\u03BE\u03B7\u03C2",expiry_date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BB\u03AE\u03BE\u03B7\u03C2",status:"\u039A\u03B1\u03C4\u03AC\u03C3\u03C4\u03B1\u03C3\u03B7",add_tax:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03A6\u03CC\u03C1\u03BF\u03C5",amount:"\u03A0\u03BF\u03C3\u03CC",action:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1",notes:"\u03A3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03B5\u03B9\u03C2",tax:"\u03A6\u03CC\u03C1\u03BF\u03C2",estimate_template:"\u03A0\u03C1\u03CC\u03C4\u03C5\u03C0\u03BF",convert_to_invoice:"\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03AC\u03C0\u03B7\u03BA\u03B5 \u03C3\u03B5 \u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF",mark_as_sent:"\u03A3\u03AE\u03BC\u03B1\u03BD\u03C3\u03B7 \u03C9\u03C2 \u03B1\u03C0\u03B5\u03C3\u03C4\u03B1\u03BB\u03BC\u03AD\u03BD\u03BF\u03C5",send_estimate:"\u039D\u03AD\u03B1 \u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7",resend_estimate:"\u03A0\u03C1\u03CC\u03C3\u03C6\u03B1\u03C4\u03B5\u03C2 \u0395\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",record_payment:"\u039A\u03B1\u03C4\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",add_estimate:"\u039D\u03AD\u03B1 \u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7",save_estimate:"\u039D\u03AD\u03B1 \u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7",confirm_conversion:"\u0391\u03C5\u03C4\u03AE \u03B7 \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u03B8\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B7\u03B8\u03B5\u03AF \u03B3\u03B9\u03B1 \u03C4\u03B7 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03B5\u03BD\u03CC\u03C2 \u03BD\u03AD\u03BF\u03C5 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5.",conversion_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03BA\u03BB\u03C9\u03BD\u03BF\u03C0\u03BF\u03B9\u03AE\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",confirm_send_estimate:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B8\u03B1 \u03B1\u03C0\u03BF\u03C3\u03C4\u03B1\u03BB\u03B5\u03AF \u03BC\u03AD\u03C3\u03C9 email \u03C3\u03C4\u03BF\u03BD \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7",confirm_mark_as_sent:"\u0397 \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u03B1\u03C5\u03C4\u03AE \u03B8\u03B1 \u03B5\u03C0\u03B9\u03C3\u03B7\u03BC\u03B1\u03BD\u03B8\u03B5\u03AF \u03C9\u03C2 \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7",confirm_mark_as_accepted:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B8\u03B1 \u03B5\u03C0\u03B9\u03C3\u03B7\u03BC\u03B1\u03BD\u03B8\u03B5\u03AF \u03C9\u03C2 \u0391\u03C0\u03BF\u03C1\u03C1\u03B9\u03C0\u03C4\u03CC\u03BC\u03B5\u03BD\u03BF",confirm_mark_as_rejected:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B8\u03B1 \u03B5\u03C0\u03B9\u03C3\u03B7\u03BC\u03B1\u03BD\u03B8\u03B5\u03AF \u03C9\u03C2 \u0391\u03C0\u03BF\u03C1\u03C1\u03B9\u03C0\u03C4\u03CC\u03BC\u03B5\u03BD\u03BF",no_matching_estimates:"\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03BF\u03C5\u03BD \u03B1\u03BD\u03C4\u03AF\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03C2 \u03B5\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2!",mark_as_sent_successfully:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C0\u03B9\u03C3\u03B7\u03BC\u03AC\u03BD\u03B8\u03B7\u03BA\u03B5 \u03C9\u03C2 \u03B1\u03C0\u03B5\u03C3\u03C4\u03B1\u03BB\u03BC\u03AD\u03BD\u03BF \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",send_estimate_successfully:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",errors:{required:"\u03A4\u03BF \u03C0\u03B5\u03B4\u03AF\u03BF \u03B5\u03AF\u03BD\u03B1\u03B9 \u03C5\u03C0\u03BF\u03C7\u03C1\u03B5\u03C9\u03C4\u03B9\u03BA\u03CC"},accepted:"\u0391\u03C0\u03BF\u03B4\u03B5\u03BA\u03C4\u03AE",rejected:"\u0391\u03C0\u03BF\u03C1\u03C1\u03AF\u03C6\u03B8\u03B7\u03BA\u03B5",expired:"Expired",sent:"\u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE",draft:"\u03A0\u03C1\u03CC\u03C7\u03B5\u03B9\u03C1\u03BF",viewed:"Viewed",declined:"\u0391\u03C0\u03BF\u03C1\u03C1\u03AF\u03C6\u03B8\u03B7\u03BA\u03B5",new_estimate:"\u039D\u03AD\u03B1 \u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7",add_new_estimate:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039D\u03AD\u03B1\u03C2 \u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7\u03C2",update_Estimate:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7\u03C2",edit_estimate:"\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7\u03C2",items:"\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1",Estimate:"\u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 | \u0395\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",add_new_tax:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039D\u03AD\u03BF\u03C5 \u03A6\u03CC\u03C1\u03BF\u03C5",no_estimates:"\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03BF\u03C5\u03BD \u03B5\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2 \u03B1\u03BA\u03CC\u03BC\u03B1!",list_of_estimates:"\u0391\u03C5\u03C4\u03AE \u03B7 \u03B5\u03BD\u03CC\u03C4\u03B7\u03C4\u03B1 \u03B8\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 \u03C4\u03B7 \u03BB\u03AF\u03C3\u03C4\u03B1 \u03C4\u03C9\u03BD \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03C9\u03BD.",mark_as_rejected:"\u03A3\u03AE\u03BC\u03B1\u03BD\u03C3\u03B7 \u03C9\u03C2 \u03B1\u03C0\u03BF\u03C1\u03C1\u03AF\u03C6\u03B8\u03B7\u03BA\u03B5",mark_as_accepted:"\u03A3\u03AE\u03BC\u03B1\u03BD\u03C3\u03B7 \u03C9\u03C2 \u03B1\u03C0\u03BF\u03B4\u03B5\u03BA\u03C4\u03CC",marked_as_accepted_message:"\u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u03C0\u03BF\u03C5 \u03AD\u03C7\u03B5\u03B9 \u03B5\u03C0\u03B9\u03C3\u03B7\u03BC\u03B1\u03BD\u03B8\u03B5\u03AF \u03C9\u03C2 \u03B1\u03C0\u03BF\u03B4\u03B5\u03BA\u03C4\u03AE",marked_as_rejected_message:"\u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u03C0\u03BF\u03C5 \u03C3\u03B7\u03BC\u03B5\u03B9\u03CE\u03BD\u03B5\u03C4\u03B1\u03B9 \u03C9\u03C2 \u03B1\u03C0\u03BF\u03C1\u03C1\u03B9\u03C6\u03B8\u03B5\u03AF\u03C3\u03B1",confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03AE \u03C4\u03B7\u03BD \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u2019, \u03B4\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03AD\u03C2 \u03C4\u03B9\u03C2 \u03B5\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",created_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",updated_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",deleted_message:"\u039F \u03C5\u03C0\u03BF\u03BB\u03BF\u03B3\u03B9\u03C3\u03BC\u03CC\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C6\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",something_went_wrong:"\u039A\u03AC\u03C4\u03B9 \u03C0\u03AE\u03B3\u03B5 \u03C3\u03C4\u03C1\u03B1\u03B2\u03AC",item:{title:"\u03A4\u03AF\u03C4\u03BB\u03BF\u03C2 \u03A0\u03C1\u03BF\u03CA\u03CC\u03BD\u03C4\u03BF\u03C2",description:"\u03A0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE",quantity:"\u03A0\u03BF\u03C3\u03CC\u03C4\u03B7\u03C4\u03B1",price:"\u03A4\u03B9\u03BC\u03AE",discount:"\u0388\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7",total:"\u03A3\u03CD\u03BD\u03BF\u03BB\u03BF\xA0",total_discount:"\u03A3\u03C5\u03BD\u03BF\u03BB\u03B9\u03BA\u03AE \u0388\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7",sub_total:"\u039C\u03B5\u03C1\u03B9\u03BA\u03CC \u03A3\u03CD\u03BD\u03BF\u03BB\u03BF",tax:"\u03A6\u03CC\u03C1\u03BF\u03C2",amount:"\u03A0\u03BF\u03C3\u03CC",select_an_item:"\u03A0\u03BB\u03B7\u03BA\u03C4\u03C1\u03BF\u03BB\u03BF\u03B3\u03AE\u03C3\u03C4\u03B5 \u03AE \u03BA\u03AC\u03BD\u03C4\u03B5 \u03BA\u03BB\u03B9\u03BA \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B5\u03C0\u03B9\u03BB\u03AD\u03BE\u03B5\u03C4\u03B5 \u03AD\u03BD\u03B1 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF",type_item_description:"\u03A0\u03BB\u03B7\u03BA\u03C4\u03C1\u03BF\u03BB\u03BF\u03B3\u03AE\u03C3\u03C4\u03B5 \u03A0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5 (\u03C0\u03C1\u03BF\u03B1\u03B9\u03C1\u03B5\u03C4\u03B9\u03BA\u03CC)"}},tw={title:"\u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"\u039B\u03AF\u03C3\u03C4\u03B1 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03C9\u03BD",invoice_information:"Invoice Information",days:"{days} \u0397\u03BC\u03AD\u03C1\u03B5\u03C2",months:"{months} \u039C\u03AE\u03BD\u03B1\u03C2",years:"{years} \u0388\u03C4\u03BF\u03C2",all:"\u038C\u03BB\u03B1",paid:"\u0395\u03BE\u03BF\u03C6\u03BB\u03B7\u03BC\u03AD\u03BD\u03BF",unpaid:"\u0391\u03BD\u03B5\u03BE\u03CC\u03C6\u03BB\u03B7\u03C4\u03BF",viewed:"\u03A0\u03C1\u03BF\u03B2\u03BB\u03AE\u03B8\u03B7\u03BA\u03B1\u03BD",overdue:"\u0395\u03BA\u03C0\u03C1\u03CC\u03B8\u03B5\u03C3\u03BC\u03B1",completed:"\u039F\u03BB\u03BF\u03BA\u03BB\u03B7\u03C1\u03CE\u03B8\u03B7\u03BA\u03B5",customer:"\u03A4\u0395\u039B\u03A9\u039D\u0395\u0399\u0391\u039A\u0397",paid_status:"\u039A\u0391\u03A4\u0391\u03A3\u03A4\u0391\u03A3\u0397 \u03A0\u039B\u0397\u03A1\u03A9\u039C\u0397\u03A3",ref_no:"REF NO.",number:"\u0391\u03A1\u0399\u0398\u039C\u039F\u03A3",amount_due:"\u03A0\u039F\u03A3\u039F \u03A0\u03A1\u039F\u03A3 \u03A0\u039B\u0397\u03A1\u03A9\u039C\u0397",partially_paid:"\u039C\u03B5\u03C1\u03B9\u03BA\u03CE\u03C2 \u0395\u03BE\u03BF\u03C6\u03BB\u03B7\u03BC\u03AD\u03BD\u03BF",total:"\u03A3\u03CD\u03BD\u03BF\u03BB\u03BF\xA0",discount:"\u0388\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7",sub_total:"\u039C\u03B5\u03C1\u03B9\u03BA\u03CC \u03A3\u03CD\u03BD\u03BF\u03BB\u03BF",invoice:"\u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1 (\u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1)",invoice_number:"\u0391\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",ref_number:"\u0391\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC\u03C2",contact:"\u0395\u03C0\u03B9\u03BA\u03BF\u03B9\u03BD\u03C9\u03BD\u03AF\u03B1",add_item:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5",date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",due_date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BB\u03AE\u03BE\u03B7\u03C2",status:"\u039A\u03B1\u03C4\u03AC\u03C3\u03C4\u03B1\u03C3\u03B7",add_tax:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03A6\u03CC\u03C1\u03BF\u03C5",amount:"\u03A0\u03BF\u03C3\u03CC",action:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1",notes:"\u03A3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03B5\u03B9\u03C2",view:"\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE",send_invoice:"\u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE \u03A0\u03B1\u03C1\u03B1\u03C3\u03C4\u03B1\u03C4\u03B9\u03BA\u03CE\u03BD",resend_invoice:"\u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE \u03A0\u03B1\u03C1\u03B1\u03C3\u03C4\u03B1\u03C4\u03B9\u03BA\u03CE\u03BD",invoice_template:"\u03A0\u03C1\u03CC\u03C4\u03C5\u03C0\u03BF \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5 ",conversion_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03BA\u03BB\u03C9\u03BD\u03BF\u03C0\u03BF\u03B9\u03AE\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",template:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03A0\u03C1\u03BF\u03C4\u03CD\u03C0\u03BF\u03C5",mark_as_sent:"\u03A3\u03AE\u03BC\u03B1\u03BD\u03C3\u03B7 \u03C9\u03C2 \u03B1\u03C0\u03B5\u03C3\u03C4\u03B1\u03BB\u03BC\u03AD\u03BD\u03BF\u03C5",confirm_send_invoice:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B8\u03B1 \u03B1\u03C0\u03BF\u03C3\u03C4\u03B1\u03BB\u03B5\u03AF \u03BC\u03AD\u03C3\u03C9 email \u03C3\u03C4\u03BF\u03BD \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7",invoice_mark_as_sent:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B8\u03B1 \u03B5\u03C0\u03B9\u03C3\u03B7\u03BC\u03B1\u03BD\u03B8\u03B5\u03AF \u03C9\u03C2 \u03B1\u03C0\u03B5\u03C3\u03C4\u03B1\u03BB\u03BC\u03AD\u03BD\u03BF",confirm_mark_as_accepted:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B8\u03B1 \u03B5\u03C0\u03B9\u03C3\u03B7\u03BC\u03B1\u03BD\u03B8\u03B5\u03AF \u03C9\u03C2 \u0391\u03C0\u03BF\u03B4\u03B5\u03BA\u03C4\u03CC",confirm_mark_as_rejected:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B8\u03B1 \u03B5\u03C0\u03B9\u03C3\u03B7\u03BC\u03B1\u03BD\u03B8\u03B5\u03AF \u03C9\u03C2 \u0391\u03C0\u03BF\u03C1\u03C1\u03B9\u03C0\u03C4\u03CC\u03BC\u03B5\u03BD\u03BF",confirm_send:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B8\u03B1 \u03B1\u03C0\u03BF\u03C3\u03C4\u03B1\u03BB\u03B5\u03AF \u03BC\u03AD\u03C3\u03C9 email \u03C3\u03C4\u03BF\u03BD \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7",invoice_date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",record_payment:"\u039A\u03B1\u03C4\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",add_new_invoice:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039D\u03AD\u03BF\u03C5 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",update_expense:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u0394\u03B1\u03C0\u03AC\u03BD\u03B7\u03C2",edit_invoice:"\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",new_invoice:"\u039D\u03AD\u03BF \u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF",save_invoice:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",update_invoice:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",add_new_tax:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039D\u03AD\u03BF\u03C5 \u03A6\u03CC\u03C1\u03BF\u03C5",no_invoices:"\u039A\u03B1\u03BD\u03AD\u03BD\u03B1 \u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B1\u03BA\u03CC\u03BC\u03B1!",mark_as_rejected:"\u03A3\u03AE\u03BC\u03B1\u03BD\u03C3\u03B7 \u03C9\u03C2 \u03B1\u03C0\u03BF\u03C1\u03C1\u03AF\u03C6\u03B8\u03B7\u03BA\u03B5",mark_as_accepted:"\u03A3\u03AE\u03BC\u03B1\u03BD\u03C3\u03B7 \u03C9\u03C2 \u03B1\u03C0\u03BF\u03B4\u03B5\u03BA\u03C4\u03CC",list_of_invoices:"\u0391\u03C5\u03C4\u03AE \u03B7 \u03B5\u03BD\u03CC\u03C4\u03B7\u03C4\u03B1 \u03B8\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 \u03C4\u03B7 \u03BB\u03AF\u03C3\u03C4\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03C9\u03BD.",select_invoice:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",no_matching_invoices:"\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03B5\u03B9 \u03BA\u03B1\u03BD\u03AD\u03BD\u03B1 \u03B1\u03BD\u03C4\u03AF\u03C3\u03C4\u03BF\u03B9\u03C7\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF!",mark_as_sent_successfully:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C0\u03B9\u03C3\u03B7\u03BC\u03AC\u03BD\u03B8\u03B7\u03BA\u03B5 \u03C9\u03C2 \u03B1\u03C0\u03B5\u03C3\u03C4\u03B1\u03BB\u03BC\u03AD\u03BD\u03BF \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",invoice_sent_successfully:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",cloned_successfully:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03BA\u03BB\u03C9\u03BD\u03BF\u03C0\u03BF\u03B9\u03AE\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",clone_invoice:"\u039A\u03BB\u03C9\u03BD\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",confirm_clone:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B8\u03B1 \u03BA\u03BB\u03C9\u03BD\u03BF\u03C0\u03BF\u03B9\u03B7\u03B8\u03B5\u03AF \u03C3\u03B5 \u03AD\u03BD\u03B1 \u03BD\u03AD\u03BF \u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF",item:{title:"\u03A4\u03AF\u03C4\u03BB\u03BF\u03C2 \u03A0\u03C1\u03BF\u03CA\u03CC\u03BD\u03C4\u03BF\u03C2",description:"\u03A0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE",quantity:"\u03A0\u03BF\u03C3\u03CC\u03C4\u03B7\u03C4\u03B1",price:"\u03A4\u03B9\u03BC\u03AE",discount:"\u0388\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7",total:"\u039F\u03BB\u03B9\u03BA\u03CC",total_discount:"\u03A3\u03C5\u03BD\u03BF\u03BB\u03B9\u03BA\u03AE \u0388\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7",sub_total:"\u039C\u03B5\u03C1\u03B9\u03BA\u03CC \u03A3\u03CD\u03BD\u03BF\u03BB\u03BF",tax:"\u03A6\u03CC\u03C1\u03BF\u03C2",amount:"\u03A0\u03BF\u03C3\u03CC",select_an_item:"\u03A0\u03BB\u03B7\u03BA\u03C4\u03C1\u03BF\u03BB\u03BF\u03B3\u03AE\u03C3\u03C4\u03B5 \u03AE \u03BA\u03AC\u03BD\u03C4\u03B5 \u03BA\u03BB\u03B9\u03BA \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B5\u03C0\u03B9\u03BB\u03AD\u03BE\u03B5\u03C4\u03B5 \u03AD\u03BD\u03B1 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF",type_item_description:"\u03A0\u03BB\u03B7\u03BA\u03C4\u03C1\u03BF\u03BB\u03BF\u03B3\u03AE\u03C3\u03C4\u03B5 \u03A0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5 (\u03C0\u03C1\u03BF\u03B1\u03B9\u03C1\u03B5\u03C4\u03B9\u03BA\u03CC)"},payment_attached_message:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03AD\u03C7\u03B5\u03B9 \u03AE\u03B4\u03B7 \u03BC\u03B9\u03B1 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE \u03C0\u03BF\u03C5 \u03B5\u03C0\u03B9\u03C3\u03C5\u03BD\u03AC\u03C0\u03C4\u03B5\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03B1\u03C5\u03C4\u03CC. \u0392\u03B5\u03B2\u03B1\u03B9\u03C9\u03B8\u03B5\u03AF\u03C4\u03B5 \u03CC\u03C4\u03B9 \u03AD\u03C7\u03B5\u03C4\u03B5 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C8\u03B5\u03B9 \u03C0\u03C1\u03CE\u03C4\u03B1 \u03C4\u03B9\u03C2 \u03C3\u03C5\u03BD\u03B7\u03BC\u03BC\u03AD\u03BD\u03B5\u03C2 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AD\u03C2 \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03C0\u03C1\u03BF\u03C7\u03C9\u03C1\u03AE\u03C3\u03B5\u03C4\u03B5 \u03BC\u03B5 \u03C4\u03B7\u03BD \u03B1\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7",confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03AE \u03C4\u03B7\u03BD \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u2019, \u03B4\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03AD\u03C2 \u03C4\u03B9\u03C2 \u03B5\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",created_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03BA\u03BB\u03C9\u03BD\u03BF\u03C0\u03BF\u03B9\u03AE\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",updated_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",deleted_message:"\u039F \u03C5\u03C0\u03BF\u03BB\u03BF\u03B3\u03B9\u03C3\u03BC\u03CC\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C6\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",marked_as_sent_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C0\u03B9\u03C3\u03B7\u03BC\u03AC\u03BD\u03B8\u03B7\u03BA\u03B5 \u03C9\u03C2 \u03B1\u03C0\u03B5\u03C3\u03C4\u03B1\u03BB\u03BC\u03AD\u03BD\u03BF \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",something_went_wrong:"\u039A\u03AC\u03C4\u03B9 \u03C0\u03AE\u03B3\u03B5 \u03C3\u03C4\u03C1\u03B1\u03B2\u03AC",invalid_due_amount_message:"\u03A3\u03C5\u03BD\u03BF\u03BB\u03B9\u03BA\u03CC \u03B5\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF \u03C0\u03BF\u03C3\u03CC \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5 \u03B4\u03B5\u03BD \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B9\u03BA\u03C1\u03CC\u03C4\u03B5\u03C1\u03BF \u03B1\u03C0\u03CC \u03C4\u03BF \u03C3\u03C5\u03BD\u03BF\u03BB\u03B9\u03BA\u03CC \u03BA\u03B1\u03C4\u03B1\u03B2\u03BB\u03B7\u03B8\u03AD\u03BD \u03C0\u03BF\u03C3\u03CC \u03B3\u03B9\u03B1 \u03B1\u03C5\u03C4\u03CC \u03C4\u03BF \u03B5\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF. \u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03BF\u03CD\u03BC\u03B5 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03C3\u03C4\u03B5 \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03AE \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C8\u03C4\u03B5 \u03C4\u03B9\u03C2 \u03C3\u03C7\u03B5\u03C4\u03B9\u03BA\u03AD\u03C2 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AD\u03C2 \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03C3\u03C5\u03BD\u03B5\u03C7\u03AF\u03C3\u03B5\u03C4\u03B5."},aw={title:"\u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1",invoices_list:"\u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1",days:"{days} \u0397\u03BC\u03AD\u03C1\u03B5\u03C2",months:"{months} \u039C\u03AE\u03BD\u03B1\u03C2",years:"{years} \u0388\u03C4\u03BF\u03C2",all:"\u038C\u03BB\u03B1",paid:"\u0395\u03BE\u03BF\u03C6\u03BB\u03B7\u03BC\u03AD\u03BD\u03BF",unpaid:"\u0391\u03BD\u03B5\u03BE\u03CC\u03C6\u03BB\u03B7\u03C4\u03BF",viewed:"\u03A0\u03C1\u03BF\u03B2\u03BB\u03AE\u03B8\u03B7\u03BA\u03B1\u03BD",overdue:"\u0395\u03BA\u03C0\u03C1\u03CC\u03B8\u03B5\u03C3\u03BC\u03B1",active:"\u0395\u03BD\u03B5\u03C1\u03B3\u03AE",completed:"\u039F\u03BB\u03BF\u03BA\u03BB\u03B7\u03C1\u03CE\u03B8\u03B7\u03BA\u03B5",customer:"\u03A4\u0395\u039B\u03A9\u039D\u0395\u0399\u0391\u039A\u0397",paid_status:"\u039A\u0391\u03A4\u0391\u03A3\u03A4\u0391\u03A3\u0397 \u03A0\u039B\u0397\u03A1\u03A9\u039C\u0397\u03A3",ref_no:"REF NO.",number:"\u0391\u03A1\u0399\u0398\u039C\u039F\u03A3",amount_due:"\u03A0\u039F\u03A3\u039F \u03A0\u03A1\u039F\u03A3 \u03A0\u039B\u0397\u03A1\u03A9\u039C\u0397",partially_paid:"\u039C\u03B5\u03C1\u03B9\u03BA\u03CE\u03C2 \u0395\u03BE\u03BF\u03C6\u03BB\u03B7\u03BC\u03AD\u03BD\u03BF",total:"\u03A3\u03CD\u03BD\u03BF\u03BB\u03BF\xA0",discount:"\u0388\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7",sub_total:"\u039C\u03B5\u03C1\u03B9\u03BA\u03CC \u03A3\u03CD\u03BD\u03BF\u03BB\u03BF",invoice:"\u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF \u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF | \u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03B1 \u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1",invoice_number:"\u0391\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03B5\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF\u03C5 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",next_invoice_date:"\u0395\u03C0\u03CC\u03BC\u03B5\u03BD\u03B7 \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",ref_number:"\u0391\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC\u03C2",contact:"\u0395\u03C0\u03B9\u03BA\u03BF\u03B9\u03BD\u03C9\u03BD\u03AF\u03B1",add_item:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5",date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",limit_by:"\u03A0\u03B5\u03C1\u03B9\u03BF\u03C1\u03B9\u03C3\u03BC\u03CC\u03C2 \u0391\u03BD\u03AC:",limit_date:"\u03A0\u03B5\u03C1\u03B9\u03BF\u03C1\u03B9\u03C3\u03BC\u03CC\u03C2 \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1\u03C2",limit_count:"\u038C\u03C1\u03B9\u03BF \u039A\u03B1\u03C4\u03B1\u03BC\u03AD\u03C4\u03C1\u03B7\u03C3\u03B7\u03C2",count:"\u0391\u03C1\u03AF\u03B8\u03BC\u03B7\u03C3\u03B7",status:"\u039A\u03B1\u03C4\u03AC\u03C3\u03C4\u03B1\u03C3\u03B7",select_a_status:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03BA\u03B1\u03C4\u03AC\u03C3\u03C4\u03B1\u03C3\u03B7",working:"\u039B\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03B5\u03AF",on_hold:"\u03A3\u03B5 \u03B1\u03BD\u03B1\u03BC\u03BF\u03BD\u03AE",complete:"\u039F\u03BB\u03BF\u03BA\u03BB\u03B7\u03C1\u03CE\u03B8\u03B7\u03BA\u03B5",add_tax:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03A6\u03CC\u03C1\u03BF\u03C5",amount:"\u03A0\u03BF\u03C3\u03CC",action:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1",notes:"\u03A3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03B5\u03B9\u03C2",view:"\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE",basic_info:"\u0392\u03B1\u03C3\u03B9\u03BA\u03AD\u03C2 \u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B5\u03C2",send_invoice:"\u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF\u03C5 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",auto_send:"\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B7 \u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE",resend_invoice:"\u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF\u03C5 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",invoice_template:"\u0391\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03B5\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF\u03C5 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",conversion_message:"\u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03BA\u03BB\u03C9\u03BD\u03BF\u03C0\u03BF\u03B9\u03AE\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AE\u03C2",template:"\u03A0\u03C1\u03CC\u03C4\u03C5\u03C0\u03BF",mark_as_sent:"\u03A3\u03AE\u03BC\u03B1\u03BD\u03C3\u03B7 \u03C9\u03C2 \u03B1\u03C0\u03B5\u03C3\u03C4\u03B1\u03BB\u03BC\u03AD\u03BD\u03BF\u03C5",confirm_send_invoice:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B8\u03B1 \u03B1\u03C0\u03BF\u03C3\u03C4\u03B1\u03BB\u03B5\u03AF \u03BC\u03AD\u03C3\u03C9 email \u03C3\u03C4\u03BF\u03BD \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7",invoice_mark_as_sent:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B8\u03B1 \u03B5\u03C0\u03B9\u03C3\u03B7\u03BC\u03B1\u03BD\u03B8\u03B5\u03AF \u03C9\u03C2 \u03B1\u03C0\u03B5\u03C3\u03C4\u03B1\u03BB\u03BC\u03AD\u03BD\u03BF",confirm_send:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B8\u03B1 \u03B1\u03C0\u03BF\u03C3\u03C4\u03B1\u03BB\u03B5\u03AF \u03BC\u03AD\u03C3\u03C9 email \u03C3\u03C4\u03BF\u03BD \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7",starts_at:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03AD\u03BD\u03B1\u03C1\u03BE\u03B7\u03C2",due_date:"\u0397\u03BC/\u03BD\u03AF\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B7\u03C3\u03B7\u03C2",record_payment:"\u039A\u03B1\u03C4\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",add_new_invoice:"\u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF\u03C5 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",update_expense:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u0394\u03B1\u03C0\u03AC\u03BD\u03B7\u03C2",edit_invoice:"\u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1",new_invoice:"\u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1",send_automatically:"\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B7 \u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE",send_automatically_desc:"\u0395\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC, \u03B1\u03BD \u03B8\u03AD\u03BB\u03B5\u03C4\u03B5 \u03BD\u03B1 \u03C3\u03C4\u03B5\u03AF\u03BB\u03B5\u03C4\u03B5 \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1 \u03C3\u03C4\u03BF\u03BD \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7 \u03CC\u03C4\u03B1\u03BD \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03B7\u03B8\u03B5\u03AF.",save_invoice:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF\u03C5 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",update_invoice:"\u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF\u03C5 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",add_new_tax:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039D\u03AD\u03BF\u03C5 \u03A6\u03CC\u03C1\u03BF\u03C5",no_invoices:"\u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1!",mark_as_rejected:"\u03A3\u03AE\u03BC\u03B1\u03BD\u03C3\u03B7 \u03C9\u03C2 \u03B1\u03C0\u03BF\u03C1\u03C1\u03AF\u03C6\u03B8\u03B7\u03BA\u03B5",mark_as_accepted:"\u03A3\u03AE\u03BC\u03B1\u03BD\u03C3\u03B7 \u03C9\u03C2 \u03B1\u03C0\u03BF\u03B4\u03B5\u03BA\u03C4\u03CC",list_of_invoices:"\u0391\u03C5\u03C4\u03AE \u03B7 \u03B5\u03BD\u03CC\u03C4\u03B7\u03C4\u03B1 \u03B8\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 \u03C4\u03B7 \u03BB\u03AF\u03C3\u03C4\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03C9\u03BD.",select_invoice:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",no_matching_invoices:"\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03B5\u03B9 \u03BA\u03B1\u03BD\u03AD\u03BD\u03B1 \u03B1\u03BD\u03C4\u03AF\u03C3\u03C4\u03BF\u03B9\u03C7\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF!",mark_as_sent_successfully:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C0\u03B9\u03C3\u03B7\u03BC\u03AC\u03BD\u03B8\u03B7\u03BA\u03B5 \u03C9\u03C2 \u03B1\u03C0\u03B5\u03C3\u03C4\u03B1\u03BB\u03BC\u03AD\u03BD\u03BF \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",invoice_sent_successfully:"\u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03BA\u03BB\u03C9\u03BD\u03BF\u03C0\u03BF\u03B9\u03AE\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AE\u03C2",cloned_successfully:"\u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03BA\u03BB\u03C9\u03BD\u03BF\u03C0\u03BF\u03B9\u03AE\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AE\u03C2",clone_invoice:"\u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF\u03C5 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",confirm_clone:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03B5\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B8\u03B1 \u03BA\u03BB\u03C9\u03BD\u03BF\u03C0\u03BF\u03B9\u03B7\u03B8\u03B5\u03AF \u03C3\u03B5 \u03AD\u03BD\u03B1 \u03BD\u03AD\u03BF \u03B5\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF",item:{title:"\u03A4\u03AF\u03C4\u03BB\u03BF\u03C2 \u03A0\u03C1\u03BF\u03CA\u03CC\u03BD\u03C4\u03BF\u03C2",description:"\u03A0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE",quantity:"\u03A0\u03BF\u03C3\u03CC\u03C4\u03B7\u03C4\u03B1",price:"\u03A4\u03B9\u03BC\u03AE",discount:"\u0388\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7",total:"\u03A3\u03CD\u03BD\u03BF\u03BB\u03BF\xA0",total_discount:"\u03A3\u03C5\u03BD\u03BF\u03BB\u03B9\u03BA\u03AE \u0388\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7",sub_total:"\u039C\u03B5\u03C1\u03B9\u03BA\u03CC \u03A3\u03CD\u03BD\u03BF\u03BB\u03BF",tax:"\u03A6\u03CC\u03C1\u03BF\u03C2",amount:"\u03A0\u03BF\u03C3\u03CC",select_an_item:"\u03A0\u03BB\u03B7\u03BA\u03C4\u03C1\u03BF\u03BB\u03BF\u03B3\u03AE\u03C3\u03C4\u03B5 \u03AE \u03BA\u03AC\u03BD\u03C4\u03B5 \u03BA\u03BB\u03B9\u03BA \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B5\u03C0\u03B9\u03BB\u03AD\u03BE\u03B5\u03C4\u03B5 \u03AD\u03BD\u03B1 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF",type_item_description:"\u03A0\u03BB\u03B7\u03BA\u03C4\u03C1\u03BF\u03BB\u03BF\u03B3\u03AE\u03C3\u03C4\u03B5 \u03A0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5 (\u03C0\u03C1\u03BF\u03B1\u03B9\u03C1\u03B5\u03C4\u03B9\u03BA\u03CC)"},frequency:{title:"\u03A3\u03C5\u03C7\u03BD\u03CC\u03C4\u03B7\u03C4\u03B1",select_frequency:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03C3\u03C5\u03C7\u03BD\u03BF\u03C4\u03AE\u03C4\u03C9\u03BD",minute:"\u039B\u03B5\u03C0\u03C4\u03CC",hour:"\u038F\u03C1\u03B1",day_month:"\u0397\u03BC\u03AD\u03C1\u03B1 \u03C4\u03BF\u03C5 \u03BC\u03AE\u03BD\u03B1",month:"\u039C\u03AE\u03BD\u03B1\u03C2",day_week:"\u0397\u03BC\u03AD\u03C1\u03B1 \u03C4\u03B7\u03C2 \u03B5\u03B2\u03B4\u03BF\u03BC\u03AC\u03B4\u03B1\u03C2"},confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03AE \u03C4\u03B7\u03BD \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u2019, \u03B4\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03AD\u03C2 \u03C4\u03B9\u03C2 \u03B5\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",created_message:"\u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03BA\u03BB\u03C9\u03BD\u03BF\u03C0\u03BF\u03B9\u03AE\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AE\u03C2",updated_message:"\u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03BA\u03BB\u03C9\u03BD\u03BF\u03C0\u03BF\u03B9\u03AE\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AE\u03C2",deleted_message:"\u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF \u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C6\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2 \u2018 \u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03B1 \u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C6\u03B7\u03BA\u03B1\u03BD \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1",marked_as_sent_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C0\u03B9\u03C3\u03B7\u03BC\u03AC\u03BD\u03B8\u03B7\u03BA\u03B5 \u03C9\u03C2 \u03B1\u03C0\u03B5\u03C3\u03C4\u03B1\u03BB\u03BC\u03AD\u03BD\u03BF \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",user_email_does_not_exist:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF e-mail \u03B4\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03B5\u03B9",something_went_wrong:"\u039A\u03AC\u03C4\u03B9 \u03C0\u03AE\u03B3\u03B5 \u03C3\u03C4\u03C1\u03B1\u03B2\u03AC",invalid_due_amount_message:"\u03A3\u03C5\u03BD\u03BF\u03BB\u03B9\u03BA\u03CC \u03B5\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF \u03C0\u03BF\u03C3\u03CC \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5 \u03B4\u03B5\u03BD \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B9\u03BA\u03C1\u03CC\u03C4\u03B5\u03C1\u03BF \u03B1\u03C0\u03CC \u03C4\u03BF \u03C3\u03C5\u03BD\u03BF\u03BB\u03B9\u03BA\u03CC \u03BA\u03B1\u03C4\u03B1\u03B2\u03BB\u03B7\u03B8\u03AD\u03BD \u03C0\u03BF\u03C3\u03CC \u03B3\u03B9\u03B1 \u03B1\u03C5\u03C4\u03CC \u03C4\u03BF \u03B5\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF. \u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03BF\u03CD\u03BC\u03B5 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03C3\u03C4\u03B5 \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03AE \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C8\u03C4\u03B5 \u03C4\u03B9\u03C2 \u03C3\u03C7\u03B5\u03C4\u03B9\u03BA\u03AD\u03C2 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AD\u03C2 \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03C3\u03C5\u03BD\u03B5\u03C7\u03AF\u03C3\u03B5\u03C4\u03B5."},iw={title:"\u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AD\u03C2",payments_list:"\u039B\u03AF\u03C3\u03C4\u03B1 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03CE\u03BD",record_payment:"\u039A\u03B1\u03C4\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",customer:"\u03A0\u03B5\u03BB\u03AC\u03C4\u03B7\u03C2",date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",amount:"\u03A0\u03BF\u03C3\u03CC",action:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1",payment_number:"\u0391\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",payment_mode:"\u03A4\u03C1\u03CC\u03C0\u03BF\u03C2 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",invoice:"\u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF",note:"\u03A3\u03B7\u03BC\u03B5\u03AF\u03C9\u03C3\u03B7",add_payment:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",new_payment:"\u039D\u03AD\u03B1 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE",edit_payment:"\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",view_payment:"\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",add_new_payment:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039D\u03AD\u03B1\u03C2 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",send_payment_receipt:"\u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE \u0391\u03C0\u03CC\u03B4\u03B5\u03B9\u03BE\u03B7\u03C2 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",send_payment:"\u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",save_payment:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",update_payment:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",payment:"\u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AD\u03C2 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03CE\u03BD",no_payments:"\u039A\u03B1\u03BC\u03AF\u03B1 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE \u03B1\u03BA\u03CC\u03BC\u03B1!",not_selected:"\u0394\u03B5\u03BD \u03AD\u03C7\u03B5\u03B9 \u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03B5\u03AF",no_invoice:"\u03A7\u03C9\u03C1\u03AF\u03C2 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF",no_matching_payments:"\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03BF\u03C5\u03BD \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AD\u03C2 \u03C0\u03BF\u03C5 \u03BD\u03B1 \u03C4\u03B1\u03B9\u03C1\u03B9\u03AC\u03B6\u03BF\u03C5\u03BD!",list_of_payments:"\u0391\u03C5\u03C4\u03AE \u03B7 \u03B5\u03BD\u03CC\u03C4\u03B7\u03C4\u03B1 \u03B8\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 \u03C4\u03BF\u03BD \u03BA\u03B1\u03C4\u03AC\u03BB\u03BF\u03B3\u03BF \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03CE\u03BD.",select_payment_mode:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03C4\u03C1\u03CC\u03C0\u03BF \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",confirm_mark_as_sent:"\u0397 \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u03B1\u03C5\u03C4\u03AE \u03B8\u03B1 \u03B5\u03C0\u03B9\u03C3\u03B7\u03BC\u03B1\u03BD\u03B8\u03B5\u03AF \u03C9\u03C2 \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7",confirm_send_payment:"\u0391\u03C5\u03C4\u03AE \u03B7 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE \u03B8\u03B1 \u03C3\u03C4\u03B1\u03BB\u03B5\u03AF \u03BC\u03AD\u03C3\u03C9 email \u03C3\u03C4\u03BF\u03BD \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7",send_payment_successfully:"\u0397 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",something_went_wrong:"\u039A\u03AC\u03C4\u03B9 \u03C0\u03AE\u03B3\u03B5 \u03C3\u03C4\u03C1\u03B1\u03B2\u03AC",confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03AE \u03C4\u03B7\u03BD \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u2019, \u03B4\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03AD\u03C2 \u03C4\u03B9\u03C2 \u03B5\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",created_message:"\u0397 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",updated_message:"\u0397 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",deleted_message:"\u039F \u03C5\u03C0\u03BF\u03BB\u03BF\u03B3\u03B9\u03C3\u03BC\u03CC\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C6\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",invalid_amount_message:"\u03A4\u03BF \u03C0\u03BF\u03C3\u03CC \u03B4\u03B5\u03BD \u03B5\u03AF\u03BD\u03B1\u03B9 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF"},nw={title:"\u0388\u03BE\u03BF\u03B4\u03B1",expenses_list:"\u039B\u03AF\u03C3\u03C4\u03B1 \u0395\u03BE\u03CC\u03B4\u03C9\u03BD",select_a_customer:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03AD\u03BD\u03B1\u03BD \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7",expense_title:"\u03A4\u03AF\u03C4\u03BB\u03BF\u03C2",customer:"\u03A0\u03B5\u03BB\u03AC\u03C4\u03B7\u03C2",currency:"\u039D\u03CC\u03BC\u03B9\u03C3\u03BC\u03B1",contact:"\u0395\u03C0\u03B9\u03BA\u03BF\u03B9\u03BD\u03C9\u03BD\u03AF\u03B1",category:"\u039A\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B1",from_date:"\u0391\u03C0\u03CC \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",to_date:"\u0388\u03C9\u03C2 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",expense_date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",description:"\u03A0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE",receipt:"\u0391\u03C0\u03CC\u03B4\u03B5\u03B9\u03BE\u03B7",amount:"\u03A0\u03BF\u03C3\u03CC",action:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1",not_selected:"\u0394\u03B5\u03BD \u03AD\u03C7\u03B5\u03B9 \u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03B5\u03AF",note:"\u03A3\u03B7\u03BC\u03B5\u03AF\u03C9\u03C3\u03B7",category_id:"ID \u039A\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B1\u03C2",date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",add_expense:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03B4\u03B1\u03C0\u03AC\u03BD\u03B7\u03C2",add_new_expense:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03B4\u03B1\u03C0\u03AC\u03BD\u03B7\u03C2",save_expense:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u0394\u03B1\u03C0\u03AC\u03BD\u03B7\u03C2",update_expense:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u0394\u03B1\u03C0\u03AC\u03BD\u03B7\u03C2",download_receipt:"\u039B\u03AE\u03C8\u03B7 \u0391\u03C0\u03CC\u03B4\u03B5\u03B9\u03BE\u03B7\u03C2",edit_expense:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03B4\u03B1\u03C0\u03AC\u03BD\u03B7\u03C2",new_expense:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03B4\u03B1\u03C0\u03AC\u03BD\u03B7\u03C2",expense:"\u0388\u03BE\u03BF\u03B4\u03B1 - \u0388\u03BE\u03BF\u03B4\u03B1",no_expenses:"\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03BF\u03C5\u03BD \u03AD\u03BE\u03BF\u03B4\u03B1 \u03B1\u03BA\u03CC\u03BC\u03B1!",list_of_expenses:"\u0391\u03C5\u03C4\u03AE \u03B7 \u03B5\u03BD\u03CC\u03C4\u03B7\u03C4\u03B1 \u03B8\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 \u03C4\u03B7 \u03BB\u03AF\u03C3\u03C4\u03B1 \u03C4\u03C9\u03BD \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03C9\u03BD.",confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03AE \u03C4\u03B7\u03BD \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u2019, \u03B4\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03AD\u03C2 \u03C4\u03B9\u03C2 \u03B5\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",created_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",updated_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",deleted_message:"\u039F \u03C5\u03C0\u03BF\u03BB\u03BF\u03B3\u03B9\u03C3\u03BC\u03CC\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C6\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",categories:{categories_list:"\u039B\u03AF\u03C3\u03C4\u03B1 \u039A\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03C9\u03BD",title:"\u03A4\u03AF\u03C4\u03BB\u03BF\u03C2",name:"\u038C\u03BD\u03BF\u03BC\u03B1",description:"\u03A0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE",amount:"\u03A0\u03BF\u03C3\u03CC",actions:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B5\u03C2",add_category:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039A\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B1\u03C2",new_category:"\u039D\u03AD\u03B1 \u03BA\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B1",category:'\u039A\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B1 "\u039A\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B5\u03C2',select_a_category:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03BC\u03B9\u03B1 \u03BA\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B1"}},sw={email:"\u0397\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03AE \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7",password:"\u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2",forgot_password:"\u039E\u03B5\u03C7\u03AC\u03C3\u03B1\u03C4\u03B5 \u03C4\u03BF\u03BD \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC;",or_signIn_with:"or sign in with",login:"\u03A3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7",register:"\u0395\u03B3\u03B3\u03C1\u03B1\u03C6\u03B5\u03AF\u03C4\u03B5",reset_password:"\u0395\u03C0\u03B1\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2",password_reset_successfully:"\u0395\u03C0\u03B1\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC \u03C4\u03BF\u03C5 \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1",enter_email:"\u0395\u03B9\u03C3\u03AC\u03B3\u03B5\u03C4\u03B5 email",enter_password:"\u0395\u03B9\u03C3\u03B1\u03B3\u03C9\u03B3\u03AE \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2",retype_password:"\u03A0\u03BB\u03B7\u03BA\u03C4\u03C1\u03BF\u03BB\u03CC\u03B3\u03B7\u03C3\u03B5 \u03BA\u03B1\u03B9 \u03C0\u03AC\u03BB\u03B9 \u03C4\u03BF\u03BD \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC"},ow={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},rw={title:"\u03A7\u03C1\u03AE\u03C3\u03C4\u03B5\u03C2",users_list:"\u039B\u03AF\u03C3\u03C4\u03B1 \u03A7\u03C1\u03B7\u03C3\u03C4\u03CE\u03BD",name:"\u038C\u03BD\u03BF\u03BC\u03B1",description:"\u03A0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE",added_on:"\u03A0\u03C1\u03BF\u03C3\u03C4\u03AD\u03B8\u03B7\u03BA\u03B5 \u03A3\u03C4\u03B9\u03C2",date_of_creation:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1\u03C2",action:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1",add_user:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03A7\u03C1\u03AE\u03C3\u03C4\u03B7",save_user:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u03A7\u03C1\u03AE\u03C3\u03C4\u03B7",update_user:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7",user:"\u03A7\u03C1\u03AE\u03C3\u03C4\u03B7\u03C2 | \u03A7\u03C1\u03AE\u03C3\u03C4\u03B5\u03C2",add_new_user:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03BD\u03AD\u03BF\u03C5 \u03A7\u03C1\u03AE\u03C3\u03C4\u03B7",new_user:"\u039D\u03AD\u03BF\u03C2 \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7\u03C2",edit_user:"\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u03A7\u03C1\u03AE\u03C3\u03C4\u03B7",no_users:"\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03BF\u03C5\u03BD \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03B1\u03BA\u03CC\u03BC\u03B1!",list_of_users:"\u0391\u03C5\u03C4\u03AE \u03B7 \u03B5\u03BD\u03CC\u03C4\u03B7\u03C4\u03B1 \u03B8\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 \u03C4\u03B7 \u03BB\u03AF\u03C3\u03C4\u03B1 \u03C4\u03C9\u03BD \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03C9\u03BD.",email:"\u0397\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03AE \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7",phone:"\u03A4\u03B7\u03BB\u03AD\u03C6\u03C9\u03BD\u03BF",password:"\u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2",user_attached_message:"\u0394\u03B5\u03BD \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03C5\u03BD\u03B1\u03C4\u03AE \u03B7 \u03B4\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03B5\u03BD\u03CC\u03C2 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5 \u03C0\u03BF\u03C5 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF\u03C4\u03B1\u03B9 \u03AE\u03B4\u03B7",confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03AE \u03C4\u03B7\u03BD \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u2019, \u03B4\u03B5\u03BD \u03B8\u03B1 \u03B5\u03AF\u03C3\u03C4\u03B5 \u03C3\u03B5 \u03B8\u03AD\u03C3\u03B7 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03B9 \u03B1\u03C5\u03C4\u03AD\u03C2 \u03C4\u03B9\u03C2 \u03B5\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",created_message:"\u039F \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7\u03C2 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AE\u03B8\u03B7\u03BA\u03B5 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1",updated_message:"\u039F \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7\u03C2 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03B8\u03B7\u03BA\u03B5 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1",deleted_message:"\u039F \u03C5\u03C0\u03BF\u03BB\u03BF\u03B3\u03B9\u03C3\u03BC\u03CC\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C6\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",select_company_role:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03C1\u03CC\u03BB\u03BF \u03B3\u03B9\u03B1 {company}",companies:"\u0395\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B5\u03C2"},dw={title:"\u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC",from_date:"\u0391\u03C0\u03CC \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",to_date:"\u0388\u03C9\u03C2 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",status:"\u039A\u03B1\u03C4\u03AC\u03C3\u03C4\u03B1\u03C3\u03B7",paid:"\u0395\u03BE\u03BF\u03C6\u03BB\u03B7\u03BC\u03AD\u03BD\u03BF",unpaid:"\u0391\u03BD\u03B5\u03BE\u03CC\u03C6\u03BB\u03B7\u03C4\u03BF",download_pdf:"\u039B\u03AE\u03C8\u03B7 PDF",view_pdf:"\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE PDF",update_report:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC\u03C2",report:"\u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC | \u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AD\u03C2",profit_loss:{profit_loss:"\u039A\u03AD\u03C1\u03B4\u03B7 & \u0391\u03C0\u03CE\u03BB\u03B5\u03B9\u03B1",to_date:"\u0388\u03C9\u03C2 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",from_date:"\u0391\u03C0\u03CC \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",date_range:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03B5\u03CD\u03C1\u03BF\u03C2 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1\u03C2"},sales:{sales:"\u03A0\u03C9\u03BB\u03AE\u03C3\u03B5\u03B9\u03C2",date_range:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03B5\u03CD\u03C1\u03BF\u03C2 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1\u03C2",to_date:"\u0388\u03C9\u03C2 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",from_date:"\u0391\u03C0\u03CC \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",report_type:"\u03A4\u03CD\u03C0\u03BF\u03C2 \u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC\u03C2"},taxes:{taxes:"\u03A6\u03CC\u03C1\u03BF\u03B9",to_date:"\u0388\u03C9\u03C2 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",from_date:"\u0391\u03C0\u03CC \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",date_range:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03B5\u03CD\u03C1\u03BF\u03C2 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1\u03C2"},errors:{required:"\u03A4\u03BF \u03C0\u03B5\u03B4\u03AF\u03BF \u03B5\u03AF\u03BD\u03B1\u03B9 \u03C5\u03C0\u03BF\u03C7\u03C1\u03B5\u03C9\u03C4\u03B9\u03BA\u03CC"},invoices:{invoice:"\u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF",invoice_date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",due_date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BB\u03AE\u03BE\u03B7\u03C2",amount:"\u03A0\u03BF\u03C3\u03CC",contact_name:"\u038C\u03BD\u03BF\u03BC\u03B1 \u0395\u03C0\u03B1\u03C6\u03AE\u03C2",status:"\u039A\u03B1\u03C4\u03AC\u03C3\u03C4\u03B1\u03C3\u03B7"},estimates:{estimate:"\u0395\u03BA\u03C4\u03B9\u03BC\u03CE\u03BC\u03B5\u03BD\u03BF",estimate_date:"\u0395\u03BA\u03C4\u03B9\u03BC\u03CE\u03BC\u03B5\u03BD\u03B7 \u03B7\u03BC. \u03B5\u03C0\u03B9\u03C3\u03BA\u03B5\u03C5\u03AE\u03C2",due_date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BB\u03AE\u03BE\u03B7\u03C2",estimate_number:"\u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u0391\u03C1\u03B9\u03B8\u03BC\u03BF\u03CD",ref_number:"\u0391\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC\u03C2",amount:"\u03A0\u03BF\u03C3\u03CC",contact_name:"\u038C\u03BD\u03BF\u03BC\u03B1 \u0395\u03C0\u03B1\u03C6\u03AE\u03C2",status:"\u039A\u03B1\u03C4\u03AC\u03C3\u03C4\u03B1\u03C3\u03B7"},expenses:{expenses:"\u0388\u03BE\u03BF\u03B4\u03B1",category:"\u039A\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B1",date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",amount:"\u03A0\u03BF\u03C3\u03CC",to_date:"\u0388\u03C9\u03C2 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",from_date:"\u0391\u03C0\u03CC \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",date_range:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03B5\u03CD\u03C1\u03BF\u03C2 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1\u03C2"}},lw={menu_title:{account_settings:"\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u039B\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03BF\u03CD",company_information:"\u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B5\u03C2 \u0395\u03C4\u03B1\u03B9\u03C1\u03AF\u03B1\u03C2",customization:"\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE",preferences:"\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2",notifications:"\u0395\u03B9\u03B4\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03B5\u03B9\u03C2",tax_types:"\u03A6\u03BF\u03C1\u03BF\u03BB\u03BF\u03B3\u03B9\u03BA\u03AE \u03BA\u03BB\u03AC\u03C3\u03B7",expense_category:"\u039A\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B5\u03C2 \u0395\u03BE\u03CC\u03B4\u03C9\u03BD",update_app:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u03B5\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE\u03C2",backup:"\u0391\u03BD\u03C4\u03AF\u03B3\u03C1\u03B1\u03C6\u03B1 \u03B1\u03C3\u03C6\u03B1\u03BB\u03B5\u03AF\u03B1\u03C2",file_disk:"\u0394\u03AF\u03C3\u03BA\u03BF\u03C2 \u0391\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5",custom_fields:"\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03B1 \u03C0\u03B5\u03B4\u03AF\u03B1",payment_modes:"\u03A4\u03C1\u03CC\u03C0\u03BF\u03C2 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",notes:"\u03A3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03B5\u03B9\u03C2",exchange_rate:"\u03A3\u03C5\u03BD\u03B1\u03BB\u03BB\u03B1\u03B3\u03BC\u03B1\u03C4\u03B9\u03BA\u03AE \u03B9\u03C3\u03BF\u03C4\u03B9\u03BC\u03AF\u03B1",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2",setting:"\u03A1\u03CD\u03B8\u03BC\u03B9\u03C3\u03B7 \u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03C9\u03BD",general:"General",language:"Language",primary_currency:"\u039A\u03CD\u03C1\u03B9\u03BF \u039D\u03CC\u03BC\u03B9\u03C3\u03BC\u03B1",timezone:"\u0396\u03CE\u03BD\u03B7 \u038F\u03C1\u03B1\u03C2",date_format:"\u039C\u03BF\u03C1\u03C6\u03AE \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1\u03C2",currencies:{title:"\u03A3\u03C5\u03BD\u03AC\u03BB\u03BB\u03B1\u03B3\u03BC\u03B1",currency:"\u039D\u03CC\u03BC\u03B9\u03C3\u03BC\u03B1",currencies_list:"\u039B\u03AF\u03C3\u03C4\u03B1 \u03C3\u03C5\u03BD\u03B1\u03BB\u03BB\u03B1\u03B3\u03BC\u03AC\u03C4\u03C9\u03BD",select_currency:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03BD\u03BF\u03BC\u03AF\u03C3\u03BC\u03B1\u03C4\u03BF\u03C2",name:"\u038C\u03BD\u03BF\u03BC\u03B1",code:"\u039A\u03CE\u03B4\u03B9\u03BA\u03B1\u03C2",symbol:"\u03A3\u03CD\u03BC\u03B2\u03BF\u03BB\u03BF",precision:"\u0391\u03BA\u03C1\u03AF\u03B2\u03B5\u03B9\u03B1",thousand_separator:"\u0394\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03C4\u03B9\u03BA\u03CC \u03C7\u03B9\u03BB\u03B9\u03AC\u03B4\u03C9\u03BD",decimal_separator:"\u0394\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03C4\u03AE\u03C2 \u03B4\u03B5\u03BA\u03B1\u03B4\u03B9\u03BA\u03CE\u03BD",position:"\u0398\u03AD\u03C3\u03B7",position_of_symbol:"\u0398\u03AD\u03C3\u03B7 \u03A3\u03C5\u03BC\u03B2\u03CC\u03BB\u03BF\u03C5",right:"\u0394\u03B5\u03BE\u03B9\u03AC",left:"\u0391\u03C1\u03B9\u03C3\u03C4\u03B5\u03C1\u03AC",action:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1",add_currency:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AD\u03C3\u03C4\u03B5 \u03BD\u03CC\u03BC\u03B9\u03C3\u03BC\u03B1"},mail:{host:"\u0394\u03B9\u03B1\u03BA\u03BF\u03BC\u03B9\u03C3\u03C4\u03AE\u03C2 \u0391\u03BB\u03BB\u03B7\u03BB\u03BF\u03B3\u03C1\u03B1\u03C6\u03AF\u03B1\u03C2",port:"\u0394\u03B9\u03B1\u03BA\u03BF\u03BC\u03B9\u03C3\u03C4\u03AE\u03C2 \u0391\u03BB\u03BB\u03B7\u03BB\u03BF\u03B3\u03C1\u03B1\u03C6\u03AF\u03B1\u03C2",driver:"\u039F\u03B4\u03B7\u03B3\u03CC\u03C2 \u0391\u03BB\u03BB\u03B7\u03BB\u03BF\u03B3\u03C1\u03B1\u03C6\u03AF\u03B1\u03C2",secret:"\u039C\u03C5\u03C3\u03C4\u03B9\u03BA\u03CC",mailgun_secret:"\u039C\u03C5\u03C3\u03C4\u03B9\u03BA\u03CC Mailgun",mailgun_domain:"\u03A4\u03BF\u03BC\u03AD\u03B1\u03C2",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES \u039C\u03C5\u03C3\u03C4\u03B9\u03BA\u03CC",ses_key:"\u039A\u03BB\u03B5\u03B9\u03B4\u03AF SES",password:"\u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03A0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03A4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B5\u03AF\u03BF\u03C5",username:"\u038C\u03BD\u03BF\u03BC\u03B1 \u03A4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B5\u03AF\u03BF\u03C5",mail_config:"\u0394\u03B9\u03B1\u03BC\u03CC\u03C1\u03C6\u03C9\u03C3\u03B7 Mail",from_name:"\u038C\u03BD\u03BF\u03BC\u03B1 \u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AD\u03B1",from_mail:"\u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 \u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE\u03C2",encryption:"\u039A\u03C1\u03C5\u03C0\u03C4\u03BF\u03B3\u03C1\u03AC\u03C6\u03B7\u03C3\u03B7 Email",mail_config_desc:"\u03A0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B7 \u03C6\u03CC\u03C1\u03BC\u03B1 \u03B3\u03B9\u03B1 \u03C4\u03B7 \u03C1\u03CD\u03B8\u03BC\u03B9\u03C3\u03B7 \u03C0\u03B1\u03C1\u03B1\u03BC\u03AD\u03C4\u03C1\u03C9\u03BD \u03C4\u03BF\u03C5 \u03C0\u03C1\u03BF\u03B3\u03C1\u03AC\u03BC\u03BC\u03B1\u03C4\u03BF\u03C2 \u03BF\u03B4\u03AE\u03B3\u03B7\u03C3\u03B7\u03C2 \u03B7\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03BF\u03CD \u03C4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B5\u03AF\u03BF\u03C5 \u03B3\u03B9\u03B1 \u03C4\u03B7\u03BD \u03B1\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE \u03BC\u03B7\u03BD\u03C5\u03BC\u03AC\u03C4\u03C9\u03BD \u03B7\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03BF\u03CD \u03C4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B5\u03AF\u03BF\u03C5 \u03B1\u03C0\u03CC \u03C4\u03B7\u03BD \u03B5\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE. \u039C\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03B5\u03C0\u03AF\u03C3\u03B7\u03C2 \u03BD\u03B1 \u03C1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03C4\u03B5 \u03C4\u03B9\u03C2 \u03C0\u03B1\u03C1\u03B1\u03BC\u03AD\u03C4\u03C1\u03BF\u03C5\u03C2 \u03C4\u03C1\u03AF\u03C4\u03C9\u03BD \u03C0\u03B1\u03C1\u03CC\u03C7\u03C9\u03BD \u03CC\u03C0\u03C9\u03C2 \u03C4\u03BF Sendgrid, \u03C4\u03BF SES \u03BA\u03BB\u03C0."},pdf:{title:"\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 PDF",footer_text:"\u039A\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u03A5\u03C0\u03BF\u03C3\u03AD\u03BB\u03B9\u03B4\u03BF\u03C5",pdf_layout:"\u0394\u03B9\u03AC\u03C4\u03B1\u03BE\u03B7 PDF"},company_info:{company_info:"\u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B5\u03C2 \u0395\u03C4\u03B1\u03B9\u03C1\u03AF\u03B1\u03C2",company_name:"\u038C\u03BD\u03BF\u03BC\u03B1 \u0395\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2",company_logo:"\u039B\u03BF\u03B3\u03CC\u03C4\u03C5\u03C0\u03BF \u0395\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2",section_description:"\u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B5\u03C2 \u03C3\u03C7\u03B5\u03C4\u03B9\u03BA\u03AC \u03BC\u03B5 \u03C4\u03B7\u03BD \u03B5\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1 \u03C3\u03B1\u03C2 \u03C0\u03BF\u03C5 \u03B8\u03B1 \u03B5\u03BC\u03C6\u03B1\u03BD\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1, \u03B5\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2 \u03BA\u03B1\u03B9 \u03AC\u03BB\u03BB\u03B1 \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03B1 \u03C0\u03BF\u03C5 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03BF\u03CD\u03BD\u03C4\u03B1\u03B9 \u03B1\u03C0\u03CC \u03C4\u03B7\u03BD Crater.",phone:"\u03A4\u03B7\u03BB\u03AD\u03C6\u03C9\u03BD\u03BF",country:"\u03A7\u03CE\u03C1\u03B1",state:"\u039D\u03BF\u03BC\u03CC\u03C2",city:"\u03A0\u03CC\u03BB\u03B7",address:"\u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7",zip:"\u03A4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B9\u03BA\u03CC\u03C2 \u039A\u03CE\u03B4\u03B9\u03BA\u03B1\u03C2",save:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7",delete:"\u0394\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE",updated_message:"\u039F\u03B9 \u03C0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B5\u03C2 \u03B3\u03B9\u03B1 \u03C4\u03BF\u03BD \u03C0\u03CD\u03C1\u03B3\u03BF \u03B5\u03BC\u03C6\u03B9\u03AC\u03BB\u03C9\u03C3\u03B7\u03C2 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03B8\u03B7\u03BA\u03B1\u03BD \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2.",delete_company:"\u0394\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u0395\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2",delete_company_description:"\u039C\u03CC\u03BB\u03B9\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C8\u03B5\u03C4\u03B5 \u03C4\u03B7\u03BD \u03B5\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1 \u03C3\u03B1\u03C2, \u03B8\u03B1 \u03C7\u03AC\u03C3\u03B5\u03C4\u03B5 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1 \u03BA\u03B1\u03B9 \u03C4\u03B1 \u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 \u03C0\u03BF\u03C5 \u03C3\u03C7\u03B5\u03C4\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03BC\u03B5 \u03B1\u03C5\u03C4\u03AE \u03BC\u03CC\u03BD\u03B9\u03BC\u03B1.",are_you_absolutely_sure:"\u0395\u03AF\u03C3\u03B1\u03B9 \u03C3\u03AF\u03B3\u03BF\u03C5\u03C1\u03BF\u03C2/\u03B7;",delete_company_modal_desc:"\u0391\u03C5\u03C4\u03AE \u03B7 \u03B5\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1 \u03B4\u03B5\u03BD \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF \u03BD\u03B1 \u03B1\u03BD\u03B1\u03B9\u03C1\u03B5\u03B8\u03B5\u03AF. \u0391\u03C5\u03C4\u03CC \u03B8\u03B1 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C8\u03B5\u03B9 \u03BC\u03CC\u03BD\u03B9\u03BC\u03B1 {company} \u03BA\u03B1\u03B9 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03C3\u03C5\u03C3\u03C7\u03B5\u03C4\u03B9\u03C3\u03BC\u03AD\u03BD\u03B1 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1.",delete_company_modal_label:"\u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03C0\u03BB\u03B7\u03BA\u03C4\u03C1\u03BF\u03BB\u03BF\u03B3\u03AE\u03C3\u03C4\u03B5 {company} \u03B3\u03B9\u03B1 \u03B5\u03C0\u03B9\u03B2\u03B5\u03B2\u03B1\u03AF\u03C9\u03C3\u03B7"},custom_fields:{title:"\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03B1 \u03C0\u03B5\u03B4\u03AF\u03B1",section_description:"\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03CC\u03C3\u03C4\u03B5 \u03C4\u03B1 \u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1 \u03C3\u03B1\u03C2, \u0395\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2 & \u0391\u03C0\u03BF\u03B4\u03B5\u03AF\u03BE\u03B5\u03B9\u03C2 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2 \u03BC\u03B5 \u03C4\u03B1 \u03B4\u03B9\u03BA\u03AC \u03C3\u03B1\u03C2 \u03C0\u03B5\u03B4\u03AF\u03B1. \u03A3\u03B9\u03B3\u03BF\u03C5\u03C1\u03B5\u03C5\u03C4\u03B5\u03AF\u03C4\u03B5 \u03CC\u03C4\u03B9 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF\u03C4\u03B5 \u03C4\u03B1 \u03C0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03C0\u03B5\u03B4\u03AF\u03B1 \u03C3\u03C4\u03B9\u03C2 \u03BC\u03BF\u03C1\u03C6\u03AD\u03C2 \u03B4\u03B9\u03B5\u03C5\u03B8\u03CD\u03BD\u03C3\u03B5\u03C9\u03BD \u03C3\u03C4\u03B7 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1 \u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE\u03C2.",add_custom_field:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03C0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF\u03C5 \u03C0\u03B5\u03B4\u03AF\u03BF\u03C5",edit_custom_field:"\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF\u03C5 \u03A0\u03B5\u03B4\u03AF\u03BF\u03C5",field_name:"\u038C\u03BD\u03BF\u03BC\u03B1 \u03C0\u03B5\u03B4\u03AF\u03BF\u03C5",label:"\u0395\u03C0\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE",type:"Type",name:"\u038C\u03BD\u03BF\u03BC\u03B1",slug:"\u0394\u03C5\u03BD\u03B1\u03C4\u03CC \u03C7\u03C4\u03CD\u03C0\u03B7\u03BC\u03B1",required:"\u0391\u03C0\u03B1\u03B9\u03C4\u03B5\u03AF\u03C4\u03B1\u03B9",placeholder:"\u03A3\u03CD\u03BC\u03B2\u03BF\u03BB\u03BF \u03C5\u03C0\u03BF\u03BA\u03B1\u03C4\u03AC\u03C3\u03C4\u03B1\u03C3\u03B7\u03C2",help_text:"\u039A\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u03B2\u03BF\u03AE\u03B8\u03B5\u03B9\u03B1\u03C2",default_value:"\u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B7 \u03C4\u03B9\u03BC\u03AE",prefix:"\u03A0\u03C1\u03CC\u03B8\u03B5\u03BC\u03B1",starting_number:"\u0391\u03C1\u03C7\u03AE \u03B1\u03C1\u03AF\u03B8\u03BC\u03B7\u03C3\u03B7\u03C2 \u03B1\u03C0\u03CC",model:"\u039C\u03BF\u03BD\u03C4\u03AD\u03BB\u03BF",help_text_description:"\u0395\u03B9\u03C3\u03AC\u03B3\u03B5\u03C4\u03B5 \u03BA\u03AC\u03C0\u03BF\u03B9\u03BF \u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B2\u03BF\u03B7\u03B8\u03AE\u03C3\u03B5\u03C4\u03B5 \u03C4\u03BF\u03C5\u03C2 \u03C7\u03C1\u03AE\u03C3\u03C4\u03B5\u03C2 \u03BD\u03B1 \u03BA\u03B1\u03C4\u03B1\u03BD\u03BF\u03AE\u03C3\u03BF\u03C5\u03BD \u03C4\u03BF\u03BD \u03C3\u03BA\u03BF\u03C0\u03CC \u03B1\u03C5\u03C4\u03BF\u03CD \u03C4\u03BF\u03C5 \u03C0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF\u03C5 \u03C0\u03B5\u03B4\u03AF\u03BF\u03C5.",suffix:"\u0395\u03C0\u03AF\u03B8\u03B5\u03BC\u03B1",yes:"\u039D\u03B1\u03B9",no:"\u038C\u03C7\u03B9",order:"\u03A3\u03B5\u03B9\u03C1\u03AC",custom_field_confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC \u03C4\u03BF \u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF \u03A0\u03B5\u03B4\u03AF\u03BF",already_in_use:"\u0397 \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 email \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF\u03C4\u03B1\u03B9 \u03AE\u03B4\u03B7",deleted_message:"\u0395\u03C0\u03B9\u03C4\u03C5\u03C7\u03AE\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03C0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF\u03C5 \u03BA\u03BB\u03B5\u03B9\u03B4\u03B9\u03BF\u03CD",options:"\u03C1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2",add_option:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE\u03C2",add_another_option:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03AC\u03BB\u03BB\u03B7\u03C2 \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE\u03C2",sort_in_alphabetical_order:"\u03A4\u03B1\u03BE\u03B9\u03BD\u03CC\u03BC\u03B7\u03C3\u03B7 \u03C3\u03B5 \u03B1\u03BB\u03C6\u03B1\u03B2\u03B7\u03C4\u03B9\u03BA\u03AE \u03C3\u03B5\u03B9\u03C1\u03AC",add_options_in_bulk:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03CE\u03BD \u03BC\u03B1\u03B6\u03B9\u03BA\u03AC",use_predefined_options:"\u03A7\u03C1\u03AE\u03C3\u03B7 \u03A0\u03C1\u03BF\u03BA\u03B1\u03B8\u03BF\u03C1\u03B9\u03C3\u03BC\u03AD\u03BD\u03C9\u03BD \u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03CE\u03BD",select_custom_date:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03B7 \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",select_relative_date:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03B5\u03C0\u03B9\u03C3\u03C4\u03C1\u03BF\u03C6\u03AE\u03C2",ticked_by_default:"\u0395\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03B7 \u03B1\u03C0\u03CC \u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE",updated_message:"\u0395\u03C0\u03B9\u03C4\u03C5\u03C7\u03AE\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03C0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF\u03C5 \u03BA\u03BB\u03B5\u03B9\u03B4\u03B9\u03BF\u03CD",added_message:"\u0395\u03C0\u03B9\u03C4\u03C5\u03C7\u03AE\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03C0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF\u03C5 \u03BA\u03BB\u03B5\u03B9\u03B4\u03B9\u03BF\u03CD",press_enter_to_add:"\u03A0\u03B1\u03C4\u03AE\u03C3\u03C4\u03B5 enter \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03C0\u03C1\u03BF\u03C3\u03B8\u03AD\u03C3\u03B5\u03C4\u03B5 \u03BD\u03AD\u03B1 \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE",model_in_use:"\u0394\u03B5\u03BD \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03C5\u03BD\u03B1\u03C4\u03AE \u03B7 \u03B5\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u03BC\u03BF\u03BD\u03C4\u03AD\u03BB\u03BF\u03C5 \u03B3\u03B9\u03B1 \u03C0\u03B5\u03B4\u03AF\u03B1 \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03AE\u03B4\u03B7 \u03C3\u03B5 \u03C7\u03C1\u03AE\u03C3\u03B7.",type_in_use:"\u0394\u03B5\u03BD \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03C5\u03BD\u03B1\u03C4\u03AE \u03B7 \u03B5\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u03BC\u03BF\u03BD\u03C4\u03AD\u03BB\u03BF\u03C5 \u03B3\u03B9\u03B1 \u03C0\u03B5\u03B4\u03AF\u03B1 \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03AE\u03B4\u03B7 \u03C3\u03B5 \u03C7\u03C1\u03AE\u03C3\u03B7."},customization:{customization:"\u03C0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE",updated_message:"\u039F\u03B9 \u03C0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B5\u03C2 \u03B3\u03B9\u03B1 \u03C4\u03BF\u03BD \u03C0\u03CD\u03C1\u03B3\u03BF \u03B5\u03BC\u03C6\u03B9\u03AC\u03BB\u03C9\u03C3\u03B7\u03C2 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03B8\u03B7\u03BA\u03B1\u03BD \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2.",save:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7",insert_fields:"\u03A0\u03B5\u03B4\u03AF\u03BF \u03B5\u03C4\u03B9\u03BA\u03AD\u03C4\u03B1\u03C2",learn_custom_format:"\u039C\u03AC\u03B8\u03B5\u03C4\u03B5 \u03C0\u03CE\u03C2 \u03BD\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF\u03C4\u03B5 \u03C0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03B7 \u03BC\u03BF\u03C1\u03C6\u03AE",add_new_component:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF\u03C5",component:"\u03A3\u03C5\u03C3\u03C4\u03B1\u03C4\u03B9\u03BA\u03CC",Parameter:"\u03A0\u03B1\u03C1\u03AC\u03BC\u03B5\u03C4\u03C1\u03BF\u03C2",series:"\u03A3\u03B5\u03B9\u03C1\u03AC",series_description:"\u0393\u03B9\u03B1 \u03BD\u03B1 \u03BF\u03C1\u03AF\u03C3\u03B5\u03C4\u03B5 \u03AD\u03BD\u03B1 \u03C3\u03C4\u03B1\u03C4\u03B9\u03BA\u03CC \u03C0\u03C1\u03CC\u03B8\u03B5\u03BC\u03B1/\u03B5\u03C0\u03AF\u03B8\u03B5\u03BC\u03B1 \u03CC\u03C0\u03C9\u03C2 'INV' \u03C3\u03B5 \u03CC\u03BB\u03B7 \u03C4\u03B7\u03BD \u03B5\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1 \u03C3\u03B1\u03C2. \u03A5\u03C0\u03BF\u03C3\u03C4\u03B7\u03C1\u03AF\u03B6\u03B5\u03B9 \u03BC\u03AE\u03BA\u03BF\u03C2 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B1 \u03AD\u03C9\u03C2 \u03BA\u03B1\u03B9 4 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2.",series_param_label:"\u038C\u03BD\u03BF\u03BC\u03B1 \u03C3\u03B5\u03B9\u03C1\u03AC\u03C2",delimiter:"\u0394\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03C4\u03B9\u03BA\u03CC",delimiter_description:"\u0395\u03BD\u03B9\u03B1\u03AF\u03BF\u03C2 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B1\u03C2 \u03B3\u03B9\u03B1 \u03C4\u03BF\u03BD \u03BA\u03B1\u03B8\u03BF\u03C1\u03B9\u03C3\u03BC\u03CC \u03C4\u03BF\u03C5 \u03BF\u03C1\u03AF\u03BF\u03C5 \u03BC\u03B5\u03C4\u03B1\u03BE\u03CD 2 \u03BE\u03B5\u03C7\u03C9\u03C1\u03B9\u03C3\u03C4\u03CE\u03BD \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03C9\u03BD. \u0391\u03C0\u03CC \u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03C4\u03BF \u03C3\u03B5\u03C4 \u03C4\u03BF\u03C5 -",delimiter_param_label:"\u03A4\u03B9\u03BC\u03AE \u039F\u03C1\u03B9\u03BF\u03B8\u03AD\u03C4\u03B7",date_format:"\u039C\u03BF\u03C1\u03C6\u03AE \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1\u03C2",date_format_description:"\u0388\u03BD\u03B1 \u03C4\u03BF\u03C0\u03B9\u03BA\u03CC \u03C0\u03B5\u03B4\u03AF\u03BF \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1\u03C2 \u03BA\u03B1\u03B9 \u03CE\u03C1\u03B1\u03C2 \u03C0\u03BF\u03C5 \u03B4\u03AD\u03C7\u03B5\u03C4\u03B1\u03B9 \u03BC\u03B9\u03B1 \u03C0\u03B1\u03C1\u03AC\u03BC\u03B5\u03C4\u03C1\u03BF \u03BC\u03BF\u03C1\u03C6\u03AE\u03C2. \u0397 \u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B7 \u03BC\u03BF\u03C1\u03C6\u03AE: 'Y' \u03B5\u03BC\u03C6\u03B1\u03BD\u03AF\u03B6\u03B5\u03B9 \u03C4\u03BF \u03C4\u03C1\u03AD\u03C7\u03BF\u03BD \u03AD\u03C4\u03BF\u03C2.",date_format_param_label:"\u039C\u03BF\u03C1\u03C6\u03AE",sequence:"\u0391\u03BB\u03BB\u03B7\u03BB\u03BF\u03C5\u03C7\u03AF\u03B1",sequence_description:"\u03A3\u03C5\u03BD\u03B5\u03C7\u03AE\u03C2 \u03B1\u03BA\u03BF\u03BB\u03BF\u03C5\u03B8\u03AF\u03B1 \u03B1\u03C1\u03B9\u03B8\u03BC\u03CE\u03BD \u03C3\u03B5 \u03CC\u03BB\u03B7 \u03C4\u03B7\u03BD \u03B5\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1 \u03C3\u03B1\u03C2. \u039C\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03BA\u03B1\u03B8\u03BF\u03C1\u03AF\u03C3\u03B5\u03C4\u03B5 \u03C4\u03BF \u03BC\u03AE\u03BA\u03BF\u03C2 \u03C4\u03BF\u03C5 \u03B4\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF\u03C5 \u03C0\u03B1\u03C1\u03B1\u03BC\u03AD\u03C4\u03C1\u03BF\u03C5.",sequence_param_label:"\u039C\u03AE\u03BA\u03BF\u03C2 \u0391\u03BA\u03BF\u03BB\u03BF\u03C5\u03B8\u03AF\u03B1\u03C2",customer_series:"\u03A3\u03B5\u03B9\u03C1\u03AC \u03A0\u03B5\u03BB\u03B1\u03C4\u03CE\u03BD",customer_series_description:"\u0393\u03B9\u03B1 \u03BD\u03B1 \u03BF\u03C1\u03AF\u03C3\u03B5\u03C4\u03B5 \u03AD\u03BD\u03B1 \u03B4\u03B9\u03B1\u03C6\u03BF\u03C1\u03B5\u03C4\u03B9\u03BA\u03CC \u03C0\u03C1\u03CC\u03B8\u03B5\u03BC\u03B1/\u03B5\u03C0\u03AF\u03B8\u03B5\u03BC\u03B1 \u03B3\u03B9\u03B1 \u03BA\u03AC\u03B8\u03B5 \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7.",customer_sequence:"\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03CC\u03C3\u03C4\u03B5 \u03C4\u03B7\u03BD \u03B1\u03C1\u03B9\u03B8\u03BC\u03BF\u03B4\u03CC\u03C4\u03B7\u03C3\u03B7",customer_sequence_description:"\u03A3\u03C5\u03BD\u03B5\u03C7\u03AE\u03C2 \u03B1\u03BA\u03BF\u03BB\u03BF\u03C5\u03B8\u03AF\u03B1 \u03B1\u03C1\u03B9\u03B8\u03BC\u03CE\u03BD \u03B3\u03B9\u03B1 \u03BA\u03AC\u03B8\u03B5 \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7 \u03C3\u03B1\u03C2.",customer_sequence_param_label:"\u039C\u03AE\u03BA\u03BF\u03C2 \u0391\u03BA\u03BF\u03BB\u03BF\u03C5\u03B8\u03AF\u03B1\u03C2",random_sequence:"\u03A4\u03C5\u03C7\u03B1\u03AF\u03B1 \u0391\u03BA\u03BF\u03BB\u03BF\u03C5\u03B8\u03AF\u03B1",random_sequence_description:"\u03A4\u03C5\u03C7\u03B1\u03AF\u03B1 \u03B1\u03BB\u03C6\u03B1\u03C1\u03B9\u03B8\u03BC\u03B7\u03C4\u03B9\u03BA\u03AE \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC. \u039C\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03BA\u03B1\u03B8\u03BF\u03C1\u03AF\u03C3\u03B5\u03C4\u03B5 \u03C4\u03BF \u03BC\u03AE\u03BA\u03BF\u03C2 \u03C4\u03BF\u03C5 \u03B4\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF\u03C5 \u03C0\u03B1\u03C1\u03B1\u03BC\u03AD\u03C4\u03C1\u03BF\u03C5.",random_sequence_param_label:"\u039C\u03AE\u03BA\u03BF\u03C2 \u0391\u03BA\u03BF\u03BB\u03BF\u03C5\u03B8\u03AF\u03B1\u03C2",invoices:{title:"\u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1",invoice_number_format:"\u039C\u03BF\u03C1\u03C6\u03AE \u0391\u03C1\u03B9\u03B8\u03BC\u03BF\u03CD \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",invoice_number_format_description:"\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03CC\u03C3\u03C4\u03B5 \u03C4\u03BF\u03BD \u03C4\u03C1\u03CC\u03C0\u03BF \u03BC\u03B5 \u03C4\u03BF\u03BD \u03BF\u03C0\u03BF\u03AF\u03BF \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03B5\u03AF\u03C4\u03B1\u03B9 \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1 \u03BF \u03C5\u03C0\u03BF\u03BB\u03BF\u03B3\u03B9\u03C3\u03BC\u03CC\u03C2 \u03C3\u03B1\u03C2 \u03CC\u03C4\u03B1\u03BD \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03B5\u03AF\u03C4\u03B5 \u03BC\u03B9\u03B1 \u03BD\u03AD\u03B1 \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7.",preview_invoice_number:"\u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03C3\u03BA\u03CC\u03C0\u03B7\u03C3\u03B7 \u0391\u03C1\u03B9\u03B8\u03BC\u03BF\u03CD \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",due_date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BB\u03AE\u03BE\u03B7\u03C2",due_date_description:"\u039A\u03B1\u03B8\u03BF\u03C1\u03AF\u03C3\u03C4\u03B5 \u03C0\u03CE\u03C2 \u03BF\u03C1\u03AF\u03B6\u03B5\u03C4\u03B1\u03B9 \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1 \u03B7 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BB\u03AE\u03BE\u03B7\u03C2 \u03CC\u03C4\u03B1\u03BD \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03B5\u03AF\u03C4\u03B5 \u03BC\u03B9\u03B1 \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7.",due_date_days:"\u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1 \u03BB\u03B7\u03BE\u03B9\u03C0\u03C1\u03CC\u03B8\u03B5\u03C3\u03BC\u03B1 \u03BC\u03B5\u03C4\u03AC \u03B1\u03C0\u03CC (\u03B7\u03BC\u03AD\u03C1\u03B5\u03C2)",set_due_date_automatically:"\u039F\u03C1\u03B9\u03C3\u03BC\u03CC\u03C2 \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1\u03C2 \u039B\u03AE\u03BE\u03B7\u03C2 \u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1",set_due_date_automatically_description:"\u0395\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03C4\u03B5 \u03C4\u03BF \u03B1\u03BD \u03B5\u03C0\u03B9\u03B8\u03C5\u03BC\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03BF\u03C1\u03AF\u03C3\u03B5\u03C4\u03B5 \u03C4\u03B7\u03BD \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BB\u03AE\u03BE\u03B7\u03C2 \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1 \u03CC\u03C4\u03B1\u03BD \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03B5\u03AF\u03C4\u03B5 \u03BC\u03B9\u03B1 \u03BD\u03AD\u03B1 \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7.",default_formats:"\u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B5\u03C2 \u03B5\u03C0\u03B5\u03BA\u03C4\u03AC\u03C3\u03B5\u03B9\u03C2",default_formats_description:"\u03A0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03BF\u03B9 \u03C0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03BC\u03BF\u03C1\u03C6\u03AD\u03C2 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03BF\u03CD\u03BD\u03C4\u03B1\u03B9 \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B3\u03B5\u03BC\u03AF\u03C3\u03BF\u03C5\u03BD \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1 \u03C4\u03B1 \u03C0\u03B5\u03B4\u03AF\u03B1 \u03C3\u03C4\u03B7 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03C9\u03BD.",default_invoice_email_body:"\u03A0\u03C1\u03BF\u03BA\u03B1\u03B8\u03BF\u03C1\u03B9\u03C3\u03BC\u03AD\u03BD\u03BF \u03A3\u03CE\u03BC\u03B1 Email \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",company_address_format:"\u039C\u03BF\u03C1\u03C6\u03AE \u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7\u03C2 \u0395\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2",shipping_address_format:"\u039C\u03BF\u03C1\u03C6\u03AE \u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7\u03C2 \u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE\u03C2",billing_address_format:"\u039C\u03BF\u03C1\u03C6\u03AE \u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7\u03C2 \u03A7\u03C1\u03AD\u03C9\u03C3\u03B7\u03C2",invoice_email_attachment:"\u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03C9\u03BD \u03C9\u03C2 \u03C3\u03C5\u03BD\u03B7\u03BC\u03BC\u03AD\u03BD\u03C9\u03BD",invoice_email_attachment_setting_description:"\u0395\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC \u03B1\u03BD \u03B8\u03AD\u03BB\u03B5\u03C4\u03B5 \u03BD\u03B1 \u03C3\u03C4\u03B5\u03AF\u03BB\u03B5\u03C4\u03B5 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1 \u03C9\u03C2 \u03C3\u03C5\u03BD\u03B7\u03BC\u03BC\u03AD\u03BD\u03BF email. \u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03C3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03C4\u03B5 \u03CC\u03C4\u03B9 \u03C4\u03BF \u03BA\u03BF\u03C5\u03BC\u03C0\u03AF '\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5' \u03C3\u03C4\u03B1 \u03BC\u03B7\u03BD\u03CD\u03BC\u03B1\u03C4\u03B1 \u03B7\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03BF\u03CD \u03C4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B5\u03AF\u03BF\u03C5 \u03B4\u03B5\u03BD \u03B8\u03B1 \u03B5\u03BC\u03C6\u03B1\u03BD\u03AF\u03B6\u03B5\u03C4\u03B1\u03B9 \u03C0\u03BB\u03AD\u03BF\u03BD \u03CC\u03C4\u03B1\u03BD \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B5\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03BF.",invoice_settings_updated:"\u039F\u03B9 \u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03B8\u03B7\u03BA\u03B1\u03BD \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",retrospective_edits:"\u0391\u03BD\u03B1\u03B4\u03C1\u03BF\u03BC\u03B9\u03BA\u03AD\u03C2 \u0394\u03B9\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B5\u03C2",allow:"\u0391\u03C0\u03BF\u03B4\u03BF\u03C7\u03AE",disable_on_invoice_partial_paid:"\u0391\u03C0\u03B5\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7 \u03BC\u03B5\u03C4\u03AC \u03C4\u03B7\u03BD \u03B5\u03B3\u03B3\u03C1\u03B1\u03C6\u03AE \u03BC\u03B5\u03C1\u03B9\u03BA\u03AE\u03C2 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",disable_on_invoice_paid:"\u0391\u03C0\u03B5\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7 \u03BC\u03B5\u03C4\u03AC \u03C4\u03B7\u03BD \u03B5\u03B3\u03B3\u03C1\u03B1\u03C6\u03AE \u03BC\u03B5\u03C1\u03B9\u03BA\u03AE\u03C2 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",disable_on_invoice_sent:"\u0391\u03C0\u03B5\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7 \u03BC\u03B5\u03C4\u03AC \u03C4\u03B7\u03BD \u03B1\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",retrospective_edits_description:" \u039C\u03B5 \u03B2\u03AC\u03C3\u03B7 \u03C4\u03BF\u03C5\u03C2 \u03BD\u03CC\u03BC\u03BF\u03C5\u03C2 \u03C4\u03B7\u03C2 \u03C7\u03CE\u03C1\u03B1\u03C2 \u03C3\u03B1\u03C2 \u03AE \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B1\u03C2, \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03C0\u03B5\u03C1\u03B9\u03BF\u03C1\u03AF\u03C3\u03B5\u03C4\u03B5 \u03C4\u03BF\u03C5\u03C2 \u03C7\u03C1\u03AE\u03C3\u03C4\u03B5\u03C2 \u03B1\u03C0\u03CC \u03C4\u03B7\u03BD \u03B5\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u03BF\u03C1\u03B9\u03C3\u03C4\u03B9\u03BA\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03C9\u03BD \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03C9\u03BD."},estimates:{title:"\u0395\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",estimate_number_format:"\u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u039C\u03BF\u03C1\u03C6\u03AE\u03C2 \u0391\u03C1\u03B9\u03B8\u03BC\u03BF\u03CD",estimate_number_format_description:"\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03CC\u03C3\u03C4\u03B5 \u03C4\u03BF\u03BD \u03C4\u03C1\u03CC\u03C0\u03BF \u03BC\u03B5 \u03C4\u03BF\u03BD \u03BF\u03C0\u03BF\u03AF\u03BF \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03B5\u03AF\u03C4\u03B1\u03B9 \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1 \u03BF \u03C5\u03C0\u03BF\u03BB\u03BF\u03B3\u03B9\u03C3\u03BC\u03CC\u03C2 \u03C3\u03B1\u03C2 \u03CC\u03C4\u03B1\u03BD \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03B5\u03AF\u03C4\u03B5 \u03BC\u03B9\u03B1 \u03BD\u03AD\u03B1 \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7.",preview_estimate_number:"\u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u0391\u03C1\u03B9\u03B8\u03BC\u03BF\u03CD \u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03C3\u03BA\u03CC\u03C0\u03B7\u03C3\u03B7\u03C2",expiry_date:"\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BB\u03AE\u03BE\u03B7\u03C2",expiry_date_description:"\u039A\u03B1\u03B8\u03BF\u03C1\u03AF\u03C3\u03C4\u03B5 \u03C0\u03CE\u03C2 \u03BF\u03C1\u03AF\u03B6\u03B5\u03C4\u03B1\u03B9 \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1 \u03B7 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BB\u03AE\u03BE\u03B7\u03C2 \u03CC\u03C4\u03B1\u03BD \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03B5\u03AF\u03C4\u03B5 \u03BC\u03B9\u03B1 \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7.",expiry_date_days:"\u039F \u03C5\u03C0\u03BF\u03BB\u03BF\u03B3\u03B9\u03C3\u03BC\u03CC\u03C2 \u03BB\u03AE\u03B3\u03B5\u03B9 \u03BC\u03B5\u03C4\u03AC \u03B1\u03C0\u03CC \u03B7\u03BC\u03AD\u03C1\u03B5\u03C2",set_expiry_date_automatically:"\u039F\u03C1\u03B9\u03C3\u03BC\u03CC\u03C2 \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1\u03C2 \u039B\u03AE\u03BE\u03B7\u03C2 \u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1",set_expiry_date_automatically_description:"\u0395\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03C4\u03B5 \u03C4\u03BF \u03B1\u03BD \u03B5\u03C0\u03B9\u03B8\u03C5\u03BC\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03BF\u03C1\u03AF\u03C3\u03B5\u03C4\u03B5 \u03C4\u03B7\u03BD \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BB\u03AE\u03BE\u03B7\u03C2 \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1 \u03CC\u03C4\u03B1\u03BD \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03B5\u03AF\u03C4\u03B5 \u03BC\u03B9\u03B1 \u03BD\u03AD\u03B1 \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7.",default_formats:"\u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B5\u03C2 \u03B5\u03C0\u03B5\u03BA\u03C4\u03AC\u03C3\u03B5\u03B9\u03C2",default_formats_description:"\u03A0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03BF\u03B9 \u03C0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03BC\u03BF\u03C1\u03C6\u03AD\u03C2 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03BF\u03CD\u03BD\u03C4\u03B1\u03B9 \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B3\u03B5\u03BC\u03AF\u03C3\u03BF\u03C5\u03BD \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1 \u03C4\u03B1 \u03C0\u03B5\u03B4\u03AF\u03B1 \u03C3\u03C4\u03B7 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03C9\u03BD.",default_estimate_email_body:"\u03A0\u03C1\u03BF\u03BA\u03B1\u03B8\u03BF\u03C1\u03B9\u03C3\u03BC\u03AD\u03BD\u03BF \u03A3\u03CE\u03BC\u03B1 Email \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",company_address_format:"\u039C\u03BF\u03C1\u03C6\u03AE \u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7\u03C2 \u0395\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2",shipping_address_format:"\u039C\u03BF\u03C1\u03C6\u03AE \u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7\u03C2 \u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE\u03C2",billing_address_format:"\u039C\u03BF\u03C1\u03C6\u03AE \u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7\u03C2 \u03A7\u03C1\u03AD\u03C9\u03C3\u03B7\u03C2",estimate_email_attachment:"\u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03C9\u03BD \u03C9\u03C2 \u03C3\u03C5\u03BD\u03B7\u03BC\u03BC\u03AD\u03BD\u03C9\u03BD",estimate_email_attachment_setting_description:"\u0395\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC \u03B1\u03BD \u03B8\u03AD\u03BB\u03B5\u03C4\u03B5 \u03BD\u03B1 \u03C3\u03C4\u03B5\u03AF\u03BB\u03B5\u03C4\u03B5 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1 \u03C9\u03C2 \u03C3\u03C5\u03BD\u03B7\u03BC\u03BC\u03AD\u03BD\u03BF email. \u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03C3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03C4\u03B5 \u03CC\u03C4\u03B9 \u03C4\u03BF \u03BA\u03BF\u03C5\u03BC\u03C0\u03AF '\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5' \u03C3\u03C4\u03B1 \u03BC\u03B7\u03BD\u03CD\u03BC\u03B1\u03C4\u03B1 \u03B7\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03BF\u03CD \u03C4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B5\u03AF\u03BF\u03C5 \u03B4\u03B5\u03BD \u03B8\u03B1 \u03B5\u03BC\u03C6\u03B1\u03BD\u03AF\u03B6\u03B5\u03C4\u03B1\u03B9 \u03C0\u03BB\u03AD\u03BF\u03BD \u03CC\u03C4\u03B1\u03BD \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B5\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03BF.",estimate_settings_updated:"\u039F\u03B9 \u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03B8\u03B7\u03BA\u03B1\u03BD \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",convert_estimate_options:"\u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE\u03C2 \u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1\u03C2",convert_estimate_description:"\u039A\u03B1\u03B8\u03BF\u03C1\u03AF\u03C3\u03C4\u03B5 \u03C4\u03B9 \u03C3\u03C5\u03BC\u03B2\u03B1\u03AF\u03BD\u03B5\u03B9 \u03C3\u03C4\u03B7\u03BD \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u03B1\u03C6\u03BF\u03CD \u03BC\u03B5\u03C4\u03B1\u03C4\u03C1\u03B1\u03C0\u03B5\u03AF \u03C3\u03B5 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF.",no_action:"\u039A\u03B1\u03BC\u03AF\u03B1 \u03B5\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1",delete_estimate:"\u0394\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7\u03C2",mark_estimate_as_accepted:"\u03A3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03C4\u03B5 \u03C4\u03B7\u03BD \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u03C9\u03C2 \u03B1\u03C0\u03BF\u03B4\u03B5\u03BA\u03C4\u03AE"},payments:{title:"\u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AD\u03C2",payment_number_format:"\u039C\u03BF\u03C1\u03C6\u03AE \u0391\u03C1\u03B9\u03B8\u03BC\u03BF\u03CD \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",payment_number_format_description:"\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03CC\u03C3\u03C4\u03B5 \u03C4\u03BF\u03BD \u03C4\u03C1\u03CC\u03C0\u03BF \u03BC\u03B5 \u03C4\u03BF\u03BD \u03BF\u03C0\u03BF\u03AF\u03BF \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03B5\u03AF\u03C4\u03B1\u03B9 \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1 \u03BF \u03C5\u03C0\u03BF\u03BB\u03BF\u03B3\u03B9\u03C3\u03BC\u03CC\u03C2 \u03C3\u03B1\u03C2 \u03CC\u03C4\u03B1\u03BD \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03B5\u03AF\u03C4\u03B5 \u03BC\u03B9\u03B1 \u03BD\u03AD\u03B1 \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7.",preview_payment_number:"\u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03C3\u03BA\u03CC\u03C0\u03B7\u03C3\u03B7 \u0391\u03C1\u03B9\u03B8\u03BC\u03BF\u03CD \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",default_formats:"\u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B5\u03C2 \u03B5\u03C0\u03B5\u03BA\u03C4\u03AC\u03C3\u03B5\u03B9\u03C2",default_formats_description:"\u03A0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03BF\u03B9 \u03C0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03BC\u03BF\u03C1\u03C6\u03AD\u03C2 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03BF\u03CD\u03BD\u03C4\u03B1\u03B9 \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B3\u03B5\u03BC\u03AF\u03C3\u03BF\u03C5\u03BD \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1 \u03C4\u03B1 \u03C0\u03B5\u03B4\u03AF\u03B1 \u03C3\u03C4\u03B7 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03C9\u03BD.",default_payment_email_body:"\u03A0\u03C1\u03BF\u03BA\u03B1\u03B8\u03BF\u03C1\u03B9\u03C3\u03BC\u03AD\u03BD\u03BF \u03A3\u03CE\u03BC\u03B1 Email \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",company_address_format:"\u039C\u03BF\u03C1\u03C6\u03AE \u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7\u03C2 \u0395\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2",from_customer_address_format:"\u0391\u03C0\u03CC \u03A4\u03B7 \u039C\u03BF\u03C1\u03C6\u03AE \u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7\u03C2 \u03A0\u03B5\u03BB\u03AC\u03C4\u03B7",payment_email_attachment:"\u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03C9\u03BD \u03C9\u03C2 \u03C3\u03C5\u03BD\u03B7\u03BC\u03BC\u03AD\u03BD\u03C9\u03BD",payment_email_attachment_setting_description:"\u0395\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC \u03B1\u03BD \u03B8\u03AD\u03BB\u03B5\u03C4\u03B5 \u03BD\u03B1 \u03C3\u03C4\u03B5\u03AF\u03BB\u03B5\u03C4\u03B5 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1 \u03C9\u03C2 \u03C3\u03C5\u03BD\u03B7\u03BC\u03BC\u03AD\u03BD\u03BF email. \u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03C3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03C4\u03B5 \u03CC\u03C4\u03B9 \u03C4\u03BF \u03BA\u03BF\u03C5\u03BC\u03C0\u03AF '\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE \u03A4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5' \u03C3\u03C4\u03B1 \u03BC\u03B7\u03BD\u03CD\u03BC\u03B1\u03C4\u03B1 \u03B7\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03BF\u03CD \u03C4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B5\u03AF\u03BF\u03C5 \u03B4\u03B5\u03BD \u03B8\u03B1 \u03B5\u03BC\u03C6\u03B1\u03BD\u03AF\u03B6\u03B5\u03C4\u03B1\u03B9 \u03C0\u03BB\u03AD\u03BF\u03BD \u03CC\u03C4\u03B1\u03BD \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B5\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03BF.",payment_settings_updated:"\u039F\u03B9 \u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03B8\u03B7\u03BA\u03B1\u03BD \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2"},items:{title:"\u03A0\u03C1\u03BF\u03CA\u03CC\u03BD\u03C4\u03B1",units:"\u039C\u03BF\u03BD\u03AC\u03B4\u03B5\u03C2",add_item_unit:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039C\u03BF\u03BD\u03AC\u03B4\u03B1\u03C2 \u0391\u03BD\u03C4\u03B9\u03BA\u03B5\u03B9\u03BC\u03AD\u03BD\u03BF\u03C5",edit_item_unit:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039C\u03BF\u03BD\u03AC\u03B4\u03B1\u03C2 \u0391\u03BD\u03C4\u03B9\u03BA\u03B5\u03B9\u03BC\u03AD\u03BD\u03BF\u03C5",unit_name:"\u038C\u03BD\u03BF\u03BC\u03B1 \u03BC\u03BF\u03BD\u03AC\u03B4\u03B1\u03C2",item_unit_added:"\u03A4\u03BF \u0391\u03BD\u03C4\u03B9\u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u0394\u03B5\u03BD \u03A0\u03C1\u03BF\u03C3\u03B8\u03AD\u03B8\u03B7\u03BA\u03B5",item_unit_updated:"\u03A4\u03BF \u0391\u03BD\u03C4\u03B9\u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u0394\u03B5\u03BD \u03A0\u03C1\u03BF\u03C3\u03B8\u03AD\u03B8\u03B7\u03BA\u03B5",item_unit_confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC \u03C4\u03BF \u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF \u03A0\u03B5\u03B4\u03AF\u03BF",already_in_use:"\u0397 \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 email \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF\u03C4\u03B1\u03B9 \u03AE\u03B4\u03B7",deleted_message:"\u03A4\u03B1 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03AD\u03C7\u03BF\u03C5\u03BD \u03B4\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03B5\u03AF \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1"},notes:{title:"\u03A3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03B5\u03B9\u03C2",description:"\u0395\u03BE\u03BF\u03B9\u03BA\u03BF\u03BD\u03BF\u03BC\u03AE\u03C3\u03C4\u03B5 \u03C7\u03C1\u03CC\u03BD\u03BF \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03CE\u03BD\u03C4\u03B1\u03C2 \u03C3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03B5\u03B9\u03C2 \u03BA\u03B1\u03B9 \u03B5\u03C0\u03B1\u03BD\u03B1\u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03AE \u03C4\u03BF\u03C5\u03C2 \u03C3\u03C4\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1 \u03C3\u03B1\u03C2, \u03B5\u03BA\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2 \u03BA\u03B1\u03B9 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AD\u03C2.",notes:"\u03A3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03B5\u03B9\u03C2",type:"Type",add_note:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03C3\u03B7\u03BC\u03B5\u03AF\u03C9\u03C3\u03B7\u03C2",add_new_note:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039D\u03AD\u03B1\u03C2 \u03A3\u03B7\u03BC\u03B5\u03AF\u03C9\u03C3\u03B7\u03C2",name:"\u038C\u03BD\u03BF\u03BC\u03B1",edit_note:"\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u03C3\u03B7\u03BC\u03B5\u03AF\u03C9\u03C3\u03B7\u03C2",note_added:"\u03C0\u03C1\u03BF\u03C3\u03C4\u03AD\u03B8\u03B7\u03BA\u03B5 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1",note_updated:"\u039F \u03C1\u03CC\u03BB\u03BF\u03C2 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03B8\u03B7\u03BA\u03B5 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1.",note_confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC \u03C4\u03BF \u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF \u03A0\u03B5\u03B4\u03AF\u03BF",already_in_use:"\u03A4\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03AE\u03B4\u03B7 \u03C3\u03B5 \u03C7\u03C1\u03AE\u03C3\u03B7",deleted_message:"\u039F \u03C1\u03CC\u03BB\u03BF\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C6\u03B7\u03BA\u03B5 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1"}},account_settings:{profile_picture:"\u0395\u03B9\u03BA\u03CC\u03BD\u03B1 \u03A0\u03C1\u03BF\u03C6\u03AF\u03BB",name:"\u038C\u03BD\u03BF\u03BC\u03B1",email:"\u0397\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03AE \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7",password:"\u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2",confirm_password:"\u0395\u03C0\u03B9\u03B2\u03B5\u03B2\u03B1\u03AF\u03C9\u03C3\u03B7 \u039A\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD",account_settings:"\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u039B\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03BF\u03CD",save:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7",section_description:"\u039C\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03C3\u03B5\u03C4\u03B5 \u03C4\u03BF \u03CC\u03BD\u03BF\u03BC\u03AC \u03C3\u03B1\u03C2, email & \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03CE\u03BD\u03C4\u03B1\u03C2 \u03C4\u03B7\u03BD \u03C0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03C6\u03CC\u03C1\u03BC\u03B1.",updated_message:"\u039F\u03B9 \u03C1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u03C4\u03BF\u03C5 \u03BB\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03BF\u03CD \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03B8\u03B7\u03BA\u03B1\u03BD \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2!"},user_profile:{name:"\u038C\u03BD\u03BF\u03BC\u03B1",email:"\u0397\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03AE \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7",password:"\u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2",confirm_password:"\u0395\u03C0\u03B9\u03B2\u03B5\u03B2\u03B1\u03AF\u03C9\u03C3\u03B7 \u039A\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD"},notification:{title:"\u0395\u03B9\u03B4\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03B5\u03B9\u03C2",email:"\u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE \u03B5\u03B9\u03B4\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03B5\u03C9\u03BD",description:"\u03A0\u03BF\u03B9\u03B5\u03C2 \u03B5\u03B9\u03B4\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03B5\u03B9\u03C2 \u03B7\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03BF\u03CD \u03C4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B5\u03AF\u03BF\u03C5 \u03B8\u03B1 \u03B8\u03AD\u03BB\u03B1\u03C4\u03B5 \u03BD\u03B1 \u03BB\u03B1\u03BC\u03B2\u03AC\u03BD\u03B5\u03C4\u03B5 \u03CC\u03C4\u03B1\u03BD \u03BA\u03AC\u03C4\u03B9 \u03B1\u03BB\u03BB\u03AC\u03B6\u03B5\u03B9?",invoice_viewed:"\u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03C0\u03C1\u03BF\u03B2\u03BB\u03AE\u03B8\u03B7\u03BA\u03B5",invoice_viewed_desc:"\u038C\u03C4\u03B1\u03BD \u03BF \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7\u03C2 \u03C3\u03B1\u03C2 \u03B2\u03BB\u03AD\u03C0\u03B5\u03B9 \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03C0\u03BF\u03C5 \u03B1\u03C0\u03BF\u03C3\u03C4\u03AD\u03BB\u03BB\u03B5\u03C4\u03B1\u03B9 \u03BC\u03AD\u03C3\u03C9 \u03C4\u03BF\u03C5 \u03C0\u03AF\u03BD\u03B1\u03BA\u03B1 \u03B5\u03BB\u03AD\u03B3\u03C7\u03BF\u03C5.",estimate_viewed:"\u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u03C0\u03C1\u03BF\u03B2\u03B5\u03B2\u03BB\u03B7\u03BC\u03AD\u03BD\u03C9\u03BD",estimate_viewed_desc:"\u038C\u03C4\u03B1\u03BD \u03BF \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7\u03C2 \u03C3\u03B1\u03C2 \u03B2\u03BB\u03AD\u03C0\u03B5\u03B9 \u03C4\u03B7\u03BD \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u03C0\u03BF\u03C5 \u03B1\u03C0\u03BF\u03C3\u03C4\u03AD\u03BB\u03BB\u03B5\u03C4\u03B1\u03B9 \u03BC\u03AD\u03C3\u03C9 \u03C4\u03BF\u03C5 \u03C0\u03AF\u03BD\u03B1\u03BA\u03B1 \u03B5\u03BB\u03AD\u03B3\u03C7\u03BF\u03C5 \u03BA\u03C1\u03B1\u03C4\u03AE\u03C3\u03B5\u03C9\u03BD.",save:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7",email_save_message:"\u03A4\u03BF \u039C\u03AE\u03BD\u03C5\u03BC\u03B1 \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",please_enter_email:"\u0395\u03B9\u03C3\u03B1\u03B3\u03AC\u03B3\u03B5\u03C4\u03B5 e-mail"},roles:{title:"\u03A1\u03CC\u03BB\u03BF\u03B9",description:"\u0394\u03B9\u03B1\u03C7\u03B5\u03B9\u03C1\u03B9\u03C3\u03C4\u03B5\u03AF\u03C4\u03B5 \u03C4\u03BF\u03C5\u03C2 \u03C1\u03CC\u03BB\u03BF\u03C5\u03C2 \u03BA\u03B1\u03B9 \u03C4\u03B1 \u03B4\u03B9\u03BA\u03B1\u03B9\u03CE\u03BC\u03B1\u03C4\u03B1 \u03B1\u03C5\u03C4\u03AE\u03C2 \u03C4\u03B7\u03C2 \u03B5\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2",save:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7",add_new_role:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039D\u03AD\u03BF\u03C5 \u03A1\u03CC\u03BB\u03BF\u03C5",role_name:"\u038C\u03BD\u03BF\u03BC\u03B1 \u03C1\u03CC\u03BB\u03BF\u03C5",added_on:"\u03A0\u03C1\u03BF\u03C3\u03C4\u03AD\u03B8\u03B7\u03BA\u03B5 \u03C3\u03C4\u03B9\u03C2",add_role:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03C1\u03CC\u03BB\u03BF\u03C5",edit_role:"\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u03A1\u03CC\u03BB\u03BF\u03C5",name:"\u038C\u03BD\u03BF\u03BC\u03B1",permission:"\u0394\u03B9\u03BA\u03B1\u03B9\u03CE\u03BC\u03B1\u03C4\u03B1 \u0394\u03B9\u03BA\u03B1\u03B9\u03C9\u03BC\u03AC\u03C4\u03C9\u03BD",select_all:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u038C\u03BB\u03C9\u03BD",none:"\u039A\u03B1\u03BD\u03B5\u03AF\u03C2",confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC \u03C4\u03BF \u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF \u03A0\u03B5\u03B4\u03AF\u03BF",created_message:"\u039F \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7\u03C2 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AE\u03B8\u03B7\u03BA\u03B5 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1",updated_message:"\u039F \u03C1\u03CC\u03BB\u03BF\u03C2 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03B8\u03B7\u03BA\u03B5 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1.",deleted_message:"\u039F \u03C1\u03CC\u03BB\u03BF\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C6\u03B7\u03BA\u03B5 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1",already_in_use:"\u03A4\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03AE\u03B4\u03B7 \u03C3\u03B5 \u03C7\u03C1\u03AE\u03C3\u03B7"},exchange_rate:{exchange_rate:"\u03A3\u03C5\u03BD\u03B1\u03BB\u03BB\u03B1\u03B3\u03BC\u03B1\u03C4\u03B9\u03BA\u03AE \u03B9\u03C3\u03BF\u03C4\u03B9\u03BC\u03AF\u03B1",title:"\u0394\u03B9\u03CC\u03C1\u03B8\u03C9\u03C3\u03B7 \u03B6\u03B7\u03C4\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C3\u03C5\u03BD\u03B1\u03BB\u03BB\u03AC\u03B3\u03BC\u03B1\u03C4\u03BF\u03C2",description:"\u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03BF\u03CD\u03BC\u03B5 \u03B5\u03B9\u03C3\u03AC\u03B3\u03B5\u03C4\u03B5 \u03C4\u03B7 \u03C3\u03C5\u03BD\u03B1\u03BB\u03BB\u03B1\u03B3\u03BC\u03B1\u03C4\u03B9\u03BA\u03AE \u03B9\u03C3\u03BF\u03C4\u03B9\u03BC\u03AF\u03B1 \u03CC\u03BB\u03C9\u03BD \u03C4\u03C9\u03BD \u03BD\u03BF\u03BC\u03B9\u03C3\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B1\u03BD\u03B1\u03C6\u03AD\u03C1\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B2\u03BF\u03B7\u03B8\u03AE\u03C3\u03B5\u03C4\u03B5 \u03C4\u03BF\u03BD \u039A\u03C1\u03B1\u03C4\u03AE\u03C1\u03B1 \u03BD\u03B1 \u03C5\u03C0\u03BF\u03BB\u03BF\u03B3\u03AF\u03C3\u03B5\u03B9 \u03C3\u03C9\u03C3\u03C4\u03AC \u03C4\u03B1 \u03C0\u03BF\u03C3\u03AC \u03C3\u03B5 {currency}.",drivers:"\u039F\u03B4\u03B7\u03B3\u03BF\u03AF",new_driver:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03BD\u03AD\u03B1\u03C2 \u03C5\u03C0\u03B7\u03C1\u03B5\u03C3\u03AF\u03B1\u03C2 \u03C0\u03B1\u03C1\u03BF\u03C7\u03AE\u03C2",edit_driver:"\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u03C0\u03B1\u03C1\u03CC\u03C7\u03BF\u03C5",select_driver:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03AD\u03BD\u03B1\u03BD \u039F\u03B4\u03B7\u03B3\u03CC",update:"\u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03C3\u03C5\u03BD\u03B1\u03BB\u03BB\u03B1\u03B3\u03BC\u03B1\u03C4\u03B9\u03BA\u03AE\u03C2 \u03B9\u03C3\u03BF\u03C4\u03B9\u03BC\u03AF\u03B1\u03C2 ",providers_description:"\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03C4\u03B5 \u03C4\u03BF\u03C5\u03C2 \u03C0\u03B1\u03C1\u03CC\u03C7\u03BF\u03C5\u03C2 \u03C3\u03C5\u03BD\u03B1\u03BB\u03BB\u03B1\u03B3\u03BC\u03B1\u03C4\u03B9\u03BA\u03CE\u03BD \u03B9\u03C3\u03BF\u03C4\u03B9\u03BC\u03B9\u03CE\u03BD \u03C3\u03B1\u03C2 \u03B5\u03B4\u03CE \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03C3\u03C5\u03B3\u03BA\u03B5\u03BD\u03C4\u03C1\u03CE\u03C3\u03B5\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1 \u03C4\u03B7\u03BD \u03C4\u03B5\u03BB\u03B5\u03C5\u03C4\u03B1\u03AF\u03B1 \u03C3\u03C5\u03BD\u03B1\u03BB\u03BB\u03B1\u03B3\u03BC\u03B1\u03C4\u03B9\u03BA\u03AE \u03B9\u03C3\u03BF\u03C4\u03B9\u03BC\u03AF\u03B1 \u03C3\u03C4\u03B9\u03C2 \u03C3\u03C5\u03BD\u03B1\u03BB\u03BB\u03B1\u03B3\u03AD\u03C2.",key:"\u039A\u03BB\u03B5\u03B9\u03B4\u03AF API",name:"\u038C\u03BD\u03BF\u03BC\u03B1",driver:"\u039F\u03B4\u03B7\u03B3\u03CC\u03C2",is_default:"IS \u03A0\u03A1\u039F\u03A6\u03A5\u039B\u0391\u039E\u0397",currency:"\u03A3\u03C5\u03BD\u03AC\u03BB\u03BB\u03B1\u03B3\u03BC\u03B1",exchange_rate_confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC \u03C4\u03BF \u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF \u03A0\u03B5\u03B4\u03AF\u03BF",created_message:"\u039F \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7\u03C2 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AE\u03B8\u03B7\u03BA\u03B5 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1",updated_message:"\u039F \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7\u03C2 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AE\u03B8\u03B7\u03BA\u03B5 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1",deleted_message:"\u039F \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7\u03C2 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AE\u03B8\u03B7\u03BA\u03B5 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1",error:" \u0394\u03B5\u03BD \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u0394\u03B9\u03B1\u03B3\u03C1\u03AC\u03C8\u03B5\u03C4\u03B5 \u03C4\u03BF \u0395\u03BD\u03B5\u03C1\u03B3\u03CC \u039F\u03B4\u03B7\u03B3\u03CC",default_currency_error:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03BD\u03CC\u03BC\u03B9\u03C3\u03BC\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF\u03C4\u03B1\u03B9 \u03AE\u03B4\u03B7 \u03C3\u03B5 \u03AD\u03BD\u03B1\u03BD \u03B1\u03C0\u03CC \u03C4\u03BF\u03C5\u03C2 Active Provider",exchange_help_text:"\u0395\u03B9\u03C3\u03AC\u03B3\u03B5\u03C4\u03B5 \u03C3\u03C5\u03BD\u03B1\u03BB\u03BB\u03B1\u03B3\u03BC\u03B1\u03C4\u03B9\u03BA\u03AE \u03B9\u03C3\u03BF\u03C4\u03B9\u03BC\u03AF\u03B1 \u03B3\u03B9\u03B1 \u03BC\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03B1\u03C0\u03CC {currency} \u03C3\u03B5 {baseCurrency}",currency_freak:"\u039D\u03CC\u03BC\u03B9\u03C3\u03BC\u03B1 Freak",currency_layer:"\u03A3\u03C4\u03C1\u03CE\u03BC\u03B1 \u039D\u03BF\u03BC\u03AF\u03C3\u03BC\u03B1\u03C4\u03BF\u03C2",open_exchange_rate:"Open Exchange Rates",currency_converter:"\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AD\u03B1\u03C2 \u03BD\u03BF\u03BC\u03AF\u03C3\u03BC\u03B1\u03C4\u03BF\u03C2 (Automatic Translation)",server:"\u03A3\u03AD\u03C1\u03B2\u03B5\u03C1",url:"\u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 URL",active:"\u0395\u03BD\u03B5\u03C1\u03B3\u03AE",currency_help_text:"\u0391\u03C5\u03C4\u03CC\u03C2 \u03BF \u03C0\u03AC\u03C1\u03BF\u03C7\u03BF\u03C2 \u03B8\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B7\u03B8\u03B5\u03AF \u03BC\u03CC\u03BD\u03BF \u03C0\u03AC\u03BD\u03C9 \u03B1\u03C0\u03CC \u03C4\u03B1 \u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B1 \u03BD\u03BF\u03BC\u03AF\u03C3\u03BC\u03B1\u03C4\u03B1",currency_in_used:"\u03A4\u03B1 \u03B1\u03BA\u03CC\u03BB\u03BF\u03C5\u03B8\u03B1 \u03BD\u03BF\u03BC\u03AF\u03C3\u03BC\u03B1\u03C4\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03AE\u03B4\u03B7 \u03B5\u03BD\u03B5\u03C1\u03B3\u03AC \u03C3\u03B5 \u03AC\u03BB\u03BB\u03BF \u03C0\u03AC\u03C1\u03BF\u03C7\u03BF. \u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03B1\u03C6\u03B1\u03B9\u03C1\u03AD\u03C3\u03C4\u03B5 \u03B1\u03C5\u03C4\u03AC \u03C4\u03B1 \u03BD\u03BF\u03BC\u03AF\u03C3\u03BC\u03B1\u03C4\u03B1 \u03B1\u03C0\u03CC \u03C4\u03B7\u03BD \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B5\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03B5\u03C4\u03B5 \u03BE\u03B1\u03BD\u03AC \u03B1\u03C5\u03C4\u03CC\u03BD \u03C4\u03BF\u03BD \u03C0\u03AC\u03C1\u03BF\u03C7\u03BF."},tax_types:{title:"\u03A6\u03BF\u03C1\u03BF\u03BB\u03BF\u03B3\u03B9\u03BA\u03AE \u03BA\u03BB\u03AC\u03C3\u03B7",add_tax:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03A6\u03CC\u03C1\u03BF\u03C5",edit_tax:"\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u03C6\u03CC\u03C1\u03BF\u03C5",description:"\u039C\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03C0\u03C1\u03BF\u03C3\u03B8\u03AD\u03C3\u03B5\u03C4\u03B5 \u03AE \u03BD\u03B1 \u03B1\u03C6\u03B1\u03B9\u03C1\u03AD\u03C3\u03B5\u03C4\u03B5 \u03C6\u03CC\u03C1\u03BF\u03C5\u03C2 \u03CC\u03C0\u03C9\u03C2 \u03C3\u03B1\u03C2 \u03C0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE. \u039A\u03C1\u03B1\u03C4\u03AE\u03C1\u03B1 \u03C5\u03C0\u03BF\u03C3\u03C4\u03B7\u03C1\u03AF\u03B6\u03B5\u03B9 \u03C6\u03CC\u03C1\u03BF\u03C5\u03C2 \u03B5\u03C0\u03AF \u03BC\u03B5\u03BC\u03BF\u03BD\u03C9\u03BC\u03AD\u03BD\u03C9\u03BD \u03C0\u03C1\u03BF\u03CA\u03CC\u03BD\u03C4\u03C9\u03BD \u03BA\u03B1\u03B8\u03CE\u03C2 \u03BA\u03B1\u03B9 \u03C3\u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF.",add_new_tax:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039D\u03AD\u03BF\u03C5 \u03A6\u03CC\u03C1\u03BF\u03C5",tax_settings:"\u03A6\u03BF\u03C1\u03BF\u03BB\u03BF\u03B3\u03B9\u03BA\u03AD\u03C2 \u03C1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2",tax_per_item:"\u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF \u03A6\u03CC\u03BD\u03C4\u03BF\u03C5 \u03A5\u03C0\u03BF\u03BC\u03B5\u03BD\u03BF\u03CD",tax_name:"\u038C\u03BD\u03BF\u03BC\u03B1 \u03A6\u03CC\u03C1\u03BF\u03C5",compound_tax:"\u03A3\u03CD\u03BD\u03B8\u03B5\u03C4\u03BF\u03C2 \u03A6\u03CC\u03C1\u03BF\u03C2",percent:"\u03A0\u03BF\u03C3\u03BF\u03C3\u03C4\u03CC",action:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1",tax_setting_description:"\u0395\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03C4\u03B5 \u03C4\u03BF \u03B1\u03BD \u03B8\u03AD\u03BB\u03B5\u03C4\u03B5 \u03BD\u03B1 \u03C0\u03C1\u03BF\u03C3\u03B8\u03AD\u03C3\u03B5\u03C4\u03B5 \u03AD\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7 \u03C3\u03B5 \u03BC\u03B5\u03BC\u03BF\u03BD\u03C9\u03BC\u03AD\u03BD\u03B1 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5. \u0391\u03C0\u03CC \u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE, \u03B7 \u03AD\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7 \u03C0\u03C1\u03BF\u03C3\u03C4\u03AF\u03B8\u03B5\u03C4\u03B1\u03B9 \u03B1\u03C0\u03B5\u03C5\u03B8\u03B5\u03AF\u03B1\u03C2 \u03C3\u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF.",created_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",updated_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",deleted_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC \u03C4\u03BF \u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF \u03A0\u03B5\u03B4\u03AF\u03BF",already_in_use:"\u03A4\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03AE\u03B4\u03B7 \u03C3\u03B5 \u03C7\u03C1\u03AE\u03C3\u03B7"},payment_modes:{title:"\u03A4\u03C1\u03CC\u03C0\u03BF\u03C2 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",description:"\u03A4\u03C1\u03CC\u03C0\u03BF\u03B9 \u03C3\u03C5\u03BD\u03B1\u03BB\u03BB\u03B1\u03B3\u03AE\u03C2 \u03B3\u03B9\u03B1 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AD\u03C2",add_payment_mode:"\u03A4\u03C1\u03CC\u03C0\u03BF\u03C2 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",edit_payment_mode:"\u03A4\u03C1\u03CC\u03C0\u03BF\u03C2 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",mode_name:"\u038C\u03BD\u03BF\u03BC\u03B1 \u03BB\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1\u03C2",payment_mode_added:"\u03A0\u03C1\u03BF\u03C3\u03C4\u03AD\u03B8\u03B7\u03BA\u03B5 \u039B\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",payment_mode_updated:"\u03A0\u03C1\u03BF\u03C3\u03C4\u03AD\u03B8\u03B7\u03BA\u03B5 \u039B\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",payment_mode_confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC \u03C4\u03BF \u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF \u03A0\u03B5\u03B4\u03AF\u03BF",already_in_use:"\u03A4\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03AE\u03B4\u03B7 \u03C3\u03B5 \u03C7\u03C1\u03AE\u03C3\u03B7",deleted_message:"\u0397 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2"},expense_category:{title:"\u039A\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B5\u03C2 \u0395\u03BE\u03CC\u03B4\u03C9\u03BD",action:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1",description:"\u0391\u03C0\u03B1\u03B9\u03C4\u03BF\u03CD\u03BD\u03C4\u03B1\u03B9 \u03BA\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B5\u03C2 \u03B3\u03B9\u03B1 \u03C4\u03B7\u03BD \u03C0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03BA\u03B1\u03C4\u03B1\u03C7\u03C9\u03C1\u03AE\u03C3\u03B5\u03C9\u03BD \u03B5\u03BE\u03CC\u03B4\u03C9\u03BD. \u039C\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03C0\u03C1\u03BF\u03C3\u03B8\u03AD\u03C3\u03B5\u03C4\u03B5 \u03AE \u03BD\u03B1 \u03B1\u03C6\u03B1\u03B9\u03C1\u03AD\u03C3\u03B5\u03C4\u03B5 \u03B1\u03C5\u03C4\u03AD\u03C2 \u03C4\u03B9\u03C2 \u03BA\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B5\u03C2 \u03C3\u03CD\u03BC\u03C6\u03C9\u03BD\u03B1 \u03BC\u03B5 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B1\u03C2.",add_new_category:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039D\u03AD\u03B1\u03C2 \u039A\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B1\u03C2",add_category:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039A\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B1\u03C2",edit_category:"\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039A\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B1\u03C2",category_name:"\u038C\u03BD\u03BF\u03BC\u03B1 \u039A\u03B1\u03C4\u03B7\u03B3\u03BF\u03C1\u03AF\u03B1\u03C2",category_description:"\u03A0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE",created_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",deleted_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",updated_message:"\u03A4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC \u03C4\u03BF \u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF \u03A0\u03B5\u03B4\u03AF\u03BF",already_in_use:"\u03A4\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03AE\u03B4\u03B7 \u03C3\u03B5 \u03C7\u03C1\u03AE\u03C3\u03B7"},preferences:{currency:"\u039D\u03CC\u03BC\u03B9\u03C3\u03BC\u03B1",default_language:"\u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B7 \u03B3\u03BB\u03CE\u03C3\u03C3\u03B1",time_zone:"\u0396\u03CE\u03BD\u03B7 \u038F\u03C1\u03B1\u03C2",fiscal_year:"\u039F\u03B9\u03BA\u03BF\u03BD\u03BF\u03BC\u03B9\u03BA\u03CC \u03AD\u03C4\u03BF\u03C2",date_format:"\u039C\u03BF\u03C1\u03C6\u03AE \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1\u03C2",discount_setting:"\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u039B\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03BF\u03CD",discount_per_item:"\u0388\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7 \u0391\u03BD\u03AC \u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF ",discount_setting_description:"\u0395\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03C4\u03B5 \u03C4\u03BF \u03B1\u03BD \u03B8\u03AD\u03BB\u03B5\u03C4\u03B5 \u03BD\u03B1 \u03C0\u03C1\u03BF\u03C3\u03B8\u03AD\u03C3\u03B5\u03C4\u03B5 \u03AD\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7 \u03C3\u03B5 \u03BC\u03B5\u03BC\u03BF\u03BD\u03C9\u03BC\u03AD\u03BD\u03B1 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5. \u0391\u03C0\u03CC \u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE, \u03B7 \u03AD\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7 \u03C0\u03C1\u03BF\u03C3\u03C4\u03AF\u03B8\u03B5\u03C4\u03B1\u03B9 \u03B1\u03C0\u03B5\u03C5\u03B8\u03B5\u03AF\u03B1\u03C2 \u03C3\u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7",preference:"\u03A0\u03C1\u03BF\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 - \u03A0\u03C1\u03BF\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2",general_settings:"\u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B5\u03C2 \u03C0\u03C1\u03BF\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2 \u03B3\u03B9\u03B1 \u03C4\u03BF \u03C3\u03CD\u03C3\u03C4\u03B7\u03BC\u03B1.",updated_message:"\u0397 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE \u03B5\u03C3\u03C4\u03AC\u03BB\u03B7 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",select_language:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u0393\u03BB\u03CE\u03C3\u03C3\u03B1\u03C2",select_time_zone:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03B6\u03CE\u03BD\u03B7 \u03CE\u03C1\u03B1\u03C2",select_date_format:"\u039C\u03BF\u03C1\u03C6\u03AE \u03C3\u03CD\u03BD\u03C4\u03BF\u03BC\u03B7\u03C2 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1\u03C2",select_financial_year:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u039F\u03B9\u03BA\u03BF\u03BD\u03BF\u03BC\u03B9\u03BA\u03BF\u03CD \u0388\u03C4\u03BF\u03C5\u03C2",recurring_invoice_status:"\u0395\u03C0\u03B1\u03BD\u03B1\u03BB\u03B1\u03BC\u03B2\u03B1\u03BD\u03CC\u03BC\u03B5\u03BD\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1",create_status:"\u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03BA\u03B1\u03C4\u03AC\u03C3\u03C4\u03B1\u03C3\u03B7\u03C2",active:"\u0395\u03BD\u03B5\u03C1\u03B3\u03AE",on_hold:"\u03A3\u03B5 \u03B1\u03BD\u03B1\u03BC\u03BF\u03BD\u03AE",update_status:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u039A\u03B1\u03C4\u03AC\u03C3\u03C4\u03B1\u03C3\u03B7\u03C2",completed:"\u039F\u03BB\u03BF\u03BA\u03BB\u03B7\u03C1\u03CE\u03B8\u03B7\u03BA\u03B5",company_currency_unchangeable:"\u03A4\u03BF \u03BD\u03CC\u03BC\u03B9\u03C3\u03BC\u03B1 \u03C4\u03B7\u03C2 \u03B5\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2 \u03B4\u03B5\u03BD \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF \u03BD\u03B1 \u03B1\u03BB\u03BB\u03AC\u03BE\u03B5\u03B9"},update_app:{title:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u03B5\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE\u03C2",description:"\u039C\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03B5\u03CD\u03BA\u03BF\u03BB\u03B1 \u03BD\u03B1 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03C3\u03B5\u03C4\u03B5 \u03C4\u03BF\u03BD \u039A\u03C1\u03B1\u03C4\u03AE\u03C1\u03B1 \u03B5\u03BB\u03AD\u03B3\u03C7\u03BF\u03BD\u03C4\u03B1\u03C2 \u03B3\u03B9\u03B1 \u03BC\u03B9\u03B1 \u03BD\u03AD\u03B1 \u03B5\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u03BA\u03AC\u03BD\u03BF\u03BD\u03C4\u03B1\u03C2 \u03BA\u03BB\u03B9\u03BA \u03C3\u03C4\u03BF \u03C0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03BA\u03BF\u03C5\u03BC\u03C0\u03AF",check_update:"\u0388\u03BB\u03B5\u03B3\u03C7\u03BF\u03C2 \u0395\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03C3\u03B5\u03C9\u03BD",avail_update:"\u03A5\u03C0\u03AC\u03C1\u03C7\u03B5\u03B9 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B7 \u03BD\u03AD\u03B1 \u03B5\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7",next_version:"\u0395\u03C0\u03CC\u03BC\u03B5\u03BD\u03B7 \u0388\u03BA\u03B4\u03BF\u03C3\u03B7",requirements:"\u0391\u03C0\u03B1\u03B9\u03C4\u03AE\u03C3\u03B5\u03B9\u03C2",update:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u03C4\u03CE\u03C1\u03B1",update_progress:"\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u03C3\u03B5 \u03B5\u03BE\u03AD\u03BB\u03B9\u03BE\u03B7",progress_text:"\u0398\u03B1 \u03C7\u03C1\u03B5\u03B9\u03B1\u03C3\u03C4\u03BF\u03CD\u03BD \u03BC\u03CC\u03BD\u03BF \u03BB\u03AF\u03B3\u03B1 \u03BB\u03B5\u03C0\u03C4\u03AC. \u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03BC\u03B7\u03BD \u03B1\u03BD\u03B1\u03BD\u03B5\u03CE\u03C3\u03B5\u03C4\u03B5 \u03C4\u03B7\u03BD \u03BF\u03B8\u03CC\u03BD\u03B7 \u03AE \u03BD\u03B1 \u03BA\u03BB\u03B5\u03AF\u03C3\u03B5\u03C4\u03B5 \u03C4\u03BF \u03C0\u03B1\u03C1\u03AC\u03B8\u03C5\u03C1\u03BF \u03C0\u03C1\u03B9\u03BD \u03C4\u03B5\u03BB\u03B5\u03B9\u03CE\u03C3\u03B5\u03B9 \u03B7 \u03B5\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7.",update_success:"\u0397 \u03B5\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE \u03AD\u03C7\u03B5\u03B9 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03C9\u03B8\u03B5\u03AF! \u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03C0\u03B5\u03C1\u03B9\u03BC\u03AD\u03BD\u03B5\u03C4\u03B5 \u03CC\u03C3\u03BF \u03C4\u03BF \u03C0\u03B1\u03C1\u03AC\u03B8\u03C5\u03C1\u03BF \u03C4\u03BF\u03C5 \u03C0\u03B5\u03C1\u03B9\u03B7\u03B3\u03B7\u03C4\u03AE \u03C3\u03B1\u03C2 \u03C6\u03BF\u03C1\u03C4\u03CE\u03BD\u03B5\u03C4\u03B1\u03B9 \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1.",latest_message:"\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03BF\u03C5\u03BD \u03C0\u03C1\u03BF\u03C2 \u03C4\u03BF \u03C0\u03B1\u03C1\u03CC\u03BD \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B5\u03C2 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03C3\u03B5\u03B9\u03C2. \u03A7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF\u03C4\u03B5 \u03C4\u03B7\u03BD \u03C4\u03B5\u03BB\u03B5\u03C5\u03C4\u03B1\u03AF\u03B1 \u03AD\u03BA\u03B4\u03BF\u03C3\u03B7.",current_version:"\u03A4\u03C1\u03AD\u03C7\u03BF\u03C5\u03C3\u03B1 \u03AD\u03BA\u03B4\u03BF\u03C3\u03B7",download_zip_file:"\u039A\u03B1\u03C4\u03B5\u03B2\u03AC\u03C3\u03C4\u03B5 \u03C3\u03B5 ZIP",unzipping_package:"\u0391\u03C0\u03BF\u03C3\u03C5\u03BC\u03C0\u03AF\u03B5\u03C3\u03B7 \u03A0\u03B1\u03BA\u03AD\u03C4\u03BF\u03C5",copying_files:"\u0391\u03BD\u03C4\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE \u0391\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD",deleting_files:"\u0394\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03B1\u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03AF\u03B7\u03C4\u03C9\u03BD \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD",running_migrations:"\u0395\u03BA\u03C4\u03AD\u03BB\u03B5\u03C3\u03B7 \u039C\u03B5\u03C4\u03B1\u03BD\u03B1\u03C3\u03C4\u03CE\u03BD",finishing_update:"\u039F\u03BB\u03BF\u03BA\u03BB\u03AE\u03C1\u03C9\u03C3\u03B7 \u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7\u03C2",update_failed:"\u0391\u03C0\u03BF\u03C4\u03C5\u03C7\u03AF\u03B1 \u03B5\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7\u03C2",update_failed_text:"\u03A3\u03C5\u03B3\u03BD\u03CE\u03BC\u03B7! \u0397 \u03B5\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03AE \u03C3\u03B1\u03C2 \u03B1\u03C0\u03AD\u03C4\u03C5\u03C7\u03B5 \u03C3\u03B5: {step} \u03B2\u03AE\u03BC\u03B1",update_warning:"\u038C\u03BB\u03B1 \u03C4\u03B1 \u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 \u03B5\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03CE\u03BD \u03BA\u03B1\u03B9 \u03C4\u03B1 \u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B1 \u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 \u03C0\u03C1\u03BF\u03C4\u03CD\u03C0\u03C9\u03BD \u03B8\u03B1 \u03B1\u03BD\u03C4\u03B9\u03BA\u03B1\u03C4\u03B1\u03C3\u03C4\u03B1\u03B8\u03BF\u03CD\u03BD \u03CC\u03C4\u03B1\u03BD \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03BD\u03B5\u03C4\u03B5 \u03C4\u03B7\u03BD \u03B5\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03CE\u03BD\u03C4\u03B1\u03C2 \u03B1\u03C5\u03C4\u03CC \u03C4\u03BF \u03B2\u03BF\u03B7\u03B8\u03B7\u03C4\u03B9\u03BA\u03CC \u03C0\u03C1\u03CC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1. \u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03C0\u03AC\u03C1\u03C4\u03B5 \u03AD\u03BD\u03B1 \u03B1\u03BD\u03C4\u03AF\u03B3\u03C1\u03B1\u03C6\u03BF \u03B1\u03C3\u03C6\u03B1\u03BB\u03B5\u03AF\u03B1\u03C2 \u03C4\u03C9\u03BD \u03C0\u03C1\u03BF\u03C4\u03CD\u03C0\u03C9\u03BD \u03BA\u03B1\u03B9 \u03C4\u03B7\u03C2 \u03B2\u03AC\u03C3\u03B7\u03C2 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD \u03C3\u03B1\u03C2 \u03C0\u03C1\u03B9\u03BD \u03B1\u03C0\u03CC \u03C4\u03B7\u03BD \u03B5\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7."},backup:{title:'\u0391\u03BD\u03C4\u03AF\u03B3\u03C1\u03B1\u03C6\u03BF \u0391\u03C3\u03C6\u03B1\u03BB\u03B5\u03AF\u03B1\u03C2 "\u0391\u03BD\u03C4\u03AF\u03B3\u03C1\u03B1\u03C6\u03B1 \u0391\u03C3\u03C6\u03B1\u03BB\u03B5\u03AF\u03B1\u03C2',description:"\u03A4\u03BF \u03B1\u03BD\u03C4\u03AF\u03B3\u03C1\u03B1\u03C6\u03BF \u03B1\u03C3\u03C6\u03B1\u03BB\u03B5\u03AF\u03B1\u03C2 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03AD\u03BD\u03B1 zipfile \u03C0\u03BF\u03C5 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 \u03C3\u03C4\u03BF\u03C5\u03C2 \u03BA\u03B1\u03C4\u03B1\u03BB\u03CC\u03B3\u03BF\u03C5\u03C2 \u03C0\u03BF\u03C5 \u03BA\u03B1\u03B8\u03BF\u03C1\u03AF\u03B6\u03B5\u03C4\u03B5 \u03BC\u03B1\u03B6\u03AF \u03BC\u03B5 \u03BC\u03B9\u03B1 \u03C7\u03C9\u03BC\u03B1\u03C4\u03B5\u03C1\u03AE \u03C4\u03B7\u03C2 \u03B2\u03AC\u03C3\u03B7\u03C2 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD \u03C3\u03B1\u03C2",new_backup:"\u039D\u03AD\u03BF \u03B1\u03BD\u03C4\u03AF\u03B3\u03C1\u03B1\u03C6\u03BF \u03B1\u03C3\u03C6\u03B1\u03BB\u03B5\u03AF\u03B1\u03C2",create_backup:"\u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03B1\u03BD\u03C4\u03B9\u03B3\u03C1\u03AC\u03C6\u03BF\u03C5 \u03B1\u03C3\u03C6\u03B1\u03BB\u03B5\u03AF\u03B1\u03C2",select_backup_type:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03A4\u03CD\u03C0\u03BF\u03C5(\u03C9\u03BD) \u0391\u03BD\u03C4\u03B9\u03B3\u03C1\u03AC\u03C6\u03BF\u03C5 \u0391\u03C3\u03C6\u03B1\u03BB\u03B5\u03AF\u03B1\u03C2",backup_confirm_delete:"\u0394\u03B5\u03BD \u03B8\u03B1 \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03B1\u03BD\u03B1\u03BA\u03C4\u03AE\u03C3\u03B5\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC \u03C4\u03BF \u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF \u03A0\u03B5\u03B4\u03AF\u03BF",path:"Path",new_disk:"\u039D\u03AD\u03BF\u03C2 \u0394\u03AF\u03C3\u03BA\u03BF\u03C2",created_at:"\u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AE\u03B8\u03B7\u03BA\u03B5 \u03C3\u03C4\u03B9\u03C2",size:"\u03BC\u03AD\u03B3\u03B5\u03B8\u03BF\u03C2",dropbox:"Dropbox",local:"\u03A4\u03BF\u03C0\u03B9\u03BA\u03AD\u03C2 \u03C1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2",healthy:"\u03C5\u03B3\u03B9\u03AD\u03C2",amount_of_backups:"\u03C0\u03BF\u03C3\u03CC \u03B1\u03BD\u03C4\u03B9\u03B3\u03C1\u03AC\u03C6\u03C9\u03BD \u03B1\u03C3\u03C6\u03B1\u03BB\u03B5\u03AF\u03B1\u03C2",newest_backups:"\u03BD\u03AD\u03B1 \u03B1\u03BD\u03C4\u03AF\u03B3\u03C1\u03B1\u03C6\u03B1 \u03B1\u03C3\u03C6\u03B1\u03BB\u03B5\u03AF\u03B1\u03C2",used_storage:"\u03A7\u03CE\u03C1\u03BF\u03C2 \u03B1\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7\u03C2 \u03C3\u03B5 \u03C7\u03C1\u03AE\u03C3\u03B7",select_disk:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03B4\u03AF\u03C3\u03BA\u03BF",action:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1",deleted_message:"\u0397 \u03B4\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03C4\u03C9\u03BD \u03B1\u03BD\u03C4\u03B9\u03B3\u03C1\u03AC\u03C6\u03C9\u03BD \u03B1\u03C3\u03C6\u03B1\u03BB\u03B5\u03AF\u03B1\u03C2 \u03BF\u03BB\u03BF\u03BA\u03BB\u03B7\u03C1\u03CE\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",created_message:"\u0397 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03B1\u03BD\u03C4\u03B9\u03B3\u03C1\u03AC\u03C6\u03BF\u03C5 \u03B1\u03C3\u03C6\u03B1\u03BB\u03B5\u03AF\u03B1\u03C2 \u03BF\u03BB\u03BF\u03BA\u03BB\u03B7\u03C1\u03CE\u03B8\u03B7\u03BA\u03B5 \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1",invalid_disk_credentials:"\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF \u03B4\u03B9\u03B1\u03C0\u03B9\u03C3\u03C4\u03B5\u03C5\u03C4\u03AE\u03C1\u03B9\u03BF \u03C4\u03BF\u03C5 \u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03BF\u03C5 \u03B4\u03AF\u03C3\u03BA\u03BF\u03C5"},disk:{title:"\u0394\u03AF\u03C3\u03BA\u03BF\u03C2 \u0391\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5.\u0394\u03AF\u03C3\u03BA\u03BF\u03B9 \u0391\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5",description:"\u0391\u03C0\u03CC \u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE, \u03BF \u039A\u03C1\u03B1\u03C4\u03AE\u03C1\u03B1\u03C2 \u03B8\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03B5\u03B9 \u03C4\u03BF\u03BD \u03C4\u03BF\u03C0\u03B9\u03BA\u03CC \u03C3\u03B1\u03C2 \u03B4\u03AF\u03C3\u03BA\u03BF \u03B3\u03B9\u03B1 \u03C4\u03B7\u03BD \u03B1\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u03B1\u03BD\u03C4\u03B9\u03B3\u03C1\u03AC\u03C6\u03C9\u03BD \u03B1\u03C3\u03C6\u03B1\u03BB\u03B5\u03AF\u03B1\u03C2, avatar \u03BA\u03B1\u03B9 \u03AC\u03BB\u03BB\u03C9\u03BD \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2. \u039C\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03C1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03C4\u03B5 \u03C0\u03B5\u03C1\u03B9\u03C3\u03C3\u03CC\u03C4\u03B5\u03C1\u03BF\u03C5\u03C2 \u03B1\u03C0\u03CC \u03AD\u03BD\u03B1\u03BD \u03BF\u03B4\u03B7\u03B3\u03BF\u03CD\u03C2 \u03B4\u03AF\u03C3\u03BA\u03C9\u03BD \u03CC\u03C0\u03C9\u03C2 DigitalOcean, S3 \u03BA\u03B1\u03B9 Dropbox \u03C3\u03CD\u03BC\u03C6\u03C9\u03BD\u03B1 \u03BC\u03B5 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B1\u03C2.",created_at:"\u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AE\u03B8\u03B7\u03BA\u03B5 \u03C3\u03C4\u03B9\u03C2",dropbox:"Dropbox",name:"\u038C\u03BD\u03BF\u03BC\u03B1",driver:"\u039F\u03B4\u03B7\u03B3\u03CC\u03C2",disk_type:"Type",disk_name:"\u03A7\u03C1\u03AE\u03C3\u03B7 \u03B4\u03AF\u03C3\u03BA\u03BF\u03C5",new_disk:"\u03A6\u03CC\u03C1\u03C4\u03C9\u03C3\u03B7 \u039D\u03AD\u03BF\u03C5 \u0394\u03AF\u03C3\u03BA\u03BF\u03C5",filesystem_driver:"\u039F\u03B4\u03B7\u03B3\u03CC\u03C2 \u03A3\u03C5\u03C3\u03C4\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2 \u0391\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD",local_driver:"\u03C4\u03BF\u03C0\u03B9\u03BA\u03CC\u03C2 \u03BF\u03B4\u03B7\u03B3\u03CC\u03C2",local_root:"\u03C4\u03BF\u03C0\u03B9\u03BA\u03AE \u03C1\u03AF\u03B6\u03B1",public_driver:"\u03A0\u03C1\u03CC\u03BA\u03C1\u03B9\u03C3\u03B7 \u039F\u03B4\u03B7\u03B3\u03BF\u03CD",public_root:"\u0394\u03B7\u03BC\u03CC\u03C3\u03B9\u03B1 \u03A1\u03AF\u03B6\u03B1",public_url:"\u0394\u03B7\u03BC\u03CC\u03C3\u03B9\u03B1 \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 URL",public_visibility:"\u0394\u03B7\u03BC\u03CC\u03C3\u03B9\u03B1 \u039F\u03C1\u03B1\u03C4\u03CC\u03C4\u03B7\u03C4\u03B1",media_driver:"\u039F\u03B4\u03B7\u03B3\u03CC\u03C2 \u0391\u03BB\u03BB\u03B7\u03BB\u03BF\u03B3\u03C1\u03B1\u03C6\u03AF\u03B1\u03C2",media_root:"\u03A1\u03AF\u03B6\u03B1 \u03A0\u03BF\u03BB\u03C5\u03BC\u03AD\u03C3\u03C9\u03BD",aws_driver:"\u039F\u03B4\u03B7\u03B3\u03CC\u03C2 AWS",aws_key:"\u039A\u03BB\u03B5\u03B9\u03B4\u03AF SES",aws_secret:"SES \u039C\u03C5\u03C3\u03C4\u03B9\u03BA\u03CC",aws_region:"\u03A0\u03B5\u03C1\u03B9\u03BF\u03C7\u03AE AWS",aws_bucket:"SES \u039C\u03C5\u03C3\u03C4\u03B9\u03BA\u03CC",aws_root:"\u03A1\u03AF\u03B6\u03B1 AWS",do_spaces_type:"\u03A4\u03CD\u03C0\u03BF\u03C2 \u03BA\u03B5\u03BD\u03CE\u03BD",do_spaces_key:"\u03A4\u03CD\u03C0\u03BF\u03C2 \u03BA\u03B5\u03BD\u03CE\u03BD",do_spaces_secret:"\u039C\u03C5\u03C3\u03C4\u03B9\u03BA\u03CC \u038C\u03C1\u03B9\u03BF \u03A7\u03CE\u03C1\u03C9\u03BD",do_spaces_region:'\u03A0\u03B5\u03C1\u03B9\u03BF\u03C7\u03AE "\u03A7\u03CE\u03C1\u03C9\u03BD"',do_spaces_bucket:"\u039C\u03C5\u03C3\u03C4\u03B9\u03BA\u03CC \u038C\u03C1\u03B9\u03BF \u03A7\u03CE\u03C1\u03C9\u03BD",do_spaces_endpoint:"\u0395\u03BA\u03C4\u03AD\u03BB\u03B5\u03C3\u03B7 \u03A7\u03CE\u03C1\u03C9\u03BD \u03A4\u03B5\u03BB\u03B9\u03BA\u03BF\u03CD \u03A3\u03B7\u03BC\u03B5\u03AF\u03BF\u03C5",do_spaces_root:'\u03A0\u03B5\u03C1\u03B9\u03BF\u03C7\u03AE "\u03A7\u03CE\u03C1\u03C9\u03BD"',dropbox_type:"\u03A3\u03C5\u03B3\u03C7\u03C1\u03BF\u03BD\u03B9\u03C3\u03BC\u03CC\u03C2 Dropbox",dropbox_token:"\u03A3\u03C5\u03B3\u03C7\u03C1\u03BF\u03BD\u03B9\u03C3\u03BC\u03CC\u03C2 Dropbox",dropbox_key:"\u039A\u03BB\u03B5\u03B9\u03B4\u03AF Dropbox",dropbox_secret:"\u039C\u03C5\u03C3\u03C4\u03B9\u03BA\u03CC Dropbox",dropbox_app:"\u03A3\u03C5\u03B3\u03C7\u03C1\u03BF\u03BD\u03B9\u03C3\u03BC\u03CC\u03C2 Dropbox",dropbox_root:"\u03A1\u03AF\u03B6\u03B1 Dropbox",default_driver:"\u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03BF\u03C2 \u039F\u03B4\u03B7\u03B3\u03CC\u03C2",is_default:"IS \u03A0\u03A1\u039F\u03A6\u03A5\u039B\u0391\u039E\u0397",set_default_disk:"\u039F\u03C1\u03B9\u03C3\u03BC\u03CC\u03C2 \u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03BF\u03C5 \u0394\u03AF\u03C3\u03BA\u03BF\u03C5",set_default_disk_confirm:"\u0391\u03C5\u03C4\u03CC\u03C2 \u03BF \u03B4\u03AF\u03C3\u03BA\u03BF\u03C2 \u03B8\u03B1 \u03BF\u03C1\u03B9\u03C3\u03C4\u03B5\u03AF \u03C9\u03C2 \u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03BF\u03C2 \u03BA\u03B1\u03B9 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03BD\u03AD\u03B1 \u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 PDF \u03B8\u03B1 \u03B1\u03C0\u03BF\u03B8\u03B7\u03BA\u03B5\u03C5\u03C4\u03BF\u03CD\u03BD \u03C3\u03B5 \u03B1\u03C5\u03C4\u03CC\u03BD \u03C4\u03BF\u03BD \u03B4\u03AF\u03C3\u03BA\u03BF",success_set_default_disk:"\u039F \u03B4\u03AF\u03C3\u03BA\u03BF\u03C2 \u03BF\u03C1\u03AF\u03C3\u03C4\u03B7\u03BA\u03B5 \u03C9\u03C2 \u03C0\u03C1\u03BF\u03BA\u03B1\u03B8\u03BF\u03C1\u03B9\u03C3\u03BC\u03AD\u03BD\u03BF\u03C2 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",save_pdf_to_disk:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u03BA\u03BB\u03B5\u03B9\u03B4\u03B9\u03BF\u03CD \u03C3\u03C4\u03BF \u03B4\u03AF\u03C3\u03BA\u03BF",disk_setting_description:" \u0395\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03C4\u03B5 \u03B1\u03C5\u03C4\u03CC, \u03B1\u03BD \u03B8\u03AD\u03BB\u03B5\u03C4\u03B5 \u03BD\u03B1 \u03B1\u03C0\u03BF\u03B8\u03B7\u03BA\u03B5\u03CD\u03C3\u03B5\u03C4\u03B5 \u03AD\u03BD\u03B1 \u03B1\u03BD\u03C4\u03AF\u03B3\u03C1\u03B1\u03C6\u03BF \u03C4\u03BF\u03C5 \u03BA\u03AC\u03B8\u03B5 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5, \u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 & \u03C0\u03B1\u03C1\u03B1\u03BB\u03B1\u03B2\u03AE \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2 PDF \u03C3\u03C4\u03BF\u03BD \u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03BF \u03B4\u03AF\u03C3\u03BA\u03BF \u03C3\u03B1\u03C2 \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1. \u0397 \u03B5\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7 \u03B1\u03C5\u03C4\u03AE\u03C2 \u03C4\u03B7\u03C2 \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE\u03C2 \u03B8\u03B1 \u03BC\u03B5\u03B9\u03CE\u03C3\u03B5\u03B9 \u03C4\u03BF \u03C7\u03C1\u03CC\u03BD\u03BF \u03C6\u03CC\u03C1\u03C4\u03C9\u03C3\u03B7\u03C2 \u03BA\u03B1\u03C4\u03AC \u03C4\u03B7\u03BD \u03C0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE \u03C4\u03C9\u03BD PDF.",select_disk:"\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03B4\u03AF\u03C3\u03BA\u03BF",disk_settings:"\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u0394\u03AF\u03C3\u03BA\u03BF\u03C5",confirm_delete:"\u03A4\u03B1 \u03C5\u03C0\u03AC\u03C1\u03C7\u03BF\u03BD\u03C4\u03B1 \u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 \u03BA\u03B1\u03B9 \u03BF\u03B9 \u03C6\u03AC\u03BA\u03B5\u03BB\u03BF\u03B9 \u03C3\u03B1\u03C2 \u03C3\u03C4\u03BF\u03BD \u03BA\u03B1\u03B8\u03BF\u03C1\u03B9\u03C3\u03BC\u03AD\u03BD\u03BF \u03B4\u03AF\u03C3\u03BA\u03BF \u03B4\u03B5\u03BD \u03B8\u03B1 \u03B5\u03C0\u03B7\u03C1\u03B5\u03B1\u03C3\u03C4\u03BF\u03CD\u03BD \u03B1\u03BB\u03BB\u03AC \u03B7 \u03B4\u03B9\u03B1\u03BC\u03CC\u03C1\u03C6\u03C9\u03C3\u03B7 \u03C4\u03BF\u03C5 \u03B4\u03AF\u03C3\u03BA\u03BF\u03C5 \u03C3\u03B1\u03C2 \u03B8\u03B1 \u03B4\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03B5\u03AF \u03B1\u03C0\u03CC \u03C4\u03BF\u03BD \u039A\u03C1\u03B1\u03C4\u03AE\u03C1\u03B1",action:"\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B1",edit_file_disk:"\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u0394\u03AF\u03C3\u03BA\u03BF\u03C5 \u0391\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5",success_create:"\u0397 \u03B4\u03B5\u03BE\u03B1\u03BC\u03B5\u03BD\u03AE \u03C0\u03C1\u03BF\u03C3\u03C4\u03AD\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2.",success_update:"\u0397 \u03B4\u03B5\u03BE\u03B1\u03BC\u03B5\u03BD\u03AE \u03C0\u03C1\u03BF\u03C3\u03C4\u03AD\u03B8\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2.",error:"\u0397 \u03C0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03B4\u03AF\u03C3\u03BA\u03BF\u03C5 \u03B1\u03C0\u03AD\u03C4\u03C5\u03C7\u03B5",deleted_message:"\u039F \u03B4\u03AF\u03C3\u03BA\u03BF\u03C2 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C6\u03B7\u03BA\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03CE\u03C2",disk_variables_save_successfully:"\u0397 \u03A1\u03CD\u03B8\u03BC\u03B9\u03C3\u03B7 \u03A4\u03BF\u03C5 \u0394\u03AF\u03C3\u03BA\u03BF\u03C5 \u0395\u03C0\u03B9\u03C4\u03C5\u03C7\u03AE\u03C2",disk_variables_save_error:"\u0391\u03C0\u03BF\u03C4\u03C5\u03C7\u03AF\u03B1 \u03C1\u03CD\u03B8\u03BC\u03B9\u03C3\u03B7\u03C2 \u03C4\u03BF\u03C5 \u03B4\u03AF\u03C3\u03BA\u03BF\u03C5.",invalid_disk_credentials:"\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF \u03B4\u03B9\u03B1\u03C0\u03B9\u03C3\u03C4\u03B5\u03C5\u03C4\u03AE\u03C1\u03B9\u03BF \u03C4\u03BF\u03C5 \u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03BF\u03C5 \u03B4\u03AF\u03C3\u03BA\u03BF\u03C5"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},cw={account_info:"\u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B5\u03C2 \u039B\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03BF\u03CD",account_info_desc:"\u03A0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03B8\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B7\u03B8\u03BF\u03CD\u03BD \u03BF\u03B9 \u03BB\u03B5\u03C0\u03C4\u03BF\u03BC\u03AD\u03C1\u03B5\u03B9\u03B5\u03C2 \u03B3\u03B9\u03B1 \u03C4\u03B7 \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03C4\u03BF\u03C5 \u03BA\u03CD\u03C1\u03B9\u03BF\u03C5 \u03BB\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03BF\u03CD \u03B4\u03B9\u03B1\u03C7\u03B5\u03B9\u03C1\u03B9\u03C3\u03C4\u03AE. \u0395\u03C0\u03AF\u03C3\u03B7\u03C2, \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03B1\u03BB\u03BB\u03AC\u03BE\u03B5\u03C4\u03B5 \u03C4\u03B1 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03B1\u03BD\u03AC \u03C0\u03AC\u03C3\u03B1 \u03C3\u03C4\u03B9\u03B3\u03BC\u03AE \u03BC\u03B5\u03C4\u03AC \u03C4\u03B7 \u03C3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7.",name:"\u038C\u03BD\u03BF\u03BC\u03B1",email:"\u0397\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03AE \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7",password:"\u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2",confirm_password:"\u0395\u03C0\u03B9\u03B2\u03B5\u03B2\u03B1\u03AF\u03C9\u03C3\u03B7 \u039A\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD",save_cont:"\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 & \u03C3\u03C5\u03BD\u03B5\u03C7\u03B5\u03AF\u03B1",company_info:"\u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B5\u03C2 \u0395\u03C4\u03B1\u03B9\u03C1\u03AF\u03B1\u03C2",company_info_desc:"\u0391\u03C5\u03C4\u03AD\u03C2 \u03BF\u03B9 \u03C0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B5\u03C2 \u03B8\u03B1 \u03B5\u03BC\u03C6\u03B1\u03BD\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C3\u03C4\u03B1 \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03B1. \u03A3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03C4\u03B5 \u03CC\u03C4\u03B9 \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03BD\u03B1 \u03C4\u03BF \u03B5\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03C4\u03B5\u03AF\u03C4\u03B5 \u03B1\u03C1\u03B3\u03CC\u03C4\u03B5\u03C1\u03B1 \u03C3\u03C4\u03B7 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1 \u03C1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03C9\u03BD.",company_name:"\u038C\u03BD\u03BF\u03BC\u03B1 \u0395\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2",company_logo:"\u039B\u03BF\u03B3\u03CC\u03C4\u03C5\u03C0\u03BF \u0395\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2",logo_preview:"\u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03C3\u03BA\u03CC\u03C0\u03B7\u03C3\u03B7 \u039B\u03BF\u03B3\u03CC\u03C4\u03C5\u03C0\u03BF\u03C5",preferences:"\u03A0\u03C1\u03BF\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2 \u0395\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2",preferences_desc:"\u039A\u03B1\u03B8\u03BF\u03C1\u03AF\u03C3\u03C4\u03B5 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B5\u03C2 \u03C0\u03C1\u03BF\u03C4\u03B9\u03BC\u03AE\u03C3\u03B5\u03B9\u03C2 \u03B3\u03B9\u03B1 \u03B1\u03C5\u03C4\u03AE\u03BD \u03C4\u03B7\u03BD \u03B5\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1.",currency_set_alert:"\u03A4\u03BF \u03BD\u03CC\u03BC\u03B9\u03C3\u03BC\u03B1 \u03C4\u03B7\u03C2 \u03B5\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2 \u03B4\u03B5\u03BD \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF \u03BD\u03B1 \u03B1\u03BB\u03BB\u03AC\u03BE\u03B5\u03B9.",country:"\u03A7\u03CE\u03C1\u03B1",state:"\u039D\u03BF\u03BC\u03CC\u03C2",city:"\u03A0\u03CC\u03BB\u03B7",address:"\u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7",street:"\u039F\u03B4\u03CC\u03C2 1 - \u039F\u03B4\u03CC\u03C2 2",phone:"\u03A4\u03B7\u03BB\u03AD\u03C6\u03C9\u03BD\u03BF",zip_code:"\u03A4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B9\u03BA\u03CC\u03C2 \u03BA\u03CE\u03B4\u03B9\u03BA\u03B1\u03C2",go_back:"\u0395\u03C0\u03B9\u03C3\u03C4\u03C1\u03BF\u03C6\u03AE",currency:"\u039D\u03CC\u03BC\u03B9\u03C3\u03BC\u03B1",language:"Language",time_zone:"\u0396\u03CE\u03BD\u03B7 \u038F\u03C1\u03B1\u03C2",fiscal_year:"\u039F\u03B9\u03BA\u03BF\u03BD\u03BF\u03BC\u03B9\u03BA\u03CC \u03AD\u03C4\u03BF\u03C2",date_format:"\u039C\u03BF\u03C1\u03C6\u03AE \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1\u03C2",from_address:"\u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 \u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE\u03C2",username:"\u038C\u03BD\u03BF\u03BC\u03B1 \u03A7\u03C1\u03AE\u03C3\u03C4\u03B7",next:"\u0395\u03C0\u03CC\u03BC\u03B5\u03BD\u03BF",continue:"\u03A3\u03C5\u03BD\u03AD\u03C7\u03B5\u03B9\u03B1",skip:"Salta",database:{database:"Url & \u0392\u03AC\u03C3\u03B7 \u0394\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD \u0399\u03C3\u03C4\u03BF\u03C4\u03CC\u03C0\u03BF\u03C5",connection:"\u03A3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7 \u03BC\u03B5 \u0392\u03AC\u03C3\u03B7 \u0394\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD",host:"\u0394\u03B9\u03B1\u03BA\u03BF\u03BC\u03B9\u03C3\u03C4\u03AE\u03C2 \u0392\u03AC\u03C3\u03B7\u03C2 \u0394\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD",port:"\u0398\u03CD\u03C1\u03B1 \u0392\u03AC\u03C3\u03B7\u03C2 \u0394\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD",password:"\u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u0392\u03AC\u03C3\u03B7\u03C2 \u0394\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD",app_url:"URL \u0395\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE\u03C2",app_domain:"\u03A4\u03BF\u03BC\u03AD\u03B1\u03C2 \u0395\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE\u03C2",username:"\u038C\u03BD\u03BF\u03BC\u03B1 \u03A7\u03C1\u03AE\u03C3\u03C4\u03B7 \u0392\u03AC\u03C3\u03B7\u03C2 \u0394\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD",db_name:"\u038C\u03BD\u03BF\u03BC\u03B1 \u03B2\u03AC\u03C3\u03B7\u03C2 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD",db_path:"\u0394\u03B9\u03B1\u03B4\u03C1\u03BF\u03BC\u03AE \u0392\u03AC\u03C3\u03B7\u03C2 \u0394\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD",desc:"\u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AE\u03C3\u03C4\u03B5 \u03BC\u03B9\u03B1 \u03B2\u03AC\u03C3\u03B7 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD \u03C3\u03C4\u03BF \u03B4\u03B9\u03B1\u03BA\u03BF\u03BC\u03B9\u03C3\u03C4\u03AE \u03C3\u03B1\u03C2 \u03BA\u03B1\u03B9 \u03BF\u03C1\u03AF\u03C3\u03C4\u03B5 \u03C4\u03B1 \u03B4\u03B9\u03B1\u03C0\u03B9\u03C3\u03C4\u03B5\u03C5\u03C4\u03AE\u03C1\u03B9\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03CE\u03BD\u03C4\u03B1\u03C2 \u03C4\u03B7\u03BD \u03C0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03C6\u03CC\u03C1\u03BC\u03B1."},permissions:{permissions:"\u0394\u03B9\u03BA\u03B1\u03B9\u03CE\u03BC\u03B1\u03C4\u03B1",permission_confirm_title:"\u0395\u03AF\u03C3\u03C4\u03B5 \u03B2\u03AD\u03B2\u03B1\u03B9\u03BF\u03B9 \u03CC\u03C4\u03B9 \u03B8\u03AD\u03BB\u03B5\u03C4\u03B5 \u03BD\u03B1 \u03C3\u03C5\u03BD\u03B5\u03C7\u03AF\u03C3\u03B5\u03C4\u03B5;",permission_confirm_desc:"\u039F \u03AD\u03BB\u03B5\u03B3\u03C7\u03BF\u03C2 \u03B4\u03B9\u03BA\u03B1\u03B9\u03C9\u03BC\u03AC\u03C4\u03C9\u03BD \u03C6\u03B1\u03BA\u03AD\u03BB\u03BF\u03C5 \u03B1\u03C0\u03AD\u03C4\u03C5\u03C7\u03B5",permission_desc:"\u03A0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B7 \u03BB\u03AF\u03C3\u03C4\u03B1 \u03C4\u03C9\u03BD \u03B4\u03B9\u03BA\u03B1\u03B9\u03C9\u03BC\u03AC\u03C4\u03C9\u03BD \u03C6\u03B1\u03BA\u03AD\u03BB\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B1\u03C0\u03B1\u03B9\u03C4\u03BF\u03CD\u03BD\u03C4\u03B1\u03B9 \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03BB\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AE\u03C3\u03B5\u03B9 \u03B7 \u03B5\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE. \u0395\u03AC\u03BD \u03BF \u03AD\u03BB\u03B5\u03B3\u03C7\u03BF\u03C2 \u03C4\u03B7\u03C2 \u03AC\u03B4\u03B5\u03B9\u03B1\u03C2 \u03B1\u03C0\u03BF\u03C4\u03CD\u03C7\u03B5\u03B9, \u03C6\u03C1\u03BF\u03BD\u03C4\u03AF\u03C3\u03C4\u03B5 \u03BD\u03B1 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03CE\u03C3\u03B5\u03C4\u03B5 \u03C4\u03B1 \u03B4\u03B9\u03BA\u03B1\u03B9\u03CE\u03BC\u03B1\u03C4\u03B1 \u03C4\u03BF\u03C5 \u03C6\u03B1\u03BA\u03AD\u03BB\u03BF\u03C5 \u03C3\u03B1\u03C2."},verify_domain:{title:"\u0391\u03BD\u03B8\u03C1\u03CE\u03C0\u03B9\u03BD\u03B7 \u0395\u03C0\u03B1\u03BB\u03AE\u03B8\u03B5\u03C5\u03C3\u03B7",desc:"\u039F \u039A\u03C1\u03B1\u03C4\u03AE\u03C1\u03B1\u03C2 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF \u03AD\u03BB\u03B5\u03B3\u03C7\u03BF \u03C4\u03B1\u03C5\u03C4\u03CC\u03C4\u03B7\u03C4\u03B1\u03C2 \u03C0\u03BF\u03C5 \u03B2\u03B1\u03C3\u03AF\u03B6\u03B5\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03C3\u03C5\u03BD\u03B5\u03B4\u03C1\u03AF\u03B1 \u03BA\u03B1\u03B9 \u03B1\u03C0\u03B1\u03B9\u03C4\u03B5\u03AF \u03B5\u03C0\u03B1\u03BB\u03AE\u03B8\u03B5\u03C5\u03C3\u03B7 \u03C4\u03BF\u03BC\u03AD\u03B1 \u03B3\u03B9\u03B1 \u03BB\u03CC\u03B3\u03BF\u03C5\u03C2 \u03B1\u03C3\u03C6\u03B1\u03BB\u03B5\u03AF\u03B1\u03C2. \u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03B5\u03B9\u03C3\u03AC\u03B3\u03B5\u03C4\u03B5 \u03C4\u03BF\u03BD \u03C4\u03BF\u03BC\u03AD\u03B1 \u03C3\u03C4\u03BF\u03BD \u03BF\u03C0\u03BF\u03AF\u03BF \u03B8\u03B1 \u03AD\u03C7\u03B5\u03C4\u03B5 \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7 \u03C3\u03C4\u03B7\u03BD \u03B5\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE \u03B9\u03C3\u03C4\u03BF\u03CD \u03C3\u03B1\u03C2.",app_domain:"\u03A4\u03BF\u03BC\u03AD\u03B1\u03C2 \u0395\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE\u03C2",verify_now:"\u0395\u03C0\u03B1\u03BB\u03B7\u03B8\u03B5\u03CD\u03C3\u03C4\u03B5 \u03A4\u03CE\u03C1\u03B1",success:"\u0397 \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 \u03C4\u03BF\u03C5 \u03B7\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03BF\u03CD \u03C4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B5\u03AF\u03BF\u03C5 \u03C3\u03B1\u03C2 \u03B5\u03C0\u03B1\u03BB\u03B7\u03B8\u03B5\u03CD\u03C4\u03B7\u03BA\u03B5",failed:"\u0397 \u03B5\u03C0\u03B1\u03BB\u03AE\u03B8\u03B5\u03C5\u03C3\u03B7 \u03C4\u03BF\u03BC\u03AD\u03B1 \u03B1\u03C0\u03AD\u03C4\u03C5\u03C7\u03B5. \u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03B5\u03B9\u03C3\u03AC\u03B3\u03B5\u03C4\u03B5 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03C4\u03BF\u03BC\u03AD\u03B1.",verify_and_continue:"\u0395\u03C0\u03B1\u03BB\u03AE\u03B8\u03B5\u03C5\u03C3\u03B7 \u039A\u03B1\u03B9 \u03A3\u03C5\u03BD\u03AD\u03C7\u03B5\u03B9\u03B1"},mail:{host:"\u0394\u03B9\u03B1\u03BA\u03BF\u03BC\u03B9\u03C3\u03C4\u03AE\u03C2 \u0391\u03BB\u03BB\u03B7\u03BB\u03BF\u03B3\u03C1\u03B1\u03C6\u03AF\u03B1\u03C2",port:"\u0394\u03B9\u03B1\u03BA\u03BF\u03BC\u03B9\u03C3\u03C4\u03AE\u03C2 \u0391\u03BB\u03BB\u03B7\u03BB\u03BF\u03B3\u03C1\u03B1\u03C6\u03AF\u03B1\u03C2",driver:"\u039F\u03B4\u03B7\u03B3\u03CC\u03C2 \u0391\u03BB\u03BB\u03B7\u03BB\u03BF\u03B3\u03C1\u03B1\u03C6\u03AF\u03B1\u03C2",secret:"\u039C\u03C5\u03C3\u03C4\u03B9\u03BA\u03CC",mailgun_secret:"\u039C\u03C5\u03C3\u03C4\u03B9\u03BA\u03CC Mailgun",mailgun_domain:"\u03A4\u03BF\u03BC\u03AD\u03B1\u03C2",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES \u039C\u03C5\u03C3\u03C4\u03B9\u03BA\u03CC",ses_key:"\u039A\u03BB\u03B5\u03B9\u03B4\u03AF SES",password:"\u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03A0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03A4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B5\u03AF\u03BF\u03C5",username:"\u038C\u03BD\u03BF\u03BC\u03B1 \u03A4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B5\u03AF\u03BF\u03C5",mail_config:"\u0394\u03B9\u03B1\u03BC\u03CC\u03C1\u03C6\u03C9\u03C3\u03B7 Mail",from_name:"\u038C\u03BD\u03BF\u03BC\u03B1 \u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AD\u03B1",from_mail:"\u0394\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 \u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE\u03C2",encryption:"\u039A\u03C1\u03C5\u03C0\u03C4\u03BF\u03B3\u03C1\u03AC\u03C6\u03B7\u03C3\u03B7 Email",mail_config_desc:"\u03A0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B7 \u03C6\u03CC\u03C1\u03BC\u03B1 \u03B3\u03B9\u03B1 \u03C4\u03B7 \u03C1\u03CD\u03B8\u03BC\u03B9\u03C3\u03B7 \u03C0\u03B1\u03C1\u03B1\u03BC\u03AD\u03C4\u03C1\u03C9\u03BD \u03C4\u03BF\u03C5 \u03C0\u03C1\u03BF\u03B3\u03C1\u03AC\u03BC\u03BC\u03B1\u03C4\u03BF\u03C2 \u03BF\u03B4\u03AE\u03B3\u03B7\u03C3\u03B7\u03C2 \u03B7\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03BF\u03CD \u03C4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B5\u03AF\u03BF\u03C5 \u03B3\u03B9\u03B1 \u03C4\u03B7\u03BD \u03B1\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE \u03BC\u03B7\u03BD\u03C5\u03BC\u03AC\u03C4\u03C9\u03BD \u03B7\u03BB\u03B5\u03BA\u03C4\u03C1\u03BF\u03BD\u03B9\u03BA\u03BF\u03CD \u03C4\u03B1\u03C7\u03C5\u03B4\u03C1\u03BF\u03BC\u03B5\u03AF\u03BF\u03C5 \u03B1\u03C0\u03CC \u03C4\u03B7\u03BD \u03B5\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE. \u039C\u03C0\u03BF\u03C1\u03B5\u03AF\u03C4\u03B5 \u03B5\u03C0\u03AF\u03C3\u03B7\u03C2 \u03BD\u03B1 \u03C1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03C4\u03B5 \u03C4\u03B9\u03C2 \u03C0\u03B1\u03C1\u03B1\u03BC\u03AD\u03C4\u03C1\u03BF\u03C5\u03C2 \u03C4\u03C1\u03AF\u03C4\u03C9\u03BD \u03C0\u03B1\u03C1\u03CC\u03C7\u03C9\u03BD \u03CC\u03C0\u03C9\u03C2 \u03C4\u03BF Sendgrid, \u03C4\u03BF SES \u03BA\u03BB\u03C0."},req:{system_req:"\u0391\u03C0\u03B1\u03B9\u03C4\u03AE\u03C3\u03B5\u03B9\u03C2 \u03A3\u03C5\u03C3\u03C4\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2",php_req_version:"PHP (\u03B1\u03C0\u03B1\u03B9\u03C4\u03B5\u03AF\u03C4\u03B1\u03B9 \u03AD\u03BA\u03B4\u03BF\u03C3\u03B7 {version})",check_req:"\u0388\u03BB\u03B5\u03B3\u03C7\u03BF\u03C2 \u0391\u03C0\u03B1\u03B9\u03C4\u03AE\u03C3\u03B5\u03C9\u03BD",system_req_desc:"\u039F \u03BA\u03C1\u03B1\u03C4\u03AE\u03C1\u03B1\u03C2 \u03AD\u03C7\u03B5\u03B9 \u03BC\u03B5\u03C1\u03B9\u03BA\u03AD\u03C2 \u03B1\u03C0\u03B1\u03B9\u03C4\u03AE\u03C3\u03B5\u03B9\u03C2 \u03B4\u03B9\u03B1\u03BA\u03BF\u03BC\u03B9\u03C3\u03C4\u03AE. \u0392\u03B5\u03B2\u03B1\u03B9\u03C9\u03B8\u03B5\u03AF\u03C4\u03B5 \u03CC\u03C4\u03B9 \u03BF \u03B4\u03B9\u03B1\u03BA\u03BF\u03BC\u03B9\u03C3\u03C4\u03AE\u03C2 \u03C3\u03B1\u03C2 \u03AD\u03C7\u03B5\u03B9 \u03C4\u03B7\u03BD \u03B1\u03C0\u03B1\u03B9\u03C4\u03BF\u03CD\u03BC\u03B5\u03BD\u03B7 \u03AD\u03BA\u03B4\u03BF\u03C3\u03B7 php \u03BA\u03B1\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03B5\u03C0\u03B5\u03BA\u03C4\u03AC\u03C3\u03B5\u03B9\u03C2 \u03C0\u03BF\u03C5 \u03B1\u03BD\u03B1\u03C6\u03AD\u03C1\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9."},errors:{migrate_failed:"\u0391\u03C0\u03BF\u03C4\u03C5\u03C7\u03AF\u03B1 \u039C\u03B5\u03C4\u03B5\u03B3\u03BA\u03B1\u03C4\u03AC\u03C3\u03C4\u03B1\u03C3\u03B7\u03C2",database_variables_save_error:"\u0394\u03B5\u03BD \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03C5\u03BD\u03B1\u03C4\u03AE \u03B7 \u03B5\u03B3\u03B3\u03C1\u03B1\u03C6\u03AE \u03C1\u03CD\u03B8\u03BC\u03B9\u03C3\u03B7\u03C2 \u03C0\u03B1\u03C1\u03B1\u03BC\u03AD\u03C4\u03C1\u03C9\u03BD \u03C3\u03C4\u03BF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF .env. \u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03B5\u03BB\u03AD\u03B3\u03BE\u03C4\u03B5 \u03C4\u03B1 \u03B4\u03B9\u03BA\u03B1\u03B9\u03CE\u03BC\u03B1\u03C4\u03B1 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5",mail_variables_save_error:"\u0391\u03C0\u03BF\u03C4\u03C5\u03C7\u03AF\u03B1 \u03C1\u03CD\u03B8\u03BC\u03B9\u03C3\u03B7\u03C2 \u03C4\u03BF\u03C5 \u03B4\u03AF\u03C3\u03BA\u03BF\u03C5.",connection_failed:"\u03A3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7 \u03B2\u03AC\u03C3\u03B7\u03C2 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD",database_should_be_empty:"\u0397 \u03B2\u03AC\u03C3\u03B7 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BA\u03B5\u03BD\u03AE"},success:{mail_variables_save_successfully:"\u0397 \u03A1\u03CD\u03B8\u03BC\u03B9\u03C3\u03B7 \u03A4\u03BF\u03C5 \u0394\u03AF\u03C3\u03BA\u03BF\u03C5 \u0395\u03C0\u03B9\u03C4\u03C5\u03C7\u03AE\u03C2",database_variables_save_successfully:"\u0397 \u03A1\u03CD\u03B8\u03BC\u03B9\u03C3\u03B7 \u03A4\u03BF\u03C5 \u0394\u03AF\u03C3\u03BA\u03BF\u03C5 \u0395\u03C0\u03B9\u03C4\u03C5\u03C7\u03AE\u03C2."}},_w={invalid_phone:"\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF\u03C2 \u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03C4\u03B7\u03BB\u03B5\u03C6\u03CE\u03BD\u03BF\u03C5",invalid_url:"\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 url (\u03C0.\u03C7. http://www.craterapp.com)",invalid_domain_url:"\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 url (\u03C0.\u03C7. craterapp.com)",required:"\u03A4\u03BF \u03C0\u03B5\u03B4\u03AF\u03BF \u03B5\u03AF\u03BD\u03B1\u03B9 \u03C5\u03C0\u03BF\u03C7\u03C1\u03B5\u03C9\u03C4\u03B9\u03BA\u03CC",email_incorrect:"\u039B\u03AC\u03B8\u03BF\u03C2 \u03BC\u03BF\u03C1\u03C6\u03AE e-mail;",email_already_taken:"\u03A4\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03AD\u03C7\u03B5\u03B9 \u03AE\u03B4\u03B7 \u03BB\u03B7\u03C6\u03B8\u03B5\u03AF.",email_does_not_exist:"\u03A4\u03BF \u03C3\u03C5\u03B3\u03BA\u03B5\u03BA\u03C1\u03B9\u03BC\u03AD\u03BD\u03BF email \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF\u03C4\u03B1\u03B9 \u03AE\u03B4\u03B7 \u03B1\u03C0\u03CC \u03AC\u03BB\u03BB\u03BF\u03BD \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7",item_unit_already_taken:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7 \u03AD\u03C7\u03B5\u03B9 \u03AE\u03B4\u03B7 \u03BB\u03B7\u03C6\u03B8\u03B5\u03AF.",payment_mode_already_taken:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7 \u03AD\u03C7\u03B5\u03B9 \u03AE\u03B4\u03B7 \u03BB\u03B7\u03C6\u03B8\u03B5\u03AF.",send_reset_link:"\u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE \u03C3\u03C5\u03BD\u03B4\u03AD\u03C3\u03BC\u03BF\u03C5 \u03B5\u03C0\u03B1\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC\u03C2",not_yet:"\u038C\u03C7\u03B9 \u03B1\u03BA\u03CC\u03BC\u03B1? \u03A3\u03C4\u03B5\u03AF\u03BB\u03B5 \u03C4\u03BF \u03BE\u03B1\u03BD\u03AC",password_min_length:"\u039F \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 \u03C4\u03BF\u03C5\u03BB\u03AC\u03C7\u03B9\u03C3\u03C4\u03BF\u03BD 6 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2",name_min_length:"\u03A4\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9 \u03C4\u03BF\u03C5\u03BB\u03AC\u03C7\u03B9\u03C3\u03C4\u03BF\u03BD {count} \u03B3\u03C1\u03AC\u03BC\u03BC\u03B1\u03C4\u03B1.",prefix_min_length:"\u03A4\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9 \u03C4\u03BF\u03C5\u03BB\u03AC\u03C7\u03B9\u03C3\u03C4\u03BF\u03BD {count} \u03B3\u03C1\u03AC\u03BC\u03BC\u03B1\u03C4\u03B1.",enter_valid_tax_rate:"\u0395\u03B9\u03C3\u03AC\u03B3\u03B5\u03C4\u03B5 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF \u03C6\u03BF\u03C1\u03BF\u03BB\u03BF\u03B3\u03B9\u03BA\u03CC \u03C3\u03C5\u03BD\u03C4\u03B5\u03BB\u03B5\u03C3\u03C4\u03AE",numbers_only:"\u0391\u03C1\u03B9\u03B8\u03BC\u03BF\u03AF \u039C\u03CC\u03BD\u03BF.",characters_only:"\u03A7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2 \u039C\u03CC\u03BD\u03BF.",password_incorrect:"\u039F\u03B9 \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03AF \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03AF\u03B4\u03B9\u03BF\u03B9",password_length:"\u039F \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 {count} \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B1\u03C2.",qty_must_greater_than_zero:"\u0397 \u03C0\u03BF\u03C3\u03CC\u03C4\u03B7\u03C4\u03B1 \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03B7 \u03C4\u03BF\u03C5 \u03BC\u03B7\u03B4\u03B5\u03BD\u03CC\u03C2.",price_greater_than_zero:"\u0397 \u03C4\u03B9\u03BC\u03AE \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03B7 \u03C4\u03BF\u03C5 \u03BC\u03B7\u03B4\u03B5\u03BD\u03CC\u03C2.",payment_greater_than_zero:"\u0397 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03B7 \u03C4\u03BF\u03C5 \u03BC\u03B7\u03B4\u03B5\u03BD\u03CC\u03C2.",payment_greater_than_due_amount:"\u0397 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE \u03C0\u03BF\u03C5 \u03B5\u03B9\u03C3\u03AE\u03C7\u03B8\u03B7 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03C0\u03B5\u03C1\u03B9\u03C3\u03C3\u03CC\u03C4\u03B5\u03C1\u03BF \u03B1\u03C0\u03CC \u03C4\u03BF \u03BF\u03C6\u03B5\u03B9\u03BB\u03CC\u03BC\u03B5\u03BD\u03BF \u03C0\u03BF\u03C3\u03CC \u03B1\u03C5\u03C4\u03BF\u03CD \u03C4\u03BF\u03C5 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5.",quantity_maxlength:"\u0397 \u03C0\u03BF\u03C3\u03CC\u03C4\u03B7\u03C4\u03B1 \u03B4\u03B5\u03BD \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C5\u03C0\u03B5\u03C1\u03B2\u03B1\u03AF\u03BD\u03B5\u03B9 \u03C4\u03B1 20 \u03C8\u03B7\u03C6\u03AF\u03B1.",price_maxlength:"\u0397 \u03C4\u03B9\u03BC\u03AE \u03B4\u03B5\u03BD \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03B7 \u03B1\u03C0\u03CC 20 \u03C8\u03B7\u03C6\u03AF\u03B1.",price_minvalue:"\u0397 \u03C4\u03B9\u03BC\u03AE \u03B8\u03B1 \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03B7 \u03B1\u03C0\u03CC 0.",amount_maxlength:"\u03A4\u03BF \u03C0\u03BF\u03C3\u03CC \u03B4\u03B5\u03BD \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C5\u03C0\u03B5\u03C1\u03B2\u03B1\u03AF\u03BD\u03B5\u03B9 \u03C4\u03B1 20 \u03C8\u03B7\u03C6\u03AF\u03B1.",amount_minvalue:"\u03A4\u03BF \u03C0\u03BF\u03C3\u03CC \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03BF \u03B1\u03C0\u03CC 0.",discount_maxlength:"\u0397 \u03AD\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7 \u03B4\u03B5\u03BD \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03B7 \u03B1\u03C0\u03CC \u03C4\u03B7 \u03BC\u03AD\u03B3\u03B9\u03C3\u03C4\u03B7 \u03AD\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7",description_maxlength:"\u0397 \u03C0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE \u03B4\u03B5\u03BD \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03B7 \u03B1\u03C0\u03CC 255 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2.",subject_maxlength:"\u0397 \u03C0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE \u03B4\u03B5\u03BD \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03B7 \u03B1\u03C0\u03CC 100 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2.",message_maxlength:"\u03A4\u03BF \u03BC\u03AE\u03BD\u03C5\u03BC\u03B1 \u03B4\u03B5\u03BD \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03BF \u03B1\u03C0\u03CC 255 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2.",maximum_options_error:"\u039C\u03AD\u03B3\u03B9\u03C3\u03C4\u03BF {max} \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AD\u03C2 \u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B5\u03C2. \u0391\u03C6\u03B1\u03B9\u03C1\u03AD\u03C3\u03C4\u03B5 \u03C0\u03C1\u03CE\u03C4\u03B1 \u03BC\u03B9\u03B1 \u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B7 \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B5\u03C0\u03B9\u03BB\u03AD\u03BE\u03B5\u03C4\u03B5 \u03BC\u03B9\u03B1 \u03AC\u03BB\u03BB\u03B7.",notes_maxlength:"\u0397 \u03C0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE \u03B4\u03B5\u03BD \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03B7 \u03B1\u03C0\u03CC 65,000 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2.",address_maxlength:"\u0397 \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 \u03B4\u03B5\u03BD \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03B7 \u03B1\u03C0\u03CC 255 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2.",ref_number_maxlength:"\u0397 \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 \u03B4\u03B5\u03BD \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03B7 \u03B1\u03C0\u03CC 255 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2.",prefix_maxlength:"\u0397 \u03C0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03C6\u03AE \u03B4\u03B5\u03BD \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03B7 \u03B1\u03C0\u03CC 5 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2.",something_went_wrong:"\u039A\u03AC\u03C4\u03B9 \u03B4\u03B5\u03BD \u03C0\u03AE\u03B3\u03B5 \u03BA\u03B1\u03BB\u03AC",number_length_minvalue:"\u03A4\u03BF \u03BC\u03AE\u03BA\u03BF\u03C2 \u03C4\u03BF\u03C5 \u03B1\u03C1\u03B9\u03B8\u03BC\u03BF\u03CD \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B5\u03B3\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03BF \u03B1\u03C0\u03CC 0",at_least_one_ability:"\u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03B5\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03C4\u03BF\u03C5\u03BB\u03AC\u03C7\u03B9\u03C3\u03C4\u03BF\u03BD \u03AD\u03BD\u03B1 \u03B4\u03B9\u03BA\u03B1\u03AF\u03C9\u03BC\u03B1.",valid_driver_key:"\u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03B5\u03B9\u03C3\u03AC\u03B3\u03B5\u03C4\u03B5 \u03AD\u03BD\u03B1 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF \u03BA\u03BB\u03B5\u03B9\u03B4\u03AF {driver}.",valid_exchange_rate:"\u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03B5\u03B9\u03C3\u03AC\u03B3\u03B5\u03C4\u03B5 \u03BC\u03B9\u03B1 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BD\u03B1\u03BB\u03BB\u03B1\u03B3\u03BC\u03B1\u03C4\u03B9\u03BA\u03AE \u03B9\u03C3\u03BF\u03C4\u03B9\u03BC\u03AF\u03B1.",company_name_not_same:"\u03A4\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03C4\u03B7\u03C2 \u03B5\u03C4\u03B1\u03B9\u03C1\u03B5\u03AF\u03B1\u03C2 \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C4\u03B1\u03B9\u03C1\u03B9\u03AC\u03B6\u03B5\u03B9 \u03BC\u03B5 \u03C4\u03BF \u03C3\u03C5\u03B3\u03BA\u03B5\u03BA\u03C1\u03B9\u03BC\u03AD\u03BD\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1."},uw={starter_plan:"\u0391\u03C5\u03C4\u03AE \u03B7 \u03BB\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B7 \u03C3\u03C4\u03BF Starter plan \u03BA\u03B1\u03B9 \u03BC\u03B5\u03C4\u03AC!",invalid_provider_key:"\u0395\u03B9\u03C3\u03B1\u03B3\u03AC\u03B3\u03B5\u03C4\u03B5 \u0388\u03B3\u03BA\u03C5\u03C1\u03BF \u039A\u03BB\u03B5\u03B9\u03B4\u03AF Api \u03A0\u03AC\u03C1\u03BF\u03C7\u03BF\u03C5.",estimate_number_used:"\u039F \u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03C4\u03B7\u03C2 \u03B5\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7\u03C2 \u03AD\u03C7\u03B5\u03B9 \u03AE\u03B4\u03B7 \u03BB\u03B7\u03C6\u03B8\u03B5\u03AF.",invoice_number_used:"\u039F \u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5 \u03AD\u03C7\u03B5\u03B9 \u03AE\u03B4\u03B7 \u03BB\u03B7\u03C6\u03B8\u03B5\u03AF.",payment_attached:"\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03C4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF \u03AD\u03C7\u03B5\u03B9 \u03AE\u03B4\u03B7 \u03BC\u03B9\u03B1 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE \u03C0\u03BF\u03C5 \u03B5\u03C0\u03B9\u03C3\u03C5\u03BD\u03AC\u03C0\u03C4\u03B5\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03B1\u03C5\u03C4\u03CC. \u0392\u03B5\u03B2\u03B1\u03B9\u03C9\u03B8\u03B5\u03AF\u03C4\u03B5 \u03CC\u03C4\u03B9 \u03AD\u03C7\u03B5\u03C4\u03B5 \u03B4\u03B9\u03B1\u03B3\u03C1\u03AC\u03C8\u03B5\u03B9 \u03C0\u03C1\u03CE\u03C4\u03B1 \u03C4\u03B9\u03C2 \u03C3\u03C5\u03BD\u03B7\u03BC\u03BC\u03AD\u03BD\u03B5\u03C2 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AD\u03C2 \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03C0\u03C1\u03BF\u03C7\u03C9\u03C1\u03AE\u03C3\u03B5\u03C4\u03B5 \u03BC\u03B5 \u03C4\u03B7\u03BD \u03B1\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7.",payment_number_used:"\u039F \u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2 \u03AD\u03C7\u03B5\u03B9 \u03AE\u03B4\u03B7 \u03BB\u03B7\u03C6\u03B8\u03B5\u03AF.",name_already_taken:"\u03A4\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03AD\u03C7\u03B5\u03B9 \u03AE\u03B4\u03B7 \u03BB\u03B7\u03C6\u03B8\u03B5\u03AF.",receipt_does_not_exist:"\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03B5\u03B9 \u03B1\u03C0\u03CC\u03B4\u03B5\u03B9\u03BE\u03B7.",customer_cannot_be_changed_after_payment_is_added:"\u039F \u03C0\u03B5\u03BB\u03AC\u03C4\u03B7\u03C2 \u03B4\u03B5\u03BD \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF \u03BD\u03B1 \u03B1\u03BB\u03BB\u03AC\u03BE\u03B5\u03B9 \u03BC\u03B5\u03C4\u03AC \u03C4\u03B7\u03BD \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE \u03C0\u03C1\u03BF\u03C3\u03C4\u03AF\u03B8\u03B5\u03C4\u03B1\u03B9",invalid_credentials:"\u039C\u03B7 \u0388\u03B3\u03BA\u03C5\u03C1\u03B1 \u03A0\u03B9\u03C3\u03C4\u03BF\u03C0\u03BF\u03B9\u03B7\u03C4\u03B9\u03BA\u03AC.",not_allowed:"\u0394\u03B5\u03BD \u0395\u03C0\u03B9\u03C4\u03C1\u03AD\u03C0\u03B5\u03C4\u03B1\u03B9",login_invalid_credentials:"\u0391\u03C5\u03C4\u03AC \u03C4\u03B1 \u03B4\u03B9\u03B1\u03C0\u03B9\u03C3\u03C4\u03B5\u03C5\u03C4\u03AE\u03C1\u03B9\u03B1 \u03B4\u03B5\u03BD \u03C4\u03B1\u03B9\u03C1\u03B9\u03AC\u03B6\u03BF\u03C5\u03BD \u03BC\u03B5 \u03C4\u03B1 \u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 \u03BC\u03B1\u03C2.",enter_valid_cron_format:"\u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03B5\u03B9\u03C3\u03AC\u03B3\u03B5\u03C4\u03B5 \u03BC\u03B9\u03B1 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03BC\u03BF\u03C1\u03C6\u03AE cron",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},mw="\u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7",pw="\u0395\u03BA\u03C4\u03AF\u03BC\u03B7\u03C3\u03B7 \u0391\u03C1\u03B9\u03B8\u03BC\u03BF\u03CD",gw="\u0395\u03BA\u03C4\u03B9\u03BC\u03CE\u03BC\u03B5\u03BD\u03B7 \u03B7\u03BC. \u03B5\u03C0\u03B9\u03C3\u03BA\u03B5\u03C5\u03AE\u03C2",fw="\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BB\u03AE\u03BE\u03B7\u03C2",vw="\u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B9\u03BF",hw="\u0391\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03C4\u03B9\u03BC\u03BF\u03BB\u03BF\u03B3\u03AF\u03BF\u03C5",yw="\u0397\u03BC/\u03BD\u03AF\u03B1 \u03A4\u03B9\u03BC\u03BF\u03BB\u03CC\u03B3\u03B7\u03C3\u03B7\u03C2",bw="Ech\xE9ance",kw="\u03A3\u03B7\u03BC\u03B5\u03B9\u03CE\u03C3\u03B5\u03B9\u03C2",ww="\u03A0\u03C1\u03BF\u03CA\u03CC\u03BD\u03C4\u03B1",xw="\u03A0\u03BF\u03C3\u03CC\u03C4\u03B7\u03C4\u03B1",zw="\u03A4\u03B9\u03BC\u03AE",Sw="\u0388\u03BA\u03C0\u03C4\u03C9\u03C3\u03B7",Pw="\u03A0\u03BF\u03C3\u03CC",jw="\u03A5\u03C0\u03BF\u03C3\u03CD\u03BD\u03BF\u03BB\u03BF",Aw="\u03A3\u03CD\u03BD\u03BF\u03BB\u03BF\xA0",Dw="\u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE",Cw="\u03A0\u03A1\u039F\u03A3\u0391\u03A1\u039C\u039F\u0393\u0397 \u03A0\u039B\u0397\u03A1\u03A9\u039C\u0397\u03A3",Ew="\u0397\u03BC/\u03BD\u03AF\u03B1 \u03B5\u03BE\u03CC\u03C6\u03BB\u03B7\u03C3\u03B7\u03C2",Iw="\u0391\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03A0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",Nw="\u03A4\u03C1\u03CC\u03C0\u03BF\u03C2 \u03C0\u03BB\u03B7\u03C1\u03C9\u03BC\u03AE\u03C2",Tw="\u03A0\u03BF\u03C3\u03BF\u03C3\u03C4\u03CC \u039B\u03B7\u03C6\u03B8\u03AD\u03BD\u03C4\u03C9\u03BD",Rw="\u0395\u039A\u0398\u0395\u03A3\u0397 \u0395\u039E\u0391\u0393\u03A9\u0393\u03A9\u039D",Mw="\u03A3\u03A5\u039D\u039F\u039B\u039F \u0394\u0391\u03A0\u0391\u039D\u0397\u03A3",Fw="\u0395\u039A\u0398\u0395\u03A3\u0397 \u0395\u03A0\u0391\u03A6\u0397\u03A3 & LOSS",$w="\u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC \u03A0\u03B5\u03BB\u03AC\u03C4\u03B7 \u03A0\u03C9\u03BB\u03AE\u03C3\u03B5\u03C9\u03BD",Uw="\u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC \u03A0\u03B5\u03BB\u03AC\u03C4\u03B7 \u03A0\u03C9\u03BB\u03AE\u03C3\u03B5\u03C9\u03BD",Vw="\u0391\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC \u03A0\u03B5\u03C1\u03AF\u03BB\u03B7\u03C8\u03B7\u03C2 \u03A6\u03CC\u03C1\u03BF\u03C5",Ow=`\u0395\u0399\u03A3\u039F\u0394\u0397\u039C\u0391\u03A4\u0391 +`,Lw="NET PROFIT",Bw="\u0388\u03BA\u03B8\u03B5\u03C3\u03B7 \u03A0\u03C9\u03BB\u03AE\u03C3\u03B5\u03C9\u03BD: \u0391\u03C0\u03CC \u03A4\u03BF\u03BD \u03A0\u03B5\u03BB\u03AC\u03C4\u03B7",qw="\u03A3\u03A5\u039D\u039F\u039B\u039F \u03A0\u03A9\u039B\u0397\u03A3\u0397\u03A3",Kw="\u0388\u03BA\u03B8\u03B5\u03C3\u03B7 \u03A0\u03C9\u03BB\u03AE\u03C3\u03B5\u03C9\u03BD: \u0391\u03C0\u03CC \u03A4\u03BF\u03BD \u03A0\u03B5\u03BB\u03AC\u03C4\u03B7",Ww="\u03A6\u039F\u03A1\u039F\u039B\u039F\u0393\u0399\u039A\u0397 \u0395\u039A\u0398\u0395\u03A3\u0397",Zw="\u03A3\u03A5\u039D\u039F\u039B\u039F \u03A6\u039F\u03A1\u039F\u03A5",Hw="\u03A6\u03BF\u03C1\u03BF\u03BB\u03BF\u03B3\u03B9\u03BA\u03AE \u03BA\u03BB\u03AC\u03C3\u03B7",Yw="\u0388\u03BE\u03BF\u03B4\u03B1",Gw="\u03A7\u03C1\u03AD\u03C9\u03C3\u03B7 \u03C3\u03B5,",Jw="\u0391\u03C0\u03BF\u03C3\u03C4\u03BF\u03BB\u03AE \u03C3\u03B5,",Qw="\u039B\u03AE\u03C8\u03B7 \u03B1\u03C0\u03CC",Xw="\u03A6\u03CC\u03C1\u03BF\u03C2";var ex={navigation:Kk,general:Wk,dashboard:Zk,tax_types:Hk,global_search:Yk,company_switcher:Gk,dateRange:Jk,customers:Qk,items:Xk,estimates:ew,invoices:tw,recurring_invoices:aw,payments:iw,expenses:nw,login:sw,modules:ow,users:rw,reports:dw,settings:lw,wizard:cw,validation:_w,errors:uw,pdf_estimate_label:mw,pdf_estimate_number:pw,pdf_estimate_date:gw,pdf_estimate_expire_date:fw,pdf_invoice_label:vw,pdf_invoice_number:hw,pdf_invoice_date:yw,pdf_invoice_due_date:bw,pdf_notes:kw,pdf_items_label:ww,pdf_quantity_label:xw,pdf_price_label:zw,pdf_discount_label:Sw,pdf_amount_label:Pw,pdf_subtotal:jw,pdf_total:Aw,pdf_payment_label:Dw,pdf_payment_receipt_label:Cw,pdf_payment_date:Ew,pdf_payment_number:Iw,pdf_payment_mode:Nw,pdf_payment_amount_received_label:Tw,pdf_expense_report_label:Rw,pdf_total_expenses_label:Mw,pdf_profit_loss_label:Fw,pdf_sales_customers_label:$w,pdf_sales_items_label:Uw,pdf_tax_summery_label:Vw,pdf_income_label:Ow,pdf_net_profit_label:Lw,pdf_customer_sales_report:Bw,pdf_total_sales_label:qw,pdf_item_sales_label:Kw,pdf_tax_report_label:Ww,pdf_total_tax_label:Zw,pdf_tax_types_label:Hw,pdf_expenses_label:Yw,pdf_bill_to:Gw,pdf_ship_to:Jw,pdf_received_from:Qw,pdf_tax_label:Xw};const tx={dashboard:"Upravlja\u010Dka Plo\u010Da",customers:"Klijenti",items:"Stavke",invoices:"Fakture",expenses:"Rashodi",estimates:"Ponude",payments:"Uplate",reports:"Izvje\u0161taji",settings:"Postavke",logout:"Odjava",users:"Korisnici"},ax={add_company:"Dodaj tvrtku",view_pdf:"Pogledaj PDF",copy_pdf_url:"Kopiraj PDF link",download_pdf:"Preuzmi PDF",save:"Spremi",create:"Kreiraj",cancel:"Otka\u017Ei",update:"A\u017Euriraj",deselect:"Poni\u0161ti izbor",download:"Preuzmi",from_date:"Od Datuma",to_date:"Do Datuma",from:"Po\u0161iljatelj",to:"Primatelj",sort_by:"Poslo\u017Ei Po",ascending:"Rastu\u0107e",descending:"Padaju\u0107e",subject:"Predmet",body:"Tijelo",message:"Poruka",send:"Po\u0161alji",go_back:"Natrag",back_to_login:"Natrag na prijavu?",home:"Po\u010Detna",filter:"Filter",delete:"Obri\u0161i",edit:"Izmjeni",view:"Pogledaj",add_new_item:"Dodaj novu stavku",clear_all:"Izbri\u0161i sve",showing:"Prikazujem",of:"od",actions:"Radnje",subtotal:"UKUPNO",discount:"POPUST",fixed:"Fiksno",percentage:"Postotak",tax:"POREZ",total_amount:"UKUPAN IZNOS",bill_to:"Dokument za",ship_to:"Isporu\u010Diti za",due:"Du\u017Ean",draft:"U izradi",sent:"Poslano",all:"Sve",select_all:"Izaberi sve",choose_file:"Klikni ovdje da izabere\u0161 fajl",choose_template:"Izaberi predlo\u017Eak",choose:"Izaberi",remove:"Ukloni",powered_by:"Powered by",bytefury:"Bytefury",select_a_status:"Izaberi status",select_a_tax:"Izaberi porez",search:"Pretraga",are_you_sure:"Jeste li sigurni?",list_is_empty:"Popis je prazna.",no_tax_found:"Porez nije prona\u0111en!",four_zero_four:"404",you_got_lost:"Ups! Izgubio si se!",go_home:"Idi na po\u010Detnu stranicu",test_mail_conf:"Testiraj postavke Po\u0161te",send_mail_successfully:"Po\u0161ta uspje\u0161no poslana",setting_updated:"Postavke uspje\u0161no a\u017Eurirane",select_state:"Odaberi saveznu dr\u017Eavu",select_country:"Odaberi dr\u017Eavu",select_city:"Odaberi grad",street_1:"Adresa 1",street_2:"Adresa 2",action_failed:"Radnja nije uspjela",retry:"Poku\u0161aj ponovo",choose_note:"Odaberi napomenu",no_note_found:"Ne postoje spremljene napomene",insert_note:"Unesi bilje\u0161ku",copied_pdf_url_clipboard:"Link do PDF fajla kopiran!"},ix={select_year:"Odaberi godinu",cards:{due_amount:"Du\u017Ean iznos",customers:"Klijenti",invoices:"Ra\u010Duni",estimates:"Ponude"},chart_info:{total_sales:"Prodaja",total_receipts:"Ra\u010Duni",total_expense:"Rashodi",net_income:"Prihod NETO",year:"Odaberi godinu"},monthly_chart:{title:"Prodaja & Rashodi"},recent_invoices_card:{title:"Dospijele fakture",due_on:"Datum dospije\u0107a",customer:"Klijent",amount_due:"Iznos dospije\u0107a",actions:"Akcije",view_all:"Pogledaj sve"},recent_estimate_card:{title:"Nedavne ponude",date:"Datum",customer:"Klijent",amount_due:"Iznos dospije\u0107a",actions:"Akcije",view_all:"Pogledaj sve"}},nx={name:"Naziv",description:"Opis",percent:"Postotak",compound_tax:"Slo\u017Eeni porez"},sx={search:"Pretraga...",customers:"Klijenti",users:"Korisnici",no_results_found:"Nema rezultata"},ox={title:"Klijenti",add_customer:"Dodaj Klijenta",contacts_list:"Popis klijenata",name:"Naziv",mail:"Mail | Mail-ovi",statement:"Izjava",display_name:"Naziv koji se prikazuje",primary_contact_name:"Primarna kontakt osoba",contact_name:"Naziv kontakt osobe",amount_due:"Iznos dospije\u0107a",email:"Email",address:"Adresa",phone:"Telefon",website:"Web stranica",overview:"Pregled",enable_portal:"Uklju\u010Di portal",country:"Dr\u017Eava",state:"\u017Dupanija",city:"Grad",zip_code:"Po\u0161tanski broj",added_on:"Datum dodavanja",action:"Radnja",password:"Lozinka",street_number:"Broj ulice",primary_currency:"Primarna valuta",description:"Opis",add_new_customer:"Dodaj Novog Klijenta",save_customer:"Spremi klijenta",update_customer:"A\u017Euriraj klijenta",customer:"Klijent | Klijenti",new_customer:"Novi klijent",edit_customer:"Izmjeni klijenta",basic_info:"Osnovne informacije",billing_address:"Adresa za naplatu",shipping_address:"Adresa za dostavu",copy_billing_address:"Kopiraj iz adrese za naplatu",no_customers:"Jo\u0161 uvijek nema klijenata!",no_customers_found:"Klijenti nisu prona\u0111eni!",no_contact:"Nema kontakta",no_contact_name:"Nema imena kontakta",list_of_customers:"Sekcija sadr\u017Ei popis klijenata.",primary_display_name:"Primarni naziv koji se prikazuje",select_currency:"Odaberi valutu",select_a_customer:"Odaberi klijenta",type_or_click:"Unesi tekst ili klikni za odabir",new_transaction:"Nova transakcija",no_matching_customers:"Nije prona\u0111eno!",phone_number:"Broj telefona",create_date:"Datum kreiranja",confirm_delete:"Ne\u0107ete mo\u0107i vratiti klijenta, sve njegove Fakture, Ponude i Uplate. | Ne\u0107ete mo\u0107i vratiti odabrane klijente, sve njihove Fakture, Ponude i Uplate.",created_message:"Klijent uspje\u0161no kreiran",updated_message:"Klijent uspje\u0161no a\u017Euriran",deleted_message:"Klijent uspje\u0161no obrisan | Klijenti uspje\u0161no obrisani"},rx={title:"Stavke",items_list:"Popis stavki",name:"Naziv",unit:"Jedinica",description:"Opis",added_on:"Datum dodavanja",price:"Cijena",date_of_creation:"Datum kreiranja",not_selected:"Nema odabrane stavke",action:"Radnje",add_item:"Dodaj Stavku",save_item:"Spremi Stavku",update_item:"A\u017Euriraj Stavku",item:"Stavka | Stavke",add_new_item:"Dodaj novu stavku",new_item:"Nova stavka",edit_item:"Izmjeni stavku",no_items:"Jo\u0161 uvijek nema stavki!",list_of_items:"Ova sekcija sadr\u017Ei popis stavki.",select_a_unit:"odaberi jedinicu",taxes:"Porezi",item_attached_message:"Nije dozvoljeno brisanje stavke koja se koristi",confirm_delete:"Ne\u0107e\u0161 mo\u0107i vratiti ovu Stavku | Ne\u0107e\u0161 mo\u0107i vratiti ove Stavke",created_message:"Stavka uspje\u0161no kreirana",updated_message:"Stavka uspje\u0161no a\u017Eurirana",deleted_message:"Stavka uspje\u0161no obrisana | Stavke uspje\u0161no obrisane"},dx={title:"Ponude",estimate:"Ponuda | Ponude",estimates_list:"Popis ponuda",days:"{days} Dan",months:"{months} Mjesec",years:"{years} Godina",all:"Sve",paid:"Pla\u0107eno",unpaid:"Nepla\u0107eno",customer:"KLIJENT",ref_no:"POZIV NA BROJ",number:"BROJ",amount_due:"IZNOS DOSPIJE\u0106A",partially_paid:"Djelomi\u010Dno Pla\u0107eno",total:"Ukupno za pla\u0107anje",discount:"Popust",sub_total:"Osnovica za obra\u010Dun PDV-a",estimate_number:"Broj ponude",ref_number:"Poziv na broj",contact:"Kontakt",add_item:"Dodaj stavku",date:"Datum",due_date:"Datum Dospije\u0107a",expiry_date:"Datum Isteka",status:"Status",add_tax:"Dodaj Porez",amount:"Iznos",action:"Radnja",notes:"Napomena",tax:"Porez",estimate_template:"Predlo\u017Eak",convert_to_invoice:"Pretvori u Fakturu",mark_as_sent:"Ozna\u010Di kao Poslano",send_estimate:"Po\u0161alji Ponudu",resend_estimate:"Ponovo po\u0161alji Ponudu",record_payment:"Unesi uplatu",add_estimate:"Dodaj Ponudu",save_estimate:"Spremi Ponudu",confirm_conversion:"Detalji ove Ponude \u0107e biti iskori\u0161teni za pravljenje Fakture.",conversion_message:"Faktura uspje\u0161no kreirana",confirm_send_estimate:"Ova Ponuda \u0107e biti poslana putem Email-a klijentu",confirm_mark_as_sent:"Ova Ponuda \u0107e biti ozna\u010Dena kao Poslana",confirm_mark_as_accepted:"Ova Ponuda \u0107e biti ozna\u010Dena kao Prihva\u0107ena",confirm_mark_as_rejected:"Ova Ponuda \u0107e biti ozna\u010Dena kao Odbijena",no_matching_estimates:"Ne postoji odgovaraju\u0107a ponuda!",mark_as_sent_successfully:"Ponuda uspje\u0161no ozna\u010Dena kao Poslana",send_estimate_successfully:"Ponuda uspje\u0161no poslana",errors:{required:"Obvezno polje!"},accepted:"Prihva\u0107eno",rejected:"Odbijeno",sent:"Poslano",draft:"U izradi",declined:"Odbijeno",new_estimate:"Nova Ponuda",add_new_estimate:"Dodaj novu Ponudu",update_Estimate:"A\u017Euriraj Ponudu",edit_estimate:"Izmjeni Ponudu",items:"stavke",Estimate:"Ponuda | Ponude",add_new_tax:"Dodaj novi Porez",no_estimates:"Jo\u0161 uvijek nema Ponuda!",list_of_estimates:"Ova sekcija sadr\u017Ei popis Ponuda.",mark_as_rejected:"Ozna\u010Di kao odbijeno",mark_as_accepted:"Ozna\u010Di kao prihva\u0107eno",marked_as_accepted_message:"Ponuda ozna\u010Dena kao prihva\u0107ena",marked_as_rejected_message:"Ponuda ozna\u010Dena kao odbijena",confirm_delete:"Ne\u0107e\u0161 mo\u0107i vratiti ovu Ponudu | Ne\u0107e\u0161 mo\u0107i vratiti ove Ponude",created_message:"Ponuda uspje\u0161no kreirana",updated_message:"Ponuda uspje\u0161no a\u017Eurirana",deleted_message:"Ponuda uspje\u0161no obrisana | Ponude uspje\u0161no obrisane",something_went_wrong:"ne\u0161to je krenulo naopako",item:{title:"Naziv stavke",description:"Opis",quantity:"Koli\u010Dina",price:"Cijena",discount:"Popust",total:"Ukupno za pla\u0107anje",total_discount:"Ukupan popust",sub_total:"Ukupno",tax:"Porez",amount:"Iznos",select_an_item:"Unesi tekst ili klikni da izabere\u0161",type_item_description:"Unesi opis Stavke (nije obavezno)"}},lx={title:"Fakture",invoices_list:"Popis Faktura",days:"{days} dan",months:"{months} Mjesec",years:"{years} Godina",all:"Sve",paid:"Pla\u0107eno",unpaid:"Nepla\u0107eno",viewed:"Pregledano",overdue:"Zaka\u0161njenje",completed:"Izvr\u0161eno",customer:"KLIJENT",paid_status:"STATUS UPLATE",ref_no:"POZIV NA BROJ",number:"BROJ",amount_due:"IZNOS DOSPIJE\u0106A",partially_paid:"Djelomi\u010Dno pla\u0107eno",total:"Ukupno za pla\u0107anje",discount:"Popust",sub_total:"Osnovica za obra\u010Dun PDV-a",invoice:"Faktura | Fakture",invoice_number:"Broj Fakture",ref_number:"Poziv na broj",contact:"Kontakt",add_item:"Dodaj Stavku",date:"Datum",due_date:"Datum Dospije\u0107a",status:"Status",add_tax:"Dodaj Porez",amount:"Iznos",action:"Radnja",notes:"Napomena",view:"Pogledaj",send_invoice:"Po\u0161alji Fakturu",resend_invoice:"Ponovo po\u0161alji Fakturu",invoice_template:"Predlo\u017Eak Fakture",template:"Predlo\u017Eak",mark_as_sent:"Ozna\u010Di kao Poslano",confirm_send_invoice:"Ova Faktura \u0107e biti poslana putem Email-a klijentu",invoice_mark_as_sent:"Ova Faktura \u0107e biti ozna\u010Dena kao poslana",confirm_send:"Ova Faktura \u0107e biti poslana putem Email-a klijentu",invoice_date:"Datum Fakture",record_payment:"Unesi Uplatu",add_new_invoice:"Dodaj novu Fakturu",update_expense:"A\u017Euriraj Rashod",edit_invoice:"Izmjeni Fakturu",new_invoice:"Nova Faktura",save_invoice:"Spremi Fakturu",update_invoice:"A\u017Euriraj Fakturu",add_new_tax:"Dodaj novi Porez",no_invoices:"Jo\u0161 uvijek nema Faktura!",list_of_invoices:"Ova sekcija sadr\u017Ei popis Faktura.",select_invoice:"Odaberi Fakturu",no_matching_invoices:"Ne postoje Fakture koje odgovaraju pretrazi!",mark_as_sent_successfully:"Faktura uspje\u0161no ozna\u010Dena kao Poslana",invoice_sent_successfully:"Faktura uspje\u0161no poslana",cloned_successfully:"Uspje\u0161no napravljen duplikat Fakture",clone_invoice:"Napravi duplikat",confirm_clone:"Ova Faktura \u0107e biti duplikat nove Fakture",item:{title:"Naziv Stavke",description:"Opis",quantity:"Koli\u010Dina",price:"Cijena",discount:"Popust",total:"Ukupno za pla\u0107anje",total_discount:"Ukupan popust",sub_total:"Ukupno",tax:"Porez",amount:"Iznos",select_an_item:"Unesi tekst ili klikni da izabere\u0161",type_item_description:"Unesi opis Stavke (nije obavezno)"},confirm_delete:"Ne\u0107e\u0161 mo\u0107i vratiti ovu Fakturu | Ne\u0107e\u0161 mo\u0107i vratiti ove Fakture",created_message:"Faktura uspje\u0161no kreirana",updated_message:"Faktura uspje\u0161no a\u017Eurirana",deleted_message:"Faktura uspje\u0161no obrisana | Fakture uspje\u0161no obrisane",marked_as_sent_message:"Faktura ozna\u010Dena kao uspje\u0161no poslana",something_went_wrong:"ne\u0161to je krenulo naopako",invalid_due_amount_message:"Ukupan iznos za pla\u0107anje na fakturi ne mo\u017Ee biti manji od iznosa uplate za ovu fakturu. Molim Vas a\u017Eurirajte fakturu ili obri\u0161ite uplate koje su povezane sa ovom fakturom da bi nastavili."},cx={title:"Uplate",payments_list:"Popis uplata",record_payment:"Unesi Uplatu",customer:"Klijent",date:"Datum",amount:"Iznos",action:"Radnja",payment_number:"Broj uplate",payment_mode:"Na\u010Din pla\u0107anja",invoice:"Faktura",note:"Napomena",add_payment:"Dodaj Uplatu",new_payment:"Nova Uplata",edit_payment:"Izmjeni Uplatu",view_payment:"Pogledaj Uplatu",add_new_payment:"Dodaj Novu Uplatu",send_payment_receipt:"Po\u0161alji potvrdu o uplati",send_payment:"Po\u0161alji Uplatu",save_payment:"Spremi Uplatu",update_payment:"A\u017Euriraj Uplatu",payment:"Uplata | Uplate",no_payments:"Jo\u0161 uvijek nema uplata!",not_selected:"Nije odabrano",no_invoice:"Nema fakture",no_matching_payments:"Ne postoje uplate koje odgovaraju pretrazi!",list_of_payments:"Ova sekcija sadr\u017Ei popis uplata.",select_payment_mode:"Odaberi na\u010Din pla\u0107anja",confirm_mark_as_sent:"Ovo pla\u0107anje \u0107e biti ozna\u010Deno kao Poslano",confirm_send_payment:"Ovo pla\u0107anje \u0107e biti poslano putem Email-a klijentu",send_payment_successfully:"Pla\u0107anje uspje\u0161no poslano",something_went_wrong:"ne\u0161to je krenulo naopako",confirm_delete:"Ne\u0107e\u0161 mo\u0107i vratiti ovu Uplatu | Ne\u0107e\u0161 mo\u0107i vratiti ove Uplate",created_message:"Uplata uspje\u0161no kreirana",updated_message:"Uplata uspje\u0161no a\u017Eurirana",deleted_message:"Uplata uspje\u0161no obrisana | Uplate uspje\u0161no obrisane",invalid_amount_message:"Iznos Uplate je pogre\u0161an"},_x={title:"Rashodi",expenses_list:"Popis Rashoda",select_a_customer:"Odaberi klijenta",expense_title:"Naslov",customer:"Klijent",contact:"Kontakt",category:"Kategorija",from_date:"Datum od",to_date:"Datum do",expense_date:"Datum",description:"Opis",receipt:"Ra\u010Dun",amount:"Iznos",action:"Radnja",not_selected:"Nije odabrano",note:"Napomena",category_id:"ID kategorije",date:"Datum",add_expense:"Dodaj Rashod",add_new_expense:"Dodaj Novi Rashod",save_expense:"Spremi Rashod",update_expense:"A\u017Euriraj Rashod",download_receipt:"Preuzmi Ra\u010Dun",edit_expense:"Izmjeni Rashod",new_expense:"Novi Rashod",expense:"Rashod | Rashodi",no_expenses:"Jo\u0161 uvijek nema rashoda!",list_of_expenses:"Ova sekcija sadr\u017Ei popis rashoda.",confirm_delete:"Ne\u0107e\u0161 mo\u0107i vratiti ovaj Rashod | Ne\u0107e\u0161 mo\u0107i vratiti ove Rashode",created_message:"Rashod uspje\u0161no kreiran",updated_message:"Rashod uspje\u0161no a\u017Euriran",deleted_message:"Rashod uspje\u0161no obrisan | Rashodi uspje\u0161no obrisani",categories:{categories_list:"Popis Kategorija",title:"Naslov",name:"Naziv",description:"Opis",amount:"Iznos",actions:"Radnje",add_category:"Dodaj Kategoriju",new_category:"Nova Kategorija",category:"Kategorija | Kategorije",select_a_category:"Izaberi kategoriju"}},ux={email:"Email",password:"Lozinka",forgot_password:"Zaboravili ste lozinku?",or_signIn_with:"ili se prijavite sa",login:"Prijava",register:"Registracija",reset_password:"Resetiraj lozinku",password_reset_successfully:"Lozinka Uspje\u0161no Resetiranja",enter_email:"Unesi email",enter_password:"Unesi lozinku",retype_password:"Ponovo unesi lozinku"},mx={title:"Korisnici",users_list:"Popis korisnika",name:"Ime i prezime",description:"Opis",added_on:"Datum dodavanja",date_of_creation:"Datum kreiranja",action:"Radnja",add_user:"Dodaj Korisnika",save_user:"Spremi Korisnika",update_user:"A\u017Euriraj Korisnika",user:"Korisnik | Korisnici",add_new_user:"Dodaj novog korisnika",new_user:"Novi Korisnik",edit_user:"Izmjeni Korisnika",no_users:"Jo\u0161 uvijek nema korisnika!",list_of_users:"Ova sekcija sadr\u017Ei popis korisnika.",email:"Email",phone:"Broj telefona",password:"Lozinka",user_attached_message:"Ne mo\u017Eete obrisati stavku koja je ve\u0107 u upotrebi",confirm_delete:"Ne\u0107e\u0161 mo\u0107i vratiti ovog Korisnika | Ne\u0107e\u0161 mo\u0107i vratiti ove Korisnike",created_message:"Korisnik uspje\u0161no napravljen",updated_message:"Korisnik uspje\u0161no a\u017Euriran",deleted_message:"Korisnik uspje\u0161no obrisan | Korisnici uspje\u0161no obrisani"},px={title:"Izvje\u0161taj",from_date:"Datum od",to_date:"Datum do",status:"Status",paid:"Pla\u0107eno",unpaid:"Nepla\u0107eno",download_pdf:"Preuzmi PDF",view_pdf:"Pogledaj PDF",update_report:"A\u017Euriraj Izvje\u0161taj",report:"Izvje\u0161taj | Izvje\u0161taji",profit_loss:{profit_loss:"Prihod & Rashod",to_date:"Datum do",from_date:"Datum od",date_range:"Izaberi raspon datuma"},sales:{sales:"Prodaja",date_range:"Izaberi raspon datuma",to_date:"Datum do",from_date:"Datum od",report_type:"Vrsta Izve\u0161taja"},taxes:{taxes:"Porezi",to_date:"Datum do",from_date:"Datum od",date_range:"Izaberi raspon datuma"},errors:{required:"Polje je obavezno"},invoices:{invoice:"Faktura",invoice_date:"Datum Fakture",due_date:"Datum Dospije\u0107a",amount:"Iznos",contact_name:"Ime Kontakta",status:"Status"},estimates:{estimate:"Ponuda",estimate_date:"Datum Ponude",due_date:"Datum Dospije\u0107a",estimate_number:"Broj Ponude",ref_number:"Poziv na broj",amount:"Iznos",contact_name:"Ime Kontakta",status:"Status"},expenses:{expenses:"Rashodi",category:"Kategorija",date:"Datum",amount:"Iznos",to_date:"Datum do",from_date:"Datum od",date_range:"Izaberi raspon datuma"}},gx={menu_title:{account_settings:"Postavke Naloga",company_information:"Podaci o firmi",customization:"Prilago\u0111avanje",preferences:"Preference",notifications:"Obavje\u0161tenja",tax_types:"Vrste Poreza",expense_category:"Kategorije Rashoda",update_app:"A\u017Euriraj Aplikaciju",backup:"Backup",file_disk:"File Disk",custom_fields:"Prilago\u0111ena polja",payment_modes:"Na\u010Din pla\u0107anja",notes:"Napomene"},title:"Postavke",setting:"Postavke | Postavke",general:"Op\u0107e",language:"Jezik",primary_currency:"Primarna Valuta",timezone:"Vremenska Zona",date_format:"Format Datuma",currencies:{title:"Valute",currency:"Valuta | Valute",currencies_list:"Popis Valuta",select_currency:"Odaberi Valutu",name:"Naziv",code:"Kod",symbol:"Simbol",precision:"Preciznost",thousand_separator:"Separator za tisu\u0107e",decimal_separator:"Separator za decimale",position:"Pozicija",position_of_symbol:"Pozicija simbola",right:"Desno",left:"Lijevo",action:"Radnja",add_currency:"Dodaj Valutu"},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail Driver",secret:"Lozinka",mailgun_secret:"Mailgun Lozinka",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Lozinka",ses_key:"SES Klju\u010D",password:"Mail Lozinka",username:"Mail Korisni\u010Dko Ime",mail_config:"Mail Postavke",from_name:"Naziv po\u0161iljaoca",from_mail:"E-mail adresa po\u0161iljaoca",encryption:"E-mail enkripcija",mail_config_desc:"Ispod se nalazi forma za pode\u0161avanje E-mail drajvera za slanje po\u0161te iz aplikacije. Tako\u0111e mo\u017Eete podesiti provajdere tre\u0107e strane kao Sendgrid, SES itd."},pdf:{title:"PDF Postavke",footer_text:"Tekstualno zaglavlje na dnu strane",pdf_layout:"PDF Raspored"},company_info:{company_info:"Podaci o firmi",company_name:"Naziv firme",company_logo:"Logo firme",section_description:"Informacije o Va\u0161oj firmi \u0107e biti prikazane na fakturama, ponudama i drugim dokumentima koji se prave u ovoj aplikaciji.",phone:"Telefon",country:"Dr\u017Eava",state:"\u017Dupanija",city:"Grad",address:"Adresa",zip:"Po\u0161tanski broj",save:"Spremi",updated_message:"Podaci o firmi uspje\u0161no spremljeni"},custom_fields:{title:"Prilago\u0111ena polja",section_description:"Prilagodite va\u0161e Fakture, Ponude i Uplate sa svojim poljima. Koristite polja navedena ni\u017Ee na formatu adrese na stranici Postavke/Prilago\u0111avanje.",add_custom_field:"Dodaj prilago\u0111eno polje",edit_custom_field:"Izmjeni prilago\u0111eno polje",field_name:"Naziv polja",label:"Oznaka",type:"Vrsta",name:"Naziv",required:"Obavezno",placeholder:"Opis polja (Placeholder)",help_text:"Pomo\u0107ni tekst",default_value:"Zadana vrijednost",prefix:"Prefiks",starting_number:"Po\u010Detni broj",model:"Model",help_text_description:"Unesite opis koji \u0107e pomo\u0107i korisnicima razumjeti svrhu ovog prilago\u0111enog polja.",suffix:"Sufiks",yes:"Da",no:"Ne",order:"Redosljed",custom_field_confirm_delete:"Ne\u0107e\u0161 mo\u0107i vratiti ovo prilago\u0111eno polje",already_in_use:"Prilago\u0111eno polje je ve\u0107 u uporabi",deleted_message:"Prilago\u0111eno polje je uspje\u0161no obrisano",options:"opcije",add_option:"Dodaj opcije",add_another_option:"Dodaj jo\u0161 jednu opciju",sort_in_alphabetical_order:"Poredaj po Abecedi",add_options_in_bulk:"Grupno dodavanje opcija",use_predefined_options:"Koristi predefinirane opcije",select_custom_date:"Odaberi datum",select_relative_date:"Odaberi relativan datum",ticked_by_default:"Zadano odabrano",updated_message:"Prilago\u0111eno polje uspje\u0161no a\u017Eurirano",added_message:"Prilago\u0111eno polje uspje\u0161no dodato"},customization:{customization:"prilago\u0111avanje",save:"Spremi",addresses:{title:"Adrese",section_description:"Mo\u017Eete podesiti format adrese klijenta za naplatu i adrese klijenta za dostavu (Prikazano samo u PDF-u)",customer_billing_address:"Adresa za naplatu klijentu",customer_shipping_address:"Adresa za dostavu klijentu",company_address:"Adresa Firme",insert_fields:"Dodaj Polja",contact:"Kontakt",address:"Adresa",display_name:"Naziv koji se prikazuje",primary_contact_name:"Primarna kontakt osoba",email:"Email",website:"Web stranica",name:"Naziv",country:"Dr\u017Eava",state:"\u017Dupanija",city:"Grad",company_name:"Naziv Firme",address_street_1:"Adresa 1",address_street_2:"Adresa 2",phone:"Telefon",zip_code:"Po\u0161tanski broj",address_setting_updated:"Postavke adrese uspje\u0161no a\u017Eurirano"},updated_message:"Podaci o firmi su uspje\u0161no a\u017Eurirani",invoices:{title:"Fakture",notes:"Napomene",invoice_prefix:"Prefiks faktura",default_invoice_email_body:"Zadani sadr\u017Eaj email-a za Fakture",invoice_settings:"Postavke za fakture",autogenerate_invoice_number:"Automatski-generiraj broj fakture",autogenerate_invoice_number_desc:"Onemogu\u0107i ovo. Ako ne \u017Eelite automatski-generirane brojeve kod izrade nove fakture.",enter_invoice_prefix:"Unesite prefiks fakture",terms_and_conditions:"Uvjeti Kori\u0161tenja",company_address_format:"Format adrese firme",shipping_address_format:"Format adrese za dostavu firme",billing_address_format:"Format adrese za naplatu firme",invoice_settings_updated:"Postavke fakture uspje\u0161no spremljene"},estimates:{title:"Ponude",estimate_prefix:"Prefiks ponuda",default_estimate_email_body:"Zadani sadr\u017Eaj email-a za Ponude",estimate_settings:"Postavke za ponude",autogenerate_estimate_number:"Automatski-generiraj broj ponude",estimate_setting_description:"Onemogu\u0107i ovo ako ne \u017Eelite automatski-generirati broj ponude kada pravite novu ponudu.",enter_estimate_prefix:"Unesite prefiks ponude",estimate_setting_updated:"Postavke ponuda uspje\u0161no spremljene",company_address_format:"Format adrese firme",billing_address_format:"Format adrese za naplatu firme",shipping_address_format:"Format adrese za dostavu firme"},payments:{title:"Uplate",description:"Na\u010Din pla\u0107anja",payment_prefix:"Prefiks uplata",default_payment_email_body:"Zadani sadr\u017Eaj email-a za potvrdu o pla\u0107anju (ra\u010Dun)",payment_settings:"Postavke za pla\u0107anja",autogenerate_payment_number:"Automatski-generiraj broj uplate",payment_setting_description:"Onemogu\u0107i ovo ako ne \u017Eelite automatski-generirati broj uplate kada pravite novu uplatu.",enter_payment_prefix:"Unesite prefiks uplate",payment_setting_updated:"Postavke pla\u0107anja uspje\u0161no spremljene",payment_modes:"Na\u010Din Pla\u0107anja",add_payment_mode:"Dodaj na\u010Din pla\u0107anja",edit_payment_mode:"Izmjeni na\u010Din pla\u0107anja",mode_name:"Na\u010Din pla\u0107anja",payment_mode_added:"Na\u010Din pla\u0107anja dodan",payment_mode_updated:"Na\u010Din pla\u0107anja a\u017Euriran",payment_mode_confirm_delete:"Ne\u0107e\u0161 mo\u0107i vratiti ovaj Na\u010Din Pla\u0107anja",already_in_use:"Na\u010Din pla\u0107anja se ve\u0107 koristi",deleted_message:"Na\u010Din pla\u0107anja uspje\u0161no obrisan",company_address_format:"Format adrese firme",from_customer_address_format:"Format adrese klijenta"},items:{title:"Stavke",units:"Jedinice",add_item_unit:"Dodaj jedinicu stavke",edit_item_unit:"Izmjeni jedinicu stavke",unit_name:"Naziv jedinice",item_unit_added:"Jedinica stavke dodana",item_unit_updated:"Jedinica stavke a\u017Eurirana",item_unit_confirm_delete:"Ne\u0107e\u0161 mo\u0107i vratiti ovu jedinicu stavke",already_in_use:"Jedinica stavke se ve\u0107 koristi",deleted_message:"Jedinica stavke uspje\u0161no obrisana"},notes:{title:"Napomene",description:"U\u0161tedite vrijeme prave\u0107i napomene i koriste\u0107i ih na fakturama, ponudama i uplatama.",notes:"Napomene",type:"Vrsta",add_note:"Dodaj Napomenu",add_new_note:"Dodaj novu Napomenu",name:"Naziv",edit_note:"Izmjeni Napomenu",note_added:"Napomena uspje\u0161no dodana",note_updated:"Napomena uspje\u0161no a\u017Eurirana",note_confirm_delete:"Ne\u0107e\u0161 mo\u0107i vratiti ovu Napomenu",already_in_use:"Napomena se ve\u0107 koristi",deleted_message:"Napomena uspje\u0161no obrisana"}},account_settings:{profile_picture:"Profilna slika",name:"Ime i prezime",email:"Email",password:"Lozinka",confirm_password:"Potvrdi lozinku",account_settings:"Postavke ra\u010Duna",save:"Spremi",section_description:"Mo\u017Eete a\u017Eurirati Va\u0161e ime i prezime, email i lozinku koriste\u0107i formu ni\u017Ee.",updated_message:"Postavke ra\u010Duna uspje\u0161no a\u017Eurirane"},user_profile:{name:"Ime i prezime",email:"Email",password:"Lozinka",confirm_password:"Potvrdi lozinku"},notification:{title:"Obavijesti",email:"\u0160alji obavijesti na",description:"Koje email obavijesti \u017Eelite dobiti kada se ne\u0161to promijeni?",invoice_viewed:"Faktura pogledana",invoice_viewed_desc:"Kada klijent pogleda fakturu koja je poslana putem ove aplikacije.",estimate_viewed:"Ponuda gledana",estimate_viewed_desc:"Kada klijent pogleda ponudu koja je poslana putem ove aplikacije.",save:"Spremi",email_save_message:"Email uspje\u0161no sa\u010Duvan",please_enter_email:"Molim Vas unesite E-mail"},tax_types:{title:"Vrste Poreza",add_tax:"Dodaj Porez",edit_tax:"Izmjeni Porez",description:"Mo\u017Eete dodati ili ukloniti porez. Ova aplikacija podr\u017Eava porez, kako na individualnim stavkama tako i na fakturi/ponudi.",add_new_tax:"Dodaj Novi Porez",tax_settings:"Postavke Poreza",tax_per_item:"Porez po Stavkama",tax_name:"Naziv Poreza",compound_tax:"Slo\u017Eeni Porez",percent:"Postotak",action:"Radnja",tax_setting_description:"Izaberite ovo ako \u017Eelite dodati porez na individualne stavke. Zadano pona\u0161anje je da je porez dodan direktno na fakturu.",created_message:"Vrsta poreza uspje\u0161no kreirana",updated_message:"Vrsta poreza uspje\u0161no a\u017Eurirana",deleted_message:"Vrsta poreza uspje\u0161no obrisana",confirm_delete:"Ne\u0107ete mo\u0107i vratiti Vrstu Poreza",already_in_use:"Porez se ve\u0107 koristi"},expense_category:{title:"Kategorija Rashoda",action:"Radnja",description:"Kategorije su obavezne za dodavanje rashoda. Mo\u017Ee\u0161 dodati ili obrisati kategorije.",add_new_category:"Dodaj novu kategoriju",add_category:"Dodaj kategoriju",edit_category:"Izmjeni kategoriju",category_name:"Naziv kategorije",category_description:"Opis",created_message:"Kategorija rashoda je uspje\u0161no kreirana",deleted_message:"Kategorija rashoda je uspje\u0161no izbrisana",updated_message:"Kategorija rashoda je uspje\u0161no a\u017Eurirana",confirm_delete:"Ne\u0107e\u0161 mo\u0107i vratiti ovu kategoriju rashoda",already_in_use:"Kategorija se ve\u0107 koristi"},preferences:{currency:"Valuta",default_language:"Jezik",time_zone:"Vremenska Zona",fiscal_year:"Financijska Godina",date_format:"Format datuma",discount_setting:"Postavke popusta",discount_per_item:"Popust po stavkama",discount_setting_description:"Izaberite ovo ako \u017Eelite dodati Popust na individualne stavke. Zadana vrijednost je da je Popust dodan direktno na fakturu.",save:"Spremi",preference:"Preferencija | Preferencije",general_settings:"Zadane postavke za sistem",updated_message:"Preferencije uspje\u0161no a\u017Eurirane",select_language:"Izaberi Jezik",select_time_zone:"Izaberi Vremensku Zonu",select_date_format:"Izaberi Format Datuma",select_financial_year:"Izaberi Financijsku Godinu"},update_app:{title:"A\u017Euriraj aplikaciju",description:"Lako mo\u017Ee\u0161 a\u017Eurirati Crater tako da napravi\u0161 provjeru novih verzija klikom na polje ispod",check_update:"Provjeri a\u017Euriranost",avail_update:"Dostupna je nova verzija",next_version:"Sljede\u0107a verzija",requirements:"Zahtjevi",update:"A\u017Euriraj sada",update_progress:"A\u017Euriranje je u toku...",progress_text:"Trajanje je svega par minuta. Nemojte osvije\u017Eavati ili zatvoriti stranicu dok a\u017Euriranje ne bude gotovo",update_success:"Aplikacija je a\u017Eurirana! Molim Vas pri\u010Dekajte da se stranica automatski osvje\u017Ei.",latest_message:"Nema nove verzije! A\u017Eurirana posljednja verzija.",current_version:"Trenutna verzija",download_zip_file:"Preuzmi ZIP paket",unzipping_package:"Raspakiranje paketa",copying_files:"Kopiranje datoteka",deleting_files:"Brisanje fajlova koji nisu u upotrebi",running_migrations:"Migracije u toku",finishing_update:"Zavr\u0161avanje a\u017Euriranja",update_failed:"Neuspe\u0161no a\u017Euriranje",update_failed_text:"\u017Dao mi je! Tvoje a\u017Euriranje nije uspelo na koraku broj: {step} korak"},backup:{title:"Sigurnosna kopija | Sigurnosne kopije",description:"Backup je zip arhiv koji sadr\u017Ei sve fajlove iz foldera koje ste naveli, tako\u0111er sadr\u017Ei sigurnosnu kopiju baze podataka.",new_backup:"Dodaj novi Backup",create_backup:"Napravi Backup",select_backup_type:"Izaberi tip Backupa",backup_confirm_delete:"Ne\u0107e\u0161 mo\u0107i vratiti ovaj Backup",path:"putanja",new_disk:"Novi Disk",created_at:"datum kreiranja",size:"veli\u010Dina",dropbox:"dropbox",local:"lokalni",healthy:"zdrav",amount_of_backups:"broj backupa",newest_backups:"najnoviji backupi",used_storage:"kori\u0161teno skladi\u0161te",select_disk:"Izaberi Disk",action:"Radnja",deleted_message:"Backup uspje\u0161no obrisan",created_message:"Backup uspje\u0161no napravljen",invalid_disk_credentials:"Pogre\u0161ne akreditacije za odabrani disk"},disk:{title:"File Disk | File Disks",description:"Zadano pona\u0161anje je da Crater koristi lokalni disk za \u010Duvanje backupa, avatara i ostalih slika. Mo\u017Eete podesiti vi\u0161e od jednog disk drajvera od provajdera poput DigitalOcean, S3 i Dropbox po va\u0161oj \u017Eelji.",created_at:"datum kreiranja",dropbox:"dropbox",name:"Naziv",driver:"Drajver",disk_type:"Vrsta",disk_name:"Naziv Diska",new_disk:"Dodaj novi Disk",filesystem_driver:"Filesystem Driver",local_driver:"lokalni Drajver",local_root:"local Root",public_driver:"Public Driver",public_root:"Public Root",public_url:"Public URL",public_visibility:"Public Visibility",media_driver:"Media Driver",media_root:"Media Root",aws_driver:"AWS Driver",aws_key:"AWS Key",aws_secret:"AWS Secret",aws_region:"AWS Region",aws_bucket:"AWS Bucket",aws_root:"AWS Root",do_spaces_type:"Do Spaces type",do_spaces_key:"Do Spaces key",do_spaces_secret:"Do Spaces Secret",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Dropbox Type",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Key",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Zadani Drajver",is_default:"DA LI JE ZADAN",set_default_disk:"Postavi zadani Disk",set_default_disk_confirm:"Ovaj disk \u0107e biti postavljen kao zadani i svi novi PDF fajlovi \u0107e biti sa\u010Duvani na ovom disku",success_set_default_disk:"Disk je uspje\u0161no postavljen kao zadani",save_pdf_to_disk:"Spremi PDF fajlove na Disk",disk_setting_description:" Uklju\u010Dite ovo ako \u017Eelite da spremite kopiju PDF fajla svake Fakture, Ponude i Uplate na va\u0161 zadani disk automatski. Uklju\u010Divanjem ove opcije smanjujete vrijeme u\u010Ditavanja pregleda PDF fajlova.",select_disk:"Izaberi Disk",disk_settings:"Disk Postavke",confirm_delete:"Ovo ne\u0107e utjecati na va\u0161e postoje\u0107e fajlove i foldere na navedenom disku, ali \u0107e se konfiguracija va\u0161eg diska izbrisati iz Cratera.",action:"Radnja",edit_file_disk:"Izmjeni File Disk",success_create:"Disk uspje\u0161no dodan",success_update:"Disk uspje\u0161no a\u017Euriran",error:"Dodavanje diska nije uspelo",deleted_message:"File Disk uspje\u0161no obrisan",disk_variables_save_successfully:"Disk uspje\u0161no pode\u0161en",disk_variables_save_error:"Postavljanje diska nije uspjelo.",invalid_disk_credentials:"Pogre\u0161ne akreditacije za navedeni disk"}},fx={account_info:"Informacije o ra\u010Dunu",account_info_desc:"Detalji u nastavku koriste se za kreiranje glavnog administratorskog ra\u010Duna. Mogu\u0107e ih je izmjeniti u bilo kada nakon prijavljivanja.",name:"Naziv",email:"E-mail",password:"Lozinka",confirm_password:"Potvrdi lozinku",save_cont:"Spremi & Nastavi",company_info:"Informacije o firmi",company_info_desc:"Ove informacije \u0107e biti prikazane na fakturama. Mogu\u0107e ih je izmjeniti kasnije u postavkama.",company_name:"Naziv firme",company_logo:"Logo firme",logo_preview:"Pregled logotipa",preferences:"Preference",preferences_desc:"Zadane Preference za sistem",country:"Dr\u017Eava",state:"\u017Dupanija",city:"Grad",address:"Adresa",street:"Ulica1 | Ulica2",phone:"Telefon",zip_code:"Po\u0161tanski broj",go_back:"Vrati se nazad",currency:"Valuta",language:"Jezik",time_zone:"Vremenska zona",fiscal_year:"Financijska godina",date_format:"Format datuma",from_address:"Adresa po\u0161iljaoca",username:"Korisni\u010Dko ime",next:"Sljede\u0107e",continue:"Nastavi",skip:"Presko\u010Di",database:{database:"URL stranice & baze podataka",connection:"Veza baze podataka",host:"Host baze podataka",port:"Port baze podataka",password:"Lozinka baze podataka",app_url:"URL aplikacije",app_domain:"Domen aplikacije",username:"Korisni\u010Dko ime baze podataka",db_name:"Naziv baze podataka",db_path:"Putanja do baze",desc:"Kreiraj bazu podataka na svom serveru i postavi akreditacije prate\u0107i obrazac u nastavku."},permissions:{permissions:"Dozvole",permission_confirm_title:"Da li ste sigurni da \u017Eelite nastaviti?",permission_confirm_desc:"Provjera dozvola za foldere nije uspjela",permission_desc:"U nastavku se nalazi popis dozvola za foldere koji su nu\u017Eni kako bi alikacija radila. Ukoliko provjera dozvola ne uspije, a\u017Euriraj svoj popis dozvola za te foldere."},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail drajver",secret:"Lozinka",mailgun_secret:"Mailgun Lozinka",mailgun_domain:"Domen",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Lozinka",ses_key:"SES Klju\u010D",password:"Lozinka za e-mail",username:"Koristni\u010Dko ime za e-mail",mail_config:"E-mail konfiguracija",from_name:"Naziv po\u0161iljatelja",from_mail:"E-mail adresa po\u0161iljatelja",encryption:"E-mail enkripcija",mail_config_desc:"Ispod se nalazi forma za postavljanje E-mail drajvera za slanje po\u0161te iz aplikacije. Tako\u0111er mo\u017Eete podesiti provajdere tre\u0107e strane kao Sendgrid, SES itd."},req:{system_req:"Sistemski zahtjevi",php_req_version:"Zahtjeva PHP verziju {version} ",check_req:"Provjeri zahtjeve",system_req_desc:"Crater ima nekoliko zahtjeva za server. Provjeri da li tvoj server ima potrebnu verziju PHP-a i sva navedena pro\u0161irenja navedena u nastavku"},errors:{migrate_failed:"Neuspje\u0161no migriranje",database_variables_save_error:"Konfiguraciju nije moguc\u0301e zapisati u .env datoteku. Provjeri dozvole za datoteku",mail_variables_save_error:"E-mail konfiguracija neuspje\u0161na",connection_failed:"Neuspje\u0161no povezivanje s bazom podataka",database_should_be_empty:"Baza podataka treba biti prazna"},success:{mail_variables_save_successfully:"E-mail je uspje\u0161no konfiguriran",database_variables_save_successfully:"Baza podataka je uspje\u0161no konfigurirana"}},vx={invalid_phone:"Pogre\u0161an Broj Telefona",invalid_url:"Neva\u017Ee\u0107i URL (primer: http://www.craterapp.com)",invalid_domain_url:"Pogre\u0161an URL (primjer: craterapp.com)",required:"Obavezno polje",email_incorrect:"Pogre\u0161an E-mail",email_already_taken:"Navedeni E-mail je zauzet",email_does_not_exist:"Korisnik sa navedenom e-mail adresom ne postoji",item_unit_already_taken:"Naziv ove jedinice stavke je zauzet",payment_mode_already_taken:"Naziv ovog na\u010Dina pla\u0107anja je zauzet",send_reset_link:"Po\u0161alji link za reset",not_yet:"Jo\u0161 uvijek ni\u0161ta? Po\u0161alji ponovno",password_min_length:"Lozinka mora imati {count} znakova",name_min_length:"Naziv mora imati najmanje {count} slova",enter_valid_tax_rate:"Unesite odgovaraju\u0107u poreznu stopu",numbers_only:"Mogu se unositi samo brojevi",characters_only:"Mogu se unositi samo znakovi",password_incorrect:"Lozinka mora biti identi\u010Dna",password_length:"Lozinka mora imati {count} znakova",qty_must_greater_than_zero:"Koli\u010Dina mora biti ve\u0107a od 0.",price_greater_than_zero:"Cijena mora biti ve\u0107a od 0",payment_greater_than_zero:"Uplata mora biti ve\u0107a od 0",payment_greater_than_due_amount:"Unesena uplata je ve\u0107a od dospije\u0107a iznosa ove fakture",quantity_maxlength:"Koli\u010Dina ne mo\u017Ee imati vi\u0161e od 20 znakova",price_maxlength:"Cijena ne mo\u017Ee imati vi\u0161e od 20 znakova",price_minvalue:"Cijena mora biti ve\u0107a od 0",amount_maxlength:"Iznos ne mo\u017Ee da ima vi\u0161e od 20 znakova",amount_minvalue:"Iznos mora biti ve\u0107i od 0",description_maxlength:"Opis ne mo\u017Ee imati vi\u0161e od 65,000 znakova",subject_maxlength:"Predmet ne mo\u017Ee imati vi\u0161e od 100 znakova",message_maxlength:"Poruka ne mo\u017Ee imati vi\u0161e od 255 znakova",maximum_options_error:"Maksimalan broj opcija je izabran. Prvo uklonite izabranu opciju da bi izabrali drugu",notes_maxlength:"Napomena ne mo\u017Ee imati vi\u0161e od 65,000 znakova",address_maxlength:"Adresa ne mo\u017Ee imati vi\u0161e od 255 znakova",ref_number_maxlength:"Poziv na broj ne mo\u017Ee imati vi\u0161e od 225 znakova",prefix_maxlength:"Prefiks ne mo\u017Ee imati vi\u0161e od 5 znakova",something_went_wrong:"ne\u0161to je krenulo naopako"},hx="Ponuda",yx="Broj Ponude",bx="Datum Ponude",kx="Datum isteka Ponude",wx="Faktura",xx="Broj Fakture",zx="Datum Fakture",Sx="Datum dospije\u0107a Fakture",Px="Napomena",jx="Stavke",Ax="Koli\u010Dina",Dx="Cijena",Cx="Popust",Ex="Iznos",Ix="Osnovica za obra\u010Dun PDV-a",Nx="Ukupan iznos",Tx="Pla\u0107anje",Rx="POTVRDA O UPLATI",Mx="Datum Uplate",Fx="Broj Uplate",$x="Na\u010Din Pla\u0107anja",Ux="Iznos Uplate",Vx="IZVJE\u0160TAJ O RASHODIMA",Ox="RASHODI UKUPNO",Lx="IZVEJ\u0160TAJ O PRIHODIMA I RASHODIMA",Bx="Izvje\u0161taj Prodaje po Strankama",qx="Izvje\u0161taj Prodaje po Stavkama",Kx="Izvje\u0161taj Poreza",Wx="PRIHOD",Zx="NETO PROFIT",Hx="Izvje\u0161taj o Prodaji: Po Klijentu",Yx="PRODAJA UKUPNO",Gx="Izvje\u0161taj o Prodaji: Po Stavci",Jx="IZVE\u0160TAJ O POREZIMA",Qx="UKUPNO POREZ",Xx="Vrsta Poreza",ez="Rashodi",tz="Ra\u010Dun za,",az="Isporu\u010Diti za,",iz="Poslat od strane:",nz="Porez";var sz={navigation:tx,general:ax,dashboard:ix,tax_types:nx,global_search:sx,customers:ox,items:rx,estimates:dx,invoices:lx,payments:cx,expenses:_x,login:ux,users:mx,reports:px,settings:gx,wizard:fx,validation:vx,pdf_estimate_label:hx,pdf_estimate_number:yx,pdf_estimate_date:bx,pdf_estimate_expire_date:kx,pdf_invoice_label:wx,pdf_invoice_number:xx,pdf_invoice_date:zx,pdf_invoice_due_date:Sx,pdf_notes:Px,pdf_items_label:jx,pdf_quantity_label:Ax,pdf_price_label:Dx,pdf_discount_label:Cx,pdf_amount_label:Ex,pdf_subtotal:Ix,pdf_total:Nx,pdf_payment_label:Tx,pdf_payment_receipt_label:Rx,pdf_payment_date:Mx,pdf_payment_number:Fx,pdf_payment_mode:$x,pdf_payment_amount_received_label:Ux,pdf_expense_report_label:Vx,pdf_total_expenses_label:Ox,pdf_profit_loss_label:Lx,pdf_sales_customers_label:Bx,pdf_sales_items_label:qx,pdf_tax_summery_label:Kx,pdf_income_label:Wx,pdf_net_profit_label:Zx,pdf_customer_sales_report:Hx,pdf_total_sales_label:Yx,pdf_item_sales_label:Gx,pdf_tax_report_label:Jx,pdf_total_tax_label:Qx,pdf_tax_types_label:Xx,pdf_expenses_label:ez,pdf_bill_to:tz,pdf_ship_to:az,pdf_received_from:iz,pdf_tax_label:nz},oz={en:Xn,fr:co,es:br,ar:Cd,de:Vl,ja:Gc,pt_BR:wu,it:Im,sr:Lp,nl:Qg,ko:nv,lv:ph,sv:zy,sk:Tb,vi:qk,pl:ou,el:ex,hr:sz};const rz={props:{bgColor:{type:String,default:null},color:{type:String,default:null}},setup(i){return(r,s)=>(l(),_("span",{class:"px-2 py-1 text-sm font-normal text-center text-green-800 uppercase bg-success",style:De({backgroundColor:i.bgColor,color:i.color})},[F(r.$slots,"default")],4))}};var dz=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:rz});const lz={name:"BaseBreadcrumb"},cz={class:"flex flex-wrap py-4 text-gray-900 rounded list-reset"};function _z(i,r,s,a,t,n){return l(),_("nav",null,[c("ol",cz,[F(i.$slots,"default")])])}var uz=ee(lz,[["render",_z]]),mz=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:uz});const pz={class:"pr-2 text-sm"},gz={key:0,class:"px-1"},fz={props:{title:{type:String,default:String},to:{type:String,default:"#"},active:{type:Boolean,default:!1,required:!1}},setup(i){return(r,s)=>{const a=D("router-link");return l(),_("li",pz,[u(a,{class:"m-0 mr-2 text-sm font-medium leading-5 text-gray-900 outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-400",to:i.to},{default:g(()=>[q(w(i.title),1)]),_:1},8,["to"]),i.active?S("",!0):(l(),_("span",gz,"/"))])}}};var vz=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:fz});const hz={},yz={class:"animate-spin",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},bz=c("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),kz=c("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1),wz=[bz,kz];function xz(i,r){return l(),_("svg",yz,wz)}var zz=ee(hz,[["render",xz]]);const Sz={props:{contentLoading:{type:Boolean,default:!1},defaultClass:{type:String,default:"inline-flex whitespace-nowrap items-center border font-medium focus:outline-none focus:ring-2 focus:ring-offset-2"},tag:{type:String,default:"button"},disabled:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},size:{type:String,default:"md",validator:function(i){return["xs","sm","md","lg","xl"].indexOf(i)!==-1}},variant:{type:String,default:"primary",validator:function(i){return["primary","secondary","primary-outline","white","danger","gray"].indexOf(i)!==-1}}},setup(i){const r=i,s=A(()=>({"px-2.5 py-1.5 text-xs leading-4 rounded":r.size==="xs","px-3 py-2 text-sm leading-4 rounded-md":r.size=="sm","px-4 py-2 text-sm leading-5 rounded-md":r.size==="md","px-4 py-2 text-base leading-6 rounded-md":r.size==="lg","px-6 py-3 text-base leading-6 rounded-md":r.size==="xl"})),a=A(()=>{switch(r.size){case"xs":return"32";case"sm":return"38";case"md":return"42";case"lg":return"42";case"xl":return"46";default:return""}}),t=A(()=>({"border-transparent shadow-sm text-white bg-primary-600 hover:bg-primary-700 focus:ring-primary-500":r.variant==="primary","border-transparent text-primary-700 bg-primary-100 hover:bg-primary-200 focus:ring-primary-500":r.variant==="secondary","border-transparent border-solid border-primary-500 font-normal transition ease-in-out duration-150 text-primary-500 hover:bg-primary-200 shadow-inner focus:ring-primary-500":r.variant=="primary-outline","border-gray-200 text-gray-700 bg-white hover:bg-gray-50 focus:ring-primary-500 focus:ring-offset-0":r.variant=="white","border-transparent shadow-sm text-white bg-red-600 hover:bg-red-700 focus:ring-red-500":r.variant==="danger","border-transparent bg-gray-200 border hover:bg-opacity-60 focus:ring-gray-500 focus:ring-offset-0":r.variant==="gray"})),n=A(()=>r.rounded?"!rounded-full":""),e=A(()=>({"-ml-0.5 mr-2 h-4 w-4":r.size=="sm","-ml-1 mr-2 h-5 w-5":r.size==="md","-ml-1 mr-3 h-5 w-5":r.size==="lg"||r.size==="xl"})),o=A(()=>({"text-white":r.variant==="primary","text-primary-700":r.variant==="secondary","text-gray-700":r.variant==="white","text-gray-400":r.variant==="gray"})),m=A(()=>({"ml-2 -mr-0.5 h-4 w-4":r.size=="sm","ml-2 -mr-1 h-5 w-5":r.size==="md","ml-3 -mr-1 h-5 w-5":r.size==="lg"||r.size==="xl"}));return(p,k)=>{const x=D("BaseContentPlaceholdersBox"),b=D("BaseContentPlaceholders"),v=D("BaseCustomTag");return i.contentLoading?(l(),N(b,{key:0,class:"disabled cursor-normal pointer-events-none"},{default:g(()=>[u(x,{rounded:!0,style:De([{width:"96px"},`height: ${d(a)}px;`])},null,8,["style"])]),_:1})):(l(),N(v,{key:1,tag:i.tag,disabled:i.disabled,class:C([i.defaultClass,d(s),d(t),d(n)])},{default:g(()=>[i.loading?(l(),N(zz,{key:0,class:C([d(e),d(o)])},null,8,["class"])):F(p.$slots,"left",{key:1,class:C(d(e))}),F(p.$slots,"default"),F(p.$slots,"right",{class:C([d(m),d(o)])})]),_:3},8,["tag","disabled","class"]))}}};var Pz=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Sz});const jz={class:"bg-white rounded-lg shadow"},Az={key:0,class:"px-5 py-4 text-black border-b border-gray-100 border-solid"},Dz={key:1,class:"px-5 py-4 border-t border-gray-100 border-solid sm:px-6"},Cz={props:{containerClass:{type:String,default:"px-4 py-5 sm:px-8 sm:py-8"}},setup(i){const r=pe(),s=A(()=>!!r.header),a=A(()=>!!r.footer);return(t,n)=>(l(),_("div",jz,[d(s)?(l(),_("div",Az,[F(t.$slots,"header")])):S("",!0),c("div",{class:C(i.containerClass)},[F(t.$slots,"default")],2),d(a)?(l(),_("div",Dz,[F(t.$slots,"footer")])):S("",!0)]))}};var Ez=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Cz});const Iz={class:"relative flex items-start"},Nz={class:"flex items-center h-5"},Tz=["id","disabled"],Rz={class:"ml-3 text-sm"},Mz=["for"],Fz={props:{label:{type:String,default:""},modelValue:{type:[Boolean,Array],default:!1},id:{type:[Number,String],default:()=>`check_${Math.random().toString(36).substr(2,9)}`},disabled:{type:Boolean,default:!1},checkboxClass:{type:String,default:"w-4 h-4 border-gray-300 rounded cursor-pointer"},setInitialValue:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(i,{emit:r}){const s=i;s.setInitialValue&&r("update:modelValue",s.modelValue);const a=A({get:()=>s.modelValue,set:n=>{r("update:modelValue",n),r("change",n)}}),t=A(()=>s.disabled?"text-gray-300 cursor-not-allowed":"text-primary-600 focus:ring-primary-500");return(n,e)=>(l(),_("div",Iz,[c("div",Nz,[xe(c("input",le({id:i.id,"onUpdate:modelValue":e[0]||(e[0]=o=>J(a)?a.value=o:null)},n.$attrs,{disabled:i.disabled,type:"checkbox",class:[i.checkboxClass,d(t)]}),null,16,Tz),[[Vt,d(a)]])]),c("div",Rz,[i.label?(l(),_("label",{key:0,for:i.id,class:C(`font-medium ${i.disabled?"text-gray-400 cursor-not-allowed":"text-gray-600"} cursor-pointer `)},w(i.label),11,Mz)):S("",!0)])]))}};var $z=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Fz});const Uz={props:{rounded:{type:Boolean,default:!1},centered:{type:Boolean,default:!1},animated:{type:Boolean,default:!0}},setup(i){const r=i,s=A(()=>({"base-content-placeholders":!0,"base-content-placeholders-is-rounded":r.rounded,"base-content-placeholders-is-centered":r.centered,"base-content-placeholders-is-animated":r.animated}));return(a,t)=>(l(),_("div",{class:C(d(s))},[F(a.$slots,"default")],2))}};var Vz=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Uz});const Oz={props:{circle:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1}},setup(i){const r=i,s=A(()=>({"base-content-circle":r.circle,"base-content-placeholders-is-rounded":r.rounded}));return(a,t)=>(l(),_("div",{class:C(["base-content-placeholders-box",d(s)])},null,2))}};var Lz=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Oz});const Bz={class:"base-content-placeholders-heading"},qz={key:0,class:"base-content-placeholders-heading__box"},Kz=c("div",{class:"base-content-placeholders-heading__content"},[c("div",{class:"base-content-placeholders-heading__title",style:{background:"#eee"}}),c("div",{class:"base-content-placeholders-heading__subtitle"})],-1),Wz={props:{box:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1}},setup(i){return(r,s)=>(l(),_("div",Bz,[i.box?(l(),_("div",qz)):S("",!0),Kz]))}};var Zz=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Wz});const Hz={class:"base-content-placeholders-text"},Yz={props:{lines:{type:Number,default:4},rounded:{type:Boolean,default:!1}},setup(i){const r=i,s=A(()=>({"base-content-placeholders-is-rounded":r.rounded}));return(a,t)=>(l(),_("div",Hz,[(l(!0),_(X,null,ae(i.lines,n=>(l(),_("div",{key:n,class:C([d(s),"w-full h-full base-content-placeholders-text__line"])},null,2))),128))]))}};var Gz=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Yz}),xt={id:null,label:null,type:null,name:null,default_answer:null,is_required:!1,placeholder:null,model_type:null,order:1,options:[]},Jz=i=>Xe({locale:"en",fallbackLocale:"en",messages:i});const{global:ne}=Jz;var We={isImageFile(i){return["image/gif","image/jpeg","image/png"].includes(i)},addClass(i,r){i.classList?i.classList.add(r):i.className+=" "+r},hasClass(i,r){return i.classList?i.classList.contains(r):new RegExp("(^| )"+r+"( |$)","gi").test(i.className)},formatMoney(i,r=0){r||(r={precision:2,thousand_separator:",",decimal_separator:".",symbol:"$"}),i=i/100;let{precision:s,decimal_separator:a,thousand_separator:t,symbol:n,swap_currency_symbol:e}=r;try{s=Math.abs(s),s=isNaN(s)?2:s;const o=i<0?"-":"";let m=parseInt(i=Math.abs(Number(i)||0).toFixed(s)).toString(),p=m.length>3?m.length%3:0,k=`${n}`,x=p?m.substr(0,p)+t:"",b=m.substr(p).replace(/(\d{3})(?=\d)/g,"$1"+t),v=s?a+Math.abs(i-m).toFixed(s).slice(2):"",E=o+x+b+v;return e?E+" "+k:k+" "+E}catch(o){console.error(o)}},mergeSettings(i,r){Object.keys(r).forEach(function(s){s in i&&(i[s]=r[s])})},checkValidUrl(i){return i.includes("http://localhost")||i.includes("http://127.0.0.1")||i.includes("https://localhost")||i.includes("https://127.0.0.1")?!0:!!new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i").test(i)},checkValidDomainUrl(i){return i.includes("localhost")||i.includes("127.0.0.1")?!0:!!new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i").test(i)},fallbackCopyTextToClipboard(i){var r=document.createElement("textarea");r.value=i,r.style.top="0",r.style.left="0",r.style.position="fixed",document.body.appendChild(r),r.focus(),r.select();try{var s=document.execCommand("copy"),a=s?"successful":"unsuccessful";console.log("Fallback: Copying text command was "+a)}catch(t){console.error("Fallback: Oops, unable to copy",t)}document.body.removeChild(r)},copyTextToClipboard(i){if(!navigator.clipboard){this.fallbackCopyTextToClipboard(i);return}navigator.clipboard.writeText(i).then(function(){return!0},function(r){return!1})},arrayDifference(i,r){return i==null?void 0:i.filter(s=>(r==null?void 0:r.indexOf(s))<0)},getBadgeStatusColor(i){switch(i){case"DRAFT":return{bgColor:"#F8EDCB",color:"#744210"};case"PAID":return{bgColor:"#D5EED0",color:"#276749"};case"UNPAID":return{bgColor:"#F8EDC",color:"#744210"};case"SENT":return{bgColor:"rgba(246, 208, 154, 0.4)",color:"#975a16"};case"REJECTED":return{bgColor:"#E1E0EA",color:"#1A1841"};case"ACCEPTED":return{bgColor:"#D5EED0",color:"#276749"};case"VIEWED":return{bgColor:"#C9E3EC",color:"#2c5282"};case"EXPIRED":return{bgColor:"#FED7D7",color:"#c53030"};case"PARTIALLY PAID":return{bgColor:"#C9E3EC",color:"#2c5282"};case"OVERDUE":return{bgColor:"#FED7D7",color:"#c53030"};case"COMPLETED":return{bgColor:"#D5EED0",color:"#276749"};case"DUE":return{bgColor:"#F8EDCB",color:"#744210"};case"YES":return{bgColor:"#D5EED0",color:"#276749"};case"NO":return{bgColor:"#FED7D7",color:"#c53030"}}},getStatusTranslation(i){switch(i){case"DRAFT":return ne.t("general.draft");case"PAID":return ne.t("invoices.paid");case"UNPAID":return ne.t("invoices.unpaid");case"SENT":return ne.t("general.sent");case"REJECTED":return ne.t("estimates.rejected");case"ACCEPTED":return ne.t("estimates.accepted");case"VIEWED":return ne.t("invoices.viewed");case"EXPIRED":return ne.t("estimates.expired");case"PARTIALLY PAID":return ne.t("estimates.partially_paid");case"OVERDUE":return ne.t("invoices.overdue");case"COMPLETED":return ne.t("invoices.completed");case"DUE":return ne.t("general.due");default:return i}},toFormData(i){const r=new FormData;return Object.keys(i).forEach(s=>{Ot.exports.isArray(i[s])?r.append(s,JSON.stringify(i[s])):(i[s]===null&&(i[s]=""),r.append(s,i[s]))}),r}};const Qz=(i=!1)=>{const r=i?window.pinia.defineStore:Q,{global:s}=window.i18n;return r({id:"custom-field",state:()=>({customFields:[],isRequestOngoing:!1,currentCustomField:M({},xt)}),getters:{isEdit(){return!!this.currentCustomField.id}},actions:{resetCustomFields(){this.customFields=[]},resetCurrentCustomField(){this.currentCustomField=M({},xt)},fetchCustomFields(a){return new Promise((t,n)=>{f.get("/api/v1/custom-fields",{params:a}).then(e=>{this.customFields=e.data.data,t(e)}).catch(e=>{h(e),n(e)})})},fetchNoteCustomFields(a){return new Promise((t,n)=>{if(this.isRequestOngoing)return t({requestOnGoing:!0}),!0;this.isRequestOngoing=!0,f.get("/api/v1/custom-fields",{params:a}).then(e=>{this.customFields=e.data.data,this.isRequestOngoing=!1,t(e)}).catch(e=>{this.isRequestOngoing=!1,h(e),n(e)})})},fetchCustomField(a){return new Promise((t,n)=>{f.get(`/api/v1/custom-fields/${a}`).then(e=>{this.currentCustomField=e.data.data,this.currentCustomField.options&&this.currentCustomField.options.length&&(this.currentCustomField.options=this.currentCustomField.options.map(o=>o={name:o})),t(e)}).catch(e=>{h(e),n(e)})})},addCustomField(a){const t=$();return new Promise((n,e)=>{f.post("/api/v1/custom-fields",a).then(o=>{let m=M({},o.data.data);m.options&&(m.options=m.options.map(p=>({name:p||""}))),this.customFields.push(m),t.showNotification({type:"success",message:s.t("settings.custom_fields.added_message")}),n(o)}).catch(o=>{h(o),e(o)})})},updateCustomField(a){const t=$();return new Promise((n,e)=>{f.put(`/api/v1/custom-fields/${a.id}`,a).then(o=>{let m=M({},o.data.data);m.options&&(m.options=m.options.map(k=>({name:k||""})));let p=this.customFields.findIndex(k=>k.id===m.id);this.customFields[p]&&(this.customFields[p]=m),t.showNotification({type:"success",message:s.t("settings.custom_fields.updated_message")}),n(o)}).catch(o=>{h(o),e(o)})})},deleteCustomFields(a){const t=$();return new Promise((n,e)=>{f.delete(`/api/v1/custom-fields/${a}`).then(o=>{let m=this.customFields.findIndex(p=>p.id===a);this.customFields.splice(m,1),o.data.error?t.showNotification({type:"error",message:s.t("settings.custom_fields.already_in_use")}):t.showNotification({type:"success",message:s.t("settings.custom_fields.deleted_message")}),n(o)}).catch(o=>{h(o),e(o)})})}}})()},Xz={key:1,class:"relative"},eS={class:"absolute bottom-0 right-0 z-10"},tS={class:"flex p-2"},aS={class:"mb-1 ml-2 text-xs font-semibold text-gray-500 uppercase"},iS=["onClick"],nS={class:"flex pl-1"},sS={props:{contentLoading:{type:Boolean,default:!1},modelValue:{type:String,default:""},fields:{type:Array,default:null}},emits:["update:modelValue"],setup(i,{emit:r}){const s=i,a=Qz();let t=K([]),n=K([]),e=K([]),o=K([]),m=K([]);ge(()=>s.fields,b=>{s.fields&&s.fields.length>0&&x()}),ge(()=>a.customFields,b=>{n.value=b?b.filter(v=>v.model_type==="Invoice"):[],m.value=b?b.filter(v=>v.model_type==="Customer"):[],o.value=b?b.filter(v=>v.model_type==="Payment"):[],e.value=b.filter(v=>v.model_type==="Estimate"),x()}),ze(()=>{k()});const p=A({get:()=>s.modelValue,set:b=>{r("update:modelValue",b)}});async function k(){await a.fetchCustomFields()}async function x(){t.value=[],s.fields&&s.fields.length>0&&(s.fields.find(b=>b=="shipping")&&t.value.push({label:"Shipping Address",fields:[{label:"Address name",value:"SHIPPING_ADDRESS_NAME"},{label:"Country",value:"SHIPPING_COUNTRY"},{label:"State",value:"SHIPPING_STATE"},{label:"City",value:"SHIPPING_CITY"},{label:"Address Street 1",value:"SHIPPING_ADDRESS_STREET_1"},{label:"Address Street 2",value:"SHIPPING_ADDRESS_STREET_2"},{label:"Phone",value:"SHIPPING_PHONE"},{label:"Zip Code",value:"SHIPPING_ZIP_CODE"}]}),s.fields.find(b=>b=="billing")&&t.value.push({label:"Billing Address",fields:[{label:"Address name",value:"BILLING_ADDRESS_NAME"},{label:"Country",value:"BILLING_COUNTRY"},{label:"State",value:"BILLING_STATE"},{label:"City",value:"BILLING_CITY"},{label:"Address Street 1",value:"BILLING_ADDRESS_STREET_1"},{label:"Address Street 2",value:"BILLING_ADDRESS_STREET_2"},{label:"Phone",value:"BILLING_PHONE"},{label:"Zip Code",value:"BILLING_ZIP_CODE"}]}),s.fields.find(b=>b=="customer")&&t.value.push({label:"Customer",fields:[{label:"Display Name",value:"CONTACT_DISPLAY_NAME"},{label:"Contact Name",value:"PRIMARY_CONTACT_NAME"},{label:"Email",value:"CONTACT_EMAIL"},{label:"Phone",value:"CONTACT_PHONE"},{label:"Website",value:"CONTACT_WEBSITE"},...m.value.map(b=>({label:b.label,value:b.slug}))]}),s.fields.find(b=>b=="invoice")&&t.value.push({label:"Invoice",fields:[{label:"Date",value:"INVOICE_DATE"},{label:"Due Date",value:"INVOICE_DUE_DATE"},{label:"Number",value:"INVOICE_NUMBER"},{label:"Ref Number",value:"INVOICE_REF_NUMBER"},{label:"Invoice Link",value:"INVOICE_LINK"},...n.value.map(b=>({label:b.label,value:b.slug}))]}),s.fields.find(b=>b=="estimate")&&t.value.push({label:"Estimate",fields:[{label:"Date",value:"ESTIMATE_DATE"},{label:"Expiry Date",value:"ESTIMATE_EXPIRY_DATE"},{label:"Number",value:"ESTIMATE_NUMBER"},{label:"Ref Number",value:"ESTIMATE_REF_NUMBER"},{label:"Estimate Link",value:"ESTIMATE_LINK"},...e.value.map(b=>({label:b.label,value:b.slug}))]}),s.fields.find(b=>b=="payment")&&t.value.push({label:"Payment",fields:[{label:"Date",value:"PAYMENT_DATE"},{label:"Number",value:"PAYMENT_NUMBER"},{label:"Mode",value:"PAYMENT_MODE"},{label:"Amount",value:"PAYMENT_AMOUNT"},{label:"Payment Link",value:"PAYMENT_LINK"},...o.value.map(b=>({label:b.label,value:b.slug}))]}),s.fields.find(b=>b=="company")&&t.value.push({label:"Company",fields:[{label:"Company Name",value:"COMPANY_NAME"},{label:"Country",value:"COMPANY_COUNTRY"},{label:"State",value:"COMPANY_STATE"},{label:"City",value:"COMPANY_CITY"},{label:"Address Street 1",value:"COMPANY_ADDRESS_STREET_1"},{label:"Address Street 2",value:"COMPANY_ADDRESS_STREET_2"},{label:"Phone",value:"COMPANY_PHONE"},{label:"Zip Code",value:"COMPANY_ZIP_CODE"}]}))}return x(),(b,v)=>{const E=D("BaseContentPlaceholdersBox"),R=D("BaseContentPlaceholders"),T=D("BaseIcon"),z=D("BaseButton"),U=D("BaseDropdown"),L=D("BaseEditor");return i.contentLoading?(l(),N(R,{key:0},{default:g(()=>[u(E,{rounded:!0,class:"w-full",style:{height:"200px"}})]),_:1})):(l(),_("div",Xz,[c("div",eS,[u(U,{"close-on-select":!0,"max-height":"220",position:"top-end","width-class":"w-92",class:"mb-2"},{activator:g(()=>[u(z,{type:"button",variant:"primary-outline",class:"mr-4"},{left:g(Y=>[u(T,{name:"PlusSmIcon",class:C(Y.class)},null,8,["class"])]),default:g(()=>[q(w(b.$t("settings.customization.insert_fields"))+" ",1)]),_:1})]),default:g(()=>[c("div",tS,[(l(!0),_(X,null,ae(d(t),(Y,me)=>(l(),_("ul",{key:me,class:"list-none"},[c("li",aS,w(Y.label),1),(l(!0),_(X,null,ae(Y.fields,(W,I)=>(l(),_("li",{key:I,class:"w-48 text-sm font-normal cursor-pointer hover:bg-gray-100 rounded ml-1 py-0.5",onClick:y=>p.value+=`{${W.value}}`},[c("div",nS,[u(T,{name:"ChevronDoubleRightIcon",class:"h-3 mt-1 mr-2 text-gray-400"}),q(" "+w(W.label),1)])],8,iS))),128))]))),128))])]),_:1})]),u(L,{modelValue:d(p),"onUpdate:modelValue":v[0]||(v[0]=Y=>J(p)?p.value=Y:null)},null,8,["modelValue"])]))}}};var oS=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:sS});const rS={props:{tag:{type:String,default:"button"}},setup(i,{slots:r,attrs:s,emit:a}){return()=>Lt(`${i.tag}`,s,r)}};var dS=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:rS});const lS={key:0,class:"text-sm font-bold leading-5 text-black non-italic space-y-1"},cS={key:0},_S={key:1},uS={key:2},mS={key:3},pS={key:4},gS={key:5},fS={props:{address:{type:Object,required:!0}},setup(i){return(r,s)=>{var a,t,n,e,o,m,p,k,x,b,v,E,R,T;return i.address?(l(),_("div",lS,[((a=i.address)==null?void 0:a.address_street_1)?(l(),_("p",cS,w((t=i.address)==null?void 0:t.address_street_1)+",",1)):S("",!0),((n=i.address)==null?void 0:n.address_street_2)?(l(),_("p",_S,w((e=i.address)==null?void 0:e.address_street_2)+",",1)):S("",!0),((o=i.address)==null?void 0:o.city)?(l(),_("p",uS,w((m=i.address)==null?void 0:m.city)+",",1)):S("",!0),((p=i.address)==null?void 0:p.state)?(l(),_("p",mS,w((k=i.address)==null?void 0:k.state)+",",1)):S("",!0),((b=(x=i.address)==null?void 0:x.country)==null?void 0:b.name)?(l(),_("p",pS,w((E=(v=i.address)==null?void 0:v.country)==null?void 0:E.name)+",",1)):S("",!0),((R=i.address)==null?void 0:R.zip)?(l(),_("p",gS,w((T=i.address)==null?void 0:T.zip)+".",1)):S("",!0)])):S("",!0)}}};var vS=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:fS}),Me={name:null,phone:null,address_street_1:null,address_street_2:null,city:null,state:null,country_id:null,zip:null,type:null};function zt(){return{name:"",contact_name:"",email:"",phone:null,password:"",confirm_password:"",currency_id:null,website:null,billing:M({},Me),shipping:M({},Me),customFields:[],fields:[],enable_portal:!1}}const be=(i=!1)=>{const r=i?window.pinia.defineStore:Q,{global:s}=window.i18n;return r({id:"customer",state:()=>({customers:[],totalCustomers:0,selectAllField:!1,selectedCustomers:[],selectedViewCustomer:{},isFetchingInitialSettings:!1,isFetchingViewData:!1,currentCustomer:M({},zt())}),getters:{isEdit:a=>!!a.currentCustomer.id},actions:{resetCurrentCustomer(){this.currentCustomer=M({},zt())},copyAddress(){this.currentCustomer.shipping=Z(M({},this.currentCustomer.billing),{type:"shipping"})},fetchCustomerInitialSettings(a){const t=fe(),n=Te(),e=_e();this.isFetchingInitialSettings=!0;let o=[];a?o=[this.fetchCustomer(t.params.id)]:this.currentCustomer.currency_id=e.selectedCompanyCurrency.id,Promise.all([n.fetchCurrencies(),n.fetchCountries(),...o]).then(async([m,p,k])=>{this.isFetchingInitialSettings=!1}).catch(m=>{h(m)})},fetchCustomers(a){return new Promise((t,n)=>{f.get("/api/v1/customers",{params:a}).then(e=>{this.customers=e.data.data,this.totalCustomers=e.data.meta.customer_total_count,t(e)}).catch(e=>{h(e),n(e)})})},fetchViewCustomer(a){return new Promise((t,n)=>{this.isFetchingViewData=!0,f.get(`/api/v1/customers/${a.id}/stats`,{params:a}).then(e=>{this.selectedViewCustomer={},Object.assign(this.selectedViewCustomer,e.data.data),this.setAddressStub(e.data.data),this.isFetchingViewData=!1,t(e)}).catch(e=>{this.isFetchingViewData=!1,h(e),n(e)})})},fetchCustomer(a){return new Promise((t,n)=>{f.get(`/api/v1/customers/${a}`).then(e=>{Object.assign(this.currentCustomer,e.data.data),this.setAddressStub(e.data.data),t(e)}).catch(e=>{h(e),n(e)})})},addCustomer(a){return new Promise((t,n)=>{f.post("/api/v1/customers",a).then(e=>{this.customers.push(e.data.data),$().showNotification({type:"success",message:s.t("customers.created_message")}),t(e)}).catch(e=>{h(e),n(e)})})},updateCustomer(a){return new Promise((t,n)=>{f.put(`/api/v1/customers/${a.id}`,a).then(e=>{if(e.data){let o=this.customers.findIndex(p=>p.id===e.data.data.id);this.customers[o]=a,$().showNotification({type:"success",message:s.t("customers.updated_message")})}t(e)}).catch(e=>{h(e),n(e)})})},deleteCustomer(a){const t=$();return new Promise((n,e)=>{f.post("/api/v1/customers/delete",a).then(o=>{let m=this.customers.findIndex(p=>p.id===a);this.customers.splice(m,1),t.showNotification({type:"success",message:s.tc("customers.deleted_message",1)}),n(o)}).catch(o=>{h(o),e(o)})})},deleteMultipleCustomers(){const a=$();return new Promise((t,n)=>{f.post("/api/v1/customers/delete",{ids:this.selectedCustomers}).then(e=>{this.selectedCustomers.forEach(o=>{let m=this.customers.findIndex(p=>p.id===o.id);this.customers.splice(m,1)}),a.showNotification({type:"success",message:s.tc("customers.deleted_message",2)}),t(e)}).catch(e=>{h(e),n(e)})})},setSelectAllState(a){this.selectAllField=a},selectCustomer(a){this.selectedCustomers=a,this.selectedCustomers.length===this.customers.length?this.selectAllField=!0:this.selectAllField=!1},selectAllCustomers(){if(this.selectedCustomers.length===this.customers.length)this.selectedCustomers=[],this.selectAllField=!1;else{let a=this.customers.map(t=>t.id);this.selectedCustomers=a,this.selectAllField=!0}},setAddressStub(a){a.billing||(this.currentCustomer.billing=M({},Me)),a.shipping||(this.currentCustomer.shipping=M({},Me))}}})()},je=(i=!1)=>(i?window.pinia.defineStore:Q)({id:"modal",state:()=>({active:!1,content:"",title:"",componentName:"",id:"",size:"md",data:null,refreshData:null,variant:""}),getters:{isEdit(){return!!this.id}},actions:{openModal(s){this.componentName=s.componentName,this.active=!0,s.id&&(this.id=s.id),this.title=s.title,s.content&&(this.content=s.content),s.data&&(this.data=s.data),s.refreshData&&(this.refreshData=s.refreshData),s.variant&&(this.variant=s.variant),s.size&&(this.size=s.size)},resetModalData(){this.content="",this.title="",this.componentName="",this.id="",this.data=null,this.refreshData=null},closeModal(){this.active=!1,setTimeout(()=>{this.resetModalData()},300)}}})(),Fe=(i=!1)=>{const r=i?window.pinia.defineStore:Q,{global:s}=window.i18n;return r({id:"item",state:()=>({items:[],totalItems:0,selectAllField:!1,selectedItems:[],itemUnits:[],currentItemUnit:{id:null,name:""},currentItem:{name:"",description:"",price:0,unit_id:"",unit:null,taxes:[],tax_per_item:!1}}),getters:{isItemUnitEdit:a=>!!a.currentItemUnit.id},actions:{resetCurrentItem(){this.currentItem={name:"",description:"",price:0,unit_id:"",unit:null,taxes:[]}},fetchItems(a){return new Promise((t,n)=>{f.get("/api/v1/items",{params:a}).then(e=>{this.items=e.data.data,this.totalItems=e.data.meta.item_total_count,t(e)}).catch(e=>{h(e),n(e)})})},fetchItem(a){return new Promise((t,n)=>{f.get(`/api/v1/items/${a}`).then(e=>{e.data&&Object.assign(this.currentItem,e.data.data),t(e)}).catch(e=>{h(e),n(e)})})},addItem(a){return new Promise((t,n)=>{f.post("/api/v1/items",a).then(e=>{const o=$();this.items.push(e.data.data),o.showNotification({type:"success",message:s.t("items.created_message")}),t(e)}).catch(e=>{h(e),n(e)})})},updateItem(a){return new Promise((t,n)=>{f.put(`/api/v1/items/${a.id}`,a).then(e=>{if(e.data){const o=$();let m=this.items.findIndex(p=>p.id===e.data.data.id);this.items[m]=a.item,o.showNotification({type:"success",message:s.t("items.updated_message")})}t(e)}).catch(e=>{h(e),n(e)})})},deleteItem(a){const t=$();return new Promise((n,e)=>{f.post("/api/v1/items/delete",a).then(o=>{let m=this.items.findIndex(p=>p.id===a);this.items.splice(m,1),t.showNotification({type:"success",message:s.tc("items.deleted_message",1)}),n(o)}).catch(o=>{h(o),e(o)})})},deleteMultipleItems(){const a=$();return new Promise((t,n)=>{f.post("/api/v1/items/delete",{ids:this.selectedItems}).then(e=>{this.selectedItems.forEach(o=>{let m=this.items.findIndex(p=>p.id===o.id);this.items.splice(m,1)}),a.showNotification({type:"success",message:s.tc("items.deleted_message",2)}),t(e)}).catch(e=>{h(e),n(e)})})},selectItem(a){this.selectedItems=a,this.selectedItems.length===this.items.length?this.selectAllField=!0:this.selectAllField=!1},selectAllItems(a){if(this.selectedItems.length===this.items.length)this.selectedItems=[],this.selectAllField=!1;else{let t=this.items.map(n=>n.id);this.selectedItems=t,this.selectAllField=!0}},addItemUnit(a){const t=$();return new Promise((n,e)=>{f.post("/api/v1/units",a).then(o=>{this.itemUnits.push(o.data.data),o.data.data&&t.showNotification({type:"success",message:s.t("settings.customization.items.item_unit_added")}),o.data.errors&&t.showNotification({type:"error",message:err.response.data.errors[0]}),n(o)}).catch(o=>{h(o),e(o)})})},updateItemUnit(a){const t=$();return new Promise((n,e)=>{f.put(`/api/v1/units/${a.id}`,a).then(o=>{let m=this.itemUnits.findIndex(p=>p.id===o.data.data.id);this.itemUnits[m]=a,o.data.data&&t.showNotification({type:"success",message:s.t("settings.customization.items.item_unit_updated")}),o.data.errors&&t.showNotification({type:"error",message:err.response.data.errors[0]}),n(o)}).catch(o=>{h(o),e(o)})})},fetchItemUnits(a){return new Promise((t,n)=>{f.get("/api/v1/units",{params:a}).then(e=>{this.itemUnits=e.data.data,t(e)}).catch(e=>{h(e),n(e)})})},fetchItemUnit(a){return new Promise((t,n)=>{f.get(`/api/v1/units/${a}`).then(e=>{this.currentItemUnit=e.data.data,t(e)}).catch(e=>{h(e),n(e)})})},deleteItemUnit(a){const t=$();return new Promise((n,e)=>{f.delete(`/api/v1/units/${a}`).then(o=>{if(!o.data.error){let m=this.itemUnits.findIndex(p=>p.id===a);this.itemUnits.splice(m,1)}o.data.success&&t.showNotification({type:"success",message:s.t("settings.customization.items.deleted_message")}),n(o)}).catch(o=>{h(o),e(o)})})}}})()},ke=(i=!1)=>{const r=i?window.pinia.defineStore:Q,{global:s}=window.i18n;return r({id:"taxType",state:()=>({taxTypes:[],currentTaxType:{id:null,name:"",percent:0,description:"",compound_tax:!1,collective_tax:0}}),getters:{isEdit:a=>!!a.currentTaxType.id},actions:{resetCurrentTaxType(){this.currentTaxType={id:null,name:"",percent:0,description:"",compound_tax:!1,collective_tax:0}},fetchTaxTypes(a){return new Promise((t,n)=>{f.get("/api/v1/tax-types",{params:a}).then(e=>{this.taxTypes=e.data.data,t(e)}).catch(e=>{h(e),n(e)})})},fetchTaxType(a){return new Promise((t,n)=>{f.get(`/api/v1/tax-types/${a}`).then(e=>{this.currentTaxType=e.data.data,t(e)}).catch(e=>{h(e),n(e)})})},addTaxType(a){const t=$();return new Promise((n,e)=>{f.post("/api/v1/tax-types",a).then(o=>{this.taxTypes.push(o.data.data),t.showNotification({type:"success",message:s.t("settings.tax_types.created_message")}),n(o)}).catch(o=>{h(o),e(o)})})},updateTaxType(a){const t=$();return new Promise((n,e)=>{f.put(`/api/v1/tax-types/${a.id}`,a).then(o=>{if(o.data){let m=this.taxTypes.findIndex(p=>p.id===o.data.data.id);this.taxTypes[m]=a.taxTypes,t.showNotification({type:"success",message:s.t("settings.tax_types.updated_message")})}n(o)}).catch(o=>{h(o),e(o)})})},fetchSalesTax(a){return new Promise((t,n)=>{f.post("/api/m/sales-tax-us/current-tax",a).then(e=>{if(e.data){let o=this.taxTypes.findIndex(m=>m.name==="SalesTaxUs");o>-1&&this.taxTypes.splice(o,1),this.taxTypes.push(Z(M({},e.data.data),{tax_type_id:e.data.data.id}))}t(e)}).catch(e=>{h(e),n(e)})})},deleteTaxType(a){return new Promise((t,n)=>{f.delete(`/api/v1/tax-types/${a}`).then(e=>{if(e.data.success){let o=this.taxTypes.findIndex(p=>p.id===a);this.taxTypes.splice(o,1),$().showNotification({type:"success",message:s.t("settings.tax_types.deleted_message")})}t(e)}).catch(e=>{h(e),n(e)})})}}})()};var Ze={estimate_id:null,item_id:null,name:"",title:"",description:null,quantity:1,price:0,discount_type:"fixed",discount_val:0,discount:0,total:0,sub_total:0,totalTax:0,totalSimpleTax:0,totalCompoundTax:0,tax:0,taxes:[]},se={name:"",tax_type_id:0,type:"GENERAL",amount:null,percent:null,compound_tax:!1};function St(){return{id:null,customer:null,template_name:"",tax_per_item:null,sales_tax_type:null,sales_tax_address_type:null,discount_per_item:null,estimate_date:"",expiry_date:"",estimate_number:"",customer_id:null,sub_total:0,total:0,tax:0,notes:"",discount_type:"fixed",discount_val:0,reference_number:null,discount:0,items:[Z(M({},Ze),{id:G.raw(),taxes:[Z(M({},se),{id:G.raw()})]})],taxes:[],customFields:[],fields:[],selectedNote:null,selectedCurrency:""}}const He=(i=!1)=>{const r=i?window.pinia.defineStore:Q,{global:s}=window.i18n;return r({id:"estimate",state:()=>({templates:[],estimates:[],selectAllField:!1,selectedEstimates:[],totalEstimateCount:0,isFetchingInitialSettings:!1,showExchangeRate:!1,newEstimate:M({},St())}),getters:{getSubTotal(){return this.newEstimate.items.reduce(function(a,t){return a+t.total},0)},getTotalSimpleTax(){return oe.sumBy(this.newEstimate.taxes,function(a){return a.compound_tax?0:a.amount})},getTotalCompoundTax(){return oe.sumBy(this.newEstimate.taxes,function(a){return a.compound_tax?a.amount:0})},getTotalTax(){return this.newEstimate.tax_per_item==="NO"||this.newEstimate.tax_per_item===null?this.getTotalSimpleTax+this.getTotalCompoundTax:oe.sumBy(this.newEstimate.items,function(a){return a.tax})},getSubtotalWithDiscount(){return this.getSubTotal-this.newEstimate.discount_val},getTotal(){return this.getSubtotalWithDiscount+this.getTotalTax},isEdit:a=>!!a.newEstimate.id},actions:{resetCurrentEstimate(){this.newEstimate=M({},St())},previewEstimate(a){return new Promise((t,n)=>{f.get(`/api/v1/estimates/${a.id}/send/preview`,{params:a}).then(e=>{t(e)}).catch(e=>{h(e),n(e)})})},fetchEstimates(a){return new Promise((t,n)=>{f.get("/api/v1/estimates",{params:a}).then(e=>{this.estimates=e.data.data,this.totalEstimateCount=e.data.meta.estimate_total_count,t(e)}).catch(e=>{h(e),n(e)})})},getNextNumber(a,t=!1){return new Promise((n,e)=>{f.get("/api/v1/next-number?key=estimate",{params:a}).then(o=>{t&&(this.newEstimate.estimate_number=o.data.nextNumber),n(o)}).catch(o=>{h(o),e(o)})})},fetchEstimate(a){return new Promise((t,n)=>{f.get(`/api/v1/estimates/${a}`).then(e=>{Object.assign(this.newEstimate,e.data.data),t(e)}).catch(e=>{console.log(e),h(e),n(e)})})},addSalesTaxUs(){const a=ke();let t=M({},se),n=this.newEstimate.taxes.find(e=>e.name==="Sales Tax"&&e.type==="MODULE");if(n){for(const e in n)Object.prototype.hasOwnProperty.call(t,e)&&(t[e]=n[e]);t.id=n.tax_type_id,console.log(t,"salesTax"),a.taxTypes.push(t),console.log(a.taxTypes)}},sendEstimate(a){const t=$();return new Promise((n,e)=>{f.post(`/api/v1/estimates/${a.id}/send`,a).then(o=>{a.is_preview||t.showNotification({type:"success",message:s.t("estimates.send_estimate_successfully")}),n(o)}).catch(o=>{h(o),e(o)})})},addEstimate(a){return new Promise((t,n)=>{f.post("/api/v1/estimates",a).then(e=>{this.estimates=[...this.estimates,e.data.estimate],$().showNotification({type:"success",message:s.t("estimates.created_message")}),t(e)}).catch(e=>{h(e),n(e)})})},deleteEstimate(a){const t=$();return new Promise((n,e)=>{f.post("/api/v1/estimates/delete",a).then(o=>{let m=this.estimates.findIndex(p=>p.id===a);this.estimates.splice(m,1),t.showNotification({type:"success",message:s.t("estimates.deleted_message",1)}),n(o)}).catch(o=>{h(o),e(o)})})},deleteMultipleEstimates(a){const t=$();return new Promise((n,e)=>{f.post("/api/v1/estimates/delete",{ids:this.selectedEstimates}).then(o=>{this.selectedEstimates.forEach(m=>{let p=this.estimates.findIndex(k=>k.id===m.id);this.estimates.splice(p,1)}),this.selectedEstimates=[],t.showNotification({type:"success",message:s.tc("estimates.deleted_message",2)}),n(o)}).catch(o=>{h(o),e(o)})})},updateEstimate(a){return new Promise((t,n)=>{f.put(`/api/v1/estimates/${a.id}`,a).then(e=>{let o=this.estimates.findIndex(p=>p.id===e.data.data.id);this.estimates[o]=e.data.data,$().showNotification({type:"success",message:s.t("estimates.updated_message")}),t(e)}).catch(e=>{h(e),n(e)})})},markAsAccepted(a){return new Promise((t,n)=>{f.post(`/api/v1/estimates/${a.id}/status`,a).then(e=>{let o=this.estimates.findIndex(m=>m.id===a.id);this.estimates[o]&&(this.estimates[o].status="ACCEPTED",$().showNotification({type:"success",message:s.t("estimates.marked_as_accepted_message")})),t(e)}).catch(e=>{h(e),n(e)})})},markAsRejected(a){return new Promise((t,n)=>{f.post(`/api/v1/estimates/${a.id}/status`,a).then(e=>{$().showNotification({type:"success",message:s.t("estimates.marked_as_rejected_message")}),t(e)}).catch(e=>{h(e),n(e)})})},markAsSent(a){return new Promise((t,n)=>{f.post(`/api/v1/estimates/${a.id}/status`,a).then(e=>{let o=this.estimates.findIndex(m=>m.id===a.id);this.estimates[o]&&(this.estimates[o].status="SENT",$().showNotification({type:"success",message:s.t("estimates.mark_as_sent_successfully")})),t(e)}).catch(e=>{h(e),n(e)})})},convertToInvoice(a){const t=$();return new Promise((n,e)=>{f.post(`/api/v1/estimates/${a}/convert-to-invoice`).then(o=>{t.showNotification({type:"success",message:s.t("estimates.conversion_message")}),n(o)}).catch(o=>{h(o),e(o)})})},searchEstimate(a){return new Promise((t,n)=>{f.get(`/api/v1/estimates?${a}`).then(e=>{t(e)}).catch(e=>{h(e),n(e)})})},selectEstimate(a){this.selectedEstimates=a,this.selectedEstimates.length===this.estimates.length?this.selectAllField=!0:this.selectAllField=!1},selectAllEstimates(){if(this.selectedEstimates.length===this.estimates.length)this.selectedEstimates=[],this.selectAllField=!1;else{let a=this.estimates.map(t=>t.id);this.selectedEstimates=a,this.selectAllField=!0}},selectCustomer(a){return new Promise((t,n)=>{f.get(`/api/v1/customers/${a}`).then(e=>{this.newEstimate.customer=e.data.data,this.newEstimate.customer_id=e.data.data.id,t(e)}).catch(e=>{h(e),n(e)})})},fetchEstimateTemplates(a){return new Promise((t,n)=>{f.get("/api/v1/estimates/templates",{params:a}).then(e=>{this.templates=e.data.estimateTemplates,t(e)}).catch(e=>{h(e),n(e)})})},setTemplate(a){this.newEstimate.template_name=a},resetSelectedCustomer(){this.newEstimate.customer=null,this.newEstimate.customer_id=""},selectNote(a){this.newEstimate.selectedNote=null,this.newEstimate.selectedNote=a},resetSelectedNote(){this.newEstimate.selectedNote=null},addItem(){this.newEstimate.items.push(Z(M({},Ze),{id:G.raw(),taxes:[Z(M({},se),{id:G.raw()})]}))},updateItem(a){Object.assign(this.newEstimate.items[a.index],M({},a))},removeItem(a){this.newEstimate.items.splice(a,1)},deselectItem(a){this.newEstimate.items[a]=Z(M({},Ze),{id:G.raw(),taxes:[Z(M({},se),{id:G.raw()})]})},async fetchEstimateInitialSettings(a){const t=_e(),n=be(),e=Fe(),o=ke(),m=fe();if(this.isFetchingInitialSettings=!0,this.newEstimate.selectedCurrency=t.selectedCompanyCurrency,m.query.customer){let k=await n.fetchCustomer(m.query.customer);this.newEstimate.customer=k.data.data,this.newEstimate.customer_id=k.data.data.id}let p=[];a?p=[this.fetchEstimate(m.params.id)]:(this.newEstimate.tax_per_item=t.selectedCompanySettings.tax_per_item,this.newEstimate.sales_tax_type=t.selectedCompanySettings.sales_tax_type,this.newEstimate.sales_tax_address_type=t.selectedCompanySettings.sales_tax_address_type,this.newEstimate.discount_per_item=t.selectedCompanySettings.discount_per_item,this.newEstimate.estimate_date=ye().format("YYYY-MM-DD"),t.selectedCompanySettings.estimate_set_expiry_date_automatically==="YES"&&(this.newEstimate.expiry_date=ye().add(t.selectedCompanySettings.estimate_expiry_date_days,"days").format("YYYY-MM-DD"))),Promise.all([e.fetchItems({filter:{},orderByField:"",orderBy:""}),this.resetSelectedNote(),this.fetchEstimateTemplates(),this.getNextNumber(),o.fetchTaxTypes({limit:"all"}),...p]).then(async([k,x,b,v,E,R,T])=>{a||(v.data&&(this.newEstimate.estimate_number=v.data.nextNumber),this.setTemplate(this.templates[0].name)),a&&this.addSalesTaxUs(),this.isFetchingInitialSettings=!1}).catch(k=>{h(k),this.isFetchingInitialSettings=!1})}}})()};var Ye={invoice_id:null,item_id:null,name:"",title:"",description:null,quantity:1,price:0,discount_type:"fixed",discount_val:0,discount:0,total:0,totalTax:0,totalSimpleTax:0,totalCompoundTax:0,tax:0,taxes:[]};function Pt(){return{id:null,invoice_number:"",customer:null,customer_id:null,template_name:null,invoice_date:"",due_date:"",notes:"",discount:0,discount_type:"fixed",discount_val:0,reference_number:null,tax:0,sub_total:0,total:0,tax_per_item:null,sales_tax_type:null,sales_tax_address_type:null,discount_per_item:null,taxes:[],items:[Z(M({},Ye),{id:G.raw(),taxes:[Z(M({},se),{id:G.raw()})]})],customFields:[],fields:[],selectedNote:null,selectedCurrency:""}}const $e=(i=!1)=>{const r=i?window.pinia.defineStore:Q,{global:s}=window.i18n,a=$();return r({id:"invoice",state:()=>({templates:[],invoices:[],selectedInvoices:[],selectAllField:!1,invoiceTotalCount:0,showExchangeRate:!1,isFetchingInitialSettings:!1,isFetchingInvoice:!1,newInvoice:M({},Pt())}),getters:{getInvoice:t=>n=>{let e=parseInt(n);return t.invoices.find(o=>o.id===e)},getSubTotal(){return this.newInvoice.items.reduce(function(t,n){return t+n.total},0)},getTotalSimpleTax(){return oe.sumBy(this.newInvoice.taxes,function(t){return t.compound_tax?0:t.amount})},getTotalCompoundTax(){return oe.sumBy(this.newInvoice.taxes,function(t){return t.compound_tax?t.amount:0})},getTotalTax(){return this.newInvoice.tax_per_item==="NO"||this.newInvoice.tax_per_item===null?this.getTotalSimpleTax+this.getTotalCompoundTax:oe.sumBy(this.newInvoice.items,function(t){return t.tax})},getSubtotalWithDiscount(){return this.getSubTotal-this.newInvoice.discount_val},getTotal(){return this.getSubtotalWithDiscount+this.getTotalTax},isEdit:t=>!!t.newInvoice.id},actions:{resetCurrentInvoice(){this.newInvoice=M({},Pt())},previewInvoice(t){return new Promise((n,e)=>{f.get(`/api/v1/invoices/${t.id}/send/preview`,{params:t}).then(o=>{n(o)}).catch(o=>{h(o),e(o)})})},fetchInvoices(t){return new Promise((n,e)=>{f.get("/api/v1/invoices",{params:t}).then(o=>{this.invoices=o.data.data,this.invoiceTotalCount=o.data.meta.invoice_total_count,n(o)}).catch(o=>{h(o),e(o)})})},fetchInvoice(t){return new Promise((n,e)=>{f.get(`/api/v1/invoices/${t}`).then(o=>{Object.assign(this.newInvoice,o.data.data),this.newInvoice.customer=o.data.data.customer,n(o)}).catch(o=>{h(o),e(o)})})},addSalesTaxUs(){const t=ke();let n=M({},se),e=this.newInvoice.taxes.find(o=>o.name==="Sales Tax"&&o.type==="MODULE");if(e){for(const o in e)Object.prototype.hasOwnProperty.call(n,o)&&(n[o]=e[o]);n.id=e.tax_type_id,t.taxTypes.push(n)}},sendInvoice(t){return new Promise((n,e)=>{f.post(`/api/v1/invoices/${t.id}/send`,t).then(o=>{a.showNotification({type:"success",message:s.t("invoices.invoice_sent_successfully")}),n(o)}).catch(o=>{h(o),e(o)})})},addInvoice(t){return new Promise((n,e)=>{f.post("/api/v1/invoices",t).then(o=>{this.invoices=[...this.invoices,o.data.invoice],a.showNotification({type:"success",message:s.t("invoices.created_message")}),n(o)}).catch(o=>{h(o),e(o)})})},deleteInvoice(t){return new Promise((n,e)=>{f.post("/api/v1/invoices/delete",t).then(o=>{let m=this.invoices.findIndex(p=>p.id===t);this.invoices.splice(m,1),a.showNotification({type:"success",message:s.t("invoices.deleted_message",1)}),n(o)}).catch(o=>{h(o),e(o)})})},deleteMultipleInvoices(t){return new Promise((n,e)=>{f.post("/api/v1/invoices/delete",{ids:this.selectedInvoices}).then(o=>{this.selectedInvoices.forEach(m=>{let p=this.invoices.findIndex(k=>k.id===m.id);this.invoices.splice(p,1)}),this.selectedInvoices=[],a.showNotification({type:"success",message:s.tc("invoices.deleted_message",2)}),n(o)}).catch(o=>{h(o),e(o)})})},updateInvoice(t){return new Promise((n,e)=>{f.put(`/api/v1/invoices/${t.id}`,t).then(o=>{let m=this.invoices.findIndex(p=>p.id===o.data.data.id);this.invoices[m]=o.data.data,a.showNotification({type:"success",message:s.t("invoices.updated_message")}),n(o)}).catch(o=>{h(o),e(o)})})},cloneInvoice(t){return new Promise((n,e)=>{f.post(`/api/v1/invoices/${t.id}/clone`,t).then(o=>{a.showNotification({type:"success",message:s.t("invoices.cloned_successfully")}),n(o)}).catch(o=>{h(o),e(o)})})},markAsSent(t){return new Promise((n,e)=>{f.post(`/api/v1/invoices/${t.id}/status`,t).then(o=>{let m=this.invoices.findIndex(p=>p.id===t.id);this.invoices[m]&&(this.invoices[m].status="SENT"),a.showNotification({type:"success",message:s.t("invoices.mark_as_sent_successfully")}),n(o)}).catch(o=>{h(o),e(o)})})},getNextNumber(t,n=!1){return new Promise((e,o)=>{f.get("/api/v1/next-number?key=invoice",{params:t}).then(m=>{n&&(this.newInvoice.invoice_number=m.data.nextNumber),e(m)}).catch(m=>{h(m),o(m)})})},searchInvoice(t){return new Promise((n,e)=>{f.get(`/api/v1/invoices?${t}`).then(o=>{n(o)}).catch(o=>{h(o),e(o)})})},selectInvoice(t){this.selectedInvoices=t,this.selectedInvoices.length===this.invoices.length?this.selectAllField=!0:this.selectAllField=!1},selectAllInvoices(){if(this.selectedInvoices.length===this.invoices.length)this.selectedInvoices=[],this.selectAllField=!1;else{let t=this.invoices.map(n=>n.id);this.selectedInvoices=t,this.selectAllField=!0}},selectCustomer(t){return new Promise((n,e)=>{f.get(`/api/v1/customers/${t}`).then(o=>{this.newInvoice.customer=o.data.data,this.newInvoice.customer_id=o.data.data.id,n(o)}).catch(o=>{h(o),e(o)})})},fetchInvoiceTemplates(t){return new Promise((n,e)=>{f.get("/api/v1/invoices/templates",{params:t}).then(o=>{this.templates=o.data.invoiceTemplates,n(o)}).catch(o=>{h(o),e(o)})})},selectNote(t){this.newInvoice.selectedNote=null,this.newInvoice.selectedNote=t},setTemplate(t){this.newInvoice.template_name=t},resetSelectedCustomer(){this.newInvoice.customer=null,this.newInvoice.customer_id=null},addItem(){this.newInvoice.items.push(Z(M({},Ye),{id:G.raw(),taxes:[Z(M({},se),{id:G.raw()})]}))},updateItem(t){Object.assign(this.newInvoice.items[t.index],M({},t))},removeItem(t){this.newInvoice.items.splice(t,1)},deselectItem(t){this.newInvoice.items[t]=Z(M({},Ye),{id:G.raw(),taxes:[Z(M({},se),{id:G.raw()})]})},resetSelectedNote(){this.newInvoice.selectedNote=null},async fetchInvoiceInitialSettings(t){const n=_e(),e=be(),o=Fe(),m=ke(),p=fe();if(this.isFetchingInitialSettings=!0,this.newInvoice.selectedCurrency=n.selectedCompanyCurrency,p.query.customer){let x=await e.fetchCustomer(p.query.customer);this.newInvoice.customer=x.data.data,this.newInvoice.customer_id=x.data.data.id}let k=[];t?k=[this.fetchInvoice(p.params.id)]:(this.newInvoice.tax_per_item=n.selectedCompanySettings.tax_per_item,this.newInvoice.sales_tax_type=n.selectedCompanySettings.sales_tax_type,this.newInvoice.sales_tax_address_type=n.selectedCompanySettings.sales_tax_address_type,this.newInvoice.discount_per_item=n.selectedCompanySettings.discount_per_item,this.newInvoice.invoice_date=ye().format("YYYY-MM-DD"),n.selectedCompanySettings.invoice_set_due_date_automatically==="YES"&&(this.newInvoice.due_date=ye().add(n.selectedCompanySettings.invoice_due_date_days,"days").format("YYYY-MM-DD"))),Promise.all([o.fetchItems({filter:{},orderByField:"",orderBy:""}),this.resetSelectedNote(),this.fetchInvoiceTemplates(),this.getNextNumber(),m.fetchTaxTypes({limit:"all"}),...k]).then(async([x,b,v,E,R,T])=>{t||(E.data&&(this.newInvoice.invoice_number=E.data.nextNumber),v.data&&this.setTemplate(this.templates[0].name)),t&&this.addSalesTaxUs(),this.isFetchingInitialSettings=!1}).catch(x=>{h(x),reject(x)})}}})()},hS={class:"relative flex px-4 py-2 rounded-lg bg-opacity-40 bg-gray-300 whitespace-nowrap flex-col mt-1"},yS=c("rect",{width:"37",height:"37",rx:"10",fill:"currentColor"},null,-1),bS=c("path",{d:"M16 10C15.7348 10 15.4804 10.1054 15.2929 10.2929C15.1054 10.4804 15 10.7348 15 11C15 11.2652 15.1054 11.5196 15.2929 11.7071C15.4804 11.8946 15.7348 12 16 12H18C18.2652 12 18.5196 11.8946 18.7071 11.7071C18.8946 11.5196 19 11.2652 19 11C19 10.7348 18.8946 10.4804 18.7071 10.2929C18.5196 10.1054 18.2652 10 18 10H16Z",fill:"white"},null,-1),kS=c("path",{d:"M11 13C11 12.4696 11.2107 11.9609 11.5858 11.5858C11.9609 11.2107 12.4696 11 13 11C13 11.7956 13.3161 12.5587 13.8787 13.1213C14.4413 13.6839 15.2044 14 16 14H18C18.7956 14 19.5587 13.6839 20.1213 13.1213C20.6839 12.5587 21 11.7956 21 11C21.5304 11 22.0391 11.2107 22.4142 11.5858C22.7893 11.9609 23 12.4696 23 13V19H18.414L19.707 17.707C19.8892 17.5184 19.99 17.2658 19.9877 17.0036C19.9854 16.7414 19.8802 16.4906 19.6948 16.3052C19.5094 16.1198 19.2586 16.0146 18.9964 16.0123C18.7342 16.01 18.4816 16.1108 18.293 16.293L15.293 19.293C15.1055 19.4805 15.0002 19.7348 15.0002 20C15.0002 20.2652 15.1055 20.5195 15.293 20.707L18.293 23.707C18.4816 23.8892 18.7342 23.99 18.9964 23.9877C19.2586 23.9854 19.5094 23.8802 19.6948 23.6948C19.8802 23.5094 19.9854 23.2586 19.9877 22.9964C19.99 22.7342 19.8892 22.4816 19.707 22.293L18.414 21H23V24C23 24.5304 22.7893 25.0391 22.4142 25.4142C22.0391 25.7893 21.5304 26 21 26H13C12.4696 26 11.9609 25.7893 11.5858 25.4142C11.2107 25.0391 11 24.5304 11 24V13ZM23 19H25C25.2652 19 25.5196 19.1054 25.7071 19.2929C25.8946 19.4804 26 19.7348 26 20C26 20.2652 25.8946 20.5196 25.7071 20.7071C25.5196 20.8946 25.2652 21 25 21H23V19Z",fill:"white"},null,-1),wS=[yS,bS,kS],xS={props:{token:{type:String,default:null,required:!0}},setup(i){const r=$(),s=K(""),{t:a}=Se();function t(e){let o;document.selection?(o=document.body.createTextRange(),o.moveToElementText(e),o.select()):window.getSelection&&(o=document.createRange(),o.selectNode(e),window.getSelection().removeAllRanges(),window.getSelection().addRange(o))}function n(){t(s.value),document.execCommand("copy"),r.showNotification({type:"success",message:a("general.copied_url_clipboard")})}return(e,o)=>{const m=et("tooltip");return l(),_("div",hS,[c("span",{ref:(p,k)=>{k.publicUrl=p,s.value=p},class:"pr-10 text-sm font-medium text-black truncate select-all select-color"},w(i.token),513),xe((l(),_("svg",{class:"absolute right-0 h-full inset-y-0 cursor-pointer focus:outline-none text-primary-500",width:"37",viewBox:"0 0 37 37",fill:"none",xmlns:"http://www.w3.org/2000/svg",onClick:n},wS,512)),[[m,{content:"Copy to Clipboard"}]])])}}};var Ge={recurring_invoice_id:null,item_id:null,name:"",title:"",sales_tax_type:null,sales_tax_address_type:null,description:null,quantity:1,price:0,discount_type:"fixed",discount_val:0,discount:0,total:0,totalTax:0,totalSimpleTax:0,totalCompoundTax:0,tax:0,taxes:[]};function jt(){return{currency:null,customer:null,customer_id:null,invoice_template_id:1,sub_total:0,total:0,tax:0,notes:"",discount_type:"fixed",discount_val:0,discount:0,starts_at:null,send_automatically:!0,status:"ACTIVE",company_id:null,next_invoice_at:null,next_invoice_date:null,frequency:"0 0 * * 0",limit_count:null,limit_by:"NONE",limit_date:null,exchange_rate:null,tax_per_item:null,discount_per_item:null,template_name:null,items:[Z(M({},Ge),{id:G.raw(),taxes:[Z(M({},se),{id:G.raw()})]})],taxes:[],customFields:[],fields:[],invoices:[],selectedNote:null,selectedFrequency:{label:"Every Week",value:"0 0 * * 0"},selectedInvoice:null}}const At=(i=!1)=>{const r=i?window.pinia.defineStore:Q,{global:s}=window.i18n;return r({id:"recurring-invoice",state:()=>({templates:[],recurringInvoices:[],selectedRecurringInvoices:[],totalRecurringInvoices:0,isFetchingInitialSettings:!1,isFetchingViewData:!1,showExchangeRate:!1,selectAllField:!1,newRecurringInvoice:M({},jt()),frequencies:[{label:"Every Minute",value:"* * * * *"},{label:"Every 30 Minute",value:"*/30 * * * *"},{label:"Every Hour",value:"0 * * * *"},{label:"Every 2 Hour",value:"0 */2 * * *"},{label:"Twice A Day",value:"0 13-15 * * *"},{label:"Every Week",value:"0 0 * * 0"},{label:"Every 15 Days",value:"0 5 */15 * *"},{label:"First Day Of Month",value:"0 0 1 * *"},{label:"Every 6 Month",value:"0 0 1 */6 *"},{label:"Every Year",value:"0 0 1 1 *"},{label:"Custom",value:"CUSTOM"}]}),getters:{getSubTotal(){var a;return((a=this.newRecurringInvoice)==null?void 0:a.items.reduce(function(t,n){return t+n.total},0))||0},getTotalSimpleTax(){return oe.sumBy(this.newRecurringInvoice.taxes,function(a){return a.compound_tax?0:a.amount})},getTotalCompoundTax(){return oe.sumBy(this.newRecurringInvoice.taxes,function(a){return a.compound_tax?a.amount:0})},getTotalTax(){return this.newRecurringInvoice.tax_per_item==="NO"||this.newRecurringInvoice.tax_per_item===null?this.getTotalSimpleTax+this.getTotalCompoundTax:oe.sumBy(this.newRecurringInvoice.items,function(a){return a.tax})},getSubtotalWithDiscount(){return this.getSubTotal-this.newRecurringInvoice.discount_val},getTotal(){return this.getSubtotalWithDiscount+this.getTotalTax}},actions:{resetCurrentRecurringInvoice(){this.newRecurringInvoice=M({},jt())},deselectItem(a){this.newRecurringInvoice.items[a]=Z(M({},Ge),{id:G.raw(),taxes:[Z(M({},se),{id:G.raw()})]})},addRecurringInvoice(a){return new Promise((t,n)=>{f.post("/api/v1/recurring-invoices",a).then(e=>{this.recurringInvoices=[...this.recurringInvoices,e.data.recurringInvoice],$().showNotification({type:"success",message:s.t("recurring_invoices.created_message")}),t(e)}).catch(e=>{h(e),n(e)})})},fetchRecurringInvoice(a){return new Promise((t,n)=>{this.isFetchingViewData=!0,f.get(`/api/v1/recurring-invoices/${a}`).then(e=>{Object.assign(this.newRecurringInvoice,e.data.data),this.newRecurringInvoice.invoices=e.data.data.invoices||[],this.setSelectedFrequency(),this.isFetchingViewData=!1,t(e)}).catch(e=>{this.isFetchingViewData=!1,h(e),n(e)})})},updateRecurringInvoice(a){return new Promise((t,n)=>{f.put(`/api/v1/recurring-invoices/${a.id}`,a).then(e=>{t(e),$().showNotification({type:"success",message:s.t("recurring_invoices.updated_message")});let m=this.recurringInvoices.findIndex(p=>p.id===e.data.data.id);this.recurringInvoices[m]=e.data.data}).catch(e=>{h(e),n(e)})})},selectCustomer(a){return new Promise((t,n)=>{f.get(`/api/v1/customers/${a}`).then(e=>{this.newRecurringInvoice.customer=e.data.data,this.newRecurringInvoice.customer_id=e.data.data.id,t(e)}).catch(e=>{h(e),n(e)})})},searchRecurringInvoice(a){return new Promise((t,n)=>{f.get(`/api/v1/recurring-invoices?${a}`).then(e=>{t(e)}).catch(e=>{h(e),n(e)})})},fetchRecurringInvoices(a){return new Promise((t,n)=>{f.get("/api/v1/recurring-invoices",{params:a}).then(e=>{this.recurringInvoices=e.data.data,this.totalRecurringInvoices=e.data.meta.recurring_invoice_total_count,t(e)}).catch(e=>{h(e),n(e)})})},deleteRecurringInvoice(a){return new Promise((t,n)=>{f.post("/api/v1/recurring-invoices/delete",a).then(e=>{let o=this.recurringInvoices.findIndex(m=>m.id===a);this.recurringInvoices.splice(o,1),t(e)}).catch(e=>{h(e),n(e)})})},deleteMultipleRecurringInvoices(a){return new Promise((t,n)=>{let e=this.selectedRecurringInvoices;a&&(e=[a]),f.post("/api/v1/recurring-invoices/delete",{ids:e}).then(o=>{this.selectedRecurringInvoices.forEach(m=>{let p=this.recurringInvoices.findIndex(k=>k.id===m.id);this.recurringInvoices.splice(p,1)}),this.selectedRecurringInvoices=[],t(o)}).catch(o=>{h(o),n(o)})})},resetSelectedCustomer(){this.newRecurringInvoice.customer=null,this.newRecurringInvoice.customer_id=""},selectRecurringInvoice(a){this.selectedRecurringInvoices=a,this.selectedRecurringInvoices.length===this.recurringInvoices.length?this.selectAllField=!0:this.selectAllField=!1},selectAllRecurringInvoices(){if(this.selectedRecurringInvoices.length===this.recurringInvoices.length)this.selectedRecurringInvoices=[],this.selectAllField=!1;else{let a=this.recurringInvoices.map(t=>t.id);this.selectedRecurringInvoices=a,this.selectAllField=!0}},addItem(){this.newRecurringInvoice.items.push(Z(M({},Ge),{id:G.raw(),taxes:[Z(M({},se),{id:G.raw()})]}))},removeItem(a){this.newRecurringInvoice.items.splice(a,1)},updateItem(a){Object.assign(this.newRecurringInvoice.items[a.index],M({},a))},async fetchRecurringInvoiceInitialSettings(a){const t=_e(),n=be(),e=Fe(),o=$e(),m=ke(),p=fe();if(this.isFetchingInitialSettings=!0,this.newRecurringInvoice.currency=t.selectedCompanyCurrency,p.query.customer){let x=await n.fetchCustomer(p.query.customer);this.newRecurringInvoice.customer=x.data.data,this.selectCustomer(x.data.data.id)}let k=[];a?k=[this.fetchRecurringInvoice(p.params.id)]:(this.newRecurringInvoice.tax_per_item=t.selectedCompanySettings.tax_per_item,this.newRecurringInvoice.discount_per_item=t.selectedCompanySettings.discount_per_item,this.newRecurringInvoice.sales_tax_type=t.selectedCompanySettings.sales_tax_type,this.newRecurringInvoice.sales_tax_address_type=t.selectedCompanySettings.sales_tax_address_type,this.newRecurringInvoice.starts_at=ye().format("YYYY-MM-DD"),this.newRecurringInvoice.next_invoice_date=ye().add(7,"days").format("YYYY-MM-DD")),Promise.all([e.fetchItems({filter:{},orderByField:"",orderBy:""}),this.resetSelectedNote(),o.fetchInvoiceTemplates(),m.fetchTaxTypes({limit:"all"}),...k]).then(async([x,b,v,E,R])=>{var T,z;v.data&&(this.templates=o.templates),a||this.setTemplate(this.templates[0].name),a&&(R==null?void 0:R.data)&&(M({},R.data.data),this.setTemplate((z=(T=R==null?void 0:R.data)==null?void 0:T.data)==null?void 0:z.template_name)),a&&this.addSalesTaxUs(),this.isFetchingInitialSettings=!1}).catch(x=>{console.log(x),h(x)})},addSalesTaxUs(){const a=ke();let t=M({},se),n=this.newRecurringInvoice.taxes.find(e=>e.name==="Sales Tax"&&e.type==="MODULE");if(n){for(const e in n)Object.prototype.hasOwnProperty.call(t,e)&&(t[e]=n[e]);t.id=n.tax_type_id,a.taxTypes.push(t)}},setTemplate(a){this.newRecurringInvoice.template_name=a},setSelectedFrequency(){let a=this.frequencies.find(t=>t.value===this.newRecurringInvoice.frequency);a?this.newRecurringInvoice.selectedFrequency=a:this.newRecurringInvoice.selectedFrequency={label:"Custom",value:"CUSTOM"}},resetSelectedNote(){this.newRecurringInvoice.selectedNote=null},fetchRecurringInvoiceFrequencyDate(a){return new Promise((t,n)=>{f.get("/api/v1/recurring-invoice-frequency",{params:a}).then(e=>{this.newRecurringInvoice.next_invoice_at=e.data.next_invoice_at,t(e)}).catch(e=>{$().showNotification({type:"error",message:s.t("errors.enter_valid_cron_format")}),n(e)})})}}})()},zS={class:"flex justify-between w-full"},SS=["onSubmit"],PS={class:"px-6 pb-3"},jS={class:"md:col-span-2"},AS={class:"text-sm text-gray-500"},DS={class:"grid md:grid-cols-12"},CS={class:"flex justify-end col-span-12"},ES={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},Dt={setup(i){const r=At(),s=je(),a=He(),t=be(),n=_e(),e=Te(),o=$e(),m=$();let p=K(!1);const{t:k}=Se(),x=fe();K(!1);const b=K(!1);let v=K(!1),E=K(!1);const R=A(()=>s.active&&s.componentName==="CustomerModal"),T=A(()=>({name:{required:te.withMessage(k("validation.required"),tt),minLength:te.withMessage(k("validation.name_min_length",{count:3}),Ue(3))},currency_id:{required:te.withMessage(k("validation.required"),tt)},password:{required:te.withMessage(k("validation.required"),at(t.currentCustomer.enable_portal==!0&&!t.currentCustomer.password_added)),minLength:te.withMessage(k("validation.password_min_length",{count:8}),Ue(8))},confirm_password:{sameAsPassword:te.withMessage(k("validation.password_incorrect"),Bt(t.currentCustomer.password))},email:{required:te.withMessage(k("validation.required"),at(t.currentCustomer.enable_portal==!0)),email:te.withMessage(k("validation.email_incorrect"),qt)},prefix:{minLength:te.withMessage(k("validation.name_min_length",{count:3}),Ue(3))},website:{url:te.withMessage(k("validation.invalid_url"),Kt)},billing:{address_street_1:{maxLength:te.withMessage(k("validation.address_maxlength",{count:255}),Ce(255))},address_street_2:{maxLength:te.withMessage(k("validation.address_maxlength",{count:255}),Ce(255))}},shipping:{address_street_1:{maxLength:te.withMessage(k("validation.address_maxlength",{count:255}),Ce(255))},address_street_2:{maxLength:te.withMessage(k("validation.address_maxlength",{count:255}),Ce(255))}}})),z=Wt(T,A(()=>t.currentCustomer)),U=A(()=>`${window.location.origin}/${n.selectedCompany.slug}/customer/login`);function L(){t.copyAddress()}async function Y(){t.isEdit||(t.currentCustomer.currency_id=n.selectedCompanyCurrency.id)}async function me(){if(z.value.$touch(),z.value.$invalid&&t.currentCustomer.email===""&&m.showNotification({type:"error",message:k("settings.notification.please_enter_email")}),z.value.$invalid)return!0;b.value=!0;let I=M({},t.currentCustomer);try{let y=null;t.isEdit?y=await t.updateCustomer(I):y=await t.addCustomer(I),y.data&&(b.value=!1,(x.name==="invoices.create"||x.name==="invoices.edit")&&o.selectCustomer(y.data.data.id),(x.name==="estimates.create"||x.name==="estimates.edit")&&a.selectCustomer(y.data.data.id),(x.name==="recurring-invoices.create"||x.name==="recurring-invoices.edit")&&r.selectCustomer(y.data.data.id),W())}catch(y){console.error(y),b.value=!1}}function W(){s.closeModal(),setTimeout(()=>{t.resetCurrentCustomer(),z.value.$reset()},300)}return(I,y)=>{const ue=D("BaseIcon"),H=D("BaseInput"),B=D("BaseInputGroup"),we=D("BaseMultiselect"),de=D("BaseInputGrid"),ve=D("BaseTab"),ie=D("BaseSwitch"),he=D("BaseTextarea"),Ae=D("BaseButton"),Et=D("BaseTabGroup"),It=D("BaseModal");return l(),N(It,{show:d(R),onClose:W,onOpen:Y},{header:g(()=>[c("div",zS,[q(w(d(s).title)+" ",1),u(ue,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:W})])]),default:g(()=>[c("form",{action:"",onSubmit:re(me,["prevent"])},[c("div",PS,[u(Et,null,{default:g(()=>[u(ve,{title:I.$t("customers.basic_info"),class:"!mt-2"},{default:g(()=>[u(de,{layout:"one-column"},{default:g(()=>[u(B,{label:I.$t("customers.display_name"),required:"",error:d(z).name.$error&&d(z).name.$errors[0].$message},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.name,"onUpdate:modelValue":y[0]||(y[0]=j=>d(t).currentCustomer.name=j),modelModifiers:{trim:!0},type:"text",name:"name",class:"mt-1 md:mt-0",invalid:d(z).name.$error,onInput:y[1]||(y[1]=j=>d(z).name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),u(B,{label:I.$tc("settings.currencies.currency"),required:"",error:d(z).currency_id.$error&&d(z).currency_id.$errors[0].$message},{default:g(()=>[u(we,{modelValue:d(t).currentCustomer.currency_id,"onUpdate:modelValue":y[2]||(y[2]=j=>d(t).currentCustomer.currency_id=j),options:d(e).currencies,"value-prop":"id",searchable:"",placeholder:I.$t("customers.select_currency"),"max-height":200,class:"mt-1 md:mt-0","track-by":"name",invalid:d(z).currency_id.$error,label:"name"},null,8,["modelValue","options","placeholder","invalid"])]),_:1},8,["label","error"]),u(B,{label:I.$t("customers.primary_contact_name")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.contact_name,"onUpdate:modelValue":y[3]||(y[3]=j=>d(t).currentCustomer.contact_name=j),type:"text",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(B,{label:I.$t("login.email"),error:d(z).email.$error&&d(z).email.$errors[0].$message},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.email,"onUpdate:modelValue":y[4]||(y[4]=j=>d(t).currentCustomer.email=j),modelModifiers:{trim:!0},type:"text",name:"email",class:"mt-1 md:mt-0",invalid:d(z).email.$error,onInput:y[5]||(y[5]=j=>d(z).email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),u(B,{label:I.$t("customers.prefix"),error:d(z).prefix.$error&&d(z).prefix.$errors[0].$message,"content-loading":d(p)},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.prefix,"onUpdate:modelValue":y[6]||(y[6]=j=>d(t).currentCustomer.prefix=j),"content-loading":d(p),type:"text",name:"name",class:"",invalid:d(z).prefix.$error,onInput:y[7]||(y[7]=j=>d(z).prefix.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","error","content-loading"]),u(de,null,{default:g(()=>[u(B,{label:I.$t("customers.phone")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.phone,"onUpdate:modelValue":y[8]||(y[8]=j=>d(t).currentCustomer.phone=j),modelModifiers:{trim:!0},type:"text",name:"phone",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(B,{label:I.$t("customers.website"),error:d(z).website.$error&&d(z).website.$errors[0].$message},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.website,"onUpdate:modelValue":y[9]||(y[9]=j=>d(t).currentCustomer.website=j),type:"url",class:"mt-1 md:mt-0",invalid:d(z).website.$error,onInput:y[10]||(y[10]=j=>d(z).website.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1})]),_:1})]),_:1},8,["title"]),u(ve,{title:I.$t("customers.portal_access")},{default:g(()=>[u(de,{class:"col-span-5 lg:col-span-4"},{default:g(()=>[c("div",jS,[c("p",AS,w(I.$t("customers.portal_access_text")),1),u(ie,{modelValue:d(t).currentCustomer.enable_portal,"onUpdate:modelValue":y[11]||(y[11]=j=>d(t).currentCustomer.enable_portal=j),class:"mt-1 flex"},null,8,["modelValue"])]),d(t).currentCustomer.enable_portal?(l(),N(B,{key:0,"content-loading":d(p),label:I.$t("customers.portal_access_url"),class:"md:col-span-2","help-text":I.$t("customers.portal_access_url_help")},{default:g(()=>[u(xS,{token:d(U)},null,8,["token"])]),_:1},8,["content-loading","label","help-text"])):S("",!0),d(t).currentCustomer.enable_portal?(l(),N(B,{key:1,"content-loading":d(p),error:d(z).password.$error&&d(z).password.$errors[0].$message,label:I.$t("customers.password")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.password,"onUpdate:modelValue":y[14]||(y[14]=j=>d(t).currentCustomer.password=j),modelModifiers:{trim:!0},"content-loading":d(p),type:d(v)?"text":"password",name:"password",invalid:d(z).password.$error,onInput:y[15]||(y[15]=j=>d(z).password.$touch())},{right:g(()=>[d(v)?(l(),N(ue,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:y[12]||(y[12]=j=>J(v)?v.value=!d(v):v=!d(v))})):(l(),N(ue,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:y[13]||(y[13]=j=>J(v)?v.value=!d(v):v=!d(v))}))]),_:1},8,["modelValue","content-loading","type","invalid"])]),_:1},8,["content-loading","error","label"])):S("",!0),d(t).currentCustomer.enable_portal?(l(),N(B,{key:2,error:d(z).confirm_password.$error&&d(z).confirm_password.$errors[0].$message,"content-loading":d(p),label:"Confirm Password"},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.confirm_password,"onUpdate:modelValue":y[18]||(y[18]=j=>d(t).currentCustomer.confirm_password=j),modelModifiers:{trim:!0},"content-loading":d(p),type:d(E)?"text":"password",name:"confirm_password",invalid:d(z).confirm_password.$error,onInput:y[19]||(y[19]=j=>d(z).confirm_password.$touch())},{right:g(()=>[d(E)?(l(),N(ue,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:y[16]||(y[16]=j=>J(E)?E.value=!d(E):E=!d(E))})):(l(),N(ue,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:y[17]||(y[17]=j=>J(E)?E.value=!d(E):E=!d(E))}))]),_:1},8,["modelValue","content-loading","type","invalid"])]),_:1},8,["error","content-loading"])):S("",!0)]),_:1})]),_:1},8,["title"]),u(ve,{title:I.$t("customers.billing_address"),class:"!mt-2"},{default:g(()=>[u(de,{layout:"one-column"},{default:g(()=>[u(B,{label:I.$t("customers.name")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.billing.name,"onUpdate:modelValue":y[20]||(y[20]=j=>d(t).currentCustomer.billing.name=j),type:"text",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(B,{label:I.$t("customers.country")},{default:g(()=>[u(we,{modelValue:d(t).currentCustomer.billing.country_id,"onUpdate:modelValue":y[21]||(y[21]=j=>d(t).currentCustomer.billing.country_id=j),options:d(e).countries,searchable:"","show-labels":!1,placeholder:I.$t("general.select_country"),"allow-empty":!1,"track-by":"name",class:"mt-1 md:mt-0",label:"name","value-prop":"id"},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),u(B,{label:I.$t("customers.state")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.billing.state,"onUpdate:modelValue":y[22]||(y[22]=j=>d(t).currentCustomer.billing.state=j),type:"text",name:"billingState",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(B,{label:I.$t("customers.city")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.billing.city,"onUpdate:modelValue":y[23]||(y[23]=j=>d(t).currentCustomer.billing.city=j),type:"text",name:"billingCity",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(B,{label:I.$t("customers.address"),error:d(z).billing.address_street_1.$error&&d(z).billing.address_street_1.$errors[0].$message},{default:g(()=>[u(he,{modelValue:d(t).currentCustomer.billing.address_street_1,"onUpdate:modelValue":y[24]||(y[24]=j=>d(t).currentCustomer.billing.address_street_1=j),placeholder:I.$t("general.street_1"),rows:"2",cols:"50",class:"mt-1 md:mt-0",invalid:d(z).billing.address_street_1.$error,onInput:y[25]||(y[25]=j=>d(z).billing.address_street_1.$touch())},null,8,["modelValue","placeholder","invalid"])]),_:1},8,["label","error"])]),_:1}),u(de,{layout:"one-column"},{default:g(()=>[u(B,{error:d(z).billing.address_street_2.$error&&d(z).billing.address_street_2.$errors[0].$message},{default:g(()=>[u(he,{modelValue:d(t).currentCustomer.billing.address_street_2,"onUpdate:modelValue":y[26]||(y[26]=j=>d(t).currentCustomer.billing.address_street_2=j),placeholder:I.$t("general.street_2"),rows:"2",cols:"50",invalid:d(z).billing.address_street_2.$error,onInput:y[27]||(y[27]=j=>d(z).billing.address_street_2.$touch())},null,8,["modelValue","placeholder","invalid"])]),_:1},8,["error"]),u(B,{label:I.$t("customers.phone")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.billing.phone,"onUpdate:modelValue":y[28]||(y[28]=j=>d(t).currentCustomer.billing.phone=j),modelModifiers:{trim:!0},type:"text",name:"phone",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(B,{label:I.$t("customers.zip_code")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.billing.zip,"onUpdate:modelValue":y[29]||(y[29]=j=>d(t).currentCustomer.billing.zip=j),type:"text",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),_:1},8,["title"]),u(ve,{title:I.$t("customers.shipping_address"),class:"!mt-2"},{default:g(()=>[c("div",DS,[c("div",CS,[u(Ae,{variant:"primary",type:"button",size:"xs",onClick:y[30]||(y[30]=j=>L())},{default:g(()=>[q(w(I.$t("customers.copy_billing_address")),1)]),_:1})])]),u(de,{layout:"one-column"},{default:g(()=>[u(B,{label:I.$t("customers.name")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.shipping.name,"onUpdate:modelValue":y[31]||(y[31]=j=>d(t).currentCustomer.shipping.name=j),type:"text",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(B,{label:I.$t("customers.country")},{default:g(()=>[u(we,{modelValue:d(t).currentCustomer.shipping.country_id,"onUpdate:modelValue":y[32]||(y[32]=j=>d(t).currentCustomer.shipping.country_id=j),options:d(e).countries,searchable:!0,"show-labels":!1,"allow-empty":!1,placeholder:I.$t("general.select_country"),"track-by":"name",class:"mt-1 md:mt-0",label:"name","value-prop":"id"},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),u(B,{label:I.$t("customers.state")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.shipping.state,"onUpdate:modelValue":y[33]||(y[33]=j=>d(t).currentCustomer.shipping.state=j),type:"text",name:"shippingState",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(B,{label:I.$t("customers.city")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.shipping.city,"onUpdate:modelValue":y[34]||(y[34]=j=>d(t).currentCustomer.shipping.city=j),type:"text",name:"shippingCity",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(B,{label:I.$t("customers.address"),error:d(z).shipping.address_street_1.$error&&d(z).shipping.address_street_1.$errors[0].$message},{default:g(()=>[u(he,{modelValue:d(t).currentCustomer.shipping.address_street_1,"onUpdate:modelValue":y[35]||(y[35]=j=>d(t).currentCustomer.shipping.address_street_1=j),placeholder:I.$t("general.street_1"),rows:"2",cols:"50",class:"mt-1 md:mt-0",invalid:d(z).shipping.address_street_1.$error,onInput:y[36]||(y[36]=j=>d(z).shipping.address_street_1.$touch())},null,8,["modelValue","placeholder","invalid"])]),_:1},8,["label","error"])]),_:1}),u(de,{layout:"one-column"},{default:g(()=>[u(B,{error:d(z).shipping.address_street_2.$error&&d(z).shipping.address_street_2.$errors[0].$message},{default:g(()=>[u(he,{modelValue:d(t).currentCustomer.shipping.address_street_2,"onUpdate:modelValue":y[37]||(y[37]=j=>d(t).currentCustomer.shipping.address_street_2=j),placeholder:I.$t("general.street_2"),rows:"2",cols:"50",invalid:d(z).shipping.address_street_1.$error,onInput:y[38]||(y[38]=j=>d(z).shipping.address_street_2.$touch())},null,8,["modelValue","placeholder","invalid"])]),_:1},8,["error"]),u(B,{label:I.$t("customers.phone")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.shipping.phone,"onUpdate:modelValue":y[39]||(y[39]=j=>d(t).currentCustomer.shipping.phone=j),modelModifiers:{trim:!0},type:"text",name:"phone",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(B,{label:I.$t("customers.zip_code")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.shipping.zip,"onUpdate:modelValue":y[40]||(y[40]=j=>d(t).currentCustomer.shipping.zip=j),type:"text",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),_:1},8,["title"])]),_:1})]),c("div",ES,[u(Ae,{class:"mr-3 text-sm",type:"button",variant:"primary-outline",onClick:W},{default:g(()=>[q(w(I.$t("general.cancel")),1)]),_:1}),u(Ae,{loading:b.value,variant:"primary",type:"submit"},{left:g(j=>[b.value?S("",!0):(l(),N(ue,{key:0,name:"SaveIcon",class:C(j.class)},null,8,["class"]))]),default:g(()=>[q(" "+w(I.$t("general.save")),1)]),_:1},8,["loading"])])],40,SS)]),_:1},8,["show"])}}},IS={props:{modelValue:{type:[String,Number,Object],default:""},fetchAll:{type:Boolean,default:!1},showAction:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(i,{emit:r}){const s=i,{t:a}=Se(),t=je(),n=be(),e=Pe(),o=A({get:()=>s.modelValue,set:k=>{r("update:modelValue",k)}});async function m(k){let x={search:k};return s.fetchAll&&(x.limit="all"),(await n.fetchCustomers(x)).data.data}async function p(){n.resetCurrentCustomer(),t.openModal({title:a("customers.add_new_customer"),componentName:"CustomerModal"})}return(k,x)=>{const b=D("BaseIcon"),v=D("BaseSelectAction"),E=D("BaseMultiselect");return l(),_(X,null,[u(E,le({modelValue:d(o),"onUpdate:modelValue":x[0]||(x[0]=R=>J(o)?o.value=R:null)},k.$attrs,{"track-by":"name","value-prop":"id",label:"name","filter-results":!1,"resolve-on-load":"",delay:500,searchable:!0,options:m,"label-value":"name",placeholder:k.$t("customers.type_or_click"),"can-deselect":!1,class:"w-full"}),Zt({_:2},[i.showAction?{name:"action",fn:g(()=>[d(e).hasAbilities(d(O).CREATE_CUSTOMER)?(l(),N(v,{key:0,onClick:p},{default:g(()=>[u(b,{name:"UserAddIcon",class:"h-4 mr-2 -ml-2 text-center text-primary-400"}),q(" "+w(k.$t("customers.add_new_customer")),1)]),_:1})):S("",!0)])}:void 0]),1040,["modelValue","placeholder"]),u(Dt)],64)}}};var NS=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:IS});const TS={key:1,class:"max-h-[173px]"},RS={class:"flex relative justify-between mb-2"},MS={class:"flex"},FS=["onClick"],$S={class:"grid grid-cols-2 gap-8 mt-2"},US={key:0,class:"flex flex-col"},VS={class:"mb-1 text-sm font-medium text-left text-gray-400 uppercase whitespace-nowrap"},OS={key:0,class:"flex flex-col flex-1 p-0 text-left"},LS={key:0,class:"relative w-11/12 text-sm truncate"},BS={class:"relative w-11/12 text-sm truncate"},qS={key:0},KS={key:1},WS={key:2},ZS={key:1,class:"relative w-11/12 text-sm truncate"},HS={key:1,class:"flex flex-col"},YS={class:"mb-1 text-sm font-medium text-left text-gray-400 uppercase whitespace-nowrap"},GS={key:0,class:"flex flex-col flex-1 p-0 text-left"},JS={key:0,class:"relative w-11/12 text-sm truncate"},QS={class:"relative w-11/12 text-sm truncate"},XS={key:0},eP={key:1},tP={key:2},aP={key:1,class:"relative w-11/12 text-sm truncate"},iP={class:"relative flex justify-center px-0 p-0 py-16 bg-white border border-gray-200 border-solid rounded-md min-h-[170px]"},nP={class:"mt-1"},sP={class:"text-lg font-medium text-gray-900"},oP=c("span",{class:"text-red-500"}," * ",-1),rP={key:0,class:"text-red-500 text-sm absolute right-3 bottom-3"},dP={key:0,class:"absolute min-w-full z-10"},lP={class:"relative"},cP={class:"max-h-80 flex flex-col overflow-auto list border-t border-gray-200"},_P=["onClick"],uP={class:"flex items-center content-center justify-center w-10 h-10 mr-4 text-xl font-semibold leading-9 text-white bg-gray-300 rounded-full avatar"},mP={class:"flex flex-col justify-center text-left"},pP={key:0,class:"flex justify-center p-5 text-gray-400"},gP={class:"text-base text-gray-500 cursor-pointer"},fP={class:"m-0 ml-3 text-sm leading-none cursor-pointer font-base text-primary-400"},vP={props:{valid:{type:Object,default:()=>{}},customerId:{type:Number,default:null},type:{type:String,default:null},contentLoading:{type:Boolean,default:!1}},setup(i){const r=i,s=je(),a=He(),t=be(),n=Te(),e=$e(),o=At(),m=Pe(),p=fe(),{t:k}=Se(),x=K(null),b=K(!1),v=A(()=>{switch(r.type){case"estimate":return a.newEstimate.customer;case"invoice":return e.newInvoice.customer;case"recurring-invoice":return o.newRecurringInvoice.customer;default:return""}});function E(){r.type==="estimate"?a.resetSelectedCustomer():r.type==="invoice"?e.resetSelectedCustomer():o.resetSelectedCustomer()}r.customerId&&r.type==="estimate"?a.selectCustomer(r.customerId):r.customerId&&r.type==="invoice"?e.selectCustomer(r.customerId):r.customerId&&o.selectCustomer(r.customerId);async function R(){await t.fetchCustomer(v.value.id),s.openModal({title:k("customers.edit_customer"),componentName:"CustomerModal"})}async function T(){await t.fetchCustomers({filter:{},orderByField:"",orderBy:"",customer_id:r.customerId})}const z=Jt(()=>{b.value=!0,U()},500);async function U(){let W={display_name:x.value,page:1};await t.fetchCustomers(W),b.value=!1}function L(){s.openModal({title:k("customers.add_customer"),componentName:"CustomerModal",variant:"md"})}function Y(W){if(W)return W.split(" ")[0].charAt(0).toUpperCase()}function me(W,I){let y={userId:W};p.params.id&&(y.model_id=p.params.id),r.type==="estimate"?(a.getNextNumber(y,!0),a.selectCustomer(W)):r.type==="invoice"?(e.getNextNumber(y,!0),e.selectCustomer(W)):o.selectCustomer(W),I(),x.value=null}return n.fetchCurrencies(),n.fetchCountries(),T(),(W,I)=>{const y=D("BaseContentPlaceholdersBox"),ue=D("BaseContentPlaceholders"),H=D("BaseText"),B=D("BaseIcon"),we=D("BaseInput");return i.contentLoading?(l(),N(ue,{key:0},{default:g(()=>[u(y,{rounded:!0,class:"w-full",style:{"min-height":"170px"}})]),_:1})):(l(),_("div",TS,[u(Dt),d(v)?(l(),_("div",{key:0,class:"flex flex-col p-4 bg-white border border-gray-200 border-solid min-h-[170px] rounded-md",onClick:I[0]||(I[0]=re(()=>{},["stop"]))},[c("div",RS,[u(H,{text:d(v).name,length:30,class:"flex-1 text-base font-medium text-left text-gray-900"},null,8,["text"]),c("div",MS,[c("a",{class:"relative my-0 ml-6 text-sm font-medium cursor-pointer text-primary-500 items-center flex",onClick:re(R,["stop"])},[u(B,{name:"PencilIcon",class:"text-gray-500 h-4 w-4 mr-1"}),q(" "+w(W.$t("general.edit")),1)],8,FS),c("a",{class:"relative my-0 ml-6 text-sm flex items-center font-medium cursor-pointer text-primary-500",onClick:E},[u(B,{name:"XCircleIcon",class:"text-gray-500 h-4 w-4 mr-1"}),q(" "+w(W.$t("general.deselect")),1)])])]),c("div",$S,[d(v).billing?(l(),_("div",US,[c("label",VS,w(W.$t("general.bill_to")),1),d(v).billing?(l(),_("div",OS,[d(v).billing.name?(l(),_("label",LS,w(d(v).billing.name),1)):S("",!0),c("label",BS,[d(v).billing.city?(l(),_("span",qS,w(d(v).billing.city),1)):S("",!0),d(v).billing.city&&d(v).billing.state?(l(),_("span",KS," , ")):S("",!0),d(v).billing.state?(l(),_("span",WS,w(d(v).billing.state),1)):S("",!0)]),d(v).billing.zip?(l(),_("label",ZS,w(d(v).billing.zip),1)):S("",!0)])):S("",!0)])):S("",!0),d(v).shipping?(l(),_("div",HS,[c("label",YS,w(W.$t("general.ship_to")),1),d(v).shipping?(l(),_("div",GS,[d(v).shipping.name?(l(),_("label",JS,w(d(v).shipping.name),1)):S("",!0),c("label",QS,[d(v).shipping.city?(l(),_("span",XS,w(d(v).shipping.city),1)):S("",!0),d(v).shipping.city&&d(v).shipping.state?(l(),_("span",eP," , ")):S("",!0),d(v).shipping.state?(l(),_("span",tP,w(d(v).shipping.state),1)):S("",!0)]),d(v).shipping.zip?(l(),_("label",aP,w(d(v).shipping.zip),1)):S("",!0)])):S("",!0)])):S("",!0)])])):(l(),N(d(Gt),{key:1,class:"relative flex flex-col rounded-md"},{default:g(({open:de})=>[u(d(Ht),{class:C([{"text-opacity-90":de,"border border-solid border-red-500 focus:ring-red-500 rounded":i.valid.$error,"focus:ring-2 focus:ring-primary-400":!i.valid.$error},"w-full outline-none rounded-md"])},{default:g(()=>[c("div",iP,[u(B,{name:"UserIcon",class:"flex justify-center !w-10 !h-10 p-2 mr-5 text-sm text-white bg-gray-200 rounded-full font-base"}),c("div",nP,[c("label",sP,[q(w(W.$t("customers.new_customer"))+" ",1),oP]),i.valid.$error&&i.valid.$errors[0].$message?(l(),_("p",rP,w(W.$t("estimates.errors.required")),1)):S("",!0)])])]),_:2},1032,["class"]),u(Ee,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"translate-y-1 opacity-0","enter-to-class":"translate-y-0 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"translate-y-0 opacity-100","leave-to-class":"translate-y-1 opacity-0"},{default:g(()=>[de?(l(),_("div",dP,[u(d(Yt),{focus:"",static:"",class:"overflow-hidden rounded-md shadow-lg ring-1 ring-black ring-opacity-5 bg-white"},{default:g(({close:ve})=>[c("div",lP,[u(we,{modelValue:x.value,"onUpdate:modelValue":[I[1]||(I[1]=ie=>x.value=ie),I[2]||(I[2]=ie=>d(z)(ie))],"container-class":"m-4",placeholder:W.$t("general.search"),type:"text",icon:"search"},null,8,["modelValue","placeholder"]),c("ul",cP,[(l(!0),_(X,null,ae(d(t).customers,(ie,he)=>(l(),_("li",{key:he,href:"#",class:"flex px-6 py-2 border-b border-gray-200 border-solid cursor-pointer hover:cursor-pointer hover:bg-gray-100 focus:outline-none focus:bg-gray-100 last:border-b-0",onClick:Ae=>me(ie.id,ve)},[c("span",uP,w(Y(ie.name)),1),c("div",mP,[ie.name?(l(),N(H,{key:0,text:ie.name,length:30,class:"m-0 text-base font-normal leading-tight cursor-pointer"},null,8,["text"])):S("",!0),ie.contact_name?(l(),N(H,{key:1,text:ie.contact_name,length:30,class:"m-0 text-sm font-medium text-gray-400 cursor-pointer"},null,8,["text"])):S("",!0)])],8,_P))),128)),d(t).customers.length===0?(l(),_("div",pP,[c("label",gP,w(W.$t("customers.no_customers_found")),1)])):S("",!0)])]),d(m).hasAbilities(d(O).CREATE_CUSTOMER)?(l(),_("button",{key:0,type:"button",class:"h-10 flex items-center justify-center w-full px-2 py-3 bg-gray-200 border-none outline-none focus:bg-gray-300",onClick:L},[u(B,{name:"UserAddIcon",class:"text-primary-400"}),c("label",fP,w(W.$t("customers.add_new_customer")),1)])):S("",!0)]),_:1})])):S("",!0)]),_:2},1024)]),_:1}))]))}}};var hP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:vP});const yP=c("path",{"fill-rule":"evenodd",d:"M6 2a1 1 0 00-1 1v1H4a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1V3a1 1 0 10-2 0v1H7V3a1 1 0 00-1-1zm0 5a1 1 0 000 2h8a1 1 0 100-2H6z","clip-rule":"evenodd"},null,-1),bP=[yP],kP={props:{modelValue:{type:[String,Date],default:()=>new Date},contentLoading:{type:Boolean,default:!1},placeholder:{type:String,default:null},invalid:{type:Boolean,default:!1},enableTime:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},showCalendarIcon:{type:Boolean,default:!0},containerClass:{type:String,default:""},defaultInputClass:{type:String,default:"font-base pl-8 py-2 outline-none focus:ring-primary-400 focus:outline-none focus:border-primary-400 block w-full sm:text-sm border-gray-200 rounded-md text-black"},time24hr:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(i,{emit:r}){const s=i,a=K(null),t=pe(),n=_e();let e=Ve({altInput:!0,enableTime:s.enableTime,time_24hr:s.time24hr});const o=A({get:()=>s.modelValue,set:E=>{r("update:modelValue",E)}}),m=A(()=>{var E;return(E=n.selectedCompanySettings)==null?void 0:E.carbon_date_format}),p=A(()=>!!t.icon),k=A(()=>`${s.containerClass} `),x=A(()=>s.invalid?"border-red-400 ring-red-400 focus:ring-red-400 focus:border-red-400":""),b=A(()=>s.disabled?"border border-solid rounded-md outline-none input-field box-border-2 base-date-picker-input placeholder-gray-400 bg-gray-200 text-gray-600 border-gray-200":"");function v(E){a.value.fp.open()}return ge(()=>s.enableTime,E=>{s.enableTime&&(e.enableTime=s.enableTime)},{immediate:!0}),ge(()=>m,()=>{s.enableTime?e.altFormat=m.value?`${m.value} H:i `:"d M Y H:i":e.altFormat=m.value?m.value:"d M Y"},{immediate:!0}),(E,R)=>{const T=D("BaseContentPlaceholdersBox"),z=D("BaseContentPlaceholders");return i.contentLoading?(l(),N(z,{key:0},{default:g(()=>[u(T,{rounded:!0,class:C(`w-full ${d(k)}`),style:{height:"38px"}},null,8,["class"])]),_:1})):(l(),_("div",{key:1,class:C([d(k),"relative flex flex-row"])},[i.showCalendarIcon&&!d(p)?(l(),_("svg",{key:0,viewBox:"0 0 20 20",fill:"currentColor",class:"absolute w-4 h-4 mx-2 my-2.5 text-sm not-italic font-black text-gray-400 cursor-pointer",onClick:v},bP)):S("",!0),i.showCalendarIcon&&d(p)?F(E.$slots,"icon",{key:1}):S("",!0),u(d(it),le({ref:(U,L)=>{L.dp=U,a.value=U},modelValue:d(o),"onUpdate:modelValue":R[0]||(R[0]=U=>J(o)?o.value=U:null)},E.$attrs,{disabled:i.disabled,config:d(e),class:[i.defaultInputClass,d(x),d(b)]}),null,16,["modelValue","disabled","config","class"])],2))}}};var wP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:kP});const xP={},zP={class:"grid gap-4 mt-5 md:grid-cols-2 lg:grid-cols-3"};function SP(i,r){return l(),_("div",zP,[F(i.$slots,"default")])}var PP=ee(xP,[["render",SP]]),jP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:PP});const AP={key:1},DP={class:"text-sm font-bold leading-5 text-black non-italic"},CP={props:{label:{type:String,required:!0},value:{type:[String,Number],default:""},contentLoading:{type:Boolean,default:!1}},setup(i){return(r,s)=>{const a=D("BaseContentPlaceholdersBox"),t=D("BaseContentPlaceholders"),n=D("BaseLabel");return l(),_("div",null,[i.contentLoading?(l(),N(t,{key:0},{default:g(()=>[u(a,{class:"w-20 h-5 mb-1"}),u(a,{class:"w-40 h-5"})]),_:1})):(l(),_("div",AP,[u(n,{class:"font-normal mb-1"},{default:g(()=>[q(w(i.label),1)]),_:1}),c("p",DP,[q(w(i.value)+" ",1),F(r.$slots,"default")])]))])}}};var EP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:CP});const IP=(i=!1)=>{const r=i?window.pinia.defineStore:Q,{global:s}=window.i18n;return r({id:"dialog",state:()=>({active:!1,title:"",message:"",size:"md",data:null,variant:"danger",yesLabel:s.t("settings.custom_fields.yes"),noLabel:s.t("settings.custom_fields.no"),noLabel:"No",resolve:null,hideNoButton:!1}),actions:{openDialog(a){return this.active=!0,this.title=a.title,this.message=a.message,this.size=a.size,this.data=a.data,this.variant=a.variant,this.yesLabel=a.yesLabel,this.noLabel=a.noLabel,this.hideNoButton=a.hideNoButton,new Promise((t,n)=>{this.resolve=t})},closeDialog(){this.active=!1,setTimeout(()=>{this.title="",this.message="",this.data=null},300)}}})()},NP={class:"flex items-end justify-center min-h-screen min-h-screen-ios px-4 pt-4 pb-20 text-center sm:block sm:p-0"},TP=c("span",{class:"hidden sm:inline-block sm:align-middle sm:h-screen sm:h-screen-ios","aria-hidden":"true"},"\u200B",-1),RP={class:"mt-3 text-center sm:mt-5"},MP={class:"mt-2"},FP={class:"text-sm text-gray-500"},$P={setup(i){const r=IP();function s(t){r.resolve(t),r.closeDialog()}const a=A(()=>{switch(r.size){case"sm":return"sm:max-w-sm";case"md":return"sm:max-w-md";case"lg":return"sm:max-w-lg";default:return"sm:max-w-md"}});return(t,n)=>{const e=D("BaseIcon"),o=D("base-button");return l(),N(d(ot),{as:"template",show:d(r).active},{default:g(()=>[u(d(st),{as:"div",static:"",class:"fixed inset-0 z-20 overflow-y-auto",open:d(r).active,onClose:d(r).closeDialog},{default:g(()=>[c("div",NP,[u(d(Ie),{as:"template",enter:"ease-out duration-300","enter-from":"opacity-0","enter-to":"opacity-100",leave:"ease-in duration-200","leave-from":"opacity-100","leave-to":"opacity-0"},{default:g(()=>[u(d(nt),{class:"fixed inset-0 transition-opacity bg-gray-500 bg-opacity-75"})]),_:1}),TP,u(d(Ie),{as:"template",enter:"ease-out duration-300","enter-from":"opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95","enter-to":"opacity-100 translate-y-0 sm:scale-100",leave:"ease-in duration-200","leave-from":"opacity-100 translate-y-0 sm:scale-100","leave-to":"opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"},{default:g(()=>[c("div",{class:C(["inline-block px-4 pt-5 pb-4 overflow-hidden text-left align-bottom transition-all bg-white rounded-lg shadow-xl sm:my-8 sm:align-middle sm:w-full sm:p-6 relative",d(a)])},[c("div",null,[c("div",{class:C(["flex items-center justify-center w-12 h-12 mx-auto bg-green-100 rounded-full",{"bg-green-100":d(r).variant==="primary","bg-red-100":d(r).variant==="danger"}])},[d(r).variant==="primary"?(l(),N(e,{key:0,name:"CheckIcon",class:"w-6 h-6 text-green-600"})):(l(),N(e,{key:1,name:"ExclamationIcon",class:"w-6 h-6 text-red-600","aria-hidden":"true"}))],2),c("div",RP,[u(d(Qt),{as:"h3",class:"text-lg font-medium leading-6 text-gray-900"},{default:g(()=>[q(w(d(r).title),1)]),_:1}),c("div",MP,[c("p",FP,w(d(r).message),1)])])]),c("div",{class:C(["mt-5 sm:mt-6",{"sm:grid sm:grid-cols-2 sm:gap-3 sm:grid-flow-row-dense":!d(r).hideNoButton}])},[u(o,{class:C(["justify-center",{"w-full":d(r).hideNoButton}]),variant:d(r).variant,onClick:n[0]||(n[0]=m=>s(!0))},{default:g(()=>[q(w(d(r).yesLabel),1)]),_:1},8,["variant","class"]),d(r).hideNoButton?S("",!0):(l(),N(o,{key:0,class:"justify-center",variant:"white",onClick:n[1]||(n[1]=m=>s(!1))},{default:g(()=>[q(w(d(r).noLabel),1)]),_:1}))],2)],2)]),_:1})])]),_:1},8,["open","onClose"])]),_:1},8,["show"])}}};var UP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:$P});const VP={},OP={class:"w-full text-gray-300"};function LP(i,r){return l(),_("hr",OP)}var BP=ee(VP,[["render",LP]]),qP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:BP});function KP(i){let r=K(null),s=K(null),a=K(null);return ze(()=>{rt(t=>{if(!s.value||!r.value)return;let n=s.value.el||s.value,e=r.value.el||r.value;e instanceof HTMLElement&&n instanceof HTMLElement&&(a.value=Xt(e,n,i),t(a.value.destroy))})}),[r,s,a]}const WP={class:"py-1"},ZP={props:{containerClass:{type:String,required:!1,default:""},widthClass:{type:String,default:"w-56"},positionClass:{type:String,default:"absolute z-10 right-0"},position:{type:String,default:"bottom-end"},wrapperClass:{type:String,default:"inline-block h-full text-left"},contentLoading:{type:Boolean,default:!1}},setup(i){const r=i,s=A(()=>`origin-top-right rounded-md shadow-lg bg-white ring-1 ring-black ring-opacity-5 divide-y divide-gray-100 focus:outline-none ${r.containerClass}`);let[a,t,n]=KP({placement:"bottom-end",strategy:"fixed",modifiers:[{name:"offset",options:{offset:[0,10]}}]});function e(){n.value.update()}return(o,m)=>{const p=D("BaseContentPlaceholdersBox"),k=D("BaseContentPlaceholders");return l(),_("div",{class:C(["relative",i.wrapperClass])},[i.contentLoading?(l(),N(k,{key:0,class:"disabled cursor-normal pointer-events-none"},{default:g(()=>[u(p,{rounded:!0,class:"w-14",style:{height:"42px"}})]),_:1})):(l(),N(d(aa),{key:1},{default:g(()=>[u(d(ea),{ref:(x,b)=>{b.trigger=x,J(a)?a.value=x:a=x},class:"focus:outline-none",onClick:e},{default:g(()=>[F(o.$slots,"activator")]),_:3},512),c("div",{ref:(x,b)=>{b.container=x,J(t)?t.value=x:t=x},class:C(["z-10",i.widthClass])},[u(Ee,{"enter-active-class":"transition duration-100 ease-out","enter-from-class":"scale-95 opacity-0","enter-to-class":"scale-100 opacity-100","leave-active-class":"transition duration-75 ease-in","leave-from-class":"scale-100 opacity-100","leave-to-class":"scale-95 opacity-0"},{default:g(()=>[u(d(ta),{class:C(d(s))},{default:g(()=>[c("div",WP,[F(o.$slots,"default")])]),_:3},8,["class"])]),_:3})],2)]),_:3}))],2)}}};var HP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:ZP});const YP={setup(i){return(r,s)=>(l(),N(d(sa),ia(na(r.$attrs)),{default:g(({active:a})=>[c("a",{href:"#",class:C([a?"bg-gray-100 text-gray-900":"text-gray-700","group flex items-center px-4 py-2 text-sm font-normal"])},[F(r.$slots,"default",{active:a})],2)]),_:3},16))}};var GP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:YP});const JP={class:"flex flex-col items-center justify-center mt-16"},QP={class:"flex flex-col items-center justify-center"},XP={class:"mt-2"},ej={class:"font-medium"},tj={class:"mt-2"},aj={class:"text-gray-500"},ij={class:"mt-6"},nj={props:{title:{type:String,default:String},description:{type:String,default:String}},setup(i){return(r,s)=>(l(),_("div",JP,[c("div",QP,[F(r.$slots,"default")]),c("div",XP,[c("label",ej,w(i.title),1)]),c("div",tj,[c("label",aj,w(i.description),1)]),c("div",ij,[F(r.$slots,"actions")])]))}};var sj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:nj});const oj={class:"rounded-md bg-red-50 p-4"},rj={class:"flex"},dj={class:"shrink-0"},lj={class:"ml-3"},cj={class:"text-sm font-medium text-red-800"},_j={class:"mt-2 text-sm text-red-700"},uj={role:"list",class:"list-disc pl-5 space-y-1"},mj={props:{errorTitle:{type:String,default:"There were some errors with your submission"},errors:{type:Array,default:null}},setup(i){return(r,s)=>(l(),_("div",oj,[c("div",rj,[c("div",dj,[u(d(oa),{class:"h-5 w-5 text-red-400","aria-hidden":"true"})]),c("div",lj,[c("h3",cj,w(i.errorTitle),1),c("div",_j,[c("ul",uj,[(l(!0),_(X,null,ae(i.errors,(a,t)=>(l(),_("li",{key:t},w(a),1))),128))])])])])]))}};var pj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:mj});const gj={props:{status:{type:String,required:!1,default:""}},setup(i){const r=i,s=A(()=>{switch(r.status){case"DRAFT":return"bg-yellow-300 bg-opacity-25 px-2 py-1 text-sm text-yellow-800 uppercase font-normal text-center ";case"SENT":return" bg-yellow-500 bg-opacity-25 px-2 py-1 text-sm text-yellow-900 uppercase font-normal text-center ";case"VIEWED":return"bg-blue-400 bg-opacity-25 px-2 py-1 text-sm text-blue-900 uppercase font-normal text-center";case"EXPIRED":return"bg-red-300 bg-opacity-25 px-2 py-1 text-sm text-red-800 uppercase font-normal text-center";case"ACCEPTED":return"bg-green-400 bg-opacity-25 px-2 py-1 text-sm text-green-800 uppercase font-normal text-center";case"REJECTED":return"bg-purple-300 bg-opacity-25 px-2 py-1 text-sm text-purple-800 uppercase font-normal text-center";default:return"bg-gray-500 bg-opacity-25 px-2 py-1 text-sm text-gray-900 uppercase font-normal text-center"}});return(a,t)=>(l(),_("span",{class:C(d(s))},[F(a.$slots,"default")],2))}};var fj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:gj});const vj=["multiple","name","accept"],hj={key:0,class:""},yj=["src"],bj=["onClick"],kj={key:1,class:"flex flex-col items-center"},wj={class:"text-xs leading-4 text-center text-gray-400"},xj=q(" Drag a file here or "),zj=["onClick"],Sj=q(" to choose a file "),Pj={class:"text-xs leading-4 text-center text-gray-400 mt-2"},jj={key:2,class:"flex w-full h-full border border-gray-200 rounded"},Aj=["src"],Dj={key:1,class:"flex justify-center items-center text-gray-400 flex-col space-y-2 px-2 py-4 w-full"},Cj=c("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-8 w-8",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[c("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"1.25",d:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"})],-1),Ej={key:0,class:"text-gray-600 font-medium text-sm truncate overflow-hidden w-full"},Ij={key:3,class:"flex flex-wrap w-full"},Nj=["src"],Tj={key:1,class:"flex justify-center items-center text-gray-400 flex-col space-y-2 px-2 py-4 w-full"},Rj=c("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-8 w-8",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[c("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"1.25",d:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"})],-1),Mj={key:0,class:"text-gray-600 font-medium text-sm truncate overflow-hidden w-full"},Fj=["onClick"],$j={key:4,class:"flex w-full items-center justify-center"},Uj=["src"],Vj={key:1,class:"flex justify-center items-center text-gray-400 flex-col space-y-2 px-2 py-4 w-full"},Oj=c("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-8 w-8",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[c("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"1.25",d:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"})],-1),Lj={key:0,class:"text-gray-600 font-medium text-sm truncate overflow-hidden w-full"},Bj=["onClick"],qj={props:{multiple:{type:Boolean,default:!1},avatar:{type:Boolean,default:!1},autoProcess:{type:Boolean,default:!1},uploadUrl:{type:String,default:""},preserveLocalFiles:{type:Boolean,default:!1},accept:{type:String,default:"image/*"},inputFieldName:{type:String,default:"photos"},base64:{type:Boolean,default:!1},modelValue:{type:Array,default:()=>[]},recommendedText:{type:String,default:""}},emits:["change","remove","update:modelValue"],setup(i,{emit:r}){const s=i;let a=K([]);const t=K([]),n=K(null);K(null),K(null);function e(){a.value=[],s.modelValue&&s.modelValue.length?t.value=[...s.modelValue]:t.value=[]}function o(R){return f.post(s.uploadUrl,R).then(T=>T.data).then(T=>T.map(z=>Z(M({},z),{url:`/images/${z.id}`})))}function m(R){o(R).then(T=>{a=[].concat(T)}).catch(T=>{})}function p(R){return new Promise((T,z)=>{const U=new FileReader;U.readAsDataURL(R),U.onload=()=>T(U.result),U.onerror=L=>z(L)})}function k(R,T,z){if(!T.length||(s.multiple?r("change",R,T,z):s.base64?p(T[0]).then(L=>{r("change",R,L,z,T[0])}):r("change",R,T[0],z),s.preserveLocalFiles||(t.value=[]),Array.from(Array(T.length).keys()).forEach(L=>{const Y=T[L];We.isImageFile(Y.type)?p(Y).then(me=>{t.value.push({fileObject:Y,type:Y.type,name:Y.name,image:me})}):t.value.push({fileObject:Y,type:Y.type,name:Y.name})}),r("update:modelValue",t.value),!s.autoProcess))return;const U=new FormData;Array.from(Array(T.length).keys()).forEach(L=>{U.append(R,T[L],T[L].name)}),m(U)}function x(){n.value&&n.value.click()}function b(R){t.value=[],r("remove",R)}function v(R){t.value.splice(R,1)}function E(){return new URL("/build/img/default-avatar.jpg",self.location)}return ze(()=>{e()}),ge(()=>s.modelValue,R=>{t.value=[...R]}),(R,T)=>{const z=D("BaseIcon");return l(),_("form",{enctype:"multipart/form-data",class:C(["relative flex items-center justify-center p-2 border-2 border-dashed rounded-md cursor-pointer avatar-upload border-gray-200 transition-all duration-300 ease-in-out isolate w-full hover:border-gray-300 group min-h-[100px] bg-gray-50",i.avatar?"w-32 h-32":"w-full"])},[c("input",{id:"file-upload",ref:(U,L)=>{L.inputRef=U,n.value=U},type:"file",tabindex:"-1",multiple:i.multiple,name:i.inputFieldName,accept:i.accept,class:"absolute z-10 w-full h-full opacity-0 cursor-pointer",onChange:T[0]||(T[0]=U=>k(U.target.name,U.target.files,U.target.files.length))},null,40,vj),!t.value.length&&i.avatar?(l(),_("div",hj,[c("img",{src:E(),class:"rounded",alt:"Default Avatar"},null,8,yj),c("a",{href:"#",class:"absolute z-30 bg-white rounded-full -bottom-3 -right-3 group",onClick:re(x,["prevent","stop"])},[u(z,{name:"PlusCircleIcon",class:"h-8 text-xl leading-6 text-primary-500 group-hover:text-primary-600"})],8,bj)])):t.value.length?t.value.length&&i.avatar&&!i.multiple?(l(),_("div",jj,[t.value[0].image?(l(),_("img",{key:0,for:"file-upload",src:t.value[0].image,class:"block object-cover w-full h-full rounded opacity-100",style:{animation:"fadeIn 2s ease"}},null,8,Aj)):(l(),_("div",Dj,[Cj,t.value[0].name?(l(),_("p",Ej,w(t.value[0].name),1)):S("",!0)])),c("a",{href:"#",class:"box-border absolute z-30 flex items-center justify-center w-8 h-8 bg-white border border-gray-200 rounded-full shadow-md -bottom-3 -right-3 group hover:border-gray-300",onClick:T[1]||(T[1]=re(U=>b(t.value[0]),["prevent","stop"]))},[u(z,{name:"XIcon",class:"h-4 text-xl leading-6 text-black"})])])):t.value.length&&i.multiple?(l(),_("div",Ij,[(l(!0),_(X,null,ae(t.value,(U,L)=>(l(),_("a",{key:U,href:"#",class:"block p-2 m-2 bg-white border border-gray-200 rounded hover:border-gray-500 relative max-w-md",onClick:T[2]||(T[2]=re(()=>{},["prevent"]))},[U.image?(l(),_("img",{key:0,for:"file-upload",src:U.image,class:"block object-cover w-20 h-20 opacity-100",style:{animation:"fadeIn 2s ease"}},null,8,Nj)):(l(),_("div",Tj,[Rj,U.name?(l(),_("p",Mj,w(U.name),1)):S("",!0)])),c("a",{href:"#",class:"box-border absolute z-30 flex items-center justify-center w-8 h-8 bg-white border border-gray-200 rounded-full shadow-md -bottom-3 -right-3 group hover:border-gray-300",onClick:re(Y=>v(L),["prevent","stop"])},[u(z,{name:"XIcon",class:"h-4 text-xl leading-6 text-black"})],8,Fj)]))),128))])):(l(),_("div",$j,[(l(!0),_(X,null,ae(t.value,(U,L)=>(l(),_("a",{key:U,href:"#",class:"block p-2 m-2 bg-white border border-gray-200 rounded hover:border-gray-500 relative max-w-md",onClick:T[3]||(T[3]=re(()=>{},["prevent"]))},[U.image?(l(),_("img",{key:0,for:"file-upload",src:U.image,class:"block object-contain h-20 opacity-100 min-w-[5rem]",style:{animation:"fadeIn 2s ease"}},null,8,Uj)):(l(),_("div",Vj,[Oj,U.name?(l(),_("p",Lj,w(U.name),1)):S("",!0)])),c("a",{href:"#",class:"box-border absolute z-30 flex items-center justify-center w-8 h-8 bg-white border border-gray-200 rounded-full shadow-md -bottom-3 -right-3 group hover:border-gray-300",onClick:re(Y=>v(L),["prevent","stop"])},[u(z,{name:"XIcon",class:"h-4 text-xl leading-6 text-black"})],8,Bj)]))),128))])):(l(),_("div",kj,[u(z,{name:"CloudUploadIcon",class:"h-6 mb-2 text-xl leading-6 text-gray-400"}),c("p",wj,[xj,c("a",{class:"cursor-pointer text-primary-500 hover:text-primary-600 hover:font-medium relative z-20",href:"#",onClick:re(x,["prevent","stop"])}," browse ",8,zj),Sj]),c("p",Pj,w(i.recommendedText),1)]))],2)}}};var Kj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:qj});const Wj={class:"relative z-10 p-4 md:p-8 bg-gray-200 rounded"},Zj={props:{show:{type:Boolean,default:!1},rowOnXl:{type:Boolean,default:!1}},emits:["clear"],setup(i){return(r,s)=>(l(),N(Ee,{"enter-active-class":"transition duration-500 ease-in-out","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition ease-in-out","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:g(()=>[xe(c("div",Wj,[F(r.$slots,"filter-header"),c("label",{class:"absolute text-sm leading-snug text-gray-900 cursor-pointer hover:text-gray-700 top-2.5 right-3.5",onClick:s[0]||(s[0]=a=>r.$emit("clear"))},w(r.$t("general.clear_all")),1),c("div",{class:C(["flex flex-col space-y-3",i.rowOnXl?"xl:flex-row xl:space-x-4 xl:space-y-0 xl:items-center":"lg:flex-row lg:space-x-4 lg:space-y-0 lg:items-center"])},[F(r.$slots,"default")],2)],512),[[dt,i.show]])]),_:3}))}};var Hj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Zj});const Yj={style:{"font-family":"sans-serif"}},Gj={props:{amount:{type:[Number,String],required:!0},currency:{type:Object,default:()=>null}},setup(i){const r=i,s=ra("utils"),a=_e(),t=A(()=>s.formatMoney(r.amount,r.currency||a.selectedCompanyCurrency));return(n,e)=>(l(),_("span",Yj,w(d(t)),1))}};var Jj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Gj});const Qj={viewBox:"0 0 225 50",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Xj=lt('',9),eA={id:"paint0_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},tA=["stop-color"],aA=["stop-color"],iA={id:"paint1_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},nA=["stop-color"],sA=["stop-color"],oA={id:"paint2_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},rA=["stop-color"],dA=["stop-color"],lA={id:"paint3_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},cA=["stop-color"],_A=["stop-color"],uA={id:"paint4_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},mA=["stop-color"],pA=["stop-color"],gA={id:"paint5_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},fA=["stop-color"],vA=["stop-color"],hA={id:"paint6_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},yA=["stop-color"],bA=["stop-color"],kA={id:"paint7_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},wA=["stop-color"],xA=["stop-color"],zA={id:"paint8_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},SA=["stop-color"],PA=["stop-color"],jA={props:{darkColor:{type:String,default:"rgba(var(--color-primary-500), var(--tw-text-opacity))"},lightColor:{type:String,default:"rgba(var(--color-primary-400), var(--tw-text-opacity))"}},setup(i){return(r,s)=>(l(),_("svg",Qj,[Xj,c("defs",null,[c("linearGradient",eA,[c("stop",{"stop-color":i.darkColor},null,8,tA),c("stop",{offset:"1","stop-color":i.lightColor},null,8,aA)]),c("linearGradient",iA,[c("stop",{"stop-color":i.darkColor},null,8,nA),c("stop",{offset:"1","stop-color":i.lightColor},null,8,sA)]),c("linearGradient",oA,[c("stop",{"stop-color":i.darkColor},null,8,rA),c("stop",{offset:"1","stop-color":i.lightColor},null,8,dA)]),c("linearGradient",lA,[c("stop",{"stop-color":i.darkColor},null,8,cA),c("stop",{offset:"1","stop-color":i.lightColor},null,8,_A)]),c("linearGradient",uA,[c("stop",{"stop-color":i.darkColor},null,8,mA),c("stop",{offset:"1","stop-color":i.lightColor},null,8,pA)]),c("linearGradient",gA,[c("stop",{"stop-color":i.darkColor},null,8,fA),c("stop",{offset:"1","stop-color":i.lightColor},null,8,vA)]),c("linearGradient",hA,[c("stop",{"stop-color":i.darkColor},null,8,yA),c("stop",{offset:"1","stop-color":i.lightColor},null,8,bA)]),c("linearGradient",kA,[c("stop",{"stop-color":i.darkColor},null,8,wA),c("stop",{offset:"1","stop-color":i.lightColor},null,8,xA)]),c("linearGradient",zA,[c("stop",{"stop-color":i.darkColor},null,8,SA),c("stop",{offset:"1","stop-color":i.lightColor},null,8,PA)])])]))}};const AA={class:"flex flex-col items-center justify-center h-screen h-screen-ios"},DA={class:"loader loader-white"},CA=lt('
',3),EA={props:{showBgOverlay:{default:!1,type:Boolean}},setup(i){return(r,s)=>(l(),_("div",AA,[c("div",DA,[CA,u(jA,{class:"absolute block h-auto max-w-full transform -translate-x-1/2 -translate-y-1/2 w-28 text-primary-400 top-1/2 left-1/2",alt:"Crater Logo"})])]))}};var IA=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:EA});const NA={props:{type:{type:String,default:"section-title",validator:function(i){return["section-title","heading-title"].indexOf(i)!==-1}}},setup(i){const r=i,s=A(()=>({"text-gray-900 text-lg font-medium":r.type==="heading-title","text-gray-500 uppercase text-base":r.type==="section-title"}));return(a,t)=>(l(),_("h6",{class:C(d(s))},[F(a.$slots,"default")],2))}};var TA=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:NA});const RA={props:{name:{type:String,required:!0}},setup(i){const r=K(!1);return ze(()=>{r.value=!0}),(s,a)=>r.value?(l(),N(da(d(la)[i.name]),{key:0,class:"h-5 w-5"})):S("",!0)}};var MA=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:RA});const FA={class:"rounded-md bg-yellow-50 p-4 relative"},$A={class:"flex flex-col"},UA={class:"flex"},VA={class:"shrink-0"},OA={class:"ml-3"},LA={class:"text-sm font-medium text-yellow-800"},BA={class:"mt-2 text-sm text-yellow-700"},qA={role:"list",class:"list-disc pl-5 space-y-1"},KA={key:0,class:"mt-4 ml-3"},WA={class:"-mx-2 -my-1.5 flex flex-row-reverse"},ZA=["onClick"],HA={props:{title:{type:String,default:"There were some errors with your submission"},lists:{type:Array,default:null},actions:{type:Array,default:()=>["Dismiss"]}},emits:["hide"],setup(i,{emit:r}){return(s,a)=>{const t=D("BaseIcon");return l(),_("div",FA,[u(t,{name:"XIcon",class:"h-5 w-5 text-yellow-500 absolute right-4 cursor-pointer",onClick:a[0]||(a[0]=n=>s.$emit("hide"))}),c("div",$A,[c("div",UA,[c("div",VA,[u(t,{name:"ExclamationIcon",class:"h-5 w-5 text-yellow-400","aria-hidden":"true"})]),c("div",OA,[c("h3",LA,w(i.title),1),c("div",BA,[c("ul",qA,[(l(!0),_(X,null,ae(i.lists,(n,e)=>(l(),_("li",{key:e},w(n),1))),128))])])])]),i.actions.length?(l(),_("div",KA,[c("div",WA,[(l(!0),_(X,null,ae(i.actions,(n,e)=>(l(),_("button",{key:e,type:"button",class:"bg-yellow-50 px-2 py-1.5 rounded-md text-sm font-medium text-yellow-800 hover:bg-yellow-100 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-offset-yellow-50 focus:ring-yellow-600 mr-3",onClick:o=>s.$emit(`${n}`)},w(n),9,ZA))),128))])])):S("",!0)])])}}};var YA=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:HA});const GA={key:0,class:"absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none"},JA=c("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),QA=c("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1),XA=[JA,QA],eD={key:1,class:"absolute inset-y-0 left-0 flex items-center pl-3"},tD={key:2,class:"inline-flex items-center px-3 text-gray-500 border border-r-0 border-gray-200 rounded-l-md bg-gray-50 sm:text-sm"},aD={key:3,class:"absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none"},iD={class:"text-gray-500 sm:text-sm"},nD=["type","value","disabled"],sD={key:4,class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none"},oD=c("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),rD=c("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1),dD=[oD,rD],lD={key:5,class:"absolute inset-y-0 right-0 flex items-center pr-3"},cD={props:{contentLoading:{type:Boolean,default:!1},type:{type:[Number,String],default:"text"},modelValue:{type:[String,Number],default:""},loading:{type:Boolean,default:!1},loadingPosition:{type:String,default:"left"},addon:{type:String,default:null},inlineAddon:{type:String,default:""},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},containerClass:{type:String,default:""},contentLoadClass:{type:String,default:""},defaultInputClass:{type:String,default:"font-base block w-full sm:text-sm border-gray-200 rounded-md text-black"},iconLeftClass:{type:String,default:"h-5 w-5 text-gray-400"},iconRightClass:{type:String,default:"h-5 w-5 text-gray-400"},modelModifiers:{default:()=>({})}},emits:["update:modelValue"],setup(i,{emit:r}){const s=i;K(!1);const a=pe(),t=A(()=>!!a.left||s.loading&&s.loadingPosition==="left"),n=A(()=>!!a.right||s.loading&&s.loadingPosition==="right"),e=A(()=>t.value&&n.value?"px-10":t.value?"pl-10":n.value?"pr-10":""),o=A(()=>s.addon?"flex-1 min-w-0 block w-full px-3 py-2 !rounded-none !rounded-r-md":s.inlineAddon?"pl-7":""),m=A(()=>s.invalid?"border-red-500 ring-red-500 focus:ring-red-500 focus:border-red-500":"focus:ring-primary-400 focus:border-primary-400"),p=A(()=>s.disabled?"border-gray-100 bg-gray-100 !text-gray-400 ring-gray-200 focus:ring-gray-200 focus:border-gray-100":""),k=A(()=>{let b=`${s.containerClass} `;return s.addon?`${s.containerClass} flex`:b});function x(b){let v=b.target.value;s.modelModifiers.uppercase&&(v=v.toUpperCase()),r("update:modelValue",v)}return(b,v)=>{const E=D("BaseContentPlaceholdersBox"),R=D("BaseContentPlaceholders");return i.contentLoading?(l(),N(R,{key:0},{default:g(()=>[u(E,{rounded:!0,class:C(`w-full ${i.contentLoadClass}`),style:{height:"38px"}},null,8,["class"])]),_:1})):(l(),_("div",{key:1,class:C([[i.containerClass,d(k)],"relative rounded-md shadow-sm font-base"])},[i.loading&&i.loadingPosition==="left"?(l(),_("div",GA,[(l(),_("svg",{class:C(["animate-spin !text-primary-500",[i.iconLeftClass]]),xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},XA,2))])):d(t)?(l(),_("div",eD,[F(b.$slots,"left",{class:C(i.iconLeftClass)})])):S("",!0),i.addon?(l(),_("span",tD,w(i.addon),1)):S("",!0),i.inlineAddon?(l(),_("div",aD,[c("span",iD,w(i.inlineAddon),1)])):S("",!0),c("input",le(b.$attrs,{type:i.type,value:i.modelValue,disabled:i.disabled,class:[i.defaultInputClass,d(e),d(o),d(m),d(p)],onInput:x}),null,16,nD),i.loading&&i.loadingPosition==="right"?(l(),_("div",sD,[(l(),_("svg",{class:C(["animate-spin !text-primary-500",[i.iconRightClass]]),xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},dD,2))])):S("",!0),d(n)?(l(),_("div",lD,[F(b.$slots,"right",{class:C(i.iconRightClass)})])):S("",!0)],2))}}};var _D=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:cD});const uD={props:{layout:{type:String,default:"two-column"}},setup(i){const r=i,s=A(()=>r.layout==="two-column"?"grid gap-y-6 gap-x-4 grid-cols-1 md:grid-cols-2":"grid gap-y-6 gap-x-4 grid-cols-1");return(a,t)=>(l(),_("div",{class:C(d(s))},[F(a.$slots,"default")],2))}};var mD=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:uD});const pD={class:"text-sm text-red-500"},gD={key:0,class:"text-gray-500 text-xs mt-1 font-light"},fD={key:1,class:"block mt-0.5 text-sm text-red-500"},vD={props:{contentLoading:{type:Boolean,default:!1},contentLoadClass:{type:String,default:"w-16 h-5"},label:{type:String,default:""},variant:{type:String,default:"vertical"},error:{type:[String,Boolean],default:null},required:{type:Boolean,default:!1},tooltip:{type:String,default:null,required:!1},helpText:{type:String,default:null,required:!1}},setup(i){const r=i,s=A(()=>r.variant==="horizontal"?"grid md:grid-cols-12 items-center":""),a=A(()=>r.variant==="horizontal"?"relative pr-0 pt-1 mr-3 text-sm md:col-span-4 md:text-right mb-1 md:mb-0":""),t=A(()=>r.variant==="horizontal"?"md:col-span-8 md:col-start-5 md:col-ends-12":"flex flex-col mt-1"),n=pe(),e=A(()=>!!n.labelRight);return(o,m)=>{const p=D("BaseContentPlaceholdersText"),k=D("BaseContentPlaceholders"),x=D("BaseIcon"),b=et("tooltip");return l(),_("div",{class:C([d(s),"relative w-full text-left"])},[i.contentLoading?(l(),N(k,{key:0},{default:g(()=>[u(p,{lines:1,class:C(i.contentLoadClass)},null,8,["class"])]),_:1})):i.label?(l(),_("label",{key:1,class:C([d(a),"flex text-sm not-italic items-center font-medium text-gray-800 whitespace-nowrap justify-between"])},[c("div",null,[q(w(i.label)+" ",1),xe(c("span",pD," * ",512),[[dt,i.required]])]),d(e)?F(o.$slots,"labelRight",{key:0}):S("",!0),i.tooltip?xe((l(),N(x,{key:1,name:"InformationCircleIcon",class:"h-4 text-gray-400 cursor-pointer hover:text-gray-600"},null,512)),[[b,{content:i.tooltip}]]):S("",!0)],2)):S("",!0),c("div",{class:C(d(t))},[F(o.$slots,"default"),i.helpText?(l(),_("span",gD,w(i.helpText),1)):S("",!0),i.error?(l(),_("span",fD,w(i.error),1)):S("",!0)],2)],2)}}};var hD=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:vD});const yD={props:{status:{type:String,required:!1,default:""}},setup(i){return{badgeColorClasses:A(()=>{switch(i.status){case"DRAFT":return"bg-yellow-300 bg-opacity-25 px-2 py-1 text-sm text-yellow-800 uppercase font-normal text-center";case"SENT":return" bg-yellow-500 bg-opacity-25 px-2 py-1 text-sm text-yellow-900 uppercase font-normal text-center ";case"VIEWED":return"bg-blue-400 bg-opacity-25 px-2 py-1 text-sm text-blue-900 uppercase font-normal text-center";case"COMPLETED":return"bg-green-500 bg-opacity-25 px-2 py-1 text-sm text-green-900 uppercase font-normal text-center";case"DUE":return"bg-yellow-500 bg-opacity-25 px-2 py-1 text-sm text-yellow-900 uppercase font-normal text-center";case"OVERDUE":return"bg-red-300 bg-opacity-50 px-2 py-1 text-sm text-red-900 uppercase font-normal text-center";case"UNPAID":return"bg-yellow-500 bg-opacity-25 px-2 py-1 text-sm text-yellow-900 uppercase font-normal text-center";case"PARTIALLY_PAID":return"bg-blue-400 bg-opacity-25 px-2 py-1 text-sm text-blue-900 uppercase font-normal text-center";case"PAID":return"bg-green-500 bg-opacity-25 px-2 py-1 text-sm text-green-900 uppercase font-normal text-center";default:return"bg-gray-500 bg-opacity-25 px-2 py-1 text-sm text-gray-900 uppercase font-normal text-center"}})}}};function bD(i,r,s,a,t,n){return l(),_("span",{class:C(a.badgeColorClasses)},[F(i.$slots,"default")],2)}var kD=ee(yD,[["render",bD]]),wD=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:kD});const xD={class:"flex-1 text-sm"},zD={key:0,class:"relative flex items-center h-10 pl-2 bg-gray-200 border border-gray-200 border-solid rounded"},SD={class:"w-full pt-1 text-xs text-light"},PD={key:0},jD={class:"text-red-600"},AD={props:{contentLoading:{type:Boolean,default:!1},type:{type:String,default:null},item:{type:Object,required:!0},index:{type:Number,default:0},invalid:{type:Boolean,required:!1,default:!1},invalidDescription:{type:Boolean,required:!1,default:!1},taxPerItem:{type:String,default:""},taxes:{type:Array,default:null},store:{type:Object,default:null},storeProp:{type:String,default:""}},emits:["search","select"],setup(i,{emit:r}){const s=i,a=Fe();He(),$e();const t=je(),n=Pe();fe();const{t:e}=Se(),o=K(null);K(!1);let m=Ve(M({},s.item));Object.assign(m,s.item),A(()=>0);const p=A({get:()=>s.item.description,set:v=>{s.store[s.storeProp].items[s.index].description=v}});async function k(v){return(await a.fetchItems({search:v})).data.data}function x(){t.openModal({title:e("items.add_item"),componentName:"ItemModal",refreshData:v=>r("select",v),data:{taxPerItem:s.taxPerItem,taxes:s.taxes,itemIndex:s.index,store:s.store,storeProps:s.storeProp}})}function b(v){s.store.deselectItem(v)}return(v,E)=>{const R=D("BaseIcon"),T=D("BaseSelectAction"),z=D("BaseMultiselect"),U=D("BaseTextarea");return l(),_("div",xD,[i.item.item_id?(l(),_("div",zD,[q(w(i.item.name)+" ",1),c("span",{class:"absolute text-gray-400 cursor-pointer top-[8px] right-[10px]",onClick:E[0]||(E[0]=L=>b(i.index))},[u(R,{name:"XCircleIcon"})])])):(l(),N(z,{key:1,modelValue:o.value,"onUpdate:modelValue":[E[1]||(E[1]=L=>o.value=L),E[2]||(E[2]=L=>v.$emit("select",L))],"content-loading":i.contentLoading,"value-prop":"id","track-by":"id",invalid:i.invalid,"preserve-search":"","initial-search":d(m).name,label:"name",filterResults:!1,"resolve-on-load":"",delay:500,searchable:"",options:k,object:"",onSearchChange:E[3]||(E[3]=L=>v.$emit("search",L))},{action:g(()=>[d(n).hasAbilities(d(O).CREATE_ITEM)?(l(),N(T,{key:0,onClick:x},{default:g(()=>[u(R,{name:"PlusCircleIcon",class:"h-4 mr-2 -ml-2 text-center text-primary-400"}),q(" "+w(v.$t("general.add_new_item")),1)]),_:1})):S("",!0)]),_:1},8,["modelValue","content-loading","invalid","initial-search"])),c("div",SD,[u(U,{modelValue:d(p),"onUpdate:modelValue":E[4]||(E[4]=L=>J(p)?p.value=L:null),"content-loading":i.contentLoading,autosize:!0,class:"text-xs",borderless:!0,placeholder:v.$t("estimates.item.type_item_description"),invalid:i.invalidDescription},null,8,["modelValue","content-loading","placeholder","invalid"]),i.invalidDescription?(l(),_("div",PD,[c("span",jD,w(v.$tc("validation.description_maxlength")),1)])):S("",!0)])])}}};var DD=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:AD});const CD={},ED={class:"text-sm not-italic font-medium leading-5 text-primary-800"};function ID(i,r){return l(),_("label",ED,[F(i.$slots,"default")])}var ND=ee(CD,[["render",ID]]),TD=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:ND});const RD={class:"flex items-end justify-center min-h-screen min-h-screen-ios px-4 text-center sm:block sm:px-2"},MD=c("span",{class:"hidden sm:inline-block sm:align-middle sm:h-screen sm:h-screen-ios","aria-hidden":"true"},"\u200B",-1),FD={key:0,class:"flex items-center justify-between px-6 py-4 text-lg font-medium text-black border-b border-gray-200 border-solid"},$D={props:{show:{type:Boolean,default:!1}},emits:["close","open"],setup(i,{emit:r}){const s=i,a=pe(),t=je();rt(()=>{s.show&&r("open",s.show)});const n=A(()=>{switch(t.size){case"sm":return"sm:max-w-2xl w-full";case"md":return"sm:max-w-4xl w-full";case"lg":return"sm:max-w-6xl w-full";default:return"sm:max-w-2xl w-full"}}),e=A(()=>!!a.header);return(o,m)=>(l(),N(ca,{to:"body"},[u(d(ot),{appear:"",as:"template",show:i.show},{default:g(()=>[u(d(st),{as:"div",static:"",class:"fixed inset-0 z-20 overflow-y-auto",open:i.show,onClose:m[0]||(m[0]=p=>o.$emit("close"))},{default:g(()=>[c("div",RD,[u(d(Ie),{as:"template",enter:"ease-out duration-300","enter-from":"opacity-0","enter-to":"opacity-100",leave:"ease-in duration-200","leave-from":"opacity-100","leave-to":"opacity-0"},{default:g(()=>[u(d(nt),{class:"fixed inset-0 transition-opacity bg-gray-700 bg-opacity-25"})]),_:1}),MD,u(d(Ie),{as:"template",enter:"ease-out duration-300","enter-from":"opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95","enter-to":"opacity-100 translate-y-0 sm:scale-100",leave:"ease-in duration-200","leave-from":"opacity-100 translate-y-0 sm:scale-100","leave-to":"opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"},{default:g(()=>[c("div",{class:C(`inline-block + align-middle + bg-white + rounded-lg + text-left + overflow-hidden + relative + shadow-xl + transition-all + my-4 + ${d(n)} + sm:w-full + border-t-8 border-solid rounded shadow-xl border-primary-500`)},[d(e)?(l(),_("div",FD,[F(o.$slots,"header")])):S("",!0),F(o.$slots,"default"),F(o.$slots,"footer")],2)]),_:3})])]),_:3},8,["open"])]),_:3},8,["show"])]))}};var UD=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:$D});const VD={props:{contentLoading:{type:Boolean,default:!1},modelValue:{type:[String,Number],required:!0,default:""},invalid:{type:Boolean,default:!1},inputClass:{type:String,default:"font-base block w-full sm:text-sm border-gray-200 rounded-md text-black"},disabled:{type:Boolean,default:!1},percent:{type:Boolean,default:!1},currency:{type:Object,default:null}},emits:["update:modelValue"],setup(i,{emit:r}){const s=i;let a=_a;const t=_e();let n=!1;const e=A({get:()=>s.modelValue,set:p=>{if(!n){n=!0;return}r("update:modelValue",p)}}),o=A(()=>{const p=s.currency?s.currency:t.selectedCompanyCurrency;return{decimal:p.decimal_separator,thousands:p.thousand_separator,prefix:p.symbol+" ",precision:p.precision,masked:!1}}),m=A(()=>s.invalid?"border-red-500 ring-red-500 focus:ring-red-500 focus:border-red-500":"focus:ring-primary-400 focus:border-primary-400");return(p,k)=>{const x=D("BaseContentPlaceholdersBox"),b=D("BaseContentPlaceholders");return i.contentLoading?(l(),N(b,{key:0},{default:g(()=>[u(x,{rounded:!0,class:"w-full",style:{height:"38px"}})]),_:1})):(l(),N(d(a),le({key:1,modelValue:d(e),"onUpdate:modelValue":k[0]||(k[0]=v=>J(e)?e.value=v:null)},d(o),{class:[i.inputClass,d(m)],disabled:i.disabled}),null,16,["modelValue","class","disabled"]))}}};var OD=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:VD});const LD={props:{sucess:{type:Boolean,default:!1}},setup(i){return(r,s)=>(l(),_("span",{class:C([i.sucess?"bg-green-100 text-green-700 ":"bg-red-100 text-red-700","px-2 py-1 text-sm font-normal text-center uppercase"])},[F(r.$slots,"default")],2))}};var BD=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:LD});const qD={},KD={class:"flex-1 p-4 md:p-8 flex flex-col"};function WD(i,r){return l(),_("div",KD,[F(i.$slots,"default")])}var ZD=ee(qD,[["render",WD]]),HD=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:ZD});const YD={class:"flex flex-wrap justify-between"},GD={class:"text-2xl font-bold text-left text-black"},JD={class:"flex items-center"},QD={props:{title:{type:[String],default:"",required:!0}},setup(i){return(r,s)=>(l(),_("div",YD,[c("div",null,[c("h3",GD,w(i.title),1),F(r.$slots,"default")]),c("div",JD,[F(r.$slots,"actions")])]))}};var XD=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:QD});const eC={props:{status:{type:String,required:!1,default:""},defaultClass:{type:String,default:"px-1 py-0.5 text-xs"}},setup(i){return{badgeColorClasses:A(()=>{switch(i.status){case"PAID":return"bg-primary-300 bg-opacity-25 text-primary-800 uppercase font-normal text-center";case"UNPAID":return" bg-yellow-500 bg-opacity-25 text-yellow-900 uppercase font-normal text-center ";case"PARTIALLY_PAID":return"bg-blue-400 bg-opacity-25 text-blue-900 uppercase font-normal text-center";default:return"bg-gray-500 bg-opacity-25 text-gray-900 uppercase font-normal text-center"}})}}};function tC(i,r,s,a,t,n){return l(),_("span",{class:C([[a.badgeColorClasses,s.defaultClass],""])},[F(i.$slots,"default")],2)}var aC=ee(eC,[["render",tC]]),iC=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:aC});const nC=q(" Privacy setting "),sC={class:"-space-y-px rounded-md"},oC={class:"relative flex cursor-pointer focus:outline-none"},rC=c("span",{class:"rounded-full bg-white w-1.5 h-1.5"},null,-1),dC=[rC],lC={class:"flex flex-col ml-3"},cC={props:{id:{type:[String,Number],required:!1,default:()=>`radio_${Math.random().toString(36).substr(2,9)}`},label:{type:String,default:""},modelValue:{type:[String,Number],default:""},value:{type:[String,Number],default:""},name:{type:[String,Number],default:""},checkedStateClass:{type:String,default:"bg-primary-600"},unCheckedStateClass:{type:String,default:"bg-white "},optionGroupActiveStateClass:{type:String,default:"ring-2 ring-offset-2 ring-primary-500"},checkedStateLabelClass:{type:String,default:"text-primary-900 "},unCheckedStateLabelClass:{type:String,default:"text-gray-900"},optionGroupClass:{type:String,default:"h-4 w-4 mt-0.5 cursor-pointer rounded-full border flex items-center justify-center"},optionGroupLabelClass:{type:String,default:"block text-sm font-light"}},emits:["update:modelValue"],setup(i,{emit:r}){const s=i,a=A({get:()=>s.modelValue,set:t=>r("update:modelValue",t)});return(t,n)=>(l(),N(d(ma),{modelValue:d(a),"onUpdate:modelValue":n[0]||(n[0]=e=>J(a)?a.value=e:null)},{default:g(()=>[u(d(ct),{class:"sr-only"},{default:g(()=>[nC]),_:1}),c("div",sC,[u(d(ua),le({id:i.id,as:"template",value:i.value,name:i.name},t.$attrs),{default:g(({checked:e,active:o})=>[c("div",oC,[c("span",{class:C([e?i.checkedStateClass:i.unCheckedStateClass,o?i.optionGroupActiveStateClass:"",i.optionGroupClass]),"aria-hidden":"true"},dC,2),c("div",lC,[u(d(ct),{as:"span",class:C([e?i.checkedStateLabelClass:i.unCheckedStateLabelClass,i.optionGroupLabelClass])},{default:g(()=>[q(w(i.label),1)]),_:2},1032,["class"])])])]),_:1},16,["id","value","name"])])]),_:1},8,["modelValue"]))}};var _C=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:cC});const uC={name:"StarsRating",components:{},directives:{},props:{config:{type:Object,default:null},rating:{type:[Number],default:0}},data:function(){return{stars:[],emptyStar:0,fullStar:1,totalStars:5,isIndicatorActive:!1,style:{fullStarColor:"#F1C644",emptyStarColor:"#D4D4D4",starWidth:20,starHeight:20}}},computed:{getStarPoints:function(){let i=this.style.starWidth/2,r=this.style.starHeight/2,s=5,a=this.style.starWidth/s,n=a*2.5;return this.calcStarPoints(i,r,s,a,n)}},created(){this.initStars(),this.setStars(),this.setConfigData()},methods:{calcStarPoints(i,r,s,a,t){let n=Math.PI/s,e=60,o=s*2,m="";for(let p=0;p(l(),_("div",{key:o,title:s.rating,class:"star-container"},[(l(),_("svg",{style:De([{fill:`url(#gradient${e.raw})`},{width:i.style.starWidth},{height:i.style.starHeight}]),class:"star-svg"},[c("polygon",{points:n.getStarPoints,style:{"fill-rule":"nonzero"}},null,8,gC),c("defs",null,[c("linearGradient",{id:`gradient${e.raw}`},[c("stop",{id:"stop1",offset:e.percent,"stop-color":n.getFullFillColor(e),"stop-opacity":"1"},null,8,vC),c("stop",{id:"stop2",offset:e.percent,"stop-color":n.getFullFillColor(e),"stop-opacity":"0"},null,8,hC),c("stop",{id:"stop3",offset:e.percent,"stop-color":i.style.emptyStarColor,"stop-opacity":"1"},null,8,yC),c("stop",{id:"stop4","stop-color":i.style.emptyStarColor,offset:"100%","stop-opacity":"1"},null,8,bC)],8,fC)])],4))],8,pC))),128)),i.isIndicatorActive?(l(),_("div",kC,w(s.rating),1)):S("",!0)])}var xC=ee(uC,[["render",wC],["__scopeId","data-v-52311750"]]),zC=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:xC});const SC={props:{status:{type:String,required:!1,default:""}},setup(i){return{badgeColorClasses:A(()=>{switch(i.status){case"COMPLETED":return"bg-green-500 bg-opacity-25 px-2 py-1 text-sm text-green-900 uppercase font-normal text-center";case"ON_HOLD":return"bg-yellow-500 bg-opacity-25 px-2 py-1 text-sm text-yellow-900 uppercase font-normal text-center";case"ACTIVE":return"bg-blue-400 bg-opacity-25 px-2 py-1 text-sm text-blue-900 uppercase font-normal text-center";default:return"bg-gray-500 bg-opacity-25 px-2 py-1 text-sm text-gray-900 uppercase font-normal text-center"}})}}};function PC(i,r,s,a,t,n){return l(),_("span",{class:C(a.badgeColorClasses)},[F(i.$slots,"default")],2)}var jC=ee(SC,[["render",PC]]),AC=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:jC});const DC={},CC={class:"flex flex-col"},EC={class:"-my-2 overflow-x-auto sm:-mx-6 lg:-mx-8"},IC={class:"py-2 align-middle inline-block min-w-full sm:px-4 lg:px-6"},NC={class:"overflow-hidden sm:px-2 lg:p-2"};function TC(i,r){return l(),_("div",CC,[c("div",EC,[c("div",IC,[c("div",NC,[F(i.$slots,"default")])])])])}var RC=ee(DC,[["render",TC]]),MC=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:RC});const FC={},$C={class:"flex items-center justify-center w-full px-6 py-2 text-sm bg-gray-200 cursor-pointer text-primary-400"};function UC(i,r){return l(),_("div",$C,[F(i.$slots,"default")])}var VC=ee(FC,[["render",UC]]),OC=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:VC});const LC={class:"relative"},BC={key:0,class:"block truncate"},qC={key:1,class:"block text-gray-400 truncate"},KC={key:2,class:"block text-gray-400 truncate"},WC={class:"absolute inset-y-0 right-0 flex items-center pr-2 pointer-events-none"},ZC={props:{contentLoading:{type:Boolean,default:!1},modelValue:{type:[String,Number,Boolean,Object,Array],default:""},options:{type:Array,required:!0},label:{type:String,default:""},placeholder:{type:String,default:""},labelKey:{type:[String],default:"label"},valueProp:{type:String,default:null},multiple:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(i,{emit:r}){const s=i;let a=K(s.modelValue);function t(e){return typeof e=="object"&&e!==null}function n(e){return t(e)?e[s.labelKey]:e}return ge(()=>s.modelValue,()=>{s.valueProp&&s.options.length?a.value=s.options.find(e=>{if(e[s.valueProp])return e[s.valueProp]===s.modelValue}):a.value=s.modelValue}),ge(a,e=>{s.valueProp?r("update:modelValue",e[s.valueProp]):r("update:modelValue",e)}),(e,o)=>{const m=D("BaseContentPlaceholdersBox"),p=D("BaseContentPlaceholders"),k=D("BaseIcon");return i.contentLoading?(l(),N(p,{key:0},{default:g(()=>[u(m,{rounded:!0,class:"w-full h-10"})]),_:1})):(l(),N(d(ha),le({key:1,modelValue:d(a),"onUpdate:modelValue":o[0]||(o[0]=x=>J(a)?a.value=x:a=x),as:"div"},M({},e.$attrs)),{default:g(()=>[i.label?(l(),N(d(pa),{key:0,class:"block text-sm not-italic font-medium text-gray-800 mb-0.5"},{default:g(()=>[q(w(i.label),1)]),_:1})):S("",!0),c("div",LC,[u(d(ga),{class:"relative w-full py-2 pl-3 pr-10 text-left bg-white border border-gray-200 rounded-md shadow-sm cursor-default focus:outline-none focus:ring-1 focus:ring-primary-500 focus:border-primary-500 sm:text-sm"},{default:g(()=>[n(d(a))?(l(),_("span",BC,w(n(d(a))),1)):i.placeholder?(l(),_("span",qC,w(i.placeholder),1)):(l(),_("span",KC," Please select an option ")),c("span",WC,[u(k,{name:"SelectorIcon",class:"text-gray-400","aria-hidden":"true"})])]),_:1}),u(Ee,{"leave-active-class":"transition duration-100 ease-in","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:g(()=>[u(d(fa),{class:"absolute z-10 w-full py-1 mt-1 overflow-auto text-base bg-white rounded-md shadow-lg max-h-60 ring-1 ring-black ring-opacity-5 focus:outline-none sm:text-sm"},{default:g(()=>[(l(!0),_(X,null,ae(i.options,x=>(l(),N(d(va),{key:x.id,value:x,as:"template"},{default:g(({active:b,selected:v})=>[c("li",{class:C([b?"text-white bg-primary-600":"text-gray-900","cursor-default select-none relative py-2 pl-3 pr-9"])},[c("span",{class:C([v?"font-semibold":"font-normal","block truncate"])},w(n(x)),3),v?(l(),_("span",{key:0,class:C([b?"text-white":"text-primary-600","absolute inset-y-0 right-0 flex items-center pr-4"])},[u(k,{name:"CheckIcon","aria-hidden":"true"})],2)):S("",!0)],2)]),_:2},1032,["value"]))),128)),F(e.$slots,"default")]),_:3})]),_:3})])]),_:3},16,["modelValue"]))}}};var HC=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:ZC});const YC={class:"flex flex-wrap justify-between lg:flex-nowrap mb-5"},GC={class:"font-medium text-lg text-left"},JC={class:"mt-2 text-sm leading-snug text-left text-gray-500 max-w-[680px]"},QC={class:"mt-4 lg:mt-0 lg:ml-2"},XC={props:{title:{type:String,required:!0},description:{type:String,required:!0}},setup(i){return(r,s)=>{const a=D("BaseCard");return l(),N(a,null,{default:g(()=>[c("div",YC,[c("div",null,[c("h6",GC,w(i.title),1),c("p",JC,w(i.description),1)]),c("div",QC,[F(r.$slots,"action")])]),F(r.$slots,"default")]),_:3})}}};var eE=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:XC});const tE={},aE={class:"animate-spin",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},iE=c("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),nE=c("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1),sE=[iE,nE];function oE(i,r){return l(),_("svg",aE,sE)}var rE=ee(tE,[["render",oE]]),dE=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:rE});const lE={class:"flex flex-row items-start"},cE={props:{labelLeft:{type:String,default:""},labelRight:{type:String,default:""},modelValue:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(i,{emit:r}){const s=i,a=A({get:()=>s.modelValue,set:t=>r("update:modelValue",t)});return(t,n)=>(l(),N(d(ut),null,{default:g(()=>[c("div",lE,[i.labelLeft?(l(),N(d(Oe),{key:0,class:"mr-4 cursor-pointer"},{default:g(()=>[q(w(i.labelLeft),1)]),_:1})):S("",!0),u(d(_t),le({modelValue:d(a),"onUpdate:modelValue":n[0]||(n[0]=e=>J(a)?a.value=e:null),class:[d(a)?"bg-primary-500":"bg-gray-300","relative inline-flex items-center h-6 transition-colors rounded-full w-11 focus:outline-none focus:ring-primary-500"]},t.$attrs),{default:g(()=>[c("span",{class:C([d(a)?"translate-x-6":"translate-x-1","inline-block w-4 h-4 transition-transform bg-white rounded-full"])},null,2)]),_:1},16,["modelValue","class"]),i.labelRight?(l(),N(d(Oe),{key:1,class:"ml-4 cursor-pointer"},{default:g(()=>[q(w(i.labelRight),1)]),_:1})):S("",!0)])]),_:1}))}};var _E=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:cE});const uE={class:"flex flex-col"},mE={props:{title:{type:String,required:!0},description:{type:String,default:""},modelValue:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(i,{emit:r}){function s(a){r("update:modelValue",a)}return(a,t)=>(l(),N(d(ut),{as:"li",class:"py-4 flex items-center justify-between"},{default:g(()=>[c("div",uE,[u(d(Oe),{as:"p",class:"p-0 mb-1 text-sm leading-snug text-black font-medium",passive:""},{default:g(()=>[q(w(i.title),1)]),_:1}),u(d(ya),{class:"text-sm text-gray-500"},{default:g(()=>[q(w(i.description),1)]),_:1})]),u(d(_t),{disabled:i.disabled,"model-value":i.modelValue,class:C([i.modelValue?"bg-primary-500":"bg-gray-200","ml-4 relative inline-flex shrink-0 h-6 w-11 border-2 border-transparent rounded-full cursor-pointer transition-colors ease-in-out duration-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-500"]),"onUpdate:modelValue":s},{default:g(()=>[c("span",{"aria-hidden":"true",class:C([i.modelValue?"translate-x-5":"translate-x-0","inline-block h-5 w-5 rounded-full bg-white shadow ring-0 transition ease-in-out duration-200"])},null,2)]),_:1},8,["disabled","model-value","class"])]),_:1}))}};var pE=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:mE});const gE={props:{title:{type:[String,Number],default:"Tab"},count:{type:[String,Number],default:""},countVariant:{type:[String,Number],default:""},tabPanelContainer:{type:String,default:"py-4 mt-px"}},setup(i){return(r,s)=>(l(),N(d(ba),{class:C([i.tabPanelContainer,"focus:outline-none"])},{default:g(()=>[F(r.$slots,"default")]),_:3},8,["class"]))}};var fE=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:gE});const vE={props:{defaultIndex:{type:Number,default:0},filter:{type:String,default:null}},emits:["change"],setup(i,{emit:r}){const s=pe(),a=A(()=>s.default().map(n=>n.props));function t(n){r("change",a.value[n])}return(n,e)=>{const o=D("BaseBadge");return l(),_("div",null,[u(d(za),{"default-index":i.defaultIndex,onChange:t},{default:g(()=>[u(d(ka),{class:C(["flex border-b border-grey-light","relative overflow-x-auto overflow-y-hidden","lg:pb-0 lg:ml-0"])},{default:g(()=>[(l(!0),_(X,null,ae(d(a),(m,p)=>(l(),N(d(wa),{key:p,as:"template"},{default:g(({selected:k})=>[c("button",{class:C(["px-8 py-2 text-sm leading-5 font-medium flex items-center relative border-b-2 mt-4 focus:outline-none whitespace-nowrap",k?" border-primary-400 text-black font-medium":"border-transparent text-gray-500 hover:text-gray-700 hover:border-gray-300"])},[q(w(m.title)+" ",1),m.count?(l(),N(o,{key:0,class:"!rounded-full overflow-hidden ml-2",variant:m["count-variant"],"default-class":"flex items-center justify-center w-5 h-5 p-1 rounded-full text-medium"},{default:g(()=>[q(w(m.count),1)]),_:2},1032,["variant"])):S("",!0)],2)]),_:2},1024))),128))]),_:1}),F(n.$slots,"before-tabs"),u(d(xa),null,{default:g(()=>[F(n.$slots,"default")]),_:3})]),_:3},8,["default-index"])])}}};var hE=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:vE});const yE={props:{tag:{type:String,default:"div"},text:{type:String,default:""},length:{type:Number,default:0}},setup(i){const r=i,s=A(()=>r.text.length{const n=D("BaseCustomTag");return l(),N(n,{tag:i.tag,title:i.text},{default:g(()=>[q(w(d(s)),1)]),_:1},8,["tag","title"])}}};var bE=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:yE});const kE=["value","disabled"],wE={props:{contentLoading:{type:Boolean,default:!1},row:{type:Number,default:null},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},modelValue:{type:[String,Number],default:""},defaultInputClass:{type:String,default:"box-border w-full px-3 py-2 text-sm not-italic font-normal leading-snug text-left text-black placeholder-gray-400 bg-white border border-gray-200 border-solid rounded outline-none"},autosize:{type:Boolean,default:!1},borderless:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(i,{emit:r}){const s=i,a=K(null),t=A(()=>s.invalid&&!s.borderless?"border-red-400 ring-red-400 focus:ring-red-400 focus:border-red-400":s.borderless?"border-none outline-none focus:ring-primary-400 focus:border focus:border-primary-400":"focus:ring-primary-400 focus:border-primary-400"),n=A(()=>{switch(s.row){case 2:return"56";case 4:return"94";default:return"56"}});function e(o){r("update:modelValue",o.target.value),s.autosize&&(o.target.style.height="auto",o.target.style.height=`${o.target.scrollHeight}px`)}return ze(()=>{a.value&&s.autosize&&(a.value.style.height=a.value.scrollHeight+"px",a.value.style.overflow&&a.value.style.overflow.y&&(a.value.style.overflow.y="hidden"),a.value.style.resize="none")}),(o,m)=>{const p=D("BaseContentPlaceholdersBox"),k=D("BaseContentPlaceholders");return i.contentLoading?(l(),N(k,{key:0},{default:g(()=>[u(p,{rounded:!0,class:"w-full",style:De(`height: ${d(n)}px`)},null,8,["style"])]),_:1})):(l(),_("textarea",le({key:1},o.$attrs,{ref:(x,b)=>{b.textarea=x,a.value=x},value:i.modelValue,class:[i.defaultInputClass,d(t)],disabled:i.disabled,onInput:e}),null,16,kE))}}};var xE=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:wE});const zE=c("path",{"fill-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm1-12a1 1 0 10-2 0v4a1 1 0 00.293.707l2.828 2.829a1 1 0 101.415-1.415L11 9.586V6z","clip-rule":"evenodd"},null,-1),SE=[zE],PE={props:{modelValue:{type:[String,Date],default:()=>moment(new Date)},contentLoading:{type:Boolean,default:!1},placeholder:{type:String,default:null},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},containerClass:{type:String,default:""},clockIcon:{type:Boolean,default:!0},defaultInputClass:{type:String,default:"font-base pl-8 py-2 outline-none focus:ring-primary-400 focus:outline-none focus:border-primary-400 block w-full sm:text-sm border-gray-300 rounded-md text-black"}},emits:["update:modelValue"],setup(i,{emit:r}){const s=i,a=K(null),t=pe();let n=Ve({enableTime:!0,noCalendar:!0,dateFormat:"H:i",time_24hr:!0});const e=A({get:()=>s.modelValue,set:b=>r("update:modelValue",b)}),o=A(()=>!!t.icon);function m(b){a.value.fp.open()}const p=A(()=>`${s.containerClass} `),k=A(()=>s.invalid?"border-red-400 ring-red-400 focus:ring-red-400 focus:border-red-400":""),x=A(()=>s.disabled?"border border-solid rounded-md outline-none input-field box-border-2 base-date-picker-input placeholder-gray-400 bg-gray-300 text-gray-600 border-gray-300":"");return(b,v)=>{const E=D("BaseContentPlaceholdersBox"),R=D("BaseContentPlaceholders");return i.contentLoading?(l(),N(R,{key:0},{default:g(()=>[u(E,{rounded:!0,class:C(`w-full ${d(p)}`),style:{height:"38px"}},null,8,["class"])]),_:1})):(l(),_("div",{key:1,class:C([d(p),"relative flex flex-row"])},[i.clockIcon&&!d(o)?(l(),_("svg",{key:0,xmlns:"http://www.w3.org/2000/svg",class:"absolute top-px w-4 h-4 mx-2 my-2.5 text-sm not-italic font-black text-gray-400 cursor-pointer",viewBox:"0 0 20 20",fill:"currentColor",onClick:m},SE)):S("",!0),i.clockIcon&&d(o)?F(b.$slots,"icon",{key:1}):S("",!0),u(d(it),le({ref:(T,z)=>{z.dpt=T,a.value=T},modelValue:d(e),"onUpdate:modelValue":v[0]||(v[0]=T=>J(e)?e.value=T:null)},b.$attrs,{disabled:i.disabled,config:d(n),class:[i.defaultInputClass,d(k),d(x)]}),null,16,["modelValue","disabled","config","class"])],2))}}};var jE=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:PE});const AE={props:{currentStep:{type:Number,default:null},steps:{type:Number,default:null},containerClass:{type:String,default:"flex justify-between w-full my-10 max-w-xl mx-auto"},progress:{type:String,default:"rounded-full float-left w-6 h-6 border-4 cursor-pointer"},currentStepClass:{type:String,default:"bg-white border-primary-500"},nextStepClass:{type:String,default:"border-gray-200 bg-white"},previousStepClass:{type:String,default:"bg-primary-500 border-primary-500 flex justify-center items-center"},iconClass:{type:String,default:"flex items-center justify-center w-full h-full text-sm font-black text-center text-white"}},emits:["click"],setup(i){function r(s){return i.currentStep===s?[i.currentStepClass,i.progress]:i.currentStep>s?[i.previousStepClass,i.progress]:i.currentStep(l(),_("a",{key:o,class:C([a.stepStyle(e),"z-10"]),href:"#",onClick:re(m=>i.$emit("click",o),["prevent"])},[s.currentStep>e?(l(),_("svg",{key:0,class:C(s.iconClass),fill:"currentColor",viewBox:"0 0 20 20",onClick:m=>i.$emit("click",o)},IE,10,CE)):S("",!0)],10,DE))),128))],2)}var Ct=ee(AE,[["render",NE]]),TE=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Ct});const RE={class:"w-full"},ME={props:{wizardStepsContainerClass:{type:String,default:"relative flex items-center justify-center"},currentStep:{type:Number,default:0},steps:{type:Number,default:0}},emits:["click"],setup(i,{emit:r}){return(s,a)=>(l(),_("div",RE,[F(s.$slots,"nav",{},()=>[u(Ct,{"current-step":i.currentStep,steps:i.steps,onClick:a[0]||(a[0]=t=>s.$emit("click",t))},null,8,["current-step","steps"])]),c("div",{class:C(i.wizardStepsContainerClass)},[F(s.$slots,"default")],2)]))}};var FE=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:ME});const $E={key:0},UE={props:{title:{type:String,default:null},description:{type:String,default:null},stepContainerClass:{type:String,default:"w-full p-8 mb-8 bg-white border border-gray-200 border-solid rounded"},stepTitleClass:{type:String,default:"text-2xl not-italic font-semibold leading-7 text-black"},stepDescriptionClass:{type:String,default:"w-full mt-2.5 mb-8 text-sm not-italic leading-snug text-gray-500 lg:w-7/12 md:w-7/12 sm:w-7/12"}},setup(i){return(r,s)=>(l(),_("div",{class:C(i.stepContainerClass)},[i.title||i.description?(l(),_("div",$E,[i.title?(l(),_("p",{key:0,class:C(i.stepTitleClass)},w(i.title),3)):S("",!0),i.description?(l(),_("p",{key:1,class:C(i.stepDescriptionClass)},w(i.description),3)):S("",!0)])):S("",!0),F(r.$slots,"default")],2))}};var VE=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:UE});const OE=i=>{Object.entries({"./components/base/BaseBadge.vue":dz,"./components/base/BaseBreadcrumb.vue":mz,"./components/base/BaseBreadcrumbItem.vue":vz,"./components/base/BaseButton.vue":Pz,"./components/base/BaseCard.vue":Ez,"./components/base/BaseCheckbox.vue":$z,"./components/base/BaseContentPlaceholders.vue":Vz,"./components/base/BaseContentPlaceholdersBox.vue":Lz,"./components/base/BaseContentPlaceholdersHeading.vue":Zz,"./components/base/BaseContentPlaceholdersText.vue":Gz,"./components/base/BaseCustomInput.vue":oS,"./components/base/BaseCustomTag.vue":dS,"./components/base/BaseCustomerAddressDisplay.vue":vS,"./components/base/BaseCustomerSelectInput.vue":NS,"./components/base/BaseCustomerSelectPopup.vue":hP,"./components/base/BaseDatePicker.vue":wP,"./components/base/BaseDescriptionList.vue":jP,"./components/base/BaseDescriptionListItem.vue":EP,"./components/base/BaseDialog.vue":UP,"./components/base/BaseDivider.vue":qP,"./components/base/BaseDropdown.vue":HP,"./components/base/BaseDropdownItem.vue":GP,"./components/base/BaseEmptyPlaceholder.vue":sj,"./components/base/BaseErrorAlert.vue":pj,"./components/base/BaseEstimateStatusBadge.vue":fj,"./components/base/BaseFileUploader.vue":Kj,"./components/base/BaseFilterWrapper.vue":Hj,"./components/base/BaseFormatMoney.vue":Jj,"./components/base/BaseGlobalLoader.vue":IA,"./components/base/BaseHeading.vue":TA,"./components/base/BaseIcon.vue":MA,"./components/base/BaseInfoAlert.vue":YA,"./components/base/BaseInput.vue":_D,"./components/base/BaseInputGrid.vue":mD,"./components/base/BaseInputGroup.vue":hD,"./components/base/BaseInvoiceStatusBadge.vue":wD,"./components/base/BaseItemSelect.vue":DD,"./components/base/BaseLabel.vue":TD,"./components/base/BaseModal.vue":UD,"./components/base/BaseMoney.vue":OD,"./components/base/BaseNewBadge.vue":BD,"./components/base/BasePage.vue":HD,"./components/base/BasePageHeader.vue":XD,"./components/base/BasePaidStatusBadge.vue":iC,"./components/base/BaseRadio.vue":_C,"./components/base/BaseRating.vue":zC,"./components/base/BaseRecurringInvoiceStatusBadge.vue":AC,"./components/base/BaseScrollPane.vue":MC,"./components/base/BaseSelectAction.vue":OC,"./components/base/BaseSelectInput.vue":HC,"./components/base/BaseSettingCard.vue":eE,"./components/base/BaseSpinner.vue":dE,"./components/base/BaseSwitch.vue":_E,"./components/base/BaseSwitchSection.vue":pE,"./components/base/BaseTab.vue":fE,"./components/base/BaseTabGroup.vue":hE,"./components/base/BaseText.vue":bE,"./components/base/BaseTextarea.vue":xE,"./components/base/BaseTimePicker.vue":jE,"./components/base/BaseWizard.vue":FE,"./components/base/BaseWizardNavigation.vue":TE,"./components/base/BaseWizardStep.vue":VE}).forEach(([n,e])=>{const o=n.split("/").pop().replace(/\.\w+$/,"");i.component(o,e.default)});const s=Le(()=>P(()=>import("./BaseTable.ab76526e.js"),["assets/BaseTable.ab76526e.js","assets/vendor.01d0adc5.js"])),a=Le(()=>P(()=>import("./BaseMultiselect.ed75c8b8.js"),["assets/BaseMultiselect.ed75c8b8.js","assets/vendor.01d0adc5.js"])),t=Le(()=>P(()=>import("./BaseEditor.464a133b.js"),["assets/BaseEditor.464a133b.js","assets/BaseEditor.bacb9608.css","assets/vendor.01d0adc5.js"]));i.component("BaseTable",s),i.component("BaseMultiselect",a),i.component("BaseEditor",t)},ce=Sa(Li);class LE{constructor(){this.bootingCallbacks=[],this.messages=oz}booting(r){this.bootingCallbacks.push(r)}executeCallbacks(){this.bootingCallbacks.forEach(r=>{r(ce,Re)})}addMessages(r=[]){oe.merge(this.messages,r)}start(){this.executeCallbacks(),OE(ce),ce.provide("$utils",We);const r=Xe({locale:"en",fallbackLocale:"en",globalInjection:!0,messages:this.messages});window.i18n=r;const{createPinia:s}=window.pinia;ce.use(Re),ce.use(Pa),ce.use(r),ce.use(s()),ce.provide("utils",We),ce.directive("tooltip",ja),ce.mount("body")}}window.pinia=Aa;window.Vuelidate=Da;window.Vue=Ca;window.router=Re;window.VueRouter=Ea;window.Crater=new LE;export{Be as L,zz as S,se as T,ee as _,Ia as a,_e as b,je as c,Te as d,Pe as e,jA as f,O as g,h,$e as i,IP as j,He as k,be as l,Qz as m,xS as n,P as o,Fe as p,ke as q,Na as r,We as s,At as t,$ as u,Ui as v,YP as w,ZP as x}; diff --git a/public/build/assets/main.75722495.js b/public/build/assets/main.75722495.js deleted file mode 100644 index 8b7c8a058..000000000 --- a/public/build/assets/main.75722495.js +++ /dev/null @@ -1,13 +0,0 @@ -var Tt=Object.defineProperty,It=Object.defineProperties;var $t=Object.getOwnPropertyDescriptors;var Je=Object.getOwnPropertySymbols;var Rt=Object.prototype.hasOwnProperty,Ft=Object.prototype.propertyIsEnumerable;var Xe=(s,r,i)=>r in s?Tt(s,r,{enumerable:!0,configurable:!0,writable:!0,value:i}):s[r]=i,R=(s,r)=>{for(var i in r||(r={}))Rt.call(r,i)&&Xe(s,i,r[i]);if(Je)for(var i of Je(r))Ft.call(r,i)&&Xe(s,i,r[i]);return s},W=(s,r)=>It(s,$t(r));import{a as f,d as X,_ as oe,c as Mt,b as Vt,r as C,o as l,e as _,f as u,F as Q,g as F,n as Ce,h as c,w as g,i as K,t as w,j as S,k as D,l as T,u as d,m as A,p as pe,q as xe,v as Bt,s as le,x as J,y as ae,z as Qe,A as Ot,B as q,C as ge,D as ze,E as Lt,G as fe,H as Y,I as ye,J as Se,K as et,L as te,M as tt,N as Ve,O as at,P as Ut,Q as Kt,R as qt,S as Ae,T as Zt,U as re,V as Wt,W as Ht,X as Gt,Y as Ee,Z as Yt,$ as Jt,a0 as Be,a1 as st,a2 as Ne,a3 as nt,a4 as Xt,a5 as it,a6 as ot,a7 as rt,a8 as Qt,a9 as ea,aa as ta,ab as aa,ac as sa,ad as na,ae as ia,af as oa,ag as dt,ah as ra,ai as lt,aj as da,ak as la,al as ca,am as _a,an as ct,ao as ua,ap as ma,aq as pa,ar as ga,as as fa,at as ha,au as va,av as Oe,aw as _t,ax as ut,ay as ya,az as ba,aA as ka,aB as wa,aC as xa,aD as za,aE as Le,aF as Sa,aG as ja,aH as Pa,aI as Da,aJ as Ca,aK as Aa,aL as Ea}from"./vendor.01d0adc5.js";var Ue={get(s){return localStorage.getItem(s)?localStorage.getItem(s):null},set(s,r){localStorage.setItem(s,r)},remove(s){localStorage.removeItem(s)}};window.Ls=Ue;window.axios=f;f.defaults.withCredentials=!0;f.defaults.headers.common={"X-Requested-With":"XMLHttpRequest"};f.interceptors.request.use(function(s){const r=Ue.get("selectedCompany"),i=Ue.get("auth.token");return i&&(s.headers.common.Authorization=i),r&&(s.headers.common.company=r),s});const M=(s=!1)=>(s?window.pinia.defineStore:X)({id:"notification",state:()=>({active:!1,autoHide:!0,notifications:[]}),actions:{showNotification(i){this.notifications.push(W(R({},i),{id:(Math.random().toString(36)+Date.now().toString(36)).substr(2)}))},hideNotification(i){this.notifications=this.notifications.filter(a=>a.id!=i.id)}}})(),Na=(s=!1)=>(s?window.pinia.defineStore:X)({id:"auth",state:()=>({status:"",loginData:{email:"",password:"",remember:""}}),actions:{login(i){return new Promise((a,t)=>{f.get("/sanctum/csrf-cookie").then(n=>{n&&f.post("/login",i).then(e=>{a(e),setTimeout(()=>{this.loginData.email="",this.loginData.password=""},1e3)}).catch(e=>{v(e),t(e)})})})},logout(){return new Promise((i,a)=>{f.get("/auth/logout").then(t=>{M().showNotification({type:"success",message:"Logged out successfully."}),window.router.push("/login"),i(t)}).catch(t=>{v(t),window.router.push("/"),a(t)})})}}})(),v=s=>{var a;const r=Na(),i=M();if(!s.response)i.showNotification({type:"error",message:"Please check your internet connection or wait until servers are back online."});else if(s.response.data&&(s.response.statusText==="Unauthorized"||s.response.data===" Unauthorized.")){const t=s.response.data.message?s.response.data.message:"Unauthorized";B(t),r.logout()}else if(s.response.data.errors){const t=JSON.parse(JSON.stringify(s.response.data.errors));for(const n in t)Te(t[n][0])}else s.response.data.error?typeof s.response.data.error=="boolean"?Te((a=s.response.data)==null?void 0:a.message):Te(s.response.data.error):Te(s.response.data.message)},Te=s=>{switch(s){case"These credentials do not match our records.":B("errors.login_invalid_credentials");break;case"invalid_key":B("errors.invalid_provider_key");break;case"This feature is available on Starter plan and onwards!":B("errors.starter_plan");break;case"taxes_attached":B("settings.tax_types.already_in_use");break;case"expense_attached":B("settings.expense_category.already_in_use");break;case"payments_attached":B("settings.payment_modes.already_in_use");break;case"role_attached_to_users":B("settings.roles.already_in_use");break;case"items_attached":B("settings.customization.items.already_in_use");break;case"payment_attached_message":B("invoices.payment_attached_message");break;case"The email has already been taken.":B("validation.email_already_taken");break;case"Relation estimateItems exists.":B("items.item_attached_message");break;case"Relation invoiceItems exists.":B("items.item_attached_message");break;case"Relation taxes exists.":B("settings.tax_types.already_in_use");break;case"Relation taxes exists.":B("settings.tax_types.already_in_use");break;case"Relation payments exists.":B("errors.payment_attached");break;case"The estimate number has already been taken.":B("errors.estimate_number_used");break;case"The payment number has already been taken.":B("errors.estimate_number_used");break;case"The invoice number has already been taken.":B("errors.invoice_number_used");break;case"The name has already been taken.":B("errors.name_already_taken");break;case"total_invoice_amount_must_be_more_than_paid_amount":B("invoices.invalid_due_amount_message");break;case"you_cannot_edit_currency":B("customers.edit_currency_not_allowed");break;case"receipt_does_not_exist":B("errors.receipt_does_not_exist");break;case"customer_cannot_be_changed_after_payment_is_added":B("errors.customer_cannot_be_changed_after_payment_is_added");break;case"invalid_credentials":B("errors.invalid_credentials");break;case"not_allowed":B("errors.not_allowed");break;case"invalid_key":B("errors.invalid_key");break;case"invalid_state":B("errors.invalid_state");break;case"invalid_city":B("errors.invalid_city");break;case"invalid_postal_code":B("errors.invalid_postal_code");break;case"invalid_format":B("errors.invalid_format");break;case"api_error":B("errors.api_error");break;case"feature_not_enabled":B("errors.feature_not_enabled");break;case"request_limit_met":B("errors.request_limit_met");break;case"address_incomplete":B("errors.address_incomplete");break;case"invalid_address":B("errors.invalid_address");break;case"Email could not be sent to this email address.":B("errors.email_could_not_be_sent");break;default:B(s,!1);break}},B=(s,r=!0)=>{const{global:i}=window.i18n;M().showNotification({type:"error",message:r?i.t(s):s})},je=(s=!1)=>{const r=s?window.pinia.defineStore:X,{global:i}=window.i18n;return r({id:"user",state:()=>({currentUser:null,currentAbilities:[],currentUserSettings:{},userForm:{name:"",email:"",password:"",confirm_password:"",language:""}}),getters:{currentAbilitiesCount:a=>a.currentAbilities.length},actions:{updateCurrentUser(a){return new Promise((t,n)=>{f.put("/api/v1/me",a).then(e=>{this.currentUser=e.data.data,Object.assign(this.userForm,e.data.data),M().showNotification({type:"success",message:i.t("settings.account_settings.updated_message")}),t(e)}).catch(e=>{v(e),n(e)})})},fetchCurrentUser(a){return new Promise((t,n)=>{f.get("/api/v1/me",a).then(e=>{this.currentUser=e.data.data,this.userForm=e.data.data,t(e)}).catch(e=>{v(e),n(e)})})},uploadAvatar(a){return new Promise((t,n)=>{f.post("/api/v1/me/upload-avatar",a).then(e=>{this.currentUser.avatar=e.data.data.avatar,t(e)}).catch(e=>{v(e),n(e)})})},fetchUserSettings(a){return new Promise((t,n)=>{f.get("/api/v1/me/settings",{params:{settings:a}}).then(e=>{t(e)}).catch(e=>{v(e),n(e)})})},updateUserSettings(a){return new Promise((t,n)=>{f.put("/api/v1/me/settings",a).then(e=>{a.settings.language&&(this.currentUserSettings.language=a.settings.language,i.locale=a.settings.language),t(e)}).catch(e=>{v(e),n(e)})})},hasAbilities(a){return!!this.currentAbilities.find(t=>t.name==="*"?!0:typeof a=="string"?t.name===a:!!a.find(n=>t.name===n))},hasAllAbilities(a){let t=!0;return this.currentAbilities.filter(n=>{!!a.find(o=>n.name===o)||(t=!1)}),t}}})()},_e=(s=!1)=>{const r=s?window.pinia.defineStore:X,{global:i}=window.i18n;return r({id:"company",state:()=>({companies:[],selectedCompany:null,selectedCompanySettings:{},selectedCompanyCurrency:null}),actions:{setSelectedCompany(a){window.Ls.set("selectedCompany",a.id),this.selectedCompany=a},fetchBasicMailConfig(){return new Promise((a,t)=>{f.get("/api/v1/company/mail/config").then(n=>{a(n)}).catch(n=>{v(n),t(n)})})},updateCompany(a){return new Promise((t,n)=>{f.put("/api/v1/company",a).then(e=>{M().showNotification({type:"success",message:i.t("settings.company_info.updated_message")}),this.selectedCompany=e.data.data,t(e)}).catch(e=>{v(e),n(e)})})},updateCompanyLogo(a){return new Promise((t,n)=>{f.post("/api/v1/company/upload-logo",a).then(e=>{t(e)}).catch(e=>{v(e),n(e)})})},addNewCompany(a){return new Promise((t,n)=>{f.post("/api/v1/companies",a).then(e=>{M().showNotification({type:"success",message:i.t("company_switcher.created_message")}),t(e)}).catch(e=>{v(e),n(e)})})},fetchCompany(a){return new Promise((t,n)=>{f.get("/api/v1/current-company",a).then(e=>{Object.assign(this.companyForm,e.data.data.address),this.companyForm.name=e.data.data.name,t(e)}).catch(e=>{v(e),n(e)})})},fetchUserCompanies(){return new Promise((a,t)=>{f.get("/api/v1/companies").then(n=>{a(n)}).catch(n=>{v(n),t(n)})})},fetchCompanySettings(a){return new Promise((t,n)=>{f.get("/api/v1/company/settings",{params:{settings:a}}).then(e=>{t(e)}).catch(e=>{v(e),n(e)})})},updateCompanySettings({data:a,message:t}){return new Promise((n,e)=>{f.post("/api/v1/company/settings",a).then(o=>{Object.assign(this.selectedCompanySettings,a.settings),t&&M().showNotification({type:"success",message:i.t(t)}),n(o)}).catch(o=>{v(o),e(o)})})},deleteCompany(a){return new Promise((t,n)=>{f.post("/api/v1/companies/delete",a).then(e=>{t(e)}).catch(e=>{v(e),n(e)})})},setDefaultCurrency(a){this.defaultCurrency=a.currency}}})()},Ta=(s=!1)=>{const r=s?window.pinia.defineStore:X,{global:i}=window.i18n;return r({id:"modules",state:()=>({currentModule:{},modules:[],apiToken:null,currentUser:{api_token:null},enableModules:[]}),getters:{salesTaxUSEnabled:a=>a.enableModules.includes("SalesTaxUS")},actions:{fetchModules(a){return new Promise((t,n)=>{f.get("/api/v1/modules").then(e=>{this.modules=e.data.data,t(e)}).catch(e=>{v(e),n(e)})})},fetchModule(a){return new Promise((t,n)=>{f.get(`/api/v1/modules/${a}`).then(e=>{e.data.error==="invalid_token"?(this.currentModule={},this.modules=[],this.apiToken=null,this.currentUser.api_token=null,window.router.push("/admin/modules")):this.currentModule=e.data,t(e)}).catch(e=>{v(e),n(e)})})},checkApiToken(a){return new Promise((t,n)=>{f.get(`/api/v1/modules/check?api_token=${a}`).then(e=>{const o=M();e.data.error==="invalid_token"&&o.showNotification({type:"error",message:i.t("modules.invalid_api_token")}),t(e)}).catch(e=>{v(e),n(e)})})},disableModule(a){return new Promise((t,n)=>{f.post(`/api/v1/modules/${a}/disable`).then(e=>{const o=M();e.data.success&&o.showNotification({type:"success",message:i.t("modules.module_disabled")}),t(e)}).catch(e=>{v(e),n(e)})})},enableModule(a){return new Promise((t,n)=>{f.post(`/api/v1/modules/${a}/enable`).then(e=>{const o=M();e.data.success&&o.showNotification({type:"success",message:i.t("modules.module_enabled")}),t(e)}).catch(e=>{v(e),n(e)})})}}})()},Ie=(s=!1)=>{const r=s?window.pinia.defineStore:X,{global:i}=window.i18n;return r({id:"global",state:()=>({config:null,globalSettings:null,timeZones:[],dateFormats:[],currencies:[],countries:[],languages:[],fiscalYears:[],mainMenu:[],settingMenu:[],isAppLoaded:!1,isSidebarOpen:!1,areCurrenciesLoading:!1,downloadReport:null}),getters:{menuGroups:a=>Object.values(oe.groupBy(a.mainMenu,"group"))},actions:{bootstrap(){return new Promise((a,t)=>{f.get("/api/v1/bootstrap").then(n=>{const e=_e(),o=je(),m=Ta();this.mainMenu=n.data.main_menu,this.settingMenu=n.data.setting_menu,this.config=n.data.config,this.globalSettings=n.data.global_settings,o.currentUser=n.data.current_user,o.currentUserSettings=n.data.current_user_settings,o.currentAbilities=n.data.current_user_abilities,m.apiToken=n.data.global_settings.api_token,m.enableModules=n.data.modules,e.companies=n.data.companies,e.selectedCompany=n.data.current_company,e.setSelectedCompany(n.data.current_company),e.selectedCompanySettings=n.data.current_company_settings,e.selectedCompanyCurrency=n.data.current_company_currency,i.locale=n.data.current_user_settings.language||"en",this.isAppLoaded=!0,a(n)}).catch(n=>{v(n),t(n)})})},fetchCurrencies(){return new Promise((a,t)=>{this.currencies.length||this.areCurrenciesLoading?a(this.currencies):(this.areCurrenciesLoading=!0,f.get("/api/v1/currencies").then(n=>{this.currencies=n.data.data.filter(e=>e.name=`${e.code} - ${e.name}`),this.areCurrenciesLoading=!1,a(n)}).catch(n=>{v(n),this.areCurrenciesLoading=!1,t(n)}))})},fetchConfig(a){return new Promise((t,n)=>{f.get("/api/v1/config",{params:a}).then(e=>{e.data.languages?this.languages=e.data.languages:this.fiscalYears=e.data.fiscal_years,t(e)}).catch(e=>{v(e),n(e)})})},fetchDateFormats(){return new Promise((a,t)=>{this.dateFormats.length?a(this.dateFormats):f.get("/api/v1/date/formats").then(n=>{this.dateFormats=n.data.date_formats,a(n)}).catch(n=>{v(n),t(n)})})},fetchTimeZones(){return new Promise((a,t)=>{this.timeZones.length?a(this.timeZones):f.get("/api/v1/timezones").then(n=>{this.timeZones=n.data.time_zones,a(n)}).catch(n=>{v(n),t(n)})})},fetchCountries(){return new Promise((a,t)=>{this.countries.length?a(this.countries):f.get("/api/v1/countries").then(n=>{this.countries=n.data.data,a(n)}).catch(n=>{v(n),t(n)})})},fetchPlaceholders(a){return new Promise((t,n)=>{f.get("/api/v1/number-placeholders",{params:a}).then(e=>{t(e)}).catch(e=>{v(e),n(e)})})},setSidebarVisibility(a){this.isSidebarOpen=a},setIsAppLoaded(a){this.isAppLoaded=a},updateGlobalSettings({data:a,message:t}){return new Promise((n,e)=>{f.post("/api/v1/settings",a).then(o=>{Object.assign(this.globalSettings,a.settings),t&&M().showNotification({type:"success",message:i.t(t)}),n(o)}).catch(o=>{v(o),e(o)})})}}})()},Ia="modulepreload",mt={},$a="/build/",j=function(r,i){return!i||i.length===0?r():Promise.all(i.map(a=>{if(a=`${$a}${a}`,a in mt)return;mt[a]=!0;const t=a.endsWith(".css"),n=t?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${a}"]${n}`))return;const e=document.createElement("link");if(e.rel=t?"stylesheet":Ia,t||(e.as="script",e.crossOrigin=""),e.href=a,document.head.appendChild(e),t)return new Promise((o,m)=>{e.addEventListener("load",o),e.addEventListener("error",m)})})).then(()=>r())};var O={DASHBOARD:"dashboard",CREATE_CUSTOMER:"create-customer",DELETE_CUSTOMER:"delete-customer",EDIT_CUSTOMER:"edit-customer",VIEW_CUSTOMER:"view-customer",CREATE_ITEM:"create-item",DELETE_ITEM:"delete-item",EDIT_ITEM:"edit-item",VIEW_ITEM:"view-item",CREATE_TAX_TYPE:"create-tax-type",DELETE_TAX_TYPE:"delete-tax-type",EDIT_TAX_TYPE:"edit-tax-type",VIEW_TAX_TYPE:"view-tax-type",CREATE_ESTIMATE:"create-estimate",DELETE_ESTIMATE:"delete-estimate",EDIT_ESTIMATE:"edit-estimate",VIEW_ESTIMATE:"view-estimate",SEND_ESTIMATE:"send-estimate",CREATE_INVOICE:"create-invoice",DELETE_INVOICE:"delete-invoice",EDIT_INVOICE:"edit-invoice",VIEW_INVOICE:"view-invoice",SEND_INVOICE:"send-invoice",CREATE_RECURRING_INVOICE:"create-recurring-invoice",DELETE_RECURRING_INVOICE:"delete-recurring-invoice",EDIT_RECURRING_INVOICE:"edit-recurring-invoice",VIEW_RECURRING_INVOICE:"view-recurring-invoice",CREATE_PAYMENT:"create-payment",DELETE_PAYMENT:"delete-payment",EDIT_PAYMENT:"edit-payment",VIEW_PAYMENT:"view-payment",SEND_PAYMENT:"send-payment",CREATE_EXPENSE:"create-expense",DELETE_EXPENSE:"delete-expense",EDIT_EXPENSE:"edit-expense",VIEW_EXPENSE:"view-expense",CREATE_CUSTOM_FIELDS:"create-custom-field",DELETE_CUSTOM_FIELDS:"delete-custom-field",EDIT_CUSTOM_FIELDS:"edit-custom-field",VIEW_CUSTOM_FIELDS:"view-custom-field",CREATE_ROLE:"create-role",DELETE_ROLE:"delete-role",EDIT_ROLE:"edit-role",VIEW_ROLE:"view-role",VIEW_EXCHANGE_RATE:"view-exchange-rate-provider",CREATE_EXCHANGE_RATE:"create-exchange-rate-provider",EDIT_EXCHANGE_RATE:"edit-exchange-rate-provider",DELETE_EXCHANGE_RATE:"delete-exchange-rate-provider",VIEW_FINANCIAL_REPORT:"view-financial-reports",MANAGE_NOTE:"manage-all-notes",VIEW_NOTE:"view-all-notes"};const Ra=()=>j(()=>import("./LayoutInstallation.46a8b6d2.js"),["assets/LayoutInstallation.46a8b6d2.js","assets/NotificationRoot.a98180ab.js","assets/vendor.01d0adc5.js"]),pt=()=>j(()=>import("./Login.9abd1acb.js"),["assets/Login.9abd1acb.js","assets/vendor.01d0adc5.js"]),Fa=()=>j(()=>import("./LayoutBasic.e1f34a75.js"),["assets/LayoutBasic.e1f34a75.js","assets/vendor.01d0adc5.js","assets/exchange-rate.dffa79b6.js","assets/users.73a3faa4.js","assets/NotificationRoot.a98180ab.js","assets/index.esm.998a6eeb.js"]),Ma=()=>j(()=>import("./LayoutLogin.d574a04a.js"),["assets/LayoutLogin.d574a04a.js","assets/NotificationRoot.a98180ab.js","assets/vendor.01d0adc5.js"]),Va=()=>j(()=>import("./ResetPassword.970ec316.js"),["assets/ResetPassword.970ec316.js","assets/vendor.01d0adc5.js"]),Ba=()=>j(()=>import("./ForgotPassword.6a2c79cb.js"),["assets/ForgotPassword.6a2c79cb.js","assets/vendor.01d0adc5.js"]),Oa=()=>j(()=>import("./Dashboard.bdf9de48.js"),["assets/Dashboard.bdf9de48.js","assets/EstimateIcon.1f3b368d.js","assets/vendor.01d0adc5.js","assets/LineChart.a92f3bea.js","assets/InvoiceIndexDropdown.430bc329.js","assets/EstimateIndexDropdown.4eab32d4.js"]),La=()=>j(()=>import("./Index.83e96e3c.js"),["assets/Index.83e96e3c.js","assets/vendor.01d0adc5.js","assets/CustomerIndexDropdown.3adf4218.js","assets/AstronautIcon.948728ac.js"]),gt=()=>j(()=>import("./Create.3e41e2ab.js"),["assets/Create.3e41e2ab.js","assets/vendor.01d0adc5.js","assets/CreateCustomFields.a3a572c4.js"]),Ua=()=>j(()=>import("./View.958a5524.js"),["assets/View.958a5524.js","assets/vendor.01d0adc5.js","assets/LoadingIcon.44a6304d.js","assets/LineChart.a92f3bea.js","assets/CustomerIndexDropdown.3adf4218.js"]),Ka=()=>j(()=>import("./SettingsIndex.7750922b.js"),["assets/SettingsIndex.7750922b.js","assets/vendor.01d0adc5.js","assets/BaseListItem.4eea691c.js"]),qa=()=>j(()=>import("./AccountSetting.d3009f2e.js"),["assets/AccountSetting.d3009f2e.js","assets/vendor.01d0adc5.js"]),Za=()=>j(()=>import("./CompanyInfoSettings.a1bb8458.js"),["assets/CompanyInfoSettings.a1bb8458.js","assets/vendor.01d0adc5.js"]),Wa=()=>j(()=>import("./PreferencesSetting.abc39a72.js"),["assets/PreferencesSetting.abc39a72.js","assets/vendor.01d0adc5.js"]),Ha=()=>j(()=>import("./CustomizationSetting.5e54e84c.js"),["assets/CustomizationSetting.5e54e84c.js","assets/vendor.01d0adc5.js","assets/DragIcon.213b1d78.js","assets/payment.5c57bec3.js","assets/ItemUnitModal.01494bfb.js"]),Ga=()=>j(()=>import("./NotificationsSetting.90090d1e.js"),["assets/NotificationsSetting.90090d1e.js","assets/vendor.01d0adc5.js"]),Ya=()=>j(()=>import("./TaxTypesSetting.332f7c14.js"),["assets/TaxTypesSetting.332f7c14.js","assets/vendor.01d0adc5.js","assets/TaxTypeModal.bf6662b3.js"]),Ja=()=>j(()=>import("./PaymentsModeSetting.963d7ca9.js"),["assets/PaymentsModeSetting.963d7ca9.js","assets/vendor.01d0adc5.js","assets/payment.5c57bec3.js","assets/PaymentModeModal.9b5fc610.js"]),Xa=()=>j(()=>import("./CustomFieldsSetting.9f0813a0.js"),["assets/CustomFieldsSetting.9f0813a0.js","assets/vendor.01d0adc5.js"]),Qa=()=>j(()=>import("./NotesSetting.2f08acf1.js"),["assets/NotesSetting.2f08acf1.js","assets/vendor.01d0adc5.js","assets/NoteModal.f6d01f84.js","assets/NoteModal.3245b7d3.css","assets/payment.5c57bec3.js"]),es=()=>j(()=>import("./ExpenseCategorySetting.80e0d8ac.js"),["assets/ExpenseCategorySetting.80e0d8ac.js","assets/category.4b37f0ed.js","assets/vendor.01d0adc5.js","assets/CategoryModal.9a2e05b9.js"]),ts=()=>j(()=>import("./ExchangeRateProviderSetting.57eedd6c.js"),["assets/ExchangeRateProviderSetting.57eedd6c.js","assets/exchange-rate.dffa79b6.js","assets/vendor.01d0adc5.js","assets/BaseTable.6e206ca7.js"]),as=()=>j(()=>import("./MailConfigSetting.91f66b99.js"),["assets/MailConfigSetting.91f66b99.js","assets/vendor.01d0adc5.js","assets/mail-driver.4ea1af6b.js"]),ss=()=>j(()=>import("./FileDiskSetting.b99dc80a.js"),["assets/FileDiskSetting.b99dc80a.js","assets/disk.518ebc4b.js","assets/vendor.01d0adc5.js"]),ns=()=>j(()=>import("./BackupSetting.f5a6fab0.js"),["assets/BackupSetting.f5a6fab0.js","assets/vendor.01d0adc5.js","assets/disk.518ebc4b.js"]),is=()=>j(()=>import("./UpdateAppSetting.dcf672e8.js"),["assets/UpdateAppSetting.dcf672e8.js","assets/UpdateAppSetting.7d8b987a.css","assets/vendor.01d0adc5.js","assets/LoadingIcon.44a6304d.js","assets/exchange-rate.dffa79b6.js"]),os=()=>j(()=>import("./RolesSettings.3be3bc63.js"),["assets/RolesSettings.3be3bc63.js","assets/vendor.01d0adc5.js"]),rs=()=>j(()=>import("./Index.2f43174e.js"),["assets/Index.2f43174e.js","assets/vendor.01d0adc5.js"]),ft=()=>j(()=>import("./Create.bffd06e1.js"),["assets/Create.bffd06e1.js","assets/vendor.01d0adc5.js","assets/ItemUnitModal.01494bfb.js"]),ds=()=>j(()=>import("./Index.9d0bbfbe.js"),["assets/Index.9d0bbfbe.js","assets/vendor.01d0adc5.js","assets/expense.e270a61c.js","assets/category.4b37f0ed.js"]),ht=()=>j(()=>import("./Create.a722899f.js"),["assets/Create.a722899f.js","assets/vendor.01d0adc5.js","assets/expense.e270a61c.js","assets/category.4b37f0ed.js","assets/CreateCustomFields.a3a572c4.js","assets/CategoryModal.9a2e05b9.js","assets/ExchangeRateConverter.7d8c4309.js","assets/exchange-rate.dffa79b6.js"]),ls=()=>j(()=>import("./Index.857b8662.js"),["assets/Index.857b8662.js","assets/vendor.01d0adc5.js","assets/users.73a3faa4.js","assets/AstronautIcon.948728ac.js"]),vt=()=>j(()=>import("./Create.625aeacb.js"),["assets/Create.625aeacb.js","assets/vendor.01d0adc5.js","assets/index.esm.998a6eeb.js","assets/users.73a3faa4.js"]),cs=()=>j(()=>import("./Index.c0a868bd.js"),["assets/Index.c0a868bd.js","assets/vendor.01d0adc5.js","assets/ObservatoryIcon.1877bd3e.js","assets/EstimateIndexDropdown.4eab32d4.js","assets/SendEstimateModal.a8bc3854.js","assets/mail-driver.4ea1af6b.js"]),yt=()=>j(()=>import("./EstimateCreate.4010e1b1.js"),["assets/EstimateCreate.4010e1b1.js","assets/vendor.01d0adc5.js","assets/SalesTax.0ff2d954.js","assets/DragIcon.213b1d78.js","assets/SelectNotePopup.781ad74a.js","assets/NoteModal.f6d01f84.js","assets/NoteModal.3245b7d3.css","assets/payment.5c57bec3.js","assets/CreateCustomFields.a3a572c4.js","assets/ExchangeRateConverter.7d8c4309.js","assets/exchange-rate.dffa79b6.js","assets/TaxTypeModal.bf6662b3.js"]),_s=()=>j(()=>import("./View.1a50dc40.js"),["assets/View.1a50dc40.js","assets/vendor.01d0adc5.js","assets/EstimateIndexDropdown.4eab32d4.js","assets/SendEstimateModal.a8bc3854.js","assets/mail-driver.4ea1af6b.js","assets/LoadingIcon.44a6304d.js"]),us=()=>j(()=>import("./Index.492a896e.js"),["assets/Index.492a896e.js","assets/vendor.01d0adc5.js","assets/payment.5c57bec3.js","assets/CapsuleIcon.dc769b69.js","assets/SendPaymentModal.1bb9d371.js","assets/mail-driver.4ea1af6b.js"]),Ke=()=>j(()=>import("./Create.be897594.js"),["assets/Create.be897594.js","assets/vendor.01d0adc5.js","assets/ExchangeRateConverter.7d8c4309.js","assets/exchange-rate.dffa79b6.js","assets/payment.5c57bec3.js","assets/SelectNotePopup.781ad74a.js","assets/NoteModal.f6d01f84.js","assets/NoteModal.3245b7d3.css","assets/CreateCustomFields.a3a572c4.js","assets/PaymentModeModal.9b5fc610.js"]),ms=()=>j(()=>import("./View.abc1c107.js"),["assets/View.abc1c107.js","assets/vendor.01d0adc5.js","assets/payment.5c57bec3.js","assets/SendPaymentModal.1bb9d371.js","assets/mail-driver.4ea1af6b.js","assets/LoadingIcon.44a6304d.js"]),ps=()=>j(()=>import("./404.5c5416a6.js"),["assets/404.5c5416a6.js","assets/vendor.01d0adc5.js"]),gs=()=>j(()=>import("./Index.56add046.js"),["assets/Index.56add046.js","assets/vendor.01d0adc5.js","assets/MoonwalkerIcon.ab503573.js","assets/InvoiceIndexDropdown.430bc329.js","assets/SendInvoiceModal.89e6012d.js","assets/mail-driver.4ea1af6b.js"]),bt=()=>j(()=>import("./InvoiceCreate.8ae6be7c.js"),["assets/InvoiceCreate.8ae6be7c.js","assets/vendor.01d0adc5.js","assets/SalesTax.0ff2d954.js","assets/DragIcon.213b1d78.js","assets/SelectNotePopup.781ad74a.js","assets/NoteModal.f6d01f84.js","assets/NoteModal.3245b7d3.css","assets/payment.5c57bec3.js","assets/ExchangeRateConverter.7d8c4309.js","assets/exchange-rate.dffa79b6.js","assets/CreateCustomFields.a3a572c4.js","assets/TaxTypeModal.bf6662b3.js"]),fs=()=>j(()=>import("./View.796e2446.js"),["assets/View.796e2446.js","assets/vendor.01d0adc5.js","assets/InvoiceIndexDropdown.430bc329.js","assets/SendInvoiceModal.89e6012d.js","assets/mail-driver.4ea1af6b.js","assets/LoadingIcon.44a6304d.js"]),hs=()=>j(()=>import("./Index.f1fe364f.js"),["assets/Index.f1fe364f.js","assets/vendor.01d0adc5.js","assets/SendInvoiceModal.89e6012d.js","assets/mail-driver.4ea1af6b.js","assets/RecurringInvoiceIndexDropdown.37d4a992.js","assets/MoonwalkerIcon.ab503573.js"]),kt=()=>j(()=>import("./RecurringInvoiceCreate.e076e6ab.js"),["assets/RecurringInvoiceCreate.e076e6ab.js","assets/vendor.01d0adc5.js","assets/SalesTax.0ff2d954.js","assets/DragIcon.213b1d78.js","assets/SelectNotePopup.781ad74a.js","assets/NoteModal.f6d01f84.js","assets/NoteModal.3245b7d3.css","assets/payment.5c57bec3.js","assets/ExchangeRateConverter.7d8c4309.js","assets/exchange-rate.dffa79b6.js","assets/CreateCustomFields.a3a572c4.js","assets/TaxTypeModal.bf6662b3.js"]),vs=()=>j(()=>import("./View.aa6cd8ac.js"),["assets/View.aa6cd8ac.js","assets/vendor.01d0adc5.js","assets/LoadingIcon.44a6304d.js","assets/InvoiceIndexDropdown.430bc329.js","assets/RecurringInvoiceIndexDropdown.37d4a992.js"]),ys=()=>j(()=>import("./Index.a3eeb117.js"),["assets/Index.a3eeb117.js","assets/vendor.01d0adc5.js"]),bs=()=>j(()=>import("./Installation.e5762019.js"),["assets/Installation.e5762019.js","assets/vendor.01d0adc5.js","assets/mail-driver.4ea1af6b.js"]),ks=()=>j(()=>import("./Index.de1759af.js"),["assets/Index.de1759af.js","assets/vendor.01d0adc5.js"]),ws=()=>j(()=>import("./View.f7652815.js"),["assets/View.f7652815.js","assets/vendor.01d0adc5.js"]),xs=()=>j(()=>import("./InvoicePublicPage.e8730ff3.js"),["assets/InvoicePublicPage.e8730ff3.js","assets/vendor.01d0adc5.js"]);var zs=[{path:"/installation",component:Ra,meta:{requiresAuth:!1},children:[{path:"/installation",component:bs,name:"installation"}]},{path:"/customer/invoices/view/:hash",component:xs,name:"invoice.public"},{path:"/",component:Ma,meta:{requiresAuth:!1,redirectIfAuthenticated:!0},children:[{path:"",component:pt},{path:"login",name:"login",component:pt},{path:"forgot-password",component:Ba,name:"forgot-password"},{path:"/reset-password/:token",component:Va,name:"reset-password"}]},{path:"/admin",component:Fa,meta:{requiresAuth:!0},children:[{path:"dashboard",name:"dashboard",meta:{ability:O.DASHBOARD},component:Oa},{path:"customers",meta:{ability:O.VIEW_CUSTOMER},component:La},{path:"customers/create",name:"customers.create",meta:{ability:O.CREATE_CUSTOMER},component:gt},{path:"customers/:id/edit",name:"customers.edit",meta:{ability:O.EDIT_CUSTOMER},component:gt},{path:"customers/:id/view",name:"customers.view",meta:{ability:O.VIEW_CUSTOMER},component:Ua},{path:"payments",meta:{ability:O.VIEW_PAYMENT},component:us},{path:"payments/create",name:"payments.create",meta:{ability:O.CREATE_PAYMENT},component:Ke},{path:"payments/:id/create",name:"invoice.payments.create",meta:{ability:O.CREATE_PAYMENT},component:Ke},{path:"payments/:id/edit",name:"payments.edit",meta:{ability:O.EDIT_PAYMENT},component:Ke},{path:"payments/:id/view",name:"payments.view",meta:{ability:O.VIEW_PAYMENT},component:ms},{path:"settings",name:"settings",component:Ka,children:[{path:"account-settings",name:"account.settings",component:qa},{path:"company-info",name:"company.info",meta:{isOwner:!0},component:Za},{path:"preferences",name:"preferences",meta:{isOwner:!0},component:Wa},{path:"customization",name:"customization",meta:{isOwner:!0},component:Ha},{path:"notifications",name:"notifications",meta:{isOwner:!0},component:Ga},{path:"roles-settings",name:"roles.settings",meta:{isOwner:!0},component:os},{path:"exchange-rate-provider",name:"exchange.rate.provider",meta:{ability:O.VIEW_EXCHANGE_RATE},component:ts},{path:"tax-types",name:"tax.types",meta:{ability:O.VIEW_TAX_TYPE},component:Ya},{path:"notes",name:"notes",meta:{ability:O.VIEW_ALL_NOTES},component:Qa},{path:"payment-mode",name:"payment.mode",component:Ja},{path:"custom-fields",name:"custom.fields",meta:{ability:O.VIEW_CUSTOM_FIELDS},component:Xa},{path:"expense-category",name:"expense.category",meta:{ability:O.VIEW_EXPENSE},component:es},{path:"mail-configuration",name:"mailconfig",meta:{isOwner:!0},component:as},{path:"file-disk",name:"file-disk",meta:{isOwner:!0},component:ss},{path:"backup",name:"backup",meta:{isOwner:!0},component:ns},{path:"update-app",name:"updateapp",meta:{isOwner:!0},component:is}]},{path:"items",meta:{ability:O.VIEW_ITEM},component:rs},{path:"items/create",name:"items.create",meta:{ability:O.CREATE_ITEM},component:ft},{path:"items/:id/edit",name:"items.edit",meta:{ability:O.EDIT_ITEM},component:ft},{path:"expenses",meta:{ability:O.VIEW_EXPENSE},component:ds},{path:"expenses/create",name:"expenses.create",meta:{ability:O.CREATE_EXPENSE},component:ht},{path:"expenses/:id/edit",name:"expenses.edit",meta:{ability:O.EDIT_EXPENSE},component:ht},{path:"users",name:"users.index",meta:{isOwner:!0},component:ls},{path:"users/create",meta:{isOwner:!0},name:"users.create",component:vt},{path:"users/:id/edit",name:"users.edit",meta:{isOwner:!0},component:vt},{path:"estimates",name:"estimates.index",meta:{ability:O.VIEW_ESTIMATE},component:cs},{path:"estimates/create",name:"estimates.create",meta:{ability:O.CREATE_ESTIMATE},component:yt},{path:"estimates/:id/view",name:"estimates.view",meta:{ability:O.VIEW_ESTIMATE},component:_s},{path:"estimates/:id/edit",name:"estimates.edit",meta:{ability:O.EDIT_ESTIMATE},component:yt},{path:"invoices",name:"invoices.index",meta:{ability:O.VIEW_INVOICE},component:gs},{path:"invoices/create",name:"invoices.create",meta:{ability:O.CREATE_INVOICE},component:bt},{path:"invoices/:id/view",name:"invoices.view",meta:{ability:O.VIEW_INVOICE},component:fs},{path:"invoices/:id/edit",name:"invoices.edit",meta:{ability:O.EDIT_INVOICE},component:bt},{path:"recurring-invoices",name:"recurring-invoices.index",meta:{ability:O.VIEW_RECURRING_INVOICE},component:hs},{path:"recurring-invoices/create",name:"recurring-invoices.create",meta:{ability:O.CREATE_RECURRING_INVOICE},component:kt},{path:"recurring-invoices/:id/view",name:"recurring-invoices.view",meta:{ability:O.VIEW_RECURRING_INVOICE},component:vs},{path:"recurring-invoices/:id/edit",name:"recurring-invoices.edit",meta:{ability:O.EDIT_RECURRING_INVOICE},component:kt},{path:"modules",name:"modules.index",meta:{isOwner:!0},component:ks},{path:"modules/:slug",name:"modules.view",meta:{isOwner:!0},component:ws},{path:"reports",meta:{ability:O.VIEW_FINANCIAL_REPORT},component:ys}]},{path:"/:catchAll(.*)",component:ps}];const Ss=()=>j(()=>import("./LayoutBasic.df06fd51.js"),["assets/LayoutBasic.df06fd51.js","assets/auth.4644c288.js","assets/vendor.01d0adc5.js","assets/global.08b6a984.js","assets/NotificationRoot.a98180ab.js"]),js=()=>j(()=>import("./LayoutLogin.96ca0d8f.js"),["assets/LayoutLogin.96ca0d8f.js","assets/NotificationRoot.a98180ab.js","assets/vendor.01d0adc5.js"]),wt=()=>j(()=>import("./Login.e5a5b4de.js"),["assets/Login.e5a5b4de.js","assets/vendor.01d0adc5.js","assets/auth.4644c288.js"]),Ps=()=>j(()=>import("./ForgotPassword.51f99d8b.js"),["assets/ForgotPassword.51f99d8b.js","assets/vendor.01d0adc5.js","assets/auth.4644c288.js"]),Ds=()=>j(()=>import("./ResetPassword.485b38b4.js"),["assets/ResetPassword.485b38b4.js","assets/vendor.01d0adc5.js","assets/global.08b6a984.js","assets/auth.4644c288.js"]),Cs=()=>j(()=>import("./Dashboard.4e48457e.js"),["assets/Dashboard.4e48457e.js","assets/EstimateIcon.1f3b368d.js","assets/vendor.01d0adc5.js","assets/global.08b6a984.js","assets/auth.4644c288.js","assets/BaseTable.6e206ca7.js"]),As=()=>j(()=>import("./Index.a00a8636.js"),["assets/Index.a00a8636.js","assets/vendor.01d0adc5.js","assets/invoice.b61ade7d.js","assets/auth.4644c288.js","assets/BaseTable.6e206ca7.js","assets/global.08b6a984.js","assets/MoonwalkerIcon.ab503573.js"]),Es=()=>j(()=>import("./View.02e08873.js"),["assets/View.02e08873.js","assets/vendor.01d0adc5.js","assets/invoice.b61ade7d.js","assets/auth.4644c288.js","assets/global.08b6a984.js"]),Ns=()=>j(()=>import("./Index.36ae4778.js"),["assets/Index.36ae4778.js","assets/vendor.01d0adc5.js","assets/BaseTable.6e206ca7.js","assets/global.08b6a984.js","assets/auth.4644c288.js","assets/estimate.e6573e64.js","assets/ObservatoryIcon.1877bd3e.js"]),Ts=()=>j(()=>import("./View.00b10884.js"),["assets/View.00b10884.js","assets/vendor.01d0adc5.js","assets/estimate.e6573e64.js","assets/auth.4644c288.js","assets/global.08b6a984.js"]),Is=()=>j(()=>import("./Index.97b641ce.js"),["assets/Index.97b641ce.js","assets/vendor.01d0adc5.js","assets/BaseTable.6e206ca7.js","assets/CapsuleIcon.dc769b69.js","assets/payment.037dd620.js","assets/auth.4644c288.js","assets/global.08b6a984.js"]),$s=()=>j(()=>import("./View.6c9abcf9.js"),["assets/View.6c9abcf9.js","assets/vendor.01d0adc5.js","assets/payment.037dd620.js","assets/auth.4644c288.js","assets/global.08b6a984.js"]),Rs=()=>j(()=>import("./SettingsIndex.25913381.js"),["assets/SettingsIndex.25913381.js","assets/BaseListItem.4eea691c.js","assets/vendor.01d0adc5.js","assets/global.08b6a984.js","assets/auth.4644c288.js"]),Fs=()=>j(()=>import("./CustomerSettings.3e617f27.js"),["assets/CustomerSettings.3e617f27.js","assets/vendor.01d0adc5.js","assets/global.08b6a984.js","assets/auth.4644c288.js"]),Ms=()=>j(()=>import("./AddressInformation.908aefd5.js"),["assets/AddressInformation.908aefd5.js","assets/vendor.01d0adc5.js","assets/global.08b6a984.js","assets/auth.4644c288.js"]);var Vs=[{path:"/:company/customer",component:js,meta:{redirectIfAuthenticated:!0},children:[{path:"",component:wt},{path:"login",component:wt,name:"customer.login"},{path:"forgot-password",component:Ps,name:"customer.forgot-password"},{path:"reset/password/:token",component:Ds,name:"customer.reset-password"}]},{path:"/:company/customer",component:Ss,meta:{requiresAuth:!0},children:[{path:"dashboard",component:Cs,name:"customer.dashboard"},{path:"invoices",component:As,name:"invoices.dashboard"},{path:"invoices/:id/view",component:Es,name:"customer.invoices.view"},{path:"estimates",component:Ns,name:"estimates.dashboard"},{path:"estimates/:id/view",component:Ts,name:"customer.estimates.view"},{path:"payments",component:Is,name:"payments.dashboard"},{path:"payments/:id/view",component:$s,name:"customer.payments.view"},{path:"settings",component:Rs,name:"customer",children:[{path:"customer-profile",component:Fs,name:"customer.profile"},{path:"address-info",component:Ms,name:"customer.address.info"}]}]}];let qe=[];qe=qe.concat(zs,Vs);const $e=Mt({history:Vt(),linkActiveClass:"active",routes:qe});$e.beforeEach((s,r,i)=>{const a=je(),t=Ie();let n=s.meta.ability;const{isAppLoaded:e}=t;n&&e&&s.meta.requiresAuth?a.hasAbilities(n)?i():i({name:"account.settings"}):s.meta.isOwner&&e?a.currentUser.is_owner?i():i({name:"dashboard"}):i()});var ee=(s,r)=>{const i=s.__vccOpts||s;for(const[a,t]of r)i[a]=t;return i};const Bs={};function Os(s,r){const i=C("router-view"),a=C("BaseDialog");return l(),_(Q,null,[u(i),u(a)],64)}var Ls=ee(Bs,[["render",Os]]);const Us={dashboard:"Dashboard",customers:"Customers",items:"Items",invoices:"Invoices","recurring-invoices":"Recurring Invoices",expenses:"Expenses",estimates:"Estimates",payments:"Payments",reports:"Reports",settings:"Settings",logout:"Logout",users:"Users",modules:"Modules"},Ks={add_company:"Add Company",view_pdf:"View PDF",copy_pdf_url:"Copy PDF Url",download_pdf:"Download PDF",save:"Save",create:"Create",cancel:"Cancel",update:"Update",deselect:"Deselect",download:"Download",from_date:"From Date",to_date:"To Date",from:"From",to:"To",ok:"Ok",yes:"Yes",no:"No",sort_by:"Sort By",ascending:"Ascending",descending:"Descending",subject:"Subject",body:"Body",message:"Message",send:"Send",preview:"Preview",go_back:"Go Back",back_to_login:"Back to Login?",home:"Home",filter:"Filter",delete:"Delete",edit:"Edit",view:"View",add_new_item:"Add New Item",clear_all:"Clear All",showing:"Showing",of:"of",actions:"Actions",subtotal:"SUBTOTAL",discount:"DISCOUNT",fixed:"Fixed",percentage:"Percentage",tax:"TAX",total_amount:"TOTAL AMOUNT",bill_to:"Bill to",ship_to:"Ship to",due:"Due",draft:"Draft",sent:"Sent",all:"All",select_all:"Select All",select_template:"Select Template",choose_file:"Click here to choose a file",choose_template:"Choose a template",choose:"Choose",remove:"Remove",select_a_status:"Select a status",select_a_tax:"Select a tax",search:"Search",are_you_sure:"Are you sure?",list_is_empty:"List is empty.",no_tax_found:"No tax found!",four_zero_four:"404",you_got_lost:"Whoops! You got Lost!",go_home:"Go Home",test_mail_conf:"Test Mail Configuration",send_mail_successfully:"Mail sent successfully",setting_updated:"Setting updated successfully",select_state:"Select state",select_country:"Select Country",select_city:"Select City",street_1:"Street 1",street_2:"Street 2",action_failed:"Action Failed",retry:"Retry",choose_note:"Choose Note",no_note_found:"No Note Found",insert_note:"Insert Note",copied_pdf_url_clipboard:"Copied PDF url to clipboard!",copied_url_clipboard:"Copied url to clipboard!",docs:"Docs",do_you_wish_to_continue:"Do you wish to continue?",note:"Note",pay_invoice:"Pay Invoice",login_successfully:"Logged in successfully!",logged_out_successfully:"Logged out successfully"},qs={select_year:"Select year",cards:{due_amount:"Amount Due",customers:"Customers",invoices:"Invoices",estimates:"Estimates",payments:"Payments"},chart_info:{total_sales:"Sales",total_receipts:"Receipts",total_expense:"Expenses",net_income:"Net Income",year:"Select year"},monthly_chart:{title:"Sales & Expenses"},recent_invoices_card:{title:"Due Invoices",due_on:"Due On",customer:"Customer",amount_due:"Amount Due",actions:"Actions",view_all:"View All"},recent_estimate_card:{title:"Recent Estimates",date:"Date",customer:"Customer",amount_due:"Amount Due",actions:"Actions",view_all:"View All"}},Zs={name:"Name",description:"Description",percent:"Percent",compound_tax:"Compound Tax"},Ws={search:"Search...",customers:"Customers",users:"Users",no_results_found:"No Results Found"},Hs={label:"SWITCH COMPANY",no_results_found:"No Results Found",add_new_company:"Add new company",new_company:"New company",created_message:"Company created successfully"},Gs={today:"Today",this_week:"This Week",this_month:"This Month",this_quarter:"This Quarter",this_year:"This Year",previous_week:"Previous Week",previous_month:"Previous Month",previous_quarter:"Previous Quarter",previous_year:"Previous Year",custom:"Custom"},Ys={title:"Customers",prefix:"Prefix",add_customer:"Add Customer",contacts_list:"Customer List",name:"Name",mail:"Mail | Mails",statement:"Statement",display_name:"Display Name",primary_contact_name:"Primary Contact Name",contact_name:"Contact Name",amount_due:"Amount Due",email:"Email",address:"Address",phone:"Phone",website:"Website",overview:"Overview",invoice_prefix:"Invoice Prefix",estimate_prefix:"Estimate Prefix",payment_prefix:"Payment Prefix",enable_portal:"Enable Portal",country:"Country",state:"State",city:"City",zip_code:"Zip Code",added_on:"Added On",action:"Action",password:"Password",confirm_password:"Confirm Password",street_number:"Street Number",primary_currency:"Primary Currency",description:"Description",add_new_customer:"Add New Customer",save_customer:"Save Customer",update_customer:"Update Customer",customer:"Customer | Customers",new_customer:"New Customer",edit_customer:"Edit Customer",basic_info:"Basic Info",portal_access:"Portal Access",portal_access_text:"Would you like to allow this customer to login to the Customer Portal?",portal_access_url:"Customer Portal Login URL",portal_access_url_help:"Please copy & forward the above given URL to your customer for providing access.",billing_address:"Billing Address",shipping_address:"Shipping Address",copy_billing_address:"Copy from Billing",no_customers:"No customers yet!",no_customers_found:"No customers found!",no_contact:"No contact",no_contact_name:"No contact name",list_of_customers:"This section will contain the list of customers.",primary_display_name:"Primary Display Name",select_currency:"Select currency",select_a_customer:"Select a customer",type_or_click:"Type or click to select",new_transaction:"New Transaction",no_matching_customers:"There are no matching customers!",phone_number:"Phone Number",create_date:"Create Date",confirm_delete:"You will not be able to recover this customer and all the related Invoices, Estimates and Payments. | You will not be able to recover these customers and all the related Invoices, Estimates and Payments.",created_message:"Customer created successfully",updated_message:"Customer updated successfully",address_updated_message:"Address Information Updated succesfully",deleted_message:"Customer deleted successfully | Customers deleted successfully",edit_currency_not_allowed:"Cannot change currency once transactions created."},Js={title:"Items",items_list:"Items List",name:"Name",unit:"Unit",description:"Description",added_on:"Added On",price:"Price",date_of_creation:"Date Of Creation",not_selected:"No item selected",action:"Action",add_item:"Add Item",save_item:"Save Item",update_item:"Update Item",item:"Item | Items",add_new_item:"Add New Item",new_item:"New Item",edit_item:"Edit Item",no_items:"No items yet!",list_of_items:"This section will contain the list of items.",select_a_unit:"select unit",taxes:"Taxes",item_attached_message:"Cannot delete an item which is already in use",confirm_delete:"You will not be able to recover this Item | You will not be able to recover these Items",created_message:"Item created successfully",updated_message:"Item updated successfully",deleted_message:"Item deleted successfully | Items deleted successfully"},Xs={title:"Estimates",accept_estimate:"Accept Estimate",reject_estimate:"Reject Estimate",estimate:"Estimate | Estimates",estimates_list:"Estimates List",days:"{days} Days",months:"{months} Month",years:"{years} Year",all:"All",paid:"Paid",unpaid:"Unpaid",customer:"CUSTOMER",ref_no:"REF NO.",number:"NUMBER",amount_due:"AMOUNT DUE",partially_paid:"Partially Paid",total:"Total",discount:"Discount",sub_total:"Sub Total",estimate_number:"Estimate Number",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",due_date:"Due Date",expiry_date:"Expiry Date",status:"Status",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",tax:"Tax",estimate_template:"Template",convert_to_invoice:"Convert to Invoice",mark_as_sent:"Mark as Sent",send_estimate:"Send Estimate",resend_estimate:"Resend Estimate",record_payment:"Record Payment",add_estimate:"Add Estimate",save_estimate:"Save Estimate",confirm_conversion:"This estimate will be used to create a new Invoice.",conversion_message:"Invoice created successful",confirm_send_estimate:"This estimate will be sent via email to the customer",confirm_mark_as_sent:"This estimate will be marked as sent",confirm_mark_as_accepted:"This estimate will be marked as Accepted",confirm_mark_as_rejected:"This estimate will be marked as Rejected",no_matching_estimates:"There are no matching estimates!",mark_as_sent_successfully:"Estimate marked as sent successfully",send_estimate_successfully:"Estimate sent successfully",errors:{required:"Field is required"},accepted:"Accepted",rejected:"Rejected",expired:"Expired",sent:"Sent",draft:"Draft",viewed:"Viewed",declined:"Declined",new_estimate:"New Estimate",add_new_estimate:"Add New Estimate",update_Estimate:"Update Estimate",edit_estimate:"Edit Estimate",items:"items",Estimate:"Estimate | Estimates",add_new_tax:"Add New Tax",no_estimates:"No estimates yet!",list_of_estimates:"This section will contain the list of estimates.",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",marked_as_accepted_message:"Estimate marked as accepted",marked_as_rejected_message:"Estimate marked as rejected",confirm_delete:"You will not be able to recover this Estimate | You will not be able to recover these Estimates",created_message:"Estimate created successfully",updated_message:"Estimate updated successfully",deleted_message:"Estimate deleted successfully | Estimates deleted successfully",something_went_wrong:"something went wrong",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"}},Qs={title:"Invoices",download:"Download",pay_invoice:"Pay Invoice",invoices_list:"Invoices List",invoice_information:"Invoice Information",days:"{days} Days",months:"{months} Month",years:"{years} Year",all:"All",paid:"Paid",unpaid:"Unpaid",viewed:"Viewed",overdue:"Overdue",completed:"Completed",customer:"CUSTOMER",paid_status:"PAID STATUS",ref_no:"REF NO.",number:"NUMBER",amount_due:"AMOUNT DUE",partially_paid:"Partially Paid",total:"Total",discount:"Discount",sub_total:"Sub Total",invoice:"Invoice | Invoices",invoice_number:"Invoice Number",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",due_date:"Due Date",status:"Status",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",view:"View",send_invoice:"Send Invoice",resend_invoice:"Resend Invoice",invoice_template:"Invoice Template",conversion_message:"Invoice cloned successful",template:"Select Template",mark_as_sent:"Mark as sent",confirm_send_invoice:"This invoice will be sent via email to the customer",invoice_mark_as_sent:"This invoice will be marked as sent",confirm_mark_as_accepted:"This invoice will be marked as Accepted",confirm_mark_as_rejected:"This invoice will be marked as Rejected",confirm_send:"This invoice will be sent via email to the customer",invoice_date:"Invoice Date",record_payment:"Record Payment",add_new_invoice:"Add New Invoice",update_expense:"Update Expense",edit_invoice:"Edit Invoice",new_invoice:"New Invoice",save_invoice:"Save Invoice",update_invoice:"Update Invoice",add_new_tax:"Add New Tax",no_invoices:"No Invoices yet!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"This section will contain the list of invoices.",select_invoice:"Select Invoice",no_matching_invoices:"There are no matching invoices!",mark_as_sent_successfully:"Invoice marked as sent successfully",invoice_sent_successfully:"Invoice sent successfully",cloned_successfully:"Invoice cloned successfully",clone_invoice:"Clone Invoice",confirm_clone:"This invoice will be cloned into a new Invoice",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"},payment_attached_message:"One of the selected invoices already have a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal",confirm_delete:"You will not be able to recover this Invoice | You will not be able to recover these Invoices",created_message:"Invoice created successfully",updated_message:"Invoice updated successfully",deleted_message:"Invoice deleted successfully | Invoices deleted successfully",marked_as_sent_message:"Invoice marked as sent successfully",something_went_wrong:"something went wrong",invalid_due_amount_message:"Total Invoice amount cannot be less than total paid amount for this Invoice. Please update the invoice or delete the associated payments to continue."},en={title:"Recurring Invoices",invoices_list:"Recurring Invoices List",days:"{days} Days",months:"{months} Month",years:"{years} Year",all:"All",paid:"Paid",unpaid:"Unpaid",viewed:"Viewed",overdue:"Overdue",active:"Active",completed:"Completed",customer:"CUSTOMER",paid_status:"PAID STATUS",ref_no:"REF NO.",number:"NUMBER",amount_due:"AMOUNT DUE",partially_paid:"Partially Paid",total:"Total",discount:"Discount",sub_total:"Sub Total",invoice:"Recurring Invoice | Recurring Invoices",invoice_number:"Recurring Invoice Number",next_invoice_date:"Next Invoice Date",ref_number:"Ref Number",contact:"Contact",add_item:"Add an Item",date:"Date",limit_by:"Limit by",limit_date:"Limit Date",limit_count:"Limit Count",count:"Count",status:"Status",select_a_status:"Select a status",working:"Working",on_hold:"On Hold",complete:"Completed",add_tax:"Add Tax",amount:"Amount",action:"Action",notes:"Notes",view:"View",basic_info:"Basic Info",send_invoice:"Send Recurring Invoice",auto_send:"Auto Send",resend_invoice:"Resend Recurring Invoice",invoice_template:"Recurring Invoice Template",conversion_message:"Recurring Invoice cloned successful",template:"Template",mark_as_sent:"Mark as sent",confirm_send_invoice:"This recurring invoice will be sent via email to the customer",invoice_mark_as_sent:"This recurring invoice will be marked as sent",confirm_send:"This recurring invoice will be sent via email to the customer",starts_at:"Start Date",due_date:"Invoice Due Date",record_payment:"Record Payment",add_new_invoice:"Add New Recurring Invoice",update_expense:"Update Expense",edit_invoice:"Edit Recurring Invoice",new_invoice:"New Recurring Invoice",send_automatically:"Send Automatically",send_automatically_desc:"Enable this, if you would like to send the invoice automatically to the customer when its created.",save_invoice:"Save Recurring Invoice",update_invoice:"Update Recurring Invoice",add_new_tax:"Add New Tax",no_invoices:"No Recurring Invoices yet!",mark_as_rejected:"Mark as rejected",mark_as_accepted:"Mark as accepted",list_of_invoices:"This section will contain the list of recurring invoices.",select_invoice:"Select Invoice",no_matching_invoices:"There are no matching recurring invoices!",mark_as_sent_successfully:"Recurring Invoice marked as sent successfully",invoice_sent_successfully:"Recurring Invoice sent successfully",cloned_successfully:"Recurring Invoice cloned successfully",clone_invoice:"Clone Recurring Invoice",confirm_clone:"This recurring invoice will be cloned into a new Recurring Invoice",item:{title:"Item Title",description:"Description",quantity:"Quantity",price:"Price",discount:"Discount",total:"Total",total_discount:"Total Discount",sub_total:"Sub Total",tax:"Tax",amount:"Amount",select_an_item:"Type or click to select an item",type_item_description:"Type Item Description (optional)"},frequency:{title:"Frequency",select_frequency:"Select Frequency",minute:"Minute",hour:"Hour",day_month:"Day of month",month:"Month",day_week:"Day of week"},confirm_delete:"You will not be able to recover this Invoice | You will not be able to recover these Invoices",created_message:"Recurring Invoice created successfully",updated_message:"Recurring Invoice updated successfully",deleted_message:"Recurring Invoice deleted successfully | Recurring Invoices deleted successfully",marked_as_sent_message:"Recurring Invoice marked as sent successfully",user_email_does_not_exist:"User email does not exist",something_went_wrong:"something went wrong",invalid_due_amount_message:"Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue."},tn={title:"Payments",payments_list:"Payments List",record_payment:"Record Payment",customer:"Customer",date:"Date",amount:"Amount",action:"Action",payment_number:"Payment Number",payment_mode:"Payment Mode",invoice:"Invoice",note:"Note",add_payment:"Add Payment",new_payment:"New Payment",edit_payment:"Edit Payment",view_payment:"View Payment",add_new_payment:"Add New Payment",send_payment_receipt:"Send Payment Receipt",send_payment:"Send Payment",save_payment:"Save Payment",update_payment:"Update Payment",payment:"Payment | Payments",no_payments:"No payments yet!",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"There are no matching payments!",list_of_payments:"This section will contain the list of payments.",select_payment_mode:"Select payment mode",confirm_mark_as_sent:"This estimate will be marked as sent",confirm_send_payment:"This payment will be sent via email to the customer",send_payment_successfully:"Payment sent successfully",something_went_wrong:"something went wrong",confirm_delete:"You will not be able to recover this Payment | You will not be able to recover these Payments",created_message:"Payment created successfully",updated_message:"Payment updated successfully",deleted_message:"Payment deleted successfully | Payments deleted successfully",invalid_amount_message:"Payment amount is invalid"},an={title:"Expenses",expenses_list:"Expenses List",select_a_customer:"Select a customer",expense_title:"Title",customer:"Customer",currency:"Currency",contact:"Contact",category:"Category",from_date:"From Date",to_date:"To Date",expense_date:"Date",description:"Description",receipt:"Receipt",amount:"Amount",action:"Action",not_selected:"Not selected",note:"Note",category_id:"Category Id",date:"Date",add_expense:"Add Expense",add_new_expense:"Add New Expense",save_expense:"Save Expense",update_expense:"Update Expense",download_receipt:"Download Receipt",edit_expense:"Edit Expense",new_expense:"New Expense",expense:"Expense | Expenses",no_expenses:"No expenses yet!",list_of_expenses:"This section will contain the list of expenses.",confirm_delete:"You will not be able to recover this Expense | You will not be able to recover these Expenses",created_message:"Expense created successfully",updated_message:"Expense updated successfully",deleted_message:"Expense deleted successfully | Expenses deleted successfully",categories:{categories_list:"Categories List",title:"Title",name:"Name",description:"Description",amount:"Amount",actions:"Actions",add_category:"Add Category",new_category:"New Category",category:"Category | Categories",select_a_category:"Select a category"}},sn={email:"Email",password:"Password",forgot_password:"Forgot Password?",or_signIn_with:"or Sign in with",login:"Login",register:"Register",reset_password:"Reset Password",password_reset_successfully:"Password Reset Successfully",enter_email:"Enter email",enter_password:"Enter Password",retype_password:"Retype Password"},nn={buy_now:"Buy Now",install:"Install",price:"Price",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",completing_installation:"Completing Installation",update_failed:"Update Failed",install_success:"Module has been installed successfully!",customer_reviews:"Reviews",license:"License",faq:"FAQ",monthly:"Monthly",yearly:"Yearly",updated:"Updated",version:"Version",disable:"Disable",module_disabled:"Module Disabled",enable:"Enable",module_enabled:"Module Enabled",update_to:"Update To",module_updated:"Module Updated Successfully!",title:"Modules",module:"Module | Modules",api_token:"API token",invalid_api_token:"Invalid API Token.",other_modules:"Other Modules",view_all:"View All",no_reviews_found:"There are no reviews for this module yet!",module_not_purchased:"Module Not Purchased",module_not_found:"Module Not Found",version_not_supported:"This module version doesn't support the current version of Crater",last_updated:"Last Updated On",connect_installation:"Connect your installation",api_token_description:"Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.",view_module:"View Module",update_available:"Update Available",purchased:"Purchased",installed:"Installed",no_modules_installed:"No Modules Installed Yet!",disable_warning:"All the settings for this particular will be reverted.",what_you_get:"What you get"},on={title:"Users",users_list:"Users List",name:"Name",description:"Description",added_on:"Added On",date_of_creation:"Date Of Creation",action:"Action",add_user:"Add User",save_user:"Save User",update_user:"Update User",user:"User | Users",add_new_user:"Add New User",new_user:"New User",edit_user:"Edit User",no_users:"No users yet!",list_of_users:"This section will contain the list of users.",email:"Email",phone:"Phone",password:"Password",user_attached_message:"Cannot delete an item which is already in use",confirm_delete:"You will not be able to recover this User | You will not be able to recover these Users",created_message:"User created successfully",updated_message:"User updated successfully",deleted_message:"User deleted successfully | Users deleted successfully",select_company_role:"Select Role for {company}",companies:"Companies"},rn={title:"Report",from_date:"From Date",to_date:"To Date",status:"Status",paid:"Paid",unpaid:"Unpaid",download_pdf:"Download PDF",view_pdf:"View PDF",update_report:"Update Report",report:"Report | Reports",profit_loss:{profit_loss:"Profit & Loss",to_date:"To Date",from_date:"From Date",date_range:"Select Date Range"},sales:{sales:"Sales",date_range:"Select Date Range",to_date:"To Date",from_date:"From Date",report_type:"Report Type"},taxes:{taxes:"Taxes",to_date:"To Date",from_date:"From Date",date_range:"Select Date Range"},errors:{required:"Field is required"},invoices:{invoice:"Invoice",invoice_date:"Invoice Date",due_date:"Due Date",amount:"Amount",contact_name:"Contact Name",status:"Status"},estimates:{estimate:"Estimate",estimate_date:"Estimate Date",due_date:"Due Date",estimate_number:"Estimate Number",ref_number:"Ref Number",amount:"Amount",contact_name:"Contact Name",status:"Status"},expenses:{expenses:"Expenses",category:"Category",date:"Date",amount:"Amount",to_date:"To Date",from_date:"From Date",date_range:"Select Date Range"}},dn={menu_title:{account_settings:"Account Settings",company_information:"Company Information",customization:"Customization",preferences:"Preferences",notifications:"Notifications",tax_types:"Tax Types",expense_category:"Expense Categories",update_app:"Update App",backup:"Backup",file_disk:"File Disk",custom_fields:"Custom Fields",payment_modes:"Payment Modes",notes:"Notes",exchange_rate:"Exchange Rate",address_information:"Address Information"},address_information:{section_description:" You can update Your Address information using form below."},title:"Settings",setting:"Settings | Settings",general:"General",language:"Language",primary_currency:"Primary Currency",timezone:"Time Zone",date_format:"Date Format",currencies:{title:"Currencies",currency:"Currency | Currencies",currencies_list:"Currencies List",select_currency:"Select Currency",name:"Name",code:"Code",symbol:"Symbol",precision:"Precision",thousand_separator:"Thousand Separator",decimal_separator:"Decimal Separator",position:"Position",position_of_symbol:"Position Of Symbol",right:"Right",left:"Left",action:"Action",add_currency:"Add Currency"},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail Driver",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"Mail Password",username:"Mail Username",mail_config:"Mail Configuration",from_name:"From Mail Name",from_mail:"From Mail Address",encryption:"Mail Encryption",mail_config_desc:"Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc."},pdf:{title:"PDF Setting",footer_text:"Footer Text",pdf_layout:"PDF Layout"},company_info:{company_info:"Company info",company_name:"Company Name",company_logo:"Company Logo",section_description:"Information about your company that will be displayed on invoices, estimates and other documents created by Crater.",phone:"Phone",country:"Country",state:"State",city:"City",address:"Address",zip:"Zip",save:"Save",delete:"Delete",updated_message:"Company information updated successfully",delete_company:"Delete Company",delete_company_description:"Once you delete your company, you will lose all the data and files associated with it permanently.",are_you_absolutely_sure:"Are you absolutely sure?",delete_company_modal_desc:"This action cannot be undone. This will permanently delete {company} and all of its associated data.",delete_company_modal_label:"Please type {company} to confirm"},custom_fields:{title:"Custom Fields",section_description:"Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.",add_custom_field:"Add Custom Field",edit_custom_field:"Edit Custom Field",field_name:"Field Name",label:"Label",type:"Type",name:"Name",slug:"Slug",required:"Required",placeholder:"Placeholder",help_text:"Help Text",default_value:"Default Value",prefix:"Prefix",starting_number:"Starting Number",model:"Model",help_text_description:"Enter some text to help users understand the purpose of this custom field.",suffix:"Suffix",yes:"Yes",no:"No",order:"Order",custom_field_confirm_delete:"You will not be able to recover this Custom Field",already_in_use:"Custom Field is already in use",deleted_message:"Custom Field deleted successfully",options:"options",add_option:"Add Options",add_another_option:"Add another option",sort_in_alphabetical_order:"Sort in Alphabetical Order",add_options_in_bulk:"Add options in bulk",use_predefined_options:"Use Predefined Options",select_custom_date:"Select Custom Date",select_relative_date:"Select Relative Date",ticked_by_default:"Ticked by default",updated_message:"Custom Field updated successfully",added_message:"Custom Field added successfully",press_enter_to_add:"Press enter to add new option",model_in_use:"Cannot update model for fields which are already in use.",type_in_use:"Cannot update type for fields which are already in use."},customization:{customization:"customization",updated_message:"Company information updated successfully",save:"Save",insert_fields:"Insert Fields",learn_custom_format:"Learn how to use custom format",add_new_component:"Add New Component",component:"Component",Parameter:"Parameter",series:"Series",series_description:"To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.",series_param_label:"Series Value",delimiter:"Delimiter",delimiter_description:"Single character for specifying the boundary between 2 separate components. By default its set to -",delimiter_param_label:"Delimiter Value",date_format:"Date Format",date_format_description:"A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.",date_format_param_label:"Format",sequence:"Sequence",sequence_description:"Consecutive sequence of numbers across your company. You can specify the length on the given parameter.",sequence_param_label:"Sequence Length",customer_series:"Customer Series",customer_series_description:"To set a different prefix/postfix for each customer.",customer_sequence:"Customer Sequence",customer_sequence_description:"Consecutive sequence of numbers for each of your customer.",customer_sequence_param_label:"Sequence Length",random_sequence:"Random Sequence",random_sequence_description:"Random alphanumeric string. You can specify the length on the given parameter.",random_sequence_param_label:"Sequence Length",invoices:{title:"Invoices",invoice_number_format:"Invoice Number Format",invoice_number_format_description:"Customize how your invoice number gets generated automatically when you create a new invoice.",preview_invoice_number:"Preview Invoice Number",due_date:"Due Date",due_date_description:"Specify how due date is automatically set when you create an invoice.",due_date_days:"Invoice Due after days",set_due_date_automatically:"Set Due Date Automatically",set_due_date_automatically_description:"Enable this if you wish to set due date automatically when you create a new invoice.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on invoice creation.",default_invoice_email_body:"Default Invoice Email Body",company_address_format:"Company Address Format",shipping_address_format:"Shipping Address Format",billing_address_format:"Billing Address Format",invoice_email_attachment:"Send invoices as attachments",invoice_email_attachment_setting_description:"Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.",invoice_settings_updated:"Invoice Settings updated successfully",retrospective_edits:"Retrospective Edits",allow:"Allow",disable_on_invoice_partial_paid:"Disable after partial payment is recorded",disable_on_invoice_paid:"Disable after full payment is recorded",disable_on_invoice_sent:"Disable after invoice is sent",retrospective_edits_description:" Based on your country's laws or your preference, you can restrict users from editing finalised invoices."},estimates:{title:"Estimates",estimate_number_format:"Estimate Number Format",estimate_number_format_description:"Customize how your estimate number gets generated automatically when you create a new estimate.",preview_estimate_number:"Preview Estimate Number",expiry_date:"Expiry Date",expiry_date_description:"Specify how expiry date is automatically set when you create an estimate.",expiry_date_days:"Estimate Expires after days",set_expiry_date_automatically:"Set Expiry Date Automatically",set_expiry_date_automatically_description:"Enable this if you wish to set expiry date automatically when you create a new estimate.",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on estimate creation.",default_estimate_email_body:"Default Estimate Email Body",company_address_format:"Company Address Format",shipping_address_format:"Shipping Address Format",billing_address_format:"Billing Address Format",estimate_email_attachment:"Send estimates as attachments",estimate_email_attachment_setting_description:"Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.",estimate_settings_updated:"Estimate Settings updated successfully",convert_estimate_options:"Estimate Convert Action",convert_estimate_description:"Specify what happens to the estimate after it gets converted to an invoice.",no_action:"No action",delete_estimate:"Delete estimate",mark_estimate_as_accepted:"Mark estimate as accepted"},payments:{title:"Payments",payment_number_format:"Payment Number Format",payment_number_format_description:"Customize how your payment number gets generated automatically when you create a new payment.",preview_payment_number:"Preview Payment Number",default_formats:"Default Formats",default_formats_description:"Below given formats are used to fill up the fields automatically on payment creation.",default_payment_email_body:"Default Payment Email Body",company_address_format:"Company Address Format",from_customer_address_format:"From Customer Address Format",payment_email_attachment:"Send payments as attachments",payment_email_attachment_setting_description:"Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.",payment_settings_updated:"Payment Settings updated successfully"},items:{title:"Items",units:"Units",add_item_unit:"Add Item Unit",edit_item_unit:"Edit Item Unit",unit_name:"Unit Name",item_unit_added:"Item Unit Added",item_unit_updated:"Item Unit Updated",item_unit_confirm_delete:"You will not be able to recover this Item unit",already_in_use:"Item Unit is already in use",deleted_message:"Item Unit deleted successfully"},notes:{title:"Notes",description:"Save time by creating notes and reusing them on your invoices, estimates & payments.",notes:"Notes",type:"Type",add_note:"Add Note",add_new_note:"Add New Note",name:"Name",edit_note:"Edit Note",note_added:"Note added successfully",note_updated:"Note Updated successfully",note_confirm_delete:"You will not be able to recover this Note",already_in_use:"Note is already in use",deleted_message:"Note deleted successfully"}},account_settings:{profile_picture:"Profile Picture",name:"Name",email:"Email",password:"Password",confirm_password:"Confirm Password",account_settings:"Account Settings",save:"Save",section_description:"You can update your name, email & password using the form below.",updated_message:"Account Settings updated successfully"},user_profile:{name:"Name",email:"Email",password:"Password",confirm_password:"Confirm Password"},notification:{title:"Notifications",email:"Send Notifications to",description:"Which email notifications would you like to receive when something changes?",invoice_viewed:"Invoice viewed",invoice_viewed_desc:"When your customer views the invoice sent via crater dashboard.",estimate_viewed:"Estimate viewed",estimate_viewed_desc:"When your customer views the estimate sent via crater dashboard.",save:"Save",email_save_message:"Email saved successfully",please_enter_email:"Please Enter Email"},roles:{title:"Roles",description:"Manage the roles & permissions of this company",save:"Save",add_new_role:"Add New Role",role_name:"Role Name",added_on:"Added on",add_role:"Add Role",edit_role:"Edit Role",name:"Name",permission:"Permission | Permissions",select_all:"Select All",none:"None",confirm_delete:"You will not be able to recover this Role",created_message:"Role created successfully",updated_message:"Role updated successfully",deleted_message:"Role deleted successfully",already_in_use:"Role is already in use"},exchange_rate:{exchange_rate:"Exchange Rate",title:"Fix Currency Exchange issues",description:"Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.",drivers:"Drivers",new_driver:"Add New Provider",edit_driver:"Edit Provider",select_driver:"Select Driver",update:"select exchange rate ",providers_description:"Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.",key:"API Key",name:"Name",driver:"Driver",is_default:"IS DEFAULT",currency:"Currencies",exchange_rate_confirm_delete:"You will not be able to recover this driver",created_message:"Provider Created successfully",updated_message:"Provider Updated Successfully",deleted_message:"Provider Deleted Successfully",error:" You cannot Delete Active Driver",default_currency_error:"This currency is already used in one of the Active Provider",exchange_help_text:"Enter exchange rate to convert from {currency} to {baseCurrency}",currency_freak:"Currency Freak",currency_layer:"Currency Layer",open_exchange_rate:"Open Exchange Rate",currency_converter:"Currency Converter",server:"Server",url:"URL",active:"Active",currency_help_text:"This provider will only be used on above selected currencies",currency_in_used:"The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again."},tax_types:{title:"Tax Types",add_tax:"Add Tax",edit_tax:"Edit Tax",description:"You can add or Remove Taxes as you please. Crater supports Taxes on Individual Items as well as on the invoice.",add_new_tax:"Add New Tax",tax_settings:"Tax Settings",tax_per_item:"Tax Per Item",tax_name:"Tax Name",compound_tax:"Compound Tax",percent:"Percent",action:"Action",tax_setting_description:"Enable this if you want to add taxes to individual invoice items. By default, taxes are added directly to the invoice.",created_message:"Tax type created successfully",updated_message:"Tax type updated successfully",deleted_message:"Tax type deleted successfully",confirm_delete:"You will not be able to recover this Tax Type",already_in_use:"Tax is already in use"},payment_modes:{title:"Payment Modes",description:"Modes of transaction for payments",add_payment_mode:"Add Payment Mode",edit_payment_mode:"Edit Payment Mode",mode_name:"Mode Name",payment_mode_added:"Payment Mode Added",payment_mode_updated:"Payment Mode Updated",payment_mode_confirm_delete:"You will not be able to recover this Payment Mode",already_in_use:"Payment Mode is already in use",deleted_message:"Payment Mode deleted successfully"},expense_category:{title:"Expense Categories",action:"Action",description:"Categories are required for adding expense entries. You can Add or Remove these categories according to your preference.",add_new_category:"Add New Category",add_category:"Add Category",edit_category:"Edit Category",category_name:"Category Name",category_description:"Description",created_message:"Expense Category created successfully",deleted_message:"Expense category deleted successfully",updated_message:"Expense category updated successfully",confirm_delete:"You will not be able to recover this Expense Category",already_in_use:"Category is already in use"},preferences:{currency:"Currency",default_language:"Default Language",time_zone:"Time Zone",fiscal_year:"Financial Year",date_format:"Date Format",discount_setting:"Discount Setting",discount_per_item:"Discount Per Item ",discount_setting_description:"Enable this if you want to add Discount to individual invoice items. By default, Discount is added directly to the invoice.",expire_public_links:"Automatically Expire Public Links",expire_setting_description:"Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.",save:"Save",preference:"Preference | Preferences",general_settings:"Default preferences for the system.",updated_message:"Preferences updated successfully",select_language:"Select Language",select_time_zone:"Select Time Zone",select_date_format:"Select Date Format",select_financial_year:"Select Financial Year",recurring_invoice_status:"Recurring Invoice Status",create_status:"Create Status",active:"Active",on_hold:"On Hold",update_status:"Update Status",completed:"Completed",company_currency_unchangeable:"Company currency cannot be changed"},update_app:{title:"Update App",description:"You can easily update Crater by checking for a new update by clicking the button below",check_update:"Check for updates",avail_update:"New Update available",next_version:"Next version",requirements:"Requirements",update:"Update Now",update_progress:"Update in progress...",progress_text:"It will just take a few minutes. Please do not refresh the screen or close the window before the update finishes",update_success:"App has been updated! Please wait while your browser window gets reloaded automatically.",latest_message:"No update available! You are on the latest version.",current_version:"Current Version",download_zip_file:"Download ZIP file",unzipping_package:"Unzipping Package",copying_files:"Copying Files",deleting_files:"Deleting Unused files",running_migrations:"Running Migrations",finishing_update:"Finishing Update",update_failed:"Update Failed",update_failed_text:"Sorry! Your update failed on : {step} step",update_warning:"All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating."},backup:{title:"Backup | Backups",description:"The backup is a zipfile that contains all files in the directories you specify along with a dump of your database",new_backup:"Add New Backup",create_backup:"Create Backup",select_backup_type:"Select Backup Type",backup_confirm_delete:"You will not be able to recover this Backup",path:"path",new_disk:"New Disk",created_at:"created at",size:"size",dropbox:"dropbox",local:"local",healthy:"healthy",amount_of_backups:"amount of backups",newest_backups:"newest backups",used_storage:"used storage",select_disk:"Select Disk",action:"Action",deleted_message:"Backup deleted successfully",created_message:"Backup created successfully",invalid_disk_credentials:"Invalid credential of selected disk"},disk:{title:"File Disk | File Disks",description:"By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.",created_at:"created at",dropbox:"dropbox",name:"Name",driver:"Driver",disk_type:"Type",disk_name:"Disk Name",new_disk:"Add New Disk",filesystem_driver:"Filesystem Driver",local_driver:"local Driver",local_root:"local Root",public_driver:"Public Driver",public_root:"Public Root",public_url:"Public URL",public_visibility:"Public Visibility",media_driver:"Media Driver",media_root:"Media Root",aws_driver:"AWS Driver",aws_key:"AWS Key",aws_secret:"AWS Secret",aws_region:"AWS Region",aws_bucket:"AWS Bucket",aws_root:"AWS Root",do_spaces_type:"Do Spaces type",do_spaces_key:"Do Spaces key",do_spaces_secret:"Do Spaces Secret",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Dropbox Type",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Key",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Default Driver",is_default:"IS DEFAULT",set_default_disk:"Set Default Disk",set_default_disk_confirm:"This disk will be set as default and all the new PDFs will be saved on this disk",success_set_default_disk:"Disk set as default successfully",save_pdf_to_disk:"Save PDFs to Disk",disk_setting_description:" Enable this, if you wish to save a copy of each Invoice, Estimate & Payment Receipt PDF on your default disk automatically. Turning this option will decrease the load-time when viewing the PDFs.",select_disk:"Select Disk",disk_settings:"Disk Settings",confirm_delete:"Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater",action:"Action",edit_file_disk:"Edit File Disk",success_create:"Disk added successfully",success_update:"Disk updated successfully",error:"Disk addition failed",deleted_message:"File Disk deleted successfully",disk_variables_save_successfully:"Disk Configured Successfully",disk_variables_save_error:"Disk configuration failed.",invalid_disk_credentials:"Invalid credential of selected disk"},taxations:{add_billing_address:"Enter Billing Address",add_shipping_address:"Enter Shipping Address",add_company_address:"Enter Company Address",modal_description:"The information below is required in order to fetch sales tax.",add_address:"Add Address for fetching sales tax.",address_placeholder:"Example: 123, My Street",city_placeholder:"Example: Los Angeles",state_placeholder:"Example: CA",zip_placeholder:"Example: 90024",invalid_address:"Please provide valid address details."}},ln={account_info:"Account Information",account_info_desc:"Below details will be used to create the main Administrator account. Also you can change the details anytime after logging in.",name:"Name",email:"Email",password:"Password",confirm_password:"Confirm Password",save_cont:"Save & Continue",company_info:"Company Information",company_info_desc:"This information will be displayed on invoices. Note that you can edit this later on settings page.",company_name:"Company Name",company_logo:"Company Logo",logo_preview:"Logo Preview",preferences:"Company Preferences",preferences_desc:"Specify the default preferences for this company.",currency_set_alert:"The company's currency cannot be changed later.",country:"Country",state:"State",city:"City",address:"Address",street:"Street1 | Street2",phone:"Phone",zip_code:"Zip Code",go_back:"Go Back",currency:"Currency",language:"Language",time_zone:"Time Zone",fiscal_year:"Financial Year",date_format:"Date Format",from_address:"From Address",username:"Username",next:"Next",continue:"Continue",skip:"Skip",database:{database:"Site URL & Database",connection:"Database Connection",host:"Database Host",port:"Database Port",password:"Database Password",app_url:"App URL",app_domain:"App Domain",username:"Database Username",db_name:"Database Name",db_path:"Database Path",desc:"Create a database on your server and set the credentials using the form below."},permissions:{permissions:"Permissions",permission_confirm_title:"Are you sure you want to continue?",permission_confirm_desc:"Folder permission check failed",permission_desc:"Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions."},verify_domain:{title:"Domain Verification",desc:"Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.",app_domain:"App Domain",verify_now:"Verify Now",success:"Domain Verify Successfully.",failed:"Domain verification failed. Please enter valid domain name.",verify_and_continue:"Verify And Continue"},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail Driver",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"Mail Password",username:"Mail Username",mail_config:"Mail Configuration",from_name:"From Mail Name",from_mail:"From Mail Address",encryption:"Mail Encryption",mail_config_desc:"Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc."},req:{system_req:"System Requirements",php_req_version:"Php (version {version} required)",check_req:"Check Requirements",system_req_desc:"Crater has a few server requirements. Make sure that your server has the required php version and all the extensions mentioned below."},errors:{migrate_failed:"Migrate Failed",database_variables_save_error:"Cannot write configuration to .env file. Please check its file permissions",mail_variables_save_error:"Email configuration failed.",connection_failed:"Database connection failed",database_should_be_empty:"Database should be empty"},success:{mail_variables_save_successfully:"Email configured successfully",database_variables_save_successfully:"Database configured successfully."}},cn={invalid_phone:"Invalid Phone Number",invalid_url:"Invalid url (ex: http://www.craterapp.com)",invalid_domain_url:"Invalid url (ex: craterapp.com)",required:"Field is required",email_incorrect:"Incorrect Email.",email_already_taken:"The email has already been taken.",email_does_not_exist:"User with given email doesn't exist",item_unit_already_taken:"This item unit name has already been taken",payment_mode_already_taken:"This payment mode name has already been taken",send_reset_link:"Send Reset Link",not_yet:"Not yet? Send it again",password_min_length:"Password must contain {count} characters",name_min_length:"Name must have at least {count} letters.",prefix_min_length:"Prefix must have at least {count} letters.",enter_valid_tax_rate:"Enter valid tax rate",numbers_only:"Numbers Only.",characters_only:"Characters Only.",password_incorrect:"Passwords must be identical",password_length:"Password must be {count} character long.",qty_must_greater_than_zero:"Quantity must be greater than zero.",price_greater_than_zero:"Price must be greater than zero.",payment_greater_than_zero:"Payment must be greater than zero.",payment_greater_than_due_amount:"Entered Payment is more than due amount of this invoice.",quantity_maxlength:"Quantity should not be greater than 20 digits.",price_maxlength:"Price should not be greater than 20 digits.",price_minvalue:"Price should be greater than 0.",amount_maxlength:"Amount should not be greater than 20 digits.",amount_minvalue:"Amount should be greater than 0.",discount_maxlength:"Discount should not be greater than max discount",description_maxlength:"Description should not be greater than 255 characters.",subject_maxlength:"Subject should not be greater than 100 characters.",message_maxlength:"Message should not be greater than 255 characters.",maximum_options_error:"Maximum of {max} options selected. First remove a selected option to select another.",notes_maxlength:"Notes should not be greater than 65,000 characters.",address_maxlength:"Address should not be greater than 255 characters.",ref_number_maxlength:"Ref Number should not be greater than 255 characters.",prefix_maxlength:"Prefix should not be greater than 5 characters.",something_went_wrong:"something went wrong",number_length_minvalue:"Number length should be greater than 0",at_least_one_ability:"Please select atleast one Permission.",valid_driver_key:"Please enter a valid {driver} key.",valid_exchange_rate:"Please enter a valid exchange rate.",company_name_not_same:"Company name must match with given name."},_n={starter_plan:"This feature is available on Starter plan and onwards!",invalid_provider_key:"Please Enter Valid Provider API Key.",estimate_number_used:"The estimate number has already been taken.",invoice_number_used:"The invoice number has already been taken.",payment_attached:"This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.",payment_number_used:"The payment number has already been taken.",name_already_taken:"The name has already been taken.",receipt_does_not_exist:"Receipt does not exist.",customer_cannot_be_changed_after_payment_is_added:"Customer cannot be change after payment is added",invalid_credentials:"Invalid Credentials.",not_allowed:"Not Allowed",login_invalid_credentials:"These credentials do not match our records.",enter_valid_cron_format:"Please enter a valid cron format",email_could_not_be_sent:"Email could not be sent to this email address.",invalid_address:"Please enter a valid address.",invalid_key:"Please enter valid key.",invalid_state:"Please enter a valid state.",invalid_city:"Please enter a valid city.",invalid_postal_code:"Please enter a valid zip.",invalid_format:"Please enter valid query string format.",api_error:"Server not responding.",feature_not_enabled:"Feature not enabled.",request_limit_met:"Api request limit exceeded.",address_incomplete:"Incomplete Address"},un="Estimate",mn="Estimate Number",pn="Estimate Date",gn="Expiry date",fn="Invoice",hn="Invoice Number",vn="Invoice Date",yn="Due date",bn="Notes",kn="Items",wn="Quantity",xn="Price",zn="Discount",Sn="Amount",jn="Subtotal",Pn="Total",Dn="Payment",Cn="PAYMENT RECEIPT",An="Payment Date",En="Payment Number",Nn="Payment Mode",Tn="Amount Received",In="EXPENSES REPORT",$n="TOTAL EXPENSE",Rn="PROFIT & LOSS REPORT",Fn="Sales Customer Report",Mn="Sales Item Report",Vn="Tax Summary Report",Bn="INCOME",On="NET PROFIT",Ln="Sales Report: By Customer",Un="TOTAL SALES",Kn="Sales Report: By Item",qn="TAX REPORT",Zn="TOTAL TAX",Wn="Tax Types",Hn="Expenses",Gn="Bill to,",Yn="Ship to,",Jn="Received from:",Xn="Tax";var Qn={navigation:Us,general:Ks,dashboard:qs,tax_types:Zs,global_search:Ws,company_switcher:Hs,dateRange:Gs,customers:Ys,items:Js,estimates:Xs,invoices:Qs,recurring_invoices:en,payments:tn,expenses:an,login:sn,modules:nn,users:on,reports:rn,settings:dn,wizard:ln,validation:cn,errors:_n,pdf_estimate_label:un,pdf_estimate_number:mn,pdf_estimate_date:pn,pdf_estimate_expire_date:gn,pdf_invoice_label:fn,pdf_invoice_number:hn,pdf_invoice_date:vn,pdf_invoice_due_date:yn,pdf_notes:bn,pdf_items_label:kn,pdf_quantity_label:wn,pdf_price_label:xn,pdf_discount_label:zn,pdf_amount_label:Sn,pdf_subtotal:jn,pdf_total:Pn,pdf_payment_label:Dn,pdf_payment_receipt_label:Cn,pdf_payment_date:An,pdf_payment_number:En,pdf_payment_mode:Nn,pdf_payment_amount_received_label:Tn,pdf_expense_report_label:In,pdf_total_expenses_label:$n,pdf_profit_loss_label:Rn,pdf_sales_customers_label:Fn,pdf_sales_items_label:Mn,pdf_tax_summery_label:Vn,pdf_income_label:Bn,pdf_net_profit_label:On,pdf_customer_sales_report:Ln,pdf_total_sales_label:Un,pdf_item_sales_label:Kn,pdf_tax_report_label:qn,pdf_total_tax_label:Zn,pdf_tax_types_label:Wn,pdf_expenses_label:Hn,pdf_bill_to:Gn,pdf_ship_to:Yn,pdf_received_from:Jn,pdf_tax_label:Xn};const ei={dashboard:"Tableau de bord",customers:"Clients",items:"Articles",invoices:"Factures",expenses:"D\xE9penses",estimates:"Devis",payments:"Paiements",reports:"Rapports",settings:"Param\xE8tres",logout:"Se d\xE9connecter",users:"Utilisateurs"},ti={add_company:"Ajouter une entreprise",view_pdf:"Voir PDF",copy_pdf_url:"Copier l'URL du PDF",download_pdf:"T\xE9l\xE9charger le PDF",save:"Sauvegarder",create:"Cr\xE9er",cancel:"Annuler",update:"Mise \xE0 jour",deselect:"Retirer",download:"T\xE9l\xE9charger",from_date:"A partir de la date",to_date:"\xC0 ce jour",from:"De",to:"\xC0",sort_by:"Trier par",ascending:"Ascendant",descending:"Descendant",subject:"mati\xE8re",body:"Corps du message",message:"Message",send:"Envoyer",go_back:"Retourner",back_to_login:"Retour \xE0 l'\xE9cran de connexion ?",home:"Accueil",filter:"Filtre",delete:"Effacer",edit:"Modifier",view:"Voir",add_new_item:"Ajoute un nouvel objet",clear_all:"Tout effacer",showing:"Montant",of:"de",actions:"Actions",subtotal:"SOUS-TOTAL",discount:"REMISE",fixed:"Fix\xE9e",percentage:"Pourcentage",tax:"IMP\xD4T",total_amount:"MONTANT TOTAL",bill_to:"facturer",ship_to:"Envoyez \xE0",due:"D\xFB",draft:"Brouillon",sent:"Envoy\xE9e",all:"Tout",select_all:"Tout s\xE9lectionner",choose_file:"Cliquez ici pour choisir un fichier",choose_template:"Choisissez un mod\xE8le",choose:"Choisir",remove:"Retirer",powered_by:"Propuls\xE9 par",bytefury:"Bytefury",select_a_status:"S\xE9lectionnez un statut",select_a_tax:"S\xE9lectionnez une taxe",search:"Rechercher",are_you_sure:"\xCAtes-vous s\xFBr ?",list_is_empty:"La liste est vide.",no_tax_found:"Aucune taxe trouv\xE9e !",four_zero_four:"404",you_got_lost:"Oups! Vous vous \xEAtes perdus!",go_home:"Retour \xE0 l'accueil",test_mail_conf:"Tester la configuration",send_mail_successfully:"Mail envoy\xE9 avec succ\xE8s",setting_updated:"Param\xE8tres mis \xE0 jour avec succ\xE8s",select_state:"S\xE9lectionnez l'\xE9tat",select_country:"Choisissez le pays",select_city:"S\xE9lectionnez une ville",street_1:"Rue 1",street_2:"Rue # 2",action_failed:"Action : \xE9chou\xE9",retry:"R\xE9essayez",choose_note:"Choisissez une note",no_note_found:"Aucune note trouv\xE9e",insert_note:"Ins\xE9rer une note"},ai={select_year:"S\xE9lectionnez l'ann\xE9e",cards:{due_amount:"Montant d\xFB",customers:"Clients",invoices:"Factures",estimates:"Devis"},chart_info:{total_sales:"Ventes",total_receipts:"Re\xE7us",total_expense:"D\xE9penses",net_income:"Revenu net",year:"S\xE9lectionnez l'ann\xE9e"},monthly_chart:{title:"Recettes et d\xE9penses"},recent_invoices_card:{title:"Factures d\xFBes",due_on:"Due le",customer:"Client",amount_due:"Montant d\xFB",actions:"Actions",view_all:"Voir tout"},recent_estimate_card:{title:"Devis r\xE9cents",date:"Date",customer:"Client",amount_due:"Montant d\xFB",actions:"Actions",view_all:"Voir tout"}},si={name:"Nom",description:"Description",percent:"Pourcent",compound_tax:"Taxe compos\xE9e"},ni={search:"Rechercher...",customers:"Les clients",users:"Utilisateurs",no_results_found:"Aucun r\xE9sultat"},ii={title:"Clients",add_customer:"Ajouter un client",contacts_list:"Liste de clients",name:"Nom",mail:"Email | Emails",statement:"Statement",display_name:"Statut et Nom de la soci\xE9t\xE9",primary_contact_name:"Nom du contact principal",contact_name:"Nom du contact",amount_due:"Montant d\xFB",email:"Email",address:"Adresse",phone:"T\xE9l\xE9phone",website:"Site Internet",overview:"Aper\xE7u",enable_portal:"Activer le portail",country:"Pays",state:"\xC9tat",city:"Ville",zip_code:"Code postal",added_on:"Ajout\xE9 le",action:"action",password:"Mot de passe",street_number:"Num\xE9ro de rue",primary_currency:"Devise principale",description:"Description",add_new_customer:"Ajouter un nouveau client",save_customer:"Enregistrer le client",update_customer:"Mettre \xE0 jour le client",customer:"Client | Clients",new_customer:"Nouveau client",edit_customer:"Modifier le client",basic_info:"Informations de base",billing_address:"Adresse de facturation",shipping_address:"Adresse de livraison",copy_billing_address:"Copier depuis l'adresse de facturation",no_customers:"Vous n\u2019avez pas encore de clients !",no_customers_found:"Aucun client !",no_contact:"No contact",no_contact_name:"No contact name",list_of_customers:"Cette section contiendra la liste des clients.",primary_display_name:"Nom d'affichage principal",select_currency:"S\xE9lectionnez la devise",select_a_customer:"S\xE9lectionnez un client",type_or_click:"Tapez ou cliquez pour s\xE9lectionner",new_transaction:"Nouvelle transaction",no_matching_customers:"Il n'y a aucun client correspondant !",phone_number:"Num\xE9ro de t\xE9l\xE9phone",create_date:"Date de cr\xE9ation",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer ce client et les devis, factures et paiements associ\xE9s. | Vous ne serez pas en mesure de r\xE9cup\xE9rer ces clients et les devis, factures et paiements associ\xE9s.",created_message:"Client cr\xE9\xE9 avec succ\xE8s",updated_message:"Client mis \xE0 jour avec succ\xE8s",deleted_message:"Client supprim\xE9 avec succ\xE8s | Les clients supprim\xE9s avec succ\xE8s"},oi={title:"Articles",items_list:"Liste d'articles",name:"Nom",unit:"Unit\xE9",description:"Description",added_on:"Ajout\xE9 le",price:"Prix",date_of_creation:"Date de cr\xE9ation",not_selected:"No item selected",action:"action",add_item:"Ajouter un article",save_item:"Enregistrer l'article",update_item:"Mettre \xE0 jour l'article",item:"Article | Articles",add_new_item:"Ajoute un nouvel objet",new_item:"Nouvel article",edit_item:"Modifier larticle",no_items:"Aucun article !",list_of_items:"Cette section contiendra la liste des \xE9l\xE9ments.",select_a_unit:"S\xE9lectionnez l'unit\xE9",taxes:"Taxes",item_attached_message:"Impossible de supprimer un article d\xE9j\xE0 utilis\xE9",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cet article | Vous ne pourrez pas r\xE9cup\xE9rer ces objets",created_message:"Article cr\xE9\xE9 avec succ\xE8s",updated_message:"Article mis \xE0 jour avec succ\xE8s",deleted_message:"Article supprim\xE9 avec succ\xE8s | Articles supprim\xE9s avec succ\xE8s"},ri={title:"Devis",estimate:"Devis | Devis",estimates_list:"Liste des devis",days:"jours jours",months:"mois mois",years:"ann\xE9es Ann\xE9e",all:"Tout",paid:"Pay\xE9",unpaid:"Non pay\xE9",customer:"Client",ref_no:"R\xE9f.",number:"N\xB0",amount_due:"MONTANT D\xDB",partially_paid:"Partiellement pay\xE9",total:"Total",discount:"Remise",sub_total:"Sous-total",estimate_number:"N\xB0",ref_number:"Num\xE9ro de r\xE9f\xE9rence",contact:"Contact",add_item:"Ajouter un article",date:"Date",due_date:"Date d'\xE9ch\xE9ance",expiry_date:"Date d'expiration",status:"Statut",add_tax:"Ajouter une taxe",amount:"Montant",action:"action",notes:"Remarques",tax:"Taxe",estimate_template:"Mod\xE8le de devis",convert_to_invoice:"Convertir en facture",mark_as_sent:"Marquer comme envoy\xE9",send_estimate:"Envoyer le devis",resend_estimate:"Renvoyer le devis",record_payment:"Enregistrer un paiement",add_estimate:"Ajouter un devis",save_estimate:"Sauvegarder le devis",confirm_conversion:"Vous souhaitez convertir ce devis en facture?",conversion_message:"Conversion r\xE9ussie",confirm_send_estimate:"Ce devis sera envoy\xE9e par courrier \xE9lectronique au client.",confirm_mark_as_sent:"Ce devis sera marqu\xE9 comme envoy\xE9",confirm_mark_as_accepted:"Ce devis sera marqu\xE9 comme accept\xE9",confirm_mark_as_rejected:"Ce devis sera marqu\xE9 comme rejet\xE9",no_matching_estimates:"Aucune estimation correspondante !",mark_as_sent_successfully:"Devis marqu\xE9e comme envoy\xE9e avec succ\xE8s",send_estimate_successfully:"Devis envoy\xE9 avec succ\xE8s",errors:{required:"Champ requis"},accepted:"Accept\xE9",rejected:"Rejected",sent:"Envoy\xE9",draft:"Brouillon",declined:"Refus\xE9",new_estimate:"Nouveau devis",add_new_estimate:"Ajouter un devis",update_Estimate:"Mise \xE0 jour du devis",edit_estimate:"Modifier le devis",items:"articles",Estimate:"Devis | Devis",add_new_tax:"Ajouter une taxe",no_estimates:"Aucune estimation pour le moment !",list_of_estimates:"Cette section contiendra la liste des devis.",mark_as_rejected:"Marquer comme rejet\xE9",mark_as_accepted:"Marquer comme accept\xE9",marked_as_accepted_message:"Devis marqu\xE9 comme accept\xE9",marked_as_rejected_message:"Devis marqu\xE9 comme rejet\xE9",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer ce devis | Vous ne pourrez pas r\xE9cup\xE9rer ces devis",created_message:"Devis cr\xE9\xE9 avec succ\xE8s",updated_message:"Devis mise \xE0 jour avec succ\xE8s",deleted_message:"Devis supprim\xE9 | Devis supprim\xE9s",something_went_wrong:"quelque chose a mal tourn\xE9",item:{title:"Titre de l'article",description:"Description",quantity:"Quantit\xE9",price:"Prix",discount:"Remise",total:"Total",total_discount:"Remise totale",sub_total:"Sous-total",tax:"Taxe",amount:"Montant",select_an_item:"Tapez ou cliquez pour s\xE9lectionner un article",type_item_description:"Taper la description de l'article (facultatif)"}},di={title:"Factures",invoices_list:"Liste des factures",days:"jours jours",months:"mois mois",years:"years ann\xE9es",all:"Toutes",paid:"Pay\xE9",unpaid:"Non pay\xE9",viewed:"Viewed",overdue:"Overdue",completed:"Completed",customer:"CLIENT",paid_status:"STATUT DU PAIEMENT",ref_no:"R\xE9f.",number:"N\xB0",amount_due:"MONTANT D\xDB",partially_paid:"Partiellement pay\xE9",total:"Total",discount:"Remise",sub_total:"Sous-total",invoice:"Facture | Factures",invoice_number:"Num\xE9ro de facture",ref_number:"Num\xE9ro de r\xE9f\xE9rence",contact:"Contact",add_item:"Ajouter un article",date:"Date",due_date:"Date d'\xE9ch\xE9ance",status:"Statut",add_tax:"Ajouter une taxe",amount:"Montant",action:"action",notes:"Remarques",view:"Voir",send_invoice:"Envoyer une facture",resend_invoice:"Renvoyer la facture",invoice_template:"Mod\xE8le de facture",template:"Mod\xE8le",mark_as_sent:"Marquer comme envoy\xE9e",confirm_send_invoice:"Cette facture sera envoy\xE9e par email au client",invoice_mark_as_sent:"Cette facture sera marqu\xE9e comme envoy\xE9",confirm_send:"Cette facture sera envoy\xE9e par courrier \xE9lectronique au client.",invoice_date:"Date de facturation",record_payment:"Enregistrer un paiement",add_new_invoice:"Ajouter une facture",update_expense:"Enregistrer la d\xE9pense",edit_invoice:"Modifier la facture",new_invoice:"Nouvelle facture",save_invoice:"Enregistrer la facture",update_invoice:"Mettre \xE0 jour la facture",add_new_tax:"Ajouter une taxe",no_invoices:"Aucune facture pour le moment !",list_of_invoices:"Cette section contiendra la liste des factures.",select_invoice:"S\xE9lectionnez facture",no_matching_invoices:"Aucune facture correspondante !",mark_as_sent_successfully:"Facture marqu\xE9e comme envoy\xE9e avec succ\xE8s",invoice_sent_successfully:"Facture envoy\xE9e avec succ\xE8s",cloned_successfully:"Facture clon\xE9e avec succ\xE8s",clone_invoice:"Dupliquer la facture",confirm_clone:"Cette facture sera dupliqu\xE9e dans une nouvelle facture",item:{title:"Titre de l'article",description:"Description",quantity:"Quantit\xE9",price:"Prix",discount:"Remise",total:"Total",total_discount:"Remise totale",sub_total:"Sous-total",tax:"Taxe",amount:"Montant",select_an_item:"Tapez ou cliquez pour s\xE9lectionner un \xE9l\xE9ment",type_item_description:"Tapez la description de l'article (facultatif)"},confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cette facture | Vous ne pourrez pas r\xE9cup\xE9rer ces factures",created_message:"Facture cr\xE9\xE9e avec succ\xE8s",updated_message:"Facture mise \xE0 jour avec succ\xE8s",deleted_message:"La facture a \xE9t\xE9 supprim\xE9e | Les factures ont \xE9t\xE9 supprim\xE9es",marked_as_sent_message:"Facture supprim\xE9e avec succ\xE8s | Factures supprim\xE9es avec succ\xE8s",something_went_wrong:"quelque chose a mal tourn\xE9",invalid_due_amount_message:"Le paiement entr\xE9 est sup\xE9rieur au montant total d\xFB pour cette facture. Veuillez v\xE9rifier et r\xE9essayer"},li={title:"Paiements",payments_list:"Liste de paiements",record_payment:"Enregistrer un paiement",customer:"Client",date:"Date",amount:"Montant",action:"action",payment_number:"N\xB0",payment_mode:"Mode de paiement",invoice:"Facture",note:"Remarque",add_payment:"Ajouter un paiement",new_payment:"Nouveau paiement",edit_payment:"Modifier le paiement",view_payment:"Voir le paiement",add_new_payment:"Ajouter un paiement",send_payment_receipt:"Envoyer le re\xE7u",send_payment:"Envoyer le paiement",save_payment:"Enregistrer le paiement",update_payment:"Mettre \xE0 jour le paiement",payment:"Paiement | Paiements",no_payments:"Aucun paiement pour le moment !",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"Il n'y a aucun paiement correspondant !",list_of_payments:"Cette section contiendra la liste des paiements",select_payment_mode:"S\xE9lectionnez le moyen de paiement",confirm_mark_as_sent:"Ce devis sera marqu\xE9 comme envoy\xE9",confirm_send_payment:"Ce paiement sera envoy\xE9 par email au client",send_payment_successfully:"Paiement envoy\xE9 avec succ\xE8s",something_went_wrong:"quelque chose a mal tourn\xE9",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer ce paiement | Vous ne pourrez pas r\xE9cup\xE9rer ces paiements",created_message:"Paiement cr\xE9\xE9 avec succ\xE8s",updated_message:"Paiement mis \xE0 jour avec succ\xE8s",deleted_message:"Paiement supprim\xE9 avec succ\xE8s | Paiements supprim\xE9s avec succ\xE8s",invalid_amount_message:"Le montant du paiement est invalide"},ci={title:"D\xE9penses",expenses_list:"Liste des d\xE9penses",select_a_customer:"S\xE9lectionnez un client",expense_title:"Titre",customer:"Client",contact:"Contact",category:"Cat\xE9gorie",from_date:"A partir de la date",to_date:"\xC0 ce jour",expense_date:"Date",description:"Description",receipt:"Re\xE7u",amount:"Montant",action:"action",not_selected:"Not selected",note:"Remarque",category_id:"Identifiant de cat\xE9gorie",date:"Date",add_expense:"Ajouter une d\xE9pense",add_new_expense:"Ajouter une nouvelle d\xE9pense",save_expense:"Enregistrer la d\xE9pense",update_expense:"Mettre \xE0 jour la d\xE9pense",download_receipt:"T\xE9l\xE9charger le re\xE7u",edit_expense:"Modifier la d\xE9pense",new_expense:"Nouvelle d\xE9pense",expense:"D\xE9pense | D\xE9penses",no_expenses:"Pas de d\xE9penses pour le moment !",list_of_expenses:"Cette section contiendra la liste des d\xE9penses.",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cette d\xE9pense | Vous ne pourrez pas r\xE9cup\xE9rer ces d\xE9penses",created_message:"D\xE9pense cr\xE9\xE9e avec succ\xE8s",updated_message:"D\xE9pense mise \xE0 jour avec succ\xE8s",deleted_message:"D\xE9pense supprim\xE9e avec succ\xE8s | D\xE9penses supprim\xE9es avec succ\xE8s",categories:{categories_list:"Liste des cat\xE9gories",title:"Titre",name:"Nom",description:"Description",amount:"Montant",actions:"Actions",add_category:"Ajouter une cat\xE9gorie",new_category:"Nouvelle cat\xE9gorie",category:"Cat\xE9gorie | Cat\xE9gories",select_a_category:"Choisissez une cat\xE9gorie"}},_i={email:"Email",password:"Mot de passe",forgot_password:"Mot de passe oubli\xE9 ?",or_signIn_with:"ou connectez-vous avec",login:"S'identifier",register:"S'inscrire",reset_password:"R\xE9initialiser le mot de passe",password_reset_successfully:"R\xE9initialisation du mot de passe r\xE9ussie",enter_email:"Entrer l'email",enter_password:"Entrer le mot de passe",retype_password:"Retaper le mot de passe"},ui={title:"Utilisateurs",users_list:"Liste des utilisateurs",name:"Nom",description:"Description",added_on:"Ajout\xE9 le",date_of_creation:"Date de cr\xE9ation",action:"action",add_user:"Ajouter un utilisateur",save_user:"Enregistrer l'utilisateur",update_user:"Mettre \xE0 jour l'utilisateur",user:"Utilisateur | Utilisateurs",add_new_user:"Ajouter un nouvel utilisateur",new_user:"Nouvel utilisateur",edit_user:"Modifier l'utilisateur",no_users:"Pas encore d'utilisateurs !",list_of_users:"Cette section contiendra la liste des utilisateurs.",email:"Email",phone:"T\xE9l\xE9phone",password:"Mot de passe",user_attached_message:"Impossible de supprimer un \xE9l\xE9ment d\xE9j\xE0 utilis\xE9",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cet utilisateur | Vous ne pourrez pas r\xE9cup\xE9rer ces utilisateurs",created_message:"L'utilisateur a \xE9t\xE9 cr\xE9\xE9 avec succ\xE8s",updated_message:"L'utilisateur a bien \xE9t\xE9 mis \xE0 jour",deleted_message:"Utilisateur supprim\xE9 avec succ\xE8s | Utilisateur a bien \xE9t\xE9 supprim\xE9"},mi={title:"Rapport",from_date:"\xC0 partir du",to_date:"Jusqu'au",status:"Statut",paid:"Pay\xE9",unpaid:"Non pay\xE9",download_pdf:"T\xE9l\xE9charger le PDF",view_pdf:"Voir le PDF",update_report:"Mettre \xE0 jour le rapport",report:"Rapport | Rapports",profit_loss:{profit_loss:"B\xE9n\xE9fices & Pertes",to_date:"Au",from_date:"Du",date_range:"S\xE9lectionner une plage de dates"},sales:{sales:"Ventes",date_range:"S\xE9lectionner une plage de dates",to_date:"\xC0 ce jour",from_date:"A partir de la date",report_type:"Type de rapport"},taxes:{taxes:"Les taxes",to_date:"\xC0 ce jour",from_date:"\xC0 partir du",date_range:"S\xE9lectionner une plage de dates"},errors:{required:"Champ requis"},invoices:{invoice:"Facture",invoice_date:"Date de facturation",due_date:"Date d\xE9ch\xE9ance",amount:"Montant ",contact_name:"Nom du contact",status:"Statut"},estimates:{estimate:"Devis",estimate_date:"Date du devis",due_date:"Date d'\xE9ch\xE9ance",estimate_number:"N\xB0",ref_number:"Num\xE9ro de r\xE9f\xE9rence",amount:"Montant",contact_name:"Nom du contact",status:"Statut"},expenses:{expenses:"D\xE9penses",category:"Cat\xE9gorie",date:"Date",amount:"Montant",to_date:"Jusqu'au",from_date:"\xC0 partir du",date_range:"S\xE9lectionner une plage de dates"}},pi={menu_title:{account_settings:"Param\xE8tres du compte",company_information:"Informations sur la soci\xE9t\xE9",customization:"Personnalisation",preferences:"Pr\xE9f\xE9rences",notifications:"Notifications",tax_types:"Types de taxe",expense_category:"Cat\xE9gories de d\xE9penses",update_app:"Mise \xE0 jour de l'application",backup:"Sauvegarde",file_disk:"Espace de stockage",custom_fields:"Champs personnalis\xE9s",payment_modes:"Moyens de paiement",notes:"Remarques"},title:"Param\xE8tres",setting:"Param\xE8tres | Param\xE8tres",general:"Param\xE8tres g\xE9n\xE9raux",language:"Langue",primary_currency:"Devise principale",timezone:"Fuseau horaire",date_format:"Format de date",currencies:{title:"Devises",currency:"Devise | Devises",currencies_list:"Liste des devises",select_currency:"S\xE9lectionnez la devise",name:"Nom",code:"Code\xA0",symbol:"Symbole",precision:"Pr\xE9cision",thousand_separator:"S\xE9parateur de milliers",decimal_separator:"S\xE9parateur d\xE9cimal",position:"Position",position_of_symbol:"Position du symbole",right:"Droite",left:"Gauche",action:"action",add_currency:"Ajouter une devise"},mail:{host:"Adresse du serveur",port:"Port",driver:"Pilote de courrier",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domaine",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"Mot de passe",username:"Nom d'utilisateur",mail_config:"Configuration des emails",from_name:"Nom de l'exp\xE9diteur",from_mail:"Email de l'exp\xE9diteur",encryption:"Chiffrement",mail_config_desc:"Vous pouvez modifier ci-dessous les param\xE8tres d'envoi des emails. Vous pourrez modifier \xE0 tout moment."},pdf:{title:"Param\xE8tre PDF",footer_text:"Pied de page",pdf_layout:"Mise en page PDF"},company_info:{company_info:"Information de l'entreprise",company_name:"Nom de l'entreprise",company_logo:"Logo de l'entreprise",section_description:"Informations sur votre entreprise qui figureront sur les factures, devis et autres documents cr\xE9\xE9s par Crater.",phone:"T\xE9l\xE9phone",country:"Pays",state:"\xC9tat",city:"Ville",address:"Adresse",zip:"Code postal",save:"Sauvegarder",updated_message:"Informations sur la soci\xE9t\xE9 mises \xE0 jour avec succ\xE8s"},custom_fields:{title:"Champs personnalis\xE9s",section_description:"Personnalisez vos factures, devis et re\xE7us de paiement avec vos propres champs. Assurez-vous d'utiliser les champs ajout\xE9s ci-dessous sur les formats d'adresse sur la page des param\xE8tres de personnalisation.",add_custom_field:"Ajouter un champ personnalis\xE9",edit_custom_field:"Modifier un champ personnalis\xE9",field_name:"Nom du champs",label:"\xC9tiquette",type:"Type\xA0",name:"Nom",required:"Obligatoire",placeholder:"Espace r\xE9serv\xE9",help_text:"Texte d'aide",default_value:"Valeur par d\xE9faut",prefix:"Pr\xE9fixe",starting_number:"Num\xE9ro de d\xE9part",model:"Mod\xE8le",help_text_description:"Saisissez du texte pour aider les utilisateurs \xE0 comprendre l'objectif de ce champ personnalis\xE9.",suffix:"Suffixe",yes:"Oui",no:"Non",order:"Ordre",custom_field_confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer ce champ personnalis\xE9",already_in_use:"Le champ personnalis\xE9 est d\xE9j\xE0 utilis\xE9",deleted_message:"Champ personnalis\xE9 supprim\xE9 avec succ\xE8s",options:"les options",add_option:"Ajouter des options",add_another_option:"Ajouter une autre option",sort_in_alphabetical_order:"Trier par ordre alphab\xE9tique",add_options_in_bulk:"Ajouter des options en masse",use_predefined_options:"Utiliser des options pr\xE9d\xE9finies",select_custom_date:"S\xE9lectionnez une date personnalis\xE9e",select_relative_date:"S\xE9lectionnez la date relative",ticked_by_default:"Coch\xE9 par d\xE9faut",updated_message:"Champ personnalis\xE9 mis \xE0 jour avec succ\xE8s",added_message:"Champ personnalis\xE9 ajout\xE9 avec succ\xE8s"},customization:{customization:"Personnalisation",save:"Sauvegarder",addresses:{title:"Adresses",section_description:"Vous pouvez d\xE9finir le format de l'adresse de facturation et de livraison du client (affich\xE9 en PDF uniquement). ",customer_billing_address:"Adresse de paiement",customer_shipping_address:"Adresse de livraison",company_address:"Adresse de l'entreprise",insert_fields:"Ajouter des champs",contact:"Contact",address:"Adresse",display_name:"Nom",primary_contact_name:"Nom du contact principal",email:"Email",website:"Site Internet",name:"Nom",country:"Pays",state:"Etat",city:"Ville",company_name:"Nom de l'entreprise",address_street_1:"Rue",address_street_2:"Compl\xE9ment",phone:"T\xE9l\xE9phone",zip_code:"Code postal",address_setting_updated:"Adresse mise \xE0 jour avec succ\xE8s"},updated_message:"Informations de l'entreprise mises \xE0 jour",invoices:{title:"Factures",notes:"Remarques",invoice_prefix:"Pr\xE9fixe",default_invoice_email_body:"Corps de l'e-mail de la facture par d\xE9faut",invoice_settings:"Param\xE8tres",autogenerate_invoice_number:"G\xE9n\xE9rer automatiquement le num\xE9ro de facture",autogenerate_invoice_number_desc:"D\xE9sactivez cette option si vous ne souhaitez pas g\xE9n\xE9rer automatiquement les num\xE9ros de facture \xE0 chaque fois que vous en cr\xE9ez une nouvelle.",enter_invoice_prefix:"Ajouter le pr\xE9fixe de facture",terms_and_conditions:"Termes et conditions",company_address_format:"Format d'adresse de l'entreprise",shipping_address_format:"Format d'adresse d'exp\xE9dition",billing_address_format:"Format d'adresse de facturation",invoice_settings_updated:"Param\xE8tres de facturation mis \xE0 jour"},estimates:{title:"Devis",estimate_prefix:"Pr\xE9fixe des devis",default_estimate_email_body:"Corps de l'e-mail estim\xE9 par d\xE9faut",estimate_settings:"Param\xE8tre",autogenerate_estimate_number:"G\xE9n\xE9rer automatiquement le num\xE9ro de devis",estimate_setting_description:"D\xE9sactivez cette option si vous ne souhaitez pas g\xE9n\xE9rer automatiquement les num\xE9ros de devis \xE0 chaque fois que vous en cr\xE9ez un nouveau.",enter_estimate_prefix:"Entrez le pr\xE9fixe d'estimation",estimate_setting_updated:"Param\xE8tres de devis mis \xE0 jour",company_address_format:"Format d'adresse de l'entreprise",billing_address_format:"Format d'adresse de facturation",shipping_address_format:"Format d'adresse d'exp\xE9dition"},payments:{title:"Paiements",description:"Modes de transaction pour les paiements",payment_prefix:"Pr\xE9fixe",default_payment_email_body:"Corps de l'e-mail de paiement par d\xE9faut",payment_settings:"Param\xE8tres",autogenerate_payment_number:"G\xE9n\xE9rer automatiquement le num\xE9ro de paiement",payment_setting_description:"D\xE9sactivez cette option si vous ne souhaitez pas g\xE9n\xE9rer automatiquement les num\xE9ros de paiement \xE0 chaque fois que vous en cr\xE9ez un nouveau.",enter_payment_prefix:"Entrez le pr\xE9fixe de paiement",payment_setting_updated:"Les param\xE8tres de paiement ont bien \xE9t\xE9 mis \xE0 jour",payment_modes:"Moyens de paiement",add_payment_mode:"Ajouter un mode de paiement",edit_payment_mode:"Modifier le moyen de paiement",mode_name:"Nom",payment_mode_added:"Moyen de paiement ajout\xE9",payment_mode_updated:"Moyen de paiement mis \xE0 jour",payment_mode_confirm_delete:"\xCAtes-vous sur de supprimer ce moyen de paiement",already_in_use:"Ce moyen de paiement existe d\xE9j\xE0",deleted_message:"Moyen de paiement supprim\xE9 avec succ\xE8s",company_address_format:"Format d'adresse de l'entreprise",from_customer_address_format:"\xC0 partir du format d'adresse client"},items:{title:"Articles",units:"Unit\xE9s",add_item_unit:"Ajouter une unit\xE9",edit_item_unit:"Modifier l'unit\xE9 d'\xE9l\xE9ment",unit_name:"Nom",item_unit_added:"Unit\xE9 ajout\xE9e",item_unit_updated:"Unit\xE9 mis \xE0 jour",item_unit_confirm_delete:"\xCAtes-vous sur de supprimer cette unit\xE9 ?",already_in_use:"Cette unit\xE9 existe d\xE9j\xE0",deleted_message:"Unit\xE9 supprim\xE9e avec succ\xE8s"},notes:{title:"Remarques",description:"Gagnez du temps en cr\xE9ant des notes et en les r\xE9utilisant sur vos factures, devis et paiements.",notes:"Remarques",type:"Type\xA0",add_note:"Ajouter une note",add_new_note:"Ajouter une nouvelle note",name:"Nom",edit_note:"Modifier la note",note_added:"Note ajout\xE9e",note_updated:"Note mise \xE0 jour",note_confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cette note",already_in_use:"La note est d\xE9j\xE0 utilis\xE9e",deleted_message:"Note supprim\xE9e avec succ\xE8s"}},account_settings:{profile_picture:"Image de profil",name:"Nom",email:"Email",password:"Mot de passe",confirm_password:"Confirmez le mot de passe",account_settings:"Param\xE8tres du compte",save:"Sauvegarder",section_description:"Vous pouvez mettre \xE0 jour votre nom, votre email et votre mot de passe en utilisant le formulaire ci-dessous.",updated_message:"Param\xE8tres du compte mis \xE0 jour avec succ\xE8s"},user_profile:{name:"Nom",email:"Email",password:"Mot de passe",confirm_password:"Confirmez le mot de passe"},notification:{title:"Notification",email:"Envoyer des notifications \xE0",description:"Quelles notifications par courrier \xE9lectronique souhaitez-vous recevoir lorsque quelque chose change?",invoice_viewed:"Facture consult\xE9e",invoice_viewed_desc:"Lorsque le client visualise la facture envoy\xE9e via le tableau de bord de Neptune.",estimate_viewed:"Devis consult\xE9",estimate_viewed_desc:"Lorsque le client visualise le devis envoy\xE9 via le tableau de bord de Neptune.",save:"Sauvegarder",email_save_message:"Email enregistr\xE9 avec succ\xE8s",please_enter_email:"Veuillez entrer un email"},tax_types:{title:"Types de taxe",add_tax:"Ajouter une taxe",edit_tax:"Modifier la taxe",description:"Vous pouvez ajouter ou supprimer des taxes \xE0 votre guise. Crater prend en charge les taxes sur les articles individuels ainsi que sur la facture.",add_new_tax:"Ajouter une nouvelle taxe",tax_settings:"Param\xE8tres de taxe",tax_per_item:"Taxe par article",tax_name:"Nom de la taxe",compound_tax:"Taxe compos\xE9e",percent:"Pourcentage",action:"action",tax_setting_description:"Activez cette option si vous souhaitez ajouter des taxes \xE0 des postes de facture individuels. Par d\xE9faut, les taxes sont ajout\xE9es directement \xE0 la facture.",created_message:"Type de taxe cr\xE9\xE9 avec succ\xE8s",updated_message:"Type de taxe mis \xE0 jour avec succ\xE8s",deleted_message:"Type de taxe supprim\xE9 avec succ\xE8s",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer ce type de taxe",already_in_use:"La taxe est d\xE9j\xE0 utilis\xE9e"},expense_category:{title:"Cat\xE9gories de d\xE9penses",action:"action",description:"Des cat\xE9gories sont requises pour ajouter des entr\xE9es de d\xE9penses. Vous pouvez ajouter ou supprimer ces cat\xE9gories selon vos pr\xE9f\xE9rences.",add_new_category:"Ajouter une nouvelle cat\xE9gorie",add_category:"Ajouter une cat\xE9gorie",edit_category:"Modifier la cat\xE9gorie",category_name:"Nom de cat\xE9gorie",category_description:"Description",created_message:"Cat\xE9gorie de d\xE9penses cr\xE9\xE9e avec succ\xE8s",deleted_message:"La cat\xE9gorie de d\xE9penses a \xE9t\xE9 supprim\xE9e avec succ\xE8s",updated_message:"Cat\xE9gorie de d\xE9penses mise \xE0 jour avec succ\xE8s",confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cette cat\xE9gorie de d\xE9penses",already_in_use:"La cat\xE9gorie est d\xE9j\xE0 utilis\xE9e"},preferences:{currency:"Devise",default_language:"Langue par d\xE9faut",time_zone:"Fuseau horaire",fiscal_year:"Exercice fiscal",date_format:"Format de date",discount_setting:"R\xE9glage de remise",discount_per_item:"Remise par article",discount_setting_description:"Activez cette option si vous souhaitez ajouter une remise \xE0 des postes de facture individuels. Par d\xE9faut, les remises sont ajout\xE9es directement \xE0 la facture.",save:"Sauvegarder",preference:"Pr\xE9f\xE9rence | Pr\xE9f\xE9rences",general_settings:"Pr\xE9f\xE9rences par d\xE9faut pour le syst\xE8me.",updated_message:"Pr\xE9f\xE9rences mises \xE0 jour avec succ\xE8s",select_language:"Choisir la langue",select_time_zone:"S\xE9lectionnez le fuseau horaire",select_date_format:"S\xE9lectionnez le format de date",select_financial_year:"s\xE9lectionner lexercice"},update_app:{title:"Mise \xE0 jour de l'application",description:"Vous pouvez facilement mettre \xE0 jour Crater en cliquant sur le bouton ci-dessous",check_update:"V\xE9rifier les mises \xE0 jour",avail_update:"Nouvelle mise \xE0 jour disponible",next_version:"Version suivante",requirements:"Sp\xE9cifications requises",update:"Mettre \xE0 jour maintenant",update_progress:"Mise \xE0 jour en cours...",progress_text:"Cela ne prendra que quelques minutes. Veuillez ne pas actualiser ou fermer la fen\xEAtre avant la fin de la mise \xE0 jour",update_success:"App a \xE9t\xE9 mis \xE0 jour ! Veuillez patienter pendant le rechargement automatique de la fen\xEAtre de votre navigateur.",latest_message:"Pas de mise a jour disponible ! Vous \xEAtes sur la derni\xE8re version.",current_version:"Version actuelle",download_zip_file:"T\xE9l\xE9charger le fichier ZIP",unzipping_package:"D\xE9zipper le package",copying_files:"Copie de fichiers en cours",running_migrations:"Migrations en cours",finishing_update:"Finalisation de la mise \xE0 jour",update_failed:"\xC9chec de la mise \xE0 jour",update_failed_text:"D\xE9sol\xE9 ! Votre mise \xE0 jour a \xE9chou\xE9 \xE0: {step} \xE9tape"},backup:{title:"Sauvegarde | Sauvegardes",description:"La sauvegarde est un fichier ZIP qui contient tous les fichiers des r\xE9pertoires que vous sp\xE9cifiez, ainsi qu'un export de la base de donn\xE9es",new_backup:"Ajouter une nouvelle sauvegarde",create_backup:"Cr\xE9er une sauvegarde",select_backup_type:"S\xE9lectionnez le type de sauvegarde",backup_confirm_delete:"Vous ne pourrez pas r\xE9cup\xE9rer cette sauvegarde",path:"chemin",new_disk:"Nouvel espace de stockage",created_at:"cr\xE9\xE9 \xE0",size:"taille",dropbox:"dropbox",local:"local",healthy:"en bonne sant\xE9",amount_of_backups:"nombre de sauvegardes",newest_backups:"derni\xE8res sauvegardes",used_storage:"Stockage utilis\xE9",select_disk:"S\xE9lectionnez l'espace de stockage",action:"action",deleted_message:"Sauvegarde supprim\xE9e avec succ\xE8s",created_message:"Sauvegarde cr\xE9\xE9e avec succ\xE8s",invalid_disk_credentials:"Informations d'identification invalides de l'espace de stockage"},disk:{title:"Espace de stockage | Espaces de stockage",description:"Par d\xE9faut, Crater utilisera votre disque local pour enregistrer les sauvegardes, l'avatar et d'autres fichiers image. Vous pouvez configurer plusieurs pilotes de disque comme DigitalOcean, S3 et Dropbox selon vos pr\xE9f\xE9rences.",created_at:"cr\xE9\xE9 \xE0",dropbox:"dropbox",name:"Nom",driver:"Pilote",disk_type:"Type\xA0",disk_name:"Nom",new_disk:"Ajouter un nouvel espace de stockage",filesystem_driver:"Pilote du syst\xE8me de fichiers",local_driver:"pilote local",local_root:"r\xE9pertoire local",public_driver:"Pilote public",public_root:"R\xE9pertoire public",public_url:"URL publique",public_visibility:"Visibilit\xE9 publique",media_driver:"Pilote multim\xE9dia",media_root:"R\xE9pertoire m\xE9dia",aws_driver:"Pilote AWS",aws_key:"AWS Key",aws_secret:"AWS Secret",aws_region:"R\xE9gion AWS",aws_bucket:"Bucket",aws_root:"R\xE9pertoire",do_spaces_type:"Type",do_spaces_key:"Key",do_spaces_secret:"Secret",do_spaces_region:"R\xE9gion",do_spaces_bucket:"Bucket",do_spaces_endpoint:"Endpoint",do_spaces_root:"R\xE9pertoire",dropbox_type:"Type",dropbox_token:"Token",dropbox_key:"Key",dropbox_secret:"Secret",dropbox_app:"Application",dropbox_root:"R\xE9pertoire",default_driver:"Fournisseur par d\xE9faut",is_default:"Par d\xE9faut",set_default_disk:"D\xE9finir l'espace par d\xE9faut",success_set_default_disk:"L'espace par d\xE9faut d\xE9fini avec succ\xE8s",save_pdf_to_disk:"Enregistrer les PDF sur le disque",disk_setting_description:"Activez cette option si vous souhaitez enregistrer automatiquement une copie de chaque facture, devis et re\xE7u de paiement PDF sur votre disque par d\xE9faut. L'activation de cette option r\xE9duira le temps de chargement lors de l'affichage des PDF.",select_disk:"S\xE9lectionnez le stockage",disk_settings:"Param\xE8tres de stockage",confirm_delete:"Vos fichiers et dossiers existants sur le disque sp\xE9cifi\xE9 ne seront pas affect\xE9s, mais la configuration de votre disque sera supprim\xE9e de Crater",action:"action",edit_file_disk:"Modifier le disque de fichiers",success_create:"Disque ajout\xE9 avec succ\xE8s",success_update:"Disque mis \xE0 jour avec succ\xE8s",error:"L'ajout de disque a \xE9chou\xE9",deleted_message:"Stockage supprim\xE9",disk_variables_save_successfully:"Stockage configur\xE9 avec succ\xE8s",disk_variables_save_error:"La configuration du stockage a \xE9chou\xE9.",invalid_disk_credentials:"Informations d'identification non valides du stockage s\xE9lectionn\xE9"}},gi={account_info:"Information du compte",account_info_desc:"Les d\xE9tails ci-dessous seront utilis\xE9s pour cr\xE9er le compte administrateur principal. Aussi, vous pouvez modifier les d\xE9tails \xE0 tout moment apr\xE8s la connexion.",name:"Nom",email:"Email",password:"Mot de passe",confirm_password:"Confirmez le mot de passe",save_cont:"Enregistrer et poursuivre",company_info:"Informations sur la soci\xE9t\xE9",company_info_desc:"Ces informations seront affich\xE9es sur les factures. Notez que vous pouvez \xE9diter ceci plus tard sur la page des param\xE8tres.",company_name:"Nom de l'entreprise",company_logo:"Logo de l'entreprise",logo_preview:"Aper\xE7u du logo",preferences:"Pr\xE9f\xE9rences",preferences_desc:"Pr\xE9f\xE9rences par d\xE9faut du syst\xE8me.",country:"Pays",state:"\xC9tat",city:"Ville",address:"Adresse",street:"Rue 1 | Rue 2",phone:"T\xE9l\xE9phone",zip_code:"Code postal",go_back:"Revenir",currency:"Devise",language:"Langue",time_zone:"Fuseau horaire",fiscal_year:"Exercice fiscal",date_format:"Format de date",from_address:"De l'adresse",username:"Nom d'utilisateur",next:"Suivant",continue:"Poursuivre",skip:"Ignorer",database:{database:"URL du site et base de donn\xE9es",connection:"Connexion \xE0 la base de donn\xE9es",host:"Serveur de la base de donn\xE9es",port:"Port de la base de donn\xE9es",password:"Mot de passe de la base de donn\xE9es",app_url:"Application URL",app_domain:"Nom de domaine",username:"Nom d'utilisateur de la base de donn\xE9es",db_name:"Nom de la base de donn\xE9es",db_path:"Emplacement de la base de donn\xE9es",desc:"Cr\xE9ez une base de donn\xE9es sur votre serveur et d\xE9finissez les informations d'identification \xE0 l'aide du formulaire ci-dessous."},permissions:{permissions:"Permissions",permission_confirm_title:"\xCAtes-vous certain de vouloir continuer ?",permission_confirm_desc:"La v\xE9rification des permissions du dossier a \xE9chou\xE9",permission_desc:"Vous trouverez ci-dessous la liste des permissions de dossier requises pour le fonctionnement de l'application. Si la v\xE9rification des permissions \xE9choue, veillez mettre \xE0 jour vos permissions de dossier."},mail:{host:"Serveur email",port:"Port",driver:"Fournisseur d'email",secret:"Secret",mailgun_secret:"Secret",mailgun_domain:"Nom de domaine",mailgun_endpoint:"Endpoint",ses_secret:"Secret",ses_key:"Key",password:"Mot de passe",username:"Nom d'utilisateur",mail_config:"Configuration des emails",from_name:"Nom de messagerie",from_mail:"Email de l'exp\xE9diteur",encryption:"Chiffrement des emails",mail_config_desc:"Les d\xE9tails ci-dessous seront utilis\xE9s pour mettre \xE0 jour le fournisseur de messagerie. Vous pourrez modifier ceux-ci \xE0 tout moment apr\xE8s la connexion."},req:{system_req:"Configuration requise",php_req_version:"Php (version {version} n\xE9cessaire)",check_req:"V\xE9rifier les pr\xE9requis",system_req_desc:"Crater a quelques pr\xE9requis. Assurez-vous que votre serveur dispose de la version Php requise et de toutes les extensions mentionn\xE9es ci-dessous."},errors:{migrate_failed:"\xC9chec de la migration",database_variables_save_error:"Impossible de cr\xE9er le fichier de configuration. Veuillez v\xE9rifier les permissions du r\xE9pertoire",mail_variables_save_error:"La configuration du courrier \xE9lectronique a \xE9chou\xE9.",connection_failed:"La connexion \xE0 la base de donn\xE9es a \xE9chou\xE9",database_should_be_empty:"La base de donn\xE9es devrait \xEAtre vide"},success:{mail_variables_save_successfully:"Email configur\xE9 avec succ\xE8s",database_variables_save_successfully:"Base de donn\xE9es configur\xE9e avec succ\xE8s."}},fi={invalid_phone:"Num\xE9ro de t\xE9l\xE9phone invalide",invalid_url:"URL invalide (ex: http://www.craterapp.com)",invalid_domain_url:"URL invalide (ex: craterapp.com)",required:"Champ requis",email_incorrect:"Adresse Email incorrecte.",email_already_taken:"Un compte est d\xE9j\xE0 associ\xE9 \xE0 cette adresse e-mail.",email_does_not_exist:"Cet utilisateur n'existe pas",item_unit_already_taken:"Cette unit\xE9 est d\xE9j\xE0 \xE9t\xE9 utilis\xE9e",payment_mode_already_taken:"Ce moyen de paiement est d\xE9j\xE0 utilis\xE9",send_reset_link:"Envoyer le lien de r\xE9initialisation",not_yet:"Pas encore re\xE7u ? R\xE9essayer",password_min_length:"Le mot de passe doit contenir {nombre} caract\xE8res",name_min_length:"Le nom doit avoir au moins {count} lettres.",enter_valid_tax_rate:"Entrez un taux de taxe valide",numbers_only:"Chiffres uniquement.",characters_only:"Caract\xE8res seulement.",password_incorrect:"Les mots de passe doivent \xEAtre identiques",password_length:"Le mot de passe doit comporter au moins {count} caract\xE8res.",qty_must_greater_than_zero:"La quantit\xE9 doit \xEAtre sup\xE9rieure \xE0 z\xE9ro.",price_greater_than_zero:"Le prix doit \xEAtre sup\xE9rieur \xE0 z\xE9ro.",payment_greater_than_zero:"Le paiement doit \xEAtre sup\xE9rieur \xE0 z\xE9ro.",payment_greater_than_due_amount:"Le paiement saisi est plus \xE9lev\xE9 que le montant d\xFB de cette facture.",quantity_maxlength:"La quantit\xE9 ne doit pas d\xE9passer 20 chiffres.",price_maxlength:"Le prix ne doit pas d\xE9passer 20 chiffres.",price_minvalue:"Le prix doit \xEAtre sup\xE9rieur \xE0 0.",amount_maxlength:"Le montant ne doit pas d\xE9passer 20 chiffres.",amount_minvalue:"Le montant doit \xEAtre sup\xE9rieur \xE0 0.",description_maxlength:"La description ne doit pas d\xE9passer 255 caract\xE8res.",subject_maxlength:"L'objet ne doit pas d\xE9passer 100 caract\xE8res.",message_maxlength:"Le message ne doit pas d\xE9passer 255 caract\xE8res.",maximum_options_error:"Maximum de {max} options s\xE9lectionn\xE9es. Commencez par supprimer une option s\xE9lectionn\xE9e pour en s\xE9lectionner une autre.",notes_maxlength:"Les notes ne doivent pas d\xE9passer 255 caract\xE8res.",address_maxlength:"L'adresse ne doit pas d\xE9passer 255 caract\xE8res.",ref_number_maxlength:"Le num\xE9ro de r\xE9f\xE9rence ne doit pas d\xE9passer 255 caract\xE8res.",prefix_maxlength:"Le pr\xE9fixe ne doit pas d\xE9passer 5 caract\xE8res.",something_went_wrong:"quelque chose a mal tourn\xE9"},hi="Devis",vi="N\xB0",yi="Date du devis",bi="Date d'expiration",ki="Facture",wi="Num\xE9ro de facture",xi="Date",zi="Date d\u2019\xE9ch\xE9ance",Si="Remarques",ji="Articles",Pi="Quantit\xE9",Di="Prix",Ci="Remise",Ai="Montant",Ei="Sous-total",Ni="Total",Ti="Payment",Ii="Re\xE7u de paiement",$i="Date de paiement",Ri="N\xB0",Fi="Moyen de paiement",Mi="Montant re\xE7u",Vi="RAPPORT DE D\xC9PENSES",Bi="TOTAL DES D\xC9PENSES",Oi="RAPPORT DES B\xC9N\xC9FICES ET DES PERTES",Li="Sales Customer Report",Ui="Sales Item Report",Ki="Tax Summary Report",qi="REVENU",Zi="B\xC9N\xC9FICE NET",Wi="Rapport de ventes : par client",Hi="TOTAL DES VENTES",Gi="Rapport des ventes : par article",Yi="RAPPORT DES TAXES",Ji="TOTAL DES TAXES",Xi="Types de taxe",Qi="D\xE9penses",eo="facturer,",to="Envoyer \xE0,",ao="Re\xE7u de :",so="Tax";var no={navigation:ei,general:ti,dashboard:ai,tax_types:si,global_search:ni,customers:ii,items:oi,estimates:ri,invoices:di,payments:li,expenses:ci,login:_i,users:ui,reports:mi,settings:pi,wizard:gi,validation:fi,pdf_estimate_label:hi,pdf_estimate_number:vi,pdf_estimate_date:yi,pdf_estimate_expire_date:bi,pdf_invoice_label:ki,pdf_invoice_number:wi,pdf_invoice_date:xi,pdf_invoice_due_date:zi,pdf_notes:Si,pdf_items_label:ji,pdf_quantity_label:Pi,pdf_price_label:Di,pdf_discount_label:Ci,pdf_amount_label:Ai,pdf_subtotal:Ei,pdf_total:Ni,pdf_payment_label:Ti,pdf_payment_receipt_label:Ii,pdf_payment_date:$i,pdf_payment_number:Ri,pdf_payment_mode:Fi,pdf_payment_amount_received_label:Mi,pdf_expense_report_label:Vi,pdf_total_expenses_label:Bi,pdf_profit_loss_label:Oi,pdf_sales_customers_label:Li,pdf_sales_items_label:Ui,pdf_tax_summery_label:Ki,pdf_income_label:qi,pdf_net_profit_label:Zi,pdf_customer_sales_report:Wi,pdf_total_sales_label:Hi,pdf_item_sales_label:Gi,pdf_tax_report_label:Yi,pdf_total_tax_label:Ji,pdf_tax_types_label:Xi,pdf_expenses_label:Qi,pdf_bill_to:eo,pdf_ship_to:to,pdf_received_from:ao,pdf_tax_label:so};const io={dashboard:"Tablero",customers:"Clientes",items:"Art\xEDculos",invoices:"Facturas",expenses:"Gastos",estimates:"Presupuestos",payments:"Pagos",reports:"Informes",settings:"Configuraciones",logout:"Cerrar sesi\xF3n",users:"Usuarios"},oo={add_company:"A\xF1adir empresa",view_pdf:"Ver PDF",copy_pdf_url:"Copiar direcci\xF3n URL del archivo PDF",download_pdf:"Descargar PDF",save:"Guardar",create:"Crear",cancel:"Cancelar",update:"Actualizar",deselect:"Deseleccionar",download:"Descargar",from_date:"Desde la fecha",to_date:"Hasta la fecha",from:"De",to:"A",sort_by:"Ordenar por",ascending:"Ascendente",descending:"Descendente",subject:"Sujeta",body:"Cuerpo",message:"Mensaje",send:"Enviar",go_back:"Volver",back_to_login:"\xBFVolver al inicio de sesi\xF3n?",home:"Inicio",filter:"Filtrar",delete:"Eliminar",edit:"Editar",view:"Ver",add_new_item:"Agregar \xEDtem nuevo",clear_all:"Limpiar todo",showing:"Mostrando",of:"de",actions:"Acciones",subtotal:"SUBTOTAL",discount:"DESCUENTO",fixed:"Fijo",percentage:"Porcentaje",tax:"IMPUESTO",total_amount:"CANTIDAD TOTAL",bill_to:"Cobrar a",ship_to:"Enviar a",due:"Debido",draft:"Borrador",sent:"Enviado",all:"Todas",select_all:"Seleccionar todo",choose_file:"Haga clic aqu\xED para elegir un archivo",choose_template:"Elige una plantilla",choose:"Escoger",remove:"Eliminar",powered_by:"Impulsado por",bytefury:"Bytefury",select_a_status:"Selecciona un estado",select_a_tax:"Selecciona un impuesto",search:"Buscar",are_you_sure:"\xBFEst\xE1s seguro?",list_is_empty:"La lista esta vac\xEDa.",no_tax_found:"\xA1No se encontraron impuestos!",four_zero_four:"404",you_got_lost:"Whoops! \xA1Te perdiste!",go_home:"Volver al Inicio",test_mail_conf:"Probar configuraci\xF3n de correo",send_mail_successfully:"El correo enviado con \xE9xito",setting_updated:"Configuraci\xF3n actualizada con \xE9xito",select_state:"Seleccionar estado",select_country:"Seleccionar pa\xEDs",select_city:"Seleccionar ciudad",street_1:"Calle 1",street_2:"Calle 2",action_failed:"Accion Fallida",retry:"Procesar de nuevo",choose_note:"Elegir nota",no_note_found:"No se encontr\xF3 ninguna nota",insert_note:"Insertar una nota"},ro={select_year:"Seleccionar a\xF1o",cards:{due_amount:"Cantidad Debida",customers:"Clientes",invoices:"Facturas",estimates:"Presupuestos"},chart_info:{total_sales:"Ventas",total_receipts:"Ingresos",total_expense:"Gastos",net_income:"Ingresos netos",year:"Seleccione a\xF1o"},monthly_chart:{title:"Gastos de venta"},recent_invoices_card:{title:"Facturas adeudadas",due_on:"Debido a",customer:"Cliente",amount_due:"Cantidad Debida",actions:"Acciones",view_all:"Ver todo"},recent_estimate_card:{title:"Presupuestos recientes",date:"Fecha",customer:"Cliente",amount_due:"Cantidad Debida",actions:"Acciones",view_all:"Ver todo"}},lo={name:"Nombre",description:"Descripci\xF3n",percent:"Por ciento",compound_tax:"Impuesto compuesto"},co={search:"Buscar...",customers:"Clientes",users:"Usuarios",no_results_found:"No se encontraron resultados"},_o={title:"Clientes",add_customer:"Agregar cliente",contacts_list:"Lista de clientes",name:"Nombre",mail:"Correo | Correos",statement:"Declaraci\xF3n",display_name:"Nombre para mostrar",primary_contact_name:"Nombre de contacto primario",contact_name:"Nombre de contacto",amount_due:"Cantidad Debida",email:"Correo electr\xF3nico",address:"Direcci\xF3n",phone:"Tel\xE9fono",website:"Sitio web",overview:"Descripci\xF3n general",enable_portal:"Habilitar Portal",country:"Pa\xEDs",state:"Estado",city:"Ciudad",zip_code:"C\xF3digo postal",added_on:"A\xF1adido el",action:"Acci\xF3n",password:"Contrase\xF1a",street_number:"N\xFAmero de calle",primary_currency:"Moneda primaria",description:"Descripci\xF3n",add_new_customer:"Agregar nuevo cliente",save_customer:"Guardar cliente",update_customer:"Actualizar cliente",customer:"Cliente | Clientes",new_customer:"Nuevo cliente",edit_customer:"Editar cliente",basic_info:"Informaci\xF3n b\xE1sica",billing_address:"Direcci\xF3n de Facturaci\xF3n",shipping_address:"Direcci\xF3n de Env\xEDo",copy_billing_address:"Copia de facturaci\xF3n",no_customers:"\xA1A\xFAn no hay clientes!",no_customers_found:"\xA1No se encontraron clientes!",no_contact:"No contact",no_contact_name:"No contact name",list_of_customers:"Esta secci\xF3n contendr\xE1 la lista de clientes.",primary_display_name:"Nombre de visualizaci\xF3n principal",select_currency:"Seleccione el tipo de moneda",select_a_customer:"Selecciona un cliente",type_or_click:"Escriba o haga clic para seleccionar",new_transaction:"Nueva transacci\xF3n",no_matching_customers:"\xA1No hay clientes coincidentes!",phone_number:"N\xFAmero de tel\xE9fono",create_date:"Fecha de Creaci\xF3n",confirm_delete:"No podr\xE1 recuperar este cliente y todas las facturas, estimaciones y pagos relacionados. | No podr\xE1 recuperar estos clientes y todas las facturas, estimaciones y pagos relacionados.",created_message:"Cliente creado con \xE9xito",updated_message:"Cliente actualizado con \xE9xito",deleted_message:"Cliente eliminado correctamente | Clientes eliminados exitosamente"},uo={title:"Art\xEDculos",items_list:"Lista de art\xEDculos",name:"Nombre",unit:"Unidad",description:"Descripci\xF3n",added_on:"A\xF1adido",price:"Precio",date_of_creation:"Fecha de creaci\xF3n",not_selected:"No item selected",action:"Acci\xF3n",add_item:"A\xF1adir art\xEDculo",save_item:"Guardar art\xEDculo",update_item:"Actualizar elemento",item:"Art\xEDculo | Art\xEDculos",add_new_item:"Agregar \xEDtem nuevo",new_item:"Nuevo art\xEDculo",edit_item:"Editar elemento",no_items:"\xA1A\xFAn no hay art\xEDculos!",list_of_items:"Esta secci\xF3n contendr\xE1 la lista de art\xEDculos.",select_a_unit:"seleccionar unidad",taxes:"Impuestos",item_attached_message:"No se puede eliminar un elemento que ya est\xE1 en uso.",confirm_delete:"No podr\xE1 recuperar este art\xEDculo | No podr\xE1s recuperar estos elementos",created_message:"Art\xEDculo creado con \xE9xito",updated_message:"Art\xEDculo actualizado con \xE9xito",deleted_message:"Elemento eliminado con \xE9xito | Elementos eliminados correctamente"},mo={title:"Presupuestos",estimate:"Presupuesto | Presupuestos",estimates_list:"Lista de presupuestos",days:"d\xEDas D\xEDas",months:"meses Mes",years:"a\xF1os A\xF1o",all:"Todas",paid:"Pagada",unpaid:"No pagado",customer:"CLIENTE",ref_no:"N\xDAMERO DE REFERENCIA.",number:"N\xDAMERO",amount_due:"CANTIDAD DEBIDA",partially_paid:"Parcialmente pagado",total:"Total",discount:"Descuento",sub_total:"Subtotal",estimate_number:"N\xFAmero de Presupuesto",ref_number:"N\xFAmero de referencia",contact:"Contacto",add_item:"Agregar un art\xEDculo",date:"Fecha",due_date:"Fecha de vencimiento",expiry_date:"Fecha de caducidad",status:"Estado",add_tax:"Agregar impuesto",amount:"Cantidad",action:"Acci\xF3n",notes:"Notas",tax:"Impuesto",estimate_template:"Plantilla de presupuesto",convert_to_invoice:"Convertir a factura",mark_as_sent:"Marcar como enviado",send_estimate:"Enviar presupuesto",resend_estimate:"Reenviar estimado",record_payment:"Registro de pago",add_estimate:"Agregar presupuesto",save_estimate:"Guardar presupuesto",confirm_conversion:"\xBFQuiere convertir este presupuesto en una factura?",conversion_message:"Conversi\xF3n exitosa",confirm_send_estimate:"Este presupuesto se enviar\xE1 por correo electr\xF3nico al cliente",confirm_mark_as_sent:"Este presupuesto se marcar\xE1 como enviado",confirm_mark_as_accepted:"Este presupuesto se marcar\xE1 como Aceptado",confirm_mark_as_rejected:"Este presupuesto se marcar\xE1 como Rechazado",no_matching_estimates:"\xA1No hay presupuestos coincidentes!",mark_as_sent_successfully:"Presupuesto marcado como enviado correctamente",send_estimate_successfully:"Presupuesto enviado con \xE9xito",errors:{required:"Se requiere campo"},accepted:"Aceptado",rejected:"Rejected",sent:"Enviado",draft:"Borrador",declined:"Rechazado",new_estimate:"Nuevo presupuesto",add_new_estimate:"A\xF1adir nuevo presupuesto",update_Estimate:"Actualizar presupuesto",edit_estimate:"Editar presupuesto",items:"art\xEDculos",Estimate:"Presupuestos | Presupuestos",add_new_tax:"Agregar nuevo impuesto",no_estimates:"\xA1A\xFAn no hay presupuestos!",list_of_estimates:"Esta secci\xF3n contendr\xE1 la lista de presupuestos.",mark_as_rejected:"Marcar como rechazado",mark_as_accepted:"Marcar como aceptado",marked_as_accepted_message:"Presupuesto marcado como aceptado",marked_as_rejected_message:"Presupuesto marcado como rechazado",confirm_delete:"No podr\xE1 recuperar este presupuesto | No podr\xE1 recuperar estos presupuestos",created_message:"Presupuesto creada con \xE9xito",updated_message:"Presupuesto actualizada con \xE9xito",deleted_message:"Presupuesto eliminada con \xE9xito | Presupuestos eliminadas exitosamente",something_went_wrong:"Algo fue mal",item:{title:"T\xEDtulo del art\xEDculo",description:"Descripci\xF3n",quantity:"Cantidad",price:"Precio",discount:"Descuento",total:"Total",total_discount:"Descuento total",sub_total:"Subtotal",tax:"Impuesto",amount:"Cantidad",select_an_item:"Escriba o haga clic para seleccionar un elemento",type_item_description:"Descripci\xF3n del tipo de elemento(opcional)"}},po={title:"Facturas",invoices_list:"Lista de facturas",days:"d\xEDas D\xEDas",months:"meses Mes",years:"a\xF1os A\xF1o",all:"Todas",paid:"Pagada",unpaid:"No pagado",viewed:"Viewed",overdue:"Overdue",completed:"Completed",customer:"CLIENTE",paid_status:"ESTADO PAGADO",ref_no:"N\xDAMERO DE REFERENCIA.",number:"N\xDAMERO",amount_due:"CANTIDAD DEBIDA",partially_paid:"Parcialmente pagado",total:"Total",discount:"Descuento",sub_total:"Subtotal",invoice:"Factura | Facturas",invoice_number:"Numero de factura",ref_number:"N\xFAmero de referencia",contact:"Contacto",add_item:"Agregar un art\xEDculo",date:"Fecha",due_date:"Fecha de vencimiento",status:"Estado",add_tax:"Agregar impuesto",amount:"Cantidad",action:"Acci\xF3n",notes:"Notas",view:"Ver",send_invoice:"Enviar la factura",resend_invoice:"Reenviar factura",invoice_template:"Plantilla de factura",template:"Modelo",mark_as_sent:"Marcar como enviada",confirm_send_invoice:"Esta factura ser\xE1 enviada por email al cliente",invoice_mark_as_sent:"Esta factura se marcar\xE1 como enviada",confirm_send:"Estas facturas se enviar\xE1n por correo electr\xF3nico al cliente.",invoice_date:"Fecha de la factura",record_payment:"Registro de pago",add_new_invoice:"A\xF1adir nueva factura",update_expense:"Actualizar gasto",edit_invoice:"Editar factura",new_invoice:"Nueva factura",save_invoice:"Guardar factura",update_invoice:"Actualizar factura",add_new_tax:"Agregar nuevo impuesto",no_invoices:"\xA1A\xFAn no hay facturas!",list_of_invoices:"Esta secci\xF3n contendr\xE1 la lista de facturas.",select_invoice:"Seleccionar factura",no_matching_invoices:"\xA1No hay facturas coincidentes con la selecci\xF3n!",mark_as_sent_successfully:"Factura marcada como enviada con \xE9xito",invoice_sent_successfully:"Factura enviada exitosamente",cloned_successfully:"Factura clonada exitosamente",clone_invoice:"Factura de clonaci\xF3n",confirm_clone:"Esta factura se clonar\xE1 en una nueva factura.",item:{title:"T\xEDtulo del art\xEDculo",description:"Descripci\xF3n",quantity:"Cantidad",price:"Precio",discount:"Descuento",total:"Total",total_discount:"Descuento total",sub_total:"Subtotal",tax:"Impuesto",amount:"Cantidad",select_an_item:"Escriba o haga clic para seleccionar un elemento",type_item_description:"Descripci\xF3n del tipo de elemento (opcional)"},confirm_delete:"No podr\xE1 recuperar esta factura | No podr\xE1 recuperar estas facturas",created_message:"Factura creada exitosamente",updated_message:"Factura actualizada exitosamente",deleted_message:"Factura eliminada con \xE9xito | Facturas borradas exitosamente",marked_as_sent_message:"Factura marcada como enviada con \xE9xito",something_went_wrong:"Algo fue mal",invalid_due_amount_message:"El pago ingresado es mayor que la cantidad total debida por esta factura. Por favor verificalo y vuelve a intentarlo"},go={title:"Pagos",payments_list:"Lista de pagos",record_payment:"Registro de pago",customer:"Cliente",date:"Fecha",amount:"Cantidad",action:"Acci\xF3n",payment_number:"Numero de pago",payment_mode:"Modo de pago",invoice:"Factura",note:"Nota",add_payment:"Agregar pago",new_payment:"Nuevo pago",edit_payment:"Editar pago",view_payment:"Ver pago",add_new_payment:"Agregar nuevo pago",send_payment_receipt:"Enviar recibo de pago",send_payment:"Enviar pago",save_payment:"Guardar pago",update_payment:"Actualizar pago",payment:"Pago | Pagos",no_payments:"\xA1A\xFAn no hay pagos!",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"\xA1No hay pagos equivalentes!",list_of_payments:"Esta secci\xF3n contendr\xE1 la lista de pagos.",select_payment_mode:"Seleccionar modo de pago",confirm_mark_as_sent:"Este presupuesto se marcar\xE1 como enviado",confirm_send_payment:"Este pago se enviar\xE1 por correo electr\xF3nico al cliente",send_payment_successfully:"Pago enviado correctamente",something_went_wrong:"Algo fue mal",confirm_delete:"No podr\xE1 recuperar este pago | No podr\xE1 recuperar estos pagos",created_message:"Pago creado con \xE9xito",updated_message:"Pago actualizado con \xE9xito",deleted_message:"Pago eliminado con \xE9xito | Pagos eliminados exitosamente",invalid_amount_message:"El importe del pago no es v\xE1lido."},fo={title:"Gastos",expenses_list:"Lista de gastos",select_a_customer:"Selecciona un cliente",expense_title:"T\xEDtulo",customer:"Cliente",contact:"Contacto",category:"Categor\xEDa",from_date:"Desde la fecha",to_date:"Hasta la fecha",expense_date:"Fecha",description:"Descripci\xF3n",receipt:"Recibo",amount:"Cantidad",action:"Acci\xF3n",not_selected:"Not selected",note:"Nota",category_id:"Categoria ID",date:"Fecha de gastos",add_expense:"A\xF1adir gastos",add_new_expense:"A\xF1adir nuevo gasto",save_expense:"Guardar gasto",update_expense:"Actualizar gasto",download_receipt:"Descargar recibo",edit_expense:"Editar gasto",new_expense:"Nuevo gasto",expense:"Gastos | Gastos",no_expenses:"\xA1No hay gastos todav\xEDa!",list_of_expenses:"Esta secci\xF3n contendr\xE1 la lista de gastos.",confirm_delete:"No podr\xE1 recuperar este gasto | No podr\xE1 recuperar estos gastos",created_message:"Gastos creados exitosamente",updated_message:"Gastos actualizados con \xE9xito",deleted_message:"Gastos eliminados con \xE9xito | Gastos eliminados exitosamente",categories:{categories_list:"Lista de categor\xEDas",title:"T\xEDtulo",name:"Nombre",description:"Descripci\xF3n",amount:"Cantidad",actions:"Comportamiento",add_category:"a\xF1adir categor\xEDa",new_category:"Nueva categor\xEDa",category:"Categor\xEDa | Categorias",select_a_category:"Seleccione una categor\xEDa"}},ho={email:"Correo electr\xF3nico",password:"Contrase\xF1a",forgot_password:"\xBFOlvidaste tu contrase\xF1a?",or_signIn_with:"o Inicia sesi\xF3n con",login:"Iniciar sesi\xF3n",register:"Registro",reset_password:"Restablecer la contrase\xF1a",password_reset_successfully:"Contrase\xF1a reestablecida con \xE9xito",enter_email:"Escriba el correo electr\xF3nico",enter_password:"Escriba la contrase\xF1a",retype_password:"Reescriba la contrase\xF1a"},vo={title:"Usuarios",users_list:"Lista de usuarios",name:"Nombre",description:"Descripci\xF3n",added_on:"A\xF1adido",date_of_creation:"Fecha de creaci\xF3n",action:"Acci\xF3n",add_user:"Agregar usuario",save_user:"Guardar usuario",update_user:"Actualizar usuario",user:"Usuario | Usuarios",add_new_user:"Agregar Nuevo Usuario",new_user:"Nuevo usuario",edit_user:"Editar usuario",no_users:"\xA1A\xFAn no hay usuarios!",list_of_users:"Esta secci\xF3n contendr\xE1 la lista de usuarios.",email:"Correo",phone:"Tel\xE9fono",password:"Contrase\xF1a",user_attached_message:"No se puede eliminar un elemento que ya est\xE1 en uso.",confirm_delete:"No podr\xE1 recuperar este Usuario | No podr\xE1 recuperar estos Usuarios",created_message:"Usuario creado satisfactoriamente",updated_message:"Usuario actualizado satisfactoriamente",deleted_message:"Usuario eliminado exitosamente | Usuario eliminado correctamente"},yo={title:"Informe",from_date:"A partir de la fecha",to_date:"Hasta la fecha",status:"Estado",paid:"Pagada",unpaid:"No pagado",download_pdf:"Descargar PDF",view_pdf:"Ver PDF",update_report:"Informe de actualizaci\xF3n",report:"Informe | Informes",profit_loss:{profit_loss:"P\xE9rdida de beneficios",to_date:"Hasta la fecha",from_date:"A partir de la fecha",date_range:"Seleccionar rango de fechas"},sales:{sales:"Ventas",date_range:"Seleccionar rango de fechas",to_date:"Hasta la fecha",from_date:"A partir de la fecha",report_type:"Tipo de informe"},taxes:{taxes:"Impuestos",to_date:"Hasta la fecha",from_date:"A partir de la fecha",date_range:"Seleccionar rango de fechas"},errors:{required:"Se requiere campo"},invoices:{invoice:"Factura",invoice_date:"Fecha de la factura",due_date:"Fecha de vencimiento",amount:"Cantidad",contact_name:"Nombre de contacto",status:"Estado"},estimates:{estimate:"Presupuestar",estimate_date:"Fecha presupuesto",due_date:"Fecha de vencimiento",estimate_number:"N\xFAmero de Presupuesto",ref_number:"N\xFAmero de referencia",amount:"Cantidad",contact_name:"Nombre de contacto",status:"Estado"},expenses:{expenses:"Gastos",category:"Categor\xEDa",date:"Fecha",amount:"Cantidad",to_date:"Hasta la fecha",from_date:"A partir de la fecha",date_range:"Seleccionar rango de fechas"}},bo={menu_title:{account_settings:"Configuraciones de la cuenta",company_information:"Informaci\xF3n de la empresa",customization:"Personalizaci\xF3n",preferences:"Preferencias",notifications:"Notificaciones",tax_types:"Tipos de impuestos",expense_category:"Categor\xEDas de gastos",update_app:"Actualizar aplicaci\xF3n",backup:"Copias de seguridad",file_disk:"Disco de archivo",custom_fields:"Campos Personalizados",payment_modes:"Modos de pago",notes:"Notas"},title:"Configuraciones",setting:"Configuraciones | Configuraciones",general:"General",language:"Idioma",primary_currency:"Moneda primaria",timezone:"Zona horaria",date_format:"Formato de fecha",currencies:{title:"Monedas",currency:"Moneda | Monedas",currencies_list:"Lista de monedas",select_currency:"Seleccione el tipo de moneda",name:"Nombre",code:"C\xF3digo",symbol:"S\xEDmbolo",precision:"Precisi\xF3n",thousand_separator:"Separador de miles",decimal_separator:"Separador decimal",position:"Posici\xF3n",position_of_symbol:"Posici\xF3n del s\xEDmbolo",right:"Derecho",left:"Izquierda",action:"Acci\xF3n",add_currency:"Agregar moneda"},mail:{host:"Host de correo",port:"Puerto de correo",driver:"Conductor de correo",secret:"Secreto",mailgun_secret:"Mailgun Secreto",mailgun_domain:"Domino",mailgun_endpoint:"Mailgun endpoint",ses_secret:"Secreto SES",ses_key:"Clave SES",password:"Contrase\xF1a de correo",username:"Nombre de usuario de correo",mail_config:"Configuraci\xF3n de correo",from_name:"Del nombre del correo",from_mail:"Desde la direcci\xF3n de correo",encryption:"Cifrado de correo",mail_config_desc:"Los detalles a continuaci\xF3n se utilizar\xE1n para actualizar el entorno de correo. Tambi\xE9n puede cambiar los detalles en cualquier momento despu\xE9s de iniciar sesi\xF3n."},pdf:{title:"Configuraci\xF3n de PDF",footer_text:"Texto de pie de p\xE1gina",pdf_layout:"Dise\xF1o PDF"},company_info:{company_info:"Informaci\xF3n de la compa\xF1\xEDa",company_name:"Nombre de Empresa",company_logo:"Logo de la compa\xF1\xEDa",section_description:"Informaci\xF3n sobre su empresa que se mostrar\xE1 en las facturas, presupuestos y otros documentos creados por Crater.",phone:"Tel\xE9fono",country:"Pa\xEDs",state:"Estado",city:"Ciudad",address:"Direcci\xF3n",zip:"C\xF3digo Postal",save:"Guardar",updated_message:"Informaci\xF3n de la empresa actualizada con \xE9xito"},custom_fields:{title:"Campos Personalizados",section_description:"Personalice sus facturas, estimaciones y recibos de pago en sus propios campos. Aseg\xFArese de usar los siguientes campos a\xF1adidos en los formatos de direcci\xF3n de la p\xE1gina de configuraci\xF3n de personalizaci\xF3n.",add_custom_field:"Agregar campo personalizado",edit_custom_field:"Editar campo personalizado",field_name:"Nombre del campo",label:"Etiqueta",type:"Tipo",name:"Nombre",required:"Necesaria",placeholder:"Marcador de posici\xF3n",help_text:"texto de ayuda",default_value:"Valor por defecto",prefix:"Prefijo",starting_number:"N\xFAmero inicial",model:"Modelo",help_text_description:"Ingrese un texto para ayudar a los usuarios a comprender el prop\xF3sito de este campo personalizado.",suffix:"Sufijo",yes:"si",no:"No",order:"Orden",custom_field_confirm_delete:"No podr\xE1 recuperar este campo personalizado",already_in_use:"El campo personalizado ya est\xE1 en uso",deleted_message:"Campo personalizado eliminado correctamente",options:"opciones",add_option:"Agregar opciones",add_another_option:"Agregar otra opci\xF3n",sort_in_alphabetical_order:"Ordenar en orden alfab\xE9tico",add_options_in_bulk:"Agregar opciones a granel",use_predefined_options:"Usar opciones predefinidas",select_custom_date:"Seleccionar fecha personalizada",select_relative_date:"Seleccionar fecha relativa",ticked_by_default:"Marcada por defecto",updated_message:"Campo personalizado actualizado correctamente",added_message:"Campo personalizado agregado correctamente"},customization:{customization:"Personalizaci\xF3n",save:"Guardar",addresses:{title:"Direcciones",section_description:"Puede configurar la Direcci\xF3n de facturaci\xF3n del cliente y el Formato de direcci\xF3n de env\xEDo del cliente (solo se muestra en PDF).",customer_billing_address:"Direcci\xF3n de facturaci\xF3n del cliente",customer_shipping_address:"Direcci\xF3n de env\xEDo del cliente",company_address:"Direcci\xF3n de la compa\xF1ia",insert_fields:"Insertar campos",contact:"Contacto",address:"Direcci\xF3n",display_name:"Nombre para mostrar",primary_contact_name:"Nombre de contacto principal",email:"Correo electr\xF3nico",website:"Sitio web",name:"Nombre",country:"Pa\xEDs",state:"Estado",city:"Ciudad",company_name:"Nombre de la compa\xF1ia",address_street_1:"Direcci\xF3n de la calle 1",address_street_2:"Direcci\xF3n de la calle 2",phone:"Telefono",zip_code:"Codigo postal",address_setting_updated:"Configuraci\xF3n de direcci\xF3n actualizada correctamente"},updated_message:"Informaci\xF3n de la empresa actualizada con \xE9xito",invoices:{title:"Facturas",notes:"Notas",invoice_prefix:"Prefijo de las facturas",default_invoice_email_body:"Cuerpo predeterminado del correo electr\xF3nico de la factura",invoice_settings:"Ajustes de facturas",autogenerate_invoice_number:"Autogenerar n\xFAmero de factura",autogenerate_invoice_number_desc:"Desactive esto, si no desea generar autom\xE1ticamente n\xFAmeros de factura cada vez que cree una nueva factura.",enter_invoice_prefix:"Introduzca el prefijo de factura",terms_and_conditions:"T\xE9rminos y Condiciones",company_address_format:"Formato de direcci\xF3n de la empresa",shipping_address_format:"Formato de la direcci\xF3n de env\xEDo",billing_address_format:"Formato de direcci\xF3n de facturaci\xF3n",invoice_settings_updated:"Configuraci\xF3n de factura actualizada correctamente"},estimates:{title:"Estimaciones",estimate_prefix:"Prefijo de los presupuestos",default_estimate_email_body:"Cuerpo predeterminado estimado del correo electr\xF3nico",estimate_settings:"Ajustes de presupuestos",autogenerate_estimate_number:"Autogenerar n\xFAmero de presupuesto",estimate_setting_description:"Desactive esto, si no desea generar autom\xE1ticamente n\xFAmeros de presupuesto cada vez que cree un nuevo presupuesto.",enter_estimate_prefix:"Introduzca el prefijo de presupuesto",estimate_setting_updated:"Configuraci\xF3n de presupuestos actualizada correctamente",company_address_format:"Formato de direcci\xF3n de la empresa",billing_address_format:"Formato de la direcci\xF3n de facturaci\xF3n",shipping_address_format:"Formato de direcci\xF3n de env\xEDo"},payments:{title:"Pagos",description:"Modos de transacci\xF3n de pagos",payment_prefix:"Prefijo de los pagos",default_payment_email_body:"Cuerpo predeterminado del correo electr\xF3nico del pago",payment_settings:"Ajustes de pagos",autogenerate_payment_number:"Autogenerar n\xFAmero de pago",payment_setting_description:"Desactive esto, si no desea generar autom\xE1ticamente n\xFAmeros de pago cada vez que cree un nuevo pago.",enter_payment_prefix:"Introduzca el prefijo de pago",payment_setting_updated:"Configuraci\xF3n de pagos actualizada correctamente",payment_modes:"Modos de pago",add_payment_mode:"Agregar modo de pago",edit_payment_mode:"Editar modo de pago",mode_name:"Nombre del modo",payment_mode_added:"Modo de pago agregado",payment_mode_updated:"Modo de pago actualizado",payment_mode_confirm_delete:"No podr\xE1 recuperar este modo de pago",already_in_use:"El modo de pago ya est\xE1 en uso",deleted_message:"Modo de pago eliminado correctamente",company_address_format:"Formato de direcci\xF3n de la empresa",from_customer_address_format:"Desde el formato de direcci\xF3n del cliente"},items:{title:"Art\xEDculos",units:"unidades",add_item_unit:"Agregar unidad de art\xEDculo",edit_item_unit:"Editar unidad de art\xEDculo",unit_name:"Nombre de la unidad",item_unit_added:"Unidad de art\xEDculo agregada",item_unit_updated:"Unidad de art\xEDculo actualizada",item_unit_confirm_delete:"No podr\xE1s recuperar esta unidad de art\xEDculo",already_in_use:"Unidad de art\xEDculo ya est\xE1 en uso",deleted_message:"Unidad de elemento eliminada correctamente"},notes:{title:"Notas",description:"Ahorre tiempo creando notas y reutiliz\xE1ndolas en sus facturas, c\xE1lculos y pagos.",notes:"Notas",type:"Tipo",add_note:"Agregar nota",add_new_note:"Agregar nueva nota",name:"Nombre",edit_note:"Editar nota",note_added:"Nota agregada correctamente",note_updated:"Nota actualizada correctamente",note_confirm_delete:"No podr\xE1 recuperar esta nota",already_in_use:"Nota ya est\xE1 en uso",deleted_message:"Nota eliminada correctamente"}},account_settings:{profile_picture:"Foto de perfil",name:"Nombre",email:"Correo electr\xF3nico",password:"Contrase\xF1a",confirm_password:"Confirmar contrase\xF1a",account_settings:"Configuraciones de la cuenta",save:"Guardar",section_description:"Puede actualizar su nombre, correo electr\xF3nico y contrase\xF1a utilizando el siguiente formulario.",updated_message:"Configuraci\xF3n de la cuenta actualizada correctamente"},user_profile:{name:"Nombre",email:"Correo electr\xF3nico",password:"Contrase\xF1a",confirm_password:"Confirmar contrase\xF1a"},notification:{title:"Notificaci\xF3n",email:"Enviar notificaciones a",description:"\xBFQu\xE9 notificaciones por correo electr\xF3nico le gustar\xEDa recibir cuando algo cambia?",invoice_viewed:"Factura vista",invoice_viewed_desc:"Cuando su cliente vio la factura enviada a trav\xE9s del panel de control de Crater.",estimate_viewed:"Presupuesto visto",estimate_viewed_desc:"Cuando su cliente vio el presupuesto enviado a trav\xE9s del panel de control de Crater.",save:"Guardar",email_save_message:"Correo electr\xF3nico guardado con \xE9xito",please_enter_email:"Por favor, introduzca su correo electr\xF3nico"},tax_types:{title:"Tipos de impuestos",add_tax:"Agregar impuesto",edit_tax:"Editar impuesto",description:"Puede agregar o eliminar impuestos a su gusto. Crater admite impuestos sobre art\xEDculos individuales, as\xED como sobre la factura.",add_new_tax:"Agregar nuevo impuesto",tax_settings:"Configuraciones de impuestos",tax_per_item:"Impuesto por art\xEDculo",tax_name:"Nombre del impuesto",compound_tax:"Impuesto compuesto",percent:"Porcentaje",action:"Acci\xF3n",tax_setting_description:"Habil\xEDtelo si desea agregar impuestos a art\xEDculos de factura de forma individual. Por defecto, los impuestos se agregan directamente a la factura.",created_message:"Tipo de impuesto creado con \xE9xito",updated_message:"Tipo de impuesto actualizado correctamente",deleted_message:"Tipo de impuesto eliminado correctamente",confirm_delete:"No podr\xE1 recuperar este tipo de impuesto",already_in_use:"El impuesto ya est\xE1 en uso."},expense_category:{title:"Categor\xEDas de gastos",action:"Acci\xF3n",description:"Se requieren categor\xEDas para agregar entradas de gastos. Puede Agregar o Eliminar estas categor\xEDas seg\xFAn su preferencia.",add_new_category:"A\xF1adir nueva categoria",add_category:"A\xF1adir categor\xEDa",edit_category:"Editar categoria",category_name:"nombre de la categor\xEDa",category_description:"Descripci\xF3n",created_message:"Categor\xEDa de gastos creada con \xE9xito",deleted_message:"Categor\xEDa de gastos eliminada correctamente",updated_message:"Categor\xEDa de gastos actualizada con \xE9xito",confirm_delete:"No podr\xE1 recuperar esta categor\xEDa de gastos",already_in_use:"La categor\xEDa ya est\xE1 en uso."},preferences:{currency:"Moneda",default_language:"Idioma predeterminado",time_zone:"Zona horaria",fiscal_year:"A\xF1o financiero",date_format:"Formato de fecha",discount_setting:"Ajuste de descuento",discount_per_item:"Descuento por art\xEDculo",discount_setting_description:"Habil\xEDtelo si desea agregar Descuento a art\xEDculos de factura individuales. Por defecto, los descuentos se agregan directamente a la factura.",save:"Guardar",preference:"Preferencia | Preferencias",general_settings:"Preferencias predeterminadas para el sistema.",updated_message:"Preferencias actualizadas exitosamente",select_language:"seleccione el idioma",select_time_zone:"selecciona la zona horaria",select_date_format:"Seleccionar formato de fecha",select_financial_year:"seleccione a\xF1o financiero"},update_app:{title:"Actualizar aplicaci\xF3n",description:"actualizar la descripci\xF3n de la aplicaci\xF3n",check_update:"Buscar actualizaciones",avail_update:"Nueva actualizaci\xF3n disponible",next_version:"Pr\xF3xima versi\xF3n",requirements:"Requisitos",update:"Actualizar",update_progress:"Actualizaci\xF3n en progreso...",progress_text:"Solo tomar\xE1 unos minutos. No actualice la pantalla ni cierre la ventana antes de que finalice la actualizaci\xF3n.",update_success:"\xA1La aplicaci\xF3n ha sido actualizada! Espere mientras la ventana de su navegador se vuelve a cargar autom\xE1ticamente.",latest_message:"\xA1Actualizaci\xF3n no disponible! Est\xE1s en la \xFAltima versi\xF3n.",current_version:"Versi\xF3n actual",download_zip_file:"Descargar archivo ZIP",unzipping_package:"Descomprimir paquete",copying_files:"Copiando documentos",running_migrations:"Ejecutar migraciones",finishing_update:"Actualizaci\xF3n final",update_failed:"Actualizaci\xF3n fallida",update_failed_text:"\xA1Lo siento! Su actualizaci\xF3n fall\xF3 el: {step} paso"},backup:{title:"Copia de seguridad | Copias de seguridad",description:"La copia de seguridad es un archivo comprimido zip que contiene todos los archivos en los directorios que especifiques junto con tu base de datos",new_backup:"Agregar nueva copia de seguridad",create_backup:"Crear copia de seguridad",select_backup_type:"Seleccione Tipo de Copia de Seguridad",backup_confirm_delete:"No podr\xE1 recuperar esta copia de seguridad",path:"ruta",new_disk:"Nuevo Disco",created_at:"creado el",size:"tama\xF1o",dropbox:"dropbox",local:"local",healthy:"saludable",amount_of_backups:"cantidad de copias de seguridad",newest_backups:"copias de seguridad m\xE1s recientes",used_storage:"almacenamiento utilizado",select_disk:"Seleccionar Disco",action:"Acci\xF3n",deleted_message:"Copia de seguridad eliminada exitosamente",created_message:"Copia de seguridad creada satisfactoriamente",invalid_disk_credentials:"Credencial no v\xE1lida del disco seleccionado"},disk:{title:"Disco de archivos | Discos de archivos",description:"Por defecto, Crater utilizar\xE1 su disco local para guardar copias de seguridad, avatar y otros archivos de imagen. Puede configurar varios controladores de disco como DigitalOcean, S3 y Dropbox seg\xFAn sus preferencias.",created_at:"creado el",dropbox:"dropbox",name:"Nombre",driver:"Controlador",disk_type:"Tipo",disk_name:"Nombre del disco",new_disk:"Agregar nuevo disco",filesystem_driver:"Controlador del sistema de archivos",local_driver:"controlador local",local_root:"ra\xEDz local",public_driver:"Controlador p\xFAblico",public_root:"Ra\xEDz p\xFAblica",public_url:"URL p\xFAblica",public_visibility:"Visibilidad p\xFAblica",media_driver:"Controlador multimedia",media_root:"Ra\xEDz multimedia",aws_driver:"Controlador AWS",aws_key:"Clave AWS",aws_secret:"Secreto AWS",aws_region:"Regi\xF3n de AWS",aws_bucket:"Cubo AWS",aws_root:"Ra\xEDz AWS",do_spaces_type:"Hacer Espacios tipo",do_spaces_key:"Disponer espacios",do_spaces_secret:"Disponer espacios secretos",do_spaces_region:"Disponer regi\xF3n de espacios",do_spaces_bucket:"Disponer espacios",do_spaces_endpoint:"Disponer espacios extremos",do_spaces_root:"Disponer espacios en la ra\xEDz",dropbox_type:"Tipo de Dropbox",dropbox_token:"Token de DropBox",dropbox_key:"Clave Dropbox",dropbox_secret:"Dropbox Secret",dropbox_app:"Aplicaci\xF3n Dropbox",dropbox_root:"Ra\xEDz Dropbox",default_driver:"Controlador por defecto",is_default:"ES PREDETERMINADO",set_default_disk:"Establecer disco predeterminado",success_set_default_disk:"Disco establecido correctamente como predeterminado",save_pdf_to_disk:"Guardar PDFs a disco",disk_setting_description:" Habilite esto, si desea guardar autom\xE1ticamente una copia en formato pdf de cada factura, c\xE1lculo y recibo de pago en su disco predeterminado. Al activar esta opci\xF3n, se reducir\xE1 el tiempo de carga al visualizar los archivos PDFs.",select_disk:"Seleccionar Disco",disk_settings:"Configuraci\xF3n del disco",confirm_delete:"Los archivos y carpetas existentes en el disco especificado no se ver\xE1n afectados, pero su configuraci\xF3n de disco ser\xE1 eliminada de Crater",action:"Acci\xF3n",edit_file_disk:"Editar disco de ficheros",success_create:"Disco a\xF1adido satisfactoriamente",success_update:"Disco actualizado satisfactoriamente",error:"Error al a\xF1adir disco",deleted_message:"Disco de archivo borrado correctamente",disk_variables_save_successfully:"Disco configurado correctamente",disk_variables_save_error:"La configuraci\xF3n del disco ha fallado.",invalid_disk_credentials:"Credencial no v\xE1lida del disco seleccionado"}},ko={account_info:"Informaci\xF3n de la cuenta",account_info_desc:"Los detalles a continuaci\xF3n se utilizar\xE1n para crear la cuenta principal de administrador. Tambi\xE9n puede cambiar los detalles en cualquier momento despu\xE9s de iniciar sesi\xF3n.",name:"Nombre",email:"Correo",password:"Contrase\xF1a",confirm_password:"Confirmar contrase\xF1a",save_cont:"Guardar y continuar",company_info:"Informaci\xF3n de la empresa",company_info_desc:"Esta informaci\xF3n se mostrar\xE1 en las facturas. Tenga en cuenta que puede editar esto m\xE1s adelante en la p\xE1gina de configuraci\xF3n.",company_name:"nombre de empresa",company_logo:"Logo de la compa\xF1\xEDa",logo_preview:"Vista previa del logotipo",preferences:"Preferencias",preferences_desc:"Preferencias predeterminadas para el sistema.",country:"Pa\xEDs",state:"Estado",city:"Ciudad",address:"Direcci\xF3n",street:"Calle1 | Calle2",phone:"Tel\xE9fono",zip_code:"C\xF3digo postal",go_back:"Regresa",currency:"Moneda",language:"Idioma",time_zone:"Zona horaria",fiscal_year:"A\xF1o financiero",date_format:"Formato de fecha",from_address:"Desde la Direcci\xF3n",username:"Nombre de usuario",next:"Siguiente",continue:"Continuar",skip:"Saltar",database:{database:"URL del sitio y base de datose",connection:"Conexi\xF3n de base de datos",host:"Host de la base de datos",port:"Puerto de la base de datos",password:"Contrase\xF1a de la base de datos",app_url:"URL de la aplicaci\xF3n",app_domain:"Dominio",username:"Nombre de usuario de la base de datos",db_name:"Nombre de la base de datos",db_path:"Ruta de la base de datos",desc:"Cree una base de datos en su servidor y establezca las credenciales utilizando el siguiente formulario."},permissions:{permissions:"Permisos",permission_confirm_title:"\xBFEst\xE1s seguro de que quieres continuar?",permission_confirm_desc:"Error de verificaci\xF3n de permisos de carpeta",permission_desc:"A continuaci\xF3n se muestra la lista de permisos de carpeta necesarios para que la aplicaci\xF3n funcione. Si la verificaci\xF3n de permisos falla, aseg\xFArese de actualizar los permisos de su carpeta."},mail:{host:"Host de correo",port:"Puerto de correo",driver:"Conductor de correo",secret:"Secreto",mailgun_secret:"Mailgun Secreto",mailgun_domain:"Dominio",mailgun_endpoint:"Mailgun endpoint",ses_secret:"Secreto SES",ses_key:"Clave SES",password:"Contrase\xF1a de correo",username:"Nombre de usuario de correo",mail_config:"Configuraci\xF3n de correo",from_name:"Del nombre del correo",from_mail:"Desde la direcci\xF3n de correo",encryption:"Cifrado de correo",mail_config_desc:"Los detalles a continuaci\xF3n se utilizar\xE1n para actualizar el entorno de correo. Tambi\xE9n puede cambiar los detalles en cualquier momento despu\xE9s de iniciar sesi\xF3n."},req:{system_req:"Requisitos del sistema",php_req_version:"Php (versi\xF3n {version} necesario)",check_req:"Consultar requisitos",system_req_desc:"Crater tiene algunos requisitos de servidor. Aseg\xFArese de que su servidor tenga la versi\xF3n de php requerida y todas las extensiones mencionadas a continuaci\xF3n."},errors:{migrate_failed:"La migraci\xF3n fall\xF3",database_variables_save_error:"No se puede conectar a la base de datos con los valores proporcionados.",mail_variables_save_error:"La configuraci\xF3n del correo electr\xF3nico ha fallado.",connection_failed:"Conexi\xF3n de base de datos fallida",database_should_be_empty:"La base de datos debe estar vac\xEDa"},success:{mail_variables_save_successfully:"Correo electr\xF3nico configurado correctamente",database_variables_save_successfully:"Base de datos configurada con \xE9xito."}},wo={invalid_phone:"Numero de telefono invalido",invalid_url:"URL no v\xE1lida (por ejemplo, http://www.crater.com)",invalid_domain_url:"URL no v\xE1lida (por ejemplo, crater.com)",required:"Se requiere campo",email_incorrect:"Email incorrecto.",email_already_taken:"Este email ya est\xE1 en uso",email_does_not_exist:"El usuario con el correo electr\xF3nico dado no existe",item_unit_already_taken:"El nombre de la unidad ya est\xE1 en uso",payment_mode_already_taken:"El modo de pago ya ha sido tomado",send_reset_link:"Enviar enlace de restablecimiento",not_yet:"\xBFA\xFAn no? Env\xEDalo de nuevo",password_min_length:"La contrase\xF1a debe contener {count} caracteres",name_min_length:"El nombre debe tener al menos {count} letras.",enter_valid_tax_rate:"Ingrese una tasa impositiva v\xE1lida",numbers_only:"Solo n\xFAmeros.",characters_only:"Solo caracteres.",password_incorrect:"Las contrase\xF1as deben ser id\xE9nticas",password_length:"La contrase\xF1a debe tener 5 caracteres de longitud.",qty_must_greater_than_zero:"La cantidad debe ser mayor que cero.",price_greater_than_zero:"El precio debe ser mayor que cero.",payment_greater_than_zero:"El pago debe ser mayor que cero.",payment_greater_than_due_amount:"El pago ingresado es mayor a la cantidad debida de esta factura.",quantity_maxlength:"La cantidad no debe ser mayor de 20 d\xEDgitos.",price_maxlength:"El precio no debe ser mayor de 20 d\xEDgitos.",price_minvalue:"El precio debe ser mayor que 0 d\xEDgitos",amount_maxlength:"La cantidad no debe ser mayor de 20 d\xEDgitos.",amount_minvalue:"La cantidad debe ser mayor que 0 d\xEDgitos",description_maxlength:"La descripci\xF3n no debe tener m\xE1s de 255 caracteres.",subject_maxlength:"El asunto no debe tener m\xE1s de 100 caracteres.",message_maxlength:"El mensaje no debe tener m\xE1s de 255 caracteres.",maximum_options_error:"M\xE1ximo de {max} opciones seleccionadas. Primero elimine una opci\xF3n seleccionada para seleccionar otra.",notes_maxlength:"Las notas no deben tener m\xE1s de 255 caracteres.",address_maxlength:"La direcci\xF3n no debe tener m\xE1s de 255 caracteres.",ref_number_maxlength:"El n\xFAmero de referencia no debe tener m\xE1s de 255 caracteres.",prefix_maxlength:"El prefijo no debe tener m\xE1s de 5 caracteres.",something_went_wrong:"Algo fue mal"},xo="Presupuestar",zo="N\xFAmero de Presupuesto",So="Fecha presupuesto",jo="Fecha de caducidad",Po="Factura",Do="Numero de factura",Co="Fecha de la factura",Ao="Fecha final",Eo="Notas",No="Art\xEDculos",To="Cantidad",Io="Precio",$o="Descuento",Ro="Cantidad",Fo="Subtotal",Mo="Total",Vo="Payment",Bo="RECIBO DE PAGO",Oo="Fecha de pago",Lo="Numero de pago",Uo="Modo de pago",Ko="Monto Recibido",qo="INFORME DE GASTOS",Zo="GASTO TOTAL",Wo="INFORME PERDIDAS & GANANCIAS",Ho="Sales Customer Report",Go="Sales Item Report",Yo="Tax Summary Report",Jo="INGRESO",Xo="GANANCIA NETA",Qo="Informe de ventas: Por cliente",er="VENTAS TOTALES",tr="Informe de ventas: por art\xEDculo",ar="INFORME DE IMPUESTOS",sr="TOTAL IMPUESTOS",nr="Tipos de impuestos",ir="Gastos",or="Cobrar a,",rr="Enviar a,",dr="Recibido desde:",lr="Imposto";var cr={navigation:io,general:oo,dashboard:ro,tax_types:lo,global_search:co,customers:_o,items:uo,estimates:mo,invoices:po,payments:go,expenses:fo,login:ho,users:vo,reports:yo,settings:bo,wizard:ko,validation:wo,pdf_estimate_label:xo,pdf_estimate_number:zo,pdf_estimate_date:So,pdf_estimate_expire_date:jo,pdf_invoice_label:Po,pdf_invoice_number:Do,pdf_invoice_date:Co,pdf_invoice_due_date:Ao,pdf_notes:Eo,pdf_items_label:No,pdf_quantity_label:To,pdf_price_label:Io,pdf_discount_label:$o,pdf_amount_label:Ro,pdf_subtotal:Fo,pdf_total:Mo,pdf_payment_label:Vo,pdf_payment_receipt_label:Bo,pdf_payment_date:Oo,pdf_payment_number:Lo,pdf_payment_mode:Uo,pdf_payment_amount_received_label:Ko,pdf_expense_report_label:qo,pdf_total_expenses_label:Zo,pdf_profit_loss_label:Wo,pdf_sales_customers_label:Ho,pdf_sales_items_label:Go,pdf_tax_summery_label:Yo,pdf_income_label:Jo,pdf_net_profit_label:Xo,pdf_customer_sales_report:Qo,pdf_total_sales_label:er,pdf_item_sales_label:tr,pdf_tax_report_label:ar,pdf_total_tax_label:sr,pdf_tax_types_label:nr,pdf_expenses_label:ir,pdf_bill_to:or,pdf_ship_to:rr,pdf_received_from:dr,pdf_tax_label:lr};const _r={dashboard:"\u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629",customers:"\u0627\u0644\u0639\u0645\u0644\u0627\u0621",items:"\u0627\u0644\u0623\u0635\u0646\u0627\u0641",invoices:"\u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631",expenses:"\u0627\u0644\u0646\u0641\u0642\u0627\u062A",estimates:"\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A",payments:"\u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A",reports:"\u0627\u0644\u062A\u0642\u0627\u0631\u064A\u0631",settings:"\u0627\u0644\u0625\u0639\u062F\u0627\u062F\u0627\u062A",logout:"\u062E\u0631\u0648\u062C",users:"\u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u0648\u0646"},ur={add_company:"\u0623\u0636\u0641 \u0634\u0631\u0643\u0629",view_pdf:"\u0639\u0631\u0636 PDF",copy_pdf_url:"Copy PDF Url",download_pdf:"\u062A\u0646\u0632\u064A\u0644 PDF",save:"\u062D\u0641\u0638",create:"\u062E\u0644\u0642",cancel:"\u0625\u0644\u063A\u0627\u0621 \u0627\u0644\u0623\u0645\u0631",update:"\u062A\u062D\u062F\u064A\u062B",deselect:"Deselect",download:"\u062A\u0646\u0632\u064A\u0644",from_date:"\u0645\u0646 \u062A\u0627\u0631\u064A\u062E",to_date:"\u0625\u0644\u0649 \u062A\u0627\u0631\u064A\u062E",from:"\u0645\u0646",to:"\u0625\u0644\u0649",sort_by:"\u062A\u0631\u062A\u064A\u0628 \u062D\u0633\u0628",ascending:"\u062A\u0635\u0627\u0639\u062F\u064A",descending:"\u062A\u0646\u0627\u0632\u0644\u064A",subject:"\u0645\u0648\u0636\u0648\u0639",body:"\u0627\u0644\u062C\u0633\u0645",message:"\u0631\u0633\u0627\u0644\u0629",send:"\u0625\u0631\u0633\u0627\u0644",go_back:"\u0625\u0644\u0649 \u0627\u0644\u062E\u0644\u0641",back_to_login:"\u0627\u0644\u0639\u0648\u062F\u0629 \u0625\u0644\u0649 \u062A\u0633\u062C\u064A\u0644 \u0627\u0644\u062F\u062E\u0648\u0644\u061F",home:"\u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629",filter:"\u062A\u0635\u0641\u064A\u0629",delete:"\u062D\u0630\u0641",edit:"\u062A\u0639\u062F\u064A\u0644",view:"\u0639\u0631\u0636",add_new_item:"\u0625\u0636\u0627\u0641\u0629 \u0635\u0646\u0641 \u062C\u062F\u064A\u062F",clear_all:"\u0645\u0633\u062D \u0627\u0644\u0643\u0644",showing:"\u0639\u0631\u0636",of:"\u0645\u0646",actions:"\u0627\u0644\u0639\u0645\u0644\u064A\u0627\u062A",subtotal:"\u0627\u0644\u0645\u062C\u0645\u0648\u0639 \u0627\u0644\u0641\u0631\u0639\u064A",discount:"\u062E\u0635\u0645",fixed:"\u062B\u0627\u0628\u062A",percentage:"\u0646\u0633\u0628\u0629",tax:"\u0636\u0631\u064A\u0628\u0629",total_amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",bill_to:"\u0645\u0637\u0644\u0648\u0628 \u0645\u0646",ship_to:"\u064A\u0634\u062D\u0646 \u0625\u0644\u0649",due:"\u0648\u0627\u062C\u0628\u0629 \u0627\u0644\u0633\u062F\u0627\u062F",draft:"\u0645\u0633\u0648\u062F\u0629",sent:"\u0645\u0631\u0633\u0644\u0629",all:"\u0627\u0644\u0643\u0644",select_all:"\u062A\u062D\u062F\u064A\u062F \u0627\u0644\u0644",choose_file:"\u0627\u0636\u063A\u0637 \u0647\u0646\u0627 \u0644\u0627\u062E\u062A\u064A\u0627\u0631 \u0645\u0644\u0641",choose_template:"\u0627\u062E\u062A\u064A\u0627\u0631 \u0627\u0644\u0642\u0627\u0644\u0628",choose:"\u0627\u062E\u062A\u0631",remove:"\u0625\u0632\u0627\u0644\u0629",powered_by:"\u062A\u0635\u0645\u064A\u0645",bytefury:"\u0628\u0627\u062A\u0631\u0641\u0648\u0631\u064A",select_a_status:"\u0627\u062E\u062A\u0631 \u0627\u0644\u062D\u0627\u0644\u0629",select_a_tax:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0636\u0631\u064A\u0628\u0629",search:"\u0628\u062D\u062B",are_you_sure:"\u0647\u0644 \u0623\u0646\u062A \u0645\u062A\u0623\u0643\u062F?",list_is_empty:"\u0627\u0644\u0642\u0627\u0626\u0645\u0629 \u0641\u0627\u0631\u063A\u0629.",no_tax_found:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0636\u0631\u064A\u0628\u0629!",four_zero_four:"404",you_got_lost:"\u0639\u0641\u0648\u0627\u064B! \u064A\u0628\u062F\u0648 \u0623\u0646\u0643 \u0642\u062F \u062A\u0647\u062A!",go_home:"\u0639\u0648\u062F\u0629 \u0625\u0644\u0649 \u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629",test_mail_conf:"\u0627\u062E\u062A\u0628\u0627\u0631 \u062A\u0643\u0648\u064A\u0646 \u0627\u0644\u0628\u0631\u064A\u062F",send_mail_successfully:"\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0628\u0646\u062C\u0627\u062D",setting_updated:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0628\u0646\u062C\u0627\u062D",select_state:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0648\u0644\u0627\u064A\u0629/\u0627\u0644\u0645\u0646\u0637\u0642\u0629",select_country:"\u0627\u062E\u062A\u0631 \u0627\u0644\u062F\u0648\u0644\u0629",select_city:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0645\u062F\u064A\u0646\u0629",street_1:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u0627\u0631\u0639 1",street_2:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u0627\u0631\u0639 2",action_failed:"\u0641\u0634\u0644\u062A \u0627\u0644\u0639\u0645\u0644\u064A\u0629",retry:"\u0623\u0639\u062F \u0627\u0644\u0645\u062D\u0627\u0648\u0644\u0629",choose_note:"\u0627\u062E\u062A\u0631 \u0645\u0644\u0627\u062D\u0638\u0629",no_note_found:"\u0644\u0645 \u064A\u062A\u0645 \u0627\u0644\u0639\u062B\u0648\u0631 \u0639\u0644\u0649 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0629",insert_note:"\u0623\u062F\u062E\u0644 \u0645\u0644\u0627\u062D\u0638\u0629"},mr={select_year:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0633\u0646\u0629",cards:{due_amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",customers:"\u0627\u0644\u0639\u0645\u0644\u0627\u0621",invoices:"\u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631",estimates:"\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A"},chart_info:{total_sales:"\u0627\u0644\u0645\u0628\u064A\u0639\u0627\u062A",total_receipts:"\u0625\u062C\u0645\u0627\u0644\u064A \u0627\u0644\u062F\u062E\u0644",total_expense:"\u0627\u0644\u0646\u0641\u0642\u0627\u062A",net_income:"\u0635\u0627\u0641\u064A \u0627\u0644\u062F\u062E\u0644",year:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0633\u0646\u0629"},monthly_chart:{title:"\u0627\u0644\u0645\u0628\u064A\u0639\u0627\u062A \u0648\u0627\u0644\u0646\u0641\u0642\u0627\u062A"},recent_invoices_card:{title:"\u0641\u0648\u0627\u062A\u064A\u0631 \u0645\u0633\u062A\u062D\u0642\u0629",due_on:"\u0645\u0633\u062A\u062D\u0642\u0629 \u0641\u064A",customer:"\u0627\u0644\u0639\u0645\u064A\u0644",amount_due:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",actions:"\u0627\u0644\u0639\u0645\u0644\u064A\u0627\u062A",view_all:"\u0639\u0631\u0636 \u0627\u0644\u0643\u0644"},recent_estimate_card:{title:"\u0623\u062D\u062F\u062B \u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A",date:"\u0627\u0644\u062A\u0627\u0631\u064A\u062E",customer:"\u0627\u0644\u0639\u0645\u064A\u0644",amount_due:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",actions:"\u0627\u0644\u0639\u0645\u0644\u064A\u0627\u062A",view_all:"\u0639\u0631\u0636 \u0627\u0644\u0643\u0644"}},pr={name:"\u0627\u0644\u0627\u0633\u0645",description:"\u0627\u0644\u0648\u0635\u0641",percent:"\u0646\u0633\u0628\u0647 \u0645\u0626\u0648\u064A\u0647",compound_tax:"\u0627\u0644\u0636\u0631\u064A\u0628\u0629 \u0627\u0644\u0645\u0631\u0643\u0628\u0629"},gr={search:"\u0628\u062D\u062B...",customers:"\u0627\u0644\u0639\u0645\u0644\u0627\u0621",users:"\u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u0648\u0646",no_results_found:"\u0644\u0645 \u064A\u062A\u0645 \u0627\u0644\u0639\u062B\u0648\u0631 \u0639\u0644\u0649 \u0646\u062A\u0627\u0626\u062C"},fr={title:"\u0627\u0644\u0639\u0645\u0644\u0627\u0621",add_customer:"\u0625\u0636\u0627\u0641\u0629 \u0639\u0645\u064A\u0644",contacts_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0639\u0645\u0644\u0627\u0621",name:"\u0627\u0644\u0627\u0633\u0645",mail:"\u0627\u0644\u0628\u0631\u064A\u062F",statement:"\u0627\u0644\u0628\u064A\u0627\u0646",display_name:"\u0627\u0633\u0645 \u0627\u0644\u0639\u0631\u0636",primary_contact_name:"\u0627\u0633\u0645 \u0627\u0644\u062A\u0648\u0627\u0635\u0644 \u0627\u0644\u0631\u0626\u064A\u0633\u064A",contact_name:"\u0627\u0633\u0645 \u062A\u0648\u0627\u0635\u0644 \u0622\u062E\u0631",amount_due:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",email:"\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",address:"\u0627\u0644\u0639\u0646\u0648\u0627\u0646",phone:"\u0627\u0644\u0647\u0627\u062A\u0641",website:"\u0645\u0648\u0642\u0639 \u0627\u0644\u0625\u0646\u062A\u0631\u0646\u062A",overview:"\u0627\u0633\u062A\u0639\u0631\u0627\u0636",enable_portal:"Enable Portal",country:"\u0627\u0644\u062F\u0648\u0644\u0629",state:"\u0627\u0644\u0648\u0644\u0627\u064A\u0629/\u0627\u0644\u0645\u0646\u0637\u0642\u0629",city:"\u0627\u0644\u0645\u062F\u064A\u0646\u0629",zip_code:"\u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0628\u0631\u064A\u062F\u064A",added_on:"\u0623\u0636\u064A\u0641 \u0641\u064A",action:"\u0625\u062C\u0631\u0627\u0621",password:"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",street_number:"\u0631\u0642\u0645 \u0627\u0644\u0634\u0627\u0631\u0639",primary_currency:"\u0627\u0644\u0639\u0645\u0644\u0629 \u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629",description:"\u0627\u0644\u0648\u0635\u0641",add_new_customer:"\u0625\u0636\u0627\u0641\u0629 \u0639\u0645\u064A\u0644 \u062C\u062F\u064A\u062F",save_customer:"\u062D\u0641\u0638 \u0627\u0644\u0639\u0645\u064A\u0644",update_customer:"\u062A\u062D\u062F\u064A\u062B \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0639\u0645\u064A\u0644",customer:"\u0639\u0645\u064A\u0644 | \u0639\u0645\u0644\u0627\u0621",new_customer:"\u0639\u0645\u064A\u0644 \u062C\u062F\u064A\u062F",edit_customer:"\u062A\u0639\u062F\u064A\u0644 \u0639\u0645\u064A\u0644",basic_info:"\u0645\u0639\u0644\u0648\u0627\u062A \u0623\u0633\u0627\u0633\u064A\u0629",billing_address:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0641\u0648\u062A\u0631\u0629",shipping_address:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u062D\u0646",copy_billing_address:"\u0646\u0633\u062E \u0645\u0646 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0641\u0648\u062A\u0631\u0629",no_customers:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0639\u0645\u0644\u0627\u0621 \u062D\u062A\u0649 \u0627\u0644\u0622\u0646!",no_customers_found:"\u0644\u0645 \u064A\u062A\u0645 \u0627\u0644\u062D\u0635\u0648\u0644 \u0639\u0644\u0649 \u0639\u0645\u0644\u0627\u0621!",no_contact:"No contact",no_contact_name:"No contact name",list_of_customers:"\u0633\u0648\u0641 \u064A\u062D\u062A\u0648\u064A \u0647\u0630\u0627 \u0627\u0644\u0642\u0633\u0645 \u0639\u0644\u0649 \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0639\u0645\u0644\u0627\u0621.",primary_display_name:"\u0627\u0633\u0645 \u0627\u0644\u0639\u0631\u0636 \u0627\u0644\u0631\u0626\u064A\u0633\u064A",select_currency:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0639\u0645\u0644\u0629",select_a_customer:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0639\u0645\u064A\u0644",type_or_click:"\u0627\u0643\u062A\u0628 \u0623\u0648 \u0627\u0636\u063A\u0637 \u0644\u0644\u0627\u062E\u062A\u064A\u0627\u0631",new_transaction:"\u0645\u0639\u0627\u0645\u0644\u0629 \u062C\u062F\u064A\u062F\u0629",no_matching_customers:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0639\u0645\u0644\u0627\u0621 \u0645\u0637\u0627\u0628\u0642\u064A\u0646!",phone_number:"\u0631\u0642\u0645 \u0627\u0644\u0647\u0627\u062A\u0641",create_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0625\u0646\u0634\u0627\u0621",confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062F\u0627\u062F \u0647\u0630\u0627 \u0627\u0644\u0639\u0645\u064A\u0644 \u0648\u062C\u0645\u064A\u0639 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0648\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A \u0648\u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0630\u0627\u062A \u0627\u0644\u0635\u0644\u0629. | \u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062F\u0627\u062F \u0647\u0624\u0644\u0627\u0621 \u0627\u0644\u0639\u0645\u0644\u0627\u0621 \u0648\u062C\u0645\u064A\u0639 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0648\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A \u0648\u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0630\u0627\u062A \u0627\u0644\u0635\u0644\u0629.",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0639\u0645\u0644\u0627\u0621 \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0639\u0645\u0644\u0627\u0621 \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0639\u0645\u0644\u0627\u0621 \u0628\u0646\u062C\u0627\u062D | \u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0639\u0645\u064A\u0644 \u0628\u0646\u062C\u0627\u062D"},hr={title:"\u0627\u0644\u0623\u0635\u0646\u0627\u0641",items_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0623\u0635\u0646\u0627\u0641",name:"\u0627\u0644\u0627\u0633\u0645",unit:"\u0627\u0644\u0648\u062D\u062F\u0629",description:"\u0627\u0644\u0648\u0635\u0641",added_on:"\u0623\u0636\u064A\u0641 \u0641\u064A",price:"\u0627\u0644\u0633\u0639\u0631",date_of_creation:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0625\u0646\u0634\u0627\u0621",not_selected:"No item selected",action:"\u0625\u062C\u0631\u0627\u0621",add_item:"\u0625\u0636\u0627\u0641\u0629 \u0635\u0646\u0641",save_item:"\u062D\u0641\u0638 \u0627\u0644\u0635\u0646\u0641",update_item:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0635\u0646\u0641",item:"\u0635\u0646\u0641 | \u0623\u0635\u0646\u0627\u0641",add_new_item:"\u0625\u0636\u0627\u0641\u0629 \u0635\u0646\u0641 \u062C\u062F\u064A\u062F",new_item:"\u062C\u062F\u064A\u062F \u0635\u0646\u0641",edit_item:"\u062A\u062D\u062F\u064A\u062B \u0635\u0646\u0641",no_items:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0623\u0635\u0646\u0627\u0641 \u062D\u062A\u0649 \u0627\u0644\u0622\u0646!",list_of_items:"\u0647\u0630\u0627 \u0627\u0644\u0642\u0633\u0645 \u0633\u0648\u0641 \u064A\u062D\u062A\u0648\u064A \u0639\u0644\u0649 \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0623\u0635\u0646\u0627\u0641.",select_a_unit:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0648\u062D\u062F\u0629",taxes:"\u0627\u0644\u0636\u0631\u0627\u0626\u0628",item_attached_message:"\u0644\u0627 \u064A\u0645\u0643\u0646 \u062D\u0630\u0641 \u0627\u0644\u0635\u0646\u0641 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645",confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0647\u0630\u0627 \u0627\u0644\u0635\u0646\u0641 | \u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0647\u0630\u0647 \u0627\u0644\u0623\u0635\u0646\u0627\u0641",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0635\u0646\u0641 \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0635\u0646\u0641 \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0635\u0646\u0641 \u0628\u0646\u062C\u0627\u062D | \u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0623\u0635\u0646\u0627\u0641 \u0628\u0646\u062C\u0627\u062D"},vr={title:"\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A",estimate:"\u062A\u0642\u062F\u064A\u0631 | \u062A\u0642\u062F\u064A\u0631\u0627\u062A",estimates_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A",days:"{days} \u0623\u064A\u0627\u0645",months:"{months} \u0623\u0634\u0647\u0631",years:"{years} \u0633\u0646\u0648\u0627\u062A",all:"\u0627\u0644\u0643\u0644",paid:"\u0645\u062F\u0641\u0648\u0639",unpaid:"\u063A\u064A\u0631 \u0645\u062F\u0641\u0648\u0639",customer:"\u0627\u0644\u0639\u0645\u064A\u0644",ref_no:"\u0631\u0642\u0645 \u0627\u0644\u0645\u0631\u062C\u0639.",number:"\u0627\u0644\u0631\u0642\u0645",amount_due:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",partially_paid:"\u0645\u062F\u0641\u0648\u0639 \u062C\u0632\u0626\u064A\u0627",total:"\u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",discount:"\u0627\u0644\u062E\u0635\u0645",sub_total:"\u062D\u0627\u0635\u0644 \u0627\u0644\u062C\u0645\u0639",estimate_number:"\u0631\u0642\u0645 \u062A\u0642\u062F\u064A\u0631",ref_number:"\u0631\u0642\u0645 \u0627\u0644\u0645\u0631\u062C\u0639",contact:"\u062A\u0648\u0627\u0635\u0644",add_item:"\u0625\u0636\u0627\u0641\u0629 \u0635\u0646\u0641",date:"\u062A\u0627\u0631\u064A\u062E",due_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0627\u0633\u062A\u062D\u0642\u0627\u0642",expiry_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0635\u0644\u0627\u062D\u064A\u0629",status:"\u0627\u0644\u062D\u0627\u0644\u0629",add_tax:"\u0625\u0636\u0627\u0641\u0629 \u0636\u0631\u064A\u0629",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",action:"\u0625\u062C\u0631\u0627\u0621",notes:"\u0645\u0644\u0627\u062D\u0638\u0627\u062A",tax:"\u0636\u0631\u064A\u0628\u0629",estimate_template:"\u0642\u0627\u0644\u0628",convert_to_invoice:"\u062A\u062D\u0648\u064A\u0644 \u0625\u0644\u0649 \u0641\u0627\u062A\u0648\u0631\u0629",mark_as_sent:"\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0631\u0633\u0644",send_estimate:"\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",resend_estimate:"\u0625\u0639\u0627\u062F\u0629 \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",record_payment:"\u062A\u0633\u062C\u064A\u0644 \u0645\u062F\u0641\u0648\u0627\u062A",add_estimate:"\u0625\u0636\u0627\u0641\u0629 \u062A\u0642\u062F\u064A\u0631",save_estimate:"\u062D\u0641\u0638 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",confirm_conversion:"\u0647\u0644 \u062A\u0631\u064A\u062F \u062A\u062D\u0648\u064A\u0644 \u0647\u0630\u0627 \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0625\u0644\u0649 \u0641\u0627\u062A\u0648\u0631\u0629\u061F",conversion_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0646\u062C\u0627\u062D",confirm_send_estimate:"\u0633\u064A\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0647\u0630\u0627 \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0628\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0625\u0644\u0649 \u0627\u0644\u0639\u0645\u064A\u0644",confirm_mark_as_sent:"\u0633\u064A\u062A\u0645 \u0627\u0644\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0631\u0633\u0644 \u0639\u0644\u0649 \u0647\u0630\u0627 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",confirm_mark_as_accepted:"\u0633\u064A\u062A\u0645 \u0627\u0644\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0642\u0628\u0648\u0644 \u0639\u0644\u0649 \u0647\u0630\u0627 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",confirm_mark_as_rejected:"\u0633\u064A\u062A\u0645 \u0627\u0644\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0631\u0641\u0648\u0636 \u0639\u0644\u0649 \u0647\u0630\u0627 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",no_matching_estimates:"\u0644\u0627 \u064A\u0648\u062C\u062F \u062A\u0642\u062F\u064A\u0631\u0627\u062A \u0645\u0637\u0627\u0628\u0642\u0629!",mark_as_sent_successfully:"\u062A\u0645 \u0627\u0644\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0631\u0633\u0644 \u0628\u0646\u062C\u0627\u062D",send_estimate_successfully:"\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0628\u0646\u062C\u0627\u062D",errors:{required:"\u062D\u0642\u0644 \u0645\u0637\u0644\u0648\u0628"},accepted:"\u0645\u0642\u0628\u0648\u0644",rejected:"Rejected",sent:"\u0645\u0631\u0633\u0644",draft:"\u0645\u0633\u0648\u062F\u0629",declined:"\u0645\u0631\u0641\u0648\u0636",new_estimate:"\u062A\u0642\u062F\u064A\u0631 \u062C\u062F\u064A\u062F",add_new_estimate:"\u0625\u0636\u0627\u0641\u0629 \u062A\u0642\u062F\u064A\u0631 \u062C\u062F\u064A\u062F",update_Estimate:"\u062A\u062D\u062F\u064A\u062B \u062A\u0642\u062F\u064A\u0631",edit_estimate:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",items:"\u0627\u0644\u0623\u0635\u0646\u0627\u0641",Estimate:"\u062A\u0642\u062F\u064A\u0631 | \u062A\u0642\u062F\u064A\u0631\u0627\u062A",add_new_tax:"\u0625\u0636\u0627\u0641\u0629 \u0636\u0631\u064A\u0628\u0629 \u062C\u062F\u064A\u062F\u0629",no_estimates:"\u0644\u0627 \u064A\u0648\u062C\u062F \u062A\u0642\u062F\u064A\u0631\u0627\u062A \u062D\u0627\u0644\u064A\u0627\u064B!",list_of_estimates:"\u0647\u0630\u0627 \u0627\u0644\u0642\u0633\u0645 \u0633\u0648\u0641 \u064A\u062D\u062A\u0648\u064A \u0639\u0644\u0649 \u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A.",mark_as_rejected:"\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0631\u0641\u0648\u0636",mark_as_accepted:"\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0642\u0631\u0648\u0621",marked_as_accepted_message:"\u062A\u062D\u062F\u064A\u062F \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0643\u0645\u0642\u0628\u0648\u0644",marked_as_rejected_message:"\u062A\u062D\u062F\u064A\u062F \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0643\u0645\u0631\u0641\u0648\u0636",confirm_delete:"\u0644\u0646 \u062A\u0633\u062A\u0637\u064A\u0639 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0647\u0630\u0627 \u0627\u0644\u062A\u0642\u062F\u064A\u0631 | \u0644\u0646 \u062A\u0633\u062A\u0637\u064A\u0639 \u0625\u0633\u062A\u0639\u0627\u062F\u0629 \u0647\u0630\u0647 \u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0628\u0646\u062C\u0627\u062D | \u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A \u0628\u0646\u062C\u0627\u062D",something_went_wrong:"\u062E\u0637\u0623 \u063A\u064A\u0631 \u0645\u0639\u0631\u0648\u0641!",item:{title:"\u0627\u0633\u0645 \u0627\u0644\u0635\u0646\u0641",description:"\u0627\u0644\u0648\u0635\u0641",quantity:"\u0627\u0644\u0643\u0645\u064A\u0629",price:"\u0627\u0644\u0633\u0639\u0631",discount:"\u0627\u0644\u062E\u0635\u0645",total:"\u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",total_discount:"\u0645\u062C\u0645\u0648\u0639 \u0627\u0644\u062E\u0635\u0645",sub_total:"\u062D\u0627\u0635\u0644 \u0627\u0644\u062C\u0645\u0639",tax:"\u0627\u0644\u0636\u0631\u064A\u0629",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",select_an_item:"\u0627\u0643\u062A\u0628 \u0623\u0648 \u0627\u062E\u062A\u0631 \u0627\u0644\u0635\u0646\u0641",type_item_description:"\u0627\u0643\u062A\u0628 \u0648\u0635\u0641 \u0627\u0644\u0635\u0646\u0641 (\u0627\u062E\u062A\u064A\u0627\u0631\u064A)"}},yr={title:"\u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631",invoices_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631",days:"{days} \u0623\u064A\u0627\u0645",months:"{months} \u0623\u0634\u0647\u0631",years:"{years} \u0633\u0646\u0648\u0627\u062A",all:"\u0627\u0644\u0643\u0644",paid:"\u0645\u062F\u0641\u0648\u0639",unpaid:"\u063A\u064A\u0631 \u0645\u062F\u0641\u0648\u0639",viewed:"Viewed",overdue:"Overdue",completed:"Completed",customer:"\u0627\u0644\u0639\u0645\u064A\u0644",paid_status:"\u062D\u0627\u0644\u0629 \u0627\u0644\u062F\u0641\u0639",ref_no:"\u0631\u0642\u0645 \u0627\u0644\u0645\u0631\u062C\u0639.",number:"\u0627\u0644\u0631\u0642\u0645",amount_due:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",partially_paid:"\u0645\u062F\u0641\u0648\u0639 \u062C\u0632\u0626\u064A\u0627\u064B",total:"\u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",discount:"\u0627\u0644\u062E\u0635\u0645",sub_total:"\u062D\u0627\u0635\u0644 \u0627\u0644\u062C\u0645\u0639",invoice:"\u0641\u0627\u062A\u0648\u0631\u0629 | \u0641\u0648\u0627\u062A\u064A\u0631",invoice_number:"\u0631\u0642\u0645 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",ref_number:"\u0631\u0642\u0645 \u0627\u0644\u0645\u0631\u062C\u0639",contact:"\u062A\u0648\u0627\u0635\u0644",add_item:"\u0625\u0636\u0627\u0641\u0629 \u0635\u0646\u0641",date:"\u0627\u0644\u062A\u0627\u0631\u064A\u062E",due_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0627\u0633\u062A\u062D\u0642\u0627\u0642",status:"\u0627\u0644\u062D\u0627\u0644\u0629",add_tax:"\u0625\u0636\u0627\u0641\u0629 \u0636\u0631\u064A\u0628\u0629",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",action:"\u0625\u062C\u0631\u0627\u0621",notes:"\u0645\u0644\u0627\u062D\u0638\u0627\u062A",view:"\u0639\u0631\u0636",send_invoice:"\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",resend_invoice:"\u0625\u0639\u0627\u062F\u0629 \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",invoice_template:"\u0642\u0627\u0644\u0628 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",template:"\u0642\u0627\u0644\u0628",mark_as_sent:"\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0631\u0633\u0644",confirm_send_invoice:"\u0633\u064A\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0647\u0630\u0647 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0623\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0625\u0644\u0649 \u0627\u0644\u0639\u0645\u064A\u0644",invoice_mark_as_sent:"\u0633\u064A\u062A\u0645 \u062A\u062D\u062F\u064A\u062F \u0647\u0630\u0647 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0643\u0645\u0631\u0633\u0644\u0629",confirm_send:"\u0633\u064A\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0647\u0630\u0647 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0623\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0625\u0644\u0649 \u0627\u0644\u0639\u0645\u064A\u0644",invoice_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",record_payment:"\u062A\u0633\u062C\u064A\u0644 \u0645\u062F\u0641\u0648\u0639\u0627\u062A",add_new_invoice:"\u0625\u0636\u0627\u0641\u0629 \u0641\u0627\u062A\u0648\u0631\u0629 \u062C\u062F\u064A\u062F\u0629",update_expense:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0645\u0635\u0631\u0648\u0641\u0627\u062A",edit_invoice:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",new_invoice:"\u0641\u0627\u062A\u0648\u0631\u0629 \u062C\u062F\u064A\u062F\u0629",save_invoice:"\u062D\u0641\u0638 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",update_invoice:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",add_new_tax:"\u0625\u0636\u0627\u0641\u0629 \u0636\u0631\u064A\u0628\u0629 \u062C\u062F\u064A\u062F\u0629",no_invoices:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0641\u0648\u0627\u062A\u064A\u0631 \u062D\u062A\u0649 \u0627\u0644\u0622\u0646!",list_of_invoices:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 .",select_invoice:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",no_matching_invoices:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0641\u0648\u0627\u062A\u064A\u0631 \u0645\u0637\u0627\u0628\u0642\u0629!",mark_as_sent_successfully:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062F \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0643\u0645\u0631\u0633\u0644\u0629 \u0628\u0646\u062C\u0627\u062D",invoice_sent_successfully:"\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0646\u062C\u0627\u062D",cloned_successfully:"\u062A\u0645 \u0627\u0633\u062A\u0646\u0633\u0627\u062E \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0646\u062C\u0627\u062D",clone_invoice:"\u0627\u0633\u062A\u0646\u0633\u0627\u062E \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",confirm_clone:"\u0633\u064A\u062A\u0645 \u0627\u0633\u062A\u0646\u0633\u0627\u062E \u0647\u0630\u0647 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0641\u064A \u0641\u0627\u062A\u0648\u0631\u0629 \u062C\u062F\u064A\u062F\u0629",item:{title:"\u0627\u0633\u0645 \u0627\u0644\u0635\u0646\u0641",description:"\u0627\u0644\u0648\u0635\u0641",quantity:"\u0627\u0644\u0643\u0645\u064A\u0629",price:"\u0627\u0644\u0633\u0639\u0631",discount:"\u0627\u0644\u062E\u0635\u0645",total:"\u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",total_discount:"\u0625\u062C\u0645\u0627\u0644\u064A \u0627\u0644\u062E\u0635\u0645",sub_total:"\u062D\u0627\u0635\u0644 \u0627\u0644\u062C\u0645\u0639",tax:"\u0627\u0644\u0636\u0631\u064A\u0628\u0629",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",select_an_item:"\u0627\u0643\u062A\u0628 \u0623\u0648 \u0627\u0646\u0642\u0631 \u0644\u0627\u062E\u062A\u064A\u0627\u0631 \u0635\u0646\u0641",type_item_description:"\u0648\u0635\u0641 \u0627\u0644\u0635\u0646\u0641 (\u0627\u062E\u062A\u064A\u0627\u0631\u064A)"},confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0639\u062F \u0647\u0630\u0647 \u0627\u0644\u0625\u062C\u0631\u0627\u0621 | \u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0628\u0639\u062F \u0647\u0630\u0627 \u0627\u0644\u0625\u062C\u0631\u0627\u0621",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0646\u062C\u0627\u062D | \u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0628\u0646\u062C\u0627\u062D",marked_as_sent_message:"\u062A\u0645 \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0646\u062C\u0627\u062D",something_went_wrong:"\u062E\u0637\u0623 \u063A\u064A\u0631 \u0645\u0639\u0631\u0648\u0641!",invalid_due_amount_message:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0646\u0647\u0627\u0626\u064A \u0644\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0644\u0627 \u064A\u0645\u0643\u0646 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0623\u0642\u0644 \u0645\u0646 \u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628 \u0644\u0647\u0627. \u0631\u062C\u0627\u0621\u0627\u064B \u062D\u062F\u062B \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0623\u0648 \u0642\u0645 \u0628\u062D\u0630\u0641 \u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0627\u0644\u0645\u0631\u062A\u0628\u0637\u0629 \u0628\u0647\u0627 \u0644\u0644\u0627\u0633\u062A\u0645\u0631\u0627\u0631."},br={title:"\u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A",payments_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A",record_payment:"\u062A\u0633\u062C\u064A\u0644 \u062F\u0641\u0639\u0629",customer:"\u0627\u0644\u0639\u0645\u064A\u0644",date:"\u0627\u0644\u062A\u0627\u0631\u064A\u062E",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",action:"\u0625\u062C\u0631\u0627\u0621",payment_number:"\u0631\u0642\u0645 \u0627\u0644\u062F\u0641\u0639\u0629",payment_mode:"\u0646\u0648\u0639 \u0627\u0644\u062F\u0641\u0639\u0629",invoice:"\u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",note:"\u0645\u0644\u0627\u062D\u0638\u0629",add_payment:"\u0625\u0636\u0627\u0641\u0629 \u062F\u0641\u0639\u0629",new_payment:"\u062F\u0641\u0639\u0629 \u062C\u062F\u064A\u062F\u0629",edit_payment:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u062F\u0641\u0639\u0629",view_payment:"\u0639\u0631\u0636 \u0627\u0644\u062F\u0641\u0639\u0629",add_new_payment:"\u0625\u0636\u0627\u0641\u0629 \u062F\u0641\u0639\u0629 \u062C\u062F\u064A\u062F\u0629",send_payment_receipt:"Send Payment Receipt",send_payment:"\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u062F\u0641\u0639\u0629",save_payment:"\u062D\u0641\u0638 \u0627\u0644\u062F\u0641\u0639\u0629",update_payment:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062F\u0641\u0639\u0629",payment:"\u062F\u0641\u0639\u0629 | \u0645\u062F\u0641\u0648\u0639\u0627\u062A",no_payments:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0645\u062F\u0641\u0648\u0639\u0627\u062A \u062D\u062A\u0649 \u0627\u0644\u0622\u0646!",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"\u0644\u0627 \u062A\u0648\u062C\u062F \u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0645\u0637\u0627\u0628\u0642\u0629!",list_of_payments:"\u0633\u0648\u0641 \u062A\u062D\u062A\u0648\u064A \u0647\u0630\u0647 \u0627\u0644\u0642\u0627\u0626\u0645\u0629 \u0639\u0644\u0649 \u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631.",select_payment_mode:"\u0627\u062E\u062A\u0631 \u0637\u0631\u064A\u0642\u0629 \u0627\u0644\u062F\u0641\u0639",confirm_mark_as_sent:"\u0633\u064A\u062A\u0645 \u0627\u0644\u062A\u062D\u062F\u064A\u062F \u0643\u0645\u0631\u0633\u0644 \u0639\u0644\u0649 \u0647\u0630\u0627 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",confirm_send_payment:"This payment will be sent via email to the customer",send_payment_successfully:"Payment sent successfully",something_went_wrong:"\u062E\u0637\u0623 \u063A\u064A\u0631 \u0645\u0639\u0631\u0648\u0641!",confirm_delete:"\u0644\u0646 \u062A\u0643\u0648\u0646 \u0642\u0627\u062F\u0631 \u0639\u0644\u0649 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0647\u0630\u0647 \u0627\u0644\u062F\u0641\u0639\u0629 | \u0644\u0646 \u062A\u0643\u0648\u0646 \u0642\u0627\u062F\u0631\u0627\u064B \u0639\u0644\u0649 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0647\u0630\u0647 \u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u062F\u0641\u0639\u0629 \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062F\u0641\u0639\u0629 \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u062F\u0641\u0639\u0629 \u0628\u0646\u062C\u0627\u062D | \u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A \u0628\u0646\u062C\u0627\u062D",invalid_amount_message:"\u0642\u064A\u0645\u0629 \u0627\u0644\u062F\u0641\u0639\u0629 \u063A\u064A\u0631 \u0635\u062D\u064A\u062D\u0629!"},kr={title:"\u0627\u0644\u0646\u0641\u0642\u0627\u062A",expenses_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0646\u0641\u0642\u0627\u062A",select_a_customer:"\u062D\u062F\u062F \u0639\u0645\u064A\u0644\u0627\u064B",expense_title:"\u0627\u0644\u0639\u0646\u0648\u0627\u0646",customer:"\u0627\u0644\u0639\u0645\u064A\u0644",contact:"\u062A\u0648\u0627\u0635\u0644",category:"\u0627\u0644\u0641\u0626\u0629",from_date:"\u0645\u0646 \u062A\u0627\u0631\u064A\u062E",to_date:"\u062D\u062A\u0649 \u062A\u0627\u0631\u064A\u062E",expense_date:"\u0627\u0644\u062A\u0627\u0631\u064A\u062E",description:"\u0627\u0644\u0648\u0635\u0641",receipt:"\u0633\u0646\u062F \u0627\u0644\u0642\u0628\u0636",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",action:"\u0625\u062C\u0631\u0627\u0621",not_selected:"Not selected",note:"\u0645\u0644\u0627\u062D\u0638\u0629",category_id:"\u0631\u0645\u0632 \u0627\u0644\u0641\u0626\u0629",date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0646\u0641\u0642\u0627\u062A",add_expense:"\u0623\u0636\u0641 \u0646\u0641\u0642\u0627\u062A",add_new_expense:"\u0623\u0636\u0641 \u0646\u0641\u0642\u0627\u062A \u062C\u062F\u064A\u062F\u0629",save_expense:"\u062D\u0641\u0638 \u0627\u0644\u0646\u0641\u0642\u0627\u062A",update_expense:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0646\u0641\u0642\u0627\u062A",download_receipt:"\u062A\u0646\u0632\u064A\u0644 \u0627\u0644\u0633\u0646\u062F",edit_expense:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u0646\u0641\u0642\u0627\u062A",new_expense:"\u0646\u0641\u0642\u0627\u062A \u062C\u062F\u064A\u062F\u0629",expense:"\u0625\u0646\u0641\u0627\u0642 | \u0646\u0641\u0642\u0627\u062A",no_expenses:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0646\u0641\u0642\u0627\u062A \u062D\u062A\u0649 \u0627\u0644\u0622\u0646!",list_of_expenses:"\u0647\u0630\u0647 \u0627\u0644\u0642\u0627\u0626\u0645\u0629 \u0633\u062A\u062D\u062A\u0648\u064A \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0627\u0644\u062E\u0627\u0635\u0629 \u0628\u0643",confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0647\u0630\u0627 \u0627\u0644\u0625\u0646\u0641\u0627\u0642 | \u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0647\u0630\u0647 \u0627\u0644\u0646\u0641\u0642\u0627\u062A",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0628\u0646\u062C\u0627\u062D",categories:{categories_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0641\u0626\u0627\u062A",title:"\u0627\u0644\u0639\u0646\u0648\u0627\u0646",name:"\u0627\u0644\u0627\u0633\u0645",description:"\u0627\u0644\u0648\u0635\u0641",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",actions:"\u0627\u0644\u0639\u0645\u0644\u064A\u0627\u062A",add_category:"\u0625\u0636\u0627\u0641\u0629 \u0641\u0626\u0645\u0629",new_category:"\u0641\u0626\u0629 \u062C\u062F\u064A\u062F\u0629",category:"\u0641\u0626\u0629 | \u0641\u0626\u0627\u062A",select_a_category:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0641\u0626\u0629"}},wr={email:"\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",password:"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",forgot_password:"\u0646\u0633\u064A\u062A \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631\u061F",or_signIn_with:"\u0623\u0648 \u0633\u062C\u0644 \u0627\u0644\u062F\u062E\u0648\u0644 \u0628\u0648\u0627\u0633\u0637\u0629",login:"\u062F\u062E\u0648\u0644",register:"\u062A\u0633\u062C\u064A\u0644",reset_password:"\u0625\u0639\u0627\u062F\u0629 \u062A\u0639\u064A\u064A\u0646 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",password_reset_successfully:"\u062A\u0645 \u0625\u0639\u0627\u062F\u0629 \u062A\u0639\u064A\u064A\u0646 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631 \u0628\u0646\u062C\u0627\u062D",enter_email:"\u0623\u062F\u062E\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A",enter_password:"\u0623\u0643\u062A\u0628 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",retype_password:"\u0623\u0639\u062F \u0643\u062A\u0627\u0628\u0629 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631"},xr={title:"\u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u0648\u0646",users_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u064A\u0646",name:"\u0627\u0633\u0645",description:"\u0648\u0635\u0641",added_on:"\u0648\u0623\u0636\u0627\u0641 \u0641\u064A",date_of_creation:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u062E\u0644\u0642",action:"\u0639\u0645\u0644",add_user:"\u0625\u0636\u0627\u0641\u0629 \u0645\u0633\u062A\u062E\u062F\u0645",save_user:"\u062D\u0641\u0638 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645",update_user:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645",user:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645",add_new_user:"\u0625\u0636\u0627\u0641\u0629 \u0645\u0633\u062A\u062E\u062F\u0645 \u062C\u062F\u064A\u062F",new_user:"\u0645\u0633\u062A\u062E\u062F\u0645 \u062C\u062F\u064A\u062F",edit_user:"\u062A\u062D\u0631\u064A\u0631 \u0627\u0644\u0639\u0636\u0648",no_users:"\u0644\u0627 \u0645\u0633\u062A\u062E\u062F\u0645\u064A\u0646 \u062D\u062A\u0649 \u0627\u0644\u0622\u0646!",list_of_users:"\u0633\u064A\u062D\u062A\u0648\u064A \u0647\u0630\u0627 \u0627\u0644\u0642\u0633\u0645 \u0639\u0644\u0649 \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u064A\u0646.",email:"\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",phone:"\u0647\u0627\u062A\u0641",password:"\u0643\u0644\u0645\u0647 \u0627\u0644\u0633\u0631",user_attached_message:"\u0644\u0627 \u064A\u0645\u0643\u0646 \u062D\u0630\u0641 \u0639\u0646\u0635\u0631 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0628\u0627\u0644\u0641\u0639\u0644",confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062F\u0627\u062F \u0647\u0630\u0627 \u0627\u0644\u0639\u0646\u0635\u0631 | \u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062F\u0627\u062F \u0647\u0624\u0644\u0627\u0621 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u064A\u0646",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 \u0628\u0646\u062C\u0627\u062D | \u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 \u0628\u0646\u062C\u0627\u062D"},zr={title:"\u062A\u0642\u0631\u064A\u0631",from_date:"\u0645\u0646 \u062A\u0627\u0631\u064A\u062E",to_date:"\u062D\u062A\u0649 \u062A\u0627\u0631\u064A\u062E",status:"\u0627\u0644\u062D\u0627\u0644\u0629",paid:"\u0645\u062F\u0641\u0648\u0639",unpaid:"\u063A\u064A\u0631 \u0645\u062F\u0641\u0648\u0639",download_pdf:"\u062A\u0646\u0632\u064A\u0644 PDF",view_pdf:"\u0639\u0631\u0636 PDF",update_report:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062A\u0642\u0631\u064A\u0631",report:"\u062A\u0642\u0631\u064A\u0631 | \u062A\u0642\u0627\u0631\u064A\u0631",profit_loss:{profit_loss:"\u0627\u0644\u062E\u0633\u0627\u0626\u0631 \u0648\u0627\u0644\u0623\u0631\u0628\u0627\u062D",to_date:"\u062D\u062A\u0649 \u062A\u0627\u0631\u064A\u062E",from_date:"\u0645\u0646 \u062A\u0627\u0631\u064A\u062E",date_range:"\u0627\u062E\u062A\u0631 \u0645\u062F\u0649 \u0627\u0644\u062A\u0627\u0631\u064A\u062E"},sales:{sales:"\u0627\u0644\u0645\u0628\u064A\u0639\u0627\u062A",date_range:"\u0627\u062E\u062A\u0631 \u0645\u062F\u0649 \u0627\u0644\u062A\u0627\u0631\u064A\u062E",to_date:"\u062D\u062A\u0649 \u062A\u0627\u0631\u064A\u062E",from_date:"\u0645\u0646 \u062A\u0627\u0631\u064A\u062E",report_type:"\u0646\u0648\u0639 \u0627\u0644\u062A\u0642\u0631\u064A\u0631"},taxes:{taxes:"\u0627\u0644\u0636\u0631\u0627\u0626\u0628",to_date:"\u062D\u062A\u0649 \u062A\u0627\u0631\u064A\u062E",from_date:"\u0645\u0646 \u062A\u0627\u0631\u064A\u062E",date_range:"\u0627\u062E\u062A\u0631 \u0645\u062F\u0649 \u0627\u0644\u062A\u0627\u0631\u064A\u062E"},errors:{required:"\u062D\u0642\u0644 \u0645\u0637\u0644\u0648\u0628"},invoices:{invoice:"\u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",invoice_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",due_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0627\u0633\u062A\u062D\u0642\u0627\u0642",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",contact_name:"\u0627\u0633\u0645 \u0627\u0644\u062A\u0648\u0627\u0635\u0644",status:"\u0627\u0644\u062D\u0627\u0644\u0629"},estimates:{estimate:"\u062A\u0642\u062F\u064A\u0631",estimate_date:"\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u062A\u0642\u062F\u064A\u0631",due_date:"\u0645\u0633\u062A\u062D\u0642 \u0628\u062A\u0627\u0631\u064A\u062E",estimate_number:"\u0631\u0642\u0645 \u0645\u0633\u062A\u062D\u0642",ref_number:"\u0631\u0642\u0645 \u0627\u0644\u0645\u0631\u062C\u0639",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",contact_name:"\u0627\u0633\u0645 \u0627\u0644\u062A\u0648\u0627\u0635\u0644",status:"\u0627\u0644\u062D\u0627\u0644\u0629"},expenses:{expenses:"\u0627\u0644\u0646\u0641\u0642\u0627\u062A",category:"\u0627\u0644\u0641\u0626\u0629",date:"\u0627\u0644\u062A\u0627\u0631\u064A\u062E",amount:"\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",to_date:"\u062D\u062A\u0649 \u062A\u0627\u0631\u064A\u062E",from_date:"\u0645\u0646 \u062A\u0627\u0631\u064A\u062E",date_range:"\u0627\u062E\u062A\u0631 \u0645\u062F\u0649 \u0627\u0644\u062A\u0627\u0631\u064A\u062E"}},Sr={menu_title:{account_settings:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062D\u0633\u0627\u0628",company_information:"\u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0627\u0644\u0645\u0646\u0634\u0623\u0629",customization:"\u062A\u062E\u0635\u064A\u0635",preferences:"\u062A\u0641\u0636\u064A\u0644\u0627\u062A",notifications:"\u062A\u0646\u0628\u064A\u0647\u0627\u062A",tax_types:"\u0646\u0648\u0639 \u0627\u0644\u0636\u0631\u064A\u0628\u0629",expense_category:"\u0641\u0626\u0627\u062A \u0627\u0644\u0646\u0641\u0642\u0627\u062A",update_app:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0646\u0638\u0627\u0645",backup:"\u062F\u0639\u0645",file_disk:"\u0642\u0631\u0635 \u0627\u0644\u0645\u0644\u0641",custom_fields:"\u0627\u0644\u062D\u0642\u0648\u0644 \u0627\u0644\u0645\u062E\u0635\u0635\u0629",payment_modes:"\u0637\u0631\u0642 \u0627\u0644\u062F\u0641\u0639",notes:"\u0645\u0644\u0627\u062D\u0638\u0627\u062A"},title:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A",setting:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A | \u0625\u0639\u062F\u0627\u062F\u0627\u062A",general:"\u0639\u0627\u0645",language:"\u0627\u0644\u0644\u063A\u0629",primary_currency:"\u0627\u0644\u0639\u0645\u0644\u0629 \u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629",timezone:"\u0627\u0644\u0645\u0646\u0637\u0642\u0629 \u0627\u0644\u0632\u0645\u0646\u064A\u0629",date_format:"\u0635\u064A\u063A\u0629 \u0627\u0644\u062A\u0627\u0631\u064A\u062E",currencies:{title:"\u0627\u0644\u0639\u0645\u0644\u0627\u062A",currency:"\u0627\u0644\u0639\u0645\u0644\u0629 | \u0627\u0644\u0639\u0645\u0644\u0627\u062A",currencies_list:"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0639\u0645\u0644\u0627\u062A",select_currency:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0639\u0645\u0644\u0629",name:"\u0627\u0644\u0627\u0633\u0645",code:"\u0627\u0644\u0645\u0631\u062C\u0639",symbol:"\u0627\u0644\u0631\u0645\u0632",precision:"\u0627\u0644\u062F\u0642\u0629",thousand_separator:"\u0641\u0627\u0635\u0644 \u0627\u0644\u0622\u0644\u0627\u0641",decimal_separator:"\u0627\u0644\u0641\u0627\u0635\u0644\u0629 \u0627\u0644\u0639\u0634\u0631\u064A\u0629",position:"\u0627\u0644\u0645\u0648\u0642\u0639",position_of_symbol:"\u0645\u0648\u0642\u0639 \u0631\u0645\u0632 \u0627\u0644\u0639\u0645\u0644\u0629",right:"\u064A\u0645\u064A\u0646",left:"\u064A\u0633\u0627\u0631",action:"\u0625\u062C\u0631\u0627\u0621",add_currency:"\u0623\u0636\u0641 \u0639\u0645\u0644\u0629"},mail:{host:"\u062E\u0627\u062F\u0645 \u0627\u0644\u0628\u0631\u064A\u062F",port:"\u0645\u0646\u0641\u0630 \u0627\u0644\u0628\u0631\u064A\u062F",driver:"\u0645\u0634\u063A\u0644 \u0627\u0644\u0628\u0631\u064A\u062F",secret:"\u0633\u0631\u064A",mailgun_secret:"\u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0633\u0631\u064A \u0644\u0640 Mailgun",mailgun_domain:"\u0627\u0644\u0645\u062C\u0627\u0644",mailgun_endpoint:"\u0627\u0644\u0646\u0647\u0627\u064A\u0629 \u0627\u0644\u0637\u0631\u0641\u064A\u0629 \u0644\u0640 Mailgun",ses_secret:"SES \u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0633\u0631\u064A",ses_key:"SES \u0645\u0641\u062A\u0627\u062D",password:"\u0643\u0644\u0645\u0629 \u0645\u0631\u0648\u0631 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A",username:"\u0627\u0633\u0645 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 \u0644\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",mail_config:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A",from_name:"\u0627\u0633\u0645 \u0627\u0644\u0645\u0631\u0633\u0644",from_mail:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0644\u0644\u0645\u0631\u0633\u0644",encryption:"\u0635\u064A\u063A\u0629 \u0627 \u0644\u062A\u0634\u0641\u064A\u0631",mail_config_desc:"\u0623\u062F\u0646\u0627\u0647 \u0647\u0648 \u0646\u0645\u0648\u0630\u062C \u0644\u062A\u0643\u0648\u064A\u0646 \u0628\u0631\u0646\u0627\u0645\u062C \u062A\u0634\u063A\u064A\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0644\u0625\u0631\u0633\u0627\u0644 \u0631\u0633\u0627\u0626\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0645\u0646 \u0627\u0644\u062A\u0637\u0628\u064A\u0642. \u064A\u0645\u0643\u0646\u0643 \u0623\u064A\u0636\u064B\u0627 \u062A\u0647\u064A\u0626\u0629 \u0645\u0648\u0641\u0631\u064A \u0627\u0644\u062C\u0647\u0627\u062A \u0627\u0644\u062E\u0627\u0631\u062C\u064A\u0629 \u0645\u062B\u0644 Sendgrid \u0648 SES \u0625\u0644\u062E."},pdf:{title:"PDF \u0625\u0639\u062F\u0627\u062F\u0627\u062A",footer_text:"\u0646\u0635 \u0627\u0644\u062A\u0630\u064A\u064A\u0644",pdf_layout:"\u0627\u062A\u062C\u0627\u0647 \u0635\u0641\u062D\u0629 PDF"},company_info:{company_info:"\u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0627\u0644\u0634\u0631\u0643\u0629",company_name:"\u0627\u0633\u0645 \u0627\u0644\u0634\u0631\u0643\u0629",company_logo:"\u0634\u0639\u0627\u0631 \u0627\u0644\u0634\u0631\u0643\u0629",section_description:"\u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0639\u0646 \u0634\u0631\u0643\u062A\u0643 \u0633\u064A\u062A\u0645 \u0639\u0631\u0636\u0647\u0627 \u0639\u0644\u0649 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631 \u0648\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A \u0648\u0627\u0644\u0645\u0633\u062A\u0646\u062F\u0627\u062A \u0627\u0644\u0623\u062E\u0631\u0649.",phone:"\u0627\u0644\u0647\u0627\u062A\u0641",country:"\u0627\u0644\u062F\u0648\u0644\u0629",state:"\u0627\u0644\u0648\u0644\u0627\u064A\u0629/\u0627\u0644\u0645\u0646\u0637\u0642\u0629",city:"\u0627\u0644\u0645\u062F\u064A\u0646\u0629",address:"\u0627\u0644\u0639\u0646\u0648\u0627\u0646",zip:"\u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0628\u0631\u064A\u062F\u064A",save:"\u062D\u0641\u0638",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0627\u0644\u0634\u0631\u0643\u0629 \u0628\u0646\u062C\u0627\u062D"},custom_fields:{title:"\u0627\u0644\u062D\u0642\u0648\u0644 \u0627\u0644\u0645\u062E\u0635\u0635\u0629",section_description:"\u0642\u0645 \u0628\u062A\u062E\u0635\u064A\u0635 \u0641\u0648\u0627\u062A\u064A\u0631\u0643 \u0648\u062A\u0642\u062F\u064A\u0631\u0627\u062A\u0643 \u0648\u0625\u064A\u0635\u0627\u0644\u0627\u062A \u0627\u0644\u062F\u0641\u0639 \u0628\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0627\u0644\u062D\u0642\u0648\u0644 \u0627\u0644\u062E\u0627\u0635\u0629 \u0628\u0643. \u062A\u0623\u0643\u062F \u0645\u0646 \u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0627\u0644\u062D\u0642\u0648\u0644 \u0627\u0644\u0645\u0636\u0627\u0641\u0629 \u0623\u062F\u0646\u0627\u0647 \u0641\u064A \u062A\u0646\u0633\u064A\u0642\u0627\u062A \u0627\u0644\u0639\u0646\u0627\u0648\u064A\u0646 \u0641\u064A \u0635\u0641\u062D\u0629 \u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062A\u062E\u0635\u064A\u0635.",add_custom_field:"\u0625\u0636\u0627\u0641\u0629 \u062D\u0642\u0644 \u0645\u062E\u0635\u0635",edit_custom_field:"\u062A\u062D\u0631\u064A\u0631 \u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062E\u0635\u0635",field_name:"\u0627\u0633\u0645 \u0627\u0644\u062D\u0642\u0644",label:"\u0636\u0639 \u0627\u0644\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0646\u0627\u0633\u0628\u0629",type:"\u0646\u0648\u0639",name:"\u0627\u0633\u0645",required:"\u0645\u0637\u0644\u0648\u0628",placeholder:"\u0639\u0646\u0635\u0631 \u0646\u0627\u0626\u0628",help_text:"\u0646\u0635 \u0627\u0644\u0645\u0633\u0627\u0639\u062F\u0629",default_value:"\u0627\u0644\u0642\u064A\u0645\u0629 \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A\u0629",prefix:"\u0627\u062E\u062A\u0635\u0627\u0631",starting_number:"\u0631\u0642\u0645 \u0627\u0644\u0628\u062F\u0627\u064A\u0629",model:"\u0646\u0645\u0648\u0630\u062C",help_text_description:"\u0623\u062F\u062E\u0644 \u0628\u0639\u0636 \u0627\u0644\u0646\u0635 \u0644\u0645\u0633\u0627\u0639\u062F\u0629 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u064A\u0646 \u0639\u0644\u0649 \u0641\u0647\u0645 \u0627\u0644\u063A\u0631\u0636 \u0645\u0646 \u0647\u0630\u0627 \u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062E\u0635\u0635.",suffix:"\u0644\u0627\u062D\u0642\u0629",yes:"\u0646\u0639\u0645",no:"\u0644\u0627",order:"\u0637\u0644\u0628",custom_field_confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0639\u0627\u062F\u0629 \u0647\u0630\u0627 \u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062E\u0635\u0635",already_in_use:"\u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062E\u0635\u0635 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0628\u0627\u0644\u0641\u0639\u0644",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062E\u0635\u0635 \u0628\u0646\u062C\u0627\u062D",options:"\u062E\u064A\u0627\u0631\u0627\u062A",add_option:"\u0623\u0636\u0641 \u062E\u064A\u0627\u0631\u0627\u062A",add_another_option:"\u0623\u0636\u0641 \u062E\u064A\u0627\u0631\u064B\u0627 \u0622\u062E\u0631",sort_in_alphabetical_order:"\u0641\u0631\u0632 \u062D\u0633\u0628 \u0627\u0644\u062A\u0631\u062A\u064A\u0628 \u0627\u0644\u0623\u0628\u062C\u062F\u064A",add_options_in_bulk:"\u0623\u0636\u0641 \u0627\u0644\u062E\u064A\u0627\u0631\u0627\u062A \u0628\u0634\u0643\u0644 \u0645\u062C\u0645\u0651\u0639",use_predefined_options:"\u0627\u0633\u062A\u062E\u062F\u0645 \u0627\u0644\u062E\u064A\u0627\u0631\u0627\u062A \u0627\u0644\u0645\u062D\u062F\u062F\u0629 \u0645\u0633\u0628\u0642\u064B\u0627",select_custom_date:"\u062D\u062F\u062F \u0627\u0644\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0645\u062E\u0635\u0635",select_relative_date:"\u062D\u062F\u062F \u0627\u0644\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0646\u0633\u0628\u064A",ticked_by_default:"\u064A\u062A\u0645 \u062A\u062D\u062F\u064A\u062F\u0647 \u0628\u0634\u0643\u0644 \u0627\u0641\u062A\u0631\u0627\u0636\u064A",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062E\u0635\u0635 \u0628\u0646\u062C\u0627\u062D",added_message:"\u062A\u0645\u062A \u0625\u0636\u0627\u0641\u0629 \u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062E\u0635\u0635 \u0628\u0646\u062C\u0627\u062D"},customization:{customization:"\u0627\u0644\u062A\u062E\u0635\u064A\u0635",save:"\u062D\u0641\u0638",addresses:{title:"\u0627\u0644\u0639\u0646\u0648\u0627\u0646",section_description:"\u064A\u0645\u0643\u0646\u0643 \u0636\u0628\u0637 \u0639\u0646\u0648\u0627\u0646 \u0625\u0631\u0633\u0627\u0644 \u0641\u0648\u0627\u062A\u064A\u0631 \u0627\u0644\u0639\u0645\u0644\u0627\u0621 \u0648\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0634\u062D\u0646 \u0627\u0644\u0639\u0645\u0644\u0627\u0621 (\u0645\u0639\u0631\u0648\u0636 \u0641\u064A PDF \u0641\u0642\u0637).",customer_billing_address:"\u0639\u0646\u0648\u0627\u0646 \u0641\u0648\u0627\u062A\u064A\u0631 \u0627\u0644\u0639\u0645\u064A\u0644",customer_shipping_address:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u062D\u0646 \u0644\u0644\u0639\u0645\u064A\u0644",company_address:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u0631\u0643\u0629",insert_fields:"\u0623\u0636\u0641 \u062D\u0642\u0644",contact:"\u062A\u0648\u0627\u0635\u0644",address:"\u0627\u0644\u0639\u0646\u0648\u0627\u0646",display_name:"\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0638\u0627\u0647\u0631",primary_contact_name:"\u0645\u0633\u0624\u0648\u0644 \u0627\u0644\u062A\u0648\u0627\u0635\u0644 \u0627\u0644\u0631\u0626\u064A\u0633\u064A",email:"\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",website:"\u0645\u0648\u0642\u0639 \u0627\u0644\u0625\u0646\u062A\u0631\u0646\u062A",name:"\u0627\u0644\u0627\u0633\u0645",country:"\u0627\u0644\u062F\u0648\u0644\u0629",state:"\u0627\u0644\u0648\u0644\u0627\u064A\u0629/\u0627\u0644\u0645\u0646\u0637\u0642\u0629",city:"\u0627\u0644\u0645\u062F\u064A\u0646\u0629",company_name:"\u0627\u0633\u0645 \u0627\u0644\u0634\u0631\u0643\u0629",address_street_1:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u0627\u0631\u0639 1",address_street_2:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u0627\u0631\u0639 2",phone:"\u0627\u0644\u0647\u0627\u062A\u0641",zip_code:"\u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0628\u0631\u064A\u062F\u064A",address_setting_updated:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0639\u0646\u0648\u0627\u0646 \u0628\u0646\u062C\u0627\u062D"},updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0627\u0644\u0634\u0631\u0643\u0629 \u0628\u0646\u062C\u0627\u062D",invoices:{title:"\u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631",notes:"\u0645\u0644\u0627\u062D\u0638\u0627\u062A",invoice_prefix:"\u0628\u0627\u062F\u0626\u0629 \u0631\u0642\u0645 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",default_invoice_email_body:"\u0646\u0635 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A \u0644\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",invoice_settings:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",autogenerate_invoice_number:"\u062A\u0631\u0642\u064A\u0645 \u0622\u0644\u064A \u0644\u0644\u0641\u0627\u062A\u0648\u0631\u0629",autogenerate_invoice_number_desc:"\u062A\u0639\u0637\u064A\u0644 \u0627\u0644\u062A\u0631\u0642\u064A\u0645 \u0627\u0644\u0622\u0644\u064A \u060C \u0625\u0630\u0627 \u0643\u0646\u062A \u0644\u0627 \u062A\u0631\u063A\u0628 \u0641\u064A \u0625\u0646\u0634\u0627\u0621 \u0623\u0631\u0642\u0627\u0645 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u062A\u0644\u0642\u0627\u0626\u064A\u064B\u0627 \u0641\u064A \u0643\u0644 \u0645\u0631\u0629 \u062A\u0642\u0648\u0645 \u0641\u064A\u0647\u0627 \u0628\u0625\u0646\u0634\u0627\u0621 \u0641\u0627\u062A\u0648\u0631\u0629 \u062C\u062F\u064A\u062F\u0629.",enter_invoice_prefix:"\u0623\u062F\u062E\u0644 \u0628\u0627\u062F\u0626\u0629 \u0631\u0642\u0645 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",terms_and_conditions:"\u0627\u0644\u0623\u062D\u0643\u0627\u0645 \u0648\u0627\u0644\u0634\u0631\u0648\u0637",company_address_format:"\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u0631\u0643\u0629",shipping_address_format:"\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u062D\u0646",billing_address_format:"\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631",invoice_settings_updated:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0625\u0639\u062F\u0627\u062F \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0628\u0646\u062C\u0627\u062D"},estimates:{title:"\u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A",estimate_prefix:"\u0628\u0627\u062F\u0626\u0629 \u0631\u0642\u0645 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",default_estimate_email_body:"\u062A\u0642\u062F\u064A\u0631 \u0646\u0635 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A",estimate_settings:"\u0625\u0639\u062F\u0627\u062F\u062A \u0627\u0644\u062A\u0642\u062F\u064A\u0631",autogenerate_estimate_number:"\u062A\u0631\u0642\u064A\u0645 \u0622\u0644\u064A \u0644\u0644\u062A\u0642\u062F\u064A\u0631",estimate_setting_description:"\u062A\u0639\u0637\u064A\u0644 \u0627\u0644\u062A\u0631\u0642\u064A\u0645 \u0627\u0644\u0622\u0644\u064A \u060C \u0625\u0630\u0627 \u0643\u0646\u062A \u0644\u0627 \u062A\u0631\u063A\u0628 \u0641\u064A \u0625\u0646\u0634\u0627\u0621 \u0623\u0631\u0642\u0627\u0645 \u0627\u0644\u062A\u0642\u062F\u064A\u0631\u0627\u062A \u062A\u0644\u0642\u0627\u0626\u064A\u064B\u0627 \u0641\u064A \u0643\u0644 \u0645\u0631\u0629 \u062A\u0642\u0648\u0645 \u0641\u064A\u0647\u0627 \u0628\u0625\u0646\u0634\u0627\u0621 \u062A\u0642\u062F\u064A\u0631 \u062C\u062F\u064A\u062F.",enter_estimate_prefix:"\u0623\u062F\u062E\u0644 \u0628\u0627\u062F\u0626\u0629 \u0631\u0642\u0645 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",estimate_setting_updated:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0628\u0646\u062C\u0627\u062D",company_address_format:"\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u0631\u0643\u0629",billing_address_format:"\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631",shipping_address_format:"\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u062D\u0646"},payments:{title:"\u0627\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A",description:"Modes of transaction for payments",payment_prefix:"\u0628\u0627\u062F\u0626\u0629 \u0631\u0642\u0645 \u0627\u0644\u062F\u0641\u0639\u0629",default_payment_email_body:"\u0646\u0635 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0644\u0644\u062F\u0641\u0639 \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A",payment_settings:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062F\u0641\u0639\u0629",autogenerate_payment_number:"\u062A\u0631\u0642\u064A\u0645 \u0622\u0644\u064A \u0644\u0644\u0645\u062F\u0641\u0648\u0639\u0627\u062A",payment_setting_description:"\u062A\u0639\u0637\u064A\u0644 \u0627\u0644\u062A\u0631\u0642\u064A\u0645 \u0627\u0644\u0622\u0644\u064A \u060C \u0625\u0630\u0627 \u0643\u0646\u062A \u0644\u0627 \u062A\u0631\u063A\u0628 \u0641\u064A \u0625\u0646\u0634\u0627\u0621 \u0623\u0631\u0642\u0627\u0645 \u0627\u0644\u062F\u0641\u0639\u0629 \u062A\u0644\u0642\u0627\u0626\u064A\u064B\u0627 \u0641\u064A \u0643\u0644 \u0645\u0631\u0629 \u062A\u0642\u0648\u0645 \u0641\u064A\u0647\u0627 \u0628\u0625\u0646\u0634\u0627\u0621 \u062F\u0641\u0639\u0629 \u062C\u062F\u064A\u062F\u0629.",enter_payment_prefix:"\u0623\u062F\u062E\u0644 \u0628\u0627\u062F\u0626\u0629 \u0631\u0642\u0645 \u0627\u0644\u062F\u0641\u0639\u0629",payment_setting_updated:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062F\u0641\u0639\u0629 \u0628\u0646\u062C\u0627\u062D",payment_modes:"\u0637\u0631\u0642 \u0627\u0644\u062F\u0641\u0639",add_payment_mode:"\u0623\u0636\u0641 \u0648\u0636\u0639 \u0627\u0644\u062F\u0641\u0639",edit_payment_mode:"\u062A\u062D\u0631\u064A\u0631 \u0648\u0636\u0639 \u0627\u0644\u062F\u0641\u0639",mode_name:"\u0627\u0633\u0645 \u0627\u0644\u0648\u0636\u0639",payment_mode_added:"\u062A\u0645\u062A \u0625\u0636\u0627\u0641\u0629 \u0648\u0636\u0639 \u0627\u0644\u062F\u0641\u0639",payment_mode_updated:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0648\u0636\u0639 \u0627\u0644\u062F\u0641\u0639",payment_mode_confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0639\u0627\u062F\u0629 \u0648\u0636\u0639 \u0627\u0644\u062F\u0641\u0639 \u0647\u0630\u0627",already_in_use:"\u0648\u0636\u0639 \u0627\u0644\u062F\u0641\u0639 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0628\u0627\u0644\u0641\u0639\u0644",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0648\u0636\u0639 \u0627\u0644\u062F\u0641\u0639 \u0628\u0646\u062C\u0627\u062D",company_address_format:"\u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0634\u0631\u0643\u0629",from_customer_address_format:"\u0645\u0646 \u062A\u0646\u0633\u064A\u0642 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0639\u0645\u064A\u0644"},items:{title:"\u0627\u0644\u0639\u0646\u0627\u0635\u0631",units:"\u0627\u0644\u0648\u062D\u062F\u0627\u062A",add_item_unit:"\u0625\u0636\u0627\u0641\u0629 \u0648\u062D\u062F\u0629 \u0639\u0646\u0635\u0631",edit_item_unit:"\u062A\u062D\u0631\u064A\u0631 \u0648\u062D\u062F\u0629 \u0627\u0644\u0639\u0646\u0627\u0635\u0631",unit_name:"\u0625\u0633\u0645 \u0627\u0644\u0648\u062D\u062F\u0629",item_unit_added:"\u062A\u0645\u062A \u0625\u0636\u0627\u0641\u0629 \u0648\u062D\u062F\u0629 \u0627\u0644\u0639\u0646\u0635\u0631",item_unit_updated:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0648\u062D\u062F\u0629 \u0627\u0644\u0639\u0646\u0635\u0631",item_unit_confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062F\u0627\u062F \u0648\u062D\u062F\u0629 \u0627\u0644\u0639\u0646\u0635\u0631 \u0647\u0630\u0647",already_in_use:"\u0648\u062D\u062F\u0629 \u0627\u0644\u0639\u0646\u0635\u0631 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0628\u0627\u0644\u0641\u0639\u0644",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0648\u062D\u062F\u0629 \u0627\u0644\u0639\u0646\u0635\u0631 \u0628\u0646\u062C\u0627\u062D"},notes:{title:"\u0645\u0644\u0627\u062D\u0638\u0627\u062A",description:"Save time by creating notes and reusing them on your invoices, estimates & payments.",notes:"\u0645\u0644\u0627\u062D\u0638\u0627\u062A",type:"\u0646\u0648\u0639",add_note:"\u0627\u0636\u0641 \u0645\u0644\u0627\u062D\u0638\u0629",add_new_note:"\u0623\u0636\u0641 \u0645\u0644\u0627\u062D\u0638\u0629 \u062C\u062F\u064A\u062F\u0629",name:"\u0627\u0633\u0645",edit_note:"\u062A\u062D\u0631\u064A\u0631 \u0645\u0630\u0643\u0631\u0629",note_added:"\u062A\u0645\u062A \u0625\u0636\u0627\u0641\u0629 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0629",note_updated:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0629",note_confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0639\u0627\u062F\u0629 \u0647\u0630\u0647 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0629",already_in_use:"\u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0629 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0628\u0627\u0644\u0641\u0639\u0644",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0629 \u0628\u0646\u062C\u0627\u062D"}},account_settings:{profile_picture:"\u0635\u0648\u0631\u0629 \u0627\u0644\u0645\u0644\u0641 \u0627\u0644\u0634\u062E\u0635\u064A",name:"\u0627\u0644\u0627\u0633\u0645",email:"\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",password:"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",confirm_password:"\u0623\u0639\u062F \u0643\u062A\u0627\u0628\u0629 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",account_settings:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062C\u0633\u0627\u0628",save:"\u062D\u0641\u0638",section_description:"\u064A\u0645\u0643\u0646\u0643 \u062A\u062D\u062F\u064A\u062B \u0627\u0633\u0645\u0643 \u0648\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0648\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631 \u0628\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0627\u0644\u0646\u0645\u0648\u0630\u062C \u0623\u062F\u0646\u0627\u0647.",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062D\u0633\u0627\u0628 \u0628\u0646\u062C\u0627\u062D"},user_profile:{name:"\u0627\u0644\u0627\u0633\u0645",email:"\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",password:"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",confirm_password:"\u0623\u0639\u062F \u0643\u062A\u0627\u0628\u0629 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631"},notification:{title:"\u0627\u0644\u0625\u0634\u0639\u0627\u0631\u0627\u062A",email:"\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0625\u0634\u0639\u0627\u0631\u0627\u062A \u0625\u0644\u0649",description:"\u0645\u0627 \u0647\u064A \u0625\u0634\u0639\u0627\u0631\u0627\u062A \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0627\u0644\u062A\u064A \u062A\u0631\u063A\u0628 \u0641\u064A \u062A\u0644\u0642\u064A\u0647\u0627 \u0639\u0646\u062F\u0645\u0627 \u064A\u062A\u063A\u064A\u0631 \u0634\u064A\u0621 \u0645\u0627\u061F",invoice_viewed:"\u062A\u0645 \u0639\u0631\u0636 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",invoice_viewed_desc:"\u0639\u0646\u062F\u0645\u0627 \u064A\u0633\u062A\u0639\u0631\u0636 \u0639\u0645\u064A\u0644\u0643 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0627\u0644\u0645\u0631\u0633\u0644\u0629 \u0639\u0628\u0631 \u0627\u0644\u0634\u0627\u0634\u0629 \u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629.",estimate_viewed:"\u062A\u0645 \u0639\u0631\u0636 \u0627\u0644\u062A\u0642\u062F\u064A\u0631",estimate_viewed_desc:"\u0639\u0646\u062F\u0645\u0627 \u064A\u0633\u062A\u0639\u0631\u0636 \u0639\u0645\u064A\u0644\u0643 \u0627\u0644\u062A\u0642\u062F\u064A\u0631 \u0627\u0644\u0645\u0631\u0633\u0644\u0629 \u0639\u0628\u0631 \u0627\u0644\u0634\u0627\u0634\u0629 \u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629.",save:"\u062D\u0641\u0638",email_save_message:"\u062A\u0645 \u062D\u0641\u0638 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0628\u0646\u062C\u0627\u062D",please_enter_email:"\u0641\u0636\u0644\u0627\u064B \u0623\u062F\u062E\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A"},tax_types:{title:"\u0623\u0646\u0648\u0627\u0639 \u0627\u0644\u0636\u0631\u0627\u0626\u0628",add_tax:"\u0623\u0636\u0641 \u0636\u0631\u064A\u0628\u0629",edit_tax:"\u062A\u062D\u0631\u064A\u0631 \u0627\u0644\u0636\u0631\u064A\u0628\u0629",description:"\u064A\u0645\u0643\u0646\u0643 \u0625\u0636\u0627\u0641\u0629 \u0623\u0648 \u0625\u0632\u0627\u0644\u0629 \u0627\u0644\u0636\u0631\u0627\u0626\u0628 \u0643\u0645\u0627 \u064A\u062D\u0644\u0648 \u0644\u0643. \u0627\u0644\u0646\u0638\u0627\u0645 \u064A\u062F\u0639\u0645 \u0627\u0644\u0636\u0631\u0627\u0626\u0628 \u0639\u0644\u0649 \u0627\u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0641\u0631\u062F\u064A\u0629 \u0648\u0643\u0630\u0644\u0643 \u0639\u0644\u0649 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629.",add_new_tax:"\u0625\u0636\u0627\u0641\u0629 \u0636\u0631\u064A\u0628\u0629 \u062C\u062F\u064A\u062F\u0629",tax_settings:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u0636\u0631\u064A\u0628\u0629",tax_per_item:"\u0636\u0631\u064A\u0628\u0629 \u0639\u0644\u0649 \u0627\u0644\u0635\u0646\u0641",tax_name:"\u0627\u0633\u0645 \u0627\u0644\u0636\u0631\u064A\u0628\u0629",compound_tax:"\u0636\u0631\u064A\u0628\u0629 \u0645\u062C\u0645\u0639\u0629",percent:"\u0646\u0633\u0628\u0629 \u0645\u0624\u0648\u064A\u0629",action:"\u0625\u062C\u0631\u0627\u0621",tax_setting_description:"\u0642\u0645 \u0628\u062A\u0645\u0643\u064A\u0646 \u0647\u0630\u0627 \u0625\u0630\u0627 \u0643\u0646\u062A \u062A\u0631\u064A\u062F \u0625\u0636\u0627\u0641\u0629 \u0636\u0631\u0627\u0626\u0628 \u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0627\u0644\u0641\u0631\u062F\u064A\u0629. \u0628\u0634\u0643\u0644 \u0627\u0641\u062A\u0631\u0627\u0636\u064A \u060C \u062A\u0636\u0627\u0641 \u0627\u0644\u0636\u0631\u0627\u0626\u0628 \u0645\u0628\u0627\u0634\u0631\u0629 \u0625\u0644\u0649 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629.",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0646\u0648\u0639 \u0627\u0644\u0636\u0631\u064A\u0628\u0629 \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0646\u0648\u0639 \u0627\u0644\u0636\u0631\u064A\u0628\u0629 \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0646\u0648\u0639 \u0627\u0644\u0636\u0631\u064A\u0628\u0629 \u0628\u0646\u062C\u0627\u062D",confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0646\u0648\u0639 \u0627\u0644\u0636\u0631\u064A\u0629 \u0647\u0630\u0627",already_in_use:"\u0636\u0631\u064A\u0628\u0629 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645"},expense_category:{title:"\u0641\u0626\u0627\u062A \u0627\u0644\u0646\u0641\u0642\u0627\u062A",action:"\u0625\u062C\u0631\u0627\u0621",description:"\u0627\u0644\u0641\u0626\u0627\u062A \u0645\u0637\u0644\u0648\u0628\u0629 \u0644\u0625\u0636\u0627\u0641\u0629 \u0625\u062F\u062E\u0627\u0644\u0627\u062A \u0627\u0644\u0646\u0641\u0642\u0627\u062A. \u064A\u0645\u0643\u0646\u0643 \u0625\u0636\u0627\u0641\u0629 \u0623\u0648 \u0625\u0632\u0627\u0644\u0629 \u0647\u0630\u0647 \u0627\u0644\u0641\u0626\u0627\u062A \u0648\u0641\u0642\u064B\u0627 \u0644\u062A\u0641\u0636\u064A\u0644\u0627\u062A\u0643.",add_new_category:"\u0625\u0636\u0627\u0641\u0629 \u0641\u0626\u0629 \u062C\u062F\u064A\u062F\u0629",add_category:"\u0625\u0636\u0627\u0641\u0629 \u0641\u0626\u0629",edit_category:"\u062A\u062D\u0631\u064A\u0631 \u0627\u0644\u0641\u0626\u0629",category_name:"\u0627\u0633\u0645 \u0627\u0644\u0641\u0626\u0629",category_description:"\u0627\u0644\u0648\u0635\u0641",created_message:"\u062A\u0645 \u0625\u0646\u0634\u0627\u0621 \u0646\u0648\u0639 \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0628\u0646\u062C\u0627\u062D",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0646\u0648\u0639 \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0628\u0646\u062C\u0627\u062D",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0646\u0648\u0639 \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0628\u0646\u062C\u0627\u062D",confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0631\u062C\u0627\u0639 \u0646\u0648\u0639 \u0627\u0644\u0646\u0641\u0642\u0627\u062A \u0647\u0630\u0627",already_in_use:"\u0646\u0648\u0639 \u0642\u064A\u062F \u0627\u0644\u0627\u0633\u062A\u062E\u062F\u0627\u0645"},preferences:{currency:"\u0627\u0644\u0639\u0645\u0644\u0629",default_language:"\u0627\u0644\u0644\u063A\u0629 \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A\u0629",time_zone:"\u0627\u0644\u0645\u0646\u0637\u0629 \u0627\u0644\u0632\u0645\u0646\u064A\u0629",fiscal_year:"\u0627\u0644\u0633\u0646\u0629 \u0627\u0644\u0645\u0627\u0644\u064A\u0629",date_format:"\u0635\u064A\u063A\u0629 \u0627\u0644\u062A\u0627\u0631\u064A\u062E",discount_setting:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062E\u0635\u0645",discount_per_item:"\u062E\u0635\u0645 \u0639\u0644\u0649 \u0627\u0644\u0635\u0646\u0641 ",discount_setting_description:"\u0642\u0645 \u0628\u062A\u0645\u0643\u064A\u0646 \u0647\u0630\u0627 \u0625\u0630\u0627 \u0643\u0646\u062A \u062A\u0631\u064A\u062F \u0625\u0636\u0627\u0641\u0629 \u062E\u0635\u0645 \u0625\u0644\u0649 \u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629 \u0627\u0644\u0641\u0631\u062F\u064A\u0629. \u0628\u0634\u0643\u0644 \u0627\u0641\u062A\u0631\u0627\u0636\u064A \u060C \u064A\u062A\u0645 \u0625\u0636\u0627\u0641\u0629 \u0627\u0644\u062E\u0635\u0645 \u0645\u0628\u0627\u0634\u0631\u0629 \u0625\u0644\u0649 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629.",save:"\u062D\u0641\u0638",preference:"\u062A\u0641\u0636\u064A\u0644 | \u062A\u0641\u0636\u064A\u0644\u0627\u062A",general_settings:"\u0627\u0644\u062A\u0641\u0636\u064A\u0644\u0627\u062A \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A\u0629 \u0644\u0644\u0646\u0638\u0627\u0645.",updated_message:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062A\u0641\u0636\u064A\u0644\u0627\u062A \u0628\u0646\u062C\u0627\u062D",select_language:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0644\u063A\u0629",select_time_zone:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0645\u0646\u0637\u0629 \u0627\u0644\u0632\u0645\u0646\u064A\u0629",select_date_format:"Select Date Format",select_financial_year:"\u0627\u062E\u062A\u0631 \u0627\u0644\u0633\u0646\u0629 \u0627\u0644\u0645\u0627\u0644\u064A\u0629"},update_app:{title:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0646\u0638\u0627\u0645",description:"\u064A\u0645\u0643\u0646\u0643 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0646\u0638\u0627\u0645 \u0628\u0633\u0647\u0648\u0644\u0629 \u0639\u0646 \u0637\u0631\u064A\u0642 \u0627\u0644\u0628\u062D\u062B \u0639\u0646 \u062A\u062D\u062F\u064A\u062B \u062C\u062F\u064A\u062F \u0628\u0627\u0644\u0646\u0642\u0631 \u0641\u0648\u0642 \u0627\u0644\u0632\u0631 \u0623\u062F\u0646\u0627\u0647",check_update:"\u062A\u062D\u0642\u0642 \u0645\u0646 \u0627\u0644\u062A\u062D\u062F\u064A\u062B\u0627\u062A",avail_update:"\u062A\u062D\u062F\u064A\u062B \u062C\u062F\u064A\u062F \u0645\u062A\u0648\u0641\u0631",next_version:"\u0627\u0644\u0646\u0633\u062E\u0629 \u0627\u0644\u062C\u062F\u064A\u062F\u0629",requirements:"Requirements",update:"\u062D\u062F\u062B \u0627\u0644\u0622\u0646",update_progress:"\u0642\u064A\u062F \u0627\u0644\u062A\u062D\u062F\u064A\u062B...",progress_text:"\u0633\u0648\u0641 \u064A\u0633\u062A\u063A\u0631\u0642 \u0627\u0644\u062A\u062D\u062F\u064A\u062B \u0628\u0636\u0639 \u062F\u0642\u0627\u0626\u0642. \u064A\u0631\u062C\u0649 \u0639\u062F\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0634\u0627\u0634\u0629 \u0623\u0648 \u0625\u063A\u0644\u0627\u0642 \u0627\u0644\u0646\u0627\u0641\u0630\u0629 \u0642\u0628\u0644 \u0627\u0646\u062A\u0647\u0627\u0621 \u0627\u0644\u062A\u062D\u062F\u064A\u062B",update_success:"\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0646\u0638\u0627\u0645! \u064A\u0631\u062C\u0649 \u0627\u0644\u0627\u0646\u062A\u0638\u0627\u0631 \u062D\u062A\u0649 \u064A\u062A\u0645 \u0625\u0639\u0627\u062F\u0629 \u062A\u062D\u0645\u064A\u0644 \u0646\u0627\u0641\u0630\u0629 \u0627\u0644\u0645\u062A\u0635\u0641\u062D \u062A\u0644\u0642\u0627\u0626\u064A\u064B\u0627.",latest_message:"\u0644\u0627 \u064A\u0648\u062C\u062F \u062A\u062D\u062F\u064A\u062B\u0627\u062A \u0645\u062A\u0648\u0641\u0631\u0629! \u0644\u062F\u064A\u0643 \u062D\u0627\u0644\u064A\u0627\u064B \u0623\u062D\u062F\u062B \u0646\u0633\u062E\u0629.",current_version:"\u0627\u0644\u0646\u0633\u062E\u0629 \u0627\u0644\u062D\u0627\u0644\u064A\u0629",download_zip_file:"\u062A\u0646\u0632\u064A\u0644 \u0645\u0644\u0641 ZIP",unzipping_package:"\u062D\u0632\u0645\u0629 \u0641\u0643 \u0627\u0644\u0636\u063A\u0637",copying_files:"\u0646\u0633\u062E \u0627\u0644\u0645\u0644\u0641\u0627\u062A",running_migrations:"\u0625\u062F\u0627\u0631\u0629 \u0639\u0645\u0644\u064A\u0627\u062A \u0627\u0644\u062A\u0631\u062D\u064A\u0644",finishing_update:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062A\u0634\u0637\u064A\u0628",update_failed:"\u0641\u0634\u0644 \u0627\u0644\u062A\u062D\u062F\u064A\u062B",update_failed_text:"\u0622\u0633\u0641! \u0641\u0634\u0644 \u0627\u0644\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u062E\u0627\u0635 \u0628\u0643 \u0641\u064A: {step} \u062E\u0637\u0648\u0629"},backup:{title:"\u0627\u0644\u0646\u0633\u062E \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A | \u0627\u0644\u0646\u0633\u062E \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629",description:"\u0627\u0644\u0646\u0633\u062E\u0629 \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629 \u0647\u064A \u0645\u0644\u0641 \u0645\u0636\u063A\u0648\u0637 \u064A\u062D\u062A\u0648\u064A \u0639\u0644\u0649 \u062C\u0645\u064A\u0639 \u0627\u0644\u0645\u0644\u0641\u0627\u062A \u0641\u064A \u0627\u0644\u062F\u0644\u0627\u0626\u0644 \u0627\u0644\u062A\u064A \u062A\u062D\u062F\u062F\u0647\u0627 \u0645\u0639 \u062A\u0641\u0631\u064A\u063A \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u062E\u0627\u0635\u0629 \u0628\u0643",new_backup:"\u0625\u0636\u0627\u0641\u0629 \u0646\u0633\u062E\u0629 \u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629 \u062C\u062F\u064A\u062F\u0629",create_backup:"\u0627\u0646\u0634\u0626 \u0646\u0633\u062E\u0629 \u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629",select_backup_type:"\u062D\u062F\u062F \u0646\u0648\u0639 \u0627\u0644\u0646\u0633\u062E \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A",backup_confirm_delete:"\u0644\u0646 \u062A\u062A\u0645\u0643\u0646 \u0645\u0646 \u0627\u0633\u062A\u0639\u0627\u062F\u0629 \u0647\u0630\u0647 \u0627\u0644\u0646\u0633\u062E\u0629 \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629",path:"\u0645\u0633\u0627\u0631",new_disk:"\u0642\u0631\u0635 \u062C\u062F\u064A\u062F",created_at:"\u0623\u0646\u0634\u0626\u062A \u0641\u064A",size:"size",dropbox:"\u0628\u0635\u0646\u062F\u0648\u0642 \u0627\u0644\u0625\u0633\u0642\u0627\u0637",local:"\u0645\u062D\u0644\u064A",healthy:"\u0635\u062D\u064A",amount_of_backups:"\u0643\u0645\u064A\u0629 \u0627\u0644\u0646\u0633\u062E \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629",newest_backups:"\u0623\u062D\u062F\u062B \u0627\u0644\u0646\u0633\u062E \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629",used_storage:"\u0627\u0644\u062A\u062E\u0632\u064A\u0646 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645",select_disk:"\u062D\u062F\u062F \u0627\u0644\u0642\u0631\u0635",action:"\u0639\u0645\u0644",deleted_message:"\u062A\u0645 \u062D\u0630\u0641 \u0627\u0644\u0646\u0633\u062E\u0629 \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629 \u0628\u0646\u062C\u0627\u062D",created_message:"Backup created successfully",invalid_disk_credentials:"\u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0639\u062A\u0645\u0627\u062F \u063A\u064A\u0631 \u0635\u0627\u0644\u062D\u0629 \u0644\u0644\u0642\u0631\u0635 \u0627\u0644\u0645\u062D\u062F\u062F"},disk:{title:"\u0642\u0631\u0635 \u0627\u0644\u0645\u0644\u0641\u0627\u062A | \u0623\u0642\u0631\u0627\u0635 \u0627\u0644\u0645\u0644\u0641\u0627\u062A",description:"\u0628\u0634\u0643\u0644 \u0627\u0641\u062A\u0631\u0627\u0636\u064A \u060C \u0633\u062A\u0633\u062A\u062E\u062F\u0645 Crater \u0627\u0644\u0642\u0631\u0635 \u0627\u0644\u0645\u062D\u0644\u064A \u0644\u062D\u0641\u0638 \u0627\u0644\u0646\u0633\u062E \u0627\u0644\u0627\u062D\u062A\u064A\u0627\u0637\u064A\u0629 \u0648\u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631 \u0648\u0645\u0644\u0641\u0627\u062A \u0627\u0644\u0635\u0648\u0631 \u0627\u0644\u0623\u062E\u0631\u0649. \u064A\u0645\u0643\u0646\u0643 \u062A\u0643\u0648\u064A\u0646 \u0623\u0643\u062B\u0631 \u0645\u0646 \u0628\u0631\u0627\u0645\u062C \u062A\u0634\u063A\u064A\u0644 \u0642\u0631\u0635 \u0645\u062B\u0644 DigitalOcean \u0648 S3 \u0648 Dropbox \u0648\u0641\u0642\u064B\u0627 \u0644\u062A\u0641\u0636\u064A\u0644\u0627\u062A\u0643.",created_at:"\u0623\u0646\u0634\u0626\u062A \u0641\u064A",dropbox:"\u0628\u0635\u0646\u062F\u0648\u0642 \u0627\u0644\u0625\u0633\u0642\u0627\u0637",name:"\u0627\u0633\u0645",driver:"\u0633\u0627\u0626\u0642",disk_type:"\u0646\u0648\u0639",disk_name:"\u0627\u0633\u0645 \u0627\u0644\u0642\u0631\u0635",new_disk:"\u0625\u0636\u0627\u0641\u0629 \u0642\u0631\u0635 \u062C\u062F\u064A\u062F",filesystem_driver:"\u0628\u0631\u0646\u0627\u0645\u062C \u062A\u0634\u063A\u064A\u0644 \u0646\u0638\u0627\u0645 \u0627\u0644\u0645\u0644\u0641\u0627\u062A",local_driver:"\u0633\u0627\u0626\u0642 \u0645\u062D\u0644\u064A",local_root:"\u0627\u0644\u062C\u0630\u0631 \u0627\u0644\u0645\u062D\u0644\u064A",public_driver:"\u0633\u0627\u0626\u0642 \u0639\u0627\u0645",public_root:"\u0627\u0644\u062C\u0630\u0631 \u0627\u0644\u0639\u0627\u0645",public_url:"URL \u0627\u0644\u0639\u0627\u0645",public_visibility:"\u0627\u0644\u0631\u0624\u064A\u0629 \u0627\u0644\u0639\u0627\u0645\u0629",media_driver:"\u0633\u0627\u0626\u0642 \u0648\u0633\u0627\u0626\u0637",media_root:"\u062C\u0630\u0631 \u0627\u0644\u0648\u0633\u0627\u0626\u0637",aws_driver:"\u0628\u0631\u0646\u0627\u0645\u062C \u062A\u0634\u063A\u064A\u0644 AWS",aws_key:"\u0645\u0641\u062A\u0627\u062D AWS",aws_secret:"AWS Secret",aws_region:"\u0645\u0646\u0637\u0642\u0629 AWS",aws_bucket:"\u062D\u0627\u0648\u064A\u0629 AWS",aws_root:"AWS \u0627\u0644\u062C\u0630\u0631",do_spaces_type:"\u0647\u0644 \u0646\u0648\u0639 \u0627\u0644\u0645\u0633\u0627\u062D\u0627\u062A",do_spaces_key:"\u0645\u0641\u062A\u0627\u062D Do Spaces",do_spaces_secret:"\u0647\u0644 \u0627\u0644\u0645\u0633\u0627\u062D\u0627\u062A \u0633\u0631\u064A\u0629",do_spaces_region:"\u0647\u0644 \u0645\u0646\u0637\u0642\u0629 \u0627\u0644\u0645\u0633\u0627\u062D\u0627\u062A",do_spaces_bucket:"\u0647\u0644 \u062F\u0644\u0648 \u0627\u0644\u0645\u0633\u0627\u062D\u0627\u062A",do_spaces_endpoint:"\u0642\u0645 \u0628\u0639\u0645\u0644 \u0646\u0642\u0637\u0629 \u0646\u0647\u0627\u064A\u0629 \u0644\u0644\u0645\u0633\u0627\u0641\u0627\u062A",do_spaces_root:"\u0639\u0645\u0644 \u0627\u0644\u062C\u0630\u0631 \u0644\u0644\u0645\u0633\u0627\u0641\u0627\u062A",dropbox_type:"\u0646\u0648\u0639 Dropbox",dropbox_token:"\u0631\u0645\u0632 Dropbox",dropbox_key:"\u0645\u0641\u062A\u0627\u062D Dropbox",dropbox_secret:"Dropbox Secret",dropbox_app:"\u062A\u0637\u0628\u064A\u0642 Dropbox",dropbox_root:"\u062C\u0630\u0631 Dropbox",default_driver:"\u0628\u0631\u0646\u0627\u0645\u062C \u0627\u0644\u062A\u0634\u063A\u064A\u0644 \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A",is_default:"\u0623\u0645\u0631 \u0627\u0641\u062A\u0631\u0627\u0636\u064A",set_default_disk:"\u062A\u0639\u064A\u064A\u0646 \u0627\u0644\u0642\u0631\u0635 \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A",success_set_default_disk:"Disk set as default successfully",save_pdf_to_disk:"\u062D\u0641\u0638 \u0645\u0644\u0641\u0627\u062A PDF \u0639\u0644\u0649 \u0627\u0644\u0642\u0631\u0635",disk_setting_description:"\u0642\u0645 \u0628\u062A\u0645\u0643\u064A\u0646 \u0647\u0630\u0627 \u060C \u0625\u0630\u0627 \u0643\u0646\u062A \u062A\u0631\u063A\u0628 \u0641\u064A \u062D\u0641\u0638 \u0646\u0633\u062E\u0629 \u0645\u0646 \u0643\u0644 \u0641\u0627\u062A\u0648\u0631\u0629 \u060C \u062A\u0642\u062F\u064A\u0631 \u0648\u0625\u064A\u0635\u0627\u0644 \u062F\u0641\u0639 PDF \u0639\u0644\u0649 \u0627\u0644\u0642\u0631\u0635 \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A \u0627\u0644\u062E\u0627\u0635 \u0628\u0643 \u062A\u0644\u0642\u0627\u0626\u064A\u064B\u0627. \u0633\u064A\u0624\u062F\u064A \u062A\u0634\u063A\u064A\u0644 \u0647\u0630\u0627 \u0627\u0644\u062E\u064A\u0627\u0631 \u0625\u0644\u0649 \u062A\u0642\u0644\u064A\u0644 \u0648\u0642\u062A \u0627\u0644\u062A\u062D\u0645\u064A\u0644 \u0639\u0646\u062F \u0639\u0631\u0636 \u0645\u0644\u0641\u0627\u062A PDF.",select_disk:"\u062D\u062F\u062F \u0627\u0644\u0642\u0631\u0635",disk_settings:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u0642\u0631\u0635",confirm_delete:"Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater",action:"\u0639\u0645\u0644",edit_file_disk:"Edit File Disk",success_create:"\u062A\u0645\u062A \u0625\u0636\u0627\u0641\u0629 \u0627\u0644\u0642\u0631\u0635 \u0628\u0646\u062C\u0627\u062D",success_update:"Disk updated successfully",error:"\u0641\u0634\u0644 \u0625\u0636\u0627\u0641\u0629 \u0627\u0644\u0642\u0631\u0635",deleted_message:"File Disk deleted successfully",disk_variables_save_successfully:"\u062A\u0645 \u062A\u0643\u0648\u064A\u0646 \u0627\u0644\u0642\u0631\u0635 \u0628\u0646\u062C\u0627\u062D",disk_variables_save_error:"\u0641\u0634\u0644 \u062A\u0643\u0648\u064A\u0646 \u0627\u0644\u0642\u0631\u0635.",invalid_disk_credentials:"\u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0639\u062A\u0645\u0627\u062F \u063A\u064A\u0631 \u0635\u0627\u0644\u062D\u0629 \u0644\u0644\u0642\u0631\u0635 \u0627\u0644\u0645\u062D\u062F\u062F"}},jr={account_info:"\u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0627\u0644\u062D\u0633\u0627\u0628",account_info_desc:"\u0633\u064A\u062A\u0645 \u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0627\u0644\u062A\u0641\u0627\u0635\u064A\u0644 \u0623\u062F\u0646\u0627\u0647 \u0644\u0625\u0646\u0634\u0627\u0621 \u062D\u0633\u0627\u0628 \u0627\u0644\u0645\u0633\u0624\u0648\u0644 \u0627\u0644\u0631\u0626\u064A\u0633\u064A. \u0643\u0645\u0627 \u064A\u0645\u0643\u0646\u0643 \u062A\u063A\u064A\u064A\u0631 \u0627\u0644\u062A\u0641\u0627\u0635\u064A\u0644 \u0641\u064A \u0623\u064A \u0648\u0642\u062A \u0628\u0639\u062F \u062A\u0633\u062C\u064A\u0644 \u0627\u0644\u062F\u062E\u0648\u0644.",name:"\u0627\u0644\u0627\u0633\u0645",email:"\u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",password:"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",confirm_password:"\u0623\u0639\u062F \u0643\u062A\u0627\u0628\u0629 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",save_cont:"\u062D\u0641\u0638 \u0648\u0627\u0633\u062A\u0645\u0631\u0627\u0631",company_info:"\u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0627\u0644\u0634\u0631\u0643\u0629",company_info_desc:"\u0633\u064A\u062A\u0645 \u0639\u0631\u0636 \u0647\u0630\u0647 \u0627\u0644\u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0639\u0644\u0649 \u0627\u0644\u0641\u0648\u0627\u062A\u064A\u0631. \u0644\u0627\u062D\u0638 \u0623\u0646\u0647 \u064A\u0645\u0643\u0646\u0643 \u062A\u0639\u062F\u064A\u0644 \u0647\u0630\u0627 \u0644\u0627\u062D\u0642\u064B\u0627 \u0641\u064A \u0635\u0641\u062D\u0629 \u0627\u0644\u0625\u0639\u062F\u0627\u062F\u0627\u062A.",company_name:"\u0627\u0633\u0645 \u0627\u0644\u0634\u0631\u0643\u0629",company_logo:"\u0634\u0639\u0627\u0631 \u0627\u0644\u0634\u0631\u0643\u0629",logo_preview:"\u0627\u0633\u062A\u0639\u0631\u0627\u0636 \u0627\u0644\u0634\u0639\u0627\u0631",preferences:"\u0627\u0644\u062A\u0641\u0636\u064A\u0644\u0627\u062A",preferences_desc:"\u0627\u0644\u062A\u0641\u0636\u064A\u0644\u0627\u062A \u0627\u0644\u0627\u0641\u062A\u0631\u0627\u0636\u064A\u0629 \u0644\u0644\u0646\u0638\u0627\u0645",country:"\u0627\u0644\u062F\u0648\u0644\u0629",state:"\u0627\u0644\u0648\u0644\u0627\u064A\u0629/\u0627\u0644\u0645\u0646\u0637\u0642\u0629",city:"\u0627\u0644\u0645\u062F\u064A\u0646\u0629",address:"\u0627\u0644\u0639\u0646\u0648\u0627\u0646",street:"\u0627\u0644\u0639\u0646\u0648\u0627\u0646 1 | \u0627\u0644\u0639\u0646\u0648\u0627\u0646 2",phone:"\u0627\u0644\u0647\u0627\u062A\u0641",zip_code:"\u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0628\u0631\u064A\u062F\u064A",go_back:"\u0644\u0644\u062E\u0644\u0641",currency:"\u0627\u0644\u0639\u0645\u0644\u0629",language:"\u0627\u0644\u0644\u063A\u0629",time_zone:"\u0627\u0644\u0645\u0646\u0637\u0629 \u0627\u0644\u0632\u0645\u0646\u064A\u0629",fiscal_year:"\u0627\u0644\u0633\u0646\u0629 \u0627\u0644\u0645\u0627\u0644\u064A\u0629",date_format:"\u0635\u064A\u063A\u0629 \u0627\u0644\u062A\u0627\u0631\u064A\u062E",from_address:"\u0645\u0646 \u0627\u0644\u0639\u0646\u0648\u0627\u0646",username:"\u0627\u0633\u0645 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645",next:"\u0627\u0644\u062A\u0627\u0644\u064A",continue:"\u0627\u0633\u062A\u0645\u0631\u0627\u0631",skip:"\u062A\u062E\u0637\u064A",database:{database:"\u0639\u0646\u0648\u0627\u0646 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",connection:"\u0627\u062A\u0635\u0627\u0644 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",host:"\u062E\u0627\u062F\u0645 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",port:"\u0645\u0646\u0641\u0630 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",password:"\u0643\u0644\u0645\u0629 \u0645\u0631\u0648\u0631 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",app_url:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0625\u0646\u062A\u0631\u0646\u062A \u0644\u0644\u0646\u0638\u0627\u0645",app_domain:"App Domain",username:"\u0627\u0633\u0645 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 \u0644\u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",db_name:"\u0633\u0645 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",db_path:"Database Path",desc:"\u0642\u0645 \u0628\u0625\u0646\u0634\u0627\u0621 \u0642\u0627\u0639\u062F\u0629 \u0628\u064A\u0627\u0646\u0627\u062A \u0639\u0644\u0649 \u0627\u0644\u062E\u0627\u062F\u0645 \u0627\u0644\u062E\u0627\u0635 \u0628\u0643 \u0648\u062A\u0639\u064A\u064A\u0646 \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0627\u0639\u062A\u0645\u0627\u062F \u0628\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0627\u0644\u0646\u0645\u0648\u0630\u062C \u0623\u062F\u0646\u0627\u0647."},permissions:{permissions:"\u0627\u0644\u0623\u0630\u0648\u0646\u0627\u062A",permission_confirm_title:"\u0647\u0644 \u0623\u0646\u062A \u0645\u062A\u0623\u0643\u062F \u0645\u0646 \u0627\u0644\u0627\u0633\u062A\u0645\u0631\u0627\u0631\u061F",permission_confirm_desc:"\u0641\u0634\u0644 \u0641\u062D\u0635 \u0623\u0630\u0648\u0646\u0627\u062A \u0627\u0644\u0645\u062C\u0644\u062F",permission_desc:"\u0641\u064A\u0645\u0627 \u064A\u0644\u064A \u0642\u0627\u0626\u0645\u0629 \u0623\u0630\u0648\u0646\u0627\u062A \u0627\u0644\u0645\u062C\u0644\u062F \u0627\u0644\u0645\u0637\u0644\u0648\u0628\u0629 \u062D\u062A\u0649 \u064A\u0639\u0645\u0644 \u0627\u0644\u062A\u0637\u0628\u064A\u0642. \u0641\u064A \u062D\u0627\u0644\u0629 \u0641\u0634\u0644 \u0641\u062D\u0635 \u0627\u0644\u0625\u0630\u0646 \u060C \u062A\u0623\u0643\u062F \u0645\u0646 \u062A\u062D\u062F\u064A\u062B \u0623\u0630\u0648\u0646\u0627\u062A \u0627\u0644\u0645\u062C\u0644\u062F."},mail:{host:"\u062E\u0627\u062F\u0645 \u0627\u0644\u0628\u0631\u064A\u062F",port:"\u0645\u0646\u0641\u0630 \u0627\u0644\u0628\u0631\u064A\u062F",driver:"\u0645\u0634\u063A\u0644 \u0627\u0644\u0628\u0631\u064A\u062F",secret:"\u0633\u0631\u064A",mailgun_secret:"\u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0633\u0631\u064A \u0644\u0640 Mailgun",mailgun_domain:"\u0627\u0644\u0645\u062C\u0627\u0644",mailgun_endpoint:"\u0627\u0644\u0646\u0647\u0627\u064A\u0629 \u0627\u0644\u0637\u0631\u0641\u064A\u0629 \u0644\u0640 Mailgun",ses_secret:"SES \u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0633\u0631\u064A",ses_key:"SES \u0645\u0641\u062A\u0627\u062D",password:"\u0643\u0644\u0645\u0629 \u0645\u0631\u0648\u0631 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A",username:"\u0627\u0633\u0645 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 \u0644\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",mail_config:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A",from_name:"\u0627\u0633\u0645 \u0627\u0644\u0645\u0631\u0633\u0644",from_mail:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0644\u0644\u0645\u0631\u0633\u0644",encryption:"\u0635\u064A\u063A\u0629 \u0627 \u0644\u062A\u0634\u0641\u064A\u0631",mail_config_desc:"\u0623\u062F\u0646\u0627\u0647 \u0647\u0648 \u0646\u0645\u0648\u0630\u062C \u0644\u062A\u0643\u0648\u064A\u0646 \u0628\u0631\u0646\u0627\u0645\u062C \u062A\u0634\u063A\u064A\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0644\u0625\u0631\u0633\u0627\u0644 \u0631\u0633\u0627\u0626\u0644 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0645\u0646 \u0627\u0644\u062A\u0637\u0628\u064A\u0642. \u064A\u0645\u0643\u0646\u0643 \u0623\u064A\u0636\u064B\u0627 \u062A\u0647\u064A\u0626\u0629 \u0645\u0648\u0641\u0631\u064A \u0627\u0644\u062C\u0647\u0627\u062A \u0627\u0644\u062E\u0627\u0631\u062C\u064A\u0629 \u0645\u062B\u0644 Sendgrid \u0648 SES \u0625\u0644\u062E."},req:{system_req:"\u0645\u062A\u0637\u0644\u0628\u0627\u062A \u0627\u0644\u0646\u0638\u0627\u0645",php_req_version:"Php (\u0627\u0644\u0646\u0633\u062E\u0629 \u0627\u0644\u0645\u0637\u0644\u0648\u0628\u0629 {version} \u0628\u062D\u062F \u0623\u062F\u0646\u0649)",check_req:"\u0641\u062D\u0635 \u0645\u062A\u0637\u0644\u0628\u0627\u062A \u0627\u0644\u0646\u0638\u0627\u0645",system_req_desc:"\u064A\u062D\u062A\u0648\u064A \u0627\u0644\u0646\u0638\u0627\u0645 \u0639\u0644\u0649 \u0628\u0639\u0636 \u0645\u062A\u0637\u0644\u0628\u0627\u062A \u0627\u0644\u062E\u0627\u062F\u0645. \u062A\u0623\u0643\u062F \u0645\u0646 \u0623\u0646 \u062E\u0627\u062F\u0645\u0643 \u0644\u062F\u064A\u0647 \u0646\u0633\u062E\u0629 php \u0627\u0644\u0645\u0637\u0644\u0648\u0628\u0629 \u0648\u062C\u0645\u064A\u0639 \u0627\u0644\u0627\u0645\u062A\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u0645\u0630\u0643\u0648\u0631\u0629 \u0623\u062F\u0646\u0627\u0647."},errors:{migrate_failed:"\u0641\u0634\u0644 \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u062C\u062F\u0627\u0648\u0644",database_variables_save_error:"\u063A\u064A\u0631 \u0642\u0627\u062F\u0631 \u0639\u0644\u0649 \u0627\u0644\u0627\u062A\u0635\u0627\u0644 \u0628\u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0628\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0627\u0644\u0642\u064A\u0645 \u0627\u0644\u0645\u0642\u062F\u0645\u0629.",mail_variables_save_error:"\u0641\u0634\u0644 \u062A\u0643\u0648\u064A\u0646 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A.",connection_failed:"\u0641\u0634\u0644 \u0627\u062A\u0635\u0627\u0644 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",database_should_be_empty:"\u064A\u062C\u0628 \u0623\u0646 \u062A\u0643\u0648\u0646 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0641\u0627\u0631\u063A\u0629"},success:{mail_variables_save_successfully:"\u062A\u0645 \u062A\u0643\u0648\u064A\u0646 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0628\u0646\u062C\u0627\u062D",database_variables_save_successfully:"\u062A\u0645 \u062A\u0643\u0648\u064A\u0646 \u0642\u0627\u0639\u062F\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0628\u0646\u062C\u0627\u062D."}},Pr={invalid_phone:"\u0631\u0642\u0645 \u0627\u0644\u0647\u0627\u062A\u0641 \u063A\u064A\u0631 \u0635\u062D\u064A\u062D",invalid_url:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0646\u062A\u0631\u0646\u062A \u063A\u064A\u0631 \u0635\u062D\u064A\u062D (\u0645\u062B\u0627\u0644: http://www.craterapp.com)",invalid_domain_url:"\u0639\u0646\u0648\u0627\u0646 \u0627\u0646\u062A\u0631\u0646\u062A \u063A\u064A\u0631 \u0635\u062D\u064A\u062D (\u0645\u062B\u0627\u0644: craterapp.com)",required:"\u062D\u0642\u0644 \u0645\u0637\u0644\u0648\u0628",email_incorrect:"\u0628\u0631\u064A\u062F \u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u063A\u064A\u0631 \u0635\u062D\u064A\u062D.",email_already_taken:"\u0647\u0630\u0627 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u0645\u0633\u062A\u062E\u062F\u0645 \u0645\u0633\u0628\u0642\u0627\u064B",email_does_not_exist:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0643\u0633\u062A\u062E\u062F\u0645 \u0628\u0647\u0630\u0627 \u0627\u0644\u0628\u0631\u064A\u062F \u0627\u0644\u0627\u0644\u0643\u062A\u0631\u0648\u0646\u064A",item_unit_already_taken:"\u0648\u062D\u062F\u0629 \u0627\u0644\u0628\u0646\u062F \u0642\u062F \u0627\u062A\u062E\u0630\u062A \u0628\u0627\u0644\u0641\u0639\u0644",payment_mode_already_taken:"\u0644\u0642\u062F \u062A\u0645 \u0628\u0627\u0644\u0641\u0639\u0644 \u0623\u062E\u0630 \u0637\u0631\u064A\u0642\u0629 \u0627\u0644\u062F\u0641\u0639",send_reset_link:"\u0623\u0631\u0633\u0627\u0644 \u0631\u0627\u0628\u0637 \u0627\u0633\u062A\u0639\u0627\u062F\u0629 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631",not_yet:"\u0644\u064A\u0633 \u0628\u0639\u062F\u061F \u0623\u0639\u062F \u0627\u0644\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0622\u0646..",password_min_length:"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631 \u064A\u062C\u0628 \u0623\u0646 \u062A\u062A\u0643\u0648\u0646 \u0645\u0646 {count} \u0623\u062D\u0631\u0641 \u0639\u0644\u0649 \u0627\u0644\u0623\u0642\u0644",name_min_length:"\u0627\u0644\u0627\u0633\u0645 \u064A\u062C\u0628 \u0623\u0646 \u064A\u062A\u0643\u0648\u0646 \u0645\u0646 {count} \u0623\u062D\u0631\u0641 \u0639\u0644\u0649 \u0627\u0644\u0623\u0642\u0644",enter_valid_tax_rate:"\u0623\u062F\u062E\u0644 \u0645\u0639\u062F\u0644 \u0627\u0644\u0636\u0631\u064A\u0628\u0629 \u0628\u0634\u0643\u0644 \u0635\u062D\u064A\u062D",numbers_only:"\u0623\u0631\u0642\u0627\u0645 \u0641\u0642\u0637.",characters_only:"\u062D\u0631\u0648\u0641 \u0641\u0642\u0637.",password_incorrect:"\u064A\u062C\u0628 \u0623\u0646 \u062A\u0643\u0648\u0646 \u0643\u0644\u0645\u0627\u062A \u0627\u0644\u0645\u0631\u0648\u0631 \u0645\u062A\u0637\u0627\u0628\u0642\u0629",password_length:"\u064A\u062C\u0628 \u0623\u0646 \u062A\u0643\u0648\u0646 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631 \u0628\u0637\u0648\u0644 {count} \u062D\u0631\u0641.",qty_must_greater_than_zero:"\u0627\u0644\u0643\u0645\u064A\u0629 \u064A\u062C\u0628 \u0623\u0646 \u062A\u0643\u0648\u0646 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0635\u0641\u0631.",price_greater_than_zero:"\u0627\u0644\u0633\u0639\u0631 \u064A\u062C\u0628 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0635\u0641\u0631.",payment_greater_than_zero:"\u0627\u0644\u062F\u0641\u0639\u0629 \u064A\u062C\u0628 \u0623\u0646 \u062A\u0643\u0648\u0646 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0635\u0641\u0631.",payment_greater_than_due_amount:"\u0645\u0628\u0644\u063A \u0627\u0644\u062F\u0641\u0639\u0629 \u0623\u0643\u062B\u0631 \u0645\u0646 \u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0633\u062A\u062D\u0642 \u0644\u0647\u0630\u0647 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629.",quantity_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u062A\u0632\u064A\u062F \u0627\u0644\u0643\u0645\u064A\u0629 \u0639\u0646 20 \u0631\u0642\u0645\u0627\u064B.",price_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u064A\u0632\u064A\u062F \u0627\u0644\u0633\u0639\u0631 \u0639\u0646 20 \u0631\u0642\u0645\u0627\u064B.",price_minvalue:"\u064A\u062C\u0628 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0627\u0644\u0633\u0639\u0631 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0635\u0641\u0631.",amount_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u064A\u0632\u064A\u062F \u0627\u0644\u0645\u0628\u0644\u063A \u0639\u0646 20 \u0631\u0642\u0645\u0627\u064B.",amount_minvalue:"\u064A\u062C\u0628 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0627\u0644\u0645\u0628\u0644\u063A \u0623\u0643\u0628\u0631 \u0645\u0646 \u0635\u0641\u0631.",description_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u064A\u0632\u064A\u062F \u0627\u0644\u0648\u0635\u0641 \u0639\u0646 255 \u062D\u0631\u0641\u0627\u064B.",subject_maxlength:"Subject should not be greater than 100 characters.",message_maxlength:"Message should not be greater than 255 characters.",maximum_options_error:"\u0627\u0644\u062D\u062F \u0627\u0644\u0623\u0639\u0644\u0649 \u0647\u0648 {max} \u062E\u064A\u0627\u0631\u0627\u062A. \u0642\u0645 \u0628\u0625\u0632\u0627\u0644\u0629 \u0623\u062D\u062F \u0627\u0644\u062E\u064A\u0627\u0631\u0627\u062A \u0644\u062A\u062D\u062F\u064A\u062F \u062E\u064A\u0627\u0631 \u0622\u062E\u0631.",notes_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u064A\u0632\u064A\u062F \u062D\u062C\u0645 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0627\u062A \u0639\u0646 255 \u062D\u0631\u0641\u0627\u064B.",address_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u064A\u0632\u064A\u062F \u0627\u0644\u0639\u0646\u0648\u0627\u0646 \u0639\u0646 255 \u062D\u0631\u0641\u0627\u064B.",ref_number_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u064A\u0632\u064A\u062F \u0627\u0644\u0631\u0642\u0645 \u0627\u0644\u0645\u0631\u062C\u0639\u064A \u0639\u0646 255 \u062D\u0631\u0641\u0627\u064B.",prefix_maxlength:"\u064A\u062C\u0628 \u0623\u0644\u0627 \u062A\u0632\u064A\u062F \u0627\u0644\u0628\u0627\u062F\u0626\u0629 \u0639\u0646 5 \u0623\u062D\u0631\u0641.",something_went_wrong:"\u062E\u0637\u0623 \u063A\u064A\u0631 \u0645\u0639\u0631\u0648\u0641!"},Dr="\u062A\u0642\u062F\u064A\u0631",Cr="\u0631\u0642\u0645 \u062A\u0642\u062F\u064A\u0631",Ar="\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u062A\u0642\u062F\u064A\u0631",Er="Expiry date",Nr="\u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",Tr="\u0631\u0642\u0645 \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",Ir="\u062A\u0627\u0631\u064A\u062E \u0627\u0644\u0641\u0627\u062A\u0648\u0631\u0629",$r="Due date",Rr="\u0645\u0644\u0627\u062D\u0638\u0627\u062A",Fr="\u0627\u0644\u0623\u0635\u0646\u0627\u0641",Mr="\u0627\u0644\u0643\u0645\u064A\u0629",Vr="\u0627\u0644\u0633\u0639\u0631",Br="\u0627\u0644\u062E\u0635\u0645",Or="\u0627\u0644\u0645\u0628\u0644\u063A \u0627\u0644\u0645\u0637\u0644\u0648\u0628",Lr="Subtotal",Ur="\u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",Kr="Payment",qr="PAYMENT RECEIPT",Zr="Payment Date",Wr="\u0631\u0642\u0645 \u0627\u0644\u062F\u0641\u0639\u0629",Hr="\u0646\u0648\u0639 \u0627\u0644\u062F\u0641\u0639\u0629",Gr="Amount Received",Yr="EXPENSES REPORT",Jr="TOTAL EXPENSE",Xr="PROFIT & LOSS REPORT",Qr="Sales Customer Report",ed="Sales Item Report",td="Tax Summary Report",ad="INCOME",sd="NET PROFIT",nd="Sales Report: By Customer",id="TOTAL SALES",od="Sales Report: By Item",rd="TAX REPORT",dd="TOTAL TAX",ld="\u0623\u0646\u0648\u0627\u0639 \u0627\u0644\u0636\u0631\u0627\u0626\u0628",cd="\u0627\u0644\u0646\u0641\u0642\u0627\u062A",_d="\u0645\u0637\u0644\u0648\u0628 \u0645\u0646,",ud="\u064A\u0634\u062D\u0646 \u0625\u0644\u0649,",md="Received from:",pd="\u0636\u0631\u064A\u0628\u0629";var gd={navigation:_r,general:ur,dashboard:mr,tax_types:pr,global_search:gr,customers:fr,items:hr,estimates:vr,invoices:yr,payments:br,expenses:kr,login:wr,users:xr,reports:zr,settings:Sr,wizard:jr,validation:Pr,pdf_estimate_label:Dr,pdf_estimate_number:Cr,pdf_estimate_date:Ar,pdf_estimate_expire_date:Er,pdf_invoice_label:Nr,pdf_invoice_number:Tr,pdf_invoice_date:Ir,pdf_invoice_due_date:$r,pdf_notes:Rr,pdf_items_label:Fr,pdf_quantity_label:Mr,pdf_price_label:Vr,pdf_discount_label:Br,pdf_amount_label:Or,pdf_subtotal:Lr,pdf_total:Ur,pdf_payment_label:Kr,pdf_payment_receipt_label:qr,pdf_payment_date:Zr,pdf_payment_number:Wr,pdf_payment_mode:Hr,pdf_payment_amount_received_label:Gr,pdf_expense_report_label:Yr,pdf_total_expenses_label:Jr,pdf_profit_loss_label:Xr,pdf_sales_customers_label:Qr,pdf_sales_items_label:ed,pdf_tax_summery_label:td,pdf_income_label:ad,pdf_net_profit_label:sd,pdf_customer_sales_report:nd,pdf_total_sales_label:id,pdf_item_sales_label:od,pdf_tax_report_label:rd,pdf_total_tax_label:dd,pdf_tax_types_label:ld,pdf_expenses_label:cd,pdf_bill_to:_d,pdf_ship_to:ud,pdf_received_from:md,pdf_tax_label:pd};const fd={dashboard:"\xDCbersicht",customers:"Kunden",items:"Artikel",invoices:"Rechnungen",expenses:"Kosten",estimates:"Kostenvoranschl\xE4ge",payments:"Zahlungen",reports:"Berichte",settings:"Einstellungen",logout:"Abmelden",users:"Benutzer"},hd={add_company:"Unternehmen hinzuf\xFCgen",view_pdf:"PDF anzeigen",copy_pdf_url:"PDF-Link kopieren",download_pdf:"PDF herunterladen",save:"Speichern",create:"Erstellen",cancel:"Abbrechen",update:"Aktualisieren",deselect:"Abw\xE4hlen",download:"Herunterladen",from_date:"Von Datum",to_date:"bis Datum",from:"Von",to:"bis",sort_by:"Sortieren nach",ascending:"Aufsteigend",descending:"Absteigend",subject:"Betreff",body:"Inhalt",message:"Nachricht",send:"Absenden",go_back:"zur\xFCck",back_to_login:"Zur\xFCck zum Login?",home:"Startseite",filter:"Filter",delete:"L\xF6schen",edit:"Bearbeiten",view:"Anzeigen",add_new_item:"Artikel hinzuf\xFCgen",clear_all:"Alle entfernen",showing:"Anzeigen",of:"von",actions:"Aktionen",subtotal:"ZWISCHENSUMME",discount:"RABATT",fixed:"Festsatz",percentage:"Prozentsatz",tax:"Steuer",total_amount:"GESAMTSUMME",bill_to:"Rechnungsempf\xE4nger",ship_to:"Versand ein",due:"F\xE4llig",draft:"Entwurf",sent:"Gesendet",all:"Alle",select_all:"Alle ausw\xE4hlen",choose_file:"Klicken Sie hier, um eine Datei auszuw\xE4hlen",choose_template:"W\xE4hlen Sie eine Vorlage",choose:"W\xE4hlen",remove:"Entfernen",powered_by:"Betrieben durch",bytefury:"Bytefury",select_a_status:"Status w\xE4hlen",select_a_tax:"Steuersatz w\xE4hlen",search:"Suchen",are_you_sure:"Sind Sie sicher?",list_is_empty:"Liste ist leer.",no_tax_found:"Kein Steuersatz gefunden!",four_zero_four:"Vier hundert vier",you_got_lost:"Hoppla! Du hast dich verirrt!",go_home:"Geh zur\xFCck",test_mail_conf:"E-Mail Konfiguration testen",send_mail_successfully:"E-Mail versendet erfolgreich",setting_updated:"Einstellungen erfolgreich aktualisiert",select_state:"Bundesland w\xE4hlen",select_country:"Land w\xE4hlen",select_city:"Stadt w\xE4hlen",street_1:"Stra\xDFe",street_2:"Zusatz Strasse",action_failed:"Aktion fehlgeschlagen",retry:"Wiederholen",choose_note:"Notiz ausw\xE4hlen",no_note_found:"Keine Notizen gefunden",insert_note:"Notiz einf\xFCgen"},vd={select_year:"Jahr w\xE4hlen",cards:{due_amount:"Offene Betr\xE4ge",customers:"Kunden",invoices:"Rechnungen",estimates:"Kostenvoranschl\xE4ge"},chart_info:{total_sales:"Auftr\xE4ge gesamt",total_receipts:"Zahlungen gesamt",total_expense:"Kosten gesamt",net_income:"Einnahmen Netto",year:"Jahr"},monthly_chart:{title:"Umsatz & Kosten"},recent_invoices_card:{title:"F\xE4llige Rechnungen",due_on:"F\xE4llig am",customer:"Kunden",amount_due:"Offener Betrag",actions:"Aktionen",view_all:"Alle Anzeigen"},recent_estimate_card:{title:"Aktuelle Kostenvoranschl\xE4ge",date:"Datum",customer:"Kunden",amount_due:"Betrag",actions:"Aktionen",view_all:"Alle Anzeigen"}},yd={name:"Name",description:"Beschreibung",percent:"Prozent",compound_tax:"zusammengesetzte Steuer"},bd={search:"Suchen...",customers:"Kunden",users:"Benutzer",no_results_found:"Keine Ergebnisse gefunden"},kd={title:"Kunden",add_customer:"Kunde hinzuf\xFCgen",contacts_list:"Kunden-Liste",name:"Name",mail:"E-Mail| E-Mails",statement:"Stellungnahme",display_name:"Anzeige Name",primary_contact_name:"Ansprechpartner",contact_name:"Kontakt Name",amount_due:"Offener Betrag",email:"E-Mail",address:"Adresse",phone:"Telefon",website:"Webseite",overview:"\xDCbersicht",enable_portal:"Kunden-Portal aktivieren",country:"Land",state:"Bundesland",city:"Stadt",zip_code:"PLZ",added_on:"Hinzugef\xFCgt am",action:"Aktion",password:"Passwort",street_number:"Hausnummer",primary_currency:"Prim\xE4re W\xE4hrung",description:"Beschreibung",add_new_customer:"Neuen Kunden hinzuf\xFCgen",save_customer:"Kunde speichern",update_customer:"Kunden \xE4ndern",customer:"Kunde | Kunden",new_customer:"Neuer Kunde",edit_customer:"Kunde bearbeiten",basic_info:"Basisinformation",billing_address:"Rechnungsadresse",shipping_address:"Versand-Adresse",copy_billing_address:"Rechnungsadresse kopieren",no_customers:"Noch keine Kunden!",no_customers_found:"Keine Kunden gefunden!",no_contact:"Kein Kontakt",no_contact_name:"Kein Kontaktname",list_of_customers:"Dieser Abschnitt enth\xE4lt die Liste der Kunden.",primary_display_name:"Prim\xE4rer Anzeige Name",select_currency:"W\xE4hrung w\xE4hlen",select_a_customer:"W\xE4hlen Sie einen Kunden",type_or_click:"Eingeben oder anklicken zum ausw\xE4hlen",new_transaction:"Neue Transaktion",no_matching_customers:"Es gibt keine passenden Kunden!",phone_number:"Telefonnummer",create_date:"Erstellungsdatum",confirm_delete:"Sie k\xF6nnen diesen Kunden und alle zugeh\xF6rigen Rechnungen, Sch\xE4tzungen und Zahlungen nicht wiederherstellen. | Sie k\xF6nnen diesen Kunden und alle zugeh\xF6rigen Rechnungen, Sch\xE4tzungen und Zahlungen nicht wiederherstellen.",created_message:"Benutzer erfolgreich erstellt",updated_message:"Kunde erfolgreich aktualisiert",deleted_message:"Kunden erfolgreich gel\xF6scht | Kunden erfolgreich gel\xF6scht"},wd={title:"Artikel",items_list:"Artikel-Liste",name:"Name",unit:"Einheit",description:"Beschreibung",added_on:"Hinzugef\xFCgt am",price:"Preis",date_of_creation:"Erstellt am",not_selected:"Keine ausgew\xE4hlt",action:"Aktion",add_item:"Artikel hinzuf\xFCgen",save_item:"Artikel speichern",update_item:"Artikel \xE4ndern",item:"Artikel | Artikel",add_new_item:"Neuen Artikel hinzuf\xFCgen",new_item:"Neuer Artikel",edit_item:"Artikel bearbeiten",no_items:"Keine Artikel vorhanden!",list_of_items:"Dieser Abschnitt enth\xE4lt die Liste der Artikel.",select_a_unit:"w\xE4hlen Sie die Einheit",taxes:"Steuern",item_attached_message:"Ein Artikel der bereits verwendet wird kann nicht gel\xF6scht werden",confirm_delete:"Sie k\xF6nnen diesen Artikel nicht wiederherstellen | Sie k\xF6nnen diese Artikel nicht wiederherstellen",created_message:"Artikel erfolgreich erstellt",updated_message:"Artikel erfolgreich aktualisiert",deleted_message:"Artikel erfolgreich gel\xF6scht | Artikel erfolgreich gel\xF6scht"},xd={title:"Kostenvoranschl\xE4ge",estimate:"Kostenvoranschlag | Kostenvoranschl\xE4ge",estimates_list:"Liste Kostenvoranschl\xE4ge",days:"{days} Tage",months:"{months} Monat",years:"{years} Jahre",all:"Alle",paid:"Bezahlt",unpaid:"Unbezahlte",customer:"KUNDEN",ref_no:"REF. - NR.",number:"ANZAHL",amount_due:"OFFENER BETRAG",partially_paid:"Teilweise bezahlt",total:"Gesamt",discount:"Rabatt",sub_total:"Zwischensumme",estimate_number:"Kostenvoran. Nummer",ref_number:"Ref-Nummer",contact:"Kontakt",add_item:"F\xFCgen Sie ein Artikel hinzu",date:"Datum",due_date:"F\xE4lligkeit",expiry_date:"Zahlungsziel",status:"Status",add_tax:"Steuer hinzuf\xFCgen",amount:"Summe",action:"Aktion",notes:"Hinweise",tax:"Steuer",estimate_template:"Vorlage",convert_to_invoice:"Konvertieren in Rechnung",mark_as_sent:"Als gesendet markieren",send_estimate:"Kostenvoranschlag senden",resend_estimate:"Kostenvoranschlag erneut senden",record_payment:"Zahlung erfassen",add_estimate:"Kostenvoranschlag hinzuf\xFCgen",save_estimate:"Kostenvoranschlag speichern",confirm_conversion:"Sie m\xF6chten, konvertieren Sie diese Sch\xE4tzung in die Rechnung?",conversion_message:"Rechnung erfolgreich erstellt",confirm_send_estimate:"Der Kostenvoranschlag wird per E-Mail an den Kunden gesendet",confirm_mark_as_sent:"Dieser Kostenvoranschlag wird als gesendet markiert",confirm_mark_as_accepted:"Dieser Kostenvoranschlag wird als angenommen markiert",confirm_mark_as_rejected:"Dieser Kostenvoranschlag wird als abgelehnt markiert",no_matching_estimates:"Es gibt keine \xFCbereinstimmenden Kostenvoranschl\xE4ge!",mark_as_sent_successfully:"Kostenvoranschlag als gesendet markiert.",send_estimate_successfully:"Kostenvoranschlag erfolgreich gesendet",errors:{required:"Feld ist erforderlich"},accepted:"Angenommen",rejected:"Abgelehnt",sent:"Gesendet",draft:"Entwurf",declined:"Abgelehnt",new_estimate:"Neuer Kostenvoranschlag",add_new_estimate:"Neuen Kostenvoranschlag hinzuf\xFCgen",update_Estimate:"Kostenvoranschlag aktualisieren",edit_estimate:"Kostenvoranschlag \xE4ndern",items:"Artikel",Estimate:"Kostenvoranschlag | Kostenvoranschl\xE4ge",add_new_tax:"neuen Steuersatz hinzuf\xFCgen",no_estimates:"Keine Kostenvoranschl\xE4ge vorhanden!",list_of_estimates:"Dieser Abschnitt enth\xE4lt die Liste der Kostenvoranschl\xE4ge.",mark_as_rejected:"Markiert als abgelehnt",mark_as_accepted:"Markiert als angenommen",marked_as_accepted_message:"Kostenvoranschlag als angenommen markiert",marked_as_rejected_message:"Kostenvoranschlag als abgelehnt markiert",confirm_delete:"Der Kostenvoranschlag kann nicht wiederhergestellt werden | Die Kostenvoranschl\xE4ge k\xF6nnen nicht wiederhergestellt werden",created_message:"Kostenvoranschlag erfolgreich erstellt",updated_message:"Kostenvoranschlag erfolgreich aktualisiert",deleted_message:"Kostenvoranschlag erfolgreich gel\xF6scht | Kostenvoranschl\xE4ge erfolgreich gel\xF6scht",something_went_wrong:"Da ging etwas schief",item:{title:"Titel",description:"Beschreibung",quantity:"Menge",price:"Preis",discount:"Rabatt",total:"Gesamt",total_discount:"Rabatt Gesamt",sub_total:"Zwischensumme",tax:"Steuer",amount:"Summe",select_an_item:"W\xE4hlen Sie einen Artikel",type_item_description:"Artikel Beschreibung (optional)"}},zd={title:"Rechnungen",invoices_list:"Liste der Rechnungen",days:"{days} Tage",months:"{months} Monat",years:"{years} Jahre",all:"Alle",paid:"Bezahlt",unpaid:"Unbezahlt",viewed:"Gesehen",overdue:"\xDCberf\xE4llig",completed:"Abgeschlossen",customer:"KUNDEN",paid_status:"BEZAHLT-STATUS",ref_no:"REF. - NR.",number:"ANZAHL",amount_due:"OFFENER BETRAG",partially_paid:"Teilzahlung",total:"Gesamt",discount:"Rabatt",sub_total:"Zwischensumme",invoice:"Rechnung | Rechnungen",invoice_number:"Rechnungsnummer",ref_number:"Ref-Nummer",contact:"Kontakt",add_item:"F\xFCgen Sie ein Artikel hinzu",date:"Datum",due_date:"F\xE4lligkeit",status:"Status",add_tax:"Steuersatz hinzuf\xFCgen",amount:"Summe",action:"Aktion",notes:"Hinweise",view:"Anzeigen",send_invoice:"Rechnung senden",resend_invoice:"Rechnung erneut senden",invoice_template:"Rechnungs-Vorlage",template:"Vorlage",mark_as_sent:"Als gesendet markieren",confirm_send_invoice:"Diese Rechnung wird per E-Mail an den Kunden gesendet",invoice_mark_as_sent:"Diese Rechnung wird als gesendet markiert",confirm_send:"Diese Rechnung wird per E-Mail an den Kunden gesendet",invoice_date:"Rechnungsdatum",record_payment:"Zahlung erfassen",add_new_invoice:"Neue Rechnung hinzuf\xFCgen",update_expense:"Kosten aktualisieren",edit_invoice:"Rechnung bearbeiten",new_invoice:"Neue Rechnung",save_invoice:"Rechnung speichern",update_invoice:"Rechnung \xE4ndern",add_new_tax:"Neuen Steuersatz hinzuf\xFCgen",no_invoices:"Keine Rechnungen vorhanden!",list_of_invoices:"Dieser Abschnitt enth\xE4lt die Liste der Rechnungen.",select_invoice:"W\xE4hlen Sie eine Rechnung",no_matching_invoices:"Es gibt keine entsprechenden Rechnungen!",mark_as_sent_successfully:"Rechnung gekennzeichnet als erfolgreich gesendet",invoice_sent_successfully:"Rechnung erfolgreich versendet",cloned_successfully:"Rechnung erfolgreich kopiert",clone_invoice:"Rechnung kopieren",confirm_clone:"Diese Rechnung wird kopiert",item:{title:"Titel",description:"Beschreibung",quantity:"Menge",price:"Preis",discount:"Rabatt",total:"Gesamt",total_discount:"Rabatt Gesamt",sub_total:"Zwischensumme",tax:"Steuer",amount:"Summe",select_an_item:"Geben Sie oder w\xE4hlen Sie ein Artikel",type_item_description:"Artikel Beschreibung (optional)"},confirm_delete:"Sie k\xF6nnen diese Rechnung nicht wiederherstellen. | Sie k\xF6nnen diese Rechnungen nicht wiederherstellen.",created_message:"Rechnung erfolgreich erstellt",updated_message:"Rechnung erfolgreich aktualisiert",deleted_message:"Rechnung erfolgreich gel\xF6scht | Rechnungen erfolgreich gel\xF6scht",marked_as_sent_message:"Rechnung als erfolgreich gesendet markiert",something_went_wrong:"Da ist etwas schief gelaufen",invalid_due_amount_message:"Der Gesamtrechnungsbetrag darf nicht kleiner sein als der f\xFCr diese Rechnung bezahlte Gesamtbetrag. Bitte aktualisieren Sie die Rechnung oder l\xF6schen Sie die zugeh\xF6rigen Zahlungen um fortzufahren."},Sd={title:"Zahlungen",payments_list:"Liste der Zahlungen",record_payment:"Zahlung eintragen",customer:"Kunden",date:"Datum",amount:"Summe",action:"Aktion",payment_number:"Zahlungsnummer",payment_mode:"Zahlungsart",invoice:"Rechnung",note:"Hinweis",add_payment:"Zahlung hinzuf\xFCgen",new_payment:"Neue Zahlung",edit_payment:"Zahlung bearbeiten",view_payment:"Zahlung anzeigen",add_new_payment:"Neue Zahlung hinzuf\xFCgen",send_payment_receipt:"Zahlungsbeleg senden",send_payment:"Senden Sie die Zahlung",save_payment:"Zahlung speichern",update_payment:"Zahlung \xE4ndern",payment:"Zahlung | Zahlungen",no_payments:"Keine Zahlungen vorhanden!",not_selected:"Nicht ausgew\xE4hlt",no_invoice:"Keine Rechnung",no_matching_payments:"Es gibt keine passenden Zahlungen!",list_of_payments:"Dieser Abschnitt enth\xE4lt die Liste der Zahlungen.",select_payment_mode:"W\xE4hlen Sie den Zahlungsmodus",confirm_mark_as_sent:"Dieser Kostenvoranschlag wird als gesendet markiert",confirm_send_payment:"Diese Zahlung wird per E-Mail an den Kunden gesendet",send_payment_successfully:"Zahlung erfolgreich gesendet",something_went_wrong:"Da ist etwas schief gelaufen",confirm_delete:"Sie k\xF6nnen diese Zahlung nicht wiederherstellen. | Sie k\xF6nnen diese Zahlungen nicht wiederherstellen.",created_message:"Zahlung erfolgreich erstellt",updated_message:"Zahlung erfolgreich aktualisiert",deleted_message:"Zahlung erfolgreich gel\xF6scht | Zahlungen erfolgreich gel\xF6scht",invalid_amount_message:"Zahlungsbetrag ist ung\xFCltig"},jd={title:"Aufwendungen/Ausgaben",expenses_list:"Liste der Ausgaben",select_a_customer:"W\xE4hlen Sie einen Kunden",expense_title:"Titel",customer:"Kundin",contact:"Kontakt",category:"Kategorie",from_date:"Von Datum",to_date:"bis Datum",expense_date:"Datum",description:"Beschreibung",receipt:"Eingang",amount:"Summe",not_selected:"Nicht ausgew\xE4hlt",action:"Aktion",note:"Hinweis",category_id:"Kategorie-Id",date:"Aufwandsdatum",add_expense:"Aufwendung hinzuf\xFCgen",add_new_expense:"Neue Aufwendung hinzuf\xFCgen",save_expense:"Aufwendung speichern",update_expense:"Aufwendung aktualisieren",download_receipt:"Quittung herunterladen",edit_expense:"Aufwendung \xE4ndern",new_expense:"Neue Aufwendung",expense:"Aufwendung | Aufwendungen",no_expenses:"Noch keine Ausgaben!",list_of_expenses:"Dieser Abschnitt enth\xE4lt die Liste der Ausgaben.",confirm_delete:"Sie k\xF6nnen diese Ausgabe nicht wiederherstellen. | Sie k\xF6nnen diese Ausgaben nicht wiederherstellen.",created_message:"Aufwand erfolgreich erstellt",updated_message:"Aufwand erfolgreich aktualisiert",deleted_message:"Aufwand erfolgreich gel\xF6scht | Aufwand erfolgreich gel\xF6scht",categories:{categories_list:"Liste der Kategorien",title:"Titel",name:"Name",description:"Beschreibung",amount:"Summe",actions:"Aktionen",add_category:"Kategorie hinzuf\xFCgen",new_category:"Neue Kategorie",category:"Kategorie | Kategorien",select_a_category:"W\xE4hlen Sie eine Kategorie"}},Pd={email:"E-Mail",password:"Passwort",forgot_password:"Passwort vergessen?",or_signIn_with:"oder Anmelden mit",login:"Anmelden",register:"Registrieren",reset_password:"Passwort zur\xFCcksetzen",password_reset_successfully:"Passwort erfolgreich zur\xFCckgesetzt",enter_email:"Geben Sie Ihre E-Mail ein",enter_password:"Geben Sie das Passwort ein",retype_password:"Passwort best\xE4tigen"},Dd={title:"Benutzer",users_list:"Benutzerliste",name:"Name",description:"Beschreibung",added_on:"Hinzugef\xFCgt am",date_of_creation:"Erstellt am",action:"Aktion",add_user:"Benutzer hinzuf\xFCgen",save_user:"Benutzer speichern",update_user:"Benutzer aktualisieren",user:"Benutzer",add_new_user:"Neuen Benutzer hinzuf\xFCgen",new_user:"Neuer Benutzer",edit_user:"Benutzer bearbeiten",no_users:"Noch keine Benutzer!",list_of_users:"Dieser Abschnitt enth\xE4lt die Liste der Benutzer.",email:"E-Mail",phone:"Telefon",password:"Passwort",user_attached_message:"Ein Artikel der bereits verwendet wird kann nicht gel\xF6scht werden",confirm_delete:"Sie werden diesen Benutzer nicht wiederherstellen k\xF6nnen | Sie werden nicht in der Lage sein, diese Benutzer wiederherzustellen",created_message:"Benutzer erfolgreich erstellt",updated_message:"Benutzer wurde erfolgreich aktualisiert",deleted_message:"Benutzer erfolgreich gel\xF6scht | Benutzer erfolgreich gel\xF6scht"},Cd={title:"Bericht",from_date:"Ab Datum",to_date:"bis Datum",status:"Status",paid:"Bezahlt",unpaid:"Unbezahlt",download_pdf:"PDF herunterladen",view_pdf:"PDF anzeigen",update_report:"Bericht aktualisieren",report:"Bericht | Berichte",profit_loss:{profit_loss:"Gewinn & Verlust",to_date:"bis Datum",from_date:"Ab Datum",date_range:"Datumsbereich ausw\xE4hlen"},sales:{sales:"Umsatz",date_range:"Datumsbereich ausw\xE4hlen",to_date:"bis Datum",from_date:"Ab Datum",report_type:"Berichtstyp"},taxes:{taxes:"Steuern",to_date:"bis Datum",from_date:"Ab Datum",date_range:"Datumsbereich ausw\xE4hlen"},errors:{required:"Feld ist erforderlich"},invoices:{invoice:"Rechnung",invoice_date:"Rechnungsdatum",due_date:"F\xE4lligkeit",amount:"Summe",contact_name:"Ansprechpartner",status:"Status"},estimates:{estimate:"Kostenvoranschlag",estimate_date:"Datum Kostenvoranschlag",due_date:"F\xE4lligkeit",estimate_number:"Kostenvoranschlag-Nr.",ref_number:"Ref-Nummer",amount:"Summe",contact_name:"Ansprechpartner",status:"Status"},expenses:{expenses:"Aufwendungen",category:"Kategorie",date:"Datum",amount:"Summe",to_date:"bis Datum",from_date:"Ab Datum",date_range:"Datumsbereich ausw\xE4hlen"}},Ad={menu_title:{account_settings:"Konto-Einstellungen",company_information:"Informationen zum Unternehmen",customization:"Anpassung",preferences:"Einstellungen",notifications:"Benachrichtigungen",tax_types:"Steuers\xE4tze",expense_category:"Ausgabenkategorien",update_app:"Applikation aktualisieren",backup:"Sicherung",file_disk:"Dateispeicher",custom_fields:"Benutzerdefinierte Felder",payment_modes:"Zahlungsarten",notes:"Hinweise"},title:"Einstellungen",setting:"Einstellung | Einstellungen",general:"Allgemeine",language:"Sprache",primary_currency:"Prim\xE4re W\xE4hrung",timezone:"Zeitzone",date_format:"Datum-Format",currencies:{title:"W\xE4hrungen",currency:"W\xE4hrung | W\xE4hrungen",currencies_list:"W\xE4hrungen Liste",select_currency:"W\xE4hrung w\xE4hlen",name:"Name",code:"Code",symbol:"Symbol",precision:"Pr\xE4zision",thousand_separator:"Tausendertrennzeichen",decimal_separator:"Dezimal-Trennzeichen",position:"Position",position_of_symbol:"Position des W\xE4hrungssymbol",right:"Rechts",left:"Links",action:"Aktion",add_currency:"W\xE4hrung einf\xFCgen"},mail:{host:"E-Mail Mailserver",port:"E-Mail Port",driver:"E-Mail Treiber",secret:"Verschl\xFCsselung",mailgun_secret:"Mailgun Verschl\xFCsselung",mailgun_domain:"Mailgun Adresse",mailgun_endpoint:"Mailgun-Endpunkt",ses_secret:"SES Verschl\xFCsselung",ses_key:"SES-Taste",password:"E-Mail-Kennwort",username:"E-Mail-Benutzername",mail_config:"E-Mail-Konfiguration",from_name:"Von E-Mail-Namen",from_mail:"Von E-Mail-Adresse",encryption:"E-Mail-Verschl\xFCsselung",mail_config_desc:"Unten finden Sie das Formular zum Konfigurieren des E-Mail-Treibers zum Senden von E-Mails \xFCber die App. Sie k\xF6nnen auch Drittanbieter wie Sendgrid, SES usw. konfigurieren."},pdf:{title:"PDF-Einstellung",footer_text:"Fu\xDFzeile Text",pdf_layout:"PDF-Layout"},company_info:{company_info:"Firmeninfo",company_name:"Name des Unternehmens",company_logo:"Firmenlogo",section_description:"Informationen zu Ihrem Unternehmen, die auf Rechnungen, Kostenvoranschl\xE4gen und anderen von Crater erstellten Dokumenten angezeigt werden.",phone:"Telefon",country:"Land",state:"Bundesland",city:"Stadt",address:"Adresse",zip:"PLZ",save:"Speichern",updated_message:"Unternehmensinformationen wurden erfolgreich aktualisiert"},custom_fields:{title:"Benutzerdefinierte Felder",section_description:"Passen Sie Ihre Rechnungen, Kostenvoranschl\xE4ge und Zahlungseinnahmen mit Ihren eigenen Feldern an. Benutzen Sie die unten aufgef\xFChrten Felder in den Adressformaten auf der Seite Anpassungseinstellungen.",add_custom_field:"Benutzerdefiniertes Feld hinzuf\xFCgen",edit_custom_field:"Benutzerdefiniertes Feld bearbeiten",field_name:"Feldname",label:"Etikette",type:"Art",name:"Name",required:"Erforderlich",placeholder:"Platzhalter",help_text:"Hilfstext",default_value:"Standardwert",prefix:"Pr\xE4fix",starting_number:"Startnummer",model:"Modell",help_text_description:"Geben Sie einen Text ein, damit Benutzer den Zweck dieses benutzerdefinierten Felds verstehen.",suffix:"Vorzeichen",yes:"Ja",no:"Nein",order:"Auftrag",custom_field_confirm_delete:"Sie k\xF6nnen dieses benutzerdefinierte Feld nicht wiederherstellen",already_in_use:"Benutzerdefiniertes Feld wird bereits verwendet",deleted_message:"Benutzerdefiniertes Feld erfolgreich gel\xF6scht",options:"Optionen",add_option:"Optionen hinzuf\xFCgen",add_another_option:"F\xFCgen Sie eine weitere Option hinzu",sort_in_alphabetical_order:"In alphabetischer Reihenfolge sortieren",add_options_in_bulk:"F\xFCgen Sie Optionen in gro\xDFen Mengen hinzu",use_predefined_options:"Verwenden Sie vordefinierte Optionen",select_custom_date:"W\xE4hlen Sie Benutzerdefiniertes Datum",select_relative_date:"W\xE4hlen Sie Relatives Datum",ticked_by_default:"Standardm\xE4\xDFig aktiviert",updated_message:"Benutzerdefiniertes Feld erfolgreich aktualisiert",added_message:"Benutzerdefiniertes Feld erfolgreich hinzugef\xFCgt"},customization:{customization:"Anpassung",save:"Speichern",addresses:{title:"Adressen",section_description:"Sie k\xF6nnen die Rechnungsadresse und das Versandadressenformat des Kunden festlegen (nur in PDF angezeigt). ",customer_billing_address:"Rechnungsadresse des Kunden",customer_shipping_address:"Versand-Adresse des Kunden",company_address:"Firma Adresse",insert_fields:"Felder einf\xFCgen",contact:"Kontakt",address:"Adresse",display_name:"Anzeigename",primary_contact_name:"Ansprechpartner",email:"E-Mail",website:"Webseite",name:"Name",country:"Land",state:"Bundesland",city:"Stadt",company_name:"Name des Unternehmens",address_street_1:"Strasse",address_street_2:"Zusatz Strasse",phone:"Telefon",zip_code:"PLZ",address_setting_updated:"Adresse-Einstellung erfolgreich aktualisiert"},updated_message:"Unternehmensinformationen wurden erfolgreich aktualisiert",invoices:{title:"Rechnungen",notes:"Hinweise",invoice_prefix:"Rechnung Pr\xE4fix",invoice_number_length:"Rechnungsnummerl\xE4nge",default_invoice_email_body:"Standard Rechnung E-Mail Inhalt",invoice_settings:"Rechnungseinstellungen",autogenerate_invoice_number:"Rechnungsnummer automatisch generieren",autogenerate_invoice_number_desc:"Deaktivieren Sie diese Option, wenn Sie Rechnungsnummern nicht jedes Mal automatisch generieren m\xF6chten, wenn Sie eine neue Rechnung erstellen.",enter_invoice_prefix:"Rechnungspr\xE4fix eingeben",terms_and_conditions:"Allgemeine Gesch\xE4ftsbedingungen",company_address_format:"Firmenadressformat",shipping_address_format:"Versandadressen Format",billing_address_format:"Rechnungsadressen Format",invoice_settings_updated:"Rechnungseinstellung erfolgreich aktualisiert"},estimates:{title:"Kostenvoranschl\xE4ge",estimate_prefix:"Kostenvoranschlag Pr\xE4fix",estimate_number_length:"Angebotsnummerl\xE4nge",default_estimate_email_body:"Rechnung - E-Mail Text",estimate_settings:"Einstellungen Kostenvoranschlag",autogenerate_estimate_number:"Kostenvoranschlagsnummer automatisch generieren",estimate_setting_description:"Deaktivieren Sie diese Option, wenn Sie nicht jedes Mal, wenn Sie einen neue Kostenvoranschlag erstellen, automatisch eine Sch\xE4tzung generieren m\xF6chten.",enter_estimate_prefix:"Geben Sie das Kostenvoranschlag Pr\xE4fix ein",estimate_setting_updated:"Einstellungen Kostenvoranschl\xE4ge erfolgreich aktualisiert",company_address_format:"Firmenadresse Format",billing_address_format:"Rechnungsadressen Format",shipping_address_format:"Versandadressen Format"},payments:{title:"Zahlungen",description:"Transaktionsmodi f\xFCr Zahlungen",payment_prefix:"Zahlung Pr\xE4fix",payment_number_length:"Zahlungsnummerl\xE4nge",default_payment_email_body:"Zahlung - E-Mail Text",payment_settings:"Zahlung Einstellungen",autogenerate_payment_number:"Zahlungsnummer automatisch generieren",payment_setting_description:"Deaktivieren Sie diese Option, wenn Sie nicht jedes Mal, wenn Sie eine neue Zahlung erstellen, automatisch Zahlungsnummern generieren m\xF6chten.",enter_payment_prefix:"Zahlungspr\xE4fix eingeben",payment_setting_updated:"Zahlungseinstellung erfolgreich aktualisiert",payment_modes:"Zahlungsarten",add_payment_mode:"Zahlungsmethode hinzuf\xFCgen",edit_payment_mode:"Zahlungsmodus bearbeiten",mode_name:"Methodenname",payment_mode_added:"Zahlungsmethode hinzugef\xFCgt",payment_mode_updated:"Zahlungsmethode aktualisiert",payment_mode_confirm_delete:"Du kannst diese Zahlungsmethode nicht wiederherstellen",already_in_use:"Zahlungsmethode bereits in Verwendung",deleted_message:"Zahlungsmethode erfolgreich",company_address_format:"Firmenadressformat",from_customer_address_format:"Rechnungsadressen Format"},items:{title:"Artikel",units:"Einheiten",add_item_unit:"Artikeleinheit hinzuf\xFCgen",edit_item_unit:"Elementeinheit bearbeiten",unit_name:"Einheitname",item_unit_added:"Artikeleinheit hinzugef\xFCgt",item_unit_updated:"Artikeleinheit aktualisiert",item_unit_confirm_delete:"Du kannst diese Artikeleinheit nicht wiederherstellen",already_in_use:"Diese Artikeleinheit ist bereits in Verwendung",deleted_message:"Artikeleinheit erfolgreich gel\xF6scht"},notes:{title:"Hinweise",description:"Sparen Sie Zeit, indem Sie Notizen erstellen und diese auf Ihren Rechnungen, Kostenvoranschl\xE4gen und Zahlungen wiederverwenden.",notes:"Hinweise",type:"Art",add_note:"Notiz hinzuf\xFCgen",add_new_note:"Neue Notiz hinzuf\xFCgen",name:"Name",edit_note:"Notiz bearbeiten",note_added:"Notiz erfolgreich hinzugef\xFCgt",note_updated:"Notiz erfolgreich aktualisiert",note_confirm_delete:"Dieser Hinweis wird unwiderruflich gel\xF6scht",already_in_use:"Hinweis bereits in verwendet",deleted_message:"Notiz erfolgreich gel\xF6scht"}},account_settings:{profile_picture:"Profil Bild",name:"Name",email:"E-Mail",password:"Passwort",confirm_password:"Kennwort Best\xE4tigen",account_settings:"Konto-Einstellungen",save:"Speichern",section_description:"Sie k\xF6nnen Ihren Namen, Ihre E-Mail-Adresse und Ihr Passwort mit dem folgenden Formular aktualisieren.",updated_message:"Kontoeinstellungen erfolgreich aktualisiert"},user_profile:{name:"Name",email:"E-Mail",password:"Passwort",confirm_password:"Kennwort best\xE4tigen"},notification:{title:"Benachrichtigung",email:"Benachrichtigungen senden an",description:"Welche E-Mail-Benachrichtigungen m\xF6chten Sie erhalten wenn sich etwas \xE4ndert?",invoice_viewed:"Rechnung angezeigt",invoice_viewed_desc:"Wenn Ihr Kunde die gesendete Rechnung anzeigt bekommt.",estimate_viewed:"Kostenvoranschlag angesehen",estimate_viewed_desc:"Wenn Ihr Kunde den gesendeten Kostenvoranschlag anzeigt bekommt.",save:"Speichern",email_save_message:"Email erfolgreich gespeichert",please_enter_email:"Bitte E-Mail eingeben"},tax_types:{title:"Steuers\xE4tze",add_tax:"Steuers\xE4tze hinzuf\xFCgen",edit_tax:"Steuer bearbeiten",description:"Sie k\xF6nnen Steuern nach Belieben hinzuf\xFCgen oder entfernen. Crater unterst\xFCtzt Steuern auf einzelne Artikel sowie auf die Rechnung.",add_new_tax:"Neuen Steuersatz hinzuf\xFCgen",tax_settings:"Einstellungen Steuersatz",tax_per_item:"Steuersatz pro Artikel",tax_name:"Name des Steuersatzes",compound_tax:"zusammengesetzte Steuer",percent:"Prozent",action:"Aktion",tax_setting_description:"Aktivieren Sie diese Option, wenn Sie den Steuersatz zu einzelnen Rechnungspositionen hinzuf\xFCgen m\xF6chten. Standardm\xE4\xDFig wird der Steuersatz direkt zur Rechnung hinzugef\xFCgt.",created_message:"Steuersatz erfolgreich erstellt",updated_message:"Steuersatz erfolgreich aktualisiert",deleted_message:"Steuersatz erfolgreich gel\xF6scht",confirm_delete:"Sie k\xF6nnen diesen Steuersatz nicht wiederherstellen",already_in_use:"Steuersatz wird bereits verwendet"},expense_category:{title:"Kategorien Kosten",action:"Aktion",description:"F\xFCr das Hinzuf\xFCgen von Ausgabeneintr\xE4gen sind Kategorien erforderlich. Sie k\xF6nnen diese Kategorien nach Ihren W\xFCnschen hinzuf\xFCgen oder entfernen.",add_new_category:"Neue Kategorie hinzuf\xFCgen",add_category:"Kategorie hinzuf\xFCgen",edit_category:"Kategorie bearbeiten",category_name:"Kategorie Name",category_description:"Beschreibung",created_message:"Ausgabenkategorie erfolgreich erstellt",deleted_message:"Ausgabenkategorie erfolgreich gel\xF6scht",updated_message:"Ausgabenkategorie erfolgreich aktualisiert",confirm_delete:"Sie k\xF6nnen diese Ausgabenkategorie nicht wiederherstellen",already_in_use:"Kategorie wird bereits verwendet"},preferences:{currency:"W\xE4hrung",default_language:"Standardsprache",time_zone:"Zeitzone",fiscal_year:"Gesch\xE4ftsjahr",date_format:"Datum-Format",discount_setting:"Einstellung Rabatt",discount_per_item:"Rabatt pro Artikel ",discount_setting_description:"Aktivieren Sie diese Option, wenn Sie einzelnen Rechnungspositionen einen Rabatt hinzuf\xFCgen m\xF6chten. Standardm\xE4\xDFig wird der Rabatt direkt zur Rechnung hinzugef\xFCgt.",save:"Speichern",preference:"Pr\xE4ferenz | Pr\xE4ferenzen",general_settings:"Standardeinstellungen f\xFCr das System.",updated_message:"Einstellungen erfolgreich aktualisiert",select_language:"Sprache ausw\xE4hlen",select_time_zone:"Zeitzone ausw\xE4hlen",select_date_format:"W\xE4hle das Datumsformat",select_financial_year:"Gesch\xE4ftsjahr ausw\xE4hlen"},update_app:{title:"Applikation aktualisieren",description:"Sie k\xF6nnen Crater ganz einfach aktualisieren, indem Sie auf die Schaltfl\xE4che unten klicken, um nach einem neuen Update zu suchen.",check_update:"Nach Updates suchen",avail_update:"Neues Update verf\xFCgbar",next_version:"N\xE4chste Version",requirements:"Voraussetzungen",update:"Jetzt aktualisieren",update_progress:"Update l\xE4uft ...",progress_text:"Es dauert nur ein paar Minuten. Bitte aktualisieren Sie den Bildschirm nicht und schlie\xDFen Sie das Fenster nicht, bevor das Update abgeschlossen ist.",update_success:"App wurde aktualisiert! Bitte warten Sie, w\xE4hrend Ihr Browserfenster automatisch neu geladen wird.",latest_message:"Kein Update verf\xFCgbar! Du bist auf der neuesten Version.",current_version:"Aktuelle Version",download_zip_file:"Laden Sie die ZIP-Datei herunter",unzipping_package:"Paket entpacken",copying_files:"Dateien kopieren",running_migrations:"Ausf\xFChren von Migrationen",finishing_update:"Update beenden",update_failed:"Update fehlgeschlagen",update_failed_text:"Es tut uns leid! Ihr Update ist am folgenden Schritt fehlgeschlagen: {step}"},backup:{title:"Sicherung | Sicherungen",description:"Die Sicherung ist eine ZIP-Datei, die alle Dateien der ausgew\xE4hlten Pfade und eine Kopie der Datenbank enth\xE4lt",new_backup:"Neues Backup",create_backup:"Datensicherung erstellen",select_backup_type:"W\xE4hlen Sie den Sicherungs-Typ",backup_confirm_delete:"Dieses Backup wird unwiderruflich gel\xF6scht",path:"Pfad",new_disk:"Speicher hinzuf\xFCgen",created_at:"erstellt am",size:"Gr\xF6\xDFe",dropbox:"Dropbox",local:"Lokal",healthy:"intakt",amount_of_backups:"Menge an Sicherungen",newest_backups:"Neuste Sicherung",used_storage:"Verwendeter Speicher",select_disk:"Speicher ausw\xE4hlen",action:"Aktion",deleted_message:"Sicherung erfolgreich gel\xF6scht",created_message:"Backup erfolgreich erstellt",invalid_disk_credentials:"Ung\xFCltige Anmeldeinformationen f\xFCr ausgew\xE4hlten Speicher"},disk:{title:"Dateispeicher | Dateispeicher",description:"Standardm\xE4\xDFig verwendet Crater Ihre lokale Festplatte zum Speichern von Sicherungen, Avatar und anderen Bilddateien. Sie k\xF6nnen mehr als einen Speicherort wie DigitalOcean, S3 und Dropbox nach Ihren W\xFCnschen konfigurieren.",created_at:"erstellt am",dropbox:"Dropbox",name:"Name",driver:"Treiber",disk_type:"Art",disk_name:"Speicher Bezeichnung",new_disk:"Speicher hinzuf\xFCgen",filesystem_driver:"Dateisystem-Treiber",local_driver:"Lokaler Treiber",local_root:"lokaler Pfad",public_driver:"\xD6ffentlicher Treiber",public_root:"\xD6ffentlicher Pfad",public_url:"\xD6ffentliche URL",public_visibility:"\xD6ffentliche Sichtbarkeit",media_driver:"Medientreiber",media_root:"Medienpfad",aws_driver:"AWS-Treiber",aws_key:"AWS-Schl\xFCssel",aws_secret:"AWS-Geheimnis",aws_region:"AWS-Region",aws_bucket:"AWS Bucket",aws_root:"AWS-Pfad",do_spaces_type:"Do Spaces-Typ",do_spaces_key:"Do Spaces-Schl\xFCssel",do_spaces_secret:"Do Spaces-Geheimnis",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Dropbox Type",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Key",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Standard-Treiber",is_default:"Standard",set_default_disk:"Als Standard festlegen",success_set_default_disk:"Speicher wurde als Standard festgelegt",save_pdf_to_disk:"PDFs auf Festplatte speichern",disk_setting_description:" Aktivieren Sie dies, um eine Kopie von jeder Rechnung, jedem Kostenvoranschlag & jedem Zahlungsbelegung als PDF automatisch auf ihrem Standard-Speicher abzulegen. Wenn Sie diese Option aktivieren, verringert sich die Ladezeit beim Betrachten der PDFs.",select_disk:"Speicherort ausw\xE4hlen",disk_settings:"Speichermedienkonfiguration",confirm_delete:"Ihre existierenden Dateien und Ordner auf der angegebenen Festplatte werden nicht beeinflusst, aber Dieser Speicherort wird aus Crater gel\xF6scht",action:"Aktion",edit_file_disk:"Edit File Disk",success_create:"Speicher erfolgreich hinzugef\xFCgt",success_update:"Speicher erfolgreich bearbeitet",error:"Hinzuf\xFCgen des Speichers gescheitert",deleted_message:"Speicher erfolgreich gel\xF6scht",disk_variables_save_successfully:"Speicher erfolgreich konfiguriert",disk_variables_save_error:"Konfiguration des Speicher gescheitert",invalid_disk_credentials:"Ung\xFCltige Anmeldeinformationen f\xFCr ausgew\xE4hlten Speicher"}},Ed={account_info:"Account-Informationen",account_info_desc:"Die folgenden Details werden zum Erstellen des Hauptadministratorkontos verwendet. Sie k\xF6nnen die Details auch jederzeit nach dem Anmelden \xE4ndern.",name:"Name",email:"E-Mail",password:"Passwort",confirm_password:"Passwort best\xE4tigen",save_cont:"Speichern und weiter",company_info:"Unternehmensinformationen",company_info_desc:"Diese Informationen werden auf Rechnungen angezeigt. Beachten Sie, dass Sie diese sp\xE4ter auf der Einstellungsseite bearbeiten k\xF6nnen.",company_name:"Firmenname",company_logo:"Firmenlogo",logo_preview:"Vorschau Logo",preferences:"Einstellungen",preferences_desc:"Standardeinstellungen f\xFCr das System.",country:"Land",state:"Bundesland",city:"Stadt",address:"Adresse",street:"Stra\xDFe1 | Stra\xDFe2",phone:"Telefon",zip_code:"Postleitzahl",go_back:"Zur\xFCck",currency:"W\xE4hrung",language:"Sprache",time_zone:"Zeitzone",fiscal_year:"Gesch\xE4ftsjahr",date_format:"Datumsformat",from_address:"Absender",username:"Benutzername",next:"Weiter",continue:"Weiter",skip:"\xDCberspringen",database:{database:"URL der Seite & Datenbank",connection:"Datenbank Verbindung",host:"Datenbank Host",port:"Datenbank Port",password:"Datenbank Passwort",app_url:"App-URL",app_domain:"Domain der App",username:"Datenbank Benutzername",db_name:"Datenbank Name",db_path:"Datenbankpfad",desc:"Erstellen Sie eine Datenbank auf Ihrem Server und legen Sie die Anmeldeinformationen mithilfe des folgenden Formulars fest."},permissions:{permissions:"Berechtigungen",permission_confirm_title:"Sind Sie sicher, dass Sie fortfahren m\xF6chten?",permission_confirm_desc:"Pr\xFCfung der Berechtigung der Ordner fehlgeschlagen.",permission_desc:"Unten finden Sie eine Liste der Ordnerberechtigungen, die erforderlich sind, damit die App funktioniert. Wenn die Berechtigungspr\xFCfung fehlschl\xE4gt, m\xFCssen Sie Ihre Ordnerberechtigungen aktualisieren."},mail:{host:"E-Mail-Host",port:"E-Mail-Port",driver:"E-Mail-Treiber",secret:"Verschl\xFCsselung",mailgun_secret:"Mailgun Verschl\xFCsselung",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun-Endpunkt",ses_secret:"SES Verschl\xFCsselung",ses_key:"SES-Taste",password:"E-Mail-Passwort",username:"E-Mail-Benutzername",mail_config:"E-Mail-Konfiguration",from_name:"Von E-Mail-Absendername",from_mail:"Von E-Mail-Absenderadresse",encryption:"E-Mail-Verschl\xFCsselung",mail_config_desc:"Unten finden Sie das Formular zum Konfigurieren des E-Mail-Treibers zum Senden von E-Mails \xFCber die App. Sie k\xF6nnen auch Drittanbieter wie Sendgrid, SES usw. konfigurieren."},req:{system_req:"System Anforderungen",php_req_version:"Php (version {version} erforderlich)",check_req:"Anforderungen pr\xFCfen",system_req_desc:"Crater hat einige Serveranforderungen. Stellen Sie sicher, dass Ihr Server die erforderliche PHP-Version und alle unten genannten Erweiterungen hat."},errors:{migrate_failed:"Migration ist Fehlgeschlagen",database_variables_save_error:"Konfiguration kann nicht in EN.env-Datei geschrieben werden. Bitte \xFCberpr\xFCfen Sie die Dateiberechtigungen.",mail_variables_save_error:"E-Mail-Konfiguration fehlgeschlagen.",connection_failed:"Datenbankverbindung fehlgeschlagen",database_should_be_empty:"Datenbank sollte leer sein"},success:{mail_variables_save_successfully:"E-Mail erfolgreich konfiguriert",database_variables_save_successfully:"Datenbank erfolgreich konfiguriert."}},Nd={invalid_phone:"Ung\xFCltige Telefonnummer",invalid_url:"Ung\xFCltige URL (Bsp.: http://www.craterapp.com)",invalid_domain_url:"Ung\xFCltige URL (Bsp.: craterapp.com)",required:"Feld ist erforderlich",email_incorrect:"Falsche E-Mail.",email_already_taken:"Die E-Mail ist bereits vergeben.",email_does_not_exist:"Benutzer mit der angegebenen E-Mail existiert nicht",item_unit_already_taken:"Die Artikeleinheit wurde bereits vergeben",payment_mode_already_taken:"Der Zahlungsmodus wurde bereits verwendet",send_reset_link:"Link zum Zur\xFCcksetzen senden",not_yet:"Noch erhalten? Erneut senden",password_min_length:"Password mu\xDF {count} Zeichen enthalten",name_min_length:"Name muss mindestens {count} Zeichen enthalten.",enter_valid_tax_rate:"Geben Sie einen g\xFCltige Steuersatz ein",numbers_only:"Nur Zahlen.",characters_only:"Nur Zeichen.",password_incorrect:"Passw\xF6rter m\xFCssen identisch sein",password_length:"Passwort muss {count} Zeichen lang sein.",qty_must_greater_than_zero:"Die Menge muss gr\xF6\xDFer als 0 sein.",price_greater_than_zero:"Preis muss gr\xF6\xDFer als 0 sein.",payment_greater_than_zero:"Die Zahlung muss gr\xF6\xDFer als 0 sein.",payment_greater_than_due_amount:"Die eingegebene Zahlung ist mehr als der f\xE4llige Betrag dieser Rechnung.",quantity_maxlength:"Die Menge sollte nicht gr\xF6\xDFer als 20 Ziffern sein.",price_maxlength:"Der Preis sollte nicht gr\xF6\xDFer als 20 Ziffern sein.",price_minvalue:"Der Preis sollte gr\xF6\xDFer als 0 sein.",amount_maxlength:"Der Betrag sollte nicht gr\xF6\xDFer als 20 Ziffern sein.",amount_minvalue:"Betrag sollte gr\xF6\xDFer als 0 sein.",description_maxlength:"Die Beschreibung sollte nicht l\xE4nger als 255 Zeichen sein.",subject_maxlength:"Der Betreff sollte nicht l\xE4nger als 100 Zeichen sein.",message_maxlength:"Die Nachricht sollte nicht l\xE4nger als 255 Zeichen sein.",maximum_options_error:"Maximal {max} Optionen ausgew\xE4hlt. Entfernen Sie zuerst eine ausgew\xE4hlte Option, um eine andere auszuw\xE4hlen.",notes_maxlength:"Notizen sollten nicht l\xE4nger als 255 Zeichen sein.",address_maxlength:"Die Adresse sollte nicht l\xE4nger als 255 Zeichen sein.",ref_number_maxlength:"Ref Number sollte nicht l\xE4nger als 255 Zeichen sein.",prefix_maxlength:"Das Pr\xE4fix sollte nicht l\xE4nger als 5 Zeichen sein.",something_went_wrong:"Da ist etwas schief gelaufen",number_length_minvalue:"Nummernl\xE4nge sollte gr\xF6\xDFer als 0 sein"},Td="Kostenvoranschlag",Id="Kostenvoran. Nummer",$d="Datum Kostenvoranschlag",Rd="Ablaufdatum",Fd="Rechnung",Md="Rechnungsnummer",Vd="Rechnungsdatum",Bd="F\xE4lligkeitsdatum",Od="Hinweise",Ld="Artikel",Ud="Menge",Kd="Preis",qd="Rabatt",Zd="Summe",Wd="Zwischensumme",Hd="Gesamt",Gd="Zahlung",Yd="Zahlungsbeleg",Jd="Zahlungsdatum",Xd="Zahlungsnummer",Qd="Zahlungsart",el="Betrag erhalten",tl="Ausgaben Bericht",al="Gesamtausgaben",sl="Gewinn & Verlust Bericht",nl="Kundenverkaufs Bericht",il="Artikelverkaufs Bericht",ol="Steuer Bericht",rl="Einkommen",dl="Nettogewinn",ll="Umsatzbericht: Nach Kunde",cl="GESAMTUMSATZ",_l="Umsatzbericht: Nach Artikel",ul="Umsatzsteuer BERICHT",ml="Gesamte Umsatzsteuer",pl="Steuers\xE4tze",gl="Gesamtausgaben",fl="Rechnungsempf\xE4nger,",hl="Versand an,",vl="Erhalten von:",yl="Skat";var bl={navigation:fd,general:hd,dashboard:vd,tax_types:yd,global_search:bd,customers:kd,items:wd,estimates:xd,invoices:zd,payments:Sd,expenses:jd,login:Pd,users:Dd,reports:Cd,settings:Ad,wizard:Ed,validation:Nd,pdf_estimate_label:Td,pdf_estimate_number:Id,pdf_estimate_date:$d,pdf_estimate_expire_date:Rd,pdf_invoice_label:Fd,pdf_invoice_number:Md,pdf_invoice_date:Vd,pdf_invoice_due_date:Bd,pdf_notes:Od,pdf_items_label:Ld,pdf_quantity_label:Ud,pdf_price_label:Kd,pdf_discount_label:qd,pdf_amount_label:Zd,pdf_subtotal:Wd,pdf_total:Hd,pdf_payment_label:Gd,pdf_payment_receipt_label:Yd,pdf_payment_date:Jd,pdf_payment_number:Xd,pdf_payment_mode:Qd,pdf_payment_amount_received_label:el,pdf_expense_report_label:tl,pdf_total_expenses_label:al,pdf_profit_loss_label:sl,pdf_sales_customers_label:nl,pdf_sales_items_label:il,pdf_tax_summery_label:ol,pdf_income_label:rl,pdf_net_profit_label:dl,pdf_customer_sales_report:ll,pdf_total_sales_label:cl,pdf_item_sales_label:_l,pdf_tax_report_label:ul,pdf_total_tax_label:ml,pdf_tax_types_label:pl,pdf_expenses_label:gl,pdf_bill_to:fl,pdf_ship_to:hl,pdf_received_from:vl,pdf_tax_label:yl};const kl={dashboard:"\u30C0\u30C3\u30B7\u30E5\u30DC\u30FC\u30C9",customers:"\u304A\u5BA2\u69D8",items:"\u30A2\u30A4\u30C6\u30E0",invoices:"\u8ACB\u6C42\u66F8",expenses:"\u7D4C\u8CBB",estimates:"\u898B\u7A4D\u308A",payments:"\u652F\u6255\u3044",reports:"\u30EC\u30DD\u30FC\u30C8",settings:"\u8A2D\u5B9A",logout:"\u30ED\u30B0\u30A2\u30A6\u30C8",users:"\u30E6\u30FC\u30B6\u30FC"},wl={add_company:"\u4F1A\u793E\u3092\u8FFD\u52A0",view_pdf:"PDF\u3092\u898B\u308B",copy_pdf_url:"PDFURL\u3092\u30B3\u30D4\u30FC\u3059\u308B",download_pdf:"PDF\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9",save:"\u30BB\u30FC\u30D6",create:"\u4F5C\u6210\u3059\u308B",cancel:"\u30AD\u30E3\u30F3\u30BB\u30EB",update:"\u66F4\u65B0",deselect:"\u9078\u629E\u3092\u89E3\u9664",download:"\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9",from_date:"\u65E5\u4ED8\u304B\u3089",to_date:"\u73FE\u5728\u307E\u3067",from:"\u304B\u3089",to:"\u306B",sort_by:"\u4E26\u3073\u66FF\u3048",ascending:"\u4E0A\u6607",descending:"\u964D\u9806",subject:"\u4EF6\u540D",body:"\u4F53",message:"\u30E1\u30C3\u30BB\u30FC\u30B8",send:"\u9001\u4FE1",go_back:"\u623B\u308B",back_to_login:"\u30ED\u30B0\u30A4\u30F3\u306B\u623B\u308B\uFF1F",home:"\u30DB\u30FC\u30E0\u30DB\u30FC\u30E0",filter:"\u30D5\u30A3\u30EB\u30BF",delete:"\u524A\u9664",edit:"\u7DE8\u96C6",view:"\u898B\u308B",add_new_item:"\u65B0\u3057\u3044\u30A2\u30A4\u30C6\u30E0\u3092\u8FFD\u52A0\u3059\u308B",clear_all:"\u3059\u3079\u3066\u30AF\u30EA\u30A2",showing:"\u8868\u793A\u4E2D",of:"\u306E",actions:"\u884C\u52D5",subtotal:"\u5C0F\u8A08",discount:"\u30C7\u30A3\u30B9\u30AB\u30A6\u30F3\u30C8",fixed:"\u4FEE\u7E55",percentage:"\u30D1\u30FC\u30BB\u30F3\u30C6\u30FC\u30B8",tax:"\u7A0E\u91D1",total_amount:"\u5408\u8A08\u91D1\u984D",bill_to:"\u8ACB\u6C42\u66F8\u9001\u4ED8\u5148",ship_to:"\u9001\u308A\u5148",due:"\u671F\u9650",draft:"\u30C9\u30E9\u30D5\u30C8",sent:"\u9001\u4FE1\u6E08\u307F",all:"\u3059\u3079\u3066",select_all:"\u3059\u3079\u3066\u9078\u629E",choose_file:"\u30D5\u30A1\u30A4\u30EB\u3092\u9078\u629E\u3059\u308B\u306B\u306F\u3001\u3053\u3053\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044",choose_template:"\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044",choose:"\u9078\u629E",remove:"\u524A\u9664\u3059\u308B",powered_by:"\u642D\u8F09",bytefury:"Bytefury",select_a_status:"\u30B9\u30C6\u30FC\u30BF\u30B9\u3092\u9078\u629E",select_a_tax:"\u7A0E\u91D1\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044",search:"\u63A2\u3059",are_you_sure:"\u672C\u6C17\u3067\u3059\u304B\uFF1F",list_is_empty:"\u30EA\u30B9\u30C8\u306F\u7A7A\u3067\u3059\u3002",no_tax_found:"\u7A0E\u91D1\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\uFF01",four_zero_four:"404",you_got_lost:"\u304A\u3063\u3068\uFF01\u3042\u306A\u305F\u306F\u8FF7\u5B50\u306B\u306A\u308A\u307E\u3057\u305F\uFF01",go_home:"\u5BB6\u306B\u5E30\u308B",test_mail_conf:"\u30E1\u30FC\u30EB\u69CB\u6210\u306E\u30C6\u30B9\u30C8",send_mail_successfully:"\u30E1\u30FC\u30EB\u306F\u6B63\u5E38\u306B\u9001\u4FE1\u3055\u308C\u307E\u3057\u305F",setting_updated:"\u8A2D\u5B9A\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",select_state:"\u72B6\u614B\u3092\u9078\u629E",select_country:"\u56FD\u3092\u9078\u629E",select_city:"\u90FD\u5E02\u3092\u9078\u629E",street_1:"\u30B9\u30C8\u30EA\u30FC\u30C81",street_2:"2\u4E01\u76EE",action_failed:"\u30A2\u30AF\u30B7\u30E7\u30F3\u304C\u5931\u6557\u3057\u307E\u3057\u305F",retry:"\u30EA\u30C8\u30E9\u30A4",choose_note:"\u6CE8\u3092\u9078\u629E",no_note_found:"\u30E1\u30E2\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093",insert_note:"\u30E1\u30E2\u3092\u633F\u5165",copied_pdf_url_clipboard:"PDF\u306EURL\u3092\u30AF\u30EA\u30C3\u30D7\u30DC\u30FC\u30C9\u306B\u30B3\u30D4\u30FC\u3057\u307E\u3057\u305F\uFF01"},xl={select_year:"\u5E74\u3092\u9078\u629E",cards:{due_amount:"\u6599\u91D1",customers:"\u304A\u5BA2\u69D8",invoices:"\u8ACB\u6C42\u66F8",estimates:"\u898B\u7A4D\u308A"},chart_info:{total_sales:"\u8CA9\u58F2",total_receipts:"\u9818\u53CE\u66F8",total_expense:"\u7D4C\u8CBB",net_income:"\u5F53\u671F\u7D14\u5229\u76CA",year:"\u5E74\u3092\u9078\u629E"},monthly_chart:{title:"\u8CA9\u58F2"},recent_invoices_card:{title:"\u671F\u65E5\u8ACB\u6C42\u66F8",due_on:"\u671F\u9650",customer:"\u304A\u5BA2\u69D8",amount_due:"\u6599\u91D1",actions:"\u884C\u52D5",view_all:"\u3059\u3079\u3066\u8868\u793A"},recent_estimate_card:{title:"\u6700\u8FD1\u306E\u898B\u7A4D\u3082\u308A",date:"\u65E5\u4ED8",customer:"\u304A\u5BA2\u69D8",amount_due:"\u6599\u91D1",actions:"\u884C\u52D5",view_all:"\u3059\u3079\u3066\u8868\u793A"}},zl={name:"\u540D\u524D",description:"\u8AAC\u660E",percent:"\u30D1\u30FC\u30BB\u30F3\u30C8",compound_tax:"\u8907\u5408\u7A0E"},Sl={search:"\u63A2\u3059...",customers:"\u304A\u5BA2\u69D8",users:"\u30E6\u30FC\u30B6\u30FC",no_results_found:"\u7D50\u679C\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093"},jl={title:"\u304A\u5BA2\u69D8",add_customer:"\u9867\u5BA2\u3092\u8FFD\u52A0",contacts_list:"\u9867\u5BA2\u30EA\u30B9\u30C8",name:"\u540D\u524D",mail:"\u30E1\u30FC\u30EB|\u30E1\u30FC\u30EB",statement:"\u30B9\u30C6\u30FC\u30C8\u30E1\u30F3\u30C8",display_name:"\u8868\u793A\u540D",primary_contact_name:"\u4E3B\u306A\u9023\u7D61\u5148\u540D",contact_name:"\u9023\u7D61\u5148",amount_due:"\u6599\u91D1",email:"E\u30E1\u30FC\u30EB",address:"\u4F4F\u6240",phone:"\u96FB\u8A71",website:"\u30A6\u30A7\u30D6\u30B5\u30A4\u30C8",overview:"\u6982\u8981\u6982\u8981",enable_portal:"\u30DD\u30FC\u30BF\u30EB\u3092\u6709\u52B9\u306B\u3059\u308B",country:"\u56FD",state:"\u72B6\u614B",city:"\u5E02",zip_code:"\u90F5\u4FBF\u756A\u53F7",added_on:"\u8FFD\u52A0\u3055\u308C\u305F",action:"\u30A2\u30AF\u30B7\u30E7\u30F3",password:"\u30D1\u30B9\u30EF\u30FC\u30C9",street_number:"\u8857\u8DEF\u756A\u53F7",primary_currency:"\u4E00\u6B21\u901A\u8CA8",description:"\u8AAC\u660E",add_new_customer:"\u65B0\u898F\u9867\u5BA2\u306E\u8FFD\u52A0",save_customer:"\u9867\u5BA2\u3092\u6551\u3046",update_customer:"\u9867\u5BA2\u306E\u66F4\u65B0",customer:"\u9867\u5BA2|\u304A\u5BA2\u69D8",new_customer:"\u65B0\u898F\u9867\u5BA2",edit_customer:"\u9867\u5BA2\u306E\u7DE8\u96C6",basic_info:"\u57FA\u672C\u60C5\u5831",billing_address:"\u8ACB\u6C42\u5148\u4F4F\u6240",shipping_address:"\u304A\u5C4A\u3051\u5148\u306E\u4F4F\u6240",copy_billing_address:"\u8ACB\u6C42\u304B\u3089\u30B3\u30D4\u30FC",no_customers:"\u307E\u3060\u304A\u5BA2\u69D8\u306F\u3044\u307E\u305B\u3093\uFF01",no_customers_found:"\u9867\u5BA2\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\uFF01",no_contact:"\u63A5\u89E6\u7121\u3057",no_contact_name:"\u9023\u7D61\u5148\u540D\u306A\u3057",list_of_customers:"\u3053\u306E\u30BB\u30AF\u30B7\u30E7\u30F3\u306B\u306F\u3001\u9867\u5BA2\u306E\u30EA\u30B9\u30C8\u304C\u542B\u307E\u308C\u307E\u3059\u3002",primary_display_name:"\u4E00\u6B21\u8868\u793A\u540D",select_currency:"\u901A\u8CA8\u3092\u9078\u629E",select_a_customer:"\u9867\u5BA2\u3092\u9078\u629E\u3059\u308B",type_or_click:"\u5165\u529B\u307E\u305F\u306F\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u9078\u629E",new_transaction:"\u65B0\u3057\u3044\u30C8\u30E9\u30F3\u30B6\u30AF\u30B7\u30E7\u30F3",no_matching_customers:"\u4E00\u81F4\u3059\u308B\u9867\u5BA2\u306F\u3042\u308A\u307E\u305B\u3093\uFF01",phone_number:"\u96FB\u8A71\u756A\u53F7",create_date:"\u65E5\u4ED8\u3092\u4F5C\u6210\u3057\u307E\u3059",confirm_delete:"\u3053\u306E\u9867\u5BA2\u304A\u3088\u3073\u95A2\u9023\u3059\u308B\u3059\u3079\u3066\u306E\u8ACB\u6C42\u66F8\u3001\u898B\u7A4D\u3082\u308A\u3001\u304A\u3088\u3073\u652F\u6255\u3044\u3092\u56DE\u53CE\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002 |\u3053\u308C\u3089\u306E\u9867\u5BA2\u304A\u3088\u3073\u95A2\u9023\u3059\u308B\u3059\u3079\u3066\u306E\u8ACB\u6C42\u66F8\u3001\u898B\u7A4D\u3082\u308A\u3001\u652F\u6255\u3044\u3092\u56DE\u53CE\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002",created_message:"\u9867\u5BA2\u304C\u6B63\u5E38\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F",updated_message:"\u304A\u5BA2\u69D8\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",deleted_message:"\u304A\u5BA2\u69D8\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F|\u9867\u5BA2\u306F\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F"},Pl={title:"\u30A2\u30A4\u30C6\u30E0",items_list:"\u30A2\u30A4\u30C6\u30E0\u30EA\u30B9\u30C8",name:"\u540D\u524D",unit:"\u5358\u4F4D",description:"\u8AAC\u660E",added_on:"\u8FFD\u52A0\u3055\u308C\u305F",price:"\u4FA1\u683C",date_of_creation:"\u4F5C\u6210\u65E5",not_selected:"\u30A2\u30A4\u30C6\u30E0\u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093",action:"\u30A2\u30AF\u30B7\u30E7\u30F3",add_item:"\u30A2\u30A4\u30C6\u30E0\u3092\u8FFD\u52A0",save_item:"\u30A2\u30A4\u30C6\u30E0\u3092\u4FDD\u5B58",update_item:"\u30A2\u30A4\u30C6\u30E0\u306E\u66F4\u65B0",item:"\u30A2\u30A4\u30C6\u30E0|\u30A2\u30A4\u30C6\u30E0",add_new_item:"\u65B0\u3057\u3044\u30A2\u30A4\u30C6\u30E0\u3092\u8FFD\u52A0\u3059\u308B",new_item:"\u65B0\u5546\u54C1",edit_item:"\u30A2\u30A4\u30C6\u30E0\u306E\u7DE8\u96C6",no_items:"\u307E\u3060\u30A2\u30A4\u30C6\u30E0\u306F\u3042\u308A\u307E\u305B\u3093\uFF01",list_of_items:"\u3053\u306E\u30BB\u30AF\u30B7\u30E7\u30F3\u306B\u306F\u3001\u30A2\u30A4\u30C6\u30E0\u306E\u30EA\u30B9\u30C8\u304C\u542B\u307E\u308C\u307E\u3059\u3002",select_a_unit:"\u30E6\u30CB\u30C3\u30C8\u3092\u9078\u629E",taxes:"\u7A0E\u91D1",item_attached_message:"\u3059\u3067\u306B\u4F7F\u7528\u4E2D\u306E\u30A2\u30A4\u30C6\u30E0\u306F\u524A\u9664\u3067\u304D\u307E\u305B\u3093",confirm_delete:"\u3053\u306E\u30A2\u30A4\u30C6\u30E0\u3092\u56DE\u5FA9\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093|\u3053\u308C\u3089\u306E\u30A2\u30A4\u30C6\u30E0\u3092\u56DE\u5FA9\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",created_message:"\u30A2\u30A4\u30C6\u30E0\u304C\u6B63\u5E38\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F",updated_message:"\u30A2\u30A4\u30C6\u30E0\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",deleted_message:"\u30A2\u30A4\u30C6\u30E0\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F|\u30A2\u30A4\u30C6\u30E0\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F"},Dl={title:"\u898B\u7A4D\u308A",estimate:"\u898B\u7A4D\u3082\u308A|\u898B\u7A4D\u308A",estimates_list:"\u898B\u7A4D\u3082\u308A\u30EA\u30B9\u30C8",days:"{days}\u65E5",months:"{months}\u6708",years:"{years}\u5E74",all:"\u3059\u3079\u3066",paid:"\u6709\u6599",unpaid:"\u672A\u6255\u3044",customer:"\u304A\u5BA2\u69D8",ref_no:"\u53C2\u7167\u756A\u53F7",number:"\u6570",amount_due:"\u6599\u91D1",partially_paid:"\u90E8\u5206\u7684\u306B\u652F\u6255\u308F\u308C\u305F",total:"\u5408\u8A08",discount:"\u30C7\u30A3\u30B9\u30AB\u30A6\u30F3\u30C8",sub_total:"\u5C0F\u8A08",estimate_number:"\u898B\u7A4D\u3082\u308A\u756A\u53F7",ref_number:"\u53C2\u7167\u756A\u53F7",contact:"\u9023\u7D61\u5148",add_item:"\u30A2\u30A4\u30C6\u30E0\u3092\u8FFD\u52A0\u3059\u308B",date:"\u65E5\u4ED8",due_date:"\u671F\u65E5",expiry_date:"\u6709\u52B9\u671F\u9650",status:"\u72B6\u614B",add_tax:"\u7A0E\u91D1\u3092\u8FFD\u52A0\u3059\u308B",amount:"\u91CF",action:"\u30A2\u30AF\u30B7\u30E7\u30F3",notes:"\u30CE\u30FC\u30C8",tax:"\u7A0E\u91D1",estimate_template:"\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8",convert_to_invoice:"\u8ACB\u6C42\u66F8\u306B\u5909\u63DB",mark_as_sent:"\u9001\u4FE1\u6E08\u307F\u3068\u3057\u3066\u30DE\u30FC\u30AF",send_estimate:"\u898B\u7A4D\u3082\u308A\u3092\u9001\u4FE1",resend_estimate:"\u898B\u7A4D\u3082\u308A\u3092\u518D\u9001",record_payment:"\u652F\u6255\u3044\u306E\u8A18\u9332",add_estimate:"\u898B\u7A4D\u3082\u308A\u3092\u8FFD\u52A0",save_estimate:"\u898B\u7A4D\u3082\u308A\u3092\u4FDD\u5B58",confirm_conversion:"\u3053\u306E\u898B\u7A4D\u3082\u308A\u306F\u3001\u65B0\u3057\u3044\u8ACB\u6C42\u66F8\u3092\u4F5C\u6210\u3059\u308B\u305F\u3081\u306B\u4F7F\u7528\u3055\u308C\u307E\u3059\u3002",conversion_message:"\u8ACB\u6C42\u66F8\u304C\u6B63\u5E38\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F",confirm_send_estimate:"\u3053\u306E\u898B\u7A4D\u3082\u308A\u306F\u3001\u96FB\u5B50\u30E1\u30FC\u30EB\u3067\u304A\u5BA2\u69D8\u306B\u9001\u4FE1\u3055\u308C\u307E\u3059",confirm_mark_as_sent:"\u3053\u306E\u898B\u7A4D\u3082\u308A\u306F\u9001\u4FE1\u6E08\u307F\u3068\u3057\u3066\u30DE\u30FC\u30AF\u3055\u308C\u307E\u3059",confirm_mark_as_accepted:"\u3053\u306E\u898B\u7A4D\u3082\u308A\u306F\u627F\u8A8D\u6E08\u307F\u3068\u3057\u3066\u30DE\u30FC\u30AF\u3055\u308C\u307E\u3059",confirm_mark_as_rejected:"\u3053\u306E\u898B\u7A4D\u3082\u308A\u306F\u62D2\u5426\u3068\u3057\u3066\u30DE\u30FC\u30AF\u3055\u308C\u307E\u3059",no_matching_estimates:"\u4E00\u81F4\u3059\u308B\u898B\u7A4D\u3082\u308A\u306F\u3042\u308A\u307E\u305B\u3093\uFF01",mark_as_sent_successfully:"\u6B63\u5E38\u306B\u9001\u4FE1\u3055\u308C\u305F\u3068\u30DE\u30FC\u30AF\u3055\u308C\u305F\u898B\u7A4D\u3082\u308A",send_estimate_successfully:"\u898B\u7A4D\u3082\u308A\u306F\u6B63\u5E38\u306B\u9001\u4FE1\u3055\u308C\u307E\u3057\u305F",errors:{required:"\u30D5\u30A3\u30FC\u30EB\u30C9\u306F\u5FC5\u9808\u9805\u76EE\u3067\u3059"},accepted:"\u627F\u8A8D\u6E08\u307F",rejected:"\u62D2\u5426\u3055\u308C\u307E\u3057\u305F",sent:"\u9001\u4FE1\u6E08\u307F",draft:"\u30C9\u30E9\u30D5\u30C8",declined:"\u8F9E\u9000",new_estimate:"\u65B0\u3057\u3044\u898B\u7A4D\u3082\u308A",add_new_estimate:"\u65B0\u3057\u3044\u898B\u7A4D\u3082\u308A\u3092\u8FFD\u52A0",update_Estimate:"\u898B\u7A4D\u3082\u308A\u3092\u66F4\u65B0",edit_estimate:"\u898B\u7A4D\u3082\u308A\u306E\u7DE8\u96C6",items:"\u30A2\u30A4\u30C6\u30E0",Estimate:"\u898B\u7A4D\u3082\u308A|\u898B\u7A4D\u308A",add_new_tax:"\u65B0\u3057\u3044\u7A0E\u91D1\u3092\u8FFD\u52A0\u3059\u308B",no_estimates:"\u307E\u3060\u898B\u7A4D\u3082\u308A\u306F\u3042\u308A\u307E\u305B\u3093\uFF01",list_of_estimates:"\u3053\u306E\u30BB\u30AF\u30B7\u30E7\u30F3\u306B\u306F\u3001\u898B\u7A4D\u3082\u308A\u306E\u30EA\u30B9\u30C8\u304C\u542B\u307E\u308C\u307E\u3059\u3002",mark_as_rejected:"\u62D2\u5426\u6E08\u307F\u3068\u3057\u3066\u30DE\u30FC\u30AF",mark_as_accepted:"\u627F\u8A8D\u6E08\u307F\u3068\u3057\u3066\u30DE\u30FC\u30AF",marked_as_accepted_message:"\u627F\u8A8D\u6E08\u307F\u3068\u3057\u3066\u30DE\u30FC\u30AF\u3055\u308C\u305F\u898B\u7A4D\u3082\u308A",marked_as_rejected_message:"\u62D2\u5426\u3068\u3057\u3066\u30DE\u30FC\u30AF\u3055\u308C\u305F\u898B\u7A4D\u3082\u308A",confirm_delete:"\u3053\u306E\u898B\u7A4D\u3082\u308A\u3092\u56DE\u5FA9\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093|\u3053\u308C\u3089\u306E\u898B\u7A4D\u3082\u308A\u3092\u5FA9\u5143\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",created_message:"\u898B\u7A4D\u3082\u308A\u304C\u6B63\u5E38\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F",updated_message:"\u898B\u7A4D\u3082\u308A\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",deleted_message:"\u63A8\u5B9A\u306F\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F|\u63A8\u5B9A\u5024\u306F\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F",something_went_wrong:"\u4F55\u304B\u304C\u3046\u307E\u304F\u3044\u304B\u306A\u304B\u3063\u305F",item:{title:"\u30A2\u30A4\u30C6\u30E0\u30BF\u30A4\u30C8\u30EB",description:"\u8AAC\u660E",quantity:"\u91CF",price:"\u4FA1\u683C",discount:"\u30C7\u30A3\u30B9\u30AB\u30A6\u30F3\u30C8",total:"\u5408\u8A08",total_discount:"\u5408\u8A08\u5272\u5F15",sub_total:"\u5C0F\u8A08",tax:"\u7A0E\u91D1",amount:"\u91CF",select_an_item:"\u5165\u529B\u307E\u305F\u306F\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30A2\u30A4\u30C6\u30E0\u3092\u9078\u629E\u3057\u307E\u3059",type_item_description:"\u30BF\u30A4\u30D7\u30A2\u30A4\u30C6\u30E0\u8AAC\u660E\uFF08\u30AA\u30D7\u30B7\u30E7\u30F3\uFF09"}},Cl={title:"\u8ACB\u6C42\u66F8",invoices_list:"\u8ACB\u6C42\u66F8\u30EA\u30B9\u30C8",days:"{days}\u65E5",months:"{months}\u6708",years:"{years}\u5E74",all:"\u3059\u3079\u3066",paid:"\u6709\u6599",unpaid:"\u672A\u6255\u3044",viewed:"\u95B2\u89A7\u6E08\u307F",overdue:"\u5EF6\u6EDE",completed:"\u5B8C\u4E86",customer:"\u304A\u5BA2\u69D8",paid_status:"\u6709\u6599\u30B9\u30C6\u30FC\u30BF\u30B9",ref_no:"\u53C2\u7167\u756A\u53F7",number:"\u6570",amount_due:"\u6599\u91D1",partially_paid:"\u90E8\u5206\u7684\u306B\u652F\u6255\u308F\u308C\u305F",total:"\u5408\u8A08",discount:"\u30C7\u30A3\u30B9\u30AB\u30A6\u30F3\u30C8",sub_total:"\u5C0F\u8A08",invoice:"\u8ACB\u6C42\u66F8|\u8ACB\u6C42\u66F8",invoice_number:"\u8ACB\u6C42\u66F8\u756A\u53F7",ref_number:"\u53C2\u7167\u756A\u53F7",contact:"\u9023\u7D61\u5148",add_item:"\u30A2\u30A4\u30C6\u30E0\u3092\u8FFD\u52A0\u3059\u308B",date:"\u65E5\u4ED8",due_date:"\u671F\u65E5",status:"\u72B6\u614B",add_tax:"\u7A0E\u91D1\u3092\u8FFD\u52A0\u3059\u308B",amount:"\u91CF",action:"\u30A2\u30AF\u30B7\u30E7\u30F3",notes:"\u30CE\u30FC\u30C8",view:"\u898B\u308B",send_invoice:"\u8ACB\u6C42\u66F8\u3092\u9001\u308A\u307E\u3059",resend_invoice:"\u8ACB\u6C42\u66F8\u3092\u518D\u9001\u3059\u308B",invoice_template:"\u8ACB\u6C42\u66F8\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8",template:"\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8",mark_as_sent:"\u9001\u4FE1\u6E08\u307F\u3068\u3057\u3066\u30DE\u30FC\u30AF",confirm_send_invoice:"\u3053\u306E\u8ACB\u6C42\u66F8\u306F\u30E1\u30FC\u30EB\u3067\u304A\u5BA2\u69D8\u306B\u9001\u4FE1\u3055\u308C\u307E\u3059",invoice_mark_as_sent:"\u3053\u306E\u8ACB\u6C42\u66F8\u306F\u9001\u4FE1\u6E08\u307F\u3068\u3057\u3066\u30DE\u30FC\u30AF\u3055\u308C\u307E\u3059",confirm_send:"\u3053\u306E\u8ACB\u6C42\u66F8\u306F\u30E1\u30FC\u30EB\u3067\u304A\u5BA2\u69D8\u306B\u9001\u4FE1\u3055\u308C\u307E\u3059",invoice_date:"\u8ACB\u6C42\u66F8\u306E\u65E5\u4ED8",record_payment:"\u652F\u6255\u3044\u306E\u8A18\u9332",add_new_invoice:"\u65B0\u3057\u3044\u8ACB\u6C42\u66F8\u3092\u8FFD\u52A0\u3059\u308B",update_expense:"\u7D4C\u8CBB\u306E\u66F4\u65B0",edit_invoice:"\u8ACB\u6C42\u66F8\u306E\u7DE8\u96C6",new_invoice:"\u65B0\u3057\u3044\u8ACB\u6C42\u66F8",save_invoice:"\u8ACB\u6C42\u66F8\u3092\u4FDD\u5B58\u3059\u308B",update_invoice:"\u8ACB\u6C42\u66F8\u3092\u66F4\u65B0\u3059\u308B",add_new_tax:"\u65B0\u3057\u3044\u7A0E\u91D1\u3092\u8FFD\u52A0\u3059\u308B",no_invoices:"\u8ACB\u6C42\u66F8\u306F\u307E\u3060\u3042\u308A\u307E\u305B\u3093\uFF01",list_of_invoices:"\u3053\u306E\u30BB\u30AF\u30B7\u30E7\u30F3\u306B\u306F\u3001\u8ACB\u6C42\u66F8\u306E\u30EA\u30B9\u30C8\u304C\u542B\u307E\u308C\u307E\u3059\u3002",select_invoice:"\u8ACB\u6C42\u66F8\u3092\u9078\u629E",no_matching_invoices:"\u4E00\u81F4\u3059\u308B\u8ACB\u6C42\u66F8\u306F\u3042\u308A\u307E\u305B\u3093\uFF01",mark_as_sent_successfully:"\u6B63\u5E38\u306B\u9001\u4FE1\u6E08\u307F\u3068\u3057\u3066\u30DE\u30FC\u30AF\u3055\u308C\u305F\u8ACB\u6C42\u66F8",invoice_sent_successfully:"\u8ACB\u6C42\u66F8\u306F\u6B63\u5E38\u306B\u9001\u4FE1\u3055\u308C\u307E\u3057\u305F",cloned_successfully:"\u8ACB\u6C42\u66F8\u306E\u30AF\u30ED\u30FC\u30F3\u304C\u6B63\u5E38\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F",clone_invoice:"\u30AF\u30ED\u30FC\u30F3\u8ACB\u6C42\u66F8",confirm_clone:"\u3053\u306E\u8ACB\u6C42\u66F8\u306F\u65B0\u3057\u3044\u8ACB\u6C42\u66F8\u306B\u8907\u88FD\u3055\u308C\u307E\u3059",item:{title:"\u30A2\u30A4\u30C6\u30E0\u30BF\u30A4\u30C8\u30EB",description:"\u8AAC\u660E",quantity:"\u91CF",price:"\u4FA1\u683C",discount:"\u30C7\u30A3\u30B9\u30AB\u30A6\u30F3\u30C8",total:"\u5408\u8A08",total_discount:"\u5408\u8A08\u5272\u5F15",sub_total:"\u5C0F\u8A08",tax:"\u7A0E\u91D1",amount:"\u91CF",select_an_item:"\u5165\u529B\u307E\u305F\u306F\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30A2\u30A4\u30C6\u30E0\u3092\u9078\u629E\u3057\u307E\u3059",type_item_description:"\u30BF\u30A4\u30D7\u30A2\u30A4\u30C6\u30E0\u8AAC\u660E\uFF08\u30AA\u30D7\u30B7\u30E7\u30F3\uFF09"},confirm_delete:"\u3053\u306E\u8ACB\u6C42\u66F8\u3092\u56DE\u53CE\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093|\u3053\u308C\u3089\u306E\u8ACB\u6C42\u66F8\u3092\u56DE\u53CE\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002",created_message:"\u8ACB\u6C42\u66F8\u304C\u6B63\u5E38\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F",updated_message:"\u8ACB\u6C42\u66F8\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",deleted_message:"\u8ACB\u6C42\u66F8\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F|\u8ACB\u6C42\u66F8\u306F\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F",marked_as_sent_message:"\u6B63\u5E38\u306B\u9001\u4FE1\u6E08\u307F\u3068\u3057\u3066\u30DE\u30FC\u30AF\u3055\u308C\u305F\u8ACB\u6C42\u66F8",something_went_wrong:"\u4F55\u304B\u304C\u3046\u307E\u304F\u3044\u304B\u306A\u304B\u3063\u305F",invalid_due_amount_message:"\u8ACB\u6C42\u66F8\u306E\u5408\u8A08\u91D1\u984D\u306F\u3001\u3053\u306E\u8ACB\u6C42\u66F8\u306E\u652F\u6255\u3044\u7DCF\u984D\u3088\u308A\u5C11\u306A\u304F\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002\u7D9A\u884C\u3059\u308B\u306B\u306F\u3001\u8ACB\u6C42\u66F8\u3092\u66F4\u65B0\u3059\u308B\u304B\u3001\u95A2\u9023\u3059\u308B\u652F\u6255\u3044\u3092\u524A\u9664\u3057\u3066\u304F\u3060\u3055\u3044\u3002"},Al={title:"\u652F\u6255\u3044",payments_list:"\u652F\u6255\u3044\u30EA\u30B9\u30C8",record_payment:"\u652F\u6255\u3044\u306E\u8A18\u9332",customer:"\u304A\u5BA2\u69D8",date:"\u65E5\u4ED8",amount:"\u91CF",action:"\u30A2\u30AF\u30B7\u30E7\u30F3",payment_number:"\u652F\u6255\u3044\u756A\u53F7",payment_mode:"\u652F\u6255\u3044\u30E2\u30FC\u30C9",invoice:"\u8ACB\u6C42\u66F8",note:"\u6CE8\u610F",add_payment:"\u652F\u6255\u3044\u3092\u8FFD\u52A0\u3059\u308B",new_payment:"\u65B0\u898F\u652F\u6255\u3044",edit_payment:"\u652F\u6255\u3044\u306E\u7DE8\u96C6",view_payment:"\u652F\u6255\u3044\u3092\u8868\u793A",add_new_payment:"\u65B0\u3057\u3044\u652F\u6255\u3044\u3092\u8FFD\u52A0\u3059\u308B",send_payment_receipt:"\u9818\u53CE\u66F8\u3092\u9001\u308B",send_payment:"\u652F\u6255\u3044\u3092\u9001\u308B",save_payment:"\u652F\u6255\u3044\u3092\u7BC0\u7D04\u3059\u308B",update_payment:"\u652F\u6255\u3044\u306E\u66F4\u65B0",payment:"\u652F\u6255\u3044|\u652F\u6255\u3044",no_payments:"\u307E\u3060\u652F\u6255\u3044\u306F\u3042\u308A\u307E\u305B\u3093\uFF01",not_selected:"\u9078\u629E\u3055\u308C\u3066\u3044\u306A\u3044",no_invoice:"\u8ACB\u6C42\u66F8\u306A\u3057",no_matching_payments:"\u4E00\u81F4\u3059\u308B\u652F\u6255\u3044\u306F\u3042\u308A\u307E\u305B\u3093\uFF01",list_of_payments:"\u3053\u306E\u30BB\u30AF\u30B7\u30E7\u30F3\u306B\u306F\u3001\u652F\u6255\u3044\u306E\u30EA\u30B9\u30C8\u304C\u542B\u307E\u308C\u307E\u3059\u3002",select_payment_mode:"\u652F\u6255\u3044\u30E2\u30FC\u30C9\u3092\u9078\u629E\u3057\u307E\u3059",confirm_mark_as_sent:"\u3053\u306E\u898B\u7A4D\u3082\u308A\u306F\u9001\u4FE1\u6E08\u307F\u3068\u3057\u3066\u30DE\u30FC\u30AF\u3055\u308C\u307E\u3059",confirm_send_payment:"\u3053\u306E\u652F\u6255\u3044\u306F\u96FB\u5B50\u30E1\u30FC\u30EB\u3067\u9867\u5BA2\u306B\u9001\u4FE1\u3055\u308C\u307E\u3059",send_payment_successfully:"\u652F\u6255\u3044\u304C\u6B63\u5E38\u306B\u9001\u4FE1\u3055\u308C\u307E\u3057\u305F",something_went_wrong:"\u4F55\u304B\u304C\u3046\u307E\u304F\u3044\u304B\u306A\u304B\u3063\u305F",confirm_delete:"\u3053\u306E\u652F\u6255\u3044\u3092\u56DE\u53CE\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093|\u3053\u308C\u3089\u306E\u652F\u6255\u3044\u3092\u56DE\u53CE\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",created_message:"\u652F\u6255\u3044\u304C\u6B63\u5E38\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F",updated_message:"\u652F\u6255\u3044\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",deleted_message:"\u652F\u6255\u3044\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F|\u652F\u6255\u3044\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F",invalid_amount_message:"\u304A\u652F\u6255\u3044\u91D1\u984D\u304C\u7121\u52B9\u3067\u3059"},El={title:"\u7D4C\u8CBB",expenses_list:"\u7D4C\u8CBB\u30EA\u30B9\u30C8",select_a_customer:"\u9867\u5BA2\u3092\u9078\u629E\u3059\u308B",expense_title:"\u984C\u540D",customer:"\u304A\u5BA2\u69D8",contact:"\u9023\u7D61\u5148",category:"\u30AB\u30C6\u30B4\u30EA\u30FC",from_date:"\u65E5\u4ED8\u304B\u3089",to_date:"\u73FE\u5728\u307E\u3067",expense_date:"\u65E5\u4ED8",description:"\u8AAC\u660E",receipt:"\u9818\u53CE\u66F8",amount:"\u91CF",action:"\u30A2\u30AF\u30B7\u30E7\u30F3",not_selected:"\u9078\u629E\u3055\u308C\u3066\u3044\u306A\u3044",note:"\u6CE8\u610F",category_id:"\u30AB\u30C6\u30B4\u30EAID",date:"\u65E5\u4ED8",add_expense:"\u7D4C\u8CBB\u3092\u8FFD\u52A0\u3059\u308B",add_new_expense:"\u65B0\u3057\u3044\u7D4C\u8CBB\u3092\u8FFD\u52A0\u3059\u308B",save_expense:"\u7D4C\u8CBB\u3092\u7BC0\u7D04",update_expense:"\u7D4C\u8CBB\u306E\u66F4\u65B0",download_receipt:"\u9818\u53CE\u66F8\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9",edit_expense:"\u7D4C\u8CBB\u306E\u7DE8\u96C6",new_expense:"\u65B0\u3057\u3044\u7D4C\u8CBB",expense:"\u7D4C\u8CBB|\u7D4C\u8CBB",no_expenses:"\u307E\u3060\u8CBB\u7528\u306F\u304B\u304B\u308A\u307E\u305B\u3093\uFF01",list_of_expenses:"\u3053\u306E\u30BB\u30AF\u30B7\u30E7\u30F3\u306B\u306F\u3001\u7D4C\u8CBB\u306E\u30EA\u30B9\u30C8\u304C\u542B\u307E\u308C\u307E\u3059\u3002",confirm_delete:"\u3053\u306E\u8CBB\u7528\u3092\u56DE\u53CE\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093|\u3053\u308C\u3089\u306E\u8CBB\u7528\u3092\u56DE\u53CE\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002",created_message:"\u7D4C\u8CBB\u304C\u6B63\u5E38\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F",updated_message:"\u7D4C\u8CBB\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",deleted_message:"\u7D4C\u8CBB\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F|\u7D4C\u8CBB\u306F\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F",categories:{categories_list:"\u30AB\u30C6\u30B4\u30EA\u30EA\u30B9\u30C8",title:"\u984C\u540D",name:"\u540D\u524D",description:"\u8AAC\u660E",amount:"\u91CF",actions:"\u884C\u52D5",add_category:"\u30AB\u30C6\u30B4\u30EA\u3092\u8FFD\u52A0",new_category:"\u65B0\u305F\u306A\u30AB\u30C6\u30B4\u30EA\u30FC",category:"\u30AB\u30C6\u30B4\u30EA|\u30AB\u30C6\u30B4\u30EA",select_a_category:"\u30AB\u30C6\u30B4\u30EA\u30FC\u3092\u9078\u3076"}},Nl={email:"E\u30E1\u30FC\u30EB",password:"\u30D1\u30B9\u30EF\u30FC\u30C9",forgot_password:"\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u304A\u5FD8\u308C\u3067\u3059\u304B\uFF1F",or_signIn_with:"\u307E\u305F\u306F\u3067\u30B5\u30A4\u30F3\u30A4\u30F3",login:"\u30ED\u30B0\u30A4\u30F3",register:"\u767B\u9332",reset_password:"\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u518D\u8A2D\u5B9A\u3059\u308B",password_reset_successfully:"\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u6B63\u5E38\u306B\u30EA\u30BB\u30C3\u30C8\u3055\u308C\u307E\u3057\u305F",enter_email:"\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u3092\u5165\u529B\u3057\u3066",enter_password:"\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5165\u529B\u3059\u308B",retype_password:"\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u518D\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},Tl={title:"\u30E6\u30FC\u30B6\u30FC",users_list:"\u30E6\u30FC\u30B6\u30FC\u30EA\u30B9\u30C8",name:"\u540D\u524D",description:"\u8AAC\u660E",added_on:"\u8FFD\u52A0\u3055\u308C\u305F",date_of_creation:"\u4F5C\u6210\u65E5",action:"\u30A2\u30AF\u30B7\u30E7\u30F3",add_user:"\u30E6\u30FC\u30B6\u30FC\u3092\u8FFD\u52A0\u3059\u308B",save_user:"\u30E6\u30FC\u30B6\u30FC\u3092\u4FDD\u5B58",update_user:"\u30E6\u30FC\u30B6\u30FC\u306E\u66F4\u65B0",user:"\u30E6\u30FC\u30B6\u30FC|\u30E6\u30FC\u30B6\u30FC",add_new_user:"\u65B0\u3057\u3044\u30E6\u30FC\u30B6\u30FC\u3092\u8FFD\u52A0",new_user:"\u65B0\u3057\u3044\u30E6\u30FC\u30B6\u30FC",edit_user:"\u30E6\u30FC\u30B6\u30FC\u306E\u7DE8\u96C6",no_users:"\u307E\u3060\u30E6\u30FC\u30B6\u30FC\u306F\u3044\u307E\u305B\u3093\uFF01",list_of_users:"\u3053\u306E\u30BB\u30AF\u30B7\u30E7\u30F3\u306B\u306F\u3001\u30E6\u30FC\u30B6\u30FC\u306E\u30EA\u30B9\u30C8\u304C\u542B\u307E\u308C\u307E\u3059\u3002",email:"E\u30E1\u30FC\u30EB",phone:"\u96FB\u8A71",password:"\u30D1\u30B9\u30EF\u30FC\u30C9",user_attached_message:"\u3059\u3067\u306B\u4F7F\u7528\u4E2D\u306E\u30A2\u30A4\u30C6\u30E0\u306F\u524A\u9664\u3067\u304D\u307E\u305B\u3093",confirm_delete:"\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u3092\u56DE\u5FA9\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093|\u3053\u308C\u3089\u306E\u30E6\u30FC\u30B6\u30FC\u3092\u56DE\u5FA9\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",created_message:"\u30E6\u30FC\u30B6\u30FC\u304C\u6B63\u5E38\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F",updated_message:"\u30E6\u30FC\u30B6\u30FC\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",deleted_message:"\u30E6\u30FC\u30B6\u30FC\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F|\u30E6\u30FC\u30B6\u30FC\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F"},Il={title:"\u5831\u544A\u3059\u308B",from_date:"\u65E5\u4ED8\u304B\u3089",to_date:"\u73FE\u5728\u307E\u3067",status:"\u72B6\u614B",paid:"\u6709\u6599",unpaid:"\u672A\u6255\u3044",download_pdf:"PDF\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9",view_pdf:"PDF\u3092\u898B\u308B",update_report:"\u30EC\u30DD\u30FC\u30C8\u306E\u66F4\u65B0",report:"\u30EC\u30DD\u30FC\u30C8|\u30EC\u30DD\u30FC\u30C8",profit_loss:{profit_loss:"\u5229\u76CA",to_date:"\u73FE\u5728\u307E\u3067",from_date:"\u65E5\u4ED8\u304B\u3089",date_range:"\u65E5\u4ED8\u7BC4\u56F2\u3092\u9078\u629E"},sales:{sales:"\u8CA9\u58F2",date_range:"\u65E5\u4ED8\u7BC4\u56F2\u3092\u9078\u629E",to_date:"\u73FE\u5728\u307E\u3067",from_date:"\u65E5\u4ED8\u304B\u3089",report_type:"\u30EC\u30DD\u30FC\u30C8\u30BF\u30A4\u30D7"},taxes:{taxes:"\u7A0E\u91D1",to_date:"\u73FE\u5728\u307E\u3067",from_date:"\u65E5\u4ED8\u304B\u3089",date_range:"\u65E5\u4ED8\u7BC4\u56F2\u3092\u9078\u629E"},errors:{required:"\u30D5\u30A3\u30FC\u30EB\u30C9\u306F\u5FC5\u9808\u9805\u76EE\u3067\u3059"},invoices:{invoice:"\u8ACB\u6C42\u66F8",invoice_date:"\u8ACB\u6C42\u66F8\u306E\u65E5\u4ED8",due_date:"\u671F\u65E5",amount:"\u91CF",contact_name:"\u9023\u7D61\u5148",status:"\u72B6\u614B"},estimates:{estimate:"\u898B\u7A4D\u3082\u308A",estimate_date:"\u898B\u7A4D\u3082\u308A\u65E5",due_date:"\u671F\u65E5",estimate_number:"\u898B\u7A4D\u3082\u308A\u756A\u53F7",ref_number:"\u53C2\u7167\u756A\u53F7",amount:"\u91CF",contact_name:"\u9023\u7D61\u5148",status:"\u72B6\u614B"},expenses:{expenses:"\u7D4C\u8CBB",category:"\u30AB\u30C6\u30B4\u30EA\u30FC",date:"\u65E5\u4ED8",amount:"\u91CF",to_date:"\u73FE\u5728\u307E\u3067",from_date:"\u65E5\u4ED8\u304B\u3089",date_range:"\u65E5\u4ED8\u7BC4\u56F2\u3092\u9078\u629E"}},$l={menu_title:{account_settings:"\u30A2\u30AB\u30A6\u30F3\u30C8\u8A2D\u5B9A",company_information:"\u4F1A\u793E\u60C5\u5831",customization:"\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA",preferences:"\u74B0\u5883\u8A2D\u5B9A",notifications:"\u901A\u77E5",tax_types:"\u7A0E\u306E\u7A2E\u985E",expense_category:"\u7D4C\u8CBB\u30AB\u30C6\u30B4\u30EA",update_app:"\u30A2\u30D7\u30EA\u3092\u66F4\u65B0",backup:"\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7",file_disk:"\u30D5\u30A1\u30A4\u30EB\u30C7\u30A3\u30B9\u30AF",custom_fields:"\u30AB\u30B9\u30BF\u30E0\u30D5\u30A3\u30FC\u30EB\u30C9",payment_modes:"\u652F\u6255\u3044\u30E2\u30FC\u30C9",notes:"\u30CE\u30FC\u30C8"},title:"\u8A2D\u5B9A",setting:"\u8A2D\u5B9A|\u8A2D\u5B9A",general:"\u4E00\u822C",language:"\u8A00\u8A9E",primary_currency:"\u4E00\u6B21\u901A\u8CA8",timezone:"\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3",date_format:"\u65E5\u4ED8\u5F62\u5F0F",currencies:{title:"\u901A\u8CA8",currency:"\u901A\u8CA8|\u901A\u8CA8",currencies_list:"\u901A\u8CA8\u30EA\u30B9\u30C8",select_currency:"\u901A\u8CA8\u3092\u9078\u629E",name:"\u540D\u524D",code:"\u30B3\u30FC\u30C9",symbol:"\u30B7\u30F3\u30DC\u30EB",precision:"\u7CBE\u5EA6",thousand_separator:"\u30B5\u30A6\u30B6\u30F3\u30C9\u30BB\u30D1\u30EC\u30FC\u30BF\u30FC",decimal_separator:"\u5C0F\u6570\u70B9\u8A18\u53F7",position:"\u30DD\u30B8\u30B7\u30E7\u30F3",position_of_symbol:"\u30B7\u30F3\u30DC\u30EB\u306E\u4F4D\u7F6E",right:"\u6B63\u3057\u3044",left:"\u5DE6",action:"\u30A2\u30AF\u30B7\u30E7\u30F3",add_currency:"\u901A\u8CA8\u3092\u8FFD\u52A0\u3059\u308B"},mail:{host:"\u30E1\u30FC\u30EB\u30DB\u30B9\u30C8",port:"\u30E1\u30FC\u30EB\u30DD\u30FC\u30C8",driver:"\u30E1\u30FC\u30EB\u30C9\u30E9\u30A4\u30D0\u30FC",secret:"\u79D8\u5BC6",mailgun_secret:"\u30E1\u30FC\u30EB\u30AC\u30F3\u30B7\u30FC\u30AF\u30EC\u30C3\u30C8",mailgun_domain:"\u30C9\u30E1\u30A4\u30F3",mailgun_endpoint:"Mailgun\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8",ses_secret:"SES\u30B7\u30FC\u30AF\u30EC\u30C3\u30C8",ses_key:"SES\u30AD\u30FC",password:"\u30E1\u30FC\u30EB\u30D1\u30B9\u30EF\u30FC\u30C9",username:"\u30E1\u30FC\u30EB\u30E6\u30FC\u30B6\u30FC\u540D",mail_config:"\u30E1\u30FC\u30EB\u8A2D\u5B9A",from_name:"\u30E1\u30FC\u30EB\u540D\u304B\u3089",from_mail:"\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u304B\u3089",encryption:"\u30E1\u30FC\u30EB\u306E\u6697\u53F7\u5316",mail_config_desc:"\u4EE5\u4E0B\u306F\u3001\u30A2\u30D7\u30EA\u304B\u3089\u30E1\u30FC\u30EB\u3092\u9001\u4FE1\u3059\u308B\u305F\u3081\u306E\u30E1\u30FC\u30EB\u30C9\u30E9\u30A4\u30D0\u30FC\u3092\u69CB\u6210\u3059\u308B\u305F\u3081\u306E\u30D5\u30A9\u30FC\u30E0\u3067\u3059\u3002 Sendgrid\u3001SES\u306A\u3069\u306E\u30B5\u30FC\u30C9\u30D1\u30FC\u30C6\u30A3\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u69CB\u6210\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002"},pdf:{title:"PDF\u8A2D\u5B9A",footer_text:"\u30D5\u30C3\u30BF\u30FC\u30C6\u30AD\u30B9\u30C8",pdf_layout:"PDF\u30EC\u30A4\u30A2\u30A6\u30C8"},company_info:{company_info:"\u4F1A\u793E\u60C5\u5831",company_name:"\u4F1A\u793E\u540D",company_logo:"\u4F1A\u793E\u306E\u30ED\u30B4",section_description:"Crater\u306B\u3088\u3063\u3066\u4F5C\u6210\u3055\u308C\u305F\u8ACB\u6C42\u66F8\u3001\u898B\u7A4D\u3082\u308A\u3001\u304A\u3088\u3073\u305D\u306E\u4ED6\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306B\u8868\u793A\u3055\u308C\u308B\u4F1A\u793E\u306B\u95A2\u3059\u308B\u60C5\u5831\u3002",phone:"\u96FB\u8A71",country:"\u56FD",state:"\u72B6\u614B",city:"\u5E02",address:"\u4F4F\u6240",zip:"\u30B8\u30C3\u30D7",save:"\u30BB\u30FC\u30D6",updated_message:"\u4F1A\u793E\u60C5\u5831\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F"},custom_fields:{title:"\u30AB\u30B9\u30BF\u30E0\u30D5\u30A3\u30FC\u30EB\u30C9",section_description:"\u8ACB\u6C42\u66F8\u3001\u898B\u7A4D\u3082\u308A\u3092\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA\u3059\u308B",add_custom_field:"\u30AB\u30B9\u30BF\u30E0\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u8FFD\u52A0",edit_custom_field:"\u30AB\u30B9\u30BF\u30E0\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u7DE8\u96C6",field_name:"\u30D5\u30A3\u30FC\u30EB\u30C9\u540D",label:"\u30E9\u30D9\u30EB",type:"\u30BF\u30A4\u30D7",name:"\u540D\u524D",required:"\u5FC5\u9808",placeholder:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30FC",help_text:"\u30D8\u30EB\u30D7\u30C6\u30AD\u30B9\u30C8",default_value:"\u30C7\u30D5\u30A9\u30EB\u30C8\u5024",prefix:"\u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9",starting_number:"\u958B\u59CB\u756A\u53F7",model:"\u30E2\u30C7\u30EB",help_text_description:"\u30E6\u30FC\u30B6\u30FC\u304C\u3053\u306E\u30AB\u30B9\u30BF\u30E0\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u76EE\u7684\u3092\u7406\u89E3\u3067\u304D\u308B\u3088\u3046\u306B\u3001\u30C6\u30AD\u30B9\u30C8\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002",suffix:"\u30B5\u30D5\u30A3\u30C3\u30AF\u30B9",yes:"\u306F\u3044",no:"\u756A\u53F7",order:"\u6CE8\u6587",custom_field_confirm_delete:"\u3053\u306E\u30AB\u30B9\u30BF\u30E0\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u56DE\u5FA9\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",already_in_use:"\u30AB\u30B9\u30BF\u30E0\u30D5\u30A3\u30FC\u30EB\u30C9\u306F\u3059\u3067\u306B\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059",deleted_message:"\u30AB\u30B9\u30BF\u30E0\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F",options:"\u30AA\u30D7\u30B7\u30E7\u30F3",add_option:"\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u8FFD\u52A0",add_another_option:"\u5225\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u8FFD\u52A0\u3059\u308B",sort_in_alphabetical_order:"\u30A2\u30EB\u30D5\u30A1\u30D9\u30C3\u30C8\u9806\u306B\u4E26\u3079\u66FF\u3048\u308B",add_options_in_bulk:"\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u307E\u3068\u3081\u3066\u8FFD\u52A0\u3059\u308B",use_predefined_options:"\u4E8B\u524D\u5B9A\u7FA9\u3055\u308C\u305F\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3059\u308B",select_custom_date:"\u30AB\u30B9\u30BF\u30E0\u65E5\u4ED8\u3092\u9078\u629E",select_relative_date:"\u76F8\u5BFE\u65E5\u4ED8\u3092\u9078\u629E",ticked_by_default:"\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u30C1\u30A7\u30C3\u30AF\u3055\u308C\u3066\u3044\u307E\u3059",updated_message:"\u30AB\u30B9\u30BF\u30E0\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",added_message:"\u30AB\u30B9\u30BF\u30E0\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u6B63\u5E38\u306B\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F"},customization:{customization:"\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA",save:"\u30BB\u30FC\u30D6",addresses:{title:"\u4F4F\u6240",section_description:"\u9867\u5BA2\u306E\u8ACB\u6C42\u5148\u4F4F\u6240\u3068\u9867\u5BA2\u306E\u914D\u9001\u5148\u4F4F\u6240\u306E\u5F62\u5F0F\u3092\u8A2D\u5B9A\u3067\u304D\u307E\u3059\uFF08PDF\u3067\u306E\u307F\u8868\u793A\uFF09\u3002",customer_billing_address:"\u9867\u5BA2\u306E\u8ACB\u6C42\u5148\u4F4F\u6240",customer_shipping_address:"\u304A\u5BA2\u69D8\u306E\u914D\u9001\u5148\u4F4F\u6240",company_address:"\u4F1A\u793E\u306E\u4F4F\u6240",insert_fields:"\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u633F\u5165",contact:"\u9023\u7D61\u5148",address:"\u4F4F\u6240",display_name:"\u8868\u793A\u540D",primary_contact_name:"\u4E3B\u306A\u9023\u7D61\u5148\u540D",email:"E\u30E1\u30FC\u30EB",website:"\u30A6\u30A7\u30D6\u30B5\u30A4\u30C8",name:"\u540D\u524D",country:"\u56FD",state:"\u72B6\u614B",city:"\u5E02",company_name:"\u4F1A\u793E\u540D",address_street_1:"\u4F4F\u6240\u901A\u308A1",address_street_2:"\u30A2\u30C9\u30EC\u30B9\u30B9\u30C8\u30EA\u30FC\u30C82",phone:"\u96FB\u8A71",zip_code:"\u90F5\u4FBF\u756A\u53F7",address_setting_updated:"\u30A2\u30C9\u30EC\u30B9\u8A2D\u5B9A\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F"},updated_message:"\u4F1A\u793E\u60C5\u5831\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",invoices:{title:"\u8ACB\u6C42\u66F8",notes:"\u30CE\u30FC\u30C8",invoice_prefix:"\u8ACB\u6C42\u66F8\u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9",default_invoice_email_body:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u8ACB\u6C42\u66F8\u30E1\u30FC\u30EB\u672C\u6587",invoice_settings:"\u8ACB\u6C42\u66F8\u306E\u8A2D\u5B9A",autogenerate_invoice_number:"\u8ACB\u6C42\u66F8\u756A\u53F7\u306E\u81EA\u52D5\u751F\u6210",autogenerate_invoice_number_desc:"\u65B0\u3057\u3044\u8ACB\u6C42\u66F8\u3092\u4F5C\u6210\u3059\u308B\u305F\u3073\u306B\u8ACB\u6C42\u66F8\u756A\u53F7\u3092\u81EA\u52D5\u751F\u6210\u3057\u305F\u304F\u306A\u3044\u5834\u5408\u306F\u3001\u3053\u308C\u3092\u7121\u52B9\u306B\u3057\u307E\u3059\u3002",invoice_email_attachment:"\u8ACB\u6C42\u66F8\u3092\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u9001\u4FE1\u3059\u308B",invoice_email_attachment_setting_description:"\u8ACB\u6C42\u66F8\u3092\u96FB\u5B50\u30E1\u30FC\u30EB\u306E\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u9001\u4FE1\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u308C\u3092\u6709\u52B9\u306B\u3057\u307E\u3059\u3002\u30E1\u30FC\u30EB\u306E[\u8ACB\u6C42\u66F8\u306E\u8868\u793A]\u30DC\u30BF\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\u3068\u3001\u8868\u793A\u3055\u308C\u306A\u304F\u306A\u308B\u3053\u3068\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044\u3002",enter_invoice_prefix:"\u8ACB\u6C42\u66F8\u306E\u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044",terms_and_conditions:"\u898F\u7D04\u3068\u6761\u4EF6",company_address_format:"\u4F1A\u793E\u306E\u4F4F\u6240\u5F62\u5F0F",shipping_address_format:"\u914D\u9001\u5148\u4F4F\u6240\u306E\u5F62\u5F0F",billing_address_format:"\u8ACB\u6C42\u5148\u4F4F\u6240\u306E\u5F62\u5F0F",invoice_settings_updated:"\u8ACB\u6C42\u66F8\u8A2D\u5B9A\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F"},estimates:{title:"\u898B\u7A4D\u308A",estimate_prefix:"\u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9\u306E\u898B\u7A4D\u3082\u308A",default_estimate_email_body:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u898B\u7A4D\u3082\u308A\u30E1\u30FC\u30EB\u672C\u6587",estimate_settings:"\u898B\u7A4D\u3082\u308A\u306E\u8A2D\u5B9A",autogenerate_estimate_number:"\u898B\u7A4D\u3082\u308A\u756A\u53F7\u306E\u81EA\u52D5\u751F\u6210",estimate_setting_description:"\u65B0\u3057\u3044\u898B\u7A4D\u3082\u308A\u3092\u4F5C\u6210\u3059\u308B\u305F\u3073\u306B\u898B\u7A4D\u3082\u308A\u756A\u53F7\u3092\u81EA\u52D5\u751F\u6210\u3057\u305F\u304F\u306A\u3044\u5834\u5408\u306F\u3001\u3053\u308C\u3092\u7121\u52B9\u306B\u3057\u307E\u3059\u3002",estimate_email_attachment:"\u898B\u7A4D\u3082\u308A\u3092\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u9001\u4FE1\u3059\u308B",estimate_email_attachment_setting_description:"\u898B\u7A4D\u3082\u308A\u3092\u96FB\u5B50\u30E1\u30FC\u30EB\u306E\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u9001\u4FE1\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u308C\u3092\u6709\u52B9\u306B\u3057\u307E\u3059\u3002\u6709\u52B9\u306B\u3059\u308B\u3068\u3001\u30E1\u30FC\u30EB\u306E[\u898B\u7A4D\u3082\u308A\u3092\u8868\u793A]\u30DC\u30BF\u30F3\u304C\u8868\u793A\u3055\u308C\u306A\u304F\u306A\u308B\u3053\u3068\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044\u3002",enter_estimate_prefix:"\u63A8\u5B9A\u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9\u3092\u5165\u529B\u3057\u307E\u3059",estimate_setting_updated:"\u898B\u7A4D\u3082\u308A\u8A2D\u5B9A\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",company_address_format:"\u4F1A\u793E\u306E\u4F4F\u6240\u5F62\u5F0F",billing_address_format:"\u8ACB\u6C42\u5148\u4F4F\u6240\u306E\u5F62\u5F0F",shipping_address_format:"\u914D\u9001\u5148\u4F4F\u6240\u306E\u5F62\u5F0F"},payments:{title:"\u652F\u6255\u3044",description:"\u652F\u6255\u3044\u306E\u53D6\u5F15\u30E2\u30FC\u30C9",payment_prefix:"\u652F\u6255\u3044\u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9",default_payment_email_body:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u652F\u6255\u3044\u30E1\u30FC\u30EB\u672C\u6587",payment_settings:"\u652F\u6255\u3044\u8A2D\u5B9A",autogenerate_payment_number:"\u652F\u6255\u3044\u756A\u53F7\u306E\u81EA\u52D5\u751F\u6210",payment_setting_description:"\u65B0\u3057\u3044\u652F\u6255\u3044\u3092\u4F5C\u6210\u3059\u308B\u305F\u3073\u306B\u652F\u6255\u3044\u756A\u53F7\u3092\u81EA\u52D5\u751F\u6210\u3057\u305F\u304F\u306A\u3044\u5834\u5408\u306F\u3001\u3053\u308C\u3092\u7121\u52B9\u306B\u3057\u307E\u3059\u3002",payment_email_attachment:"\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u652F\u6255\u3044\u3092\u9001\u4FE1\u3059\u308B",payment_email_attachment_setting_description:"\u9818\u53CE\u66F8\u3092\u30E1\u30FC\u30EB\u306E\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u9001\u4FE1\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u308C\u3092\u6709\u52B9\u306B\u3057\u307E\u3059\u3002\u6709\u52B9\u306B\u3059\u308B\u3068\u3001\u30E1\u30FC\u30EB\u306E[\u652F\u6255\u3044\u306E\u8868\u793A]\u30DC\u30BF\u30F3\u304C\u8868\u793A\u3055\u308C\u306A\u304F\u306A\u308B\u3053\u3068\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044\u3002",enter_payment_prefix:"\u652F\u6255\u3044\u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044",payment_setting_updated:"\u652F\u6255\u3044\u8A2D\u5B9A\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",payment_modes:"\u652F\u6255\u3044\u30E2\u30FC\u30C9",add_payment_mode:"\u652F\u6255\u3044\u30E2\u30FC\u30C9\u306E\u8FFD\u52A0",edit_payment_mode:"\u652F\u6255\u3044\u30E2\u30FC\u30C9\u306E\u7DE8\u96C6",mode_name:"\u30E2\u30FC\u30C9\u540D",payment_mode_added:"\u652F\u6255\u3044\u30E2\u30FC\u30C9\u304C\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F",payment_mode_updated:"\u652F\u6255\u3044\u30E2\u30FC\u30C9\u304C\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",payment_mode_confirm_delete:"\u3053\u306E\u652F\u6255\u3044\u30E2\u30FC\u30C9\u3092\u56DE\u5FA9\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",already_in_use:"\u652F\u6255\u3044\u30E2\u30FC\u30C9\u306F\u3059\u3067\u306B\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059",deleted_message:"\u652F\u6255\u3044\u30E2\u30FC\u30C9\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F",company_address_format:"\u4F1A\u793E\u306E\u4F4F\u6240\u5F62\u5F0F",from_customer_address_format:"\u9867\u5BA2\u306E\u4F4F\u6240\u5F62\u5F0F\u304B\u3089"},items:{title:"\u30A2\u30A4\u30C6\u30E0",units:"\u5358\u4F4D",add_item_unit:"\u30A2\u30A4\u30C6\u30E0\u30E6\u30CB\u30C3\u30C8\u3092\u8FFD\u52A0",edit_item_unit:"\u30A2\u30A4\u30C6\u30E0\u30E6\u30CB\u30C3\u30C8\u306E\u7DE8\u96C6",unit_name:"\u30E6\u30CB\u30C3\u30C8\u540D",item_unit_added:"\u30A2\u30A4\u30C6\u30E0\u30E6\u30CB\u30C3\u30C8\u304C\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F",item_unit_updated:"\u30A2\u30A4\u30C6\u30E0\u30E6\u30CB\u30C3\u30C8\u304C\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",item_unit_confirm_delete:"\u3053\u306E\u30A2\u30A4\u30C6\u30E0\u30E6\u30CB\u30C3\u30C8\u3092\u56DE\u5FA9\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",already_in_use:"\u30A2\u30A4\u30C6\u30E0\u30E6\u30CB\u30C3\u30C8\u306F\u3059\u3067\u306B\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059",deleted_message:"\u30A2\u30A4\u30C6\u30E0\u30E6\u30CB\u30C3\u30C8\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F"},notes:{title:"\u30CE\u30FC\u30C8",description:"\u30E1\u30E2\u3092\u4F5C\u6210\u3057\u3066\u8ACB\u6C42\u66F8\u3084\u898B\u7A4D\u3082\u308A\u306B\u518D\u5229\u7528\u3059\u308B\u3053\u3068\u3067\u6642\u9593\u3092\u7BC0\u7D04\u3067\u304D\u307E\u3059",notes:"\u30CE\u30FC\u30C8",type:"\u30BF\u30A4\u30D7",add_note:"\u30E1\u30E2\u3092\u8FFD\u52A0",add_new_note:"\u65B0\u3057\u3044\u30E1\u30E2\u3092\u8FFD\u52A0",name:"\u540D\u524D",edit_note:"\u30E1\u30E2\u3092\u7DE8\u96C6",note_added:"\u30E1\u30E2\u304C\u6B63\u5E38\u306B\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F",note_updated:"\u6CE8\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",note_confirm_delete:"\u3053\u306E\u30E1\u30E2\u3092\u5FA9\u5143\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",already_in_use:"\u30CE\u30FC\u30C8\u306F\u3059\u3067\u306B\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059",deleted_message:"\u30E1\u30E2\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F"}},account_settings:{profile_picture:"\u30D7\u30ED\u30D5\u30A3\u30FC\u30EB\u306E\u5199\u771F",name:"\u540D\u524D",email:"E\u30E1\u30FC\u30EB",password:"\u30D1\u30B9\u30EF\u30FC\u30C9",confirm_password:"\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u8A8D\u8A3C\u3059\u308B",account_settings:"\u30A2\u30AB\u30A6\u30F3\u30C8\u8A2D\u5B9A",save:"\u30BB\u30FC\u30D6",section_description:"\u3042\u306A\u305F\u306F\u3042\u306A\u305F\u306E\u540D\u524D\u3001\u96FB\u5B50\u30E1\u30FC\u30EB\u3092\u66F4\u65B0\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059",updated_message:"\u30A2\u30AB\u30A6\u30F3\u30C8\u8A2D\u5B9A\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F"},user_profile:{name:"\u540D\u524D",email:"E\u30E1\u30FC\u30EB",password:"\u30D1\u30B9\u30EF\u30FC\u30C9",confirm_password:"\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u8A8D\u8A3C\u3059\u308B"},notification:{title:"\u901A\u77E5",email:"\u306B\u901A\u77E5\u3092\u9001\u4FE1\u3059\u308B",description:"\u4F55\u304B\u304C\u5909\u308F\u3063\u305F\u3068\u304D\u306B\u3069\u306E\u30E1\u30FC\u30EB\u901A\u77E5\u3092\u53D7\u3051\u53D6\u308A\u305F\u3044\u3067\u3059\u304B\uFF1F",invoice_viewed:"\u8ACB\u6C42\u66F8\u3092\u8868\u793A",invoice_viewed_desc:"\u9867\u5BA2\u304C\u30AF\u30EC\u30FC\u30BF\u30FC\u30C0\u30C3\u30B7\u30E5\u30DC\u30FC\u30C9\u3092\u4ECB\u3057\u3066\u9001\u4FE1\u3055\u308C\u305F\u8ACB\u6C42\u66F8\u3092\u8868\u793A\u3057\u305F\u3068\u304D\u3002",estimate_viewed:"\u95B2\u89A7\u3057\u305F\u898B\u7A4D\u3082\u308A",estimate_viewed_desc:"\u9867\u5BA2\u304C\u30AF\u30EC\u30FC\u30BF\u30FC\u30C0\u30C3\u30B7\u30E5\u30DC\u30FC\u30C9\u3092\u4ECB\u3057\u3066\u9001\u4FE1\u3055\u308C\u305F\u898B\u7A4D\u3082\u308A\u3092\u8868\u793A\u3057\u305F\u3068\u304D\u3002",save:"\u30BB\u30FC\u30D6",email_save_message:"\u30E1\u30FC\u30EB\u304C\u6B63\u5E38\u306B\u4FDD\u5B58\u3055\u308C\u307E\u3057\u305F",please_enter_email:"\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},tax_types:{title:"\u7A0E\u306E\u7A2E\u985E",add_tax:"\u7A0E\u91D1\u3092\u8FFD\u52A0\u3059\u308B",edit_tax:"\u7A0E\u91D1\u306E\u7DE8\u96C6",description:"\u5FC5\u8981\u306B\u5FDC\u3058\u3066\u7A0E\u91D1\u3092\u8FFD\u52A0\u307E\u305F\u306F\u524A\u9664\u3067\u304D\u307E\u3059\u3002\u30AF\u30EC\u30FC\u30BF\u30FC\u306F\u3001\u8ACB\u6C42\u66F8\u3060\u3051\u3067\u306A\u304F\u3001\u500B\u3005\u306E\u30A2\u30A4\u30C6\u30E0\u306B\u5BFE\u3059\u308B\u7A0E\u91D1\u3082\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u3059\u3002",add_new_tax:"\u65B0\u3057\u3044\u7A0E\u91D1\u3092\u8FFD\u52A0\u3059\u308B",tax_settings:"\u7A0E\u8A2D\u5B9A",tax_per_item:"\u30A2\u30A4\u30C6\u30E0\u3054\u3068\u306E\u7A0E\u91D1",tax_name:"\u7A0E\u540D",compound_tax:"\u8907\u5408\u7A0E",percent:"\u30D1\u30FC\u30BB\u30F3\u30C8",action:"\u30A2\u30AF\u30B7\u30E7\u30F3",tax_setting_description:"\u500B\u3005\u306E\u8ACB\u6C42\u66F8\u30A2\u30A4\u30C6\u30E0\u306B\u7A0E\u91D1\u3092\u8FFD\u52A0\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u308C\u3092\u6709\u52B9\u306B\u3057\u307E\u3059\u3002\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u306F\u3001\u7A0E\u91D1\u306F\u8ACB\u6C42\u66F8\u306B\u76F4\u63A5\u8FFD\u52A0\u3055\u308C\u307E\u3059\u3002",created_message:"\u7A0E\u30BF\u30A4\u30D7\u304C\u6B63\u5E38\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F",updated_message:"\u7A0E\u30BF\u30A4\u30D7\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",deleted_message:"\u7A0E\u30BF\u30A4\u30D7\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F",confirm_delete:"\u3053\u306E\u7A0E\u30BF\u30A4\u30D7\u3092\u56DE\u5FA9\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",already_in_use:"\u7A0E\u91D1\u306F\u3059\u3067\u306B\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059"},expense_category:{title:"\u7D4C\u8CBB\u30AB\u30C6\u30B4\u30EA",action:"\u30A2\u30AF\u30B7\u30E7\u30F3",description:"\u7D4C\u8CBB\u30A8\u30F3\u30C8\u30EA\u3092\u8FFD\u52A0\u3059\u308B\u306B\u306F\u3001\u30AB\u30C6\u30B4\u30EA\u304C\u5FC5\u8981\u3067\u3059\u3002\u597D\u307F\u306B\u5FDC\u3058\u3066\u3001\u3053\u308C\u3089\u306E\u30AB\u30C6\u30B4\u30EA\u3092\u8FFD\u52A0\u307E\u305F\u306F\u524A\u9664\u3067\u304D\u307E\u3059\u3002",add_new_category:"\u65B0\u3057\u3044\u30AB\u30C6\u30B4\u30EA\u3092\u8FFD\u52A0",add_category:"\u30AB\u30C6\u30B4\u30EA\u3092\u8FFD\u52A0",edit_category:"\u30AB\u30C6\u30B4\u30EA\u306E\u7DE8\u96C6",category_name:"\u7A2E\u5225\u540D",category_description:"\u8AAC\u660E",created_message:"\u7D4C\u8CBB\u30AB\u30C6\u30B4\u30EA\u304C\u6B63\u5E38\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F",deleted_message:"\u7D4C\u8CBB\u30AB\u30C6\u30B4\u30EA\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F",updated_message:"\u7D4C\u8CBB\u30AB\u30C6\u30B4\u30EA\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",confirm_delete:"\u3053\u306E\u7D4C\u8CBB\u30AB\u30C6\u30B4\u30EA\u3092\u56DE\u5FA9\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",already_in_use:"\u30AB\u30C6\u30B4\u30EA\u306F\u3059\u3067\u306B\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059"},preferences:{currency:"\u901A\u8CA8",default_language:"\u65E2\u5B9A\u306E\u8A00\u8A9E",time_zone:"\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3",fiscal_year:"\u4F1A\u8A08\u5E74\u5EA6",date_format:"\u65E5\u4ED8\u5F62\u5F0F",discount_setting:"\u5272\u5F15\u8A2D\u5B9A",discount_per_item:"\u30A2\u30A4\u30C6\u30E0\u3054\u3068\u306E\u5272\u5F15",discount_setting_description:"\u500B\u3005\u306E\u8ACB\u6C42\u66F8\u30A2\u30A4\u30C6\u30E0\u306B\u5272\u5F15\u3092\u8FFD\u52A0\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u308C\u3092\u6709\u52B9\u306B\u3057\u307E\u3059\u3002\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u306F\u3001\u5272\u5F15\u306F\u8ACB\u6C42\u66F8\u306B\u76F4\u63A5\u8FFD\u52A0\u3055\u308C\u307E\u3059\u3002",save:"\u30BB\u30FC\u30D6",preference:"\u597D\u307F|\u74B0\u5883\u8A2D\u5B9A",general_settings:"\u30B7\u30B9\u30C6\u30E0\u306E\u30C7\u30D5\u30A9\u30EB\u30C8\u8A2D\u5B9A\u3002",updated_message:"\u30D7\u30EA\u30D5\u30A1\u30EC\u30F3\u30B9\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",select_language:"\u8A00\u8A9E\u3092\u9078\u629E\u3059\u308B",select_time_zone:"\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3\u3092\u9078\u629E",select_date_format:"\u65E5\u4ED8\u5F62\u5F0F\u306E\u9078\u629E",select_financial_year:"\u4F1A\u8A08\u5E74\u5EA6\u3092\u9078\u629E"},update_app:{title:"\u30A2\u30D7\u30EA\u3092\u66F4\u65B0",description:"\u4E0B\u306E\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u65B0\u3057\u3044\u66F4\u65B0\u3092\u78BA\u8A8D\u3059\u308B\u3053\u3068\u3067\u3001\u30AF\u30EC\u30FC\u30BF\u30FC\u3092\u7C21\u5358\u306B\u66F4\u65B0\u3067\u304D\u307E\u3059\u3002",check_update:"\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u3059\u308B",avail_update:"\u65B0\u3057\u3044\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u304C\u5229\u7528\u53EF\u80FD",next_version:"\u6B21\u306E\u30D0\u30FC\u30B8\u30E7\u30F3",requirements:"\u8981\u4EF6",update:"\u4ECA\u3059\u3050\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8",update_progress:"\u66F4\u65B0\u4E2D...",progress_text:"\u307B\u3093\u306E\u6570\u5206\u304B\u304B\u308A\u307E\u3059\u3002\u66F4\u65B0\u304C\u5B8C\u4E86\u3059\u308B\u524D\u306B\u3001\u753B\u9762\u3092\u66F4\u65B0\u3057\u305F\u308A\u3001\u30A6\u30A3\u30F3\u30C9\u30A6\u3092\u9589\u3058\u305F\u308A\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002",update_success:"\u30A2\u30D7\u30EA\u304C\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F\uFF01\u30D6\u30E9\u30A6\u30B6\u30A6\u30A3\u30F3\u30C9\u30A6\u304C\u81EA\u52D5\u7684\u306B\u518D\u8AAD\u307F\u8FBC\u307F\u3055\u308C\u308B\u307E\u3067\u304A\u5F85\u3061\u304F\u3060\u3055\u3044\u3002",latest_message:"\u5229\u7528\u53EF\u80FD\u306A\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u306F\u3042\u308A\u307E\u305B\u3093\uFF01\u3042\u306A\u305F\u306F\u6700\u65B0\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u4F7F\u7528\u3057\u3066\u3044\u307E\u3059\u3002",current_version:"\u73FE\u884C\u7248",download_zip_file:"ZIP\u30D5\u30A1\u30A4\u30EB\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3059\u308B",unzipping_package:"\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u89E3\u51CD",copying_files:"\u30D5\u30A1\u30A4\u30EB\u306E\u30B3\u30D4\u30FC",deleting_files:"\u672A\u4F7F\u7528\u30D5\u30A1\u30A4\u30EB\u306E\u524A\u9664",running_migrations:"\u79FB\u884C\u306E\u5B9F\u884C",finishing_update:"\u66F4\u65B0\u306E\u7D42\u4E86",update_failed:"\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u306B\u5931\u6557\u3057\u307E\u3057\u305F",update_failed_text:"\u3054\u3081\u3093\u306A\u3055\u3044\uFF01\u66F4\u65B0\u304C\u5931\u6557\u3057\u307E\u3057\u305F\uFF1A{step} step"},backup:{title:"\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7|\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7",description:"\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u306F\u3001\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306E\u30C0\u30F3\u30D7\u3068\u3068\u3082\u306B\u3001\u6307\u5B9A\u3057\u305F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u5185\u306E\u3059\u3079\u3066\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u542B\u3080zip\u30D5\u30A1\u30A4\u30EB\u3067\u3059\u3002",new_backup:"\u65B0\u3057\u3044\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u3092\u8FFD\u52A0\u3059\u308B",create_backup:"\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u3092\u4F5C\u6210\u3059\u308B",select_backup_type:"\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u30BF\u30A4\u30D7\u3092\u9078\u629E\u3057\u307E\u3059",backup_confirm_delete:"\u3053\u306E\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u3092\u56DE\u5FA9\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",path:"\u9053",new_disk:"\u65B0\u3057\u3044\u30C7\u30A3\u30B9\u30AF",created_at:"\u3067\u4F5C\u6210\u3055\u308C\u305F",size:"\u30B5\u30A4\u30BA",dropbox:"\u30C9\u30ED\u30C3\u30D7\u30DC\u30C3\u30AF\u30B9",local:"\u5730\u5143",healthy:"\u5143\u6C17",amount_of_backups:"\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u306E\u91CF",newest_backups:"\u6700\u65B0\u306E\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7",used_storage:"\u4F7F\u7528\u6E08\u307F\u30B9\u30C8\u30EC\u30FC\u30B8",select_disk:"\u30C7\u30A3\u30B9\u30AF\u3092\u9078\u629E",action:"\u30A2\u30AF\u30B7\u30E7\u30F3",deleted_message:"\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F",created_message:"\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u304C\u6B63\u5E38\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F",invalid_disk_credentials:"\u9078\u629E\u3057\u305F\u30C7\u30A3\u30B9\u30AF\u306E\u8CC7\u683C\u60C5\u5831\u304C\u7121\u52B9\u3067\u3059"},disk:{title:"\u30D5\u30A1\u30A4\u30EB\u30C7\u30A3\u30B9\u30AF|\u30D5\u30A1\u30A4\u30EB\u30C7\u30A3\u30B9\u30AF",description:"\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u306F\u3001Crater\u306F\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u3001\u30A2\u30D0\u30BF\u30FC\u3001\u305D\u306E\u4ED6\u306E\u753B\u50CF\u30D5\u30A1\u30A4\u30EB\u3092\u4FDD\u5B58\u3059\u308B\u305F\u3081\u306B\u30ED\u30FC\u30AB\u30EB\u30C7\u30A3\u30B9\u30AF\u3092\u4F7F\u7528\u3057\u307E\u3059\u3002\u597D\u307F\u306B\u5FDC\u3058\u3066\u3001DigitalOcean\u3001S3\u3001Dropbox\u306A\u3069\u306E\u8907\u6570\u306E\u30C7\u30A3\u30B9\u30AF\u30C9\u30E9\u30A4\u30D0\u30FC\u3092\u69CB\u6210\u3067\u304D\u307E\u3059\u3002",created_at:"\u3067\u4F5C\u6210\u3055\u308C\u305F",dropbox:"\u30C9\u30ED\u30C3\u30D7\u30DC\u30C3\u30AF\u30B9",name:"\u540D\u524D",driver:"\u904B\u8EE2\u8005",disk_type:"\u30BF\u30A4\u30D7",disk_name:"\u30C7\u30A3\u30B9\u30AF\u540D",new_disk:"\u65B0\u3057\u3044\u30C7\u30A3\u30B9\u30AF\u3092\u8FFD\u52A0\u3059\u308B",filesystem_driver:"\u30D5\u30A1\u30A4\u30EB\u30B7\u30B9\u30C6\u30E0\u30C9\u30E9\u30A4\u30D0\u30FC",local_driver:"\u30ED\u30FC\u30AB\u30EB\u30C9\u30E9\u30A4\u30D0\u30FC",local_root:"\u30ED\u30FC\u30AB\u30EB\u30EB\u30FC\u30C8",public_driver:"\u30D1\u30D6\u30EA\u30C3\u30AF\u30C9\u30E9\u30A4\u30D0\u30FC",public_root:"\u30D1\u30D6\u30EA\u30C3\u30AF\u30EB\u30FC\u30C8",public_url:"\u30D1\u30D6\u30EA\u30C3\u30AFURL",public_visibility:"\u30D1\u30D6\u30EA\u30C3\u30AF\u30D3\u30B8\u30D3\u30EA\u30C6\u30A3",media_driver:"\u30E1\u30C7\u30A3\u30A2\u30C9\u30E9\u30A4\u30D0\u30FC",media_root:"\u30E1\u30C7\u30A3\u30A2\u30EB\u30FC\u30C8",aws_driver:"AWS\u30C9\u30E9\u30A4\u30D0\u30FC",aws_key:"AWS\u30AD\u30FC",aws_secret:"AWS\u30B7\u30FC\u30AF\u30EC\u30C3\u30C8",aws_region:"AWS\u30EA\u30FC\u30B8\u30E7\u30F3",aws_bucket:"AWS\u30D0\u30B1\u30C3\u30C8",aws_root:"AWS\u30EB\u30FC\u30C8",do_spaces_type:"\u30B9\u30DA\u30FC\u30B9\u30BF\u30A4\u30D7\u3092\u5B9F\u884C\u3057\u307E\u3059",do_spaces_key:"\u30B9\u30DA\u30FC\u30B9\u30AD\u30FC\u3092\u5B9F\u884C\u3057\u307E\u3059",do_spaces_secret:"\u30B9\u30DA\u30FC\u30B9\u30B7\u30FC\u30AF\u30EC\u30C3\u30C8\u3092\u884C\u3046",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"\u30B9\u30DA\u30FC\u30B9\u30D0\u30B1\u30C3\u30C8\u3092\u884C\u3046",do_spaces_endpoint:"\u30B9\u30DA\u30FC\u30B9\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8\u3092\u5B9F\u884C",do_spaces_root:"\u30B9\u30DA\u30FC\u30B9\u30EB\u30FC\u30C8\u3092\u5B9F\u884C\u3057\u307E\u3059",dropbox_type:"Dropbox\u30BF\u30A4\u30D7",dropbox_token:"Dropbox\u30C8\u30FC\u30AF\u30F3",dropbox_key:"Dropbox\u30AD\u30FC",dropbox_secret:"Dropbox\u30B7\u30FC\u30AF\u30EC\u30C3\u30C8",dropbox_app:"Dropbox\u30A2\u30D7\u30EA",dropbox_root:"Dropbox\u30EB\u30FC\u30C8",default_driver:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u30C9\u30E9\u30A4\u30D0\u30FC",is_default:"\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u3059",set_default_disk:"\u30C7\u30D5\u30A9\u30EB\u30C8\u30C7\u30A3\u30B9\u30AF\u306E\u8A2D\u5B9A",set_default_disk_confirm:"\u3053\u306E\u30C7\u30A3\u30B9\u30AF\u306F\u30C7\u30D5\u30A9\u30EB\u30C8\u3068\u3057\u3066\u8A2D\u5B9A\u3055\u308C\u3001\u3059\u3079\u3066\u306E\u65B0\u3057\u3044PDF\u304C\u3053\u306E\u30C7\u30A3\u30B9\u30AF\u306B\u4FDD\u5B58\u3055\u308C\u307E\u3059",success_set_default_disk:"\u30C7\u30A3\u30B9\u30AF\u304C\u30C7\u30D5\u30A9\u30EB\u30C8\u3068\u3057\u3066\u6B63\u5E38\u306B\u8A2D\u5B9A\u3055\u308C\u307E\u3057\u305F",save_pdf_to_disk:"PDF\u3092\u30C7\u30A3\u30B9\u30AF\u306B\u4FDD\u5B58",disk_setting_description:"\u5404\u8ACB\u6C42\u66F8\u306E\u30B3\u30D4\u30FC\u3092\u4FDD\u5B58\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u308C\u3092\u6709\u52B9\u306B\u3057\u307E\u3059\u3002\u898B\u7A4D\u3082\u308A",select_disk:"\u30C7\u30A3\u30B9\u30AF\u3092\u9078\u629E",disk_settings:"\u30C7\u30A3\u30B9\u30AF\u8A2D\u5B9A",confirm_delete:"\u65E2\u5B58\u306E\u30D5\u30A1\u30A4\u30EB",action:"\u30A2\u30AF\u30B7\u30E7\u30F3",edit_file_disk:"\u30D5\u30A1\u30A4\u30EB\u30C7\u30A3\u30B9\u30AF\u306E\u7DE8\u96C6",success_create:"\u30C7\u30A3\u30B9\u30AF\u304C\u6B63\u5E38\u306B\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F",success_update:"\u30C7\u30A3\u30B9\u30AF\u304C\u6B63\u5E38\u306B\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F",error:"\u30C7\u30A3\u30B9\u30AF\u306E\u8FFD\u52A0\u306B\u5931\u6557\u3057\u307E\u3057\u305F",deleted_message:"\u30D5\u30A1\u30A4\u30EB\u30C7\u30A3\u30B9\u30AF\u304C\u6B63\u5E38\u306B\u524A\u9664\u3055\u308C\u307E\u3057\u305F",disk_variables_save_successfully:"\u30C7\u30A3\u30B9\u30AF\u304C\u6B63\u5E38\u306B\u69CB\u6210\u3055\u308C\u307E\u3057\u305F",disk_variables_save_error:"\u30C7\u30A3\u30B9\u30AF\u69CB\u6210\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002",invalid_disk_credentials:"\u9078\u629E\u3057\u305F\u30C7\u30A3\u30B9\u30AF\u306E\u8CC7\u683C\u60C5\u5831\u304C\u7121\u52B9\u3067\u3059"}},Rl={account_info:"\u53E3\u5EA7\u60C5\u5831",account_info_desc:"\u4EE5\u4E0B\u306E\u8A73\u7D30\u306F\u3001\u30E1\u30A4\u30F3\u306E\u7BA1\u7406\u8005\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u4F5C\u6210\u3059\u308B\u305F\u3081\u306B\u4F7F\u7528\u3055\u308C\u307E\u3059\u3002\u307E\u305F\u3001\u30ED\u30B0\u30A4\u30F3\u5F8C\u306F\u3044\u3064\u3067\u3082\u8A73\u7D30\u3092\u5909\u66F4\u3067\u304D\u307E\u3059\u3002",name:"\u540D\u524D",email:"E\u30E1\u30FC\u30EB",password:"\u30D1\u30B9\u30EF\u30FC\u30C9",confirm_password:"\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u8A8D\u8A3C\u3059\u308B",save_cont:"\u30BB\u30FC\u30D6",company_info:"\u4F1A\u793E\u60C5\u5831",company_info_desc:"\u3053\u306E\u60C5\u5831\u306F\u8ACB\u6C42\u66F8\u306B\u8868\u793A\u3055\u308C\u307E\u3059\u3002\u3053\u308C\u306F\u5F8C\u3067\u8A2D\u5B9A\u30DA\u30FC\u30B8\u3067\u7DE8\u96C6\u3067\u304D\u308B\u3053\u3068\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044\u3002",company_name:"\u4F1A\u793E\u540D",company_logo:"\u4F1A\u793E\u306E\u30ED\u30B4",logo_preview:"\u30ED\u30B4\u30D7\u30EC\u30D3\u30E5\u30FC",preferences:"\u74B0\u5883\u8A2D\u5B9A",preferences_desc:"\u30B7\u30B9\u30C6\u30E0\u306E\u30C7\u30D5\u30A9\u30EB\u30C8\u8A2D\u5B9A\u3002",country:"\u56FD",state:"\u72B6\u614B",city:"\u5E02",address:"\u4F4F\u6240",street:"Street1 | 2\u4E01\u76EE",phone:"\u96FB\u8A71",zip_code:"\u90F5\u4FBF\u756A\u53F7",go_back:"\u623B\u308B",currency:"\u901A\u8CA8",language:"\u8A00\u8A9E",time_zone:"\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3",fiscal_year:"\u4F1A\u8A08\u5E74\u5EA6",date_format:"\u65E5\u4ED8\u5F62\u5F0F",from_address:"\u5DEE\u51FA\u4EBA\u4F4F\u6240",username:"\u30E6\u30FC\u30B6\u30FC\u540D",next:"\u6B21",continue:"\u7D99\u7D9A\u3059\u308B",skip:"\u30B9\u30AD\u30C3\u30D7",database:{database:"\u30B5\u30A4\u30C8\u306EURL",connection:"\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A",host:"\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u30DB\u30B9\u30C8",port:"\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u30DD\u30FC\u30C8",password:"\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u30D1\u30B9\u30EF\u30FC\u30C9",app_url:"\u30A2\u30D7\u30EA\u306EURL",app_domain:"\u30A2\u30D7\u30EA\u30C9\u30E1\u30A4\u30F3",username:"\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u30E6\u30FC\u30B6\u30FC\u540D",db_name:"\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u540D",db_path:"\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u30D1\u30B9",desc:"\u30B5\u30FC\u30D0\u30FC\u4E0A\u306B\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u3092\u4F5C\u6210\u3057\u3001\u4EE5\u4E0B\u306E\u30D5\u30A9\u30FC\u30E0\u3092\u4F7F\u7528\u3057\u3066\u8CC7\u683C\u60C5\u5831\u3092\u8A2D\u5B9A\u3057\u307E\u3059\u3002"},permissions:{permissions:"\u6A29\u9650",permission_confirm_title:"\u7D9A\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F",permission_confirm_desc:"\u30D5\u30A9\u30EB\u30C0\u306E\u30A2\u30AF\u30BB\u30B9\u8A31\u53EF\u306E\u78BA\u8A8D\u306B\u5931\u6557\u3057\u307E\u3057\u305F",permission_desc:"\u4EE5\u4E0B\u306F\u3001\u30A2\u30D7\u30EA\u304C\u6A5F\u80FD\u3059\u308B\u305F\u3081\u306B\u5FC5\u8981\u306A\u30D5\u30A9\u30EB\u30C0\u30FC\u306E\u30A2\u30AF\u30BB\u30B9\u8A31\u53EF\u306E\u30EA\u30B9\u30C8\u3067\u3059\u3002\u6A29\u9650\u30C1\u30A7\u30C3\u30AF\u306B\u5931\u6557\u3057\u305F\u5834\u5408\u306F\u3001\u5FC5\u305A\u30D5\u30A9\u30EB\u30C0\u306E\u6A29\u9650\u3092\u66F4\u65B0\u3057\u3066\u304F\u3060\u3055\u3044\u3002"},mail:{host:"\u30E1\u30FC\u30EB\u30DB\u30B9\u30C8",port:"\u30E1\u30FC\u30EB\u30DD\u30FC\u30C8",driver:"\u30E1\u30FC\u30EB\u30C9\u30E9\u30A4\u30D0\u30FC",secret:"\u79D8\u5BC6",mailgun_secret:"\u30E1\u30FC\u30EB\u30AC\u30F3\u30B7\u30FC\u30AF\u30EC\u30C3\u30C8",mailgun_domain:"\u30C9\u30E1\u30A4\u30F3",mailgun_endpoint:"Mailgun\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8",ses_secret:"SES\u30B7\u30FC\u30AF\u30EC\u30C3\u30C8",ses_key:"SES\u30AD\u30FC",password:"\u30E1\u30FC\u30EB\u30D1\u30B9\u30EF\u30FC\u30C9",username:"\u30E1\u30FC\u30EB\u30E6\u30FC\u30B6\u30FC\u540D",mail_config:"\u30E1\u30FC\u30EB\u8A2D\u5B9A",from_name:"\u30E1\u30FC\u30EB\u540D\u304B\u3089",from_mail:"\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u304B\u3089",encryption:"\u30E1\u30FC\u30EB\u306E\u6697\u53F7\u5316",mail_config_desc:"\u4EE5\u4E0B\u306F\u3001\u30A2\u30D7\u30EA\u304B\u3089\u30E1\u30FC\u30EB\u3092\u9001\u4FE1\u3059\u308B\u305F\u3081\u306E\u30E1\u30FC\u30EB\u30C9\u30E9\u30A4\u30D0\u30FC\u3092\u69CB\u6210\u3059\u308B\u305F\u3081\u306E\u30D5\u30A9\u30FC\u30E0\u3067\u3059\u3002 Sendgrid\u3001SES\u306A\u3069\u306E\u30B5\u30FC\u30C9\u30D1\u30FC\u30C6\u30A3\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u69CB\u6210\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002"},req:{system_req:"\u30B7\u30B9\u30C6\u30E0\u8981\u6C42",php_req_version:"PHP\uFF08\u30D0\u30FC\u30B8\u30E7\u30F3{version}\u304C\u5FC5\u8981\uFF09",check_req:"\u8981\u4EF6\u3092\u78BA\u8A8D\u3059\u308B",system_req_desc:"\u30AF\u30EC\u30FC\u30BF\u30FC\u306B\u306F\u3044\u304F\u3064\u304B\u306E\u30B5\u30FC\u30D0\u30FC\u8981\u4EF6\u304C\u3042\u308A\u307E\u3059\u3002\u30B5\u30FC\u30D0\u30FC\u306B\u5FC5\u8981\u306Aphp\u30D0\u30FC\u30B8\u30E7\u30F3\u3068\u4EE5\u4E0B\u306B\u8A18\u8F09\u3055\u308C\u3066\u3044\u308B\u3059\u3079\u3066\u306E\u62E1\u5F35\u6A5F\u80FD\u304C\u3042\u308B\u3053\u3068\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002"},errors:{migrate_failed:"\u79FB\u884C\u306B\u5931\u6557\u3057\u307E\u3057\u305F",database_variables_save_error:"\u69CB\u6210\u3092.env\u30D5\u30A1\u30A4\u30EB\u306B\u66F8\u304D\u8FBC\u3081\u307E\u305B\u3093\u3002\u30D5\u30A1\u30A4\u30EB\u306E\u30A2\u30AF\u30BB\u30B9\u8A31\u53EF\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044",mail_variables_save_error:"\u96FB\u5B50\u30E1\u30FC\u30EB\u306E\u69CB\u6210\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002",connection_failed:"\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A\u306B\u5931\u6557\u3057\u307E\u3057\u305F",database_should_be_empty:"\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306F\u7A7A\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059"},success:{mail_variables_save_successfully:"\u96FB\u5B50\u30E1\u30FC\u30EB\u304C\u6B63\u5E38\u306B\u69CB\u6210\u3055\u308C\u307E\u3057\u305F",database_variables_save_successfully:"\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u304C\u6B63\u5E38\u306B\u69CB\u6210\u3055\u308C\u307E\u3057\u305F\u3002"}},Fl={invalid_phone:"\u7121\u52B9\u306A\u96FB\u8A71\u756A\u53F7",invalid_url:"\u7121\u52B9\u306AURL\uFF08\u4F8B\uFF1Ahttp\uFF1A//www.craterapp.com\uFF09",invalid_domain_url:"\u7121\u52B9\u306AURL\uFF08\u4F8B\uFF1Acraterapp.com\uFF09",required:"\u30D5\u30A3\u30FC\u30EB\u30C9\u306F\u5FC5\u9808\u9805\u76EE\u3067\u3059",email_incorrect:"\u8AA4\u3063\u305F\u30E1\u30FC\u30EB\u3002",email_already_taken:"\u30E1\u30FC\u30EB\u306F\u3059\u3067\u306B\u53D6\u3089\u308C\u3066\u3044\u307E\u3059\u3002",email_does_not_exist:"\u6307\u5B9A\u3055\u308C\u305F\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u3092\u6301\u3064\u30E6\u30FC\u30B6\u30FC\u306F\u5B58\u5728\u3057\u307E\u305B\u3093",item_unit_already_taken:"\u3053\u306E\u30A2\u30A4\u30C6\u30E0\u306E\u30E6\u30CB\u30C3\u30C8\u540D\u306F\u3059\u3067\u306B\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059",payment_mode_already_taken:"\u3053\u306E\u652F\u6255\u3044\u30E2\u30FC\u30C9\u540D\u306F\u3059\u3067\u306B\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059",send_reset_link:"\u30EA\u30BB\u30C3\u30C8\u30EA\u30F3\u30AF\u3092\u9001\u4FE1\u3059\u308B",not_yet:"\u672A\u3060\u306B\uFF1F\u3082\u3046\u4E00\u5EA6\u9001\u4FE1\u3057\u3066\u304F\u3060\u3055\u3044",password_min_length:"\u30D1\u30B9\u30EF\u30FC\u30C9\u306B\u306F{count}\u6587\u5B57\u3092\u542B\u3081\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059",name_min_length:"\u540D\u524D\u306B\u306F\u5C11\u306A\u304F\u3068\u3082{count}\u6587\u5B57\u304C\u5FC5\u8981\u3067\u3059\u3002",enter_valid_tax_rate:"\u6709\u52B9\u306A\u7A0E\u7387\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044",numbers_only:"\u6570\u5B57\u306E\u307F\u3002",characters_only:"\u6587\u5B57\u306E\u307F\u3002",password_incorrect:"\u30D1\u30B9\u30EF\u30FC\u30C9\u306F\u540C\u4E00\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059",password_length:"\u30D1\u30B9\u30EF\u30FC\u30C9\u306F{count}\u6587\u5B57\u306E\u9577\u3055\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002",qty_must_greater_than_zero:"\u6570\u91CF\u306F\u30BC\u30ED\u3088\u308A\u5927\u304D\u304F\u306A\u3051\u308C\u3070\u306A\u308A\u307E\u305B\u3093\u3002",price_greater_than_zero:"\u4FA1\u683C\u306F\u30BC\u30ED\u3088\u308A\u5927\u304D\u304F\u306A\u3051\u308C\u3070\u306A\u308A\u307E\u305B\u3093\u3002",payment_greater_than_zero:"\u652F\u6255\u3044\u306F\u30BC\u30ED\u3088\u308A\u5927\u304D\u304F\u306A\u3051\u308C\u3070\u306A\u308A\u307E\u305B\u3093\u3002",payment_greater_than_due_amount:"\u5165\u529B\u3055\u308C\u305F\u652F\u6255\u3044\u306F\u3001\u3053\u306E\u8ACB\u6C42\u66F8\u306E\u652F\u6255\u984D\u3092\u8D85\u3048\u3066\u3044\u307E\u3059\u3002",quantity_maxlength:"\u6570\u91CF\u306F20\u6841\u3092\u8D85\u3048\u3066\u306F\u306A\u308A\u307E\u305B\u3093\u3002",price_maxlength:"\u4FA1\u683C\u306F20\u6841\u3092\u8D85\u3048\u3066\u306F\u306A\u308A\u307E\u305B\u3093\u3002",price_minvalue:"\u4FA1\u683C\u306F0\u3088\u308A\u5927\u304D\u304F\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002",amount_maxlength:"\u91D1\u984D\u306F20\u6841\u3092\u8D85\u3048\u3066\u306F\u306A\u308A\u307E\u305B\u3093\u3002",amount_minvalue:"\u91D1\u984D\u306F0\u3088\u308A\u5927\u304D\u304F\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002",description_maxlength:"\u8AAC\u660E\u306F65,000\u6587\u5B57\u3092\u8D85\u3048\u3066\u306F\u306A\u308A\u307E\u305B\u3093\u3002",subject_maxlength:"\u4EF6\u540D\u306F100\u6587\u5B57\u3092\u8D85\u3048\u3066\u306F\u306A\u308A\u307E\u305B\u3093\u3002",message_maxlength:"\u30E1\u30C3\u30BB\u30FC\u30B8\u306F255\u6587\u5B57\u3092\u8D85\u3048\u3066\u306F\u306A\u308A\u307E\u305B\u3093\u3002",maximum_options_error:"\u9078\u629E\u3055\u308C\u305F{max}\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u6700\u5927\u6570\u3002\u307E\u305A\u3001\u9078\u629E\u3057\u305F\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u524A\u9664\u3057\u3066\u3001\u5225\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3057\u307E\u3059\u3002",notes_maxlength:"\u30E1\u30E2\u306F65,000\u6587\u5B57\u3092\u8D85\u3048\u3066\u306F\u306A\u308A\u307E\u305B\u3093\u3002",address_maxlength:"\u30A2\u30C9\u30EC\u30B9\u306F255\u6587\u5B57\u3092\u8D85\u3048\u3066\u306F\u306A\u308A\u307E\u305B\u3093\u3002",ref_number_maxlength:"\u53C2\u7167\u756A\u53F7\u306F255\u6587\u5B57\u3092\u8D85\u3048\u3066\u306F\u306A\u308A\u307E\u305B\u3093\u3002",prefix_maxlength:"\u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9\u306F5\u6587\u5B57\u3092\u8D85\u3048\u3066\u306F\u306A\u308A\u307E\u305B\u3093\u3002",something_went_wrong:"\u4F55\u304B\u304C\u3046\u307E\u304F\u3044\u304B\u306A\u304B\u3063\u305F"},Ml="\u898B\u7A4D\u3082\u308A",Vl="\u898B\u7A4D\u3082\u308A\u756A\u53F7",Bl="\u898B\u7A4D\u3082\u308A\u65E5",Ol="\u6709\u52B9\u671F\u9650",Ll="\u8ACB\u6C42\u66F8",Ul="\u8ACB\u6C42\u66F8\u756A\u53F7",Kl="\u8ACB\u6C42\u66F8\u306E\u65E5\u4ED8",ql="\u671F\u65E5",Zl="\u30CE\u30FC\u30C8",Wl="\u30A2\u30A4\u30C6\u30E0",Hl="\u91CF",Gl="\u4FA1\u683C",Yl="\u30C7\u30A3\u30B9\u30AB\u30A6\u30F3\u30C8",Jl="\u91CF",Xl="\u5C0F\u8A08",Ql="\u5408\u8A08",ec="\u652F\u6255\u3044",tc="\u304A\u652F\u6255\u3044\u306E\u9818\u53CE\u66F8",ac="\u652F\u6255\u671F\u65E5",sc="\u652F\u6255\u3044\u756A\u53F7",nc="\u652F\u6255\u3044\u30E2\u30FC\u30C9",ic="\u3082\u3089\u3063\u305F\u5206\u91CF",oc="\u7D4C\u8CBB\u5831\u544A\u66F8",rc="\u7DCF\u7D4C\u8CBB",dc="\u5229\u76CA",lc="\u30BB\u30FC\u30EB\u30B9\u30AB\u30B9\u30BF\u30DE\u30FC\u30EC\u30DD\u30FC\u30C8",cc="\u8CA9\u58F2\u30A2\u30A4\u30C6\u30E0\u30EC\u30DD\u30FC\u30C8",_c="\u7A0E\u6982\u8981\u30EC\u30DD\u30FC\u30C8",uc="\u6240\u5F97",mc="\u7D14\u5229\u76CA",pc="\u8CA9\u58F2\u30EC\u30DD\u30FC\u30C8\uFF1A\u9867\u5BA2\u5225",gc="\u7DCF\u58F2\u4E0A\u9AD8",fc="\u8CA9\u58F2\u30EC\u30DD\u30FC\u30C8\uFF1A\u30A2\u30A4\u30C6\u30E0\u5225",hc="\u7A0E\u30EC\u30DD\u30FC\u30C8",vc="\u7DCF\u7A0E",yc="\u7A0E\u306E\u7A2E\u985E",bc="\u7D4C\u8CBB",kc="\u8ACB\u6C42\u66F8\u9001\u4ED8\u5148\u3001",wc="\u9001\u308A\u5148\u3001",xc="\u304B\u3089\u53D7\u3051\u53D6\u308A\u307E\u3057\u305F\uFF1A",zc="\u7A0E";var Sc={navigation:kl,general:wl,dashboard:xl,tax_types:zl,global_search:Sl,customers:jl,items:Pl,estimates:Dl,invoices:Cl,payments:Al,expenses:El,login:Nl,users:Tl,reports:Il,settings:$l,wizard:Rl,validation:Fl,pdf_estimate_label:Ml,pdf_estimate_number:Vl,pdf_estimate_date:Bl,pdf_estimate_expire_date:Ol,pdf_invoice_label:Ll,pdf_invoice_number:Ul,pdf_invoice_date:Kl,pdf_invoice_due_date:ql,pdf_notes:Zl,pdf_items_label:Wl,pdf_quantity_label:Hl,pdf_price_label:Gl,pdf_discount_label:Yl,pdf_amount_label:Jl,pdf_subtotal:Xl,pdf_total:Ql,pdf_payment_label:ec,pdf_payment_receipt_label:tc,pdf_payment_date:ac,pdf_payment_number:sc,pdf_payment_mode:nc,pdf_payment_amount_received_label:ic,pdf_expense_report_label:oc,pdf_total_expenses_label:rc,pdf_profit_loss_label:dc,pdf_sales_customers_label:lc,pdf_sales_items_label:cc,pdf_tax_summery_label:_c,pdf_income_label:uc,pdf_net_profit_label:mc,pdf_customer_sales_report:pc,pdf_total_sales_label:gc,pdf_item_sales_label:fc,pdf_tax_report_label:hc,pdf_total_tax_label:vc,pdf_tax_types_label:yc,pdf_expenses_label:bc,pdf_bill_to:kc,pdf_ship_to:wc,pdf_received_from:xc,pdf_tax_label:zc};const jc={dashboard:"Panel zarz\u0105dzania",customers:"Kontrahenci",items:"Pozycje",invoices:"Faktury",expenses:"Wydatki",estimates:"Oferty",payments:"P\u0142atno\u015Bci",reports:"Raporty",settings:"Ustawienia",logout:"Wyloguj",users:"U\u017Cytkownicy"},Pc={add_company:"Dodaj firm\u0119",view_pdf:"Wy\u015Bwietl PDF",copy_pdf_url:"Kopiuj adres URL PDF",download_pdf:"\u015Aci\u0105gnij PDF",save:"Zapisz",create:"Stw\xF3rz",cancel:"Anuluj",update:"Zaktualizuj",deselect:"Odznacz",download:"Pobierz",from_date:"Od daty",to_date:"Do daty",from:"Od",to:"Do",sort_by:"Sortuj wed\u0142ug",ascending:"Rosn\u0105co",descending:"Malej\u0105co",subject:"Temat",body:"Tre\u015B\u0107",message:"Wiadomo\u015B\u0107",send:"Wy\u015Blij",go_back:"Wstecz",back_to_login:"Wr\xF3\u0107 do logowania?",home:"Strona g\u0142\xF3wna",filter:"Filtr",delete:"Usu\u0144",edit:"Edytuj",view:"Widok",add_new_item:"Dodaj now\u0105 pozycj\u0119",clear_all:"Wyczy\u015B\u0107 wszystko",showing:"Wy\u015Bwietlanie",of:"z",actions:"Akcje",subtotal:"SUMA CZ\u0118\u015ACIOWA",discount:"RABAT",fixed:"Sta\u0142y",percentage:"Procentowo",tax:"PODATEK",total_amount:"\u0141\u0104CZNA KWOTA",bill_to:"P\u0142atnik",ship_to:"Wy\u015Blij do",due:"Nale\u017Cno\u015B\u0107",draft:"Wersja robocza",sent:"Wys\u0142ano",all:"Wszystko",select_all:"Zaznacz wszystkie",choose_file:"Kliknij tutaj, aby wybra\u0107 plik",choose_template:"Wybierz szablon",choose:"Wybierz",remove:"Usu\u0144",powered_by:"Wspierane przez",bytefury:"Bytefury",select_a_status:"Wybierz status",select_a_tax:"Wybierz podatek",search:"Wyszukaj",are_you_sure:"Czy jeste\u015B pewien?",list_is_empty:"Lista jest pusta.",no_tax_found:"Nie znaleziono podatku!",four_zero_four:"404",you_got_lost:"Ups! Zgubi\u0142e\u015B si\u0119!",go_home:"Wr\xF3\u0107 do strony g\u0142\xF3wnej",test_mail_conf:"Konfiguracja poczty testowej",send_mail_successfully:"Wiadomo\u015B\u0107 wys\u0142ana pomy\u015Blnie",setting_updated:"Ustawienia zosta\u0142y zaktualizowane",select_state:"Wybierz wojew\xF3dztwo",select_country:"Wybierz kraj",select_city:"Wybierz miasto",street_1:"Adres 1",street_2:"Adres 2",action_failed:"Niepowodzenie",retry:"Spr\xF3buj ponownie",choose_note:"Wybierz notatk\u0119",no_note_found:"Nie znaleziono notatki",insert_note:"Wstaw notatk\u0119",copied_pdf_url_clipboard:"Skopiowano adres URL pliku PDF do schowka!"},Dc={select_year:"Wybierz rok",cards:{due_amount:"Do zap\u0142aty",customers:"Kontrahenci",invoices:"Faktury",estimates:"Oferty"},chart_info:{total_sales:"Sprzeda\u017C",total_receipts:"Przychody",total_expense:"Wydatki",net_income:"Doch\xF3d netto",year:"Wybierz rok"},weekly_invoices:{title:"Faktury tygodniowe"},monthly_chart:{title:"Sprzeda\u017C i wydatki"},recent_invoices_card:{title:"Nale\u017Cne faktury",due_on:"Termin p\u0142atno\u015Bci",customer:"Kontrahent",amount_due:"Do zap\u0142aty",actions:"Akcje",view_all:"Zobacz wszsytkie"},recent_estimate_card:{title:"Najnowsze oferty",date:"Data",customer:"Kontrahent",amount_due:"Do zap\u0142aty",actions:"Akcje",view_all:"Zobacz wszsytkie"}},Cc={name:"Nazwa",description:"Opis",percent:"Procent",compound_tax:"Podatek z\u0142o\u017Cony"},Ac={search:"Wyszukaj...",customers:"Kontrahenci",users:"U\u017Cytkownicy",no_results_found:"Nie znaleziono wynik\xF3w"},Ec={title:"Kontrahenci",add_customer:"Dodaj kontrahenta",contacts_list:"Lista kontrahent\xF3w",name:"Nazwa",mail:"Poczta | Poczta",statement:"Komunikat",display_name:"Widoczna nazwa",primary_contact_name:"G\u0142\xF3wna osoba kontaktowa",contact_name:"Nazwa kontaktu",amount_due:"Do zap\u0142aty",email:"E-mail",address:"Adres",phone:"Telefon",website:"Strona internetowa",overview:"Przegl\u0105d",enable_portal:"W\u0142\u0105cz portal",country:"Kraj",state:"Wojew\xF3dztwo",city:"Miasto",zip_code:"Kod pocztowy",added_on:"Dodano dnia",action:"Akcja",password:"Has\u0142a",street_number:"Numer ulicy",primary_currency:"Waluta g\u0142\xF3wna",description:"Opis",add_new_customer:"Dodaj nowego kontrahenta",save_customer:"Zapisz kontrahenta",update_customer:"Aktualizuj kontrahenta",customer:"Kontrahent | Kontrahenci",new_customer:"Nowy kontrahent",edit_customer:"Edytuj kontrahenta",basic_info:"Podstawowe informacje",billing_address:"Adres do faktury",shipping_address:"Adres dostawy",copy_billing_address:"Kopiuj z rachunku",no_customers:"Brak kontrahent\xF3w!",no_customers_found:"Nie znaleziono kontrahent\xF3w!",no_contact:"Brak kontaktu",no_contact_name:"Brak nazwy kontaktu",list_of_customers:"Ta sekcja b\u0119dzie zawiera\u0107 list\u0119 kontrahent\xF3w.",primary_display_name:"G\u0142\xF3wna nazwa wy\u015Bwietlana",select_currency:"Wybierz walut\u0119",select_a_customer:"Wybierz kontrahenta",type_or_click:"Wpisz lub kliknij aby wybra\u0107",new_transaction:"Nowa transakcja",no_matching_customers:"Brak pasuj\u0105cych kontrahent\xF3w!",phone_number:"Numer telefonu",create_date:"Data utworzenia",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tego kontrahenta i wszystkich powi\u0105zanych faktur, ofert i p\u0142atno\u015Bci. | Nie b\u0119dziesz w stanie odzyska\u0107 tych kontrahent\xF3w i wszystkich powi\u0105zanych faktur, ofert i p\u0142atno\u015Bci.",created_message:"Kontrahent zosta\u0142 utworzony poprawnie",updated_message:"Kontrahent zosta\u0142 zaktualizowany poprawnie",deleted_message:"Kontrahent zosta\u0142 usuni\u0119ty pomy\u015Blnie | Kontrahenci zostali usuni\u0119ci pomy\u015Blnie"},Nc={title:"Pozycje",items_list:"Lista artyku\u0142\xF3w",name:"Nazwa",unit:"Jednostka",description:"Opis",added_on:"Dodane",price:"Cena",date_of_creation:"Data utworzenia",not_selected:"Nie wybrano element\xF3w",action:"Akcja",add_item:"Dodaj pozycj\u0119",save_item:"Zapisz element",update_item:"Aktualizuj element",item:"Pozycja | Pozycje",add_new_item:"Dodaj now\u0105 pozycj\u0119",new_item:"Nowy produkt",edit_item:"Edytuj element",no_items:"Brak element\xF3w!",list_of_items:"Ta sekcja b\u0119dzie zawiera\u0107 list\u0119 pozycji.",select_a_unit:"wybierz jednostk\u0119",taxes:"Podatki",item_attached_message:"Nie mo\u017Cna usun\u0105\u0107 elementu, kt\xF3ry jest ju\u017C u\u017Cywany",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej pozycji | Nie b\u0119dziesz w stanie odzyska\u0107 tych pozycji",created_message:"Element zosta\u0142 pomy\u015Blnie zaktualizowany",updated_message:"Element zosta\u0142 pomy\u015Blnie zaktualizowany",deleted_message:"Pozycja usuni\u0119ta pomy\u015Blnie | Pozycje usuni\u0119te pomy\u015Blnie"},Tc={title:"Oferty",estimate:"Oferta | Oferty",estimates_list:"Lista ofert",days:"{days} Dni",months:"{months} Miesi\u0105c",years:"{years} Rok",all:"Wszystkie",paid:"Zap\u0142acone",unpaid:"Niezap\u0142acone",customer:"KONTRAHENT",ref_no:"NR REF.",number:"NUMER",amount_due:"DO ZAP\u0141ATY",partially_paid:"Cz\u0119\u015Bciowo op\u0142acona",total:"Razem",discount:"Rabat",sub_total:"Podsumowanie",estimate_number:"Numer oferty",ref_number:"Numer referencyjny",contact:"Kontakt",add_item:"Dodaj pozycj\u0119",date:"Data",due_date:"Data wa\u017Cno\u015Bci",expiry_date:"Data wyga\u015Bni\u0119cia",status:"Status",add_tax:"Dodaj podatek",amount:"Kwota",action:"Akcja",notes:"Notatki",tax:"Podatek",estimate_template:"Szablon",convert_to_invoice:"Konwertuj do faktury",mark_as_sent:"Oznacz jako wys\u0142ane",send_estimate:"Wy\u015Blij ofert\u0119",resend_estimate:"Wy\u015Blij ponownie ofert\u0119",record_payment:"Zarejestruj p\u0142atno\u015B\u0107",add_estimate:"Dodaj ofert\u0119",save_estimate:"Zapisz ofert\u0119",confirm_conversion:"Ta oferta zostanie u\u017Cyta do utworzenia nowej faktury.",conversion_message:"Faktura zosta\u0142a utworzona pomy\u015Blnie",confirm_send_estimate:"Ta oferta zostanie wys\u0142ana poczt\u0105 elektroniczn\u0105 do kontrahenta",confirm_mark_as_sent:"Ta oferta zostanie oznaczona jako wys\u0142ana",confirm_mark_as_accepted:"Ta oferta zostanie oznaczona jako zatwierdzona",confirm_mark_as_rejected:"Ta oferta zostanie oznaczona jako odrzucona",no_matching_estimates:"Brak pasuj\u0105cych ofert!",mark_as_sent_successfully:"Oferta oznaczona jako wys\u0142ana pomy\u015Blnie",send_estimate_successfully:"Kalkulacja wys\u0142ana pomy\u015Blnie",errors:{required:"To pole jest wymagane"},accepted:"Zaakceptowano",rejected:"Odrzucono",sent:"Wys\u0142ano",draft:"Wersja robocza",declined:"Odrzucony",new_estimate:"Nowa oferta",add_new_estimate:"Dodaj now\u0105 ofert\u0119",update_Estimate:"Zaktualizuj ofert\u0119",edit_estimate:"Edytuj ofert\u0119",items:"pozycje",Estimate:"Oferta | Oferty",add_new_tax:"Dodaj nowy podatek",no_estimates:"Nie ma jeszcze ofert!",list_of_estimates:"Ta sekcja b\u0119dzie zawiera\u0142a list\u0119 ofert.",mark_as_rejected:"Oznacz jako odrzucon\u0105",mark_as_accepted:"Oznacz jako zaakceptowan\u0105",marked_as_accepted_message:"Oferty oznaczone jako zaakceptowane",marked_as_rejected_message:"Oferty oznaczone jako odrzucone",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej oferty | Nie b\u0119dziesz w stanie odzyska\u0107 tych ofert",created_message:"Oferta utworzona pomy\u015Blnie",updated_message:"Oferta zaktualizowana pomy\u015Blnie",deleted_message:"Oferta usuni\u0119ta pomy\u015Blnie | Oferty usuni\u0119te pomy\u015Blnie",user_email_does_not_exist:"E-mail u\u017Cytkownika nie istnieje",something_went_wrong:"co\u015B posz\u0142o nie tak",item:{title:"Tytu\u0142 pozycji",description:"Opis",quantity:"Ilo\u015B\u0107",price:"Cena",discount:"Rabat",total:"Razem",total_discount:"Rabat \u0142\u0105cznie",sub_total:"Podsumowanie",tax:"Podatek",amount:"Kwota",select_an_item:"Wpisz lub kliknij aby wybra\u0107 element",type_item_description:"Opis pozycji (opcjonalnie)"}},Ic={title:"Faktury",invoices_list:"Lista faktur",days:"{days} Dni",months:"{months} Miesi\u0105c",years:"{years} Rok",all:"Wszystko",paid:"Zap\u0142acono",unpaid:"Nie zap\u0142acono",viewed:"Przejrzane",overdue:"Zaleg\u0142e",completed:"Uko\u0144czone",customer:"KONTRAHENT",paid_status:"STATUS P\u0141ATNO\u015ACI",ref_no:"NR REF.",number:"NUMER",amount_due:"DO ZAP\u0141ATY",partially_paid:"Cz\u0119\u015Bciowo op\u0142acona",total:"Razem",discount:"Rabat",sub_total:"Podsumowanie",invoice:"Faktura | Faktury",invoice_number:"Numer faktury",ref_number:"Numer referencyjny",contact:"Kontakt",add_item:"Dodaj pozycj\u0119",date:"Data",due_date:"Termin p\u0142atno\u015Bci",status:"Status",add_tax:"Dodaj podatek",amount:"Kwota",action:"Akcja",notes:"Notatki",view:"Widok",send_invoice:"Wy\u015Blij faktur\u0119",resend_invoice:"Wy\u015Blij faktur\u0119 ponownie",invoice_template:"Szablon faktury",template:"Szablon",mark_as_sent:"Oznacz jako wys\u0142ane",confirm_send_invoice:"Ta faktura zostanie wys\u0142ana poczt\u0105 elektroniczn\u0105 do kontrahenta",invoice_mark_as_sent:"Ta faktura zostanie oznaczona jako wys\u0142ana",confirm_send:"Ta faktura zostanie wys\u0142ana poczt\u0105 elektroniczn\u0105 do kontrahenta",invoice_date:"Data faktury",record_payment:"Zarejestruj p\u0142atno\u015B\u0107",add_new_invoice:"Dodaj now\u0105 faktur\u0119",update_expense:"Zaktualizuj wydatki",edit_invoice:"Edytuj faktur\u0119",new_invoice:"Nowa faktura",save_invoice:"Zapisz faktur\u0119",update_invoice:"Zaktualizuj faktur\u0119",add_new_tax:"Dodaj nowy podatek",no_invoices:"Brak faktur!",list_of_invoices:"Ta sekcja b\u0119dzie zawiera\u0107 list\u0119 faktur.",select_invoice:"Wybierz faktur\u0119",no_matching_invoices:"Brak pasuj\u0105cych faktur!",mark_as_sent_successfully:"Faktura oznaczona jako wys\u0142ana pomy\u015Blnie",send_invoice_successfully:"Faktura wys\u0142ana pomy\u015Blnie",cloned_successfully:"Faktura sklonowana pomy\u015Blnie",clone_invoice:"Sklonuj faktur\u0119",confirm_clone:"Ta faktura zostanie sklonowana do nowej faktury",item:{title:"Tytu\u0142 pozycji",description:"Opis",quantity:"Ilo\u015B\u0107",price:"Cena",discount:"Rabat",total:"Razem",total_discount:"Rabat \u0142\u0105cznie",sub_total:"Podsumowanie",tax:"Podatek",amount:"Kwota",select_an_item:"Wpisz lub kliknij aby wybra\u0107 element",type_item_description:"Opis pozycji (opcjonalnie)"},payment_attached_message:"Jedna z wybranych faktur ma do\u0142\u0105czon\u0105 p\u0142atno\u015B\u0107. Upewnij si\u0119, \u017Ce najpierw usuniesz za\u0142\u0105czone p\u0142atno\u015Bci, aby kontynuowa\u0107 usuwanie",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej faktury | Nie b\u0119dziesz w stanie odzyska\u0107 tych faktur",created_message:"Faktura zosta\u0142a utworzona pomy\u015Blnie",updated_message:"Faktura zosta\u0142a pomy\u015Blnie zaktualizowana",deleted_message:"Faktura usuni\u0119ta pomy\u015Blnie | Faktury usuni\u0119te pomy\u015Blnie",marked_as_sent_message:"Faktura oznaczona jako wys\u0142ana pomy\u015Blnie",user_email_does_not_exist:"E-mail u\u017Cytkownika nie istnieje",something_went_wrong:"co\u015B posz\u0142o nie tak",invalid_due_amount_message:"Ca\u0142kowita kwota faktury nie mo\u017Ce by\u0107 mniejsza ni\u017C ca\u0142kowita kwota zap\u0142acona za t\u0119 faktur\u0119. Prosz\u0119 zaktualizowa\u0107 faktur\u0119 lub usun\u0105\u0107 powi\u0105zane p\u0142atno\u015Bci, aby kontynuowa\u0107."},$c={title:"Noty kredytowe",credit_notes_list:"Lista not kredytowych",credit_notes:"Noty kredytowe",contact:"Kontakt",date:"Data",amount:"Kwota",action:"Akcja",credit_number:"Numer kredytu",notes:"Notatki",confirm_delete:"Czy na pewno chcesz usun\u0105\u0107 notatk\u0119 kredytow\u0105?",item:{title:"Tytu\u0142 pozycji",description:"Opis",quantity:"Ilo\u015B\u0107",price:"Cena",discount:"Rabat",total:"Razem",total_discount:"Rabat \u0142\u0105cznie",sub_total:"Podsumowanie",tax:"Podatek"}},Rc={title:"P\u0142atno\u015Bci",payments_list:"Lista p\u0142atno\u015Bci",record_payment:"Zarejestruj p\u0142atno\u015B\u0107",customer:"Kontrahent",date:"Data",amount:"Kwota",action:"Akcja",payment_number:"Numer p\u0142atno\u015Bci",payment_mode:"Metoda p\u0142atno\u015Bci",invoice:"Faktura",note:"Notatka",add_payment:"Dodaj p\u0142atno\u015B\u0107",new_payment:"Nowa p\u0142atno\u015B\u0107",edit_payment:"Edytuj p\u0142atno\u015B\u0107",view_payment:"Wy\u015Bwietl p\u0142atno\u015B\u0107",add_new_payment:"Dodaj now\u0105 p\u0142atno\u015B\u0107",send_payment_receipt:"Wy\u015Blij potwierdzenie p\u0142atno\u015Bci",send_payment:"Wy\u015Blij p\u0142atno\u015B\u0107",save_payment:"Zapisz p\u0142atno\u015B\u0107",update_payment:"Zaktualizuj p\u0142atno\u015B\u0107",payment:"P\u0142atno\u015B\u0107 | P\u0142atno\u015Bci",no_payments:"Nie ma jeszcze p\u0142atno\u015Bci!",not_selected:"Nie wybrano",no_invoice:"Brak faktury",no_matching_payments:"Brak pasuj\u0105cych p\u0142atno\u015Bci!",list_of_payments:"Ta sekcja b\u0119dzie zawiera\u0107 list\u0119 p\u0142atno\u015Bci.",select_payment_mode:"Wybierz spos\xF3b p\u0142atno\u015Bci",confirm_mark_as_sent:"Ta oferta zostanie oznaczona jako wys\u0142ana",confirm_send_payment:"Ta p\u0142atno\u015B\u0107 zostanie wys\u0142ana e-mailem do kontrahenta",send_payment_successfully:"P\u0142atno\u015B\u0107 wys\u0142ana pomy\u015Blnie",user_email_does_not_exist:"E-mail u\u017Cytkownika nie istnieje",something_went_wrong:"co\u015B posz\u0142o nie tak",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej p\u0142atno\u015Bci | Nie b\u0119dziesz w stanie odzyska\u0107 tych p\u0142atno\u015Bci",created_message:"P\u0142atno\u015B\u0107 zosta\u0142a pomy\u015Blnie utworzona",updated_message:"P\u0142atno\u015B\u0107 zosta\u0142a pomy\u015Blnie zaktualizowana",deleted_message:"P\u0142atno\u015B\u0107 usuni\u0119ta pomy\u015Blnie | P\u0142atno\u015Bci usuni\u0119te pomy\u015Blnie",invalid_amount_message:"Kwota p\u0142atno\u015Bci jest nieprawid\u0142owa"},Fc={title:"Wydatki",expenses_list:"Lista wydatk\xF3w",select_a_customer:"Wybierz kontrahenta",expense_title:"Tytu\u0142",customer:"Kontrahent",contact:"Kontakt",category:"Kategoria",from_date:"Od daty",to_date:"Do daty",expense_date:"Data",description:"Opis",receipt:"Potwierdzenie",amount:"Kwota",action:"Akcja",not_selected:"Nie wybrano",note:"Notatka",category_id:"Identyfikator kategorii",date:"Data",add_expense:"Dodaj wydatek",add_new_expense:"Dodaj nowy wydatek",save_expense:"Zapisz wydatek",update_expense:"Zaktualizuj wydatek",download_receipt:"Pobierz potwierdzenie wp\u0142aty",edit_expense:"Edytuj wydatek",new_expense:"Nowy wydatek",expense:"Wydatek | Wydatki",no_expenses:"Nie ma jeszcze wydatk\xF3w!",list_of_expenses:"Ta sekcja b\u0119dzie zawiera\u0142a list\u0119 wydatk\xF3w.",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tego wydatku | Nie b\u0119dziesz w stanie odzyska\u0107 tych wydatk\xF3w",created_message:"Wydatek utworzony pomy\u015Blnie",updated_message:"Wydatek zaktualizowany pomy\u015Blnie",deleted_message:"Wydatek usuni\u0119ty pomy\u015Blnie | Wydatki usuni\u0119te pomy\u015Blnie",categories:{categories_list:"Lista kategorii",title:"Tytu\u0142",name:"Nazwa",description:"Opis",amount:"Kwota",actions:"Akcje",add_category:"Dodaj kategori\u0119",new_category:"Nowa kategoria",category:"Kategoria | Kategorie",select_a_category:"Wybierz kategori\u0119"}},Mc={email:"E-mail",password:"Has\u0142o",forgot_password:"Nie pami\u0119tasz has\u0142a?",or_signIn_with:"lub zaloguj si\u0119 przez",login:"Logowanie",register:"Rejestracja",reset_password:"Resetuj has\u0142o",password_reset_successfully:"Has\u0142o zosta\u0142o pomy\u015Blnie zresetowane",enter_email:"Wprowad\u017A adres e-mail",enter_password:"Wprowad\u017A has\u0142o",retype_password:"Wprowad\u017A has\u0142o ponownie",login_placeholder:"mail@example.com"},Vc={title:"U\u017Cytkownicy",users_list:"Lista u\u017Cytkownik\xF3w",name:"Nazwa",description:"Opis",added_on:"Dodano dnia",date_of_creation:"Data utworzenia",action:"Akcja",add_user:"Dodaj u\u017Cytkownika",save_user:"Zapisz u\u017Cytkownika",update_user:"Zaktualizuj u\u017Cytkownika",user:"U\u017Cytkownik | U\u017Cytkownicy",add_new_user:"Dodaj nowego u\u017Cytkownika",new_user:"Nowy u\u017Cytkownik",edit_user:"Edytuj u\u017Cytkownika",no_users:"Brak u\u017Cytkownik\xF3w!",list_of_users:"Ta sekcja b\u0119dzie zawiera\u0142a list\u0119 u\u017Cytkownik\xF3w.",email:"Email",phone:"Telefon",password:"Has\u0142o",user_attached_message:"Nie mo\u017Cna usun\u0105\u0107 elementu, kt\xF3ry jest ju\u017C w u\u017Cyciu",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tego u\u017Cytkownika | Nie b\u0119dziesz w stanie odzyska\u0107 tych u\u017Cytkownik\xF3w",created_message:"U\u017Cytkownik zosta\u0142 utworzony pomy\u015Blnie",updated_message:"U\u017Cytkownik zosta\u0142 zaktualizowany pomy\u015Blnie",deleted_message:"U\u017Cytkownik usuni\u0119ty pomy\u015Blnie | U\u017Cytkownicy usuni\u0119ci pomy\u015Blnie"},Bc={title:"Raport",from_date:"Od daty",to_date:"Do daty",status:"Status",paid:"Zap\u0142acono",unpaid:"Nie zap\u0142acono",download_pdf:"Pobierz plik PDF",view_pdf:"Podgl\u0105d PDF",update_report:"Aktualizuj raport",report:"Raport | Raporty",profit_loss:{profit_loss:"Zyski i straty",to_date:"Do daty",from_date:"Od daty",date_range:"Wybierz zakres dat"},sales:{sales:"Sprzeda\u017C",date_range:"Wybierz zakres dat",to_date:"Do daty",from_date:"Od daty",report_type:"Typ raportu"},taxes:{taxes:"Podatki",to_date:"Do daty",from_date:"Od daty",date_range:"Wybierz zakres dat"},errors:{required:"To pole jest wymagane"},invoices:{invoice:"Faktura",invoice_date:"Data faktury",due_date:"Termin p\u0142atno\u015Bci",amount:"Kwota",contact_name:"Nazwa kontaktu",status:"Status"},estimates:{estimate:"Oferta",estimate_date:"Data oferty",due_date:"Data wa\u017Cno\u015Bci",estimate_number:"Numer oferty",ref_number:"Numer referencyjny",amount:"Kwota",contact_name:"Nazwa kontaktu",status:"Status"},expenses:{expenses:"Wydatki",category:"Kategoria",date:"Data",amount:"Kwota",to_date:"Do daty",from_date:"Od daty",date_range:"Wybierz zakres dat"}},Oc={menu_title:{account_settings:"Ustawienia konta",company_information:"Informacje o firmie",customization:"Dostosowywanie",preferences:"Opcje",notifications:"Powiadomienia",tax_types:"Rodzaje podatku",expense_category:"Kategorie wydatku",update_app:"Aktualizuj aplikacj\u0119",backup:"Kopia zapasowa",file_disk:"Dysk plik\xF3w",custom_fields:"Pola niestandardowe",payment_modes:"Rodzaje p\u0142atno\u015Bci",notes:"Notatki"},title:"Ustawienia",setting:"Ustawienia | Ustawienia",general:"Og\xF3lne",language:"J\u0119zyk",primary_currency:"Waluta g\u0142\xF3wna",timezone:"Strefa czasowa",date_format:"Format daty",currencies:{title:"Waluty",currency:"Waluta | Waluty",currencies_list:"Lista walut",select_currency:"Wybierz walut\u0119",name:"Nazwa",code:"Kod",symbol:"Symbol",precision:"Dok\u0142adno\u015B\u0107",thousand_separator:"Separator tysi\u0119cy",decimal_separator:"Separator dziesi\u0119tny",position:"Pozycja",position_of_symbol:"Po\u0142o\u017Cenie symbolu",right:"Do prawej",left:"Do lewej",action:"Akcja",add_currency:"Dodaj walut\u0119"},mail:{host:"Adres hosta poczty",port:"Port poczty",driver:"Sterownik poczty",secret:"Tajny klucz",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domena",mailgun_endpoint:"Punkt dost\u0119powy Mailgun",ses_secret:"Tajny klucz SES",ses_key:"Klucz SES",password:"Has\u0142o poczty",username:"Nazwa u\u017Cytkownika poczty",mail_config:"Konfiguracja poczty",from_name:"Nazwa nadawcy",from_mail:"Adres e-mail nadawcy",encryption:"Szyfrowanie poczty",mail_config_desc:"Poni\u017Cej znajduje si\u0119 formularz konfiguracji sterownika poczty e-mail do wysy\u0142ania wiadomo\u015Bci e-mail z aplikacji. Mo\u017Cesz r\xF3wnie\u017C skonfigurowa\u0107 zewn\u0119trznych dostawc\xF3w takich jak Sendgrid, SES itp."},pdf:{title:"Ustawienia PDF",footer_text:"Teks stopki",pdf_layout:"Szablon PDF"},company_info:{company_info:"Dane firmy",company_name:"Nazwa firmy",company_logo:"Logo firmy",section_description:"Informacje o Twojej firmie, kt\xF3re b\u0119d\u0105 wy\u015Bwietlane na fakturach, ofertach i innych dokumentach stworzonych przez Crater.",phone:"Telefon",country:"Kraj",state:"Wojew\xF3dztwo",city:"Miasto",address:"Adres",zip:"Kod pocztowy",save:"Zapisz",updated_message:"Informacje o firmie zosta\u0142y pomy\u015Blnie zaktualizowane"},custom_fields:{title:"Pola niestandardowe",section_description:"Dostosuj swoje faktury, oferty i wp\u0142ywy p\u0142atno\u015Bci w\u0142asnymi polami. Upewnij si\u0119, \u017Ce u\u017Cywasz poni\u017Cszych p\xF3l w formatach adresowych na stronie ustawie\u0144 dostosowywania.",add_custom_field:"Dodaj pole niestandardowe",edit_custom_field:"Edytuj pole niestandardowe",field_name:"Nazwa pola",label:"Etykieta",type:"Typ",name:"Nazwa",required:"Wymagane",placeholder:"Symbol zast\u0119pczy",help_text:"Tekst pomocy",default_value:"Warto\u015B\u0107 domy\u015Blna",prefix:"Prefiks",starting_number:"Numer pocz\u0105tkowy",model:"Model",help_text_description:"Wprowad\u017A jaki\u015B tekst, aby pom\xF3c u\u017Cytkownikom zrozumie\u0107 cel tego pola niestandardowego.",suffix:"Sufiks",yes:"Tak",no:"Nie",order:"Zam\xF3wienie",custom_field_confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tego niestandardowego pola",already_in_use:"Pole niestandardowe jest ju\u017C w u\u017Cyciu",deleted_message:"Pole niestandardowe zosta\u0142o usuni\u0119te pomy\u015Blnie",options:"opcje",add_option:"Dodaj opcje",add_another_option:"Dodaj inn\u0105 opcj\u0119",sort_in_alphabetical_order:"Sortuj wed\u0142ug kolejno\u015Bci alfabetycznej",add_options_in_bulk:"Dodaj opcje zbiorcze",use_predefined_options:"U\u017Cyj predefiniowanych opcji",select_custom_date:"Wybierz niestandardow\u0105 dat\u0119",select_relative_date:"Wybierz dat\u0119 wzgl\u0119dn\u0105",ticked_by_default:"Zaznaczone domy\u015Blnie",updated_message:"Pole niestandardowe zosta\u0142o zaktualizowane pomy\u015Blnie",added_message:"Pole niestandardowe zosta\u0142o dodane pomy\u015Blnie"},customization:{customization:"dostosowywanie",save:"Zapisz",addresses:{title:"Adresy",section_description:"Mo\u017Cesz ustawi\u0107 adres rozliczeniowy kontrahenta i format adresu dostawy kontrahenta (tylko w formacie PDF). ",customer_billing_address:"Adres rozliczeniowy kontrahenta",customer_shipping_address:"Adres dostawy kontrahenta",company_address:"Adres firmy",insert_fields:"Wstaw pola",contact:"Kontakt",address:"Adres",display_name:"Widoczna nazwa",primary_contact_name:"G\u0142\xF3wna osoba kontaktowa",email:"Email",website:"Strona internetowa",name:"Nazwa",country:"Kraj",state:"Wojew\xF3dztwo",city:"Miasto",company_name:"Nazwa firmy",address_street_1:"Ulica 1",address_street_2:"Ulica 2",phone:"Telefon",zip_code:"Kod pocztowy",address_setting_updated:"Ustawienia adresu zosta\u0142y pomy\u015Blnie zaktualizowane"},updated_message:"Informacje o firmie zosta\u0142y pomy\u015Blnie zaktualizowane",invoices:{title:"Faktury",notes:"Notatki",invoice_prefix:"Prefiks faktury",invoice_number_length:"D\u0142ugo\u015B\u0107 numeru faktury",default_invoice_email_body:"Domy\u015Blny nag\u0142\xF3wek e-maila faktury",invoice_settings:"Ustawienia faktury",autogenerate_invoice_number:"Automatycznie generuj numer faktury",invoice_setting_description:"Wy\u0142\u0105cz to, je\u015Bli nie chcesz automatycznie generowa\u0107 numer\xF3w faktur za ka\u017Cdym razem, gdy tworzysz now\u0105 faktur\u0119.",invoice_email_attachment:"Wy\u015Blij faktury jako za\u0142\u0105czniki",invoice_email_attachment_setting_description:"W\u0142\u0105cz to, je\u015Bli chcesz wysy\u0142a\u0107 faktury jako za\u0142\u0105cznik e-mail. Pami\u0119taj, \u017Ce przycisk 'Zobacz faktur\u0119' w wiadomo\u015Bciach e-mail nie b\u0119dzie ju\u017C wy\u015Bwietlany, gdy jest w\u0142\u0105czony.",enter_invoice_prefix:"Wprowad\u017A prefiks faktury",terms_and_conditions:"Zasady i warunki",company_address_format:"Format adresu firmy",shipping_address_format:"Format adresu dostawy",billing_address_format:"Format adresu do faktury",invoice_setting_updated:"Ustawienia faktury zosta\u0142y pomy\u015Blnie zaktualizowane"},estimates:{title:"Oferty",estimate_prefix:"Prefiks oferty",estimate_number_length:"D\u0142ugo\u015B\u0107 numeru oferty",default_estimate_email_body:"Domy\u015Blny nag\u0142\xF3wek e-maila oferty",estimate_settings:"Ustawienia oferty",autogenerate_estimate_number:"Automatycznie generuj numer oferty",estimate_setting_description:"Wy\u0142\u0105cz to, je\u015Bli nie chcesz automatycznie generowa\u0107 numer\xF3w ofert za ka\u017Cdym razem, gdy tworzysz now\u0105 ofert\u0119.",estimate_email_attachment:"Wy\u015Blij oferty jako za\u0142\u0105czniki",estimate_email_attachment_setting_description:"W\u0142\u0105cz to, je\u015Bli chcesz wysy\u0142a\u0107 oferty jako za\u0142\u0105cznik e-mail. Pami\u0119taj, \u017Ce przycisk 'Zobacz ofert\u0119' w wiadomo\u015Bciach e-mail nie b\u0119dzie ju\u017C wy\u015Bwietlany, gdy jest w\u0142\u0105czony.",enter_estimate_prefix:"Wprowad\u017A prefiks oferty",estimate_setting_updated:"Ustawienia oferty zosta\u0142y pomy\u015Blnie zaktualizowane",company_address_format:"Format adresu firmy",billing_address_format:"Format adresu do faktury",shipping_address_format:"Format adresu dostawy"},payments:{title:"P\u0142atno\u015Bci",description:"Sposoby transakcji dla p\u0142atno\u015Bci",payment_prefix:"Prefiks p\u0142atno\u015Bci",payment_number_length:"D\u0142ugo\u015B\u0107 numeru p\u0142atno\u015Bci",default_payment_email_body:"Domy\u015Blny nag\u0142\xF3wek e-maila p\u0142atno\u015Bci",payment_settings:"Ustawienia p\u0142atno\u015Bci",autogenerate_payment_number:"Automatycznie generuj numer p\u0142atno\u015Bci",payment_setting_description:"Wy\u0142\u0105cz to, je\u015Bli nie chcesz automatycznie generowa\u0107 numer\xF3w p\u0142atno\u015Bci za ka\u017Cdym razem, gdy tworzysz now\u0105 p\u0142atno\u015B\u0107.",payment_email_attachment:"Wy\u015Blij p\u0142atno\u015Bci jako za\u0142\u0105czniki",payment_email_attachment_setting_description:"W\u0142\u0105cz to, je\u015Bli chcesz wysy\u0142a\u0107 p\u0142atno\u015Bci jako za\u0142\u0105cznik e-mail. Pami\u0119taj, \u017Ce przycisk 'Zobacz p\u0142atno\u015B\u0107' w wiadomo\u015Bciach e-mail nie b\u0119dzie ju\u017C wy\u015Bwietlany, gdy jest w\u0142\u0105czony.",enter_payment_prefix:"Wprowad\u017A prefiks p\u0142atno\u015Bci",payment_setting_updated:"Ustawienia p\u0142atno\u015Bci zosta\u0142y pomy\u015Blnie zaktualizowane",payment_modes:"Rodzaje p\u0142atno\u015Bci",add_payment_mode:"Dodaj metod\u0119 p\u0142atno\u015Bci",edit_payment_mode:"Edytuj metod\u0119 p\u0142atno\u015Bci",mode_name:"Metoda p\u0142atno\u015Bci",payment_mode_added:"Dodano metod\u0119 p\u0142atno\u015Bci",payment_mode_updated:"Zaktualizowano metod\u0119 p\u0142atno\u015Bci",payment_mode_confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej metody p\u0142atno\u015Bci",already_in_use:"Metoda p\u0142atno\u015Bci jest ju\u017C w u\u017Cyciu",deleted_message:"Metoda p\u0142atno\u015Bci zosta\u0142a pomy\u015Blnie usuni\u0119ta",company_address_format:"Format adresu firmy",from_customer_address_format:"Format adresu nadawcy"},items:{title:"Pozycje",units:"Jednostki",add_item_unit:"Dodaj jednostk\u0119",edit_item_unit:"Edytuj jednostk\u0119",unit_name:"Nazwa jednostki",item_unit_added:"Dodano jednostk\u0119",item_unit_updated:"Zaktualizowano jednostk\u0119",item_unit_confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej jednostki przedmiotu",already_in_use:"Jednostka pozycji jest ju\u017C w u\u017Cyciu",deleted_message:"Jednostka pozycji zosta\u0142a usuni\u0119ta pomy\u015Blnie"},notes:{title:"Notatki",description:"Oszcz\u0119dzaj czas, tworz\u0105c notatki i ponownie u\u017Cywaj\u0105c ich na fakturach, ofertach i p\u0142atno\u015Bciach.",notes:"Notatki",type:"Typ",add_note:"Dodaj notatk\u0119",add_new_note:"Dodaj now\u0105 notatk\u0119",name:"Nazwa",edit_note:"Edytuj notatk\u0119",note_added:"Notatka zosta\u0142a dodana pomy\u015Blnie",note_updated:"Notatka zaktualizowana pomy\u015Blnie",note_confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej notatki",already_in_use:"Notatka jest ju\u017C w u\u017Cyciu",deleted_message:"Notatka zosta\u0142a usuni\u0119ta pomy\u015Blnie"}},account_settings:{profile_picture:"Zdj\u0119cie profilowe",name:"Nazwa",email:"Email",password:"Has\u0142o",confirm_password:"Potwierd\u017A has\u0142o",account_settings:"Ustawienia konta",save:"Zapisz",section_description:"Mo\u017Cesz zaktualizowa\u0107 swoje imi\u0119, e-mail i has\u0142o u\u017Cywaj\u0105c poni\u017Cszego formularza.",updated_message:"Ustawienia konta zosta\u0142y pomy\u015Blnie zaktualizowane"},user_profile:{name:"Nazwa",email:"Email",password:"Has\u0142o",confirm_password:"Potwierd\u017A has\u0142o"},notification:{title:"Powiadomienie",email:"Wy\u015Blij powiadomienie do",description:"Kt\xF3re powiadomienia e-mail chcesz otrzymywa\u0107 kiedy co\u015B si\u0119 zmieni?",invoice_viewed:"Faktura wy\u015Bwietlona",invoice_viewed_desc:"Kiedy klient wy\u015Bwietli faktur\u0119 wys\u0142an\u0105 za po\u015Brednictwem kokpitu Cratera.",estimate_viewed:"Oferta wy\u015Bwietlona",estimate_viewed_desc:"Kiedy klient wy\u015Bwietli ofert\u0119 wys\u0142an\u0105 za po\u015Brednictwem kokpitu Cratera.",save:"Zapisz",email_save_message:"Wiadomo\u015B\u0107 zapisana pomy\u015Blnie",please_enter_email:"Prosz\u0119 wpisa\u0107 adres e-mail"},tax_types:{title:"Rodzaje opodatkowania",add_tax:"Dodaj podatek",edit_tax:"Edytuj podatek",description:"Mo\u017Cesz dodawa\u0107 lub usuwa\u0107 podatki. Crater obs\u0142uguje podatki od poszczeg\xF3lnych produkt\xF3w, jak r\xF3wnie\u017C na fakturze.",add_new_tax:"Dodaj nowy podatek",tax_settings:"Ustawienia podatku",tax_per_item:"Podatek na produkt",tax_name:"Nazwa podatku",compound_tax:"Podatek z\u0142o\u017Cony",percent:"Procent",action:"Akcja",tax_setting_description:"W\u0142\u0105cz to, je\u015Bli chcesz doda\u0107 podatki do poszczeg\xF3lnych element\xF3w faktury. Domy\u015Blnie podatki s\u0105 dodawane bezpo\u015Brednio do ca\u0142ej faktury.",created_message:"Typ podatku zosta\u0142 pomy\u015Blnie utworzony",updated_message:"Typ podatku zosta\u0142 pomy\u015Blnie zaktualizowany",deleted_message:"Typ podatku zosta\u0142 pomy\u015Blnie usuni\u0119ty",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tego typu podatku",already_in_use:"Ten podatek jest w u\u017Cyciu"},expense_category:{title:"Kategorie wydatk\xF3w",action:"Akcja",description:"Kategorie s\u0105 wymagane do dodawania wpis\xF3w wydatk\xF3w. Mo\u017Cesz doda\u0107 lub usun\u0105\u0107 te kategorie zgodnie ze swoimi preferencjami.",add_new_category:"Dodaj now\u0105 kategori\u0119",add_category:"Dodaj kategori\u0119",edit_category:"Edytuj kategori\u0119",category_name:"Nazwa kategorii",category_description:"Opis",created_message:"Kategoria wydatk\xF3w zosta\u0142a utworzona pomy\u015Blnie",deleted_message:"Kategoria wydatk\xF3w zosta\u0142a usuni\u0119ta pomy\u015Blnie",updated_message:"Kategoria wydatk\xF3w zaktualizowana pomy\u015Blnie",confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej kategorii wydatk\xF3w",already_in_use:"Kategoria jest ju\u017C w u\u017Cyciu"},preferences:{currency:"Waluta",default_language:"Domy\u015Blny j\u0119zyk",time_zone:"Strefa czasowa",fiscal_year:"Rok finansowy",date_format:"Format daty",discount_setting:"Ustawienia rabatu",discount_per_item:"Rabat na produkt ",discount_setting_description:"W\u0142\u0105cz to, je\u015Bli chcesz doda\u0107 rabat do poszczeg\xF3lnych element\xF3w faktury. Domy\u015Blnie rabat jest dodawany bezpo\u015Brednio do ca\u0142ej faktury.",save:"Zapisz",preference:"Preferencje | Preferencje",general_settings:"Domy\u015Blne ustawienia systemu.",updated_message:"Preferencje pomy\u015Blnie zaktualizowane",select_language:"Wybierz j\u0119zyk",select_time_zone:"Ustaw stref\u0119 czasow\u0105",select_date_format:"Wybierz format daty",select_financial_year:"Wybierz rok podatkowy"},update_app:{title:"Aktualizuj aplikacj\u0119",description:"Mo\u017Cesz \u0142atwo zaktualizowa\u0107 Cratera poprzez klikni\u0119cie przycisku poni\u017Cej",check_update:"Sprawd\u017A czy s\u0105 dost\u0119pne nowe aktualizacje",avail_update:"Dost\u0119pna nowa aktualizacja",next_version:"Nowa wersja",requirements:"Wymagania",update:"Aktualizuj teraz",update_progress:"Aktualizacja w toku...",progress_text:"To zajmie tylko kilka minut. Prosz\u0119 nie od\u015Bwie\u017Ca\u0107 ekranu ani zamyka\u0107 okna przed zako\u0144czeniem aktualizacji",update_success:"Aplikacja zosta\u0142a zaktualizowana! Prosz\u0119 czeka\u0107, a\u017C okno przegl\u0105darki zostanie automatycznie prze\u0142adowane.",latest_message:"Brak dost\u0119pnych aktualizacji! Posiadasz najnowsz\u0105 wersj\u0119.",current_version:"Aktualna wersja",download_zip_file:"Pobierz plik ZIP",unzipping_package:"Rozpakuj pakiet",copying_files:"Kopiowanie plik\xF3w",deleting_files:"Usuwanie nieu\u017Cywanych plik\xF3w",running_migrations:"Uruchamianie migracji",finishing_update:"Ko\u0144czenie aktualizacji",update_failed:"Aktualizacja nie powiod\u0142a si\u0119",update_failed_text:"Przepraszamy! Twoja aktualizacja nie powiod\u0142a si\u0119 w kroku: {step}"},backup:{title:"Kopia zapasowa | Kopie zapasowe",description:"Kopia zapasowa jest plikiem zipfile zawieraj\u0105cym wszystkie pliki w katalogach kt\xF3re podasz wraz z zrzutem bazy danych",new_backup:"Dodaj now\u0105 kopi\u0119 zapasow\u0105",create_backup:"Utw\xF3rz kopi\u0119 zapasow\u0105",select_backup_type:"Wybierz typ kopii zapasowej",backup_confirm_delete:"Nie b\u0119dziesz w stanie odzyska\u0107 tej kopii zapasowej",path:"\u015Bcie\u017Cka",new_disk:"Nowy dysk",created_at:"utworzono w",size:"rozmiar",dropbox:"dropbox",local:"lokalny",healthy:"zdrowy",amount_of_backups:"liczba kopii zapasowych",newest_backups:"najnowsza kopia zapasowa",used_storage:"zu\u017Cyta pami\u0119\u0107",select_disk:"Wybierz dysk",action:"Akcja",deleted_message:"Kopia zapasowa usuni\u0119ta pomy\u015Blnie",created_message:"Kopia zapasowa utworzona pomy\u015Blnie",invalid_disk_credentials:"Nieprawid\u0142owe dane uwierzytelniaj\u0105ce wybranego dysku"},disk:{title:"Dysk plik\xF3w | Dyski plik\xF3w",description:"Domy\u015Blnie Crater u\u017Cyje twojego lokalnego dysku do zapisywania kopii zapasowych, awatara i innych plik\xF3w obrazu. Mo\u017Cesz skonfigurowa\u0107 wi\u0119cej ni\u017C jeden serwer dysku, taki jak DigitalOcean, S3 i Dropbox, zgodnie z Twoimi preferencjami.",created_at:"utworzono w",dropbox:"dropbox",name:"Nazwa",driver:"Sterownik",disk_type:"Typ",disk_name:"Nazwa dysku",new_disk:"Dodaj nowy dysk",filesystem_driver:"Sterownik systemu plik\xF3w",local_driver:"lokalny sterownik",local_root:"g\u0142\xF3wny katalog lokalny",public_driver:"Publiczny sterownik",public_root:"Publiczny g\u0142\xF3wny katalog",public_url:"Publiczny URL",public_visibility:"Widoczno\u015B\u0107 publiczna",media_driver:"Media Driver",media_root:"Media Root",aws_driver:"Sterownik AWS",aws_key:"Klucz AWS",aws_secret:"Tajny klucz AWS",aws_region:"Region AWS",aws_bucket:"Zasobnik AWS",aws_root:"Katalog g\u0142\xF3wny AWS",do_spaces_type:"Typ Do Spaces",do_spaces_key:"Klucz Do Spaces",do_spaces_secret:"Tajny klucz Do Spaces",do_spaces_region:"Region Do Spaces",do_spaces_bucket:"Zasobnik Do Spaces",do_spaces_endpoint:"Punkt dost\u0119powy Do Spaces",do_spaces_root:"Katalog g\u0142\xF3wny Do Spaces",dropbox_type:"Typ Dropbox",dropbox_token:"Token Dropbox",dropbox_key:"Klucz Dropbox",dropbox_secret:"Tajny klucz Dropbox",dropbox_app:"Aplikacja Dropbox",dropbox_root:"Root Dropbox",default_driver:"Domy\u015Blny sterownik",is_default:"JEST DOMY\u015ALNY",set_default_disk:"Ustaw domy\u015Blny dysk",set_default_disk_confirm:"Ten dysk zostanie ustawiony jako domy\u015Blny, a wszystkie nowe pliki PDF zostan\u0105 zapisane na tym dysku",success_set_default_disk:"Dysk zosta\u0142 pomy\u015Blnie ustawiony jako domy\u015Blny",save_pdf_to_disk:"Zapisz pliki PDF na dysku",disk_setting_description:" W\u0142\u0105cz t\u0119 opcj\u0119, je\u015Bli chcesz automatycznie zapisa\u0107 kopi\u0119 ka\u017Cdej faktury, oferty i potwierdzenia p\u0142atno\u015Bci PDF na swoim domy\u015Blnym dysku. W\u0142\u0105czenie tej opcji spowoduje skr\xF3cenie czasu \u0142adowania podczas przegl\u0105dania PDF.",select_disk:"Wybierz dysk",disk_settings:"Ustawienia dysku",confirm_delete:"Twoje istniej\u0105ce pliki i foldery na okre\u015Blonym dysku nie zostan\u0105 zmienione, ale konfiguracja twojego dysku zostanie usuni\u0119ta z Cratera",action:"Akcja",edit_file_disk:"Edytuj dysk plk\xF3w",success_create:"Dysk dodany pomy\u015Blnie",success_update:"Dysk zaktualizowany pomy\u015Blnie",error:"B\u0142\u0105d dodawania dysku",deleted_message:"Dysk plik\xF3w zosta\u0142 usuni\u0119ty pomy\u015Blnie",disk_variables_save_successfully:"Dysk skonfigurowany pomy\u015Blnie",disk_variables_save_error:"Konfiguracja dysku nieudana.",invalid_disk_credentials:"Nieprawid\u0142owe dane uwierzytelniaj\u0105ce wybranego dysku"}},Lc={account_info:"Informacje o koncie",account_info_desc:"Poni\u017Csze szczeg\xF3\u0142y zostan\u0105 u\u017Cyte do utworzenia g\u0142\xF3wnego konta administratora. Mo\u017Cesz tak\u017Ce zmieni\u0107 szczeg\xF3\u0142y w dowolnym momencie po zalogowaniu.",name:"Nazwa",email:"E-mail",password:"Has\u0142o",confirm_password:"Potwierd\u017A has\u0142o",save_cont:"Zapisz i kontynuuj",company_info:"Informacje o firmie",company_info_desc:"Ta informacja b\u0119dzie wy\u015Bwietlana na fakturach. Pami\u0119taj, \u017Ce mo\u017Cesz to p\xF3\u017Aniej edytowa\u0107 na stronie ustawie\u0144.",company_name:"Nazwa firmy",company_logo:"Logo firmy",logo_preview:"Podgl\u0105d loga",preferences:"Preferencje",preferences_desc:"Domy\u015Blne preferencje dla systemu.",country:"Kraj",state:"Wojew\xF3dztwo",city:"Miasto",address:"Adres",street:"Ulica1 | Ulica2",phone:"Telefon",zip_code:"Kod pocztowy",go_back:"Wstecz",currency:"Waluta",language:"J\u0119zyk",time_zone:"Strefa czasowa",fiscal_year:"Rok finansowy",date_format:"Format daty",from_address:"Adres nadawcy",username:"Nazwa u\u017Cytkownika",next:"Nast\u0119pny",continue:"Kontynuuj",skip:"Pomi\u0144",database:{database:"Adres URL witryny i baza danych",connection:"Po\u0142\u0105czenie z baz\u0105 danych",host:"Host bazy danych",port:"Port bazy danych",password:"Has\u0142o bazy danych",app_url:"Adres aplikacji",app_domain:"Domena aplikacji",username:"Nazwa u\u017Cytkownika bazy danych",db_name:"Nazwa bazy danych",db_path:"\u015Acie\u017Cka do bazy danych",desc:"Utw\xF3rz baz\u0119 danych na swoim serwerze i ustaw dane logowania za pomoc\u0105 poni\u017Cszego formularza."},permissions:{permissions:"Uprawnienia",permission_confirm_title:"Czy na pewno chcesz kontynuowa\u0107?",permission_confirm_desc:"Sprawdzanie uprawnie\u0144 do katalogu nie powiod\u0142o si\u0119",permission_desc:"Poni\u017Cej znajduje si\u0119 lista uprawnie\u0144 folder\xF3w, kt\xF3re s\u0105 wymagane do dzia\u0142ania aplikacji. Je\u015Bli sprawdzenie uprawnie\u0144 nie powiedzie si\u0119, upewnij si\u0119, \u017Ce zaktualizujesz uprawnienia folderu."},verify_domain:{title:"Weryfikacja domeny",desc:"Crater u\u017Cywa uwierzytelniania opartego na sesji, kt\xF3re wymaga weryfikacji domeny dla cel\xF3w bezpiecze\u0144stwa. Wprowad\u017A domen\u0119, na kt\xF3rej b\u0119dziesz mie\u0107 dost\u0119p do swojej aplikacji internetowej.",app_domain:"Domena aplikacji",verify_now:"Potwierd\u017A teraz",success:"Pomy\u015Blnie zweryfikowano domen\u0119.",verify_and_continue:"Weryfikuj i kontynuuj"},mail:{host:"Adres hosta poczty",port:"Port poczty",driver:"Spos\xF3b wysy\u0142ania wiadomo\u015Bci e-mail",secret:"Tajny klucz",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domena",mailgun_endpoint:"Punkt dost\u0119powy Mailgun",ses_secret:"Tajny klucz SES",ses_key:"Klucz SES",password:"Has\u0142o poczty",username:"Nazwa u\u017Cytkownika poczty",mail_config:"Konfiguracja poczty",from_name:"Nazwa nadawcy",from_mail:"Adres e-mail nadawcy",encryption:"Szyfrowanie poczty",mail_config_desc:"Poni\u017Cej znajduje si\u0119 formularz konfiguracji sterownika poczty e-mail do wysy\u0142ania wiadomo\u015Bci e-mail z aplikacji. Mo\u017Cesz r\xF3wnie\u017C skonfigurowa\u0107 zewn\u0119trznych dostawc\xF3w takich jak Sendgrid, SES itp."},req:{system_req:"Wymagania systemowe",php_req_version:"Minimalna wersja Php (wymagana wersja {version})",check_req:"Sprawd\u017A wymagania",system_req_desc:"Crater posiada kilka wymaga\u0144 serwera. Upewnij si\u0119, \u017Ce Tw\xF3j serwer ma wymagan\u0105 wersj\u0119 php oraz wszystkie rozszerzenia wymienione poni\u017Cej."},errors:{migrate_failed:"Migracja nie powiod\u0142a si\u0119",domain_verification_failed:"Weryfikacja domeny nie powiod\u0142a si\u0119",database_variables_save_error:"Nie mo\u017Cna zapisa\u0107 konfiguracji do pliku .env. Prosz\u0119 sprawdzi\u0107 jego uprawnienia",mail_variables_save_error:"Konfiguracja email nie powiod\u0142a si\u0119.",connection_failed:"B\u0142\u0105d po\u0142\u0105czenia z baz\u0105 danych",database_should_be_empty:"Baza danych powinna by\u0107 pusta"},success:{mail_variables_save_successfully:"Email zosta\u0142 skonfigurowany pomy\u015Blnie",domain_variable_save_successfully:"Domena zosta\u0142a skonfigurowana pomy\u015Blnie",database_variables_save_successfully:"Baza danych zosta\u0142a skonfigurowana poprawnie."}},Uc={copyright_crater:"Copyright @ Crater - 2020",super_simple_invoicing:"Super proste fakturowanie",for_freelancer:"dla Freelancer\xF3w i",small_businesses:"Mikroprzedsi\u0119biorstw ",crater_help:"Crater pomaga \u015Bledzi\u0107 Twoje wydatki, zapisywa\u0107 p\u0142atno\u015Bci i generowa\u0107 pi\u0119kne",invoices_and_estimates:"faktury i oferty z mo\u017Cliwo\u015Bci\u0105 wyboru wielu szablon\xF3w."},Kc={invalid_phone:"Nieprawid\u0142owy numer telefonu",invalid_url:"Nieprawid\u0142owy adres url (np. http://www.crater.com)",invalid_domain_url:"Nieprawid\u0142owy adres url (np. crater.com)",required:"Pole jest wymagane",email_incorrect:"Niepoprawny email.",email_already_taken:"Ten adres e-mail jest ju\u017C zaj\u0119ty.",email_does_not_exist:"U\u017Cytkownik z podanym adresem email nie istnieje",item_unit_already_taken:"Ta nazwa jednostki zosta\u0142a ju\u017C zaj\u0119ta",payment_mode_already_taken:"Ta nazwa trybu p\u0142atno\u015Bci zosta\u0142a ju\u017C zaj\u0119ta",send_reset_link:"Wy\u015Blij link do resetowania has\u0142a",not_yet:"Jeszcze nie? Wy\u015Blij ponownie",password_min_length:"Has\u0142o musi zawiera\u0107 co najmniej {count} znak\xF3w",name_min_length:"Nazwa u\u017Cytkownika musi zawiera\u0107 co najmniej {count} znak\xF3w.",enter_valid_tax_rate:"Wprowad\u017A poprawn\u0105 stawk\u0119 podatku",numbers_only:"Tylko liczby.",characters_only:"Tylko znaki.",password_incorrect:"Has\u0142a musz\u0105 by\u0107 identyczne",password_length:"Has\u0142o musi zawiera\u0107 {count} znak\xF3w.",qty_must_greater_than_zero:"Ilo\u015B\u0107 musi by\u0107 wi\u0119ksza ni\u017C zero.",price_greater_than_zero:"Cena musi by\u0107 wi\u0119ksza ni\u017C zero.",payment_greater_than_zero:"P\u0142atno\u015B\u0107 musi by\u0107 wi\u0119ksza ni\u017C zero.",payment_greater_than_due_amount:"Wprowadzona p\u0142atno\u015B\u0107 to wi\u0119cej ni\u017C nale\u017Cna kwota tej faktury.",quantity_maxlength:"Ilo\u015B\u0107 nie powinna by\u0107 wi\u0119ksza ni\u017C 20 cyfr.",price_maxlength:"Cena nie powinna by\u0107 wi\u0119ksza ni\u017C 20 cyfr.",price_minvalue:"Cena powinna by\u0107 wi\u0119ksza ni\u017C 0.",amount_maxlength:"Kwota nie powinna by\u0107 wi\u0119ksza ni\u017C 20 cyfr.",amount_minvalue:"Kwota powinna by\u0107 wi\u0119ksza ni\u017C 0.",description_maxlength:"Opis nie powinien przekracza\u0107 65 000 znak\xF3w.",subject_maxlength:"Temat nie powinien by\u0107 d\u0142u\u017Cszy ni\u017C 100 znak\xF3w.",message_maxlength:"Wiadomo\u015B\u0107 nie powinna by\u0107 d\u0142u\u017Csza ni\u017C 255 znak\xF3w.",maximum_options_error:"Wybrano maksymalnie {max} opcji. Najpierw usu\u0144 wybran\u0105 opcj\u0119, aby wybra\u0107 inn\u0105.",notes_maxlength:"Notatki nie powinny by\u0107 wi\u0119ksze ni\u017C 65 000 znak\xF3w.",address_maxlength:"Adres nie powinien mie\u0107 wi\u0119cej ni\u017C 255 znak\xF3w.",ref_number_maxlength:"Numer referencyjny nie mo\u017Ce by\u0107 d\u0142u\u017Cszy ni\u017C 255 znak\xF3w.",prefix_maxlength:"Prefiks nie powinien by\u0107 d\u0142u\u017Cszy ni\u017C 5 znak\xF3w.",something_went_wrong:"co\u015B posz\u0142o nie tak",number_length_minvalue:"D\u0142ugo\u015B\u0107 numeru powinna by\u0107 wi\u0119ksza ni\u017C 0"},qc="Oferta",Zc="Numer oferty",Wc="Data oferty",Hc="Termin wa\u017Cno\u015Bci",Gc="Faktura",Yc="Numer faktury",Jc="Data faktury",Xc="Termin",Qc="Notatki",e_="Pozycje",t_="Ilo\u015B\u0107",a_="Cena",s_="Rabat",n_="Kwota",i_="Suma cz\u0119\u015Bciowa",o_="Razem",r_="P\u0142atno\u015B\u0107",d_="POTWIERDZENIE P\u0141ATNO\u015ACI",l_="Data p\u0142atno\u015Bci",c_="Numer p\u0142atno\u015Bci",__="Metoda p\u0142atno\u015Bci",u_="Kwota otrzymana",m_="SPRAWOZDANIE Z WYDATK\xD3W",p_="WYDATKI OG\xD3\u0141EM",g_="RAPORT ZYSK\xD3W I STRAT",f_="Raport sprzeda\u017Cy obs\u0142ugi kontrahenta",h_="Raport dotycz\u0105cy przedmiotu sprzeda\u017Cy",v_="Raport podsumowania podatku",y_="PRZYCH\xD3D",b_="ZYSK NETTO",k_="Raport sprzeda\u017Cy: Wed\u0142ug Kontrahenta",w_="CA\u0141KOWITA SPRZEDA\u017B",x_="Raport sprzeda\u017Cy: Wed\u0142ug produktu",z_="RAPORT PODATKOWY",S_="CA\u0141KOWITY PODATEK",j_="Rodzaje podatku",P_="Wydatki",D_="Wystawiono dla",C_="Wysy\u0142ka do",A_="Otrzymane od:";var E_={navigation:jc,general:Pc,dashboard:Dc,tax_types:Cc,global_search:Ac,customers:Ec,items:Nc,estimates:Tc,invoices:Ic,credit_notes:$c,payments:Rc,expenses:Fc,login:Mc,users:Vc,reports:Bc,settings:Oc,wizard:Lc,layout_login:Uc,validation:Kc,pdf_estimate_label:qc,pdf_estimate_number:Zc,pdf_estimate_date:Wc,pdf_estimate_expire_date:Hc,pdf_invoice_label:Gc,pdf_invoice_number:Yc,pdf_invoice_date:Jc,pdf_invoice_due_date:Xc,pdf_notes:Qc,pdf_items_label:e_,pdf_quantity_label:t_,pdf_price_label:a_,pdf_discount_label:s_,pdf_amount_label:n_,pdf_subtotal:i_,pdf_total:o_,pdf_payment_label:r_,pdf_payment_receipt_label:d_,pdf_payment_date:l_,pdf_payment_number:c_,pdf_payment_mode:__,pdf_payment_amount_received_label:u_,pdf_expense_report_label:m_,pdf_total_expenses_label:p_,pdf_profit_loss_label:g_,pdf_sales_customers_label:f_,pdf_sales_items_label:h_,pdf_tax_summery_label:v_,pdf_income_label:y_,pdf_net_profit_label:b_,pdf_customer_sales_report:k_,pdf_total_sales_label:w_,pdf_item_sales_label:x_,pdf_tax_report_label:z_,pdf_total_tax_label:S_,pdf_tax_types_label:j_,pdf_expenses_label:P_,pdf_bill_to:D_,pdf_ship_to:C_,pdf_received_from:A_};const N_={dashboard:"Painel",customers:"Clientes",items:"Itens",invoices:"Faturas",expenses:"Despesas",estimates:"Or\xE7amentos",payments:"Pagamentos",reports:"Relat\xF3rios",settings:"Configura\xE7\xF5es",logout:"Encerrar sess\xE3o"},T_={view_pdf:"Ver PDF",download_pdf:"Baixar PDF",save:"Salvar",cancel:"Cancelar",update:"Atualizar",deselect:"Desmarcar",download:"Baixar",from_date:"A partir da Data",to_date:"At\xE9 a Data",from:"De",to:"Para",sort_by:"Ordenar por",ascending:"Crescente",descending:"Descendente",subject:"Sujeita",body:"Corpo",message:"Mensagem",go_back:"Voltar",back_to_login:"Voltar ao Login",home:"Home",filter:"Filtrar",delete:"Excluir",edit:"Editar",view:"Ver",add_new_item:"Adicionar novo item",clear_all:"Limpar tudo",showing:"Mostrando",of:"de",actions:"A\xE7\xF5es",subtotal:"Total parcial",discount:"Desconto",fixed:"Fixado",percentage:"Porcentagem",tax:"Imposto",total_amount:"Quantidade Total",bill_to:"Cobrar a",ship_to:"Envie a",due:"Vencida",draft:"Rascunho",sent:"Enviado",all:"Todos",select_all:"Selecionar tudo",choose_file:"Escolha um arquivo.",choose_template:"Escolha um modelo",choose:"Escolher",remove:"Excluir",powered_by:"Distribu\xEDdo por",bytefury:"Bytefury",select_a_status:"Selecione um status",select_a_tax:"Selecione um Imposto",search:"Buscar",are_you_sure:"Tem certeza?",list_is_empty:"Lista est\xE1 vazia.",no_tax_found:"Imposto n\xE3o encontrado!",four_zero_four:"404",you_got_lost:"Ops! Se perdeu!",go_home:"Ir para Home",test_mail_conf:"Testar configura\xE7\xE3o de email",send_mail_successfully:"Correio enviado com sucesso",setting_updated:"Configura\xE7\xE3o atualizada com sucesso",select_state:"Selecione Estado",select_country:"Selecionar pais",select_city:"Selecionar cidade",street_1:"Rua 1",street_2:"Rua # 2",action_failed:"A\xE7\xE3o: Falhou",retry:"Atualiza\xE7\xE3o falhou"},I_={select_year:"Selecione Ano",cards:{due_amount:"Montante devido",customers:"Clientes",invoices:"Faturas",estimates:"Or\xE7amentos"},chart_info:{total_sales:"Vendas",total_receipts:"Receitas",total_expense:"Despesas",net_income:"Resultado l\xEDquido",year:"Selecione Ano"},monthly_chart:{title:"Vendas e Despesas"},recent_invoices_card:{title:"Faturas vencidas",due_on:"vencido em",customer:"Cliente",amount_due:"Valor Devido",actions:"A\xE7\xF5es",view_all:"Ver todos"},recent_estimate_card:{title:"Or\xE7amentos Recentes",date:"Data",customer:"Cliente",amount_due:"Valor Devido",actions:"A\xE7\xF5es",view_all:"Ver todos"}},$_={name:"Nome",description:"Descri\xE7\xE3o",percent:"Porcentagem",compound_tax:"Imposto compuesto"},R_={title:"Clientes",add_customer:"Adicionar cliente",contacts_list:"Lista de clientes",name:"Nome",display_name:"Nome de exibi\xE7\xE3o",primary_contact_name:"Nome do contato principal",contact_name:"Nome de Contato",amount_due:"Valor Devido",email:"Email",address:"Endere\xE7o",phone:"Telefone",website:"Site",country:"Pais",state:"Estado",city:"Cidade",zip_code:"C\xF3digo postal",added_on:"Adicionado",action:"A\xE7\xE3o",password:"Senha",street_number:"N\xFAmero",primary_currency:"Moeda principal",add_new_customer:"Adicionar novo cliente",save_customer:"Salvar cliente",update_customer:"Atualizar cliente",customer:"Cliente | Clientes",new_customer:"Novo cliente",edit_customer:"Editar cliente",basic_info:"Informa\xE7\xE3o basica",billing_address:"Endere\xE7o de cobran\xE7a",shipping_address:"Endere\xE7o de entrega",copy_billing_address:"C\xF3pia de faturamento",no_customers:"Ainda n\xE3o h\xE1 clientes!",no_customers_found:"Clientes n\xE3o encontrados!",no_contact:"No contact",no_contact_name:"No contact name",list_of_customers:"Esta se\xE7\xE3o conter\xE1 a lista de clientes.",primary_display_name:"Nome de exibi\xE7\xE3o principal",select_currency:"Selecione o tipo de moeda",select_a_customer:"Selecione um cliente",type_or_click:"Digite ou clique para selecionar",new_transaction:"Nova transa\xE7\xE3o",no_matching_customers:"N\xE3o h\xE1 clientes correspondentes!",phone_number:"N\xFAmero de telefone",create_date:"Criar Data",confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar este cliente e todas as faturas, estimativas e pagamentos relacionados. | Voc\xEA n\xE3o poder\xE1 recuperar esses clientes e todas as faturas, estimativas e pagamentos relacionados.",created_message:"Cliente criado com sucesso",updated_message:"Cliente atualizado com sucesso",deleted_message:"Cliente exclu\xEDdo com sucesso | Clientes exclu\xEDdos com sucesso"},F_={title:"Itens",items_list:"Lista de Itens",name:"Nome",unit:"Unidade",description:"Descri\xE7\xE3o",added_on:"Adicionado",price:"Pre\xE7o",date_of_creation:"Data de cria\xE7\xE3o",not_selected:"No item selected",action:"A\xE7\xE3o",add_item:"Adicionar item",save_item:"Salvar item",update_item:"Atualizar item",item:"Item | Itens",add_new_item:"Adicionar novo item",new_item:"Novo item",edit_item:"Editar item",no_items:"Ainda n\xE3o existe itens",list_of_items:"Esta se\xE7\xE3o conter\xE1 a lista de itens.",select_a_unit:"Seleciona unidade",taxes:"Impostos",item_attached_message:"N\xE3o \xE9 poss\xEDvel excluir um item que j\xE1 est\xE1 em uso.",confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar este item | Voc\xEA n\xE3o poder\xE1 recuperar esses itens",created_message:"Item criado com sucesso",updated_message:"Item atualizado com sucesso",deleted_message:"Item exclu\xEDdo com sucesso | Itens Exclu\xEDdos com sucesso"},M_={title:"Or\xE7amentos",estimate:"Or\xE7amento | Or\xE7amentos",estimates_list:"Lista de or\xE7amentos",days:"{dias} dias",months:"{meses} M\xEAs",years:"{Anos} Ano",all:"Todos",paid:"Pago",unpaid:"N\xE3o pago",customer:"CLIENTE",ref_no:"N\xDAMERO DE REFER\xCANCIA.",number:"N\xDAMERO",amount_due:"Valor Devido",partially_paid:"Pago parcialmente",total:"Total",discount:"Desconto",sub_total:"Subtotal",estimate_number:"Numero do Or\xE7amento",ref_number:"Refer\xEAncia",contact:"Contato",add_item:"Adicionar Item",date:"Data",due_date:"Data de Vencimento",expiry_date:"Data de expira\xE7\xE3o",status:"Status",add_tax:"Adicionar Imposto",amount:"Montante",action:"A\xE7\xE3o",notes:"Observa\xE7\xF5es",tax:"Imposto",estimate_template:"Modelo de or\xE7amento",convert_to_invoice:"Converter em fatura",mark_as_sent:"Marcar como enviado",send_estimate:"Enviar or\xE7amento",record_payment:"Registro de pago",add_estimate:"Adicionar or\xE7amento",save_estimate:"Salvar Or\xE7amento",confirm_conversion:"Deseja converter este or\xE7amento em uma fatura?",conversion_message:"Conver\xE7\xE3o realizada com sucesso",confirm_send_estimate:"Este or\xE7amento ser\xE1 enviado por email ao cliente",confirm_mark_as_sent:"Este or\xE7amento ser\xE1 marcado como enviado",confirm_mark_as_accepted:"Este or\xE7amento ser\xE1 marcado como Aceito",confirm_mark_as_rejected:"Este or\xE7amento ser\xE1 marcado como Rejeitado",no_matching_estimates:"N\xE3o h\xE1 or\xE7amentos correspondentes!",mark_as_sent_successfully:"Or\xE7amento como marcado como enviado com sucesso",send_estimate_successfully:"Or\xE7amento enviado com sucesso",errors:{required:"Campo obrigat\xF3rio"},accepted:"Aceito",rejected:"Rejected",sent:"Enviado",draft:"Rascunho",declined:"Rejeitado",new_estimate:"Novo or\xE7amento",add_new_estimate:"Adicionar novo or\xE7amento",update_Estimate:"Atualizar or\xE7amento",edit_estimate:"Editar or\xE7amento",items:"art\xEDculos",Estimate:"Or\xE7amento | Or\xE7amentos",add_new_tax:"Adicionar novo imposto",no_estimates:"Ainda n\xE3o h\xE1 orcamentos",list_of_estimates:"Esta se\xE7\xE3o cont\xE9m a lista de or\xE7amentos.",mark_as_rejected:"Marcar como rejeitado",mark_as_accepted:"Marcar como aceito",marked_as_accepted_message:"Or\xE7amento marcado como aceito",marked_as_rejected_message:"Or\xE7amento marcado como rejeitado",confirm_delete:"N\xE3o poder\xE1 recuperar este or\xE7amento | N\xE3o poder\xE1 recuperar estes or\xE7amentos",created_message:"Or\xE7amento criado com sucesso",updated_message:"Or\xE7amento atualizado com sucesso",deleted_message:"Or\xE7amento exclu\xEDdo com sucesso | Or\xE7amentos exclu\xEDdos com sucesso",something_went_wrong:"Algo deu errado",item:{title:"Titulo do item",description:"Descri\xE7\xE3o",quantity:"Quantidade",price:"Pre\xE7o",discount:"Desconto",total:"Total",total_discount:"Desconto total",sub_total:"Subtotal",tax:"Imposto",amount:"Montante",select_an_item:"Escreva ou clique para selecionar um item",type_item_description:"Tipo Item Descri\xE7\xE3o (opcional)"}},V_={title:"Faturas",invoices_list:"Lista de faturas",days:"{dias} dias",months:"{meses} M\xEAs",years:"{anos} Ano",all:"Todas",paid:"Paga",unpaid:"N\xE3o Paga",viewed:"Viewed",overdue:"Overdue",completed:"Completed",customer:"CLIENTE",paid_status:"STATUS PAGAMENTO",ref_no:"REFER\xCANCIA",number:"N\xDAMERO",amount_due:"VALOR DEVIDO",partially_paid:"Parcialmente pago",total:"Total",discount:"Desconto",sub_total:"Subtotal",invoice:"Fatura | Faturas",invoice_number:"N\xFAmero da fatura",ref_number:"Refer\xEAncia",contact:"Contato",add_item:"Adicionar um item",date:"Data",due_date:"Data de Vencimento",status:"Status",add_tax:"Adicionar imposto",amount:"Montante",action:"A\xE7\xE3o",notes:"Observa\xE7\xF5es",view:"Ver",send_invoice:"Enviar Fatura",invoice_template:"Modelo da Fatura",template:"Modelo",mark_as_sent:"Marcar como enviada",confirm_send_invoice:"Esta fatura ser\xE1 enviada por e-mail ao cliente",invoice_mark_as_sent:"Esta fatura ser\xE1 marcada como enviada",confirm_send:"Esta fatura ser\xE1 enviada por e-mail ao cliente",invoice_date:"Data da Fatura",record_payment:"Gravar Pagamento",add_new_invoice:"Adicionar Nova Fatura",update_expense:"Atualizar Despesa",edit_invoice:"Editar Fatura",new_invoice:"Nova Fatura",save_invoice:"Salvar Fatura",update_invoice:"Atualizar Fatura",add_new_tax:"Adicionar novo Imposto",no_invoices:"Ainda n\xE3o h\xE1 faturas!",list_of_invoices:"Esta se\xE7\xE3o conter\xE1 a lista de faturas.",select_invoice:"Selecionar Fatura",no_matching_invoices:"N\xE3o h\xE1 faturas correspondentes!",mark_as_sent_successfully:"Fatura marcada como enviada com sucesso",invoice_sent_successfully:"Fatura enviada com sucesso",cloned_successfully:"Fatura clonada com sucesso",clone_invoice:"Clonar fatura",confirm_clone:"Esta fatura ser\xE1 clonada em uma nova fatura",item:{title:"Titulo do Item",description:"Descri\xE7\xE3o",quantity:"Quantidade",price:"Pre\xE7o",discount:"Desconto",total:"Total",total_discount:"Desconto Total",sub_total:"SubTotal",tax:"Imposto",amount:"Montante",select_an_item:"Digite ou clique para selecionar um item",type_item_description:"Tipo Descri\xE7\xE3o do item (opcional)"},confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar esta fatura | Voc\xEA n\xE3o poder\xE1 recuperar essas faturas",created_message:"Fatura criada com sucesso",updated_message:"Fatura atualizada com sucesso",deleted_message:"Fatura exclu\xEDda com sucesso | Faturas exclu\xEDdas com sucesso",marked_as_sent_message:"Fatura marcada como enviada com sucesso",something_went_wrong:"Algo deu errado",invalid_due_amount_message:"O valor total da fatura n\xE3o pode ser menor que o valor total pago para esta fatura. Atualize a fatura ou exclua os pagamentos associados para continuar."},B_={title:"Pagamentos",payments_list:"Lista de Pagamentos",record_payment:"Gravar Pagamento",customer:"Cliente",date:"Data",amount:"Montante",action:"A\xE7\xE3o",payment_number:"N\xFAmero do Pagamento",payment_mode:"Forma de Pagamento",invoice:"Fatura",note:"Observa\xE7\xE3o",add_payment:"Adicionar Pagamento",new_payment:"Novo Pagamento",edit_payment:"Editar Pagamento",view_payment:"Ver Pagamento",add_new_payment:"Adicionar novo Pagamento",send_payment_receipt:"Enviar recibo de pagamento",save_payment:"Salvar Pagamento",send_payment:"Mande o pagamento",update_payment:"Atualizar Pagamento",payment:"Pagamento | Pagamentos",no_payments:"Ainda sem pagamentos!",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"N\xE3o h\xE1 pagamentos correspondentes!",list_of_payments:"Esta se\xE7\xE3o conter\xE1 a lista de pagamentos.",select_payment_mode:"Selecione a forma de pagamento",confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar este Pagamento | Voc\xEA n\xE3o poder\xE1 recuperar esses Pagamentos",created_message:"Pagamento criado com sucesso",updated_message:"Pagamento atualizado com sucesso",deleted_message:"Pagamento exclu\xEDdo com sucesso | Pagamentos exclu\xEDdos com sucesso",invalid_amount_message:"O valor do pagamento \xE9 inv\xE1lido"},O_={title:"Despesas",expenses_list:"Lista de Despesas",expense_title:"T\xEDtulo",contact:"Contato",category:"Categoria",customer:"Cliente",from_date:"A partir da Data",to_date:"At\xE9 a Data",expense_date:"Data",description:"Descri\xE7\xE3o",receipt:"Receita",amount:"Montante",action:"A\xE7\xE3o",not_selected:"Not selected",note:"Observa\xE7\xE3o",category_id:"Categoria",date:"Data da Despesa",add_expense:"Adicionar Despesa",add_new_expense:"Adicionar Nova Despesa",save_expense:"Salvar Despesa",update_expense:"Atualizar Despesa",download_receipt:"Baixar Receita",edit_expense:"Editar Despesa",new_expense:"Nova Despesa",expense:"Despesa | Despesas",no_expenses:"Ainda sem Despesas!",list_of_expenses:"Esta se\xE7\xE3o conter\xE1 a lista de despesas.",confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar esta despesa | Voc\xEA n\xE3o poder\xE1 recuperar essas despesas",created_message:"Despesa criada com sucesso",updated_message:"Despesa atualizada com sucesso",deleted_message:"Despesas exclu\xEDdas com sucesso | Despesas exclu\xEDdas com sucesso",categories:{categories_list:"Lista de Categorias",title:"T\xEDtulo",name:"Nome",description:"Descri\xE7\xE3o",amount:"Montante",actions:"A\xE7\xF5es",add_category:"Adicionar Categoria",new_category:"Nova Categoria",category:"Categoria | Categorias",select_a_category:"Selecionar uma Categoria"}},L_={email:"Email",password:"Senha",forgot_password:"Esqueceu a senha?",or_signIn_with:"ou Entre com",login:"Entrar",register:"Registre-se",reset_password:"Resetar Senha",password_reset_successfully:"Senha redefinida com sucesso",enter_email:"Digite email",enter_password:"Digite a senha",retype_password:"Confirme a Senha"},U_={title:"Relat\xF3rio",from_date:"A partir da Data",to_date:"At\xE9 a Data",status:"Status",paid:"Pago",unpaid:"N\xE3o Pago",download_pdf:"Baixar PDF",view_pdf:"Ver PDF",update_report:"Atualizar Relat\xF3rio",report:"Relat\xF3rio | Relat\xF3rios",profit_loss:{profit_loss:"Perda de lucro",to_date:"At\xE9 a Data",from_date:"A partir da Data",date_range:"Selecionar per\xEDodo"},sales:{sales:"Vendas",date_range:"Selecionar per\xEDodo",to_date:"At\xE9 a Data",from_date:"A partir da Data",report_type:"Tipo de Relat\xF3rio"},taxes:{taxes:"Impostos",to_date:"At\xE9 a Data",from_date:"A partir da Data",date_range:"Selecionar per\xEDodo"},errors:{required:"Campo obrigat\xF3rio"},invoices:{invoice:"Fatura",invoice_date:"Data da Fatura",due_date:"Data de Vencimento",amount:"Montante",contact_name:"Nome de Contato",status:"Status"},estimates:{estimate:"Or\xE7amento",estimate_date:"Data do Or\xE7amento",due_date:"Data de Vencimento",estimate_number:"N\xFAmero do Or\xE7amento",ref_number:"Refer\xEAncia",amount:"Montante",contact_name:"Nome de Contato",status:"Status"},expenses:{expenses:"Despesas",category:"Categoria",date:"Data",amount:"Montante",to_date:"At\xE9 a Data",from_date:"A partir da Data",date_range:"Selecionar per\xEDodo"}},K_={menu_title:{account_settings:"Configura\xE7\xF5es da conta",company_information:"Informa\xE7\xF5es da Empresa",customization:"Personalizar",preferences:"Prefer\xEAncias",notifications:"Notifica\xE7\xF5es",tax_types:"Tipos de Impostos",expense_category:"Categorias de Despesas",update_app:"Atualizar Aplicativo",custom_fields:"Os campos personalizados"},title:"Configura\xE7\xF5es",setting:"Configura\xE7\xE3o | Configura\xE7\xF5es",general:"Geral",language:"Idioma",primary_currency:"Mo\xE9da Principal",timezone:"Fuso hor\xE1rio",date_format:"Formato de data",currencies:{title:"Moedas",currency:"Moeda | Moedas",currencies_list:"Moedas",select_currency:"Selecione uma Moeda",name:"Nome",code:"C\xF3digo",symbol:"S\xEDmbolo",precision:"Precis\xE3o",thousand_separator:"Separador de Milhar",decimal_separator:"Separador Decimal",position:"Posi\xE7\xE3o",position_of_symbol:"Posi\xE7\xE3o do S\xEDmbolo",right:"Direita",left:"Esquerda",action:"A\xE7\xE3o",add_currency:"Adicionar Moeda"},mail:{host:"Host de Email",port:"Porta de Email",driver:"Mail Driver",secret:"Segredo",mailgun_secret:"Mailgun Segredo",mailgun_domain:"Dom\xEDnio",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Segredo",ses_key:"SES Chave",password:"Senha do Email",username:"Nome de Usu\xE1rio do Email",mail_config:"Configura\xE7\xE3o de Email",from_name:"Do Nome de Email",from_mail:"Do Endere\xE7o de Email",encryption:"Criptografia de Email",mail_config_desc:"Abaixo est\xE1 o formul\xE1rio para configurar o driver de email para enviar emails do aplicativo. Voc\xEA tamb\xE9m pode configurar provedores de terceiros como Sendgrid, SES etc."},pdf:{title:"Configura\xE7\xF5es de PDF",footer_text:"Texto do Rodap\xE9",pdf_layout:"Layout de PDF"},company_info:{company_info:"Informa\xE7\xE3o da Empresa",company_name:"Nome da Empresa",company_logo:"Logotipo da Empresa",section_description:"Informa\xE7\xF5es sobre sua empresa que ser\xE3o exibidas em Faturas, Or\xE7amentos e outros documentos criados pela Crater.",phone:"Telefone",country:"Pais",state:"Estado",city:"Cidade",address:"Endere\xE7o",zip:"CEP",save:"Salvar",updated_message:"Informa\xE7\xF5es da Empresa atualizadas com sucesso"},custom_fields:{title:"Os campos personalizados",add_custom_field:"Adicionar campo personalizado",edit_custom_field:"Editar campo personalizado",field_name:"Nome do campo",type:"Tipo",name:"Nome",required:"Requeridas",label:"R\xF3tulo",placeholder:"Placeholder",help_text:"Texto de ajuda",default_value:"Valor padr\xE3o",prefix:"Prefixo",starting_number:"N\xFAmero inicial",model:"Modelo",help_text_description:"Digite algum texto para ajudar os usu\xE1rios a entender a finalidade desse campo personalizado.",suffix:"Sufixo",yes:"sim",no:"N\xE3o",order:"Ordem",custom_field_confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar este campo personalizado",already_in_use:"O campo personalizado j\xE1 est\xE1 em uso",deleted_message:"Campo personalizado exclu\xEDdo com sucesso",options:"op\xE7\xF5es",add_option:"Adicionar op\xE7\xF5es",add_another_option:"Adicione outra op\xE7\xE3o",sort_in_alphabetical_order:"Classificar em ordem alfab\xE9tica",add_options_in_bulk:"Adicionar op\xE7\xF5es em massa",use_predefined_options:"Use Predefined Options",select_custom_date:"Selecionar data personalizada",select_relative_date:"Selecionar data relativa",ticked_by_default:"Marcado por padr\xE3o",updated_message:"Campo personalizado atualizado com sucesso",added_message:"Campo personalizado adicionado com sucesso"},customization:{customization:"Personalizar",save:"Salvar",addresses:{title:"Endere\xE7o",section_description:"Voc\xEA pode definir o endere\xE7o de cobran\xE7a do cliente e o formato do endere\xE7o de entrega do cliente (exibido apenas em PDF).",customer_billing_address:"Endere\xE7o de Cobran\xE7a do Cliente",customer_shipping_address:"Endere\xE7o de Entrega do Cliente",company_address:"Endere\xE7o da Empresa",insert_fields:"Inserir Campos",contact:"Contato",address:"Endere\xE7o",display_name:"Nome em Exibi\xE7\xE3o",primary_contact_name:"Nome do Contato Principal",email:"Email",website:"Website",name:"Nome",country:"Pais",state:"Estado",city:"Cidade",company_name:"Nome da Empresa",address_street_1:"Endere\xE7o Rua 1",address_street_2:"Endere\xE7o Rua 2",phone:"Telefone",zip_code:"CEP",address_setting_updated:"Configura\xE7\xE3o de Endere\xE7o Atualizada com Sucesso"},updated_message:"Informa\xE7\xF5es da Empresa atualizadas com sucesso",invoices:{title:"Faturas",notes:"Notas",invoice_prefix:"Fatura Prefixo",invoice_settings:"Configra\xE7\xF5es da Fatura",autogenerate_invoice_number:"Gerar automaticamente o n\xFAmero da Fatura",autogenerate_invoice_number_desc:"Desative isso, se voc\xEA n\xE3o deseja gerar automaticamente n\xFAmeros da Fatura sempre que criar uma nova.",enter_invoice_prefix:"Digite o prefixo da Fatura",terms_and_conditions:"Termos e Condi\xE7\xF5es",invoice_settings_updated:"Configura\xE7\xE3o da Fatura atualizada com sucesso"},estimates:{title:"Or\xE7amentos",estimate_prefix:"Or\xE7amento Prefixo",estimate_settings:"Configura\xE7\xF5es do Or\xE7amento",autogenerate_estimate_number:"Gerar automaticamente o n\xFAmero do Or\xE7amento",estimate_setting_description:"Desative isso, se voc\xEA n\xE3o deseja gerar automaticamente n\xFAmeros do Or\xE7amento sempre que criar um novo.",enter_estimate_prefix:"Digite o prefixo do Or\xE7amento",estimate_setting_updated:"Configura\xE7\xE3o do Or\xE7amento atualizada com sucesso"},payments:{title:"Pagamentos",payment_prefix:"Pagamento Prefixo",payment_settings:"Configura\xE7\xF5es de Pagamento",autogenerate_payment_number:"Gerar automaticamente n\xFAmero do Pagamento",payment_setting_description:"Desative isso, se voc\xEA n\xE3o deseja gerar automaticamente n\xFAmeros do Pagamento sempre que criar um novo.",enter_payment_prefix:"Digite o Prefixo do Pagamento",payment_setting_updated:"Configura\xE7\xF5es de Pagamento atualizada com sucesso",payment_mode:"Modo de pagamento",add_payment_mode:"Adicionar modo de pagamento",edit_payment_mode:"Editar modo de pagamento",mode_name:"Nome do modo",payment_mode_added:"Modo de pagamento adicionado",payment_mode_updated:"Modo de pagamento atualizado",payment_mode_confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar este modo de pagamento",already_in_use:"O modo de pagamento j\xE1 est\xE1 em uso",deleted_message:"Modo de pagamento exclu\xEDdo com sucesso"},items:{title:"Itens",units:"unidades",add_item_unit:"Adicionar unidade de item",edit_item_unit:"Editar unidade de item",unit_name:"Nome da unidade",item_unit_added:"Item Unit Added",item_unit_updated:"Item Unit Updated",item_unit_confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar esta unidade de item",already_in_use:"A unidade do item j\xE1 est\xE1 em uso",deleted_message:"Unidade de item exclu\xEDda com sucesso"}},account_settings:{profile_picture:"Foto do Perfil",name:"Nome",email:"Email",password:"Senha",confirm_password:"Confirmar Senha",account_settings:"Configura\xE7\xF5es da conta",save:"Salvar",section_description:"Voc\xEA pode atualizar seu nome, email e senha usando o formul\xE1rio abaixo.",updated_message:"Configura\xE7\xF5es da conta atualizadas com sucesso"},user_profile:{name:"Nome",email:"Email",password:"Password",confirm_password:"Confirmar Senha"},notification:{title:"Notifica\xE7\xE3o",email:"Enviar Notifica\xE7\xF5es para",description:"Quais notifica\xE7\xF5es por email voc\xEA gostaria de receber quando algo mudar?",invoice_viewed:"Fatura Visualizada",invoice_viewed_desc:"Quando o seu cliente visualiza uma Fatura enviada pelo painel do Crater.",estimate_viewed:"Or\xE7amento Visualizado",estimate_viewed_desc:"Quando o seu cliente visualiza um Or\xE7amento enviada pelo painel do Crater.",save:"Salvar",email_save_message:"E-mail salvo com sucesso",please_enter_email:"Por favor digite um E-mail"},tax_types:{title:"Tipos de Impostos",add_tax:"Adicionar Imposto",edit_tax:"Editar imposto",description:"Voc\xEA pode adicionar ou remover impostos conforme desejar. O Crater suporta impostos sobre itens individuais e tamb\xE9m na Fatura.",add_new_tax:"Adicionar Novo Imposto",tax_settings:"Configura\xE7\xF5es de Impostos",tax_per_item:"Imposto por Item",tax_name:"Nome do Imposto",compound_tax:"Imposto Composto",percent:"Porcentagem",action:"A\xE7\xE3o",tax_setting_description:"Habilite isso se desejar adicionar Impostos a itens da Fatura Idividualmente. Por padr\xE3o, os impostos s\xE3o adicionados diretamente \xE0 Fatura.",created_message:"Tipo de Imposto criado com sucesso",updated_message:"Tipo de Imposto Atualizado com sucesso",deleted_message:"Tipo de Imposto Deletado com sucesso",confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar este tipo de Imposto",already_in_use:"O Imposto j\xE1 est\xE1 em uso"},expense_category:{title:"Categoria de Despesa",action:"A\xE7\xE3o",description:"As Categorias s\xE3o necess\xE1rias para adicionar entradas de Despesas. Voc\xEA pode adicionar ou remover essas Categorias de acordo com sua prefer\xEAncia.",add_new_category:"Adicionar Nova Categoria",add_category:"Adicionar categoria",edit_category:"Editar categoria",category_name:"Nome da Categoria",category_description:"Descri\xE7\xE3o",created_message:"Categoria de Despesa criada com sucesso",deleted_message:"Categoria de Despesa exclu\xEDda com sucesso",updated_message:"Categoria de Despesa atualizada com sucesso",confirm_delete:"Voc\xEA n\xE3o poder\xE1 recuperar esta Categoria de Despesa",already_in_use:"A categoria j\xE1 est\xE1 em uso"},preferences:{currency:"Moeda",language:"Idioma",time_zone:"Fuso Hor\xE1rio",fiscal_year:"Ano Financeiro",date_format:"Formato da Data",discount_setting:"Configura\xE7\xE3o de Desconto",discount_per_item:"Desconto por Item ",discount_setting_description:"Habilite isso se desejar adicionar desconto a itens de Fatura individualmente. Por padr\xE3o, o desconto \xE9 adicionado diretamente \xE0 Fatura.",save:"Salvar",preference:"Prefer\xEAncia | Prefer\xEAncias",general_settings:"Prefer\xEAncias padr\xE3o para o sistema.",updated_message:"Prefer\xEAncias atualizadas com sucesso",select_language:"Selecione um Idioma",select_time_zone:"Selecione um fuso hor\xE1rio",select_date_formate:"Selecione um formato de data",select_financial_year:"Selecione o ano financeiro"},update_app:{title:"Atualizar Aplicativo",description:"Voc\xEA pode atualizar facilmente o Crater, verifique se h\xE0 novas atualiza\xE7\xF5es, clicando no bot\xE3o abaixo",check_update:"Verifique se h\xE1 atualiza\xE7\xF5es",avail_update:"Nova atualiza\xE7\xE3o dispon\xEDvel",next_version:"Pr\xF3xima vers\xE3o",update:"Atualizar agora",update_progress:"Atualiza\xE7\xE3o em progresso...",progress_text:"Levar\xE1 apenas alguns minutos. N\xE3o atualize a tela ou feche a janela antes que a atualiza\xE7\xE3o seja conclu\xEDda",update_success:"O aplicativo foi atualizado! Aguarde enquanto a janela do navegador \xE9 recarregada automaticamente.",latest_message:"Nenhuma atualiza\xE7\xE3o dispon\xEDvel! Voc\xEA est\xE1 na vers\xE3o mais recente.",current_version:"Vers\xE3o Atual",download_zip_file:"Baixar arquivo ZIP",unzipping_package:"Descompactando o pacote",copying_files:"Copiando arquivos",running_migrations:"Executando migra\xE7\xF5es",finishing_update:"Atualiza\xE7\xE3o de acabamento",update_failed:"Atualiza\xE7\xE3o falhou",update_failed_text:"Desculpa! Sua atualiza\xE7\xE3o falhou em: {step} step"}},q_={account_info:"Informa\xE7\xE3o da conta",account_info_desc:"Os detalhes abaixo ser\xE3o usados para criar a conta principal do administrador. Al\xE9m disso, voc\xEA pode alterar os detalhes a qualquer momento ap\xF3s o login.",name:"Nome",email:"Email",password:"Senha",confirm_password:"Confirmar Senha",save_cont:"Salvar e Continuar",company_info:"Informa\xE7\xE3o da Empresa",company_info_desc:"Esta informa\xE7\xE3o ser\xE1 exibida nas Faturas. Observe que voc\xEA pode editar isso mais tarde na p\xE1gina de configura\xE7\xF5es.",company_name:"Nome da Empresa",company_logo:"Logotipo da Empresa",logo_preview:"Previsualizar Logotipo",preferences:"Prefer\xEAncias",preferences_desc:"Prefer\xEAncias padr\xE3o para o sistema.",country:"Pais",state:"Estado",city:"Cidade",address:"Endere\xE7o",street:"Rua 1 | Rua 2",phone:"Telefone",zip_code:"CEP",go_back:"Voltar",currency:"Moeda",language:"Idioma",time_zone:"Fuso Hor\xE1rio",fiscal_year:"Ano Financeiro",date_format:"Formato de Data",from_address:"Do Endere\xE7o",username:"Nome de Usu\xE1rio",next:"Pr\xF3ximo",continue:"Continuar",skip:"Pular",database:{database:"URL do Site e Base de Dados",connection:"Conex\xE3o da Base de Dados",host:"Host da Base de Dados",port:"Porta da Base de Dados",password:"Senha da Base de Dados",app_url:"URL do Aplicativo",username:"Usu\xE1rio da Base de Dados",db_name:"Nome da Base de Dados",desc:"Crie um Banco de Dados no seu servidor e defina as credenciais usando o formul\xE1rio abaixo."},permissions:{permissions:"Permiss\xF5es",permission_confirm_title:"Voc\xEA tem certeza que quer continuar?",permission_confirm_desc:"Falha na verifica\xE7\xE3o de permiss\xE3o da pasta",permission_desc:"Abaixo est\xE1 a lista de permiss\xF5es de pasta que s\xE3o necess\xE1rias para que o aplicativo funcione. Se a verifica\xE7\xE3o da permiss\xE3o falhar, atualize as permiss\xF5es da pasta."},mail:{host:"Host do email",port:"Porta do email",driver:"Driver do email",secret:"Segredo",mailgun_secret:"Segredo do Mailgun",mailgun_domain:"Dom\xEDnio",mailgun_endpoint:"Endpoint do Mailgun",ses_secret:"Segredo do SES",ses_key:"Chave SES",password:"Senha do email",username:"Nome do Usu\xE1rio do email",mail_config:"Configura\xE7\xE3o de email",from_name:"Nome do email",from_mail:"Endere\xE7o de email",encryption:"Criptografia de email",mail_config_desc:"Abaixo est\xE1 o formul\xE1rio para configurar o driver de email que ser\xE1 usado para enviar emails do aplicativo. Voc\xEA tamb\xE9m pode configurar provedores de terceiros como Sendgrid, SES etc."},req:{system_req:"Requisitos de Sistema",php_req_version:"PHP (vers\xE3o {version} obrigat\xF3ria)",check_req:"Verificar Requisitos",system_req_desc:"O Crater tem alguns requisitos de servidor. Verifique se o seu servidor possui a vers\xE3o do PHP necess\xE1ria e todas as extens\xF5es mencionadas abaixo."},errors:{migrate_failed:"Falha na migra\xE7\xE3o",database_variables_save_error:"N\xE3o \xE9 poss\xEDvel gravar a configura\xE7\xE3o no arquivo .env. Por favor, verifique suas permiss\xF5es de arquivo",mail_variables_save_error:"A configura\xE7\xE3o do email falhou.",connection_failed:"Falha na conex\xE3o com o banco de dados",database_should_be_empty:"O banco de dados deve estar vazio"},success:{mail_variables_save_successfully:"Email configurado com sucesso",database_variables_save_successfully:"Banco de dados configurado com sucesso."}},Z_={invalid_phone:"N\xFAmero de telefone inv\xE1lido",invalid_url:"url inv\xE1lidas (ex: http://www.craterapp.com)",required:"Campo obrigat\xF3rio",email_incorrect:"E-mail incorreto",email_already_taken:"O email j\xE1 foi recebido.",email_does_not_exist:"O usu\xE1rio com determinado email n\xE3o existe",send_reset_link:"Enviar link de redefini\xE7\xE3o",not_yet:"Ainda n\xE3o? Envie novamente",password_min_length:"A senha deve conter {count} caracteres",name_min_length:"O nome deve ter pelo menos {count} letras.",enter_valid_tax_rate:"Insira uma taxa de imposto v\xE1lida",numbers_only:"Apenas N\xFAmeros.",characters_only:"Apenas Caracteres.",password_incorrect:"As senhas devem ser id\xEAnticas",password_length:"A senha deve ter {count} caracteres.",qty_must_greater_than_zero:"A quantidade deve ser maior que zero.",price_greater_than_zero:"O pre\xE7o deve ser maior que zero.",payment_greater_than_zero:"O pagamento deve ser maior que zero.",payment_greater_than_due_amount:"O pagamento inserido \xE9 mais do que o valor devido desta fatura.",quantity_maxlength:"A quantidade n\xE3o deve exceder 20 d\xEDgitos.",price_maxlength:"O pre\xE7o n\xE3o deve ser superior a 20 d\xEDgitos.",price_minvalue:"O pre\xE7o deve ser maior que 0.",amount_maxlength:"Montante n\xE3o deve ser superior a 20 d\xEDgitos.",amount_minvalue:"Montante deve ser maior que zero",description_maxlength:"A descri\xE7\xE3o n\xE3o deve ter mais que 255 caracteres.",maximum_options_error:"M\xE1ximo de {max} op\xE7\xF5es selecionadas. Primeiro remova uma op\xE7\xE3o selecionada para selecionar outra.",notes_maxlength:"As anota\xE7\xF5es n\xE3o devem ter mais que 255 caracteres.",address_maxlength:"O endere\xE7o n\xE3o deve ter mais que 255 caracteres.",ref_number_maxlength:"O n\xFAmero de refer\xEAncia n\xE3o deve ter mais que 255 caracteres.",prefix_maxlength:"O prefixo n\xE3o deve ter mais que 5 caracteres."};var W_={navigation:N_,general:T_,dashboard:I_,tax_types:$_,customers:R_,items:F_,estimates:M_,invoices:V_,payments:B_,expenses:O_,login:L_,reports:U_,settings:K_,wizard:q_,validation:Z_};const H_={dashboard:"Dashboard",customers:"Clienti",items:"Commesse",invoices:"Fatture",expenses:"Spese",estimates:"Preventivi",payments:"Pagamenti",reports:"Reports",settings:"Configurazione",logout:"Logout",users:"Users"},G_={add_company:"Add Company",view_pdf:"Vedi PDF",copy_pdf_url:"Copy PDF Url",download_pdf:"Scarica PDF",save:"Salva",create:"Create",cancel:"Elimina",update:"Aggiorna",deselect:"Deseleziona",download:"Download",from_date:"Dalla Data",to_date:"Alla Data",from:"Da",to:"A",sort_by:"Ordina per",ascending:"Crescente",descending:"Decrescente",subject:"Oggetto",body:"Corpo",message:"Messaggio",send:"Send",go_back:"Torna indietro",back_to_login:"Torna al Login?",home:"Home",filter:"Filtro",delete:"Elimina",edit:"Modifica",view:"Visualizza",add_new_item:"Aggiungi nuova Commessa",clear_all:"Pulisci tutto",showing:"Showing",of:"di",actions:"Azioni",subtotal:"SUBTOTALE",discount:"SCONTO",fixed:"Fissato",percentage:"Percentuale",tax:"TASSA",total_amount:"AMMONTARE TOTALE",bill_to:"Fattura a",ship_to:"Invia a",due:"Dovuto",draft:"Bozza",sent:"Inviata",all:"Tutte",select_all:"Seleziona tutto",choose_file:"Clicca per selezionare un file",choose_template:"Scegli un modello",choose:"Scegli",remove:"Rimuovi",powered_by:"Prodotto da",bytefury:"Bytefury",select_a_status:"Seleziona uno Stato",select_a_tax:"Seleziona una Tassa",search:"Cerca",are_you_sure:"Sei sicuro/a?",list_is_empty:"La lista \xE8 vuota.",no_tax_found:"Nessuna Tassa trovata!",four_zero_four:"404",you_got_lost:"Hoops! Ti sei perso",go_home:"Vai alla Home",test_mail_conf:"Configurazione della mail di test",send_mail_successfully:"Mail inviata con successo",setting_updated:"Configurazioni aggiornate con successo",select_state:"Seleziona lo Stato",select_country:"Seleziona Paese",select_city:"Seleziona Citt\xE0",street_1:"Indirizzo 1",street_2:"Indirizzo 2",action_failed:"Errore",retry:"Retry",choose_note:"Choose Note",no_note_found:"No Note Found",insert_note:"Insert Note"},Y_={select_year:"Seleziona anno",cards:{due_amount:"Somma dovuta",customers:"Clienti",invoices:"Fatture",estimates:"Preventivi"},chart_info:{total_sales:"Vendite",total_receipts:"Ricevute",total_expense:"Uscite",net_income:"Guadagno netto",year:"Seleziona anno"},monthly_chart:{title:"Entrate & Uscite"},recent_invoices_card:{title:"Fatture insolute",due_on:"Data di scadenza",customer:"Cliente",amount_due:"Ammontare dovuto",actions:"Azioni",view_all:"Vedi tutto"},recent_estimate_card:{title:"Preventivi recenti",date:"Data",customer:"Cliente",amount_due:"Ammontare dovuto",actions:"Azioni",view_all:"Vedi tutto"}},J_={name:"Nome",description:"Descrizione",percent:"Percento",compound_tax:"Tassa composta"},X_={search:"Search...",customers:"Clienti",users:"Users",no_results_found:"No Results Found"},Q_={title:"Clienti",add_customer:"Aggiungi cliente",contacts_list:"Lista clienti",name:"Nome",mail:"Mail | Mails",statement:"Statement",display_name:"Mostra nome",primary_contact_name:"Riferimento",contact_name:"Nome Contatto",amount_due:"Ammontare dovuto",email:"Email",address:"Indirizzo",phone:"Telefono",website:"Sito web",overview:"Overview",enable_portal:"Enable Portal",country:"Paese",state:"Stato",city:"Citt\xE0",zip_code:"Codice Postale",added_on:"Aggiunto il",action:"Azione",password:"Password",street_number:"Numero Civico",primary_currency:"Val\xF9ta Principale",description:"Descrizione",add_new_customer:"Aggiungi nuovo Cliente",save_customer:"Salva Cliente",update_customer:"Aggiorna Cliente",customer:"Cliente | Clienti",new_customer:"Nuovo cliente",edit_customer:"Modifica Cliente",basic_info:"Informazioni",billing_address:"Indirizzo di Fatturazione",shipping_address:"Indirizzo di Spedizione",copy_billing_address:"Copia da Fatturazione",no_customers:"Ancora nessun Cliente!",no_customers_found:"Nessun cliente trovato!",no_contact:"No contact",no_contact_name:"No contact name",list_of_customers:"Qui ci sar\xE0 la lista dei tuoi clienti",primary_display_name:"Mostra il Nome Principale",select_currency:"Selezione Val\xF9ta",select_a_customer:"Seleziona Cliente",type_or_click:"Scrivi o clicca per selezionare",new_transaction:"Nuova transazione",no_matching_customers:"Non ci sono clienti corrispondenti!",phone_number:"Numero di telefono",create_date:"Crea data",confirm_delete:"Non sarai in grado di recuperare questo cliente e tutte le relative fatture, stime e pagamenti. | Non sarai in grado di recuperare questi clienti e tutte le relative fatture, stime e pagamenti.",created_message:"Cliente creato con successo",updated_message:"Cliente aggiornato con successo",deleted_message:"Cliente cancellato con successo | Clienti cancellati con successo"},eu={title:"Commesse",items_list:"Lista Commesse",name:"Nome",unit:"Unit\xE0/Tipo",description:"Descrizione",added_on:"Aggiunto il",price:"Prezzo",date_of_creation:"Data di creazione",not_selected:"No item selected",action:"Azione",add_item:"Aggiungi Commessa",save_item:"Salva",update_item:"Aggiorna",item:"Commessa | Commesse",add_new_item:"Aggiungi nuova Commessa",new_item:"Nuova Commessa",edit_item:"Modifica Commessa",no_items:"Ancora nessuna commessa!",list_of_items:"Qui ci sar\xE0 la lista delle commesse.",select_a_unit:"Seleziona",taxes:"Imposte",item_attached_message:"Non puoi eliminare una Commessa che \xE8 gi\xE0 attiva",confirm_delete:"Non potrai ripristinare la Commessa | Non potrai ripristinare le Commesse",created_message:"Commessa creata con successo",updated_message:"Commessa aggiornata con successo",deleted_message:"Commessa eliminata con successo | Commesse eliminate con successo"},tu={title:"Preventivi",estimate:"Preventivo | Preventivi",estimates_list:"Lista Preventivi",days:"{days} Giorni",months:"{months} Mese",years:"{years} Anno",all:"Tutti",paid:"Pagato",unpaid:"Non pagato",customer:"CLIENTE",ref_no:"RIF N.",number:"NUMERO",amount_due:"AMMONTARE DOVUTO",partially_paid:"Pagamento Parziale",total:"Totale",discount:"Sconto",sub_total:"Sub Totale",estimate_number:"Preventivo Numero",ref_number:"Numero di Rif.",contact:"Contatto",add_item:"Aggiungi un item",date:"Data",due_date:"Data di pagamento",expiry_date:"Data di scadenza",status:"Stato",add_tax:"Aggiungi Imposta",amount:"Ammontare",action:"Azione",notes:"Note",tax:"Imposta",estimate_template:"Modello",convert_to_invoice:"Converti in Fattura",mark_as_sent:"Segna come Inviata",send_estimate:"Invia preventivo",resend_estimate:"Resend Estimate",record_payment:"Registra Pagamento",add_estimate:"Aggiungi Preventivo",save_estimate:"Salva Preventivo",confirm_conversion:"Questo preventivo verr\xE0 usato per generare una nuova fattura.",conversion_message:"Fattura creata",confirm_send_estimate:"Questo preventivo verr\xE0 inviato al cliente via mail",confirm_mark_as_sent:"Questo preventivo verr\xE0 contrassegnato come inviato",confirm_mark_as_accepted:"Questo preventivo verr\xE0 contrassegnato come Accettato",confirm_mark_as_rejected:"Questo preventivo verr\xE0 contrassegnato come Rifiutato",no_matching_estimates:"Nessun preventivo trovato!",mark_as_sent_successfully:"Preventivo contrassegnato come inviato con successo",send_estimate_successfully:"Preventivo inviato con successo",errors:{required:"Campo obbligatorio"},accepted:"Accettato",rejected:"Rejected",sent:"Inviato",draft:"Bozza",declined:"Rifiutato",new_estimate:"Nuovo Preventivo",add_new_estimate:"Crea Nuovo Preventivo",update_Estimate:"Aggiorna preventivo",edit_estimate:"Modifica Preventivo",items:"Commesse",Estimate:"Preventivo | Preventivi",add_new_tax:"Aggiungi una nuova tassa/imposta",no_estimates:"Ancora nessun preventivo!",list_of_estimates:"Questa sezione conterr\xE0 la lista dei preventivi.",mark_as_rejected:"Segna come Rifiutato",mark_as_accepted:"Segna come Accettato",marked_as_accepted_message:"Preventivo contrassegnato come accettato",marked_as_rejected_message:"Preventivo contrassegnato come rifiutato",confirm_delete:"Non potrai pi\xF9 recuperare questo preventivo | Non potrai pi\xF9 recuperare questi preventivi",created_message:"Preventivo creato con successo",updated_message:"Preventivo modificato con successo",deleted_message:"Preventivo eliminato con successo | Preventivi eliminati con successo",something_went_wrong:"Si \xE8 verificato un errore",item:{title:"Titolo Commessa",description:"Descrizione",quantity:"Quantit\xE0",price:"Prezzo",discount:"Sconto",total:"Totale",total_discount:"Sconto Totale",sub_total:"Sub Totale",tax:"Tasse",amount:"Ammontare",select_an_item:"Scrivi o clicca per selezionare un item",type_item_description:"Scrivi una Descrizione (opzionale)"}},au={title:"Fatture",invoices_list:"Lista Fatture",days:"{days} Giorni",months:"{months} Mese",years:"{years} Anno",all:"Tutti",paid:"Pagato",unpaid:"Insoluto",viewed:"Viewed",overdue:"Overdue",completed:"Completed",customer:"CLIENTE",paid_status:"STATO DI PAGAMENTO",ref_no:"RIF N.",number:"NUMERO",amount_due:"AMMONTARE DOVUTO",partially_paid:"Parzialmente Pagata",total:"Totale",discount:"Sconto",sub_total:"Sub Totale",invoice:"Fattura | Fatture",invoice_number:"Numero Fattura",ref_number:"Rif Numero",contact:"Contatto",add_item:"Aggiungi Commessa/Item",date:"Data",due_date:"Data di pagamento",status:"Stato",add_tax:"Aggiungi Imposta",amount:"Ammontare",action:"Azione",notes:"Note",view:"Vedi",send_invoice:"Invia Fattura",resend_invoice:"Resend Invoice",invoice_template:"Modello Fattura",template:"Modello",mark_as_sent:"Segna come inviata",confirm_send_invoice:"Questa fattura sar\xE0 inviata via Mail al Cliente",invoice_mark_as_sent:"Questa fattura sar\xE0 contrassegnata come inviata",confirm_send:"Questa fattura sar\xE0 inviata via Mail al Cliente",invoice_date:"Data fattura",record_payment:"Registra Pagamento",add_new_invoice:"Aggiungi nuova Fattura",update_expense:"Aggiorna Costo",edit_invoice:"Modifica Fattura",new_invoice:"Nuova Fattura",save_invoice:"Salva fattura",update_invoice:"Aggiorna Fattura",add_new_tax:"Aggiungi tassa/imposta",no_invoices:"Ancora nessuna fattura!",list_of_invoices:"Questa sezione conterr\xE0 la lista delle Fatture.",select_invoice:"Seleziona Fattura",no_matching_invoices:"Nessuna fattura trovata!",mark_as_sent_successfully:"Fattura contassegnata come inviata con successo",invoice_sent_successfully:"Fattura inviata con successo",cloned_successfully:"Fattura copiata con successo",clone_invoice:"Clona Fattura",confirm_clone:"Questa fattura verr\xE0 clonata in una nuova fattura",item:{title:"Titolo Commessa",description:"Descrizione",quantity:"Quantit\xE0",price:"Prezzo",discount:"Sconto",total:"Totale",total_discount:"Sconto Totale",sub_total:"Sub Totale",tax:"Tassa",amount:"Ammontare",select_an_item:"Scrivi o clicca per selezionare un item",type_item_description:"Scrivi una descrizione (opzionale)"},confirm_delete:"Non potrai recuperare la Fattura cancellata | Non potrai recuperare le Fatture cancellate",created_message:"Fattura creata con successo",updated_message:"Fattura aggiornata con successo",deleted_message:"Fattura cancellata con successo | Fatture cancellate con successo",marked_as_sent_message:"Fattura contrassegnata come inviata con successo",something_went_wrong:"Si \xE8 verificato un errore",invalid_due_amount_message:"L'ammontare totale della fattura non pu\xF2 essere inferiore all'ammontare totale pagato per questa fattura. Modifica la fattura o cancella i pagamenti associati per continuare."},su={title:"Pagamenti",payments_list:"Lista Pagamenti",record_payment:"Registra Pagamento",customer:"Cliente",date:"Data",amount:"Ammontare",action:"Azione",payment_number:"Numero di pagamento",payment_mode:"Modalit\xE0 di Pagamento",invoice:"Fattura",note:"Nota",add_payment:"Aggiungi Pagamento",new_payment:"Nuovo Pagamento",edit_payment:"Modifica Pagamento",view_payment:"Vedi Pagamento",add_new_payment:"Aggiungi nuovo pagamento",send_payment_receipt:"Invia ricevuta di pagamento",send_payment:"Inviare il pagamento",save_payment:"Salva pagamento",update_payment:"Aggiorna pagamento",payment:"Pagamento | Pagamenti",no_payments:"Ancora nessun pagamento!",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"Non ci sono pagamenti!",list_of_payments:"Questa sezione conterr\xE0 la lista dei pagamenti.",select_payment_mode:"Seleziona modalit\xE0 di pagamento",confirm_mark_as_sent:"Questo preventivo verr\xE0 contrassegnato come inviato",confirm_send_payment:"Questo pagamento verr\xE0 inviato via email al cliente",send_payment_successfully:"Pagamento inviato con successo",something_went_wrong:"si \xE8 verificato un errore",confirm_delete:"Non potrai recuperare questo pagamento | Non potrai recuperare questi pagamenti",created_message:"Pagamento creato con successo",updated_message:"Pagamento aggiornato con successo",deleted_message:"Pagamento cancellato con successo | Pagamenti cancellati con successo",invalid_amount_message:"L'ammontare del pagamento non \xE8 valido"},nu={title:"Spese",expenses_list:"Lista Costi",select_a_customer:"Seleziona Cliente",expense_title:"Titolo",customer:"Cliente",contact:"Contatto",category:"Categoria",from_date:"Dalla Data",to_date:"Alla Data",expense_date:"Data",description:"Descrizione",receipt:"Ricevuta",amount:"Ammontare",action:"Azione",not_selected:"Not selected",note:"Nota",category_id:"Id categoria",date:"Data Spesa",add_expense:"Aggiungi Spesa",add_new_expense:"Aggiungi nuova Spesa",save_expense:"Salva la Spesa",update_expense:"Aggiorna Spesa",download_receipt:"Scarica la Ricevuta",edit_expense:"Modifica Spesa",new_expense:"Nuova Spesa",expense:"Spesa | Spese",no_expenses:"Ancora nessuna spesa!",list_of_expenses:"Questa sezione conterr\xE0 la lista delle Spese.",confirm_delete:"Non potrai recuperare questa spesa | Non potrai recuperare queste spese",created_message:"Spesa creata con successo",updated_message:"Spesa modificata con successo",deleted_message:"Spesa cancellata con successo | Spese cancellate con successo",categories:{categories_list:"Lista categorie",title:"Titolo",name:"Nome",description:"Descrizione",amount:"Ammontare",actions:"Azioni",add_category:"Aggiungi Categoria",new_category:"Nuova Categoria",category:"Categoria | Categorie",select_a_category:"Seleziona Categoria"}},iu={email:"Email",password:"Password",forgot_password:"Password dimenticata?",or_signIn_with:"o fai login con",login:"Login",register:"Registrati",reset_password:"Resetta Password",password_reset_successfully:"Password Resettata con successo",enter_email:"Inserisci email",enter_password:"Inserisci Password",retype_password:"Ridigita Password"},ou={title:"Users",users_list:"Users List",name:"Nome",description:"Descrizione",added_on:"Aggiunto il",date_of_creation:"Data di creazione",action:"Azione",add_user:"Add User",save_user:"Save User",update_user:"Update User",user:"User | Users",add_new_user:"Add New User",new_user:"New User",edit_user:"Edit User",no_users:"No users yet!",list_of_users:"This section will contain the list of users.",email:"Email",phone:"Telefono",password:"Password",user_attached_message:"Non puoi eliminare una Commessa che \xE8 gi\xE0 attiva",confirm_delete:"You will not be able to recover this User | You will not be able to recover these Users",created_message:"User created successfully",updated_message:"User updated successfully",deleted_message:"User deleted successfully | User deleted successfully"},ru={title:"Report",from_date:"Da",to_date:"A",status:"Stato",paid:"Pagato",unpaid:"Non pagato",download_pdf:"Scarica PDF",view_pdf:"Vedi PDF",update_report:"Aggiorna Report",report:"Report | Reports",profit_loss:{profit_loss:"Guadagni & Perdite",to_date:"A",from_date:"Da",date_range:"Seleziona intervallo date"},sales:{sales:"Vendite",date_range:"Seleziona intervallo date",to_date:"A",from_date:"Da",report_type:"Tipo di report"},taxes:{taxes:"Tasse",to_date:"Alla data",from_date:"Dalla data",date_range:"Seleziona intervallo date"},errors:{required:"Campo obbligatorio"},invoices:{invoice:"Fattura",invoice_date:"Data fattura",due_date:"Data di pagamento",amount:"Ammontare",contact_name:"Nome contatto",status:"Stato"},estimates:{estimate:"Preventivo",estimate_date:"Data preventivo",due_date:"Data di pagamento",estimate_number:"Numero di preventivo",ref_number:"Numero di Rif.",amount:"Ammontare",contact_name:"Nome contatto",status:"Stato"},expenses:{expenses:"Spese",category:"Categoria",date:"Data",amount:"Ammontare",to_date:"Alla data",from_date:"Dalla data",date_range:"Seleziona intervallo date"}},du={menu_title:{account_settings:"Impostazioni Account",company_information:"Informazioni Azienda",customization:"Personalizzazione",preferences:"Opzioni",notifications:"Notifiche",tax_types:"Tupi di Tasse",expense_category:"Categorie di spesa",update_app:"Aggiorna App",backup:"Backup",file_disk:"File Disk",custom_fields:"Campi personalizzati",payment_modes:"Payment Modes",notes:"Note"},title:"Impostazioni",setting:"Opzione | Impostazioni",general:"Generale",language:"Lingua",primary_currency:"Valuta Principale",timezone:"Time Zone",date_format:"Formato data",currencies:{title:"Valute",currency:"Val\xF9ta | Valute",currencies_list:"Lista valute",select_currency:"Seleziona Val\xF9ta",name:"Nome",code:"Codice",symbol:"Simbolo",precision:"Precisione",thousand_separator:"Separatore migliaia",decimal_separator:"Separatore decimali",position:"Posizione",position_of_symbol:"Posizione del Simbolo",right:"Destra",left:"Sinistra",action:"Azione",add_currency:"Aggiungi Val\xF9ta"},mail:{host:"Mail Host",port:"Mail - Porta",driver:"Mail Driver",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"Mail Password",username:"Mail Username",mail_config:"Configurazione Mail",from_name:"Nome Mittente Mail",from_mail:"Indirizzo Mittente Mail",encryption:"Tipo di cifratura Mail",mail_config_desc:"Form per Configurazione Driver Mail per invio mail dall'App. Puoi anche configurare providers di terze parti come Sendgrid, SES, etc.."},pdf:{title:"Configurazione PDF",footer_text:"Testo Footer",pdf_layout:"Layout PDF"},company_info:{company_info:"Info azienda",company_name:"Nome azienda",company_logo:"Logo azienda",section_description:"Informazioni sulla tua azienda che saranno mostrate in fattura, preventivi ed altri documenti creati dell'applicazione.",phone:"Telefono",country:"Paese",state:"Stato",city:"Citt\xE0",address:"Indirizzo",zip:"CAP",save:"Salva",updated_message:"Informazioni Azienda aggiornate con successo."},custom_fields:{title:"Campi personalizzati",section_description:"Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.",add_custom_field:"Aggiungi campo personalizzato",edit_custom_field:"Modifica campo personalizzato",field_name:"Nome campo",label:"Etichetta",type:"genere",name:"Nome",required:"Necessaria",placeholder:"segnaposto",help_text:"Testo guida",default_value:"Valore predefinito",prefix:"Prefisso",starting_number:"Numero iniziale",model:"Modella",help_text_description:"Inserisci del testo per aiutare gli utenti a comprendere lo scopo di questo campo personalizzato.",suffix:"Suffisso",yes:"s\xEC",no:"No",order:"Ordine",custom_field_confirm_delete:"Non sarai in grado di recuperare questo campo personalizzato",already_in_use:"Il campo personalizzato \xE8 gi\xE0 in uso",deleted_message:"Campo personalizzato eliminato correttamente",options:"opzioni",add_option:"Aggiungi opzioni",add_another_option:"Aggiungi un'altra opzione",sort_in_alphabetical_order:"Ordina in ordine alfabetico",add_options_in_bulk:"Aggiungi opzioni in blocco",use_predefined_options:"Usa opzioni predefinite",select_custom_date:"Seleziona la data personalizzata",select_relative_date:"Seleziona la data relativa",ticked_by_default:"Contrassegnato per impostazione predefinita",updated_message:"Campo personalizzato aggiornato correttamente",added_message:"Campo personalizzato aggiunto correttamente"},customization:{customization:"personalizzazione",save:"Salva",addresses:{title:"Indirizzi",section_description:"Puoi settare l'indirizzo di fatturazione del Cliente e/o il formato dell'indirizzo di spedizione (Mostrato solo sul PDF). ",customer_billing_address:"Indirizzo Fatturazione Cliente",customer_shipping_address:"Indirizzo spedizione Cliente",company_address:"Indirizzo Azienda",insert_fields:"Inserisci Campi",contact:"Contatto",address:"Indirizzo",display_name:"Mostra nome",primary_contact_name:"Nome contatto primario",email:"Email",website:"Sito web",name:"Nome",country:"Paese",state:"Stato",city:"Citt\xE0",company_name:"Nome Azienda",address_street_1:"Indirizzo 1",address_street_2:"Indirizzo 2",phone:"Telefono",zip_code:"CAP/ZIP Code",address_setting_updated:"Indirizzo aggiornato con Successo"},updated_message:"Info azienda aggiornate con successo",invoices:{title:"Fatture",notes:"Note",invoice_prefix:"Prefisso Fattura",default_invoice_email_body:"Default Invoice Email Body",invoice_settings:"Impostazioni fattura",autogenerate_invoice_number:"Auto genera numero di fattura",autogenerate_invoice_number_desc:"Disabilita, se non vuoi auto-generare i numeri delle fatture ogni volta che crei una nuova fattura.",enter_invoice_prefix:"Inserisci prefisso fattura",terms_and_conditions:"Termini e Condizioni",company_address_format:"Company Address Format",shipping_address_format:"Shipping Address Format",billing_address_format:"Billing Address Format",invoice_settings_updated:"Impostazioni fatture aggiornate con successo"},estimates:{title:"Preventivi",estimate_prefix:"Prefisso Preventivi",default_estimate_email_body:"Default Estimate Email Body",estimate_settings:"Impostazioni Preventivi",autogenerate_estimate_number:"Auto-genera Numero di preventivo",estimate_setting_description:"Disabilita, se non vuoi autogenerare il numero di preventivo ogni volta che ne viene creato uno nuovo.",enter_estimate_prefix:"Inserisci prefisso preventivo",estimate_setting_updated:"Impostazioni preventivi aggiornate con successo",company_address_format:"Company Address Format",billing_address_format:"Billing Address Format",shipping_address_format:"Shipping Address Format"},payments:{title:"Pagamenti",description:"Modes of transaction for payments",payment_prefix:"Prefisso Pagamento",default_payment_email_body:"Default Payment Email Body",payment_settings:"Impostazioni Pagamento",autogenerate_payment_number:"Auto genera il numero di Pagamento",payment_setting_description:"Disabilita, se non vuoi autogenerare il numero di pagamento ogni volta che ne viene creato uno nuovo.",enter_payment_prefix:"Inserisci prefisso di pagamento",payment_setting_updated:"Impostazioni di pagamento aggiornate con successo",payment_modes:"Payment Modes",add_payment_mode:"Aggiungi modalit\xE0 di pagamento",edit_payment_mode:"Modifica modalit\xE0 di pagamento",mode_name:"Nome modalit\xE0",payment_mode_added:"Modalit\xE0 di pagamento aggiunta",payment_mode_updated:"Modalit\xE0 di pagamento aggiornata",payment_mode_confirm_delete:"Non potrai ripristinare la modalit\xE0 di pagamento",already_in_use:"Modalit\xE0 di pagamento gi\xE0 in uso",deleted_message:"Payment Mode deleted successfully",company_address_format:"Company Address Format",from_customer_address_format:"From Customer Address Format"},items:{title:"Commesse",units:"unit\xE0",add_item_unit:"Aggiungi Unit\xE0 Item",edit_item_unit:"Modifica unit\xE0 articolo",unit_name:"Nome",item_unit_added:"Unit\xE0 aggiunta",item_unit_updated:"Unit\xE0 aggiornata",item_unit_confirm_delete:"Non potrai ripristinare questa unit\xE0 Item",already_in_use:"Unit\xE0 Item gi\xE0 in uso",deleted_message:"Unit\xE0 item eliminata con successo"},notes:{title:"Note",description:"Save time by creating notes and reusing them on your invoices, estimates & payments.",notes:"Note",type:"genere",add_note:"Add Note",add_new_note:"Add New Note",name:"Nome",edit_note:"Edit Note",note_added:"Note added successfully",note_updated:"Note Updated successfully",note_confirm_delete:"You will not be able to recover this Note",already_in_use:"Note is already in use",deleted_message:"Note deleted successfully"}},account_settings:{profile_picture:"Immagine profilo",name:"Nome",email:"Email",password:"Password",confirm_password:"Conferma Password",account_settings:"Impostazioni Account",save:"Salva",section_description:"Puoi aggiornare nome email e password utilizzando il form qui sotto.",updated_message:"Impostazioni account aggiornate con successo"},user_profile:{name:"Nome",email:"Email",password:"Password",confirm_password:"Conferma Password"},notification:{title:"Notifica",email:"Invia notifiche a",description:"Quali notifiche email vorresti ricevere quando qualcosa cambia?",invoice_viewed:"Fattura visualizzata",invoice_viewed_desc:"Quando il cliente visualizza la fattura inviata via dashboard applicazione.",estimate_viewed:"Preventivo visualizzato",estimate_viewed_desc:"Quando il cliente visualizza il preventivo inviato dall'applicazione.",save:"Salva",email_save_message:"Email salvata con successo",please_enter_email:"Inserisci Email"},tax_types:{title:"Tipi di Imposta",add_tax:"Aggiungi Imposta",edit_tax:"Modifica imposta",description:"Puoi aggiongere e rimuovere imposte a piacimento. Vengono supportate Tasse differenti per prodotti/servizi specifici esattamento come per le fatture.",add_new_tax:"Aggiungi nuova imposta",tax_settings:"Impostazioni Imposte",tax_per_item:"Tassa per prodotto/servizio",tax_name:"Nome imposta",compound_tax:"Imposta composta",percent:"Percento",action:"Azione",tax_setting_description:"Abilita se vuoi aggiungere imposte specifiche per prodotti o servizi. Di default le imposte sono aggiunte direttamente alla fattura.",created_message:"Tipo di imposta creato con successo",updated_message:"Tipo di imposta aggiornato con successo",deleted_message:"Tipo di imposta eliminato con successo",confirm_delete:"Non potrai ripristinare questo tipo di imposta",already_in_use:"Imposta gi\xE0 in uso"},expense_category:{title:"Categorie di spesa",action:"Azione",description:"Le categorie sono necessarie per aggiungere delle voci di spesa. Puoi aggiungere o eliminare queste categorie in base alle tue preferenze.",add_new_category:"Aggiungi nuova categoria",add_category:"Aggiungi categoria",edit_category:"Modifica categoria",category_name:"Nome Categoria",category_description:"Descrizione",created_message:"Categoria di spesa creata con successo",deleted_message:"Categoria di spesa eliminata con successo",updated_message:"Categoria di spesa aggiornata con successo",confirm_delete:"Non potrai ripristinare questa categoria di spesa",already_in_use:"Categoria gi\xE0 in uso"},preferences:{currency:"Val\xF9ta",default_language:"Default Language",time_zone:"Time Zone",fiscal_year:"Anno finanziario",date_format:"Formato Data",discount_setting:"Impostazione Sconto",discount_per_item:"Sconto Per Item ",discount_setting_description:"Abilita se vuoi aggiungere uno sconto ad uno specifica fattura. Di default, lo sconto \xE8 aggiunto direttamente in fattura.",save:"Salva",preference:"Preferenza | Preferenze",general_settings:"Impostazioni di default del sistema.",updated_message:"Preferenze aggiornate con successo",select_language:"seleziona lingua",select_time_zone:"Seleziona Time Zone",select_date_format:"Select Date Format",select_financial_year:"Seleziona anno finanziario"},update_app:{title:"Aggiorna App",description:"Puoi facilmente aggiornare l'app. Aggiorna cliccando sul bottone qui sotto",check_update:"Controllo aggiornamenti",avail_update:"Aggiornamento disponibile",next_version:"Versione successiva",requirements:"Requirements",update:"Aggiorna ora",update_progress:"Aggiornamento in corso...",progress_text:"Sar\xE0 necessario qualche minuto. Per favore non aggiornare la pagina e non chiudere la finestra prima che l'aggiornamento sia completato",update_success:"L'App \xE8 aggiornata! Attendi che la pagina venga ricaricata automaticamente.",latest_message:"Nessun aggiornamneto disponibile! Sei gi\xE0 alla versione pi\xF9 recente.",current_version:"Versione corrente",download_zip_file:"Scarica il file ZIP",unzipping_package:"Pacchetto di decompressione",copying_files:"Copia dei file",running_migrations:"Esecuzione delle migrazioni",finishing_update:"Aggiornamento di finitura",update_failed:"Aggiornamento non riuscito",update_failed_text:"Scusate! L'aggiornamento non \xE8 riuscito il: passaggio {step}"},backup:{title:"Backup | Backups",description:"The backup is a zipfile that contains all files in the directories you specify along with a dump of your database",new_backup:"Add New Backup",create_backup:"Create Backup",select_backup_type:"Select Backup Type",backup_confirm_delete:"You will not be able to recover this Backup",path:"path",new_disk:"New Disk",created_at:"created at",size:"size",dropbox:"dropbox",local:"local",healthy:"healthy",amount_of_backups:"amount of backups",newest_backups:"newest backups",used_storage:"used storage",select_disk:"Select Disk",action:"Azione",deleted_message:"Backup deleted successfully",created_message:"Backup created successfully",invalid_disk_credentials:"Invalid credential of selected disk"},disk:{title:"File Disk | File Disks",description:"By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.",created_at:"created at",dropbox:"dropbox",name:"Nome",driver:"Driver",disk_type:"genere",disk_name:"Disk Name",new_disk:"Add New Disk",filesystem_driver:"Filesystem Driver",local_driver:"local Driver",local_root:"local Root",public_driver:"Public Driver",public_root:"Public Root",public_url:"Public URL",public_visibility:"Public Visibility",media_driver:"Media Driver",media_root:"Media Root",aws_driver:"AWS Driver",aws_key:"AWS Key",aws_secret:"AWS Secret",aws_region:"AWS Region",aws_bucket:"AWS Bucket",aws_root:"AWS Root",do_spaces_type:"Do Spaces type",do_spaces_key:"Do Spaces key",do_spaces_secret:"Do Spaces Secret",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Dropbox Type",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Key",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Default Driver",is_default:"IS DEFAULT",set_default_disk:"Set Default Disk",success_set_default_disk:"Disk set as default successfully",save_pdf_to_disk:"Save PDFs to Disk",disk_setting_description:" Enable this, if you wish to save a copy of each Invoice, Estimate & Payment Receipt PDF on your default disk automatically. Turning this option will decrease the load-time when viewing the PDFs.",select_disk:"Select Disk",disk_settings:"Disk Settings",confirm_delete:"Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater",action:"Azione",edit_file_disk:"Edit File Disk",success_create:"Disk added successfully",success_update:"Disk updated successfully",error:"Disk addition failed",deleted_message:"File Disk deleted successfully",disk_variables_save_successfully:"Disk Configured Successfully",disk_variables_save_error:"Disk configuration failed.",invalid_disk_credentials:"Invalid credential of selected disk"}},lu={account_info:"Informazioni Account",account_info_desc:"I dettagli qui sotto verranno usati per creare l'account principale dell'Amministratore. Puoi modificarli in qualsiasi momento dopo esserti loggato come Amministratore.",name:"Nome",email:"Email",password:"Password",confirm_password:"Conferma Password",save_cont:"Salva & Continua",company_info:"Informazioni Azienda",company_info_desc:"Questa informazione verr\xE0 mostrata nelle fatture. Puoi modificare queste informazione in un momento successivo dalla pagina delle impostazioni.",company_name:"Nome Azienda",company_logo:"Logo Azienda",logo_preview:"Anteprima Logo",preferences:"Impostazioni",preferences_desc:"Impostazioni di default del sistema.",country:"Paese",state:"Stato",city:"Citt\xE0",address:"Indirizzo",street:"Indirizzo1 | Indirizzo2",phone:"Telefono",zip_code:"CAP/Zip Code",go_back:"Torna indietro",currency:"Val\xF9ta",language:"Lingua",time_zone:"Time Zone",fiscal_year:"Anno Finanziario",date_format:"Formato Date",from_address:"Indirizzo - Da",username:"Username",next:"Successivo",continue:"Continua",skip:"Salta",database:{database:"URL del sito & database",connection:"Connessione Database",host:"Database Host",port:"Database - Porta",password:"Database Password",app_url:"App URL",app_domain:"App Domain",username:"Database Username",db_name:"Database Nome",db_path:"Database Path",desc:"Crea un database sul tuo server e setta le credenziali usando il form qui sotto."},permissions:{permissions:"Permessi",permission_confirm_title:"Sei sicuro di voler continuare?",permission_confirm_desc:"Controllo sui permessi Cartelle, fallito",permission_desc:"Qui sotto la lista dei permessi richiesti per far funzionare correttamente l'App. Se il controllo dei permessi fallisce, assicurati di aggiornare/modificare i permessi sulle cartelle."},mail:{host:"Mail Host",port:"Mail - Porta",driver:"Mail Driver",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"Mail Password",username:"Mail Username",mail_config:"Configurazione Mail",from_name:"Nome mittente mail",from_mail:"Indirizzo mittente mail",encryption:"Tipo di cifratura Mail",mail_config_desc:"Form per configurazione del 'driver mail' per inviare emails dall'App. Puoi anche configurare servizi di terze parti come Sendgrid, SES, ecc.."},req:{system_req:"Requisiti di Sistema",php_req_version:"Php (versione {version} richiesta)",check_req:"Controllo Requisiti",system_req_desc:"Crater ha alcuni requisiti di sistema. Assicurati che il server ha la versione di php richiesta e tutte le estensioni necessarie."},errors:{migrate_failed:"Migrate Failed",database_variables_save_error:"Cannot write configuration to .env file. Please check its file permissions",mail_variables_save_error:"Email configuration failed.",connection_failed:"Database connection failed",database_should_be_empty:"Database should be empty"},success:{mail_variables_save_successfully:"Email configurata con successo",database_variables_save_successfully:"Database configurato con successo."}},cu={invalid_phone:"Numero di telefono invalido",invalid_url:"URL non valido (es: http://www.craterapp.com)",invalid_domain_url:"URL non valido (es: craterapp.com)",required:"Campo obbligatorio",email_incorrect:"Email non corretta.",email_already_taken:"Email gi\xE0 in uso.",email_does_not_exist:"L'utente con questa email non esiste",item_unit_already_taken:"Questo nome item \xE8 gi\xE0 utilizzato",payment_mode_already_taken:"Questa modalit\xE0 di pagamento \xE8 gi\xE0 stata inserita.",send_reset_link:"Invia Link di Reset",not_yet:"Non ancora? Invia di nuovo",password_min_length:"La password deve contenere {count} caratteri",name_min_length:"Il nome deve avere almeno {count} lettere.",enter_valid_tax_rate:"Inserisci un tasso di imposta valido",numbers_only:"Solo numeri.",characters_only:"Solo caratteri.",password_incorrect:"La Password deve essere identica",password_length:"La password deve essere lunga {count} caratteri.",qty_must_greater_than_zero:"La quantit\xE0 deve essere maggiore di zero.",price_greater_than_zero:"Il prezzo deve essere maggiore di zero.",payment_greater_than_zero:"Il pagamento deve essere maggiore di zero.",payment_greater_than_due_amount:"Il pagamento inserito \xE8 maggiore di quello indicato in fattura.",quantity_maxlength:"La Quantit\xE0 non pu\xF2 essere maggiore di 20 cifre.",price_maxlength:"Il prezzo non pu\xF2 contenere pi\xF9 di 20 cifre.",price_minvalue:"Il prezzo deve essere maggiore di 0.",amount_maxlength:"La somma non deve contenere pi\xF9 di 20 cifre.",amount_minvalue:"La somma deve essere maggiore di 0.",description_maxlength:"La Descrizione non deve superare i 255 caratteri.",subject_maxlength:"L'Oggetto non deve superare i 100 caratter.",message_maxlength:"Il messaggio non pu\xF2 superare i 255 caratteri.",maximum_options_error:"Massimo di {max} opzioni selezionate. Per selezionare un'altra opzione deseleziona prima una opzione.",notes_maxlength:"Le note non possono superare i 255 caratteri.",address_maxlength:"L'Indirizzo non pu\xF2 eccedere i 255 caratteri.",ref_number_maxlength:"Il Numero di Riferimento non pu\xF2 superare i 255 caratteri.",prefix_maxlength:"Il Prefisso non pu\xF2 superare i 5 caratteri.",something_went_wrong:"Si \xE8 verificato un errore"},_u="Preventivo",uu="Preventivo Numero",mu="Data preventivo",pu="Expiry date",gu="Fattura",fu="Numero Fattura",hu="Data fattura",vu="Due date",yu="Note",bu="Commesse",ku="Quantit\xE0",wu="Prezzo",xu="Sconto",zu="Ammontare",Su="Subtotal",ju="Totale",Pu="Payment",Du="PAYMENT RECEIPT",Cu="Payment Date",Au="Numero di pagamento",Eu="Modalit\xE0 di Pagamento",Nu="Amount Received",Tu="EXPENSES REPORT",Iu="TOTAL EXPENSE",$u="PROFIT & LOSS REPORT",Ru="Sales Customer Report",Fu="Sales Item Report",Mu="Tax Summary Report",Vu="INCOME",Bu="NET PROFIT",Ou="Sales Report: By Customer",Lu="TOTAL SALES",Uu="Sales Report: By Item",Ku="TAX REPORT",qu="TOTAL TAX",Zu="Tipi di Imposta",Wu="Uscite",Hu="Fattura a,",Gu="Invia a,",Yu="Received from:",Ju="imposta";var Xu={navigation:H_,general:G_,dashboard:Y_,tax_types:J_,global_search:X_,customers:Q_,items:eu,estimates:tu,invoices:au,payments:su,expenses:nu,login:iu,users:ou,reports:ru,settings:du,wizard:lu,validation:cu,pdf_estimate_label:_u,pdf_estimate_number:uu,pdf_estimate_date:mu,pdf_estimate_expire_date:pu,pdf_invoice_label:gu,pdf_invoice_number:fu,pdf_invoice_date:hu,pdf_invoice_due_date:vu,pdf_notes:yu,pdf_items_label:bu,pdf_quantity_label:ku,pdf_price_label:wu,pdf_discount_label:xu,pdf_amount_label:zu,pdf_subtotal:Su,pdf_total:ju,pdf_payment_label:Pu,pdf_payment_receipt_label:Du,pdf_payment_date:Cu,pdf_payment_number:Au,pdf_payment_mode:Eu,pdf_payment_amount_received_label:Nu,pdf_expense_report_label:Tu,pdf_total_expenses_label:Iu,pdf_profit_loss_label:$u,pdf_sales_customers_label:Ru,pdf_sales_items_label:Fu,pdf_tax_summery_label:Mu,pdf_income_label:Vu,pdf_net_profit_label:Bu,pdf_customer_sales_report:Ou,pdf_total_sales_label:Lu,pdf_item_sales_label:Uu,pdf_tax_report_label:Ku,pdf_total_tax_label:qu,pdf_tax_types_label:Zu,pdf_expenses_label:Wu,pdf_bill_to:Hu,pdf_ship_to:Gu,pdf_received_from:Yu,pdf_tax_label:Ju};const Qu={dashboard:"Komandna tabla",customers:"Klijenti",items:"Stavke",invoices:"Fakture",expenses:"Rashodi",estimates:"Profakture",payments:"Uplate",reports:"Izve\u0161taji",settings:"Pode\u0161avanja",logout:"Odjavi se",users:"Korisnici"},em={add_company:"Dodaj kompaniju",view_pdf:"Pogledaj PDF",copy_pdf_url:"Kopiraj PDF link",download_pdf:"Preuzmi PDF",save:"Sa\u010Duvaj",create:"Napravi",cancel:"Otka\u017Ei",update:"A\u017Euriraj",deselect:"Poni\u0161ti izbor",download:"Preuzmi",from_date:"Od Datuma",to_date:"Do Datuma",from:"Po\u0161iljalac",to:"Primalac",sort_by:"Rasporedi Po",ascending:"Rastu\u0107e",descending:"Opadaju\u0107e",subject:"Predmet",body:"Telo",message:"Poruka",send:"Po\u0161alji",go_back:"Idi nazad",back_to_login:"Nazad na prijavu?",home:"Po\u010Detna",filter:"Filter",delete:"Obri\u0161i",edit:"Izmeni",view:"Pogledaj",add_new_item:"Dodaj novu stavku",clear_all:"Izbri\u0161i sve",showing:"Prikazivanje",of:"od",actions:"Akcije",subtotal:"UKUPNO",discount:"POPUST",fixed:"Fiksno",percentage:"Procenat",tax:"POREZ",total_amount:"UKUPAN IZNOS",bill_to:"Ra\u010Dun za",ship_to:"Isporu\u010Diti za",due:"Du\u017Ean",draft:"U izradi",sent:"Poslato",all:"Sve",select_all:"Izaberi sve",choose_file:"Klikni ovde da izabere\u0161 fajl",choose_template:"Izaberi \u0161ablon",choose:"Izaberi",remove:"Ukloni",powered_by:"Pokre\u0107e",bytefury:"Bytefury",select_a_status:"Izaberi status",select_a_tax:"Izaberi porez",search:"Pretraga",are_you_sure:"Da li ste sigurni?",list_is_empty:"Lista je prazna.",no_tax_found:"Porez nije prona\u0111en!",four_zero_four:"404",you_got_lost:"Ups! Izgubio si se!",go_home:"Idi na po\u010Detnu stranicu",test_mail_conf:"Testiraj pode\u0161avanje Po\u0161te",send_mail_successfully:"Po\u0161ta uspe\u0161no poslata",setting_updated:"Pode\u0161avanje uspe\u0161no a\u017Eurirano",select_state:"Odaberi saveznu dr\u017Eavu",select_country:"Odaberi dr\u017Eavu",select_city:"Odaberi grad",street_1:"Adresa 1",street_2:"Adresa 2",action_failed:"Akcija nije uspela",retry:"Poku\u0161aj ponovo",choose_note:"Odaberi napomenu",no_note_found:"Ne postoje sa\u010Duvane napomene",insert_note:"Unesi bele\u0161ku",copied_pdf_url_clipboard:"Link do PDF fajla kopiran!"},tm={select_year:"Odaberi godinu",cards:{due_amount:"Du\u017Ean iznos",customers:"Klijenti",invoices:"Fakture",estimates:"Profakture"},chart_info:{total_sales:"Prodaja",total_receipts:"Ra\u010Duni",total_expense:"Rashodi",net_income:"Prihod NETO",year:"Odaberi godinu"},monthly_chart:{title:"Prodaja & Rashodi"},recent_invoices_card:{title:"Dospele fakture",due_on:"Datum dospevanja",customer:"Klijent",amount_due:"Iznos dospe\u0107a",actions:"Akcije",view_all:"Pogledaj sve"},recent_estimate_card:{title:"Nedavne profakture",date:"Datum",customer:"Klijent",amount_due:"Iznos dospe\u0107a",actions:"Akcije",view_all:"Pogledaj sve"}},am={name:"Naziv",description:"Opis",percent:"Procenat",compound_tax:"Slo\u017Eeni porez"},sm={search:"Pretraga...",customers:"Klijenti",users:"Korisnici",no_results_found:"Nema rezultata"},nm={title:"Klijenti",add_customer:"Dodaj Klijenta",contacts_list:"Lista klijenata",name:"Naziv",mail:"Mail | Mail-ovi",statement:"Izjava",display_name:"Naziv koji se prikazuje",primary_contact_name:"Primarna kontakt osoba",contact_name:"Naziv kontakt osobe",amount_due:"Iznos dospe\u0107a",email:"Email",address:"Adresa",phone:"Telefon",website:"Veb stranica",overview:"Pregled",enable_portal:"Uklju\u010Di portal",country:"Dr\u017Eava",state:"Savezna dr\u017Eava",city:"Grad",zip_code:"Po\u0161tanski broj",added_on:"Datum dodavanja",action:"Akcija",password:"\u0160ifra",street_number:"Broj ulice",primary_currency:"Primarna valuta",description:"Opis",add_new_customer:"Dodaj novog klijenta",save_customer:"Sa\u010Duvaj klijenta",update_customer:"A\u017Euriraj klijenta",customer:"Klijent | Klijenti",new_customer:"Nov klijent",edit_customer:"Izmeni klijenta",basic_info:"Osnovne informacije",billing_address:"Adresa za naplatu",shipping_address:"Adresa za dostavu",copy_billing_address:"Kopiraj iz adrese za naplatu",no_customers:"Jo\u0161 uvek nema klijenata!",no_customers_found:"Klijenti nisu prona\u0111eni!",no_contact:"No contact",no_contact_name:"No contact name",list_of_customers:"Ova sekcija \u0107e da sadr\u017Ei spisak klijenata.",primary_display_name:"Primarni naziv koji se prikazuje",select_currency:"Odaberi valutu",select_a_customer:"Odaberi klijenta",type_or_click:"Unesi tekst ili klikni da izabere\u0161",new_transaction:"Nova transakcija",no_matching_customers:"Ne postoje klijenti koji odgovaraju pretrazi!",phone_number:"Broj telefona",create_date:"Datum kreiranja",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovog klijenta i sve njegove Fakture, Profakture i Uplate. | Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ove klijente i njihove Fakture, Profakture i Uplate.",created_message:"Klijent uspe\u0161no kreiran",updated_message:"Klijent uspe\u0161no a\u017Euriran",deleted_message:"Klijent uspe\u0161no obrisan | Klijenti uspe\u0161no obrisani"},im={title:"Stavke",items_list:"Lista stavki",name:"Naziv",unit:"Jedinica",description:"Opis",added_on:"Datum dodavanja",price:"Cena",date_of_creation:"Datum kreiranja",not_selected:"No item selected",action:"Akcije",add_item:"Dodaj Stavku",save_item:"Sa\u010Duvaj Stavku",update_item:"A\u017Euriraj Stavku",item:"Stavka | Stavke",add_new_item:"Dodaj novu stavku",new_item:"Nova stavka",edit_item:"Izmeni stavku",no_items:"Jo\u0161 uvek nema stavki!",list_of_items:"Ova sekcija \u0107e da sadr\u017Ei spisak stavki.",select_a_unit:"odaberi jedinicu",taxes:"Porezi",item_attached_message:"Nije dozvoljeno brisanje stavke koje se koristi",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovu Stavku | Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ove Stavke",created_message:"Stavka uspe\u0161no kreirana",updated_message:"Stavka uspe\u0161no a\u017Eurirana",deleted_message:"Stavka uspe\u0161no obrisana | Stavke uspe\u0161no obrisane"},om={title:"Profakture",estimate:"Profaktura | Profakture",estimates_list:"Lista profaktura",days:"{days} Dan",months:"{months} Mesec",years:"{years} Godina",all:"Sve",paid:"Pla\u0107eno",unpaid:"Nepla\u0107eno",customer:"KLIJENT",ref_no:"POZIV NA BROJ",number:"BROJ",amount_due:"IZNOS DOSPE\u0106A",partially_paid:"Delimi\u010Dno Pla\u0107eno",total:"Ukupno za pla\u0107anje",discount:"Popust",sub_total:"Osnovica za obra\u010Dun PDV-a",estimate_number:"Broj profakture",ref_number:"Poziv na broj",contact:"Kontakt",add_item:"Dodaj stavku",date:"Datum",due_date:"Datum Dospe\u0107a",expiry_date:"Datum Isteka",status:"Status",add_tax:"Dodaj Porez",amount:"Iznos",action:"Akcija",notes:"Napomena",tax:"Porez",estimate_template:"\u0160ablon",convert_to_invoice:"Pretvori u Fakturu",mark_as_sent:"Ozna\u010Di kao Poslato",send_estimate:"Po\u0161alji Profakturu",resend_estimate:"Ponovo po\u0161alji Profakturu",record_payment:"Unesi uplatu",add_estimate:"Dodaj Profakturu",save_estimate:"Sa\u010Duvaj Profakturu",confirm_conversion:"Detalji ove Profakture \u0107e biti iskori\u0161\u0107eni za pravljenje Fakture.",conversion_message:"Faktura uspe\u0161no kreirana",confirm_send_estimate:"Ova Profaktura \u0107e biti poslata putem Email-a klijentu",confirm_mark_as_sent:"Ova Profaktura \u0107e biti ozna\u010Dena kao Poslata",confirm_mark_as_accepted:"Ova Profaktura \u0107e biti ozna\u010Dena kao Prihva\u0107ena",confirm_mark_as_rejected:"Ova Profaktura \u0107e biti ozna\u010Dena kao Odbijena",no_matching_estimates:"Ne postoji odgovaraju\u0107a profaktura!",mark_as_sent_successfully:"Profaktura uspe\u0161no ozna\u010Dena kao Poslata",send_estimate_successfully:"Profaktura uspe\u0161no poslata",errors:{required:"Polje je obavezno"},accepted:"Prihva\u0107eno",rejected:"Rejected",sent:"Poslato",draft:"U izradi",declined:"Odbijeno",new_estimate:"Nova Profaktura",add_new_estimate:"Dodaj novu Profakturu",update_Estimate:"A\u017Euriraj Profakturu",edit_estimate:"Izmeni Profakturu",items:"stavke",Estimate:"Profaktura | Profakture",add_new_tax:"Dodaj nov Porez",no_estimates:"Jo\u0161 uvek nema Profaktura!",list_of_estimates:"Ova sekcija \u0107e da sadr\u017Ei spisak Profaktura.",mark_as_rejected:"Ozna\u010Di kao odbijeno",mark_as_accepted:"Ozna\u010Di kao prihva\u0107eno",marked_as_accepted_message:"Profaktura ozna\u010Dena kao prihva\u0107ena",marked_as_rejected_message:"Profaktura ozna\u010Dena kao odbijena",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovu Profakturu | Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ove Profakture",created_message:"Profaktura uspe\u0161no kreirana",updated_message:"Profaktura uspe\u0161no a\u017Eurirana",deleted_message:"Profaktura uspe\u0161no obrisana | Profakture uspe\u0161no obrisane",something_went_wrong:"ne\u0161to je krenulo naopako",item:{title:"Naziv stavke",description:"Opis",quantity:"Koli\u010Dina",price:"Cena",discount:"Popust",total:"Ukupno za pla\u0107anje",total_discount:"Ukupan popust",sub_total:"Ukupno",tax:"Porez",amount:"Iznos",select_an_item:"Unesi tekst ili klikni da izabere\u0161",type_item_description:"Unesi opis Stavke (nije obavezno)"}},rm={title:"Fakture",invoices_list:"List Faktura",days:"{days} dan",months:"{months} Mesec",years:"{years} Godina",all:"Sve",paid:"Pla\u0107eno",unpaid:"Nepla\u0107eno",viewed:"Viewed",overdue:"Overdue",completed:"Completed",customer:"KLIJENT",paid_status:"STATUS UPLATE",ref_no:"POZIV NA BROJ",number:"BROJ",amount_due:"IZNOS DOSPE\u0106A",partially_paid:"Delimi\u010Dno pla\u0107eno",total:"Ukupno za pla\u0107anje",discount:"Popust",sub_total:"Osnovica za obra\u010Dun PDV-a",invoice:"Faktura | Fakture",invoice_number:"Broj Fakture",ref_number:"Poziv na broj",contact:"Kontakt",add_item:"Dodaj Stavku",date:"Datum",due_date:"Datum Dospe\u0107a",status:"Status",add_tax:"Dodaj Porez",amount:"Iznos",action:"Akcija",notes:"Napomena",view:"Pogledaj",send_invoice:"Po\u0161alji Fakturu",resend_invoice:"Ponovo po\u0161alji Fakturu",invoice_template:"\u0160ablon Fakture",template:"\u0160ablon",mark_as_sent:"Ozna\u010Di kao Poslato",confirm_send_invoice:"Ova Faktura \u0107e biti poslata putem Email-a klijentu",invoice_mark_as_sent:"Ova Faktura \u0107e biti ozna\u010Dena kao poslata",confirm_send:"Ova Faktura \u0107e biti poslata putem Email-a klijentu",invoice_date:"Datum Fakture",record_payment:"Unesi Uplatu",add_new_invoice:"Dodaj novu Fakturu",update_expense:"A\u017Euriraj Rashod",edit_invoice:"Izmeni Fakturu",new_invoice:"Nova Faktura",save_invoice:"Sa\u010Duvaj Fakturu",update_invoice:"A\u017Euriraj Fakturu",add_new_tax:"Dodaj nov Porez",no_invoices:"Jo\u0161 uvek nema Faktura!",list_of_invoices:"Ova sekcija \u0107e da sadr\u017Ei spisak Faktura.",select_invoice:"Odaberi Fakturu",no_matching_invoices:"Ne postoje Fakture koje odgovaraju pretrazi!",mark_as_sent_successfully:"Faktura uspe\u0161no ozna\u010Dena kao Poslata",invoice_sent_successfully:"Faktura uspe\u0161no poslata",cloned_successfully:"Uspe\u0161no napravljen duplikat Fakture",clone_invoice:"Napravi duplikat",confirm_clone:"Ova Faktura \u0107e biti duplikat nove Fakture",item:{title:"Naziv Stavke",description:"Opis",quantity:"Koli\u010Dina",price:"Cena",discount:"Popust",total:"Ukupno za pla\u0107anje",total_discount:"Ukupan popust",sub_total:"Ukupno",tax:"Porez",amount:"Iznos",select_an_item:"Unesi tekst ili klikni da izabere\u0161",type_item_description:"Unesi opis Stavke (nije obavezno)"},confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovu Fakturu | Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ove Fakture",created_message:"Faktura uspe\u0161no kreirana",updated_message:"Faktura uspe\u0161no a\u017Eurirana",deleted_message:"Faktura uspe\u0161no obrisana | Fakture uspe\u0161no obrisane",marked_as_sent_message:"Faktura ozna\u010Dena kao uspe\u0161no poslata",something_went_wrong:"ne\u0161to je krenulo naopako",invalid_due_amount_message:"Ukupan iznos za pla\u0107anje u fakturi ne mo\u017Ee biti manji od iznosa uplate za ovu fakturu. Molim Vas a\u017Eurirajte fakturu ili obri\u0161ite uplate koje su povezane sa ovom fakturom da bi nastavili."},dm={title:"Uplate",payments_list:"Lista uplata",record_payment:"Unesi Uplatu",customer:"Klijent",date:"Datum",amount:"Iznos",action:"Akcija",payment_number:"Broj uplate",payment_mode:"Na\u010Din pla\u0107anja",invoice:"Faktura",note:"Napomena",add_payment:"Dodaj Uplatu",new_payment:"Nova Uplata",edit_payment:"Izmeni Uplatu",view_payment:"Vidi Uplatu",add_new_payment:"Dodaj Novu Uplatu",send_payment_receipt:"Po\u0161alji potvrdu o uplati",send_payment:"Po\u0161alji Uplatu",save_payment:"Sa\u010Duvaj Uplatu",update_payment:"A\u017Euriraj Uplatu",payment:"Uplata | Uplate",no_payments:"Jo\u0161 uvek nema uplata!",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"Ne postoje uplate koje odgovaraju pretrazi!",list_of_payments:"Ova sekcija \u0107e da sadr\u017Ei listu uplata.",select_payment_mode:"Odaberi na\u010Din pla\u0107anja",confirm_mark_as_sent:"Ovo pla\u0107anje \u0107e biti ozna\u010Dena kao Poslata",confirm_send_payment:"Ovo pla\u0107anje \u0107e biti poslato putem Email-a klijentu",send_payment_successfully:"Pla\u0107anje uspe\u0161no poslato",something_went_wrong:"ne\u0161to je krenulo naopako",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovu Uplatu | Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ove Uplate",created_message:"Uplata uspe\u0161no kreirana",updated_message:"Uplata uspe\u0161no a\u017Eurirana",deleted_message:"Uplata uspe\u0161no obrisana | Uplate uspe\u0161no obrisane",invalid_amount_message:"Iznos Uplate je pogre\u0161an"},lm={title:"Rashodi",expenses_list:"Lista Rashoda",select_a_customer:"Odaberi klijenta",expense_title:"Naslov",customer:"Klijent",contact:"Kontakt",category:"Kategorija",from_date:"Datum od",to_date:"Datum do",expense_date:"Datum",description:"Opis",receipt:"Ra\u010Dun",amount:"Iznos",action:"Akcija",not_selected:"Not selected",note:"Napomena",category_id:"ID kategorije",date:"Datum",add_expense:"Dodaj Rashod",add_new_expense:"Dodaj Novi Rashod",save_expense:"Sa\u010Duvaj Rashod",update_expense:"A\u017Euriraj Rashod",download_receipt:"Preuzmi Ra\u010Dun",edit_expense:"Izmeni Rashod",new_expense:"Novi Rashod",expense:"Rashod | Rashodi",no_expenses:"Jo\u0161 uvek nema rashoda!",list_of_expenses:"Ova sekcija \u0107e da sadr\u017Ei listu rashoda.",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovaj Rashod | Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ove Rashode",created_message:"Rashod uspe\u0161no kreiran",updated_message:"Rashod uspe\u0161no a\u017Euriran",deleted_message:"Rashod uspe\u0161no obrisan | Rashodi uspe\u0161no obrisani",categories:{categories_list:"Lista Kategorija",title:"Naslov",name:"Naziv",description:"Opis",amount:"Iznos",actions:"Akcije",add_category:"Dodaj Kategoriju",new_category:"Nova Kategorija",category:"Kategorija | Kategorije",select_a_category:"Izaberi kategoriju"}},cm={email:"Email",password:"\u0160ifra",forgot_password:"Zaboravili ste \u0161ifru?",or_signIn_with:"ili se prijavite sa",login:"Prijava",register:"Registracija",reset_password:"Restujte \u0161ifru",password_reset_successfully:"\u0160ifra Uspe\u0161no Resetovana",enter_email:"Unesi email",enter_password:"Unesi \u0161ifru",retype_password:"Ponovo unesi \u0161ifru"},_m={title:"Korisnici",users_list:"Lista korisnika",name:"Ime i prezime",description:"Opis",added_on:"Datum dodavanja",date_of_creation:"Datum kreiranja",action:"Akcija",add_user:"Dodaj Korisnika",save_user:"Sa\u010Duvaj Korisnika",update_user:"A\u017Euriraj Korisnika",user:"Korisnik | Korisnici",add_new_user:"Dodaj novog korisnika",new_user:"Nov Korisnik",edit_user:"Izmeni Korisnika",no_users:"Jo\u0161 uvek nema korisnika!",list_of_users:"Ova sekcija \u0107e da sadr\u017Ei listu korisnika.",email:"Email",phone:"Broj telefona",password:"\u0160ifra",user_attached_message:"Ne mo\u017Eete obrisati stavku koja je ve\u0107 u upotrebi",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovog Korisnika | Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ove Korisnike",created_message:"Korisnik uspe\u0161no napravljen",updated_message:"Korisnik uspe\u0161no a\u017Euriran",deleted_message:"Korisnik uspe\u0161no obrisan | Korisnici uspe\u0161no obrisani"},um={title:"Izve\u0161taj",from_date:"Datum od",to_date:"Datum do",status:"Status",paid:"Pla\u0107eno",unpaid:"Nepla\u0107eno",download_pdf:"Preuzmi PDF",view_pdf:"Pogledaj PDF",update_report:"A\u017Euriraj Izve\u0161taj",report:"Izve\u0161taj | Izve\u0161taji",profit_loss:{profit_loss:"Prihod & Rashod",to_date:"Datum do",from_date:"Datum od",date_range:"Izaberi opseg datuma"},sales:{sales:"Prodaja",date_range:"Izaberi opseg datuma",to_date:"Datum do",from_date:"Datum od",report_type:"Tip Izve\u0161taja"},taxes:{taxes:"Porezi",to_date:"Datum do",from_date:"Datum od",date_range:"Izaberi opseg datuma"},errors:{required:"Polje je obavezno"},invoices:{invoice:"Faktura",invoice_date:"Datum Fakture",due_date:"Datum Dospe\u0107a",amount:"Iznos",contact_name:"Ime Kontakta",status:"Status"},estimates:{estimate:"Profaktura",estimate_date:"Datum Profakture",due_date:"Datum Dospe\u0107a",estimate_number:"Broj Profakture",ref_number:"Poziv na broj",amount:"Iznos",contact_name:"Ime Kontakta",status:"Status"},expenses:{expenses:"Rashodi",category:"Kategorija",date:"Datum",amount:"Iznos",to_date:"Datum do",from_date:"Datum od",date_range:"Izaberi opseg datuma"}},mm={menu_title:{account_settings:"Pode\u0161avanje Naloga",company_information:"Podaci o firmi",customization:"Prilago\u0111avanje",preferences:"Preferencija",notifications:"Obave\u0161tenja",tax_types:"Tipovi Poreza",expense_category:"Kategorije Rashoda",update_app:"A\u017Euriraj Aplikaciju",backup:"Bekap",file_disk:"File Disk",custom_fields:"Prilago\u0111ena polja",payment_modes:"Na\u010Din pla\u0107anja",notes:"Napomene"},title:"Pode\u0161avanja",setting:"Pode\u0161avanje | Pode\u0161avanja",general:"Op\u0161te",language:"Jezik",primary_currency:"Primarna Valuta",timezone:"Vremenska Zona",date_format:"Format Datuma",currencies:{title:"Valute",currency:"Valuta | Valute",currencies_list:"Lista Valuta",select_currency:"Odaberi Valutu",name:"Naziv",code:"Kod",symbol:"Simbol",precision:"Preciznost",thousand_separator:"Separator za hiljade",decimal_separator:"Separator za decimale",position:"Pozicija",position_of_symbol:"Pozicija simbola",right:"Desno",left:"Levo",action:"Akcija",add_currency:"Dodaj Valutu"},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail Driver",secret:"\u0160ifra",mailgun_secret:"Mailgun \u0160ifra",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES \u0160ifra",ses_key:"SES Klju\u010D",password:"Mail \u0160ifra",username:"Mail Korisni\u010Dko Ime",mail_config:"Mail Pode\u0161avanje",from_name:"Naziv po\u0161iljaoca",from_mail:"E-mail adresa po\u0161iljaoca",encryption:"E-mail enkripcija",mail_config_desc:"Ispod se nalazi forma za pode\u0161avanje E-mail drajvera za slanje po\u0161te iz aplikacije. Tako\u0111e mo\u017Eete podesiti provajdere tre\u0107e strane kao Sendgrid, SES itd."},pdf:{title:"PDF Pode\u0161avanje",footer_text:"Tekstualno zaglavlje na dnu strane",pdf_layout:"PDF Raspored"},company_info:{company_info:"Podaci o firmi",company_name:"Naziv firme",company_logo:"Logo firme",section_description:"Informacije o Va\u0161oj firmi \u0107e biti prikazane na fakturama, profakturama i drugim dokumentima koji se prave u ovoj aplikaciji.",phone:"Telefon",country:"Dr\u017Eava",state:"Savezna Dr\u017Eava",city:"Grad",address:"Adresa",zip:"Po\u0161tanski broj",save:"Sa\u010Duvaj",updated_message:"Podaci o firmi uspe\u0161no sa\u010Duvani"},custom_fields:{title:"Prilago\u0111ena polja",section_description:"Prilagodite va\u0161e Fakture, Profakture i Uplate (priznanice) sa svojim poljima. Postarajte se da koristite polja navedena ispod na formatu adrese na stranici Pode\u0161avanja/Prilago\u0111avanje.",add_custom_field:"Dodaj prilago\u0111eno polje",edit_custom_field:"Izmeni prilago\u0111eno polje",field_name:"Naziv polja",label:"Oznaka",type:"Tip",name:"Naziv",required:"Obavezno",placeholder:"Opis polja (Placeholder)",help_text:"Pomo\u0107ni tekst",default_value:"Podrazumevana vrednost",prefix:"Prefiks",starting_number:"Po\u010Detni broj",model:"Model",help_text_description:"Unesite opis koji \u0107e pomo\u0107i korisnicima da razumeju svrhu ovog prilago\u0111enog polja.",suffix:"Sufiks",yes:"Da",no:"Ne",order:"Redosled",custom_field_confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovo prilago\u0111eno polje",already_in_use:"Prilago\u0111eno polje je ve\u0107 u upotrebi",deleted_message:"Prilago\u0111eno polje je uspe\u0161no obrisano",options:"opcije",add_option:"Dodaj opcije",add_another_option:"Dodaj jo\u0161 jednu opciju",sort_in_alphabetical_order:"Pore\u0111aj po Abecedi",add_options_in_bulk:"Grupno dodavanje opcija",use_predefined_options:"Koristi predefinisane opcije",select_custom_date:"Odaberi datum",select_relative_date:"Odaberi relativan datum",ticked_by_default:"Podrazumevano odabrano",updated_message:"Prilago\u0111eno polje uspe\u0161no a\u017Eurirano",added_message:"Prilago\u0111eno polje uspe\u0161no dodato"},customization:{customization:"prilago\u0111avanje",save:"Sa\u010Duvaj",addresses:{title:"Adrese",section_description:"Mo\u017Eete podesiti format adrese klijenta za naplatu i adrese klijenta za dostavu (Prikazano samo u PDF-u)",customer_billing_address:"Adresa za naplatu klijentu",customer_shipping_address:"Adresa za dostavu klijentu",company_address:"Adresa Firme",insert_fields:"Dodaj Polja",contact:"Kontakt",address:"Adresa",display_name:"Naziv koji se prikazuje",primary_contact_name:"Primarna kontakt osoba",email:"Email",website:"Veb stranica",name:"Naziv",country:"Dr\u017Eava",state:"Savezna Dr\u017Eava",city:"Grad",company_name:"Naziv Firme",address_street_1:"Adresa 1",address_street_2:"Adresa 2",phone:"Telefon",zip_code:"Po\u0161tanski broj",address_setting_updated:"Pode\u0161avanje adrese uspe\u0161no a\u017Eurirano"},updated_message:"Podaci o firmi su uspe\u0161no a\u017Eurirani",invoices:{title:"Fakture",notes:"Napomene",invoice_prefix:"Prefiks faktura",default_invoice_email_body:"Podrazumevan sadr\u017Eaj email-a za Fakture",invoice_settings:"Pode\u0161avanje za fakture",autogenerate_invoice_number:"Automatski-generi\u0161i broj fakture",autogenerate_invoice_number_desc:"Onemogu\u0107i ovo, Ako Vi ne \u017Eelite da automatski-generi\u0161ete broj fakture kada pravite novu fakturu.",enter_invoice_prefix:"Unesite prefiks fakture",terms_and_conditions:"Uslovi Kori\u0161\u0107enja",company_address_format:"Format adrese firme",shipping_address_format:"Format adrese za dostavu firme",billing_address_format:"Format adrese za naplatu firme",invoice_settings_updated:"Pode\u0161avanje za fakture je uspe\u0161no sa\u010Duvano"},estimates:{title:"Profakture",estimate_prefix:"Prefiks profaktura",default_estimate_email_body:"Podrazumevan sadr\u017Eaj email-a za Profakture",estimate_settings:"Pode\u0161avanje za profakture",autogenerate_estimate_number:"Automatski-generi\u0161i broj profakture",estimate_setting_description:"Onemogu\u0107i ovo, Ako Vi ne \u017Eelite da automatski-generi\u0161ete broj profakture kada pravite novu profakturu.",enter_estimate_prefix:"Unesite prefiks profakture",estimate_setting_updated:"Pode\u0161avanje za profakture je uspe\u0161no sa\u010Duvano",company_address_format:"Format adrese firme",billing_address_format:"Format adrese za naplatu firme",shipping_address_format:"Format adrese za dostavu firme"},payments:{title:"Uplate",description:"Na\u010Din pla\u0107anja",payment_prefix:"Prefiks uplata",default_payment_email_body:"Podrazumevan sadr\u017Eaj email-a za potvrdu o pla\u0107anju (ra\u010Dun)",payment_settings:"Pode\u0161avanje za pla\u0107anja",autogenerate_payment_number:"Automatski-generi\u0161i broj uplate",payment_setting_description:"Onemogu\u0107i ovo, Ako ne \u017Eelite da automatski-generi\u0161ete broj uplate kada pravite novu uplatu.",enter_payment_prefix:"Unesite prefiks uplate",payment_setting_updated:"Pode\u0161avanje za pla\u0107anja je uspe\u0161no sa\u010Duvano",payment_modes:"Na\u010Din Pla\u0107anja",add_payment_mode:"Dodaj na\u010Din pla\u0107anja",edit_payment_mode:"Izmeni na\u010Din pla\u0107anja",mode_name:"Na\u010Din pla\u0107anja",payment_mode_added:"Na\u010Din pla\u0107anja dodat",payment_mode_updated:"Na\u010Din pla\u0107anja a\u017Euriran",payment_mode_confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovaj Na\u010Din Pla\u0107anja",already_in_use:"Na\u010Din pla\u0107anja se ve\u0107 koristi",deleted_message:"Na\u010Din pla\u0107anja uspe\u0161no obrisan",company_address_format:"Format adrese firme",from_customer_address_format:"Format adrese klijenta"},items:{title:"Stavke",units:"Jedinice",add_item_unit:"Dodaj jedinicu stavke",edit_item_unit:"Izmeni jedinicu stavke",unit_name:"Naziv jedinice",item_unit_added:"Jedinica stavke dodata",item_unit_updated:"Jedinica stavke a\u017Eurirana",item_unit_confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovu jedinicu stavke",already_in_use:"Jedinica stavke se ve\u0107 koristi",deleted_message:"Jedinica stavke uspe\u0161no obrisana"},notes:{title:"Napomene",description:"U\u0161tedite vreme pravlje\u0107i napomene i koriste\u0107i ih na fakturama, profakturama i uplatama.",notes:"Napomene",type:"Tip",add_note:"Dodaj Napomenu",add_new_note:"Dodaj novu Napomenu",name:"Naziv",edit_note:"Izmeni Napomenu",note_added:"Napomena uspe\u0161no dodata",note_updated:"Napomena uspe\u0161no a\u017Eurirana",note_confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovu Napomenu",already_in_use:"Napomena se ve\u0107 koristi",deleted_message:"Napomena uspe\u0161no obrisana"}},account_settings:{profile_picture:"Profilna slika",name:"Ime i prezime",email:"Email",password:"\u0160ifra",confirm_password:"Potvrdi \u0161ifru",account_settings:"Pode\u0161avanje naloga",save:"Sa\u010Duvaj",section_description:"Mo\u017Eete a\u017Eurirati Va\u0161e ime i prezime, email, \u0161ifru koriste\u0107i formu ispod.",updated_message:"Pode\u0161avanje naloga uspe\u0161no a\u017Eurirano"},user_profile:{name:"Ime i prezime",email:"Email",password:"\u0160ifra",confirm_password:"Potvrdi \u0161ifru"},notification:{title:"Obave\u0161tenje",email:"\u0160alji obave\u0161tenja na",description:"Koja email obave\u0161tenja bi \u017Eeleli da dobijate kada se ne\u0161to promeni?",invoice_viewed:"Faktura gledana",invoice_viewed_desc:"Kada klijent pogleda fakturu koja je poslata putem ove aplikacije.",estimate_viewed:"Profaktura gledana",estimate_viewed_desc:"Kada klijent pogleda profakturu koja je poslata putem ove aplikacije.",save:"Sa\u010Duvaj",email_save_message:"Email uspe\u0161no sa\u010Duvan",please_enter_email:"Molim Vas unesite E-mail"},tax_types:{title:"Tipovi Poreza",add_tax:"Dodaj Porez",edit_tax:"Izmeni Porez",description:"Mo\u017Eete dodavati ili uklanjati poreze kako \u017Eelite. Ova aplikacija podr\u017Eava porez kako na individualnim stavkama tako i na fakturi.",add_new_tax:"Dodaj Nov Porez",tax_settings:"Pode\u0161avanje Poreza",tax_per_item:"Porez po Stavki",tax_name:"Naziv Poreza",compound_tax:"Slo\u017Een Porez",percent:"Procenat",action:"Akcija",tax_setting_description:"Izaberite ovo ako \u017Eelite da dodajete porez na individualne stavke. Podrazumevano pona\u0161anje je da je porez dodat direktno na fakturu.",created_message:"Tip poreza uspe\u0161no kreiran",updated_message:"Tip poreza uspe\u0161no a\u017Euriran",deleted_message:"Tip poreza uspe\u0161no obrisan",confirm_delete:"Ne\u0107ete mo\u0107i da povratite ovaj Tip Poreza",already_in_use:"Porez se ve\u0107 koristi"},expense_category:{title:"Kategorija Rashoda",action:"Akcija",description:"Kategorije su obavezne za dodavanje rashoda. Mo\u017Ee\u0161 da doda\u0161 ili obri\u0161e\u0161 ove kategorije po svojoj \u017Eelji.",add_new_category:"Dodaj novu kategoriju",add_category:"Dodaj kategoriju",edit_category:"Izmeni kategoriju",category_name:"Naziv kategorije",category_description:"Opis",created_message:"Kagetorija rashoda je uspe\u0161no kreirana",deleted_message:"Kategorija rashoda je uspe\u0161no izbrisana",updated_message:"Kategorija rashoda je uspe\u0161no a\u017Eurirana",confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovu kategoriju rashoda",already_in_use:"Kategorija se ve\u0107 koristi"},preferences:{currency:"Valuta",default_language:"Jezik",time_zone:"Vremenska Zona",fiscal_year:"Finansijska Godina",date_format:"Format datuma",discount_setting:"Pode\u0161avanja za popuste",discount_per_item:"Popust po stavci",discount_setting_description:"Izaberite ovo ako \u017Eelite da dodajete Popust na individualne stavke. Podrazumevano pona\u0161anje je da je Popust dodat direktno na fakturu.",save:"Sa\u010Duvaj",preference:"Preferencija | Preferencije",general_settings:"Podrazumevane preferencije za sistem",updated_message:"Preferencije su uspe\u0161no a\u017Eurirane",select_language:"Izaberi Jezik",select_time_zone:"Izaberi Vremensku Zonu",select_date_format:"Izaberi Format Datuma",select_financial_year:"Izaberi Finansijsku Godinu"},update_app:{title:"A\u017Euriraj aplikaciju",description:"Lako mo\u017Ee\u0161 da a\u017Eurira\u0161 Crater tako \u0161to \u0107e\u0161 uraditi proveru novih verzija klikom na polje ispod",check_update:"Proveri a\u017Euriranost",avail_update:"Dostupna je nova verzija",next_version:"Slede\u0107a verzija",requirements:"Zahtevi",update:"A\u017Euriraj sad",update_progress:"A\u017Euriranje je u toku...",progress_text:"Traja\u0107e svega par minuta. Nemojte osve\u017Eavati ili zatvoriti stranicu dok a\u017Euriranje ne bude gotovo",update_success:"Aplikacija je a\u017Eurirana! Molim Vas Sa\u010Dekajte da se stranica osve\u017Ei automatski.",latest_message:"Nema nove verzije! A\u017Eurirana poslednja verzija.",current_version:"Trenutna verzija",download_zip_file:"Preuzmi ZIP paket",unzipping_package:"Raspakivanje paketa",copying_files:"Kopiranje datoteka",deleting_files:"Brisanje fajlova koji nisu u upotrebi",running_migrations:"Migracije u toku",finishing_update:"Zavr\u0161avanje a\u017Euriranja",update_failed:"Neuspe\u0161no a\u017Euriranje",update_failed_text:"\u017Dao mi je! Tvoje a\u017Euriranje nije uspelo na koraku broj: {step} korak"},backup:{title:"Bekap | Bekapi",description:"Bekap je zip arhiva koja sadr\u017Ei sve fajlove iz foldera koje ste specificirali, tako\u0111e sadr\u017Ei bekap baze.",new_backup:"Dodaj novi Bekap",create_backup:"Napravi Bekap",select_backup_type:"Izaberi tip Bekapa",backup_confirm_delete:"Ne\u0107e\u0161 mo\u0107i da povrati\u0161 ovaj Bekap",path:"putanja",new_disk:"Novi Disk",created_at:"datum kreiranja",size:"veli\u010Dina",dropbox:"dropbox",local:"lokalni",healthy:"zdrav",amount_of_backups:"broj bekapa",newest_backups:"najnoviji bekapi",used_storage:"kori\u0161c\u0301eno skladi\u0161te",select_disk:"Izaberi Disk",action:"Akcija",deleted_message:"Bekap uspe\u0161no obrisan",created_message:"Bekap uspe\u0161no napravljen",invalid_disk_credentials:"Pogre\u0161ni kredencijali za odabrani disk"},disk:{title:"File Disk | File Disks",description:"Podrazumevano pona\u0161anje je da Crater koristi lokalni disk za \u010Duvanje bekapa, avatara i ostalih slika. Mo\u017Eete podesiti vi\u0161e od jednog disk drajvera od provajdera poput DigitalOcean, S3 i Dropbox po va\u0161oj \u017Eelji.",created_at:"datum kreiranja",dropbox:"dropbox",name:"Naziv",driver:"Drajver",disk_type:"Tip",disk_name:"Naziv Diska",new_disk:"Dodaj novi Disk",filesystem_driver:"Filesystem Driver",local_driver:"lokalni Drajver",local_root:"local Root",public_driver:"Public Driver",public_root:"Public Root",public_url:"Public URL",public_visibility:"Public Visibility",media_driver:"Media Driver",media_root:"Media Root",aws_driver:"AWS Driver",aws_key:"AWS Key",aws_secret:"AWS Secret",aws_region:"AWS Region",aws_bucket:"AWS Bucket",aws_root:"AWS Root",do_spaces_type:"Do Spaces type",do_spaces_key:"Do Spaces key",do_spaces_secret:"Do Spaces Secret",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Dropbox Type",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Key",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Podrazumevani Drajver",is_default:"DA LI JE PODRAZUMEVAN",set_default_disk:"Postavi Podrazumevani Disk",set_default_disk_confirm:"Ovaj disk \u0107e biti postavljen kao podrazumevan i svi novi PDF fajlovi \u0107e biti sa\u010Duvani na ovom disku",success_set_default_disk:"Disk je uspe\u0161no postavljen kao podrazumevan",save_pdf_to_disk:"Sa\u010Duvaj PDF fajlove na Disk",disk_setting_description:" Uklju\u010Dite ovo ako \u017Eelite da sa\u010Duvate kopiju PDF fajla svake Fakture, Profakture i Uplate na va\u0161 podrazumevani disk automatski. Uklju\u010Divanjem ove opcije \u0107ete smanjiti vreme u\u010Ditavanja pri pregledu PDF fajlova.",select_disk:"Izaberi Disk",disk_settings:"Disk Pode\u0161avanja",confirm_delete:"Ovo ne\u0107e uticati na va\u0161e postoje\u0107e fajlove i foldere na navedenom disku, ali \u0107e se konfiguracija va\u0161eg diska izbrisati iz Cratera.",action:"Akcija",edit_file_disk:"Izmeni File Disk",success_create:"Disk uspe\u0161no dodat",success_update:"Disk uspe\u0161no a\u017Euriran",error:"Dodavanje diska nije uspelo",deleted_message:"File Disk uspe\u0161no obrisan",disk_variables_save_successfully:"Disk uspe\u0161no pode\u0161en",disk_variables_save_error:"Pode\u0161avanje diska nije uspelo.",invalid_disk_credentials:"Pogre\u0161an kredencijal za disk koji je naveden"}},pm={account_info:"Informacije o nalogu",account_info_desc:"Detalji u nastavku \u0107e se koristiti za kreiranje glavnog administratorskog naloga. Mogu\u0107e ih je izmeniti u bilo kom trenutku nakon prijavljivanja.",name:"Naziv",email:"E-mail",password:"\u0160ifra",confirm_password:"Potvrdi \u0161ifru",save_cont:"Sa\u010Duvaj & Nastavi",company_info:"Informacije o firmi",company_info_desc:"Ove informacije \u0107e biti prikazane na fakturama. Mogu\u0107e ih je izmeniti kasnije u pode\u0161avanjima.",company_name:"Naziv firme",company_logo:"Logo firme",logo_preview:"Pregled logoa",preferences:"Preference",preferences_desc:"Podrazumevane Preference za sistem",country:"Dr\u017Eava",state:"Savezna Dr\u017Eava",city:"Grad",address:"Adresa",street:"Ulica1 | Ulica2",phone:"Telefon",zip_code:"Po\u0161tanski broj",go_back:"Vrati se nazad",currency:"Valuta",language:"Jezik",time_zone:"Vremenska zona",fiscal_year:"Finansijska godina",date_format:"Format datuma",from_address:"Adresa po\u0161iljaoca",username:"Korisni\u010Dko ime",next:"Slede\u0107e",continue:"Nastavi",skip:"Presko\u010Di",database:{database:"URL stranice & baze podataka",connection:"Veza baze podataka",host:"Host baze podataka",port:"Port baze podataka",password:"\u0160ifra baze podataka",app_url:"URL aplikacije",app_domain:"Domen aplikacije",username:"Korisni\u010Dko ime baze podataka",db_name:"Naziv baze podataka",db_path:"Putanja do baze",desc:"Kreiraj bazu podataka na svom serveru i postavi kredencijale prate\u0107i obrazac u nastavku."},permissions:{permissions:"Dozvole",permission_confirm_title:"Da li ste sigurni da \u017Eelite da nastavite?",permission_confirm_desc:"Provera dozvola za foldere nije uspela",permission_desc:"U nastavku se nalazi lista dozvola za foldere koji su neophodni kako bi alikacija radila. Ukoliko provera dozvola ne uspe, a\u017Euriraj svoju listu dozvola za te foldere."},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail drajver",secret:"\u0160ifra",mailgun_secret:"Mailgun \u0160ifra",mailgun_domain:"Domen",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES \u0160ifra",ses_key:"SES Klju\u010D",password:"\u0160ifra za e-mail",username:"Koristni\u010Dko ime za e-mail",mail_config:"E-mail konfigurisanje",from_name:"Naziv po\u0161iljaoca",from_mail:"E-mail adresa po\u0161iljaoca",encryption:"E-mail enkripcija",mail_config_desc:"Ispod se nalazi forma za pode\u0161avanje E-mail drajvera za slanje po\u0161te iz aplikacije. Tako\u0111e mo\u017Eete podesiti provajdere tre\u0107e strane kao Sendgrid, SES itd."},req:{system_req:"Sistemski zahtevi",php_req_version:"Zahteva se PHP verzija {version} ",check_req:"Proveri zahteve",system_req_desc:"Crater ima nekoliko zahteva za server. Proveri da li tvoj server ima potrebnu verziju PHP-a i sva navedena pro\u0161irenja navedena u nastavku"},errors:{migrate_failed:"Neuspe\u0161no migriranje",database_variables_save_error:"Konfiguraciju nije moguc\u0301e zapisati u .env datoteku. Proveri dozvole za datoteku",mail_variables_save_error:"E-mail konfigurisanje je neuspe\u0161no",connection_failed:"Neuspe\u0161na konekcija sa bazom podataka",database_should_be_empty:"Baza podataka treba da bude prazna"},success:{mail_variables_save_successfully:"E-mail je uspe\u0161no konfigurisan",database_variables_save_successfully:"Baza podataka je uspe\u0161no konfigurisana"}},gm={invalid_phone:"Pogre\u0161an Broj Telefona",invalid_url:"Neva\u017Ee\u0107i URL (primer: http://www.craterapp.com)",invalid_domain_url:"Pogre\u0161an URL (primer: craterapp.com)",required:"Obavezno polje",email_incorrect:"Pogre\u0161an E-mail",email_already_taken:"Navedeni E-mail je zauzet",email_does_not_exist:"Korisnik sa navedenom e-mail adresom ne postoji",item_unit_already_taken:"Naziv ove jedinice stavke je zauzet",payment_mode_already_taken:"Naziv ovog na\u010Dina pla\u0107anja je zauzet",send_reset_link:"Po\u0161alji link za resetovanje",not_yet:"Jo\u0161 uvek ni\u0161ta? Po\u0161alji ponovo",password_min_length:"\u0160ifra mora imati {count} karaktera",name_min_length:"Naziv mora imati najmanje {count} slova",enter_valid_tax_rate:"Unesite odgovaraju\u0107u poresku stopu",numbers_only:"Mogu se unositi samo brojevi",characters_only:"Mogu se unositi samo karakteri",password_incorrect:"\u0160ifra mora biti identi\u010Dna",password_length:"\u0160ifra mora imati {count} karaktera",qty_must_greater_than_zero:"Koli\u010Dina mora biti ve\u0107a od 0.",price_greater_than_zero:"Cena mora biti ve\u0107a od 0",payment_greater_than_zero:"Uplata mora biti ve\u0107a od 0",payment_greater_than_due_amount:"Uneta uplata je ve\u0107a od dospelog iznosa ove fakture",quantity_maxlength:"Koli\u010Dina ne mo\u017Ee imati vi\u0161e od 20 cifara",price_maxlength:"Cena ne mo\u017Ee imati vi\u0161e od 20 cifara",price_minvalue:"Cena mora biti ve\u0107a od 0",amount_maxlength:"Iznos ne mo\u017Ee da ima vi\u0161e od 20 cifara",amount_minvalue:"Iznos mora biti ve\u0107i od 0",description_maxlength:"Opis ne mo\u017Ee da ima vi\u0161e od 65,000 karaktera",subject_maxlength:"Predmet ne mo\u017Ee da ima vi\u0161e od 100 karaktera",message_maxlength:"Poruka ne mo\u017Ee da ima vi\u0161e od 255 karaktera",maximum_options_error:"Maksimalan broj opcija je izabran. Prvo uklonite izabranu opciju da biste izabrali drugu",notes_maxlength:"Napomena ne mo\u017Ee da ima vi\u0161e od 65,000 karaktera",address_maxlength:"Adresa ne mo\u017Ee da ima vi\u0161e od 255 karaktera",ref_number_maxlength:"Poziv na broj ne mo\u017Ee da ima vi\u0161e od 225 karaktera",prefix_maxlength:"Prefiks ne mo\u017Ee da ima vi\u0161e od 5 karaktera",something_went_wrong:"ne\u0161to je krenulo naopako"},fm="Profaktura",hm="Broj Profakture",vm="Datum Profakture",ym="Datum isteka Profakture",bm="Faktura",km="Broj Fakture",wm="Datum Fakture",xm="Datum dospe\u0107a Fakture",zm="Napomena",Sm="Stavke",jm="Koli\u010Dina",Pm="Cena",Dm="Popust",Cm="Iznos",Am="Osnovica za obra\u010Dun PDV-a",Em="Ukupan iznos",Nm="Payment",Tm="POTVRDA O UPLATI",Im="Datum Uplate",$m="Broj Uplate",Rm="Na\u010Din Uplate",Fm="Iznos Uplate",Mm="IZVE\u0160TAJ O RASHODIMA",Vm="RASHODI UKUPNO",Bm="IZVE\u0160TAJ O PRIHODIMA I RASHODIMA",Om="Sales Customer Report",Lm="Sales Item Report",Um="Tax Summary Report",Km="PRIHOD",qm="NETO PROFIT",Zm="Izve\u0161taj o Prodaji: Po Klijentu",Wm="PRODAJA UKUPNO",Hm="Izve\u0161taj o Prodaji: Po Stavci",Gm="IZVE\u0160TAJ O POREZIMA",Ym="UKUPNO POREZ",Jm="Tipovi Poreza",Xm="Rashodi",Qm="Ra\u010Dun za,",ep="Isporu\u010Diti za,",tp="Poslat od strane:",ap="Tax";var sp={navigation:Qu,general:em,dashboard:tm,tax_types:am,global_search:sm,customers:nm,items:im,estimates:om,invoices:rm,payments:dm,expenses:lm,login:cm,users:_m,reports:um,settings:mm,wizard:pm,validation:gm,pdf_estimate_label:fm,pdf_estimate_number:hm,pdf_estimate_date:vm,pdf_estimate_expire_date:ym,pdf_invoice_label:bm,pdf_invoice_number:km,pdf_invoice_date:wm,pdf_invoice_due_date:xm,pdf_notes:zm,pdf_items_label:Sm,pdf_quantity_label:jm,pdf_price_label:Pm,pdf_discount_label:Dm,pdf_amount_label:Cm,pdf_subtotal:Am,pdf_total:Em,pdf_payment_label:Nm,pdf_payment_receipt_label:Tm,pdf_payment_date:Im,pdf_payment_number:$m,pdf_payment_mode:Rm,pdf_payment_amount_received_label:Fm,pdf_expense_report_label:Mm,pdf_total_expenses_label:Vm,pdf_profit_loss_label:Bm,pdf_sales_customers_label:Om,pdf_sales_items_label:Lm,pdf_tax_summery_label:Um,pdf_income_label:Km,pdf_net_profit_label:qm,pdf_customer_sales_report:Zm,pdf_total_sales_label:Wm,pdf_item_sales_label:Hm,pdf_tax_report_label:Gm,pdf_total_tax_label:Ym,pdf_tax_types_label:Jm,pdf_expenses_label:Xm,pdf_bill_to:Qm,pdf_ship_to:ep,pdf_received_from:tp,pdf_tax_label:ap};const np={dashboard:"Overzicht",customers:"Klanten",items:"Artikelen",invoices:"Facturen",expenses:"Uitgaven",estimates:"Offertes",payments:"Betalingen",reports:"Rapporten",settings:"Instellingen",logout:"Uitloggen",users:"Gebruikers"},ip={add_company:"Bedrijf toevoegen",view_pdf:"Bekijk PDF",copy_pdf_url:"Kopieer PDF-URL",download_pdf:"Download PDF",save:"Opslaan",create:"Maak",cancel:"annuleren",update:"Bijwerken",deselect:"Maak de selectie ongedaan",download:"Downloaden",from_date:"Van datum",to_date:"Tot datum",from:"Van",to:"Naar",sort_by:"Sorteer op",ascending:"Oplopend",descending:"Aflopend",subject:"Onderwerp",body:"Inhoud",message:"Bericht",send:"Verstuur",go_back:"Ga terug",back_to_login:"Terug naar Inloggen?",home:"Home",filter:"Filter",delete:"Verwijderen",edit:"Bewerken",view:"Bekijken",add_new_item:"Voeg een nieuw item toe",clear_all:"Wis alles",showing:"Weergegeven",of:"van",actions:"Acties",subtotal:"SUBTOTAAL",discount:"KORTING",fixed:"Gemaakt",percentage:"Percentage",tax:"BELASTING",total_amount:"TOTAALBEDRAG",bill_to:"Rekening naar",ship_to:"Verzend naar",due:"Openstaand",draft:"Concept",sent:"Verzonden",all:"Alles",select_all:"Selecteer alles",choose_file:"Klik hier om een bestand te kiezen",choose_template:"Kies een sjabloon",choose:"Kiezen",remove:"Verwijderen",powered_by:"Mogelijk gemaakt door",bytefury:"Bytefury",select_a_status:"Selecteer een status",select_a_tax:"Selecteer een belasting",search:"Zoeken",are_you_sure:"Weet je het zeker?",list_is_empty:"Lijst is leeg.",no_tax_found:"Geen belasting gevonden!",four_zero_four:"404",you_got_lost:"Oeps!\xA0Je bent verdwaald!",go_home:"Ga naar home",test_mail_conf:"E-mailconfiguratie testen",send_mail_successfully:"Mail is succesvol verzonden",setting_updated:"Instelling succesvol bijgewerkt",select_state:"Selecteer staat",select_country:"Selecteer land",select_city:"Selecteer stad",street_1:"straat 1",street_2:"Straat # 2",action_failed:"Actie: mislukt",retry:"Retr",choose_note:"Kies notitie",no_note_found:"Geen notitie gevonden",insert_note:"Notitie invoegen"},op={select_year:"Selecteer jaar",cards:{due_amount:"Openstaand bedrag",customers:"Klanten",invoices:"Facturen",estimates:"Offertes"},chart_info:{total_sales:"Verkoop",total_receipts:"Inkomsten",total_expense:"Uitgaven",net_income:"Netto inkomen",year:"Selecteer jaar"},monthly_chart:{title:"Verkoop en kosten"},recent_invoices_card:{title:"Openstaande facturen",due_on:"Openstaand op",customer:"Klant",amount_due:"Openstaand bedrag",actions:"Acties",view_all:"Toon alles"},recent_estimate_card:{title:"Recente offertes",date:"Datum",customer:"Klant",amount_due:"Openstaand bedrag",actions:"Acties",view_all:"Toon alles"}},rp={name:"Naam",description:"Omschrijving",percent:"Procent",compound_tax:"Verbinding Ta"},dp={search:"Zoeken...",customers:"Klanten",users:"Gebruikers",no_results_found:"Geen zoekresultaten"},lp={title:"Klanten",add_customer:"Klant toevoegen",contacts_list:"Klantenlijst",name:"Naam",mail:"Mail | Mails",statement:"Verklaring",display_name:"Weergavenaam",primary_contact_name:"Naam primaire contactpersoon",contact_name:"Contactnaam",amount_due:"Openstaand bedrag",email:"E-mail",address:"Adres",phone:"Telefoon",website:"Website",overview:"Overzicht",enable_portal:"Activeer Portaal",country:"Land",state:"Provincie",city:"Stad",zip_code:"Postcode",added_on:"Toegevoegd",action:"Actie",password:"Wachtwoord",street_number:"Huisnummer",primary_currency:"Primaire valuta",description:"Omschrijving",add_new_customer:"Nieuwe klant toevoegen",save_customer:"Klant opslaan",update_customer:"Klant bijwerken",customer:"Klant |\xA0Klanten",new_customer:"Nieuwe klant",edit_customer:"Klant bewerken",basic_info:"Basis informatie",billing_address:"factuur adres",shipping_address:"Verzendingsadres",copy_billing_address:"Kopi\xEBren van facturering",no_customers:"Nog geen klanten!",no_customers_found:"Geen klanten gevonden!",no_contact:"No contact",no_contact_name:"No contact name",list_of_customers:"Hier vind je jouw klanten terug.",primary_display_name:"Primaire weergavenaam",select_currency:"Selecteer valuta",select_a_customer:"Selecteer een klant",type_or_click:"Typ of klik om te selecteren",new_transaction:"Nieuwe transactie",no_matching_customers:"Er zijn geen overeenkomende klanten!",phone_number:"Telefoonnummer",create_date:"Aangemaakt op",confirm_delete:"Deze klant en alle gerelateerde facturen, offertes en betalingen worden permanent verwijderd.\xA0|\xA0Deze klanten en alle gerelateerde facturen, offertes en betalingen worden permanent verwijderd.",created_message:"Klant succesvol aangemaakt",updated_message:"Klant succesvol ge\xFCpdatet",deleted_message:"Klant succesvol verwijderd |\xA0Klanten zijn succesvol verwijderd"},cp={title:"Artikelen",items_list:"Lijst met items",name:"Naam",unit:"Eenheid",description:"Omschrijving",added_on:"Toegevoegd",price:"Prijs",date_of_creation:"Datum van creatie",not_selected:"No item selected",action:"Actie",add_item:"Voeg item toe",save_item:"Item opslaan",update_item:"Item bijwerken",item:"Artikel |\xA0Artikelen",add_new_item:"Voeg een nieuw item toe",new_item:"Nieuw item",edit_item:"Item bewerken",no_items:"Nog geen items!",list_of_items:"Hier vind je jouw artikelen terug.",select_a_unit:"selecteer eenheid",taxes:"Belastingen",item_attached_message:"Kan een item dat al in gebruik is niet verwijderen",confirm_delete:"U kunt dit item | niet herstellen\xA0U kunt deze items niet herstellen",created_message:"Item succesvol aangemaakt",updated_message:"Item succesvol bijgewerkt",deleted_message:"Item succesvol verwijderd |\xA0Items zijn verwijderd"},_p={title:"Offertes",estimate:"Offerte |\xA0Offertes",estimates_list:"Lijst met offertes",days:"{dagen} dagen",months:"{months} Maand",years:"{jaar} jaar",all:"Allemaal",paid:"Betaald",unpaid:"Onbetaald",customer:"Klant",ref_no:"Ref Nr.",number:"Aantal",amount_due:"Bedrag",partially_paid:"Gedeeltelijk betaald",total:"Totaal",discount:"Korting",sub_total:"Subtotaal",estimate_number:"Offerte nummer",ref_number:"Referentie nummer",contact:"Contact",add_item:"Voeg een item toe",date:"Datum",due_date:"Opleveringsdatum",expiry_date:"Vervaldatum",status:"Status",add_tax:"Belasting toevoegen",amount:"Bedrag",action:"Actie",notes:"Opmerkingen",tax:"Belasting",estimate_template:"Sjabloon",convert_to_invoice:"Converteren naar factuur",mark_as_sent:"Markeren als verzonden",send_estimate:"Verzend offerte",resend_estimate:"Offerte opnieuw verzenden",record_payment:"Bestaling registreren",add_estimate:"Offerte toevoegen",save_estimate:"Bewaar offerte",confirm_conversion:"Deze offerte wordt gebruikt om een nieuwe factuur te maken.",conversion_message:"Factuur gemaakt",confirm_send_estimate:"Deze offerte wordt via e-mail naar de klant gestuurd",confirm_mark_as_sent:"Deze offerte wordt gemarkeerd als verzonden",confirm_mark_as_accepted:"Deze offerte wordt gemarkeerd als Geaccepteerd",confirm_mark_as_rejected:"Deze offerte wordt gemarkeerd als Afgewezen",no_matching_estimates:"Er zijn geen overeenkomende offertes!",mark_as_sent_successfully:"Offerte gemarkeerd als succesvol verzonden",send_estimate_successfully:"Offerte succesvol verzonden",errors:{required:"Veld is vereist"},accepted:"Geaccepteerd",rejected:"Rejected",sent:"Verzonden",draft:"Concept",declined:"Geweigerd",new_estimate:"Nieuwe offerte",add_new_estimate:"Offerte toevoegen",update_Estimate:"Offerte bijwerken",edit_estimate:"Offerte bewerken",items:"artikelen",Estimate:"Offerte |\xA0Offertes",add_new_tax:"Nieuwe belasting toevoegen",no_estimates:"Nog geen offertes!",list_of_estimates:"Hier vind je jouw offertes terug.",mark_as_rejected:"Markeer als afgewezen",mark_as_accepted:"Markeer als geaccepteerd",marked_as_accepted_message:"Offerte gemarkeerd als geaccepteerd",marked_as_rejected_message:"Offerte gemarkeerd als afgewezen",confirm_delete:"U kunt deze offerte | niet herstellen\xA0U kunt deze offertes niet herstellen",created_message:"Offerte is gemaakt",updated_message:"Offerte succesvol bijgewerkt",deleted_message:"Offerte succesvol verwijderd |\xA0Offertes zijn succesvol verwijderd",something_went_wrong:"Er is iets fout gegaan",item:{title:"Titel van het item",description:"Omschrijving",quantity:"Aantal stuks",price:"Prijs",discount:"Korting",total:"Totaal",total_discount:"Totale korting",sub_total:"Subtotaal",tax:"Belasting",amount:"Bedrag",select_an_item:"Typ of klik om een item te selecteren",type_item_description:"Type Item Beschrijving (optioneel)"}},up={title:"Facturen",invoices_list:"Facturenlijst",days:"{dagen} dagen",months:"{months} Maand",years:"{jaar} jaar",all:"Allemaal",paid:"Betaald",unpaid:"Onbetaald",viewed:"Viewed",overdue:"Overdue",completed:"Completed",customer:"Klant",paid_status:"Betaling",ref_no:"REF NR.",number:"AANTAL",amount_due:"BEDRAG",partially_paid:"Gedeeltelijk betaald",total:"Totaal",discount:"Korting",sub_total:"Subtotaal",invoice:"Factuur |\xA0Facturen",invoice_number:"Factuurnummer",ref_number:"Referentie nummer",contact:"Contact",add_item:"Voeg een item toe",date:"Datum",due_date:"Opleveringsdatum",status:"Status",add_tax:"Belasting toevoegen",amount:"Bedrag",action:"Actie",notes:"Opmerkingen",view:"Bekijken",send_invoice:"Factuur verzenden",resend_invoice:"Factuur opnieuw verzenden",invoice_template:"Factuursjabloon",template:"Sjabloon",mark_as_sent:"Markeer als verzonden",confirm_send_invoice:"Deze factuur wordt via e-mail naar de klant gestuurd",invoice_mark_as_sent:"Deze factuur wordt gemarkeerd als verzonden",confirm_send:"Deze factuur wordt via e-mail naar de klant gestuurd",invoice_date:"Factuur datum",record_payment:"Bestaling registreren",add_new_invoice:"Nieuwe factuur toevoegen",update_expense:"Onkosten bijwerken",edit_invoice:"Factuur bewerken",new_invoice:"Nieuwe factuur",save_invoice:"Factuur opslaan",update_invoice:"Factuur bijwerken",add_new_tax:"Nieuwe belasting toevoegen",no_invoices:"Nog geen facturen!",list_of_invoices:"Hier vind je jouw facturen terug.",select_invoice:"Selecteer Factuur",no_matching_invoices:"Er zijn geen overeenkomende facturen!",mark_as_sent_successfully:"Factuur gemarkeerd als succesvol verzonden",invoice_sent_successfully:"Factuur succesvol verzonden",cloned_successfully:"Factuur succesvol gekloond",clone_invoice:"Factuur klonen",confirm_clone:"Deze factuur wordt gekloond in een nieuwe factuur",item:{title:"Titel van het item",description:"Omschrijving",quantity:"Aantal stuks",price:"Prijs",discount:"Korting",total:"Totaal",total_discount:"Totale korting",sub_total:"Subtotaal",tax:"Belasting",amount:"Bedrag",select_an_item:"Typ of klik om een item te selecteren",type_item_description:"Type Item Beschrijving (optioneel)"},confirm_delete:"Deze factuur wordt permanent verwijderd |\xA0Deze facturen worden permanent verwijderd",created_message:"Factuur succesvol aangemaakt",updated_message:"Factuur succesvol bijgewerkt",deleted_message:"Factuur succesvol verwijderd |\xA0Facturen succesvol verwijderd",marked_as_sent_message:"Factuur gemarkeerd als succesvol verzonden",something_went_wrong:"Er is iets fout gegaan",invalid_due_amount_message:"Het totale factuurbedrag mag niet lager zijn dan het totale betaalde bedrag voor deze factuur.\xA0Werk de factuur bij of verwijder de bijbehorende betalingen om door te gaan."},mp={title:"Betalingen",payments_list:"Betalingslijst",record_payment:"Bestaling registreren",customer:"Klant",date:"Datum",amount:"Bedrag",action:"Actie",payment_number:"Betalingsnummer",payment_mode:"Betaalmethode",invoice:"Factuur",note:"Notitie",add_payment:"Betaling toevoegen",new_payment:"Nieuwe betaling",edit_payment:"Betaling bewerken",view_payment:"Bekijk betaling",add_new_payment:"Nieuwe betaling toevoegen",send_payment_receipt:"Betaalbewijs verzenden",send_payment:"Verstuur betaling",save_payment:"Betaling opslaan",update_payment:"Betaling bijwerken",payment:"Betaling |\xA0Betalingen",no_payments:"Nog geen betalingen!",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"Er zijn geen overeenkomende betalingen!",list_of_payments:"Hier vind je jouw betalingen terug.",select_payment_mode:"Selecteer betalingswijze",confirm_mark_as_sent:"Deze offerte wordt gemarkeerd als verzonden",confirm_send_payment:"Deze betaling wordt via e-mail naar de klant gestuurd",send_payment_successfully:"Betaling succesvol verzonden",something_went_wrong:"Er is iets fout gegaan",confirm_delete:"Deze betaling wordt permanent verwijderd |\xA0Deze betalingen worden permanent verwijderd",created_message:"De betaling is succesvol aangemaakt",updated_message:"Betaling succesvol bijgewerkt",deleted_message:"Betaling succesvol verwijderd |\xA0Betalingen zijn verwijderd",invalid_amount_message:"Het bedrag van de betaling is ongeldig"},pp={title:"Uitgaven",expenses_list:"Uitgavenlijst",select_a_customer:"Selecteer een klant",expense_title:"Titel",customer:"Klant",contact:"Contact",category:"Categorie",from_date:"Van datum",to_date:"Tot datum",expense_date:"Datum",description:"Omschrijving",receipt:"Bon",amount:"Bedrag",action:"Actie",not_selected:"Not selected",note:"Notitie",category_id:"Categorie ID",date:"Uitgavendatum",add_expense:"Kosten toevoegen",add_new_expense:"Kosten toevoegen",save_expense:"Kosten opslaan",update_expense:"Onkosten bijwerken",download_receipt:"Ontvangstbewijs downloaden",edit_expense:"Uitgaven bewerken",new_expense:"Kosten toevoegen",expense:"Uitgaven |\xA0Uitgaven",no_expenses:"Nog geen kosten!",list_of_expenses:"Hier vind je jouw uitgaven terug.",confirm_delete:"Deze uitgave wordt permanent verwijderd | Deze kosten worden permanent verwijderd",created_message:"Kosten succesvol gemaakt",updated_message:"Kosten succesvol bijgewerkt",deleted_message:"Kosten succesvol verwijderd |\xA0Uitgaven zijn verwijderd",categories:{categories_list:"Categorie\xEBnlijst",title:"Titel",name:"Naam",description:"Omschrijving",amount:"Bedrag",actions:"Acties",add_category:"categorie toevoegen",new_category:"Nieuwe categorie",category:"Categorie |\xA0Categorie\xEBn",select_a_category:"Selecteer een categorie"}},gp={email:"E-mail",password:"Wachtwoord",forgot_password:"Wachtwoord vergeten?",or_signIn_with:"of Log in met",login:"Log in",register:"Registreren",reset_password:"Wachtwoord opnieuw instellen",password_reset_successfully:"Wachtwoord opnieuw ingesteld",enter_email:"Voer email in",enter_password:"Voer wachtwoord in",retype_password:"Geef nogmaals het wachtwoord"},fp={title:"Gebruikers",users_list:"Gebruikerslijst",name:"Naam",description:"Omschrijving",added_on:"Toegevoegd",date_of_creation:"Datum van creatie",action:"Actie",add_user:"Gebruiker toevoegen",save_user:"Gebruiker opslaan",update_user:"Gebruiker bijwerken",user:"Gebruiker | Gebruikers",add_new_user:"Nieuwe gebruiker toevoegen",new_user:"Nieuwe gebruiker",edit_user:"Gebruiker bewerken",no_users:"Nog geen gebruikers!",list_of_users:"Deze sectie zal de lijst met gebruikers bevatten.",email:"E-mail",phone:"Telefoon",password:"Wachtwoord",user_attached_message:"Kan een item dat al in gebruik is niet verwijderen",confirm_delete:"Je kunt deze gebruiker later niet herstellen | Je kunt deze gebruikers later niet herstellen",created_message:"Gebruiker succesvol aangemaakt",updated_message:"Gebruiker met succes bijgewerkt",deleted_message:"Gebruiker succesvol verwijderd | Gebruikers succesvol verwijderd"},hp={title:"Verslag doen van",from_date:"Van datum",to_date:"Tot datum",status:"Status",paid:"Betaald",unpaid:"Onbetaald",download_pdf:"Download PDF",view_pdf:"Bekijk PDF",update_report:"Rapport bijwerken",report:"Verslag |\xA0Rapporten",profit_loss:{profit_loss:"Verlies",to_date:"Tot datum",from_date:"Van datum",date_range:"Selecteer Datumbereik"},sales:{sales:"Verkoop",date_range:"Selecteer datumbereik",to_date:"Tot datum",from_date:"Van datum",report_type:"Rapporttype"},taxes:{taxes:"Belastingen",to_date:"Tot datum",from_date:"Van datum",date_range:"Selecteer Datumbereik"},errors:{required:"Veld is vereist"},invoices:{invoice:"Factuur",invoice_date:"Factuur datum",due_date:"Opleveringsdatum",amount:"Bedrag",contact_name:"Contactnaam",status:"Status"},estimates:{estimate:"Offerte",estimate_date:"Offerte Datum",due_date:"Opleveringsdatum",estimate_number:"Offerte nummer",ref_number:"Referentie nummer",amount:"Bedrag",contact_name:"Contactnaam",status:"Status"},expenses:{expenses:"Uitgaven",category:"Categorie",date:"Datum",amount:"Bedrag",to_date:"Tot datum",from_date:"Van datum",date_range:"Selecteer Datumbereik"}},vp={menu_title:{account_settings:"Account instellingen",company_information:"Bedrijfsinformatie",customization:"Aanpassen",preferences:"Voorkeuren",notifications:"Kennisgevingen",tax_types:"Belastingtypen",expense_category:"Onkostencategorie\xEBn",update_app:"App bijwerken",backup:"Back-up",file_disk:"Bestandsopslag",custom_fields:"Aangepaste velden",payment_modes:"Betaalmethodes",notes:"Opmerkingen"},title:"Instellingen",setting:"Instellingen |\xA0Instellingen",general:"Algemeen",language:"Taal",primary_currency:"Primaire valuta",timezone:"Tijdzone",date_format:"Datumnotatie",currencies:{title:"Valuta's",currency:"Valuta |\xA0Valuta's",currencies_list:"Lijst van valuta's",select_currency:"selecteer valuta",name:"Naam",code:"Code",symbol:"Symbool",precision:"Precisie",thousand_separator:"Duizend scheidingsteken",decimal_separator:"Decimaalscheidingsteken",position:"Positie",position_of_symbol:"Positie van symbool",right:"Rechtsaf",left:"Links",action:"Actie",add_currency:"Valuta toevoegen"},mail:{host:"Mail host",port:"Mail Port",driver:"Mail-stuurprogramma",secret:"Geheim",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domein",mailgun_endpoint:"Mailgun-eindpunt",ses_secret:"SES Secret",ses_key:"SES-sleutel",password:"Mail wachtwoord",username:"Mail gebruikersnaam",mail_config:"E-mailconfiguratie",from_name:"Van Mail Name",from_mail:"Van e-mailadres",encryption:"E-mailversleuteling",mail_config_desc:"Hieronder vindt u het formulier voor het configureren van het e-mailstuurprogramma voor het verzenden van e-mails vanuit de app.\xA0U kunt ook externe providers zoals Sendgrid, SES enz. Configureren."},pdf:{title:"PDF-instelling",footer_text:"Voettekst",pdf_layout:"PDF indeling"},company_info:{company_info:"Bedrijfsinfo",company_name:"Bedrijfsnaam",company_logo:"Bedrijfslogo",section_description:"Informatie over uw bedrijf die wordt weergegeven op facturen, offertes en andere documenten die door Crater zijn gemaakt.",phone:"Telefoon",country:"Land",state:"Provincie",city:"Stad",address:"Adres",zip:"Postcode",save:"Opslaan",updated_message:"Bedrijfsinformatie succesvol bijgewerkt"},custom_fields:{title:"Aangepaste velden",section_description:"Uw facturen, offertes & betalingsbewijzen aanpassen met uw eigen velden. Gebruik onderstaande velden op het adres format op de Customization instellings pagina.",add_custom_field:"Extra veld toevoegen",edit_custom_field:"Veld wijzigen",field_name:"Veld naam",label:"Label",type:"Type",name:"Naam",required:"Verplicht",placeholder:"Tijdelijke plaatshouder",help_text:"Hulp Text",default_value:"Standaard waarde",prefix:"Voorvoegsel",starting_number:"Starting Number",model:"Model",help_text_description:"Voer tekst in om gebruikers te helpen het doel van dit aangepaste veld te begrijpen.",suffix:"Achtervoegsel",yes:"Ja",no:"Nee",order:"Volgorde",custom_field_confirm_delete:"U kunt dit veld niet herstellen",already_in_use:"Aangepast veld is al in gebruik",deleted_message:"Aangepast veld is succesvol verwijderd",options:"opties",add_option:"Optie toevoegen",add_another_option:"Nog een optie toevoegen",sort_in_alphabetical_order:"Sorteer op alfabetische volgorde",add_options_in_bulk:"Voeg opties toe in bulk",use_predefined_options:"Gebruik voorgedefinieerde opties",select_custom_date:"Selecteer een aangepaste datum",select_relative_date:"Selecteer relatieve datum",ticked_by_default:"Standaard aangevinkt",updated_message:"Aangepast veld is succesvol aangepast",added_message:"Aangepast veld is succesvol toegevoegd"},customization:{customization:"aanpassen",save:"Opslaan",addresses:{title:"Adressen",section_description:"U kunt het factuuradres van de klant en het verzendadres van de klant instellen (alleen weergegeven in PDF).",customer_billing_address:"Factuuradres van klant",customer_shipping_address:"Klant verzendadres",company_address:"bedrijfsadres",insert_fields:"Velden invoegen",contact:"Contact",address:"Adres",display_name:"Weergavenaam",primary_contact_name:"Naam primaire contactpersoon",email:"E-mail",website:"Website",name:"Naam",country:"Land",state:"Provincie",city:"Stad",company_name:"Bedrijfsnaam",address_street_1:"Adres Straat 1",address_street_2:"Adresstraat 2",phone:"Telefoon",zip_code:"Postcode",address_setting_updated:"Adresinstelling is bijgewerkt"},updated_message:"Bedrijfsinformatie succesvol bijgewerkt",invoices:{title:"Facturen",notes:"Opmerkingen",invoice_prefix:"Factuurvoorvoegsel",default_invoice_email_body:"Standaard factuur email text",invoice_settings:"Factuurinstellingen",autogenerate_invoice_number:"Factuurnummer automatisch genereren",autogenerate_invoice_number_desc:"Schakel dit uit als u niet automatisch factuurnummers wilt genereren telkens wanneer u een nieuwe factuur maakt.",enter_invoice_prefix:"Voer het factuurvoorvoegsel in",terms_and_conditions:"Voorwaarden",company_address_format:"Bedrijfsadres format",shipping_address_format:"Verzendadres format",billing_address_format:"Factuuradres format",invoice_settings_updated:"Factuurinstelling succesvol bijgewerkt"},estimates:{title:"Offertes",estimate_prefix:"Voorvoegsel schatten",default_estimate_email_body:"Standaard offerte email text",estimate_settings:"Instellingen schatten",autogenerate_estimate_number:"Automatisch geschat nummer genereren",estimate_setting_description:"Schakel dit uit als u niet automatisch offertesaantallen wilt genereren telkens wanneer u een nieuwe offerte maakt.",enter_estimate_prefix:"Voer het prefixnummer in",estimate_setting_updated:"Instelling Offerte succesvol bijgewerkt",company_address_format:"Bedrijfsadres format",billing_address_format:"Factuuradres Format",shipping_address_format:"Verzendadres format"},payments:{title:"Betalingen",description:"Modes of transaction for payments",payment_prefix:"Betalingsvoorvoegsel",default_payment_email_body:"Default Payment Email Body",payment_settings:"Betalingsinstellingen",autogenerate_payment_number:"Betalingsnummer automatisch genereren",payment_setting_description:"Schakel dit uit als u niet elke keer dat u een nieuwe betaling aanmaakt, automatisch betalingsnummers wilt genereren.",enter_payment_prefix:"Voer het betalingsvoorvoegsel in",payment_setting_updated:"Betalingsinstelling ge\xFCpdatet",payment_modes:"Betaalmethodes",add_payment_mode:"Betaalmodus toevoegen",edit_payment_mode:"Betaalmodus bewerken",mode_name:"Mode naam",payment_mode_added:"Betaalwijze toegevoegd",payment_mode_updated:"Betalingsmodus bijgewerkt",payment_mode_confirm_delete:"U kunt deze betalingsmodus niet herstellen",already_in_use:"De betalingsmodus is al in gebruik",deleted_message:"Betaalwijze succesvol verwijderd",company_address_format:"Bedrijfsadres format",from_customer_address_format:"Van klant adres formaat"},items:{title:"Artikelen",units:"eenheden",add_item_unit:"Itemeenheid toevoegen",edit_item_unit:"Itemeenheid bewerken",unit_name:"Naam eenheid",item_unit_added:"Item Eenheid toegevoegd",item_unit_updated:"Artikeleenheid bijgewerkt",item_unit_confirm_delete:"U kunt dit item niet terughalen",already_in_use:"Item Unit is al in gebruik",deleted_message:"Artikeleenheid succesvol verwijderd"},notes:{title:"Opmerkingen",description:"Bespaar tijd door notities te maken en ze opnieuw te gebruiken op uw facturen, ramingen en betalingen.",notes:"Opmerkingen",type:"Type",add_note:"Notitie toevoegen",add_new_note:"Voeg een nieuwe notitie toe",name:"Naam",edit_note:"Notitie bewerken",note_added:"Notitie toegevoegd",note_updated:"Notitie bijgewerkt",note_confirm_delete:"U kunt deze notitie niet terughalen",already_in_use:"Notitie is reeds in gebruik",deleted_message:"Notitie verwijderd"}},account_settings:{profile_picture:"Profielfoto",name:"Naam",email:"E-mail",password:"Wachtwoord",confirm_password:"bevestig wachtwoord",account_settings:"Account instellingen",save:"Opslaan",section_description:"U kunt uw naam, e-mailadres en wachtwoord bijwerken via onderstaand formulier.",updated_message:"Accountinstellingen succesvol bijgewerkt"},user_profile:{name:"Naam",email:"E-mail",password:"Wachtwoord",confirm_password:"Bevestig wachtwoord"},notification:{title:"Kennisgeving",email:"Stuur meldingen naar",description:"Welke e-mailmeldingen wilt u ontvangen als er iets verandert?",invoice_viewed:"Factuur bekeken",invoice_viewed_desc:"Wanneer uw klant de factuur bekijkt die via het kraterdashboard is verzonden.",estimate_viewed:"Offerte bekeken",estimate_viewed_desc:"Wanneer uw klant de offerte bekijkt die via het kraterdashboard is verzonden.",save:"Opslaan",email_save_message:"E-mail succesvol opgeslagen",please_enter_email:"Voer e-mailadres in"},tax_types:{title:"Belastingtypen",add_tax:"Belasting toevoegen",edit_tax:"Belasting bewerken",description:"U kunt naar believen belastingen toevoegen of verwijderen.\xA0Crater ondersteunt belastingen op individuele items en op de factuur.",add_new_tax:"Nieuwe belasting toevoegen",tax_settings:"Belastinginstellingen",tax_per_item:"Belasting per item",tax_name:"Belastingnaam",compound_tax:"Samengestelde belasting",percent:"Procent",action:"Actie",tax_setting_description:"Schakel dit in als u belastingen wilt toevoegen aan afzonderlijke factuuritems.\xA0Standaard worden belastingen rechtstreeks aan de factuur toegevoegd.",created_message:"Belastingtype is gemaakt",updated_message:"Belastingtype succesvol bijgewerkt",deleted_message:"Belastingtype succesvol verwijderd",confirm_delete:"Dit belastingtype wordt permanent verwijderd",already_in_use:"Belasting al in gebruik"},expense_category:{title:"Onkostencategorie\xEBn",action:"Actie",description:"Categorie\xEBn zijn vereist voor het toevoegen van onkostenposten.\xA0U kunt deze categorie\xEBn naar wens toevoegen of verwijderen.",add_new_category:"Voeg een nieuwe categorie toe",add_category:"categorie toevoegen",edit_category:"Categorie bewerken",category_name:"categorie naam",category_description:"Omschrijving",created_message:"Onkostencategorie succesvol aangemaakt",deleted_message:"Uitgavencategorie is verwijderd",updated_message:"Uitgavencategorie is bijgewerkt",confirm_delete:"U kunt deze uitgavencategorie niet herstellen",already_in_use:"Categorie al in gebruik"},preferences:{currency:"Valuta",default_language:"Standaard taal",time_zone:"Tijdzone",fiscal_year:"Financieel jaar",date_format:"Datumnotatie",discount_setting:"Kortingsinstelling",discount_per_item:"Korting per item",discount_setting_description:"Schakel dit in als u korting wilt toevoegen aan afzonderlijke factuuritems.\xA0Standaard wordt korting rechtstreeks aan de factuur toegevoegd.",save:"Opslaan",preference:"Voorkeur |\xA0Voorkeuren",general_settings:"Standaardvoorkeuren voor het systeem.",updated_message:"Voorkeuren succesvol bijgewerkt",select_language:"Selecteer taal",select_time_zone:"Selecteer Tijdzone",select_date_format:"Selecteer datum/tijdindeling",select_financial_year:"Selecteer financieel ja"},update_app:{title:"App bijwerken",description:"U kunt Crater eenvoudig bijwerken door te controleren op een nieuwe update door op de onderstaande knop te klikken",check_update:"Controleer op updates",avail_update:"Nieuwe update beschikbaar",next_version:"Volgende versie",requirements:"Vereisten",update:"Nu updaten",update_progress:"Update wordt uitgevoerd...",progress_text:"Het duurt maar een paar minuten.\xA0Vernieuw het scherm niet en sluit het venster niet voordat de update is voltooid",update_success:"App is bijgewerkt!\xA0Een ogenblik geduld, uw browservenster wordt automatisch opnieuw geladen.",latest_message:"Geen update beschikbaar!\xA0U gebruikt de nieuwste versie.",current_version:"Huidige versie",download_zip_file:"Download ZIP-bestand",unzipping_package:"Pakket uitpakken",copying_files:"Bestanden kopi\xEBren",running_migrations:"Migraties uitvoeren",finishing_update:"Afwerking Update",update_failed:"Update mislukt",update_failed_text:"Sorry!\xA0Je update is mislukt op: {step} step "},backup:{title:"Backup | Backups",description:"De back-up is een zipfile met alle bestanden in de mappen die je opgeeft samen met een dump van je database",new_backup:"Nieuwe back-up",create_backup:"Backup maken",select_backup_type:"Backup-type selecteren",backup_confirm_delete:"U kunt deze back-up niet terughalen",path:"pad",new_disk:"Nieuwe schijf",created_at:"aangemaakt op",size:"grootte",dropbox:"dropbox",local:"lokaal",healthy:"gezond",amount_of_backups:"aantal back-ups",newest_backups:"nieuwste back-ups",used_storage:"gebruikte opslag",select_disk:"Selecteer Disk",action:"Actie",deleted_message:"Back-up is succesvol verwijderd",created_message:"Back-up successvol gemaakt",invalid_disk_credentials:"Ongeldige inloggegevens voor geselecteerde schijf"},disk:{title:"Bestandsschijf | Bestandsschijven",description:"Standaard gebruikt Crater uw lokale schijf om back-ups, avatars en andere afbeeldingen op te slaan. U kunt indien gewenst meer dan \xE9\xE9n opslaglocatie configureren zoals DigitalOcean, S3 en Dropbox.",created_at:"aangemaakt op",dropbox:"dropbox",name:"Naam",driver:"Stuurprogramma",disk_type:"Type",disk_name:"Naam van de schijf",new_disk:"Nieuwe schijf toevoegen",filesystem_driver:"Filesystem Driver",local_driver:"lokaal besturingsprogramma",local_root:"local Root",public_driver:"Publiek besturingsprogramma",public_root:"Public Root",public_url:"Publieke URL",public_visibility:"Publieke zichtbaarheid",media_driver:"Media stuurprogramma",media_root:"Media Root",aws_driver:"AWS Stuurprogramma",aws_key:"AWS Sleutel",aws_secret:"AWS Secret",aws_region:"AWS Regio",aws_bucket:"AWS Bucket",aws_root:"AWS Root",do_spaces_type:"Do Spaces type",do_spaces_key:"Do Spaces Key",do_spaces_secret:"Do Spaces Secret",do_spaces_region:"Do Spaces Regio",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Dropbox Type",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Key",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Standaard stuurprogramma",is_default:"IS STANDAARD",set_default_disk:"Standaardschijf instellen",success_set_default_disk:"Standaardschijf ingesteld",save_pdf_to_disk:"PDF's opslaan op schijf",disk_setting_description:" Schakel dit in als je een kopie van elke factuur, raming en betalingsbewijs automatisch op je standaard schijf wilt opslaan. Het inschakelen van deze optie zal de laadtijd verminderen wanneer de PDF's worden bekeken.",select_disk:"Selecteer Schijf",disk_settings:"Schijfinstellingen",confirm_delete:"Uw bestaande bestanden en mappen in de opgegeven schijf worden niet be\xEFnvloed, maar uw schijfconfiguratie wordt uit Crater verwijderd",action:"Actie",edit_file_disk:"Bestandsschijf bewerken",success_create:"Schijf toegevoegd",success_update:"Schijf bijgewerkt",error:"Schijf niet toegevoegd",deleted_message:"Bestandsschijf verwijderd",disk_variables_save_successfully:"Schijf geconfigureerd",disk_variables_save_error:"Schijfconfiguratie mislukt.",invalid_disk_credentials:"Ongeldige inloggegevens voor geselecteerde schijf"}},yp={account_info:"Account Informatie",account_info_desc:"Onderstaande gegevens worden gebruikt om het hoofdbeheerdersaccount te maken.\xA0Ook kunt u de gegevens op elk moment wijzigen na inloggen.",name:"Naam",email:"E-mail",password:"Wachtwoord",confirm_password:"bevestig wachtwoord",save_cont:"Opslaan doorgaan",company_info:"Bedrijfsinformatie",company_info_desc:"Deze informatie wordt weergegeven op facturen.\xA0Merk op dat u dit later op de instellingenpagina kunt bewerken.",company_name:"Bedrijfsnaam",company_logo:"Bedrijfslogo",logo_preview:"Logo Voorbeeld",preferences:"Voorkeuren",preferences_desc:"Standaardvoorkeuren voor het systeem.",country:"Land",state:"Provincie",city:"Stad",address:"Adres",street:"Straat1 |\xA0Straat # 2",phone:"Telefoon",zip_code:"Postcode",go_back:"Ga terug",currency:"Valuta",language:"Taal",time_zone:"Tijdzone",fiscal_year:"Financieel jaar",date_format:"Datumnotatie",from_address:"Van adres",username:"Gebruikersnaam",next:"De volgende",continue:"Doorgaan met",skip:"Overslaan",database:{database:"Site-URL en database",connection:"Database verbinding",host:"Database host",port:"Databasepoort",password:"Database wachtwoord",app_url:"App-URL",app_domain:"App Domein",username:"Database gebruikersnaam",db_name:"Database naam",db_path:"Databankpad",desc:"Maak een database op uw server en stel de referenties in via het onderstaande formulier."},permissions:{permissions:"Rechten",permission_confirm_title:"Weet je zeker dat je door wilt gaan?",permission_confirm_desc:"Controle van maprechten is mislukt",permission_desc:"Hieronder vindt u de lijst met mapmachtigingen die vereist zijn om de app te laten werken.\xA0Als de machtigingscontrole mislukt, moet u de mapmachtigingen bijwerken."},mail:{host:"E-mail server",port:"E-mail Poort",driver:"Mail-stuurprogramma",secret:"Geheim",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domein",mailgun_endpoint:"Mailgun-eindpunt",ses_secret:"SES Secret",ses_key:"SES-sleutel",password:"Mail wachtwoord",username:"Mail gebruikersnaam",mail_config:"E-mailconfiguratie",from_name:"Van Mail Name",from_mail:"Van e-mailadres",encryption:"E-mailversleuteling",mail_config_desc:"Hieronder vindt u het formulier voor het configureren van het e-mailstuurprogramma voor het verzenden van e-mails vanuit de app.\xA0U kunt ook externe providers zoals Sendgrid, SES enz. Configureren."},req:{system_req:"systeem vereisten",php_req_version:"PHP (versie {versie} vereist))",check_req:"Controleer vereisten",system_req_desc:"Crater heeft een paar serververeisten.\xA0Zorg ervoor dat uw server de vereiste php-versie heeft en alle onderstaande extensies."},errors:{migrate_failed:"Migreren mislukt",database_variables_save_error:"Kan configuratie niet schrijven naar .env-bestand.\xA0Controleer de bestandsrechten",mail_variables_save_error:"E-mailconfiguratie is mislukt.",connection_failed:"Databaseverbinding mislukt",database_should_be_empty:"Database moet leeg zijn"},success:{mail_variables_save_successfully:"E-mail succesvol geconfigureerd",database_variables_save_successfully:"Database succesvol geconfigureerd."}},bp={invalid_phone:"Ongeldig Telefoonnummer",invalid_url:"Ongeldige URL (bijvoorbeeld: http://www.craterapp.com))",invalid_domain_url:"Ongeldige URL (bijvoorbeeld: craterapp.com))",required:"Veld is verplicht",email_incorrect:"Incorrecte Email.",email_already_taken:"De email is al in gebruik.",email_does_not_exist:"Gebruiker met opgegeven e-mailadres bestaat niet",item_unit_already_taken:"De naam van dit item is al in gebruik",payment_mode_already_taken:"Deze naam voor de betalingsmodus is al in gebruik",send_reset_link:"Stuur resetlink",not_yet:"Nog niet?\xA0Stuur het opnieuw",password_min_length:"Wachtwoord moet {count} tekens bevatten",name_min_length:"Naam moet minimaal {count} letters bevatten.",enter_valid_tax_rate:"Voer een geldig belastingtarief in",numbers_only:"Alleen nummers.",characters_only:"Alleen tekens.",password_incorrect:"Wachtwoorden moeten identiek zijn",password_length:"Wachtwoord moet {count} tekens lang zijn.",qty_must_greater_than_zero:"Hoeveelheid moet groter zijn dan nul.",price_greater_than_zero:"Prijs moet groter zijn dan nul.",payment_greater_than_zero:"De betaling moet hoger zijn dan nul.",payment_greater_than_due_amount:"Ingevoerde betaling is meer dan het openstaande bedrag van deze factuur.",quantity_maxlength:"Het aantal mag niet groter zijn dan 20 cijfers.",price_maxlength:"Prijs mag niet groter zijn dan 20 cijfers.",price_minvalue:"Prijs moet hoger zijn dan 0.",amount_maxlength:"Bedrag mag niet groter zijn dan 20 cijfers.",amount_minvalue:"Bedrag moet groter zijn dan 0.",description_maxlength:"De beschrijving mag niet meer dan 255 tekens bevatten.",subject_maxlength:"Het onderwerp mag niet meer dan 100 tekens bevatten.",message_maxlength:"Bericht mag niet groter zijn dan 255 tekens.",maximum_options_error:"Maximaal {max} opties geselecteerd.\xA0Verwijder eerst een geselecteerde optie om een andere te selecteren.",notes_maxlength:"Notities mogen niet langer zijn dan 255 tekens.",address_maxlength:"Adres mag niet groter zijn dan 255 tekens.",ref_number_maxlength:"Ref-nummer mag niet groter zijn dan 255 tekens.",prefix_maxlength:"Het voorvoegsel mag niet meer dan 5 tekens bevatten.",something_went_wrong:"Er is iets fout gegaan"},kp="Offerte",wp="Offerte nummer",xp="Offerte Datum",zp="Vervaldatum",Sp="Factuur",jp="Factuurnummer",Pp="Factuur datum",Dp="Opleveringsdatum",Cp="Opmerkingen",Ap="Artikelen",Ep="Aantal stuks",Np="Prijs",Tp="Korting",Ip="Bedrag",$p="Subtotaal",Rp="Totaal",Fp="Payment",Mp="Betalingsafschrift",Vp="Betalingsdatum",Bp="Betalingsnummer",Op="Betaalmethode",Lp="Ontvangen bedrag",Up="UITGAVEN RAPPORT",Kp="TOTALE UITGAVEN",qp="WINST & VERLIES RAPPORT",Zp="Sales Customer Report",Wp="Sales Item Report",Hp="Tax Summary Report",Gp="INKOMEN",Yp="NETTO WINST",Jp="Verkooprapport: per klant",Xp="TOTALE VERKOPEN",Qp="Verkooprapport: Per Item",eg="BELASTINGEN RAPPORT",tg="TOTALE BELASTINGEN",ag="Belastingtypen",sg="Uitgaven",ng="Rekening naar,",ig="Verzend naar,",og="Ontvangen van:",rg="Tax";var dg={navigation:np,general:ip,dashboard:op,tax_types:rp,global_search:dp,customers:lp,items:cp,estimates:_p,invoices:up,payments:mp,expenses:pp,login:gp,users:fp,reports:hp,settings:vp,wizard:yp,validation:bp,pdf_estimate_label:kp,pdf_estimate_number:wp,pdf_estimate_date:xp,pdf_estimate_expire_date:zp,pdf_invoice_label:Sp,pdf_invoice_number:jp,pdf_invoice_date:Pp,pdf_invoice_due_date:Dp,pdf_notes:Cp,pdf_items_label:Ap,pdf_quantity_label:Ep,pdf_price_label:Np,pdf_discount_label:Tp,pdf_amount_label:Ip,pdf_subtotal:$p,pdf_total:Rp,pdf_payment_label:Fp,pdf_payment_receipt_label:Mp,pdf_payment_date:Vp,pdf_payment_number:Bp,pdf_payment_mode:Op,pdf_payment_amount_received_label:Lp,pdf_expense_report_label:Up,pdf_total_expenses_label:Kp,pdf_profit_loss_label:qp,pdf_sales_customers_label:Zp,pdf_sales_items_label:Wp,pdf_tax_summery_label:Hp,pdf_income_label:Gp,pdf_net_profit_label:Yp,pdf_customer_sales_report:Jp,pdf_total_sales_label:Xp,pdf_item_sales_label:Qp,pdf_tax_report_label:eg,pdf_total_tax_label:tg,pdf_tax_types_label:ag,pdf_expenses_label:sg,pdf_bill_to:ng,pdf_ship_to:ig,pdf_received_from:og,pdf_tax_label:rg};const lg={dashboard:"\uACC4\uAE30\uBC18",customers:"\uACE0\uAC1D",items:"\uC544\uC774\uD15C",invoices:"\uC1A1\uC7A5",expenses:"\uACBD\uBE44",estimates:"\uACAC\uC801",payments:"\uC9C0\uBD88",reports:"\uBCF4\uACE0\uC11C",settings:"\uC124\uC815",logout:"\uB85C\uADF8 \uC544\uC6C3",users:"\uC0AC\uC6A9\uC790"},cg={add_company:"\uD68C\uC0AC \uCD94\uAC00",view_pdf:"PDF\uBCF4\uAE30",copy_pdf_url:"PDF URL \uBCF5\uC0AC",download_pdf:"PDF \uB2E4\uC6B4\uB85C\uB4DC",save:"\uC800\uC7A5",create:"\uCC3D\uC870\uD558\uB2E4",cancel:"\uCDE8\uC18C",update:"\uCD5C\uC2E0 \uC815\uBCF4",deselect:"\uC120\uD0DD \uCDE8\uC18C",download:"\uB2E4\uC6B4\uB85C\uB4DC",from_date:"\uC2DC\uC791 \uB0A0\uC9DC",to_date:"\uD604\uC7AC\uAE4C\uC9C0",from:"\uC5D0\uC11C",to:"\uC5D0",sort_by:"\uC815\uB82C \uAE30\uC900",ascending:"\uC624\uB984\uCC28\uC21C",descending:"\uB0B4\uB9BC\uCC28\uC21C",subject:"\uC81C\uBAA9",body:"\uBAB8",message:"\uBA54\uC2DC\uC9C0",send:"\uBCF4\uB0B4\uB2E4",go_back:"\uB3CC\uC544 \uAC00\uAE30",back_to_login:"\uB85C\uADF8\uC778\uC73C\uB85C \uB3CC\uC544\uAC00\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?",home:"\uC9D1",filter:"\uD544\uD130",delete:"\uC9C0\uC6B0\uB2E4",edit:"\uD3B8\uC9D1\uD558\uB2E4",view:"\uC804\uB9DD",add_new_item:"\uC0C8 \uD56D\uBAA9 \uCD94\uAC00",clear_all:"\uBAA8\uB450 \uC9C0\uC6B0\uAE30",showing:"\uC804\uC2DC",of:"\uC758",actions:"\uD589\uC704",subtotal:"\uC18C\uACC4",discount:"\uD560\uC778",fixed:"\uACB0\uC815\uB41C",percentage:"\uBC31\uBD84\uC728",tax:"\uC138",total_amount:"\uCD1D\uC561",bill_to:"\uCCAD\uAD6C \uB300\uC0C1",ship_to:"\uBC30\uC1A1\uC9C0",due:"\uC815\uB2F9\uD55C",draft:"\uCD08\uC548",sent:"\uBCF4\uB0C4",all:"\uBAA8\uB450",select_all:"\uBAA8\uB450 \uC120\uD0DD",choose_file:"\uD30C\uC77C\uC744 \uC120\uD0DD\uD558\uB824\uBA74 \uC5EC\uAE30\uB97C \uD074\uB9AD\uD558\uC2ED\uC2DC\uC624",choose_template:"\uD15C\uD50C\uB9BF \uC120\uD0DD",choose:"\uACE0\uB974\uB2E4",remove:"\uC5C6\uC560\uB2E4",powered_by:"\uC81C\uACF5",bytefury:"\uBC14\uC774\uD2B8 \uD4E8\uB9AC",select_a_status:"\uC0C1\uD0DC \uC120\uD0DD",select_a_tax:"\uC138\uAE08 \uC120\uD0DD",search:"\uAC80\uC0C9",are_you_sure:"\uD655\uC2E4\uD569\uB2C8\uAE4C?",list_is_empty:"\uBAA9\uB85D\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4.",no_tax_found:"\uC138\uAE08\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",four_zero_four:"404",you_got_lost:"\uC774\uB7F0! \uB2F9\uC2E0\uC740 \uAE38\uC744 \uC783\uC5C8\uC2B5\uB2C8\uB2E4!",go_home:"\uC9D1\uC5D0\uAC00",test_mail_conf:"\uBA54\uC77C \uAD6C\uC131 \uD14C\uC2A4\uD2B8",send_mail_successfully:"\uBA54\uC77C\uC744 \uC131\uACF5\uC801\uC73C\uB85C \uBCF4\uB0C8\uC2B5\uB2C8\uB2E4.",setting_updated:"\uC124\uC815\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",select_state:"\uC8FC \uC120\uD0DD",select_country:"\uAD6D\uAC00 \uC120\uD0DD",select_city:"\uB3C4\uC2DC \uC120\uD0DD",street_1:"\uAC70\uB9AC 1",street_2:"\uAC70\uB9AC 2",action_failed:"\uC791\uC5C5 \uC2E4\uD328",retry:"\uB2E4\uC2DC \uD574 \uBCF4\uB2E4",choose_note:"\uCC38\uACE0 \uC120\uD0DD",no_note_found:"\uBA54\uBAA8\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",insert_note:"\uBA54\uBAA8 \uC0BD\uC785",copied_pdf_url_clipboard:"PDF URL\uC744 \uD074\uB9BD \uBCF4\uB4DC\uC5D0 \uBCF5\uC0AC\uD588\uC2B5\uB2C8\uB2E4!"},_g={select_year:"\uC5F0\uB3C4 \uC120\uD0DD",cards:{due_amount:"\uC9C0\uBD88\uC561",customers:"\uACE0\uAC1D",invoices:"\uC1A1\uC7A5",estimates:"\uACAC\uC801"},chart_info:{total_sales:"\uB9E4\uC0C1",total_receipts:"\uC601\uC218\uC99D",total_expense:"\uACBD\uBE44",net_income:"\uC21C\uC774\uC775",year:"\uC5F0\uB3C4 \uC120\uD0DD"},monthly_chart:{title:"\uB9E4\uC0C1"},recent_invoices_card:{title:"\uB9CC\uAE30 \uC1A1\uC7A5",due_on:"\uAE30\uD55C",customer:"\uACE0\uAC1D",amount_due:"\uC9C0\uBD88\uC561",actions:"\uD589\uC704",view_all:"\uBAA8\uB450\uBCF4\uAE30"},recent_estimate_card:{title:"\uCD5C\uADFC \uACAC\uC801",date:"\uB370\uC774\uD2B8",customer:"\uACE0\uAC1D",amount_due:"\uC9C0\uBD88\uC561",actions:"\uD589\uC704",view_all:"\uBAA8\uB450\uBCF4\uAE30"}},ug={name:"\uC774\uB984",description:"\uAE30\uC220",percent:"\uD37C\uC13C\uD2B8",compound_tax:"\uBCF5\uD569 \uC138"},mg={search:"\uAC80\uC0C9...",customers:"\uACE0\uAC1D",users:"\uC0AC\uC6A9\uC790",no_results_found:"\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4"},pg={title:"\uACE0\uAC1D",add_customer:"\uACE0\uAC1D \uCD94\uAC00",contacts_list:"\uACE0\uAC1D \uBAA9\uB85D",name:"\uC774\uB984",mail:"\uBA54\uC77C | \uBA54\uC77C",statement:"\uC131\uBA85\uC11C",display_name:"\uC774\uB984 \uD45C\uC2DC\uD558\uAE30",primary_contact_name:"\uAE30\uBCF8 \uC5F0\uB77D\uCC98 \uC774\uB984",contact_name:"\uB2F4\uB2F9\uC790 \uC774\uB984",amount_due:"\uC9C0\uBD88\uC561",email:"\uC774\uBA54\uC77C",address:"\uC8FC\uC18C",phone:"\uC804\uD654",website:"\uC6F9 \uC0AC\uC774\uD2B8",overview:"\uAC1C\uC694",enable_portal:"\uD3EC\uD138 \uD65C\uC131\uD654",country:"\uAD6D\uAC00",state:"\uC0C1\uD0DC",city:"\uC2DC\uD2F0",zip_code:"\uC6B0\uD3B8 \uBC88\uD638",added_on:"\uCD94\uAC00\uB428",action:"\uB3D9\uC791",password:"\uC554\uD638",street_number:"\uBC88\uC9C0",primary_currency:"\uAE30\uBCF8 \uD1B5\uD654",description:"\uAE30\uC220",add_new_customer:"\uC2E0\uADDC \uACE0\uAC1D \uCD94\uAC00",save_customer:"\uACE0\uAC1D \uC800\uC7A5",update_customer:"\uACE0\uAC1D \uC5C5\uB370\uC774\uD2B8",customer:"\uACE0\uAC1D | \uACE0\uAC1D",new_customer:"\uC2E0\uADDC \uACE0\uAC1D",edit_customer:"\uACE0\uAC1D \uD3B8\uC9D1",basic_info:"\uAE30\uBCF8 \uC815\uBCF4",billing_address:"\uCCAD\uAD6C \uC9C0 \uC8FC\uC18C",shipping_address:"\uBC30\uC1A1 \uC8FC\uC18C",copy_billing_address:"\uACB0\uC81C\uC5D0\uC11C \uBCF5\uC0AC",no_customers:"\uC544\uC9C1 \uACE0\uAC1D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",no_customers_found:"\uACE0\uAC1D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",no_contact:"\uC5F0\uB77D\uCC98 \uC5C6\uC74C",no_contact_name:"\uC5F0\uB77D\uCC98 \uC774\uB984\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",list_of_customers:"\uC774 \uC139\uC158\uC5D0\uB294 \uACE0\uAC1D \uBAA9\uB85D\uC774 \uD3EC\uD568\uB429\uB2C8\uB2E4.",primary_display_name:"\uAE30\uBCF8 \uD45C\uC2DC \uC774\uB984",select_currency:"\uD1B5\uD654 \uC120\uD0DD",select_a_customer:"\uACE0\uAC1D \uC120\uD0DD",type_or_click:"\uC785\uB825\uD558\uAC70\uB098 \uD074\uB9AD\uD558\uC5EC \uC120\uD0DD",new_transaction:"\uC0C8\uB85C\uC6B4 \uAC70\uB798",no_matching_customers:"\uC77C\uCE58\uD558\uB294 \uACE0\uAC1D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",phone_number:"\uC804\uD654 \uBC88\uD638",create_date:"\uB0A0\uC9DC \uC0DD\uC131",confirm_delete:"\uC774 \uACE0\uAC1D\uACFC \uBAA8\uB4E0 \uAD00\uB828 \uC1A1\uC7A5, \uACAC\uC801 \uBC0F \uC9C0\uBD88\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. | \uC774\uB7EC\uD55C \uACE0\uAC1D \uBC0F \uBAA8\uB4E0 \uAD00\uB828 \uCCAD\uAD6C\uC11C, \uACAC\uC801 \uBC0F \uC9C0\uBD88\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",created_message:"\uACE0\uAC1D\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uACE0\uAC1D\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uD588\uC2B5\uB2C8\uB2E4.",deleted_message:"\uACE0\uAC1D\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4. | \uACE0\uAC1D\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},gg={title:"\uC544\uC774\uD15C",items_list:"\uD488\uBAA9 \uBAA9\uB85D",name:"\uC774\uB984",unit:"\uB2E8\uC704",description:"\uAE30\uC220",added_on:"\uCD94\uAC00\uB428",price:"\uAC00\uACA9",date_of_creation:"\uC0DD\uC131 \uC77C",not_selected:"\uC120\uD0DD\uD55C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",action:"\uB3D9\uC791",add_item:"\uC544\uC774\uD15C \uCD94\uAC00",save_item:"\uD56D\uBAA9 \uC800\uC7A5",update_item:"\uD56D\uBAA9 \uC5C5\uB370\uC774\uD2B8",item:"\uD56D\uBAA9 | \uC544\uC774\uD15C",add_new_item:"\uC0C8 \uD56D\uBAA9 \uCD94\uAC00",new_item:"\uC0C8\uB85C\uC6B4 \uBB3C\uD488",edit_item:"\uD56D\uBAA9 \uD3B8\uC9D1",no_items:"\uC544\uC9C1 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",list_of_items:"\uC774 \uC139\uC158\uC5D0\uB294 \uD56D\uBAA9 \uBAA9\uB85D\uC774 \uD3EC\uD568\uB429\uB2C8\uB2E4.",select_a_unit:"\uB2E8\uC704 \uC120\uD0DD",taxes:"\uAD6C\uC2E4",item_attached_message:"\uC774\uBBF8 \uC0AC\uC6A9\uC911\uC778 \uD56D\uBAA9\uC740 \uC0AD\uC81C\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",confirm_delete:"\uC774 \uD56D\uBAA9\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. | \uC774 \uD56D\uBAA9\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",created_message:"\uD56D\uBAA9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uD56D\uBAA9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uD56D\uBAA9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4. | \uD56D\uBAA9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},fg={title:"\uACAC\uC801",estimate:"\uACAC\uC801 | \uACAC\uC801",estimates_list:"\uACAC\uC801 \uBAA9\uB85D",days:"{days} \uC77C",months:"{months} \uAC1C\uC6D4",years:"{years} \uB144",all:"\uBAA8\uB450",paid:"\uC720\uB8CC",unpaid:"\uBBF8\uC9C0\uAE09",customer:"\uACE0\uAC1D",ref_no:"\uCC38\uC870 \uBC88\uD638.",number:"\uBC88\uD638",amount_due:"\uC9C0\uBD88\uC561",partially_paid:"\uBD80\uBD84 \uC9C0\uBD88",total:"\uD569\uACC4",discount:"\uD560\uC778",sub_total:"\uC18C\uACC4",estimate_number:"\uACAC\uC801 \uBC88\uD638",ref_number:"\uCC38\uC870 \uBC88\uD638",contact:"\uC811\uCD09",add_item:"\uD56D\uBAA9 \uCD94\uAC00",date:"\uB370\uC774\uD2B8",due_date:"\uB9C8\uAC10\uC77C",expiry_date:"\uB9CC\uB8CC\uC77C",status:"\uC0C1\uD0DC",add_tax:"\uC138\uAE08 \uCD94\uAC00",amount:"\uC591",action:"\uB3D9\uC791",notes:"\uB178\uD2B8",tax:"\uC138",estimate_template:"\uC8FC\uD615",convert_to_invoice:"\uC1A1\uC7A5\uC73C\uB85C \uBCC0\uD658",mark_as_sent:"\uBCF4\uB0B8 \uAC83\uC73C\uB85C \uD45C\uC2DC",send_estimate:"\uACAC\uC801 \uBCF4\uB0B4\uAE30",resend_estimate:"\uACAC\uC801 \uC7AC\uC804\uC1A1",record_payment:"\uAE30\uB85D \uC9C0\uBD88",add_estimate:"\uACAC\uC801 \uCD94\uAC00",save_estimate:"\uACAC\uC801 \uC800\uC7A5",confirm_conversion:"\uC774 \uACAC\uC801\uC740 \uC0C8 \uC778\uBCF4\uC774\uC2A4\uB97C \uB9CC\uB4DC\uB294 \uB370 \uC0AC\uC6A9\uB429\uB2C8\uB2E4.",conversion_message:"\uC778\uBCF4\uC774\uC2A4\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",confirm_send_estimate:"\uC774 \uACAC\uC801\uC740 \uC774\uBA54\uC77C\uC744 \uD1B5\uD574 \uACE0\uAC1D\uC5D0\uAC8C \uC804\uC1A1\uB429\uB2C8\uB2E4.",confirm_mark_as_sent:"\uC774 \uACAC\uC801\uC740 \uC804\uC1A1 \uB41C \uAC83\uC73C\uB85C \uD45C\uC2DC\uB429\uB2C8\uB2E4.",confirm_mark_as_accepted:"\uC774 \uACAC\uC801\uC740 \uC218\uB77D \uB428\uC73C\uB85C \uD45C\uC2DC\uB429\uB2C8\uB2E4.",confirm_mark_as_rejected:"\uC774 \uACAC\uC801\uC740 \uAC70\uBD80 \uB428\uC73C\uB85C \uD45C\uC2DC\uB429\uB2C8\uB2E4.",no_matching_estimates:"\uC77C\uCE58\uD558\uB294 \uACAC\uC801\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",mark_as_sent_successfully:"\uC131\uACF5\uC801\uC73C\uB85C \uC804\uC1A1 \uB41C \uAC83\uC73C\uB85C \uD45C\uC2DC\uB41C \uACAC\uC801",send_estimate_successfully:"\uACAC\uC801\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC804\uC1A1\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",errors:{required:"\uD544\uB4DC\uB294 \uD544\uC218\uC785\uB2C8\uB2E4"},accepted:"\uC218\uB77D \uB428",rejected:"\uAC70\uBD80 \uB428",sent:"\uBCF4\uB0C4",draft:"\uCD08\uC548",declined:"\uAC70\uBD80 \uB428",new_estimate:"\uC0C8\uB85C\uC6B4 \uACAC\uC801",add_new_estimate:"\uC0C8\uB85C\uC6B4 \uACAC\uC801 \uCD94\uAC00",update_Estimate:"\uACAC\uC801 \uC5C5\uB370\uC774\uD2B8",edit_estimate:"\uACAC\uC801 \uC218\uC815",items:"\uD56D\uBAA9",Estimate:"\uACAC\uC801 | \uACAC\uC801",add_new_tax:"\uC0C8 \uC138\uAE08 \uCD94\uAC00",no_estimates:"\uC544\uC9C1 \uACAC\uC801\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",list_of_estimates:"\uC774 \uC139\uC158\uC5D0\uB294 \uACAC\uC801 \uBAA9\uB85D\uC774 \uD3EC\uD568\uB429\uB2C8\uB2E4.",mark_as_rejected:"\uAC70\uBD80 \uB428\uC73C\uB85C \uD45C\uC2DC",mark_as_accepted:"\uC218\uB77D \uB428\uC73C\uB85C \uD45C\uC2DC",marked_as_accepted_message:"\uC218\uB77D \uB41C \uAC83\uC73C\uB85C \uD45C\uC2DC\uB41C \uACAC\uC801",marked_as_rejected_message:"\uAC70\uBD80 \uB41C \uAC83\uC73C\uB85C \uD45C\uC2DC\uB41C \uACAC\uC801",confirm_delete:"\uC774 \uACAC\uC801\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. | \uC774 \uACAC\uC801\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",created_message:"\uACAC\uC801\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uACAC\uC801\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uC608\uC0C1\uCE58\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4. | \uACAC\uC801\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",something_went_wrong:"\uBB54\uAC00 \uC798\uBABB \uB410\uC5B4",item:{title:"\uD56D\uBAA9 \uC81C\uBAA9",description:"\uAE30\uC220",quantity:"\uC218\uB7C9",price:"\uAC00\uACA9",discount:"\uD560\uC778",total:"\uD569\uACC4",total_discount:"\uCD1D \uD560\uC778",sub_total:"\uC18C\uACC4",tax:"\uC138",amount:"\uC591",select_an_item:"\uD56D\uBAA9\uC744 \uC785\uB825\uD558\uAC70\uB098 \uD074\uB9AD\uD558\uC5EC \uC120\uD0DD",type_item_description:"\uC720\uD615 \uD56D\uBAA9 \uC124\uBA85 (\uC120\uD0DD \uC0AC\uD56D)"}},hg={title:"\uC1A1\uC7A5",invoices_list:"\uC1A1\uC7A5 \uBAA9\uB85D",days:"{days} \uC77C",months:"{months} \uAC1C\uC6D4",years:"{years} \uB144",all:"\uBAA8\uB450",paid:"\uC720\uB8CC",unpaid:"\uBBF8\uC9C0\uAE09",viewed:"\uC870\uD68C",overdue:"\uC5F0\uCCB4",completed:"\uC644\uB8CC",customer:"\uACE0\uAC1D",paid_status:"\uC9C0\uBD88 \uC0C1\uD0DC",ref_no:"\uCC38\uC870 \uBC88\uD638.",number:"\uBC88\uD638",amount_due:"\uC9C0\uBD88\uC561",partially_paid:"\uBD80\uBD84 \uC9C0\uBD88",total:"\uD569\uACC4",discount:"\uD560\uC778",sub_total:"\uC18C\uACC4",invoice:"\uC1A1\uC7A5 | \uC1A1\uC7A5",invoice_number:"\uC1A1\uC7A5 \uBC88\uD638",ref_number:"\uCC38\uC870 \uBC88\uD638",contact:"\uC811\uCD09",add_item:"\uD56D\uBAA9 \uCD94\uAC00",date:"\uB370\uC774\uD2B8",due_date:"\uB9C8\uAC10\uC77C",status:"\uC0C1\uD0DC",add_tax:"\uC138\uAE08 \uCD94\uAC00",amount:"\uC591",action:"\uB3D9\uC791",notes:"\uB178\uD2B8",view:"\uC804\uB9DD",send_invoice:"\uC1A1\uC7A5\uC744 \uBCF4\uB0B4\uB2E4",resend_invoice:"\uC778\uBCF4\uC774\uC2A4 \uC7AC\uC804\uC1A1",invoice_template:"\uC1A1\uC7A5 \uD15C\uD50C\uB9BF",template:"\uC8FC\uD615",mark_as_sent:"\uBCF4\uB0B8 \uAC83\uC73C\uB85C \uD45C\uC2DC",confirm_send_invoice:"\uC774 \uC778\uBCF4\uC774\uC2A4\uB294 \uC774\uBA54\uC77C\uC744 \uD1B5\uD574 \uACE0\uAC1D\uC5D0\uAC8C \uBC1C\uC1A1\uB429\uB2C8\uB2E4.",invoice_mark_as_sent:"\uC774 \uC778\uBCF4\uC774\uC2A4\uB294 \uBCF4\uB0B8 \uAC83\uC73C\uB85C \uD45C\uC2DC\uB429\uB2C8\uB2E4.",confirm_send:"\uC774 \uC778\uBCF4\uC774\uC2A4\uB294 \uC774\uBA54\uC77C\uC744 \uD1B5\uD574 \uACE0\uAC1D\uC5D0\uAC8C \uBC1C\uC1A1\uB429\uB2C8\uB2E4.",invoice_date:"\uC1A1\uC7A5 \uB0A0\uC9DC",record_payment:"\uAE30\uB85D \uC9C0\uBD88",add_new_invoice:"\uC0C8 \uC1A1\uC7A5 \uCD94\uAC00",update_expense:"\uBE44\uC6A9 \uC5C5\uB370\uC774\uD2B8",edit_invoice:"\uC1A1\uC7A5 \uD3B8\uC9D1",new_invoice:"\uC0C8 \uC1A1\uC7A5",save_invoice:"\uC1A1\uC7A5 \uC800\uC7A5",update_invoice:"\uC1A1\uC7A5 \uC5C5\uB370\uC774\uD2B8",add_new_tax:"\uC0C8 \uC138\uAE08 \uCD94\uAC00",no_invoices:"\uC544\uC9C1 \uC778\uBCF4\uC774\uC2A4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4!",list_of_invoices:"\uC774 \uC139\uC158\uC5D0\uB294 \uC1A1\uC7A5 \uBAA9\uB85D\uC774 \uD3EC\uD568\uB429\uB2C8\uB2E4.",select_invoice:"\uC1A1\uC7A5 \uC120\uD0DD",no_matching_invoices:"\uC77C\uCE58\uD558\uB294 \uC1A1\uC7A5\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",mark_as_sent_successfully:"\uC131\uACF5\uC801\uC73C\uB85C \uBC1C\uC1A1 \uB41C \uAC83\uC73C\uB85C \uD45C\uC2DC\uB41C \uC1A1\uC7A5",invoice_sent_successfully:"\uC778\uBCF4\uC774\uC2A4\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC804\uC1A1\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",cloned_successfully:"\uC1A1\uC7A5\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uBCF5\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",clone_invoice:"\uC1A1\uC7A5 \uBCF5\uC81C",confirm_clone:"\uC774 \uC1A1\uC7A5\uC740 \uC0C8 \uC1A1\uC7A5\uC5D0 \uBCF5\uC81C\uB429\uB2C8\uB2E4.",item:{title:"\uD56D\uBAA9 \uC81C\uBAA9",description:"\uAE30\uC220",quantity:"\uC218\uB7C9",price:"\uAC00\uACA9",discount:"\uD560\uC778",total:"\uD569\uACC4",total_discount:"\uCD1D \uD560\uC778",sub_total:"\uC18C\uACC4",tax:"\uC138",amount:"\uC591",select_an_item:"\uD56D\uBAA9\uC744 \uC785\uB825\uD558\uAC70\uB098 \uD074\uB9AD\uD558\uC5EC \uC120\uD0DD",type_item_description:"\uC720\uD615 \uD56D\uBAA9 \uC124\uBA85 (\uC120\uD0DD \uC0AC\uD56D)"},confirm_delete:"\uC774 \uC778\uBCF4\uC774\uC2A4\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. | \uC774\uB7EC\uD55C \uC778\uBCF4\uC774\uC2A4\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",created_message:"\uC1A1\uC7A5\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uC1A1\uC7A5\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uC1A1\uC7A5\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4. | \uC778\uBCF4\uC774\uC2A4\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",marked_as_sent_message:"\uC131\uACF5\uC801\uC73C\uB85C \uBC1C\uC1A1 \uB41C \uAC83\uC73C\uB85C \uD45C\uC2DC\uB41C \uC1A1\uC7A5",something_went_wrong:"\uBB54\uAC00 \uC798\uBABB \uB410\uC5B4",invalid_due_amount_message:"\uCD1D \uC1A1\uC7A5 \uAE08\uC561\uC740\uC774 \uC1A1\uC7A5\uC5D0 \uB300\uD55C \uCD1D \uC9C0\uBD88 \uAE08\uC561\uBCF4\uB2E4 \uC791\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uACC4\uC18D\uD558\uB824\uBA74 \uC778\uBCF4\uC774\uC2A4\uB97C \uC5C5\uB370\uC774\uD2B8\uD558\uAC70\uB098 \uAD00\uB828 \uACB0\uC81C\uB97C \uC0AD\uC81C\uD558\uC138\uC694."},vg={title:"\uC9C0\uBD88",payments_list:"\uC9C0\uBD88 \uBAA9\uB85D",record_payment:"\uAE30\uB85D \uC9C0\uBD88",customer:"\uACE0\uAC1D",date:"\uB370\uC774\uD2B8",amount:"\uC591",action:"\uB3D9\uC791",payment_number:"\uACB0\uC81C \uBC88\uD638",payment_mode:"\uC9C0\uBD88 \uBAA8\uB4DC",invoice:"\uC1A1\uC7A5",note:"\uB178\uD2B8",add_payment:"\uC9C0\uBD88 \uCD94\uAC00",new_payment:"\uC0C8\uB85C\uC6B4 \uC9C0\uBD88",edit_payment:"\uACB0\uC81C \uC218\uC815",view_payment:"\uACB0\uC81C\uBCF4\uAE30",add_new_payment:"\uC0C8 \uC9C0\uBD88 \uCD94\uAC00",send_payment_receipt:"\uACB0\uC81C \uC601\uC218\uC99D \uBCF4\uB0B4\uAE30",send_payment:"\uC9C0\uBD88 \uBCF4\uB0B4\uAE30",save_payment:"\uC9C0\uBD88 \uC800\uC7A5",update_payment:"\uACB0\uC81C \uC5C5\uB370\uC774\uD2B8",payment:"\uC9C0\uBD88 | \uC9C0\uBD88",no_payments:"\uC544\uC9C1 \uACB0\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4!",not_selected:"\uC120\uD0DD\uB418\uC9C0 \uC54A\uC740",no_invoice:"\uC1A1\uC7A5 \uC5C6\uC74C",no_matching_payments:"\uC77C\uCE58\uD558\uB294 \uC9C0\uBD88\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",list_of_payments:"\uC774 \uC139\uC158\uC5D0\uB294 \uC9C0\uBD88 \uBAA9\uB85D\uC774 \uD3EC\uD568\uB429\uB2C8\uB2E4.",select_payment_mode:"\uACB0\uC81C \uBAA8\uB4DC \uC120\uD0DD",confirm_mark_as_sent:"\uC774 \uACAC\uC801\uC740 \uC804\uC1A1 \uB41C \uAC83\uC73C\uB85C \uD45C\uC2DC\uB429\uB2C8\uB2E4.",confirm_send_payment:"\uC774 \uACB0\uC81C\uB294 \uC774\uBA54\uC77C\uC744 \uD1B5\uD574 \uACE0\uAC1D\uC5D0\uAC8C \uC804\uC1A1\uB429\uB2C8\uB2E4.",send_payment_successfully:"\uC9C0\uBD88\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC804\uC1A1\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",something_went_wrong:"\uBB54\uAC00 \uC798\uBABB \uB410\uC5B4",confirm_delete:"\uC774 \uC9C0\uBD88\uAE08\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. | \uC774 \uC9C0\uAE09\uAE08\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",created_message:"\uACB0\uC81C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uACB0\uC81C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uACB0\uC81C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4. | \uACB0\uC81C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",invalid_amount_message:"\uACB0\uC81C \uAE08\uC561\uC774 \uC798\uBABB\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},yg={title:"\uACBD\uBE44",expenses_list:"\uBE44\uC6A9 \uBAA9\uB85D",select_a_customer:"\uACE0\uAC1D \uC120\uD0DD",expense_title:"\uD45C\uC81C",customer:"\uACE0\uAC1D",contact:"\uC811\uCD09",category:"\uBC94\uC8FC",from_date:"\uC2DC\uC791 \uB0A0\uC9DC",to_date:"\uD604\uC7AC\uAE4C\uC9C0",expense_date:"\uB370\uC774\uD2B8",description:"\uAE30\uC220",receipt:"\uC601\uC218\uC99D",amount:"\uC591",action:"\uB3D9\uC791",not_selected:"\uC120\uD0DD\uB418\uC9C0 \uC54A\uC740",note:"\uB178\uD2B8",category_id:"\uCE74\uD14C\uACE0\uB9AC ID",date:"\uB370\uC774\uD2B8",add_expense:"\uBE44\uC6A9 \uCD94\uAC00",add_new_expense:"\uC2E0\uADDC \uBE44\uC6A9 \uCD94\uAC00",save_expense:"\uBE44\uC6A9 \uC808\uAC10",update_expense:"\uBE44\uC6A9 \uC5C5\uB370\uC774\uD2B8",download_receipt:"\uC601\uC218\uC99D \uB2E4\uC6B4\uB85C\uB4DC",edit_expense:"\uBE44\uC6A9 \uD3B8\uC9D1",new_expense:"\uC0C8\uB85C\uC6B4 \uBE44\uC6A9",expense:"\uBE44\uC6A9 | \uACBD\uBE44",no_expenses:"\uC544\uC9C1 \uBE44\uC6A9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4!",list_of_expenses:"\uC774 \uC139\uC158\uC5D0\uB294 \uBE44\uC6A9 \uBAA9\uB85D\uC774 \uD3EC\uD568\uB429\uB2C8\uB2E4.",confirm_delete:"\uC774 \uBE44\uC6A9\uC744 \uD68C\uC218 \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. | \uC774\uB7EC\uD55C \uBE44\uC6A9\uC740 \uD68C\uC218 \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",created_message:"\uBE44\uC6A9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uBE44\uC6A9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uBE44\uC6A9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4. | \uBE44\uC6A9\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",categories:{categories_list:"\uCE74\uD14C\uACE0\uB9AC \uBAA9\uB85D",title:"\uD45C\uC81C",name:"\uC774\uB984",description:"\uAE30\uC220",amount:"\uC591",actions:"\uD589\uC704",add_category:"\uCE74\uD14C\uACE0\uB9AC \uCD94\uAC00",new_category:"\uC0C8 \uBD84\uB958",category:"\uCE74\uD14C\uACE0\uB9AC | \uCE74\uD14C\uACE0\uB9AC",select_a_category:"\uCE74\uD14C\uACE0\uB9AC \uC120\uD0DD"}},bg={email:"\uC774\uBA54\uC77C",password:"\uC554\uD638",forgot_password:"\uBE44\uBC00\uBC88\uD638\uB97C \uC78A\uC73C \uC168\uB098\uC694?",or_signIn_with:"\uB610\uB294 \uB2E4\uC74C\uC73C\uB85C \uB85C\uADF8\uC778",login:"\uB85C\uADF8\uC778",register:"\uB808\uC9C0\uC2A4\uD130",reset_password:"\uC554\uD638\uB97C \uC7AC\uC124\uC815",password_reset_successfully:"\uBE44\uBC00\uBC88\uD638 \uC7AC\uC124\uC815 \uC131\uACF5",enter_email:"\uC774\uBA54\uC77C \uC785\uB825",enter_password:"\uC554\uD638\uB97C \uC785\uB825",retype_password:"\uBE44\uBC00\uBC88\uD638 \uC7AC \uC785\uB825"},kg={title:"\uC0AC\uC6A9\uC790",users_list:"\uC0AC\uC6A9\uC790 \uBAA9\uB85D",name:"\uC774\uB984",description:"\uAE30\uC220",added_on:"\uCD94\uAC00\uB428",date_of_creation:"\uC0DD\uC131 \uC77C",action:"\uB3D9\uC791",add_user:"\uC0AC\uC6A9\uC790 \uCD94\uAC00",save_user:"\uC0AC\uC6A9\uC790 \uC800\uC7A5",update_user:"\uC0AC\uC6A9\uC790 \uC5C5\uB370\uC774\uD2B8",user:"\uC0AC\uC6A9\uC790 | \uC0AC\uC6A9\uC790",add_new_user:"\uC0C8 \uC0AC\uC6A9\uC790 \uCD94\uAC00",new_user:"\uC0C8\uB85C\uC6B4 \uC0AC\uC6A9\uC790",edit_user:"\uC0AC\uC6A9\uC790 \uD3B8\uC9D1",no_users:"\uC544\uC9C1 \uC0AC\uC6A9\uC790\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4!",list_of_users:"\uC774 \uC139\uC158\uC5D0\uB294 \uC0AC\uC6A9\uC790 \uBAA9\uB85D\uC774 \uD3EC\uD568\uB429\uB2C8\uB2E4.",email:"\uC774\uBA54\uC77C",phone:"\uC804\uD654",password:"\uC554\uD638",user_attached_message:"\uC774\uBBF8 \uC0AC\uC6A9\uC911\uC778 \uD56D\uBAA9\uC740 \uC0AD\uC81C\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",confirm_delete:"\uC774 \uC0AC\uC6A9\uC790\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. | \uC774\uB7EC\uD55C \uC0AC\uC6A9\uC790\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",created_message:"\uC0AC\uC6A9\uC790\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uC0AC\uC6A9\uC790\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uC0AC\uC6A9\uC790\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4. | \uC0AC\uC6A9\uC790\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},wg={title:"\uBCF4\uACE0\uC11C",from_date:"\uC2DC\uC791 \uB0A0\uC9DC",to_date:"\uD604\uC7AC\uAE4C\uC9C0",status:"\uC0C1\uD0DC",paid:"\uC720\uB8CC",unpaid:"\uBBF8\uC9C0\uAE09",download_pdf:"PDF \uB2E4\uC6B4\uB85C\uB4DC",view_pdf:"PDF\uBCF4\uAE30",update_report:"\uBCF4\uACE0\uC11C \uC5C5\uB370\uC774\uD2B8",report:"\uC2E0\uACE0 | \uBCF4\uACE0\uC11C",profit_loss:{profit_loss:"\uC774\uC775",to_date:"\uD604\uC7AC\uAE4C\uC9C0",from_date:"\uC2DC\uC791 \uB0A0\uC9DC",date_range:"\uAE30\uAC04 \uC120\uD0DD"},sales:{sales:"\uB9E4\uC0C1",date_range:"\uAE30\uAC04 \uC120\uD0DD",to_date:"\uD604\uC7AC\uAE4C\uC9C0",from_date:"\uC2DC\uC791 \uB0A0\uC9DC",report_type:"\uBCF4\uACE0\uC11C \uC720\uD615"},taxes:{taxes:"\uAD6C\uC2E4",to_date:"\uD604\uC7AC\uAE4C\uC9C0",from_date:"\uC2DC\uC791 \uB0A0\uC9DC",date_range:"\uAE30\uAC04 \uC120\uD0DD"},errors:{required:"\uD544\uB4DC\uB294 \uD544\uC218\uC785\uB2C8\uB2E4"},invoices:{invoice:"\uC1A1\uC7A5",invoice_date:"\uC1A1\uC7A5 \uB0A0\uC9DC",due_date:"\uB9C8\uAC10\uC77C",amount:"\uC591",contact_name:"\uB2F4\uB2F9\uC790 \uC774\uB984",status:"\uC0C1\uD0DC"},estimates:{estimate:"\uACAC\uC801",estimate_date:"\uC608\uC0C1 \uB0A0\uC9DC",due_date:"\uB9C8\uAC10\uC77C",estimate_number:"\uACAC\uC801 \uBC88\uD638",ref_number:"\uCC38\uC870 \uBC88\uD638",amount:"\uC591",contact_name:"\uB2F4\uB2F9\uC790 \uC774\uB984",status:"\uC0C1\uD0DC"},expenses:{expenses:"\uACBD\uBE44",category:"\uBC94\uC8FC",date:"\uB370\uC774\uD2B8",amount:"\uC591",to_date:"\uD604\uC7AC\uAE4C\uC9C0",from_date:"\uC2DC\uC791 \uB0A0\uC9DC",date_range:"\uAE30\uAC04 \uC120\uD0DD"}},xg={menu_title:{account_settings:"\uACC4\uC815 \uC124\uC815",company_information:"\uD68C\uC0AC \uC815\uBCF4",customization:"\uCEE4\uC2A4\uD130\uB9C8\uC774\uC9D5",preferences:"\uD658\uACBD \uC124\uC815",notifications:"\uC54C\uB9BC",tax_types:"\uC138\uAE08 \uC720\uD615",expense_category:"\uBE44\uC6A9 \uBC94\uC8FC",update_app:"\uC571 \uC5C5\uB370\uC774\uD2B8",backup:"\uC9C0\uC6D0",file_disk:"\uD30C\uC77C \uB514\uC2A4\uD06C",custom_fields:"\uC0AC\uC6A9\uC790 \uC815\uC758 \uD544\uB4DC",payment_modes:"\uC9C0\uBD88 \uBAA8\uB4DC",notes:"\uB178\uD2B8"},title:"\uC124\uC815",setting:"\uC124\uC815 | \uC124\uC815",general:"\uC77C\uBC18",language:"\uC5B8\uC5B4",primary_currency:"\uAE30\uBCF8 \uD1B5\uD654",timezone:"\uC2DC\uAC04\uB300",date_format:"\uB0A0\uC9DC \uD615\uC2DD",currencies:{title:"\uD1B5\uD654",currency:"\uD1B5\uD654 | \uD1B5\uD654",currencies_list:"\uD1B5\uD654 \uBAA9\uB85D",select_currency:"\uD1B5\uD654 \uC120\uD0DD",name:"\uC774\uB984",code:"\uC554\uD638",symbol:"\uC0C1\uC9D5",precision:"\uC815\uB3C4",thousand_separator:"\uCC9C \uAD6C\uBD84\uC790",decimal_separator:"\uC18C\uC218\uC810 \uAD6C\uBD84 \uAE30\uD638",position:"\uC704\uCE58",position_of_symbol:"\uAE30\uD638 \uC704\uCE58",right:"\uAD8C\uB9AC",left:"\uC67C\uCABD",action:"\uB3D9\uC791",add_currency:"\uD1B5\uD654 \uCD94\uAC00"},mail:{host:"\uBA54\uC77C \uD638\uC2A4\uD2B8",port:"\uBA54\uC77C \uD3EC\uD2B8",driver:"\uBA54\uC77C \uB4DC\uB77C\uC774\uBC84",secret:"\uBE44\uBC00",mailgun_secret:"Mailgun \uBE44\uBC00",mailgun_domain:"\uB3C4\uBA54\uC778",mailgun_endpoint:"Mailgun \uC5D4\uB4DC \uD3EC\uC778\uD2B8",ses_secret:"SES \uBE44\uBC00",ses_key:"SES \uD0A4",password:"\uBA54\uC77C \uBE44\uBC00\uBC88\uD638",username:"\uBA54\uC77C \uC0AC\uC6A9\uC790 \uC774\uB984",mail_config:"\uBA54\uC77C \uAD6C\uC131",from_name:"\uBA54\uC77C \uC774\uB984\uC5D0\uC11C",from_mail:"\uBA54\uC77C \uC8FC\uC18C\uC5D0\uC11C",encryption:"\uBA54\uC77C \uC554\uD638\uD654",mail_config_desc:"\uB2E4\uC74C\uC740 \uC571\uC5D0\uC11C \uC774\uBA54\uC77C\uC744 \uBCF4\uB0B4\uAE30\uC704\uD55C \uC774\uBA54\uC77C \uB4DC\uB77C\uC774\uBC84 \uAD6C\uC131 \uC591\uC2DD\uC785\uB2C8\uB2E4. Sendgrid, SES \uB4F1\uACFC \uAC19\uC740 \uD0C0\uC0AC \uACF5\uAE09\uC790\uB97C \uAD6C\uC131 \uD560 \uC218\uB3C4 \uC788\uC2B5\uB2C8\uB2E4."},pdf:{title:"PDF \uC124\uC815",footer_text:"\uBC14\uB2E5 \uAE00 \uD14D\uC2A4\uD2B8",pdf_layout:"PDF \uB808\uC774\uC544\uC6C3"},company_info:{company_info:"\uD68C\uC0AC \uC815\uBCF4",company_name:"\uD68C\uC0AC \uC774\uB984",company_logo:"\uD68C\uC0AC \uB85C\uACE0",section_description:"Crater\uC5D0\uC11C \uC0DD\uC131 \uD55C \uC1A1\uC7A5, \uACAC\uC801 \uBC0F \uAE30\uD0C0 \uBB38\uC11C\uC5D0 \uD45C\uC2DC \uB420 \uD68C\uC0AC\uC5D0 \uB300\uD55C \uC815\uBCF4.",phone:"\uC804\uD654",country:"\uAD6D\uAC00",state:"\uC0C1\uD0DC",city:"\uC2DC\uD2F0",address:"\uC8FC\uC18C",zip:"\uC9C0\uD37C",save:"\uC800\uC7A5",updated_message:"\uD68C\uC0AC \uC815\uBCF4\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},custom_fields:{title:"\uC0AC\uC6A9\uC790 \uC815\uC758 \uD544\uB4DC",section_description:"\uC1A1\uC7A5, \uACAC\uC801 \uC0AC\uC6A9\uC790 \uC9C0\uC815",add_custom_field:"\uC0AC\uC6A9\uC790 \uC815\uC758 \uD544\uB4DC \uCD94\uAC00",edit_custom_field:"\uC0AC\uC6A9\uC790 \uC815\uC758 \uD544\uB4DC \uD3B8\uC9D1",field_name:"\uBD84\uC57C \uBA85",label:"\uC0C1\uD45C",type:"\uC720\uD615",name:"\uC774\uB984",required:"\uD544\uC218",placeholder:"\uC790\uB9AC \uD45C\uC2DC \uC790",help_text:"\uB3C4\uC6C0\uB9D0 \uD14D\uC2A4\uD2B8",default_value:"\uAE30\uBCF8\uAC12",prefix:"\uC811\uB450\uC0AC",starting_number:"\uC2DC\uC791 \uBC88\uD638",model:"\uBAA8\uB378",help_text_description:"\uC0AC\uC6A9\uC790\uAC00\uC774 \uC0AC\uC6A9\uC790 \uC815\uC758 \uD544\uB4DC\uC758 \uBAA9\uC801\uC744 \uC774\uD574\uD558\uB294 \uB370 \uB3C4\uC6C0\uC774\uB418\uB294 \uD14D\uC2A4\uD2B8\uB97C \uC785\uB825\uD558\uC2ED\uC2DC\uC624.",suffix:"\uC811\uBBF8\uC0AC",yes:"\uC608",no:"\uC544\uB2C8",order:"\uC8FC\uBB38",custom_field_confirm_delete:"\uC774 \uC0AC\uC6A9\uC790 \uC815\uC758 \uD544\uB4DC\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",already_in_use:"\uB9DE\uCDA4 \uC785\uB825\uB780\uC774 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.",deleted_message:"\uB9DE\uCDA4 \uC785\uB825\uB780\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",options:"\uC635\uC158",add_option:"\uC635\uC158 \uCD94\uAC00",add_another_option:"\uB2E4\uB978 \uC635\uC158 \uCD94\uAC00",sort_in_alphabetical_order:"\uC54C\uD30C\uBCB3\uC21C\uC73C\uB85C \uC815\uB82C",add_options_in_bulk:"\uC77C\uAD04 \uC635\uC158 \uCD94\uAC00",use_predefined_options:"\uBBF8\uB9AC \uC815\uC758 \uB41C \uC635\uC158 \uC0AC\uC6A9",select_custom_date:"\uB9DE\uCDA4 \uB0A0\uC9DC \uC120\uD0DD",select_relative_date:"\uC0C1\uB300 \uB0A0\uC9DC \uC120\uD0DD",ticked_by_default:"\uAE30\uBCF8\uC801\uC73C\uB85C \uC120\uD0DD\uB428",updated_message:"\uB9DE\uCDA4 \uC785\uB825\uB780\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",added_message:"\uB9DE\uCDA4 \uC785\uB825\uB780\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uCD94\uAC00\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},customization:{customization:"\uB9DE\uCDA4\uD654",save:"\uC800\uC7A5",addresses:{title:"\uAD6C\uC560",section_description:"\uACE0\uAC1D \uCCAD\uAD6C \uC8FC\uC18C \uBC0F \uACE0\uAC1D \uBC30\uC1A1 \uC8FC\uC18C \uD615\uC2DD\uC744 \uC124\uC815\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4 (PDF\uB85C\uB9CC \uD45C\uC2DC\uB428).",customer_billing_address:"\uACE0\uAC1D \uCCAD\uAD6C \uC8FC\uC18C",customer_shipping_address:"\uACE0\uAC1D \uBC30\uC1A1 \uC8FC\uC18C",company_address:"\uD68C\uC0AC \uC8FC\uC18C",insert_fields:"\uD544\uB4DC \uC0BD\uC785",contact:"\uC811\uCD09",address:"\uC8FC\uC18C",display_name:"\uC774\uB984 \uD45C\uC2DC\uD558\uAE30",primary_contact_name:"\uAE30\uBCF8 \uC5F0\uB77D\uCC98 \uC774\uB984",email:"\uC774\uBA54\uC77C",website:"\uC6F9 \uC0AC\uC774\uD2B8",name:"\uC774\uB984",country:"\uAD6D\uAC00",state:"\uC0C1\uD0DC",city:"\uC2DC\uD2F0",company_name:"\uD68C\uC0AC \uC774\uB984",address_street_1:"\uC8FC\uC18C \uAC70\uB9AC 1",address_street_2:"\uC8FC\uC18C Street 2",phone:"\uC804\uD654",zip_code:"\uC6B0\uD3B8 \uBC88\uD638",address_setting_updated:"\uC8FC\uC18C \uC124\uC815\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},updated_message:"\uD68C\uC0AC \uC815\uBCF4\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",invoices:{title:"\uC1A1\uC7A5",notes:"\uB178\uD2B8",invoice_prefix:"\uC1A1\uC7A5 \uC811\uB450\uC0AC",default_invoice_email_body:"\uAE30\uBCF8 \uC1A1\uC7A5 \uC774\uBA54\uC77C \uBCF8\uBB38",invoice_settings:"\uC1A1\uC7A5 \uC124\uC815",autogenerate_invoice_number:"\uC1A1\uC7A5 \uBC88\uD638 \uC790\uB3D9 \uC0DD\uC131",autogenerate_invoice_number_desc:"\uC0C8 \uC778\uBCF4\uC774\uC2A4\uB97C \uC0DD\uC131 \uD560 \uB54C\uB9C8\uB2E4 \uC778\uBCF4\uC774\uC2A4 \uBC88\uD638\uB97C \uC790\uB3D9 \uC0DD\uC131\uD558\uC9C0 \uC54A\uC73C\uB824\uBA74\uC774 \uAE30\uB2A5\uC744 \uBE44\uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624.",invoice_email_attachment:"\uC1A1\uC7A5\uC744 \uCCA8\uBD80 \uD30C\uC77C\uB85C \uBCF4\uB0B4\uAE30",invoice_email_attachment_setting_description:"\uC778\uBCF4\uC774\uC2A4\uB97C \uC774\uBA54\uC77C \uCCA8\uBD80 \uD30C\uC77C\uB85C \uBCF4\uB0B4\uB824\uBA74\uC774 \uC635\uC158\uC744 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624. \uC774\uBA54\uC77C\uC758 '\uC778\uBCF4\uC774\uC2A4\uBCF4\uAE30'\uBC84\uD2BC\uC774 \uD65C\uC131\uD654\uB418\uBA74 \uB354 \uC774\uC0C1 \uD45C\uC2DC\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",enter_invoice_prefix:"\uC1A1\uC7A5 \uC811\uB450\uC0AC \uC785\uB825",terms_and_conditions:"\uC774\uC6A9 \uC57D\uAD00",company_address_format:"\uD68C\uC0AC \uC8FC\uC18C \uD615\uC2DD",shipping_address_format:"\uBC30\uC1A1 \uC8FC\uC18C \uD615\uC2DD",billing_address_format:"\uCCAD\uAD6C \uC9C0 \uC8FC\uC18C \uD615\uC2DD",invoice_settings_updated:"\uC778\uBCF4\uC774\uC2A4 \uC124\uC815\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},estimates:{title:"\uACAC\uC801",estimate_prefix:"\uC811\uB450\uC0AC \uCD94\uC815",default_estimate_email_body:"\uAE30\uBCF8 \uC608\uC0C1 \uC774\uBA54\uC77C \uBCF8\uBB38",estimate_settings:"\uC608\uC0C1 \uC124\uC815",autogenerate_estimate_number:"\uACAC\uC801 \uBC88\uD638 \uC790\uB3D9 \uC0DD\uC131",estimate_setting_description:"\uC0C8 \uACAC\uC801\uC744 \uC0DD\uC131 \uD560 \uB54C\uB9C8\uB2E4 \uACAC\uC801 \uBC88\uD638\uB97C \uC790\uB3D9 \uC0DD\uC131\uD558\uC9C0 \uC54A\uC73C\uB824\uBA74\uC774 \uAE30\uB2A5\uC744 \uBE44\uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624.",estimate_email_attachment:"\uACAC\uC801\uC744 \uCCA8\uBD80 \uD30C\uC77C\uB85C \uBCF4\uB0B4\uAE30",estimate_email_attachment_setting_description:"\uACAC\uC801\uC744 \uC774\uBA54\uC77C \uCCA8\uBD80 \uD30C\uC77C\uB85C \uBCF4\uB0B4\uB824\uBA74\uC774 \uC635\uC158\uC744 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624. \uC774\uBA54\uC77C\uC758 '\uC608\uC0C1\uBCF4\uAE30'\uBC84\uD2BC\uC774 \uD65C\uC131\uD654\uB418\uBA74 \uB354 \uC774\uC0C1 \uD45C\uC2DC\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",enter_estimate_prefix:"\uACAC\uC801 \uC811\uB450\uC0AC \uC785\uB825",estimate_setting_updated:"\uC608\uC0C1 \uC124\uC815\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",company_address_format:"\uD68C\uC0AC \uC8FC\uC18C \uD615\uC2DD",billing_address_format:"\uCCAD\uAD6C \uC9C0 \uC8FC\uC18C \uD615\uC2DD",shipping_address_format:"\uBC30\uC1A1 \uC8FC\uC18C \uD615\uC2DD"},payments:{title:"\uC9C0\uBD88",description:"\uC9C0\uBD88\uC744\uC704\uD55C \uAC70\uB798 \uBC29\uC2DD",payment_prefix:"\uC9C0\uBD88 \uC811\uB450\uC0AC",default_payment_email_body:"\uAE30\uBCF8 \uACB0\uC81C \uC774\uBA54\uC77C \uBCF8\uBB38",payment_settings:"\uACB0\uC81C \uC124\uC815",autogenerate_payment_number:"\uACB0\uC81C \uBC88\uD638 \uC790\uB3D9 \uC0DD\uC131",payment_setting_description:"\uC0C8 \uACB0\uC81C\uB97C \uC0DD\uC131 \uD560 \uB54C\uB9C8\uB2E4 \uACB0\uC81C \uBC88\uD638\uB97C \uC790\uB3D9 \uC0DD\uC131\uD558\uC9C0 \uC54A\uC73C\uB824\uBA74\uC774 \uAE30\uB2A5\uC744 \uBE44\uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624.",payment_email_attachment:"\uCCA8\uBD80 \uD30C\uC77C\uB85C \uC9C0\uBD88 \uBCF4\uB0B4\uAE30",payment_email_attachment_setting_description:"\uACB0\uC81C \uC601\uC218\uC99D\uC744 \uC774\uBA54\uC77C \uCCA8\uBD80 \uD30C\uC77C\uB85C \uBCF4\uB0B4\uB824\uBA74\uC774 \uC635\uC158\uC744 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624. \uC774\uBA54\uC77C\uC758 '\uACB0\uC81C\uBCF4\uAE30'\uBC84\uD2BC\uC774 \uD65C\uC131\uD654\uB418\uBA74 \uB354 \uC774\uC0C1 \uD45C\uC2DC\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",enter_payment_prefix:"\uC9C0\uBD88 \uC811\uB450\uC0AC \uC785\uB825",payment_setting_updated:"\uACB0\uC81C \uC124\uC815\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",payment_modes:"\uC9C0\uBD88 \uBAA8\uB4DC",add_payment_mode:"\uACB0\uC81C \uBAA8\uB4DC \uCD94\uAC00",edit_payment_mode:"\uACB0\uC81C \uBAA8\uB4DC \uC218\uC815",mode_name:"\uBAA8\uB4DC \uC774\uB984",payment_mode_added:"\uACB0\uC81C \uBAA8\uB4DC \uCD94\uAC00",payment_mode_updated:"\uACB0\uC81C \uBAA8\uB4DC \uC5C5\uB370\uC774\uD2B8",payment_mode_confirm_delete:"\uC774 \uACB0\uC81C \uBAA8\uB4DC\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",already_in_use:"\uACB0\uC81C \uBAA8\uB4DC\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.",deleted_message:"\uACB0\uC81C \uBAA8\uB4DC\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",company_address_format:"\uD68C\uC0AC \uC8FC\uC18C \uD615\uC2DD",from_customer_address_format:"\uACE0\uAC1D \uC8FC\uC18C \uD615\uC2DD\uC5D0\uC11C"},items:{title:"\uC544\uC774\uD15C",units:"\uB2E8\uC704",add_item_unit:"\uD56D\uBAA9 \uB2E8\uC704 \uCD94\uAC00",edit_item_unit:"\uD56D\uBAA9 \uB2E8\uC704 \uD3B8\uC9D1",unit_name:"\uB2E8\uC704 \uC774\uB984",item_unit_added:"\uD56D\uBAA9 \uB2E8\uC704 \uCD94\uAC00\uB428",item_unit_updated:"\uD56D\uBAA9 \uB2E8\uC704 \uC5C5\uB370\uC774\uD2B8 \uB428",item_unit_confirm_delete:"\uC774 \uD56D\uBAA9 \uB2E8\uC704\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",already_in_use:"\uD56D\uBAA9 \uB2E8\uC704\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.",deleted_message:"\uD56D\uBAA9 \uB2E8\uC704\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},notes:{title:"\uB178\uD2B8",description:"\uBA54\uBAA8\uB97C \uC791\uC131\uD558\uACE0 \uC1A1\uC7A5, \uACAC\uC801\uC11C\uC5D0 \uC7AC\uC0AC\uC6A9\uD558\uC5EC \uC2DC\uAC04 \uC808\uC57D",notes:"\uB178\uD2B8",type:"\uC720\uD615",add_note:"\uBA54\uBAA8\uB97C \uCD94\uAC00",add_new_note:"\uC0C8 \uBA54\uBAA8 \uCD94\uAC00",name:"\uC774\uB984",edit_note:"\uBA54\uBAA8 \uC218\uC815",note_added:"\uBA54\uBAA8\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uCD94\uAC00\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",note_updated:"\uCC38\uACE0 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",note_confirm_delete:"\uC774 \uBA54\uBAA8\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",already_in_use:"\uBA54\uBAA8\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.",deleted_message:"\uBA54\uBAA8\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."}},account_settings:{profile_picture:"\uD504\uB85C\uD544 \uC0AC\uC9C4",name:"\uC774\uB984",email:"\uC774\uBA54\uC77C",password:"\uC554\uD638",confirm_password:"\uBE44\uBC00\uBC88\uD638 \uD655\uC778",account_settings:"\uACC4\uC815 \uC124\uC815",save:"\uC800\uC7A5",section_description:"\uC774\uB984, \uC774\uBA54\uC77C\uC744 \uC5C5\uB370\uC774\uD2B8 \uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",updated_message:"\uACC4\uC815 \uC124\uC815\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},user_profile:{name:"\uC774\uB984",email:"\uC774\uBA54\uC77C",password:"\uC554\uD638",confirm_password:"\uBE44\uBC00\uBC88\uD638 \uD655\uC778"},notification:{title:"\uACF5\uACE0",email:"\uC54C\uB9BC \uBCF4\uB0B4\uAE30",description:"\uBCC0\uACBD \uC0AC\uD56D\uC774\uC788\uC744 \uB54C \uC5B4\uB5A4 \uC774\uBA54\uC77C \uC54C\uB9BC\uC744 \uBC1B\uC73C\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?",invoice_viewed:"\uC1A1\uC7A5 \uC870\uD68C",invoice_viewed_desc:"\uACE0\uAC1D\uC774 \uBD84\uD654\uAD6C \uB300\uC2DC \uBCF4\uB4DC\uB97C \uD1B5\uD574 \uC804\uC1A1 \uB41C \uC1A1\uC7A5\uC744 \uBCFC \uB54C.",estimate_viewed:"\uBCF8 \uACAC\uC801",estimate_viewed_desc:"\uACE0\uAC1D\uC774 \uBD84\uD654\uAD6C \uB300\uC2DC \uBCF4\uB4DC\uB97C \uD1B5\uD574 \uC804\uC1A1 \uB41C \uACAC\uC801\uC744 \uBCFC \uB54C.",save:"\uC800\uC7A5",email_save_message:"\uC774\uBA54\uC77C\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",please_enter_email:"\uC774\uBA54\uC77C\uC744 \uC785\uB825\uD558\uC2ED\uC2DC\uC624"},tax_types:{title:"\uC138\uAE08 \uC720\uD615",add_tax:"\uC138\uAE08 \uCD94\uAC00",edit_tax:"\uC138\uAE08 \uC218\uC815",description:"\uC6D0\uD558\uB294\uB300\uB85C \uC138\uAE08\uC744 \uCD94\uAC00\uD558\uAC70\uB098 \uC81C\uAC70 \uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. Crater\uB294 \uC1A1\uC7A5\uBFD0\uB9CC \uC544\uB2C8\uB77C \uAC1C\uBCC4 \uD488\uBAA9\uC5D0 \uB300\uD55C \uC138\uAE08\uC744 \uC9C0\uC6D0\uD569\uB2C8\uB2E4.",add_new_tax:"\uC0C8 \uC138\uAE08 \uCD94\uAC00",tax_settings:"\uC138\uAE08 \uC124\uC815",tax_per_item:"\uD488\uBAA9 \uB2F9 \uC138\uAE08",tax_name:"\uC138\uAE08 \uC774\uB984",compound_tax:"\uBCF5\uD569 \uC138",percent:"\uD37C\uC13C\uD2B8",action:"\uB3D9\uC791",tax_setting_description:"\uAC1C\uBCC4 \uC1A1\uC7A5 \uD56D\uBAA9\uC5D0 \uC138\uAE08\uC744 \uCD94\uAC00\uD558\uB824\uBA74\uC774 \uC635\uC158\uC744 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624. \uAE30\uBCF8\uC801\uC73C\uB85C \uC138\uAE08\uC740 \uC1A1\uC7A5\uC5D0 \uC9C1\uC811 \uCD94\uAC00\uB429\uB2C8\uB2E4.",created_message:"\uC138\uAE08 \uC720\uD615\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uC138\uAE08 \uC720\uD615\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uC138\uAE08 \uC720\uD615\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",confirm_delete:"\uC774 \uC138\uAE08 \uC720\uD615\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",already_in_use:"\uC138\uAE08\uC774 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4."},expense_category:{title:"\uBE44\uC6A9 \uBC94\uC8FC",action:"\uB3D9\uC791",description:"\uBE44\uC6A9 \uD56D\uBAA9\uC744 \uCD94\uAC00\uD558\uB824\uBA74 \uCE74\uD14C\uACE0\uB9AC\uAC00 \uD544\uC694\uD569\uB2C8\uB2E4. \uAE30\uBCF8 \uC124\uC815\uC5D0 \uB530\uB77C \uC774\uB7EC\uD55C \uBC94\uC8FC\uB97C \uCD94\uAC00\uD558\uAC70\uB098 \uC81C\uAC70 \uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",add_new_category:"\uC0C8 \uCE74\uD14C\uACE0\uB9AC \uCD94\uAC00",add_category:"\uCE74\uD14C\uACE0\uB9AC \uCD94\uAC00",edit_category:"\uCE74\uD14C\uACE0\uB9AC \uC218\uC815",category_name:"\uCE74\uD14C\uACE0\uB9AC \uC774\uB984",category_description:"\uAE30\uC220",created_message:"\uBE44\uC6A9 \uBC94\uC8FC\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",deleted_message:"\uBE44\uC6A9 \uBC94\uC8FC\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",updated_message:"\uBE44\uC6A9 \uBC94\uC8FC\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",confirm_delete:"\uC774 \uBE44\uC6A9 \uBC94\uC8FC\uB97C \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",already_in_use:"\uCE74\uD14C\uACE0\uB9AC\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4."},preferences:{currency:"\uD1B5\uD654",default_language:"\uAE30\uBCF8 \uC5B8\uC5B4",time_zone:"\uC2DC\uAC04\uB300",fiscal_year:"\uD68C\uACC4 \uC5F0\uB3C4",date_format:"\uB0A0\uC9DC \uD615\uC2DD",discount_setting:"\uD560\uC778 \uC124\uC815",discount_per_item:"\uD488\uBAA9\uBCC4 \uD560\uC778",discount_setting_description:"\uAC1C\uBCC4 \uC1A1\uC7A5 \uD56D\uBAA9\uC5D0 \uD560\uC778\uC744 \uCD94\uAC00\uD558\uB824\uBA74\uC774 \uC635\uC158\uC744 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624. \uAE30\uBCF8\uC801\uC73C\uB85C \uD560\uC778\uC740 \uC1A1\uC7A5\uC5D0 \uC9C1\uC811 \uCD94\uAC00\uB429\uB2C8\uB2E4.",save:"\uC800\uC7A5",preference:"\uC120\uD638\uB3C4 | \uD658\uACBD \uC124\uC815",general_settings:"\uC2DC\uC2A4\uD15C\uC758 \uAE30\uBCF8 \uAE30\uBCF8 \uC124\uC815\uC785\uB2C8\uB2E4.",updated_message:"\uD658\uACBD \uC124\uC815\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",select_language:"\uC5B8\uC5B4 \uC120\uD0DD",select_time_zone:"\uC2DC\uAC04\uB300 \uC120\uD0DD",select_date_format:"\uB0A0\uC9DC \uD615\uC2DD \uC120\uD0DD",select_financial_year:"\uD68C\uACC4 \uC5F0\uB3C4 \uC120\uD0DD"},update_app:{title:"\uC571 \uC5C5\uB370\uC774\uD2B8",description:"\uC544\uB798 \uBC84\uD2BC\uC744 \uD074\uB9AD\uD558\uC5EC \uC0C8\uB85C\uC6B4 \uC5C5\uB370\uC774\uD2B8\uB97C \uD655\uC778\uD558\uC5EC Crater\uB97C \uC27D\uAC8C \uC5C5\uB370\uC774\uD2B8 \uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",check_update:"\uC5C5\uB370\uC774\uD2B8 \uD655\uC778",avail_update:"\uC0C8\uB85C\uC6B4 \uC5C5\uB370\uC774\uD2B8 \uC0AC\uC6A9 \uAC00\uB2A5",next_version:"\uB2E4\uC74C \uBC84\uC804",requirements:"\uC694\uAD6C \uC0AC\uD56D",update:"\uC9C0\uAE08 \uC5C5\uB370\uC774\uD2B8",update_progress:"\uC5C5\uB370\uC774\uD2B8 \uC9C4\uD589 \uC911 ...",progress_text:"\uBA87 \uBD84 \uC815\uB3C4 \uAC78\uB9BD\uB2C8\uB2E4. \uC5C5\uB370\uC774\uD2B8\uAC00 \uC644\uB8CC\uB418\uAE30 \uC804\uC5D0 \uD654\uBA74\uC744 \uC0C8\uB85C \uACE0\uCE58\uAC70\uB098 \uCC3D\uC744 \uB2EB\uC9C0 \uB9C8\uC2ED\uC2DC\uC624.",update_success:"\uC571\uC774 \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4! \uBE0C\uB77C\uC6B0\uC800 \uCC3D\uC774 \uC790\uB3D9\uC73C\uB85C \uB2E4\uC2DC\uB85C\uB4DC\uB418\uB294 \uB3D9\uC548 \uC7A0\uC2DC \uAE30\uB2E4\uB824\uC8FC\uC2ED\uC2DC\uC624.",latest_message:"\uC0AC\uC6A9 \uAC00\uB2A5\uD55C \uC5C5\uB370\uC774\uD2B8\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4! \uCD5C\uC2E0 \uBC84\uC804\uC744 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.",current_version:"\uD604\uC7AC \uBC84\uC804",download_zip_file:"ZIP \uD30C\uC77C \uB2E4\uC6B4\uB85C\uB4DC",unzipping_package:"\uD328\uD0A4\uC9C0 \uC555\uCD95 \uD574\uC81C",copying_files:"\uD30C\uC77C \uBCF5\uC0AC",deleting_files:"\uC0AC\uC6A9\uD558\uC9C0 \uC54A\uB294 \uD30C\uC77C \uC0AD\uC81C",running_migrations:"\uB9C8\uC774\uADF8\uB808\uC774\uC158 \uC2E4\uD589",finishing_update:"\uC5C5\uB370\uC774\uD2B8 \uC644\uB8CC",update_failed:"\uC5C5\uB370\uC774\uD2B8\uAC00 \uC2E4\uD328",update_failed_text:"\uC8C4\uC1A1\uD569\uB2C8\uB2E4! \uC5C5\uB370\uC774\uD2B8 \uC2E4\uD328 : {step} \uB2E8\uACC4"},backup:{title:"\uBC31\uC5C5 | \uBC31\uC5C5",description:"\uBC31\uC5C5\uC740 \uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uB364\uD504\uC640 \uD568\uAED8 \uC9C0\uC815\uD55C \uB514\uB809\uD1A0\uB9AC\uC758 \uBAA8\uB4E0 \uD30C\uC77C\uC744 \uD3EC\uD568\uD558\uB294 zip \uD30C\uC77C\uC785\uB2C8\uB2E4.",new_backup:"\uC0C8 \uBC31\uC5C5 \uCD94\uAC00",create_backup:"\uBC31\uC5C5 \uC0DD\uC131",select_backup_type:"\uBC31\uC5C5 \uC720\uD615 \uC120\uD0DD",backup_confirm_delete:"\uC774 \uBC31\uC5C5\uC744 \uBCF5\uAD6C \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",path:"\uD1B5\uB85C",new_disk:"\uC0C8 \uB514\uC2A4\uD06C",created_at:"\uC5D0 \uC0DD\uC131",size:"\uD06C\uAE30",dropbox:"\uB4DC\uB86D \uBC15\uC2A4",local:"\uD604\uC9C0",healthy:"\uAC74\uAC15\uD55C",amount_of_backups:"\uBC31\uC5C5 \uC591",newest_backups:"\uCD5C\uC2E0 \uBC31\uC5C5",used_storage:"\uC911\uACE0 \uC800\uC7A5",select_disk:"\uB514\uC2A4\uD06C \uC120\uD0DD",action:"\uB3D9\uC791",deleted_message:"\uBC31\uC5C5\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",created_message:"\uBC31\uC5C5\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",invalid_disk_credentials:"\uC120\uD0DD\uD55C \uB514\uC2A4\uD06C\uC758 \uC798\uBABB\uB41C \uC790\uACA9 \uC99D\uBA85"},disk:{title:"\uD30C\uC77C \uB514\uC2A4\uD06C | \uD30C\uC77C \uB514\uC2A4\uD06C",description:"\uAE30\uBCF8\uC801\uC73C\uB85C Crater\uB294 \uBC31\uC5C5, \uC544\uBC14\uD0C0 \uBC0F \uAE30\uD0C0 \uC774\uBBF8\uC9C0 \uD30C\uC77C\uC744 \uC800\uC7A5\uD558\uAE30 \uC704\uD574 \uB85C\uCEEC \uB514\uC2A4\uD06C\uB97C \uC0AC\uC6A9\uD569\uB2C8\uB2E4. \uC120\uD638\uB3C4\uC5D0 \uB530\uB77C DigitalOcean, S3 \uBC0F Dropbox\uC640 \uAC19\uC740 \uB458 \uC774\uC0C1\uC758 \uB514\uC2A4\uD06C \uB4DC\uB77C\uC774\uBC84\uB97C \uAD6C\uC131 \uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",created_at:"\uC5D0 \uC0DD\uC131",dropbox:"\uB4DC\uB86D \uBC15\uC2A4",name:"\uC774\uB984",driver:"\uC6B4\uC804\uC0AC",disk_type:"\uC720\uD615",disk_name:"\uB514\uC2A4\uD06C \uC774\uB984",new_disk:"\uC0C8 \uB514\uC2A4\uD06C \uCD94\uAC00",filesystem_driver:"\uD30C\uC77C \uC2DC\uC2A4\uD15C \uB4DC\uB77C\uC774\uBC84",local_driver:"\uB85C\uCEEC \uB4DC\uB77C\uC774\uBC84",local_root:"\uB85C\uCEEC \uB8E8\uD2B8",public_driver:"\uACF5\uACF5 \uC6B4\uC804\uC790",public_root:"\uACF5\uAC1C \uB8E8\uD2B8",public_url:"\uACF5\uAC1C URL",public_visibility:"\uACF5\uAC1C \uAC00\uC2DC\uC131",media_driver:"\uBBF8\uB514\uC5B4 \uB4DC\uB77C\uC774\uBC84",media_root:"\uBBF8\uB514\uC5B4 \uB8E8\uD2B8",aws_driver:"AWS \uB4DC\uB77C\uC774\uBC84",aws_key:"AWS \uD0A4",aws_secret:"AWS \uBE44\uBC00",aws_region:"AWS \uB9AC\uC804",aws_bucket:"AWS \uBC84\uD0B7",aws_root:"AWS \uB8E8\uD2B8",do_spaces_type:"Do Spaces \uC720\uD615",do_spaces_key:"Do Spaces \uD0A4",do_spaces_secret:"\uC2A4\uD398\uC774\uC2A4 \uC2DC\uD06C\uB9BF",do_spaces_region:"Do Spaces \uC601\uC5ED",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces \uB05D\uC810",do_spaces_root:"\uACF5\uAC04 \uB8E8\uD2B8 \uC218\uD589",dropbox_type:"Dropbox \uC720\uD615",dropbox_token:"Dropbox \uD1A0\uD070",dropbox_key:"Dropbox \uD0A4",dropbox_secret:"Dropbox \uBE44\uBC00",dropbox_app:"Dropbox \uC571",dropbox_root:"Dropbox \uB8E8\uD2B8",default_driver:"\uAE30\uBCF8 \uB4DC\uB77C\uC774\uBC84",is_default:"\uAE30\uBCF8\uAC12\uC785\uB2C8\uB2E4.",set_default_disk:"\uAE30\uBCF8 \uB514\uC2A4\uD06C \uC124\uC815",set_default_disk_confirm:"\uC774 \uB514\uC2A4\uD06C\uB294 \uAE30\uBCF8\uAC12\uC73C\uB85C \uC124\uC815\uB418\uBA70 \uBAA8\uB4E0 \uC0C8 PDF\uAC00\uC774 \uB514\uC2A4\uD06C\uC5D0 \uC800\uC7A5\uB429\uB2C8\uB2E4.",success_set_default_disk:"\uB514\uC2A4\uD06C\uAC00 \uAE30\uBCF8\uAC12\uC73C\uB85C \uC124\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",save_pdf_to_disk:"PDF\uB97C \uB514\uC2A4\uD06C\uC5D0 \uC800\uC7A5",disk_setting_description:"\uAC01 \uC1A1\uC7A5\uC758 \uC0AC\uBCF8\uC744 \uC800\uC7A5\uD558\uB824\uBA74 \uC774\uAC83\uC744 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624.",select_disk:"\uB514\uC2A4\uD06C \uC120\uD0DD",disk_settings:"\uB514\uC2A4\uD06C \uC124\uC815",confirm_delete:"\uAE30\uC874 \uD30C\uC77C",action:"\uB3D9\uC791",edit_file_disk:"\uD30C\uC77C \uB514\uC2A4\uD06C \uD3B8\uC9D1",success_create:"\uB514\uC2A4\uD06C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uCD94\uAC00\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",success_update:"\uB514\uC2A4\uD06C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",error:"\uB514\uC2A4\uD06C \uCD94\uAC00 \uC2E4\uD328",deleted_message:"\uD30C\uC77C \uB514\uC2A4\uD06C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",disk_variables_save_successfully:"\uB514\uC2A4\uD06C\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uAD6C\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",disk_variables_save_error:"\uB514\uC2A4\uD06C \uAD6C\uC131\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.",invalid_disk_credentials:"\uC120\uD0DD\uD55C \uB514\uC2A4\uD06C\uC758 \uC798\uBABB\uB41C \uC790\uACA9 \uC99D\uBA85"}},zg={account_info:"\uACC4\uC815 \uC815\uBCF4",account_info_desc:"\uC544\uB798 \uC138\uBD80 \uC815\uBCF4\uB294 \uAE30\uBCF8 \uAD00\uB9AC\uC790 \uACC4\uC815\uC744 \uB9CC\uB4DC\uB294 \uB370 \uC0AC\uC6A9\uB429\uB2C8\uB2E4. \uB610\uD55C \uB85C\uADF8\uC778 \uD6C4 \uC5B8\uC81C\uB4E0\uC9C0 \uC138\uBD80 \uC815\uBCF4\uB97C \uBCC0\uACBD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",name:"\uC774\uB984",email:"\uC774\uBA54\uC77C",password:"\uC554\uD638",confirm_password:"\uBE44\uBC00\uBC88\uD638 \uD655\uC778",save_cont:"\uC800\uC7A5",company_info:"\uD68C\uC0AC \uC815\uBCF4",company_info_desc:"\uC774 \uC815\uBCF4\uB294 \uC1A1\uC7A5\uC5D0 \uD45C\uC2DC\uB429\uB2C8\uB2E4. \uB098\uC911\uC5D0 \uC124\uC815 \uD398\uC774\uC9C0\uC5D0\uC11C \uC218\uC815\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",company_name:"\uD68C\uC0AC \uC774\uB984",company_logo:"\uD68C\uC0AC \uB85C\uACE0",logo_preview:"\uB85C\uACE0 \uBBF8\uB9AC\uBCF4\uAE30",preferences:"\uD658\uACBD \uC124\uC815",preferences_desc:"\uC2DC\uC2A4\uD15C\uC758 \uAE30\uBCF8 \uAE30\uBCF8 \uC124\uC815\uC785\uB2C8\uB2E4.",country:"\uAD6D\uAC00",state:"\uC0C1\uD0DC",city:"\uC2DC\uD2F0",address:"\uC8FC\uC18C",street:"Street1 | Street2",phone:"\uC804\uD654",zip_code:"\uC6B0\uD3B8 \uBC88\uD638",go_back:"\uB3CC\uC544 \uAC00\uAE30",currency:"\uD1B5\uD654",language:"\uC5B8\uC5B4",time_zone:"\uC2DC\uAC04\uB300",fiscal_year:"\uD68C\uACC4 \uC5F0\uB3C4",date_format:"\uB0A0\uC9DC \uD615\uC2DD",from_address:"\uC8FC\uC18C\uC5D0\uC11C",username:"\uC0AC\uC6A9\uC790 \uC774\uB984",next:"\uB2E4\uC74C",continue:"\uACC4\uC18D\uD558\uB2E4",skip:"\uAC74\uB108 \uB6F0\uAE30",database:{database:"\uC0AC\uC774\uD2B8 URL",connection:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uC5F0\uACB0",host:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uD638\uC2A4\uD2B8",port:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uD3EC\uD2B8",password:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uBE44\uBC00\uBC88\uD638",app_url:"\uC571 URL",app_domain:"\uC571 \uB3C4\uBA54\uC778",username:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uC0AC\uC6A9\uC790 \uC774\uB984",db_name:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uC774\uB984",db_path:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uACBD\uB85C",desc:"\uC11C\uBC84\uC5D0 \uB370\uC774\uD130\uBCA0\uC774\uC2A4\uB97C \uB9CC\uB4E4\uACE0 \uC544\uB798 \uC591\uC2DD\uC744 \uC0AC\uC6A9\uD558\uC5EC \uC790\uACA9 \uC99D\uBA85\uC744 \uC124\uC815\uD569\uB2C8\uB2E4."},permissions:{permissions:"\uAD8C\uD55C",permission_confirm_title:"\uB108 \uC815\uB9D0 \uACC4\uC18D\uD558\uACE0 \uC2F6\uB2C8?",permission_confirm_desc:"\uD3F4\uB354 \uAD8C\uD55C \uD655\uC778 \uC2E4\uD328",permission_desc:"\uB2E4\uC74C\uC740 \uC571\uC774 \uC791\uB3D9\uD558\uB294 \uB370 \uD544\uC694\uD55C \uD3F4\uB354 \uAD8C\uD55C \uBAA9\uB85D\uC785\uB2C8\uB2E4. \uAD8C\uD55C \uD655\uC778\uC5D0 \uC2E4\uD328\uD558\uBA74 \uD3F4\uB354 \uAD8C\uD55C\uC744 \uC5C5\uB370\uC774\uD2B8\uD558\uC2ED\uC2DC\uC624."},mail:{host:"\uBA54\uC77C \uD638\uC2A4\uD2B8",port:"\uBA54\uC77C \uD3EC\uD2B8",driver:"\uBA54\uC77C \uB4DC\uB77C\uC774\uBC84",secret:"\uBE44\uBC00",mailgun_secret:"Mailgun \uBE44\uBC00",mailgun_domain:"\uB3C4\uBA54\uC778",mailgun_endpoint:"Mailgun \uC5D4\uB4DC \uD3EC\uC778\uD2B8",ses_secret:"SES \uBE44\uBC00",ses_key:"SES \uD0A4",password:"\uBA54\uC77C \uBE44\uBC00\uBC88\uD638",username:"\uBA54\uC77C \uC0AC\uC6A9\uC790 \uC774\uB984",mail_config:"\uBA54\uC77C \uAD6C\uC131",from_name:"\uBA54\uC77C \uC774\uB984\uC5D0\uC11C",from_mail:"\uBA54\uC77C \uC8FC\uC18C\uC5D0\uC11C",encryption:"\uBA54\uC77C \uC554\uD638\uD654",mail_config_desc:"\uB2E4\uC74C\uC740 \uC571\uC5D0\uC11C \uC774\uBA54\uC77C\uC744 \uBCF4\uB0B4\uAE30\uC704\uD55C \uC774\uBA54\uC77C \uB4DC\uB77C\uC774\uBC84 \uAD6C\uC131 \uC591\uC2DD\uC785\uB2C8\uB2E4. Sendgrid, SES \uB4F1\uACFC \uAC19\uC740 \uD0C0\uC0AC \uACF5\uAE09\uC790\uB97C \uAD6C\uC131 \uD560 \uC218\uB3C4 \uC788\uC2B5\uB2C8\uB2E4."},req:{system_req:"\uC2DC\uC2A4\uD15C \uC694\uAD6C \uC0AC\uD56D",php_req_version:"PHP (\uBC84\uC804 {version} \uD544\uC694)",check_req:"\uC694\uAD6C \uC0AC\uD56D \uD655\uC778",system_req_desc:"\uD06C\uB808\uC774\uD130\uC5D0\uB294 \uBA87 \uAC00\uC9C0 \uC11C\uBC84 \uC694\uAD6C \uC0AC\uD56D\uC774 \uC788\uC2B5\uB2C8\uB2E4. \uC11C\uBC84\uC5D0 \uD544\uC694\uD55C PHP \uBC84\uC804\uACFC \uC544\uB798\uC5D0 \uC5B8\uAE09 \uB41C \uBAA8\uB4E0 \uD655\uC7A5\uC774 \uC788\uB294\uC9C0 \uD655\uC778\uD558\uC2ED\uC2DC\uC624."},errors:{migrate_failed:"\uB9C8\uC774\uADF8\uB808\uC774\uC158 \uC2E4\uD328",database_variables_save_error:".env \uD30C\uC77C\uC5D0 \uAD6C\uC131\uC744 \uC4F8 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uD30C\uC77C \uAD8C\uD55C\uC744 \uD655\uC778\uD558\uC2ED\uC2DC\uC624",mail_variables_save_error:"\uC774\uBA54\uC77C \uAD6C\uC131\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.",connection_failed:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4 \uC5F0\uACB0 \uC2E4\uD328",database_should_be_empty:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4\uB294 \uBE44\uC5B4 \uC788\uC5B4\uC57C\uD569\uB2C8\uB2E4."},success:{mail_variables_save_successfully:"\uC774\uBA54\uC77C\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uAD6C\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",database_variables_save_successfully:"\uB370\uC774\uD130\uBCA0\uC774\uC2A4\uAC00 \uC131\uACF5\uC801\uC73C\uB85C \uAD6C\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4."}},Sg={invalid_phone:"\uC720\uD6A8\uD558\uC9C0 \uC54A\uC740 \uC804\uD654 \uBC88\uD638",invalid_url:"\uC798\uBABB\uB41C URL (\uC608 : http://www.craterapp.com)",invalid_domain_url:"\uC798\uBABB\uB41C URL (\uC608 : craterapp.com)",required:"\uD544\uB4DC\uB294 \uD544\uC218\uC785\uB2C8\uB2E4",email_incorrect:"\uC798\uBABB\uB41C \uC774\uBA54\uC77C.",email_already_taken:"\uC774\uBA54\uC77C\uC774 \uC774\uBBF8 \uC0AC\uC6A9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",email_does_not_exist:"\uC8FC\uC5B4\uC9C4 \uC774\uBA54\uC77C\uC744 \uAC00\uC9C4 \uC0AC\uC6A9\uC790\uAC00 \uC874\uC7AC\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4",item_unit_already_taken:"\uC774 \uD56D\uBAA9 \uB2E8\uC704 \uC774\uB984\uC740 \uC774\uBBF8 \uC0AC\uC6A9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",payment_mode_already_taken:"\uC774 \uACB0\uC81C \uBAA8\uB4DC \uC774\uB984\uC740 \uC774\uBBF8 \uC0AC\uC6A9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",send_reset_link:"\uC7AC\uC124\uC815 \uB9C1\uD06C \uBCF4\uB0B4\uAE30",not_yet:"\uC544\uC9C1? \uB2E4\uC2DC \uBCF4\uB0B4\uC918",password_min_length:"\uBE44\uBC00\uBC88\uD638\uB294 {count}\uC790\uB97C \uD3EC\uD568\uD574\uC57C\uD569\uB2C8\uB2E4.",name_min_length:"\uC774\uB984\uC740 {count} \uC790 \uC774\uC0C1\uC774\uC5B4\uC57C\uD569\uB2C8\uB2E4.",enter_valid_tax_rate:"\uC720\uD6A8\uD55C \uC138\uC728\uC744 \uC785\uB825\uD558\uC138\uC694.",numbers_only:"\uC22B\uC790 \uB9CC.",characters_only:"\uBB38\uC790 \uB9CC.",password_incorrect:"\uBE44\uBC00\uBC88\uD638\uB294 \uB3D9\uC77C\uD574\uC57C\uD569\uB2C8\uB2E4.",password_length:"\uBE44\uBC00\uBC88\uD638\uB294 {count} \uC790 \uC5EC\uC57C\uD569\uB2C8\uB2E4.",qty_must_greater_than_zero:"\uC218\uB7C9\uC740 0\uBCF4\uB2E4 \uCEE4\uC57C\uD569\uB2C8\uB2E4.",price_greater_than_zero:"\uAC00\uACA9\uC740 0\uBCF4\uB2E4 \uCEE4\uC57C\uD569\uB2C8\uB2E4.",payment_greater_than_zero:"\uACB0\uC81C \uAE08\uC561\uC740 0\uBCF4\uB2E4 \uCEE4\uC57C\uD569\uB2C8\uB2E4.",payment_greater_than_due_amount:"\uC785\uB825 \uB41C \uACB0\uC81C \uAE08\uC561\uC774\uC774 \uC1A1\uC7A5\uC758 \uB9CC\uAE30 \uAE08\uC561\uC744 \uCD08\uACFC\uD569\uB2C8\uB2E4.",quantity_maxlength:"\uC218\uB7C9\uC740 20 \uC790\uB9AC\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",price_maxlength:"\uAC00\uACA9\uC740 20 \uC790\uB9AC\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",price_minvalue:"\uAC00\uACA9\uC740 0\uBCF4\uB2E4 \uCEE4\uC57C\uD569\uB2C8\uB2E4.",amount_maxlength:"\uAE08\uC561\uC740 20 \uC790\uB9AC\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",amount_minvalue:"\uAE08\uC561\uC740 0\uBCF4\uB2E4 \uCEE4\uC57C\uD569\uB2C8\uB2E4.",description_maxlength:"\uC124\uBA85\uC740 65,000\uC790\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",subject_maxlength:"\uC81C\uBAA9\uC740 100 \uC790 \uC774\uD558 \uC5EC\uC57C\uD569\uB2C8\uB2E4.",message_maxlength:"\uBA54\uC2DC\uC9C0\uB294 255\uC790\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",maximum_options_error:"\uCD5C\uB300 {max} \uAC1C\uC758 \uC635\uC158\uC774 \uC120\uD0DD\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBA3C\uC800 \uC120\uD0DD\uD55C \uC635\uC158\uC744 \uC81C\uAC70\uD558\uC5EC \uB2E4\uB978 \uC635\uC158\uC744 \uC120\uD0DD\uD558\uC2ED\uC2DC\uC624.",notes_maxlength:"\uBA54\uBAA8\uB294 65,000\uC790\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",address_maxlength:"\uC8FC\uC18C\uB294 255\uC790\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",ref_number_maxlength:"\uCC38\uC870 \uBC88\uD638\uB294 255\uC790\uB97C \uCD08\uACFC \uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",prefix_maxlength:"\uC811\uB450\uC0AC\uB294 5 \uC790 \uC774\uD558 \uC5EC\uC57C\uD569\uB2C8\uB2E4.",something_went_wrong:"\uBB54\uAC00 \uC798\uBABB \uB410\uC5B4"},jg="\uACAC\uC801",Pg="\uACAC\uC801 \uBC88\uD638",Dg="\uC608\uC0C1 \uB0A0\uC9DC",Cg="\uB9CC\uB8CC\uC77C",Ag="\uC1A1\uC7A5",Eg="\uC1A1\uC7A5 \uBC88\uD638",Ng="\uC1A1\uC7A5 \uB0A0\uC9DC",Tg="\uB9C8\uAC10\uC77C",Ig="\uB178\uD2B8",$g="\uC544\uC774\uD15C",Rg="\uC218\uB7C9",Fg="\uAC00\uACA9",Mg="\uD560\uC778",Vg="\uC591",Bg="\uC18C\uACC4",Og="\uD569\uACC4",Lg="\uC9C0\uBD88",Ug="\uC601\uC218\uC99D",Kg="\uACB0\uC81C\uC77C",qg="\uACB0\uC81C \uBC88\uD638",Zg="\uC9C0\uBD88 \uBAA8\uB4DC",Wg="\uBC1B\uC740 \uAE08\uC561",Hg="\uBE44\uC6A9 \uBCF4\uACE0\uC11C",Gg="\uCD1D \uBE44\uC6A9",Yg="\uC774\uC775",Jg="\uD310\uB9E4 \uACE0\uAC1D \uBCF4\uACE0\uC11C",Xg="\uD310\uB9E4 \uD488\uBAA9 \uBCF4\uACE0\uC11C",Qg="\uC138\uAE08 \uC694\uC57D \uBCF4\uACE0\uC11C",ef="\uC218\uC785",tf="\uC21C\uC774\uC775",af="\uD310\uB9E4 \uBCF4\uACE0\uC11C : \uACE0\uAC1D \uBCC4",sf="\uCD1D \uB9E4\uCD9C",nf="\uD310\uB9E4 \uBCF4\uACE0\uC11C : \uD488\uBAA9\uBCC4",of="\uC138\uAE08 \uBCF4\uACE0\uC11C",rf="\uCD1D \uC138\uAE08",df="\uC138\uAE08 \uC720\uD615",lf="\uACBD\uBE44",cf="\uCCAD\uAD6C\uC11C,",_f="\uBC30\uC1A1\uC9C0,",uf="\uBC1B\uC740 \uC0AC\uB78C :",mf="\uC138";var pf={navigation:lg,general:cg,dashboard:_g,tax_types:ug,global_search:mg,customers:pg,items:gg,estimates:fg,invoices:hg,payments:vg,expenses:yg,login:bg,users:kg,reports:wg,settings:xg,wizard:zg,validation:Sg,pdf_estimate_label:jg,pdf_estimate_number:Pg,pdf_estimate_date:Dg,pdf_estimate_expire_date:Cg,pdf_invoice_label:Ag,pdf_invoice_number:Eg,pdf_invoice_date:Ng,pdf_invoice_due_date:Tg,pdf_notes:Ig,pdf_items_label:$g,pdf_quantity_label:Rg,pdf_price_label:Fg,pdf_discount_label:Mg,pdf_amount_label:Vg,pdf_subtotal:Bg,pdf_total:Og,pdf_payment_label:Lg,pdf_payment_receipt_label:Ug,pdf_payment_date:Kg,pdf_payment_number:qg,pdf_payment_mode:Zg,pdf_payment_amount_received_label:Wg,pdf_expense_report_label:Hg,pdf_total_expenses_label:Gg,pdf_profit_loss_label:Yg,pdf_sales_customers_label:Jg,pdf_sales_items_label:Xg,pdf_tax_summery_label:Qg,pdf_income_label:ef,pdf_net_profit_label:tf,pdf_customer_sales_report:af,pdf_total_sales_label:sf,pdf_item_sales_label:nf,pdf_tax_report_label:of,pdf_total_tax_label:rf,pdf_tax_types_label:df,pdf_expenses_label:lf,pdf_bill_to:cf,pdf_ship_to:_f,pdf_received_from:uf,pdf_tax_label:mf};const gf={dashboard:"Inform\u0101cijas panelis",customers:"Klienti",items:"Preces",invoices:"R\u0113\u0137ini",expenses:"Izdevumi",estimates:"Apr\u0113\u0137ini",payments:"Maks\u0101jumi",reports:"Atskaites",settings:"Iestat\u012Bjumi",logout:"Iziet",users:"Lietot\u0101ji"},ff={add_company:"Pievienot uz\u0146\u0113mumu",view_pdf:"Apskat\u012Bt PDF",copy_pdf_url:"Kop\u0113t PDF Url",download_pdf:"Lejupiel\u0101d\u0113t PDF",save:"Saglab\u0101t",create:"Izveidot",cancel:"Atcelt",update:"Atjaunin\u0101t",deselect:"Atcelt iez\u012Bm\u0113\u0161anu",download:"Lejupiel\u0101d\u0113t",from_date:"Datums no",to_date:"Datums l\u012Bdz",from:"No",to:"Kam",sort_by:"K\u0101rtot p\u0113c",ascending:"Augo\u0161\u0101 sec\u012Bb\u0101",descending:"Dilsto\u0161\u0101 sec\u012Bb\u0101",subject:"Temats",body:"Saturs",message:"Zi\u0146ojums",send:"Nos\u016Bt\u012Bt",go_back:"Atpaka\u013C",back_to_login:"Atpaka\u013C uz autoriz\u0101ciju?",home:"S\u0101kums",filter:"Filtr\u0113t",delete:"Dz\u0113st",edit:"Labot",view:"Skat\u012Bt",add_new_item:"Pievienot jaunu",clear_all:"Not\u012Br\u012Bt visu",showing:"R\u0101da",of:"no",actions:"Darb\u012Bbas",subtotal:"KOP\u0100",discount:"ATLAIDE",fixed:"Fiks\u0113ts",percentage:"Procenti",tax:"Nodoklis",total_amount:"KOP\u0100 APMAKSAI",bill_to:"Sa\u0146\u0113m\u0113js",ship_to:"Pieg\u0101d\u0101t uz",due:"Due",draft:"Melnraksts",sent:"Nos\u016Bt\u012Bts",all:"Visi",select_all:"Iez\u012Bm\u0113t visu",choose_file:"Speid \u0161eit, lai izv\u0113l\u0113tos failu",choose_template:"Izv\u0113laties sagatavi",choose:"Izv\u0113lies",remove:"Dz\u0113st",select_a_status:"Izv\u0113lieties statusu",select_a_tax:"Izv\u0113l\u0113ties nodokli",search:"Mekl\u0113t",are_you_sure:"Vai esat p\u0101rliecin\u0101ts?",list_is_empty:"Saraksts ir tuk\u0161s.",no_tax_found:"Nodoklis nav atrasts!",four_zero_four:"404",you_got_lost:"Op\u0101! Esi apmald\u012Bjies!",go_home:"Uz S\u0101kumu",test_mail_conf:"J\u016Bsu e-pasta uzst\u0101d\u012Bjumu tests",send_mail_successfully:"Veiksm\u012Bgi nos\u016Bt\u012Bts",setting_updated:"Iestat\u012Bjumi tika veiksm\u012Bgi atjaunin\u0101ti",select_state:"Izv\u0113lieties re\u0123ionu",select_country:"Izv\u0113l\u0113ties valsti",select_city:"Izv\u0113lieties pils\u0113tu",street_1:"Adrese 1",street_2:"Adrese 2",action_failed:"Darb\u012Bba neizdev\u0101s",retry:"Atk\u0101rtot",choose_note:"Izv\u0113lieties piez\u012Bmi",no_note_found:"Piez\u012Bmes nav atrastas",insert_note:"Ievietot piez\u012Bmi"},hf={select_year:"Izv\u0113lieties gadu",cards:{due_amount:"Apmaksas summa",customers:"Klienti",invoices:"R\u0113\u0137ini",estimates:"Apr\u0113\u0137ini"},chart_info:{total_sales:"P\u0101rdotais",total_receipts:"\u010Ceki",total_expense:"Izdevumi",net_income:"Pe\u013C\u0146a",year:"Izv\u0113lieties gadu"},monthly_chart:{title:"P\u0101rdotais un Izdevumi"},recent_invoices_card:{title:"Pien\u0101ko\u0161ie r\u0113\u0137ini",due_on:"Termi\u0146\u0161",customer:"Klients",amount_due:"Apmaksas summa",actions:"Darb\u012Bbas",view_all:"Skat\u012Bt visus"},recent_estimate_card:{title:"Nesenie apr\u0113\u0137ini",date:"Datums",customer:"Klients",amount_due:"Apmaksas summa",actions:"Darb\u012Bbas",view_all:"Skat\u012Bt visus"}},vf={name:"Nosaukums",description:"Apraksts",percent:"Procenti",compound_tax:"Compound Tax"},yf={search:"Mekl\u0113t...",customers:"Klienti",users:"Lietot\u0101ji",no_results_found:"Nav atbilsto\u0161u rezult\u0101tu"},bf={title:"Klienti",add_customer:"Pievienot klientu",contacts_list:"Klientu saraksts",name:"V\u0101rds",mail:"Pasts",statement:"Statement",display_name:"Nosaukums",primary_contact_name:"Galven\u0101 kontakta v\u0101rds",contact_name:"Kontaktpersonas v\u0101rds",amount_due:"Kop\u0101",email:"E-pasts",address:"Adrese",phone:"Telefona numurs",website:"M\u0101jaslapa",overview:"P\u0101rskats",enable_portal:"Aktiviz\u0113t port\u0101lu",country:"Valsts",state:"Re\u0123ions",city:"Pils\u0113ta",zip_code:"Pasta indekss",added_on:"Pievienots",action:"Darb\u012Bba",password:"Parole",street_number:"Adrese",primary_currency:"Prim\u0101r\u0101 val\u016Bta",description:"Apraksts",add_new_customer:"Pievienot jaunu klientu",save_customer:"Saglab\u0101t klientu",update_customer:"Atjaunin\u0101t klientu",customer:"Klients | Klienti",new_customer:"Jauns klients",edit_customer:"Redi\u0123\u0113t klientu",basic_info:"Pamatinform\u0101cija",billing_address:"Juridisk\u0101 adrese",shipping_address:"Pieg\u0101des adrese",copy_billing_address:"Kop\u0113t no juridisk\u0101s adreses",no_customers:"Pagaid\u0101m nav klientu!",no_customers_found:"Klienti netika atrasti!",no_contact:"No contact",no_contact_name:"No contact name",list_of_customers:"\u0160aj\u0101 sada\u013C\u0101 b\u016Bs klientu saraksts.",primary_display_name:"Klienta nosaukums",select_currency:"Izv\u0113lieties val\u016Btu",select_a_customer:"Izv\u0113l\u0113ties klientu",type_or_click:"Rakst\u012Bt vai spiest, lai izv\u0113l\u0113tos",new_transaction:"Jauns dar\u012Bjums",no_matching_customers:"Netika atrasts neviens klients!",phone_number:"Telefona numurs",create_date:"Izveido\u0161anas datums",confirm_delete:"J\u016Bs nevar\u0113sit atg\u016Bt \u0161o klientu un visus saist\u012Btos r\u0113\u0137inus, apr\u0113\u0137inus un maks\u0101jumus.",created_message:"Klients izveidots veiksm\u012Bgi",updated_message:"Klients atjaunin\u0101ts veiksm\u012Bgi",deleted_message:"Klients veiksm\u012Bgi izdz\u0113sts"},kf={title:"Preces",items_list:"Pre\u010Du saraksts",name:"Nosaukums",unit:"Vien\u012Bba",description:"Apraksts",added_on:"Pievienots",price:"Cena",date_of_creation:"Izveido\u0161anas datums",not_selected:"No item selected",action:"Darb\u012Bba",add_item:"Pievienot",save_item:"Saglab\u0101t",update_item:"Atjaunin\u0101t",item:"Prece | Preces",add_new_item:"Pievienot jaunu preci",new_item:"Jauna prece",edit_item:"Redi\u0123\u0113t preci",no_items:"Nav pre\u010Du!",list_of_items:"\u0160aj\u0101 sada\u013C\u0101 b\u016Bs pre\u010Du/pakalpojumu saraksts.",select_a_unit:"atlasiet vien\u012Bbu",taxes:"Nodok\u013Ci",item_attached_message:"Nevar dz\u0113st preci, kura tiek izmantota",confirm_delete:"J\u016Bs nevar\u0113siet atg\u016Bt \u0161o preci",created_message:"Prece izveidota veiksm\u012Bgi",updated_message:"Prece atjaunin\u0101ta veiksm\u012Bgi",deleted_message:"Prece veiksm\u012Bgi izdz\u0113sta"},wf={title:"Apr\u0113\u0137ini",estimate:"Apr\u0113\u0137ins | Apr\u0113\u0137ini",estimates_list:"Apr\u0113\u0137inu saraksts",days:"{days} Dienas",months:"{months} M\u0113nesis",years:"{years} Gads",all:"Visi",paid:"Apmaks\u0101ts",unpaid:"Neapmaks\u0101ts",customer:"KLIENTS",ref_no:"REF NR.",number:"NUMURS",amount_due:"Summa apmaksai",partially_paid:"Da\u013C\u0113ji apmaks\u0101ts",total:"Kop\u0101",discount:"Atlaide",sub_total:"Starpsumma",estimate_number:"Apr\u0113\u0137ina numurs",ref_number:"Ref numurs",contact:"Kontakti",add_item:"Pievienot preci",date:"Datums",due_date:"Apmaksas termi\u0146\u0161",expiry_date:"Termi\u0146a beigu datums",status:"Status",add_tax:"Pievienot nodokli",amount:"Summa",action:"Darb\u012Bba",notes:"Piez\u012Bmes",tax:"Nodoklis",estimate_template:"Sagatave",convert_to_invoice:"P\u0101rveidot par r\u0113\u0137inu",mark_as_sent:"Atz\u012Bm\u0113t k\u0101 nos\u016Bt\u012Btu",send_estimate:"Nos\u016Bt\u012Bt apr\u0113\u0137inu",resend_estimate:"Atk\u0101rtoti nos\u016Bt\u012Bt apr\u0113\u0137inu",record_payment:"Izveidot maks\u0101jumu",add_estimate:"Pievienot apr\u0113\u0137inu",save_estimate:"Saglab\u0101t apr\u0113\u0137inu",confirm_conversion:"\u0160is apr\u0113\u0137ins tiks izmantots, lai izveidotu jaunu r\u0113\u0137inu.",conversion_message:"R\u0113\u0137ins izveidots veiksm\u012Bgi",confirm_send_estimate:"\u0160is apr\u0113\u0137ins tiks nos\u016Bt\u012Bts klientam e-past\u0101",confirm_mark_as_sent:"Apr\u0113\u0137ins tiks atz\u012Bm\u0113ts k\u0101 nos\u016Bt\u012Bts",confirm_mark_as_accepted:"Apr\u0113\u0137ins tiks atz\u012Bm\u0113ts k\u0101 apstiprin\u0101ts",confirm_mark_as_rejected:"Apr\u0113\u0137ins tiks atz\u012Bm\u0113ts k\u0101 noraid\u012Bts",no_matching_estimates:"Netika atrasts neviens apr\u0113\u0137ins!",mark_as_sent_successfully:"Apr\u0113\u0137ins atz\u012Bm\u0113ts k\u0101 veiksm\u012Bgi nos\u016Bt\u012Bts",send_estimate_successfully:"Apr\u0113\u0137ins veiksm\u012Bgi nos\u016Bt\u012Bts",errors:{required:"\u0160is lauks ir oblig\u0101ts"},accepted:"Apstiprin\u0101ts",rejected:"Rejected",sent:"Nos\u016Bt\u012Bts",draft:"Melnraksts",declined:"Noraid\u012Bts",new_estimate:"Jauns apr\u0113\u0137ins",add_new_estimate:"Pievienot jaunu apr\u0113\u0137inu",update_Estimate:"Atjaunin\u0101t apr\u0113\u0137inu",edit_estimate:"Labot apr\u0113\u0137inu",items:"preces",Estimate:"Apr\u0113\u0137ins | Apr\u0113\u0137ini",add_new_tax:"Pievienot jaunu nodokli",no_estimates:"V\u0113l nav apr\u0113\u0137inu!",list_of_estimates:"\u0160aj\u0101 sada\u013C\u0101 b\u016Bs apr\u0113\u0137inu saraksts.",mark_as_rejected:"Atz\u012Bm\u0113t k\u0101 noraid\u012Btu",mark_as_accepted:"Atz\u012Bm\u0113t k\u0101 apstiprin\u0101tu",marked_as_accepted_message:"Apr\u0113\u0137ins atz\u012Bm\u0113ts k\u0101 apstiprin\u0101ts",marked_as_rejected_message:"Apr\u0113\u0137ins atz\u012Bm\u0113ts k\u0101 noraid\u012Bts",confirm_delete:"J\u016Bs nevar\u0113siet atg\u016Bt \u0161o apr\u0113\u0137inu | J\u016Bs nevar\u0113siet atg\u016Bt \u0161o apr\u0113\u0137inus",created_message:"Apr\u0113\u0137ins izveidots veiksm\u012Bgi",updated_message:"Apr\u0113\u0137ins atjaunin\u0101ts veiksm\u012Bgi",deleted_message:"Apr\u0113\u0137ins veiksm\u012Bgi izdz\u0113sts | Apr\u0113\u0137ini veiksm\u012Bgi izdz\u0113sti",something_went_wrong:"kaut kas nog\u0101ja greizi",item:{title:"Preces nosaukums",description:"Apraksts",quantity:"Daudzums",price:"Cena",discount:"Atlaide",total:"Kop\u0101",total_discount:"Kop\u0113j\u0101 atlaide",sub_total:"Starpsumma",tax:"Nodoklis",amount:"Summa",select_an_item:"Rakst\u012Bt vai spiest, lai izv\u0113l\u0113tos",type_item_description:"Ievadiet preces/pakalpojuma aprakstu (nav oblig\u0101ti)"}},xf={title:"R\u0113\u0137ini",invoices_list:"R\u0113\u0137inu saraksts",days:"{days} Dienas",months:"{months} M\u0113nesis",years:"{years} Gads",all:"Visi",paid:"Apmaks\u0101ts",unpaid:"Neapmaks\u0101ts",viewed:"Viewed",overdue:"Overdue",completed:"Completed",customer:"KLIENTS",paid_status:"APMAKSAS STATUS",ref_no:"REF NR.",number:"NUMURS",amount_due:"SUMMA APMAKSAI",partially_paid:"Da\u013C\u0113ji apmaks\u0101ts",total:"Kop\u0101",discount:"Atlaide",sub_total:"Starpsumma",invoice:"R\u0113\u0137ins | R\u0113\u0137ini",invoice_number:"R\u0113\u0137ina numurs",ref_number:"Ref numurs",contact:"Kontakti",add_item:"Pievienot preci",date:"Datums",due_date:"Apmaksas termi\u0146\u0161",status:"Status",add_tax:"Pievienot nodokli",amount:"Summa",action:"Darb\u012Bba",notes:"Piez\u012Bmes",view:"Skat\u012Bt",send_invoice:"Nos\u016Bt\u012Bt r\u0113\u0137inu",resend_invoice:"Nos\u016Bt\u012Bt r\u0113\u0137inu atk\u0101rtoti",invoice_template:"R\u0113\u0137ina sagatave",template:"Sagatave",mark_as_sent:"Atz\u012Bm\u0113t k\u0101 nos\u016Bt\u012Btu",confirm_send_invoice:"\u0160is r\u0113\u0137ins tiks nos\u016Bt\u012Bts klientam e-past\u0101",invoice_mark_as_sent:"R\u0113\u0137ins tiks atz\u012Bm\u0113ts k\u0101 nos\u016Bt\u012Bts",confirm_send:"\u0160is r\u0113\u0137ins tiks nos\u016Bt\u012Bts klientam e-past\u0101",invoice_date:"R\u0113\u0137ina datums",record_payment:"Izveidot maks\u0101jumu",add_new_invoice:"Jauns r\u0113\u0137ins",update_expense:"Atjaunin\u0101t izdevumu",edit_invoice:"Redi\u0123\u0113t r\u0113\u0137inu",new_invoice:"Jauns r\u0113\u0137ins",save_invoice:"Saglab\u0101t r\u0113\u0137inu",update_invoice:"Atjaunin\u0101t r\u0113\u0137inu",add_new_tax:"Pievienot jaunu nodokli",no_invoices:"V\u0113l nav r\u0113\u0137inu!",list_of_invoices:"\u0160aj\u0101 sada\u013C\u0101 b\u016Bs r\u0113\u0137inu saraksts.",select_invoice:"Izv\u0113laties r\u0113\u0137inu",no_matching_invoices:"Netika atrasts neviens r\u0113\u0137ins!",mark_as_sent_successfully:"R\u0113\u0137ins atz\u012Bm\u0113ts k\u0101 veiksm\u012Bgi nos\u016Bt\u012Bts",invoice_sent_successfully:"R\u0113\u0137ins ir veiksm\u012Bgi nos\u016Bt\u012Bts",cloned_successfully:"R\u0113\u0137ins ir veiksm\u012Bgi nokop\u0113ts",clone_invoice:"Kop\u0113t r\u0113\u0137inu",confirm_clone:"\u0160is r\u0113\u0137ins tiks nokop\u0113ts k\u0101 jauns r\u0113\u0137ins",item:{title:"Preces nosaukums",description:"Apraksts",quantity:"Daudzums",price:"Cena",discount:"Atlaide",total:"Kop\u0101",total_discount:"Kop\u0113j\u0101 atlaide",sub_total:"Starpsumma",tax:"Nodoklis",amount:"Summa",select_an_item:"Rakst\u012Bt vai spiest, lai izv\u0113l\u0113tos",type_item_description:"Ievadiet preces/pakalpojuma aprakstu (nav oblig\u0101ti)"},confirm_delete:"J\u016Bs nevar\u0113siet atg\u016Bt \u0161o r\u0113\u0137inu | J\u016Bs nevar\u0113siet atg\u016Bt \u0161os r\u0113\u0137inus",created_message:"R\u0113\u0137ins izveidots veiksm\u012Bgi",updated_message:"R\u0113\u0137ins ir veiksm\u012Bgi atjaunin\u0101ts",deleted_message:"R\u0113\u0137ins veiksm\u012Bgi izdz\u0113sts | R\u0113\u0137ini veiksm\u012Bgi izdz\u0113sti",marked_as_sent_message:"R\u0113\u0137ins atz\u012Bm\u0113ts k\u0101 veiksm\u012Bgi nos\u016Bt\u012Bts",something_went_wrong:"kaut kas nog\u0101ja greizi",invalid_due_amount_message:"R\u0113\u0137ina kop\u0113j\u0101 summa nevar b\u016Bt maz\u0101ka par kop\u0113jo apmaks\u0101to summu. L\u016Bdzu atjauniniet r\u0113\u0137inu vai dz\u0113siet piesaist\u012Btos maks\u0101jumus, lai turpin\u0101tu."},zf={title:"Maks\u0101jumi",payments_list:"Maks\u0101jumu saraksts",record_payment:"Izveidot maks\u0101jumu",customer:"Klients",date:"Datums",amount:"Summa",action:"Darb\u012Bba",payment_number:"Maks\u0101juma numurs",payment_mode:"Apmaksas veids",invoice:"R\u0113\u0137ins",note:"Piez\u012Bme",add_payment:"Pievienot maks\u0101jumu",new_payment:"Jauns maks\u0101jums",edit_payment:"Labot maks\u0101jumu",view_payment:"Skat\u012Bt maks\u0101jumu",add_new_payment:"Pievienot jaunu maks\u0101jumu",send_payment_receipt:"Nos\u016Bt\u012Bt maks\u0101juma izdruku",send_payment:"Nos\u016Bt\u012Bt maks\u0101jumu",save_payment:"Saglab\u0101t maks\u0101jumu",update_payment:"Labot maks\u0101jumu",payment:"Maks\u0101jums | Maks\u0101jumi",no_payments:"Nav pievienotu maks\u0101jumu!",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"Netika atrasts neviens maks\u0101jums!",list_of_payments:"\u0160aj\u0101 sada\u013C\u0101 b\u016Bs maks\u0101jumu saraksts.",select_payment_mode:"Izv\u0113l\u0113ties maks\u0101juma veidu",confirm_mark_as_sent:"Apr\u0113\u0137ins tiks atz\u012Bm\u0113ts k\u0101 nos\u016Bt\u012Bts",confirm_send_payment:"\u0160is maks\u0101jums tiks nos\u016Bt\u012Bts klientam e-past\u0101",send_payment_successfully:"Maks\u0101jums veiksm\u012Bgi nos\u016Bt\u012Bts",something_went_wrong:"kaut kas nog\u0101ja greizi",confirm_delete:"J\u016Bs nevar\u0113siet atg\u016Bt \u0161o maks\u0101jumu | J\u016Bs nevar\u0113siet atg\u016Bt \u0161os maks\u0101jumus",created_message:"Maks\u0101jums veiksm\u012Bgi izveidots",updated_message:"Maks\u0101jums veiksm\u012Bgi labots",deleted_message:"Maks\u0101jums veiksm\u012Bgi izdz\u0113sts | Maks\u0101jumi veiksm\u012Bgi izdz\u0113sti",invalid_amount_message:"Maks\u0101juma summa nav pareiza"},Sf={title:"Izdevumi",expenses_list:"Izdevumu saraksts",select_a_customer:"Izv\u0113l\u0113ties klientu",expense_title:"Nosaukums",customer:"Klients",contact:"Kontakti",category:"Kategorija",from_date:"Datums no",to_date:"Datums l\u012Bdz",expense_date:"Datums",description:"Apraksts",receipt:"\u010Ceks",amount:"Summa",action:"Darb\u012Bba",not_selected:"Not selected",note:"Piez\u012Bme",category_id:"Kategorijas Id",date:"Datums",add_expense:"Pievienot izdevumu",add_new_expense:"Pievienot jaunu izdevumu",save_expense:"Saglab\u0101t izdevumu",update_expense:"Atjaunin\u0101t izdevumu",download_receipt:"Lejupiel\u0101d\u0113t \u010Deku",edit_expense:"Labot izdevumu",new_expense:"Jauns izdevums",expense:"Izdevums | Izdevumi",no_expenses:"V\u0113l nav izdevumu!",list_of_expenses:"\u0160aj\u0101 sada\u013C\u0101 b\u016Bs izdevumu saraksts.",confirm_delete:"J\u016Bs nevar\u0113siet atg\u016Bt \u0161o izdevumu | J\u016Bs nevar\u0113siet atg\u016Bt \u0161os izdevumus",created_message:"Izdevums izveidots veiksm\u012Bgi",updated_message:"Izdevums atjaunin\u0101ts veiksm\u012Bgi",deleted_message:"Izdevums veiksm\u012Bgi izdz\u0113sts | Izdevumi veiksm\u012Bgi izdz\u0113sti",categories:{categories_list:"Kategoriju saraksts",title:"Nosaukums",name:"V\u0101rds",description:"Apraksts",amount:"Summa",actions:"Darb\u012Bbas",add_category:"Pievienot kategoriju",new_category:"Jauna Kategorija",category:"Kategorija | Kategorijas",select_a_category:"Izv\u0113lieties kategoriju"}},jf={email:"E-pasts",password:"Parole",forgot_password:"Aizmirsi paroli?",or_signIn_with:"vai pierakst\u012Bties ar",login:"Ielogoties",register:"Re\u0123istr\u0113ties",reset_password:"Atjaunot paroli",password_reset_successfully:"Parole atjaunota veiksm\u012Bgi",enter_email:"Ievadiet e-pastu",enter_password:"Ievadiet paroli",retype_password:"Atk\u0101rtoti ievadiet paroli"},Pf={title:"Lietot\u0101ji",users_list:"Lietot\u0101ju saraksts",name:"V\u0101rds",description:"Apraksts",added_on:"Pievienots",date_of_creation:"Izveido\u0161anas datums",action:"Darb\u012Bba",add_user:"Pievienot lietot\u0101ju",save_user:"Saglab\u0101t lietot\u0101ju",update_user:"Atjaunin\u0101t lietot\u0101ju",user:"Lietot\u0101js | Lietot\u0101ji",add_new_user:"Pievienot jaunu lietot\u0101ju",new_user:"Jauns lietot\u0101js",edit_user:"Redi\u0123\u0113t lietot\u0101ju",no_users:"Pagaid\u0101m nav lietot\u0101ju!",list_of_users:"\u0160aj\u0101 sada\u013C\u0101 b\u016Bs lietot\u0101ju saraksts.",email:"E-pasts",phone:"Telefona numurs",password:"Parole",user_attached_message:"Nevar dz\u0113st preci, kura tiek izmantota",confirm_delete:"J\u016Bs nevar\u0113siet atg\u016Bt \u0161o lietot\u0101ju | J\u016Bs nevar\u0113siet atg\u016Bt \u0161os lietot\u0101jus",created_message:"Lietot\u0101js veiksm\u012Bgi izveidots",updated_message:"Lietot\u0101js veiksm\u012Bgi labots",deleted_message:"Lietot\u0101js veiksm\u012Bgi izdz\u0113sts"},Df={title:"Atskaite",from_date:"Datums no",to_date:"Datums l\u012Bdz",status:"Status",paid:"Apmaks\u0101ts",unpaid:"Neapmaks\u0101ts",download_pdf:"Lejupiel\u0101d\u0113t PDF",view_pdf:"Apskat\u012Bt PDF",update_report:"Labot atskaiti",report:"Atskaite | Atskaites",profit_loss:{profit_loss:"Pe\u013C\u0146a & Zaud\u0113jumi",to_date:"Datums l\u012Bdz",from_date:"Datums no",date_range:"Izv\u0113l\u0113ties datumus"},sales:{sales:"P\u0101rdotais",date_range:"Izv\u0113l\u0113ties datumus",to_date:"Datums l\u012Bdz",from_date:"Datums no",report_type:"Atskaites veids"},taxes:{taxes:"Nodok\u013Ci",to_date:"Datums l\u012Bdz",from_date:"Datums no",date_range:"Izv\u0113l\u0113ties datumus"},errors:{required:"\u0160is lauks ir oblig\u0101ts"},invoices:{invoice:"R\u0113\u0137ins",invoice_date:"R\u0113\u0137ina datums",due_date:"Apmaksas termi\u0146\u0161",amount:"Summa",contact_name:"Kontaktpersonas v\u0101rds",status:"Status"},estimates:{estimate:"Apr\u0113\u0137ins",estimate_date:"Apr\u0113\u0137ina datums",due_date:"Termi\u0146\u0161",estimate_number:"Apr\u0113\u0137ina numurs",ref_number:"Ref numurs",amount:"Summa",contact_name:"Kontaktpersonas v\u0101rds",status:"Status"},expenses:{expenses:"Izdevumi",category:"Kategorija",date:"Datums",amount:"Summa",to_date:"Datums l\u012Bdz",from_date:"Datums no",date_range:"Izv\u0113l\u0113ties datumus"}},Cf={menu_title:{account_settings:"Konta iestat\u012Bjumi",company_information:"Uz\u0146\u0113muma inform\u0101cija",customization:"Piel\u0101go\u0161ana",preferences:"Iestat\u012Bjumi",notifications:"Pazi\u0146ojumi",tax_types:"Nodok\u013Cu veidi",expense_category:"Izdevumu kategorijas",update_app:"Atjaunin\u0101t App",backup:"Rezerves kopija",file_disk:"Disks",custom_fields:"Piel\u0101gotie lauki",payment_modes:"Apmaksas veidi",notes:"Piez\u012Bmes"},title:"Iestat\u012Bjumi",setting:"Iestat\u012Bjumi | Iestat\u012Bjumi",general:"Visp\u0101r\u012Bgi",language:"Valoda",primary_currency:"Prim\u0101r\u0101 val\u016Bta",timezone:"Laika josla",date_format:"Datuma form\u0101ts",currencies:{title:"Val\u016Btas",currency:"Val\u016Bta | Val\u016Btas",currencies_list:"Val\u016Btu saraksts",select_currency:"Izv\u0113leties val\u016Btu",name:"Nosaukums",code:"Kods",symbol:"Simbols",precision:"Precizit\u0101te",thousand_separator:"T\u016Bksto\u0161u atdal\u012Bt\u0101js",decimal_separator:"Decim\u0101lda\u013Cu atdal\u012Bt\u0101js",position:"Poz\u012Bcija",position_of_symbol:"Poz\u012Bcijas simbols",right:"Pa labi",left:"Pa kreisi",action:"Darb\u012Bba",add_currency:"Pievienot val\u016Btu"},mail:{host:"E-pasta serveris",port:"E-pasta ports",driver:"E-pasta draiveris",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Dom\u0113ns",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"E-pasta parole",username:"E-pasta lietot\u0101jv\u0101rds",mail_config:"E-pasta konfigur\u0101cija",from_name:"E-pasts no",from_mail:"E-pasta adrese no kuras s\u016Bt\u012Bt",encryption:"E-pasta \u0161ifr\u0113\u0161ana",mail_config_desc:"Zem\u0101k ir e-pasta konfigur\u0113\u0161anas forma. J\u016Bs varat konfigur\u0113t ar\u012B tre\u0161\u0101s puses servisus k\u0101 Sendgrid, SES u.c."},pdf:{title:"PDF uzst\u0101d\u012Bjumi",footer_text:"K\u0101jenes teksts",pdf_layout:"PDF izk\u0101rtojums"},company_info:{company_info:"Uz\u0146\u0113muma inform\u0101cija",company_name:"Uz\u0146\u0113muma nosaukums",company_logo:"Uz\u0146\u0113muma logo",section_description:"Inform\u0101cija par uz\u0146\u0113mumu kura tiks uzr\u0101d\u012Bta r\u0113\u0137inos, apr\u0113\u0137inos un citos dokumentos kurus veidosiet Crater sist\u0113m\u0101.",phone:"Telefona numurs",country:"Valsts",state:"Re\u0123ions",city:"Pils\u0113ta",address:"Adrese",zip:"Pasta indekss",save:"Saglab\u0101t",updated_message:"Uz\u0146\u0113muma inform\u0101cija veiksm\u012Bgi saglab\u0101ta"},custom_fields:{title:"Piel\u0101gotie lauki",section_description:"Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.",add_custom_field:"Add Custom Field",edit_custom_field:"Edit Custom Field",field_name:"Field Name",label:"Label",type:"Type",name:"Name",required:"Required",placeholder:"Placeholder",help_text:"Help Text",default_value:"Noklus\u0113juma v\u0113rt\u012Bba",prefix:"Prefikss",starting_number:"S\u0101kuma numurs",model:"Modelis",help_text_description:"Enter some text to help users understand the purpose of this custom field.",suffix:"Suffix",yes:"J\u0101",no:"N\u0113",order:"Order",custom_field_confirm_delete:"You will not be able to recover this Custom Field",already_in_use:"Custom Field is already in use",deleted_message:"Custom Field deleted successfully",options:"options",add_option:"Add Options",add_another_option:"Add another option",sort_in_alphabetical_order:"Sort in Alphabetical Order",add_options_in_bulk:"Add options in bulk",use_predefined_options:"Use Predefined Options",select_custom_date:"Select Custom Date",select_relative_date:"Select Relative Date",ticked_by_default:"Ticked by default",updated_message:"Custom Field updated successfully",added_message:"Custom Field added successfully"},customization:{customization:"piel\u0101go\u0161ana",save:"Saglab\u0101t",addresses:{title:"Adreses",section_description:"J\u016Bs varat piel\u0101got klienta juridisk\u0101s adreses un pieg\u0101des adreses form\u0101tu. (Uzr\u0101d\u0101s PDF izdruk\u0101). ",customer_billing_address:"Klienta nor\u0113\u0137inu adrese",customer_shipping_address:"Klienta pieg\u0101des adrese",company_address:"Uz\u0146\u0113muma adrese",insert_fields:"Pievienot lauku",contact:"Kontakti",address:"Adrese",display_name:"Nosaukums",primary_contact_name:"Galven\u0101 kontakta v\u0101rds",email:"E-pasts",website:"M\u0101jaslapa",name:"Nosaukums",country:"Valsts",state:"Re\u0123ions",city:"Pils\u0113ta",company_name:"Uz\u0146\u0113muma nosaukums",address_street_1:"Adrese 1",address_street_2:"Adrese 2",phone:"Telefona numurs",zip_code:"Pasta indekss",address_setting_updated:"Iestat\u012Bjumi tika veiksm\u012Bgi atjaunin\u0101ti"},updated_message:"Uz\u0146\u0113muma inform\u0101cija veiksm\u012Bgi saglab\u0101ta",invoices:{title:"R\u0113\u0137ini",notes:"Piez\u012Bmes",invoice_prefix:"R\u0113\u0137ina prefikss",default_invoice_email_body:"Default Invoice Email Body",invoice_settings:"Invoice Settings",autogenerate_invoice_number:"Autom\u0101tiski \u0123ener\u0113t r\u0113\u0137ina numuru",autogenerate_invoice_number_desc:"Atsp\u0113jojiet, ja nev\u0113laties autom\u0101tiski \u0123ener\u0113t r\u0113\u0137inu numurus katru reizi, kad izveidojat jaunu r\u0113\u0137inu.",enter_invoice_prefix:"Ievadiet r\u0113\u0137ina prefiksu",terms_and_conditions:"Lieto\u0161anas noteikumi",company_address_format:"Uz\u0146\u0113muma adreses form\u0101ts",shipping_address_format:"Pieg\u0101des adreses form\u0101ts",billing_address_format:"Maks\u0101t\u0101ja / Uz\u0146\u0113muma adreses form\u0101ts",invoice_settings_updated:"R\u0113\u0137ina iestat\u012Bjumi ir veiksm\u012Bgi atjaunin\u0101ti"},estimates:{title:"Apr\u0113\u0137ini",estimate_prefix:"Apr\u0113\u0137inu prefikss",default_estimate_email_body:"Noklus\u0113jamais Apr\u0113\u0137ina e-pasta saturs",estimate_settings:"Apr\u0113\u0137inu iestat\u012Bjumi",autogenerate_estimate_number:"Autom\u0101tiski \u0123ener\u0113t Apr\u0113\u0137ina numuru",estimate_setting_description:"Atsp\u0113jojiet, ja nev\u0113laties autom\u0101tiski \u0123ener\u0113t Apr\u0113\u0137inu numurus katru reizi, kad izveidojat jaunu Apr\u0113\u0137inu.",enter_estimate_prefix:"Ievadiet Apr\u0113\u0137ina prefiksu",estimate_setting_updated:"Apr\u0113\u0137ina iestat\u012Bjumi ir veiksm\u012Bgi atjaunin\u0101ti",company_address_format:"Uz\u0146\u0113muma adreses form\u0101ts",billing_address_format:"Maks\u0101t\u0101ja / Uz\u0146\u0113muma adreses form\u0101ts",shipping_address_format:"Pieg\u0101des adreses form\u0101ts"},payments:{title:"Maks\u0101jumi",description:"P\u0101rskait\u012Bjumu veidi, maks\u0101jumiem",payment_prefix:"Maks\u0101juma prefikss",default_payment_email_body:"Noklus\u0113jamais Maks\u0101juma e-pasta saturs",payment_settings:"Maks\u0101jumu iestat\u012Bjumi",autogenerate_payment_number:"Autom\u0101tiski \u0123ener\u0113t Maks\u0101juma numuru",payment_setting_description:"Atsp\u0113jojiet, ja nev\u0113laties autom\u0101tiski \u0123ener\u0113t Maks\u0101juma numurus katru reizi, kad izveidojat jaunu Maks\u0101jumu.",enter_payment_prefix:"Ievadiet Maks\u0101juma prefiksu",payment_setting_updated:"Maks\u0101jumu iestat\u012Bjumi ir veiksm\u012Bgi atjaunin\u0101ti",payment_modes:"Apmaksas veidi",add_payment_mode:"Pievienojiet apmaksas veidu",edit_payment_mode:"Labot maks\u0101juma veidu",mode_name:"Veida nosaukums",payment_mode_added:"Pievienots maks\u0101\u0161anas veids",payment_mode_updated:"Labots maks\u0101\u0161anas veids",payment_mode_confirm_delete:"Jums neb\u016Bs iesp\u0113jas atg\u016Bt \u0161o Maks\u0101juma veidu",already_in_use:"Maks\u0101juma veids jau tiek izmantots",deleted_message:"Maks\u0101juma veids veiksm\u012Bgi izdz\u0113sts",company_address_format:"Uz\u0146\u0113muma adreses form\u0101ts",from_customer_address_format:"No Klienta adreses form\u0101ts"},items:{title:"Preces",units:"Vien\u012Bbas",add_item_unit:"Pievienot Preces vien\u012Bbu",edit_item_unit:"Labot Preces vien\u012Bbu",unit_name:"Vien\u012Bbas nosaukums",item_unit_added:"Preces vien\u012Bba pievienota",item_unit_updated:"Preces vien\u012Bba atjaunota",item_unit_confirm_delete:"Jums neb\u016Bs iesp\u0113jas atg\u016Bt \u0161o Preces vien\u012Bbu",already_in_use:"Preces vien\u012Bba jau tiek izmantota",deleted_message:"Preces vien\u012Bba veiksm\u012Bgi izdz\u0113sta"},notes:{title:"Piez\u012Bmes",description:"Save time by creating notes and reusing them on your invoices, estimates & payments.",notes:"Notes",type:"Type",add_note:"Add Note",add_new_note:"Add New Note",name:"Name",edit_note:"Edit Note",note_added:"Note added successfully",note_updated:"Note Updated successfully",note_confirm_delete:"You will not be able to recover this Note",already_in_use:"Note is already in use",deleted_message:"Note deleted successfully"}},account_settings:{profile_picture:"Profile Picture",name:"Name",email:"Email",password:"Password",confirm_password:"Confirm Password",account_settings:"Account Settings",save:"Save",section_description:"You can update your name, email & password using the form below.",updated_message:"Account Settings updated successfully"},user_profile:{name:"Name",email:"Email",password:"Password",confirm_password:"Confirm Password"},notification:{title:"Notification",email:"Send Notifications to",description:"Which email notifications would you like to receive when something changes?",invoice_viewed:"Invoice viewed",invoice_viewed_desc:"When your customer views the invoice sent via crater dashboard.",estimate_viewed:"Estimate viewed",estimate_viewed_desc:"When your customer views the estimate sent via crater dashboard.",save:"Save",email_save_message:"Email saved successfully",please_enter_email:"Please Enter Email"},tax_types:{title:"Tax Types",add_tax:"Add Tax",edit_tax:"Edit Tax",description:"You can add or Remove Taxes as you please. Crater supports Taxes on Individual Items as well as on the invoice.",add_new_tax:"Add New Tax",tax_settings:"Tax Settings",tax_per_item:"Tax Per Item",tax_name:"Tax Name",compound_tax:"Compound Tax",percent:"Percent",action:"Action",tax_setting_description:"Enable this if you want to add taxes to individual invoice items. By default, taxes are added directly to the invoice.",created_message:"Tax type created successfully",updated_message:"Tax type updated successfully",deleted_message:"Tax type deleted successfully",confirm_delete:"Jums neb\u016Bs iesp\u0113jas atg\u016Bt \u0161o Nodok\u013Ca veidu",already_in_use:"Nodoklis jau tiek izmantots"},expense_category:{title:"Izdevumu kategorijas",action:"Darb\u012Bba",description:"Kategorijas ir oblig\u0101tas, lai pievienotu Izdevumus.",add_new_category:"Pievienot jaunu kategoriju",add_category:"Pievienot kategoriju",edit_category:"Redi\u0123\u0113t kategoriju",category_name:"Kategorijas nosaukums",category_description:"Apraksts",created_message:"Izdevumu kategorija izveidota veiksm\u012Bgi",deleted_message:"Izdevumu kategorija veiksm\u012Bgi izdz\u0113sta",updated_message:"Izdevumu kategorija atjaunin\u0101ta veiksm\u012Bgi",confirm_delete:"Jums neb\u016Bs iesp\u0113jas atg\u016Bt \u0161o Izdevumu kategoriju",already_in_use:"Kategorija jau tiek izmantota"},preferences:{currency:"Val\u016Bta",default_language:"Noklus\u0113juma valoda",time_zone:"Laika josla",fiscal_year:"Finan\u0161u gads",date_format:"Datuma form\u0101ts",discount_setting:"Atlai\u017Eu iestat\u012Bjumi",discount_per_item:"Atlaide par preci/pakalpojumu ",discount_setting_description:"Iesp\u0113jot \u0161o, lai pie\u0161\u0137irtu atlaides individu\u0101l\u0101m r\u0113\u0137ina prec\u0113m. P\u0113c noklus\u0113juma, atlaide tiek piem\u0113rota r\u0113\u0137inam.",save:"Saglab\u0101t",preference:"Iestat\u012Bjumi | Iestat\u012Bjumi",general_settings:"Noklus\u0113jamie iestat\u012Bjumi sist\u0113mai.",updated_message:"Iestat\u012Bjumi atjaunin\u0101ti veiksm\u012Bgi",select_language:"Izv\u0113lieties valodu",select_time_zone:"Izv\u0113laties laika joslu",select_date_format:"Izv\u0113laties datuma form\u0101tu",select_financial_year:"Izv\u0113laties finan\u0161u gadu"},update_app:{title:"Atjaunin\u0101t App",description:"J\u016Bs varat atjaunin\u0101t Crater sist\u0113mas versiju pavisam vienk\u0101r\u0161i - spie\u017Eot uz pogas zem\u0101k",check_update:"Mekl\u0113t atjaunin\u0101jumus",avail_update:"Pieejami jauni atjaunin\u0101jumi",next_version:"N\u0101kam\u0101 versija",requirements:"Pras\u012Bbas",update:"Atjaunin\u0101t tagad",update_progress:"Notiek atjaunin\u0101\u0161ana...",progress_text:"Tas pras\u012Bs tikai da\u017Eas min\u016Btes. Pirms atjaunin\u0101\u0161anas beig\u0101m, l\u016Bdzu, neatsvaidziniet ekr\u0101nu un neaizveriet logu",update_success:"Sist\u0113ma ir atjaunin\u0101ta! L\u016Bdzu, uzgaidiet, kam\u0113r p\u0101rl\u016Bkprogrammas logs tiks autom\u0101tiski iel\u0101d\u0113ts.",latest_message:"Atjaunin\u0101jumi nav pieejami! Jums ir jaun\u0101k\u0101 versija.",current_version:"Versija",download_zip_file:"Lejupiel\u0101d\u0113t ZIP failu",unzipping_package:"Atarhiv\u0113 Zip failu",copying_files:"Notiek failu kop\u0113\u0161ana",running_migrations:"Notiek migr\u0101cijas",finishing_update:"Pabeidz atjaunin\u0101jumu",update_failed:"Atjaunin\u0101\u0161ana neizdev\u0101s",update_failed_text:"Atvainojiet! J\u016Bsu atjaunin\u0101juma laik\u0101 notika k\u013C\u016Bda: {step}. sol\u012B"},backup:{title:"Backup | Backups",description:"The backup is a zipfile that contains all files in the directories you specify along with a dump of your database",new_backup:"Add New Backup",create_backup:"Create Backup",select_backup_type:"Select Backup Type",backup_confirm_delete:"You will not be able to recover this Backup",path:"path",new_disk:"New Disk",created_at:"created at",size:"size",dropbox:"dropbox",local:"local",healthy:"healthy",amount_of_backups:"amount of backups",newest_backups:"newest backups",used_storage:"used storage",select_disk:"Select Disk",action:"Action",deleted_message:"Backup deleted successfully",created_message:"Backup created successfully",invalid_disk_credentials:"Invalid credential of selected disk"},disk:{title:"File Disk | File Disks",description:"By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.",created_at:"created at",dropbox:"dropbox",name:"Name",driver:"Driver",disk_type:"Type",disk_name:"Disk Name",new_disk:"Add New Disk",filesystem_driver:"Filesystem Driver",local_driver:"local Driver",local_root:"local Root",public_driver:"Public Driver",public_root:"Public Root",public_url:"Public URL",public_visibility:"Public Visibility",media_driver:"Media Driver",media_root:"Media Root",aws_driver:"AWS Driver",aws_key:"AWS Key",aws_secret:"AWS Secret",aws_region:"AWS Region",aws_bucket:"AWS Bucket",aws_root:"AWS Root",do_spaces_type:"Do Spaces type",do_spaces_key:"Do Spaces key",do_spaces_secret:"Do Spaces Secret",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Dropbox Type",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Key",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Default Driver",is_default:"IR NOKLUS\u0112JAMS",set_default_disk:"Iestatiet noklus\u0113juma disku",success_set_default_disk:"Disks ir veiksm\u012Bgi iestat\u012Bts k\u0101 noklus\u0113jums",save_pdf_to_disk:"Saglab\u0101t PDF uz diska",disk_setting_description:" Iesp\u0113jot \u0161o, ja v\u0113laties lai katru r\u0113\u0137ina, apr\u0113\u0137ina un maks\u0101juma izdrukas PDF kopiju saglab\u0101tu disk\u0101. \u0160\u012B opcija samazin\u0101s iel\u0101d\u0113\u0161anas laiku, kad apskat\u012Bsiet PDF.",select_disk:"Izv\u0113lieties disku",disk_settings:"Diska uzst\u0101d\u012Bjumi",confirm_delete:"J\u016Bsu eso\u0161ie faili un mapes nor\u0101d\u012Btaj\u0101 disk\u0101 netiks ietekm\u0113ti, bet diska konfigur\u0101cija tiks izdz\u0113sta no Crater sist\u0113mas",action:"Darb\u012Bba",edit_file_disk:"Labot failu disku",success_create:"Disks tika pievienots veiksm\u012Bgi",success_update:"Disks atjaunin\u0101ts veiksm\u012Bgi",error:"Diska pievieno\u0161anas k\u013C\u016Bda",deleted_message:"Failu disks veiksm\u012Bgi izdz\u0113sts",disk_variables_save_successfully:"Disks konfigur\u0113ts veiksm\u012Bgi",disk_variables_save_error:"Diska konfigur\u0101cija neveiksm\u012Bga.",invalid_disk_credentials:"Nepareizi pieejas dati atz\u012Bm\u0113tajam diskam"}},Af={account_info:"Konta inform\u0101cija",account_info_desc:"Zem\u0101k sniegt\u0101 inform\u0101cija tiks izmantota galven\u0101 administratora konta izveidei. J\u016Bs var\u0113siet main\u012Bt inform\u0101ciju jebkur\u0101 laik\u0101 p\u0113c ielogo\u0161an\u0101s.",name:"V\u0101rds",email:"E-pasts",password:"Parole",confirm_password:"Apstipriniet paroli",save_cont:"Saglab\u0101t un turpin\u0101t",company_info:"Uz\u0146\u0113muma inform\u0101cija",company_info_desc:"\u0160\u012B inform\u0101cija tiks par\u0101d\u012Bta r\u0113\u0137inos. \u0145emiet v\u0113r\u0101, ka v\u0113l\u0101k to var redi\u0123\u0113t iestat\u012Bjumu lap\u0101.",company_name:"Uz\u0146\u0113muma nosaukums",company_logo:"Uz\u0146\u0113muma logo",logo_preview:"Logo",preferences:"Iestat\u012Bjumi",preferences_desc:"Noklus\u0113jamie iestat\u012Bjumi sist\u0113mai.",country:"Valsts",state:"Re\u0123ions",city:"Pils\u0113ta",address:"Adrese",street:"Adrese1 | Adrese2",phone:"Telefona numurs",zip_code:"Pasta indekss",go_back:"Atpaka\u013C",currency:"Val\u016Bta",language:"Valoda",time_zone:"Time Zone",fiscal_year:"Financial Year",date_format:"Date Format",from_address:"From Address",username:"Username",next:"Next",continue:"Continue",skip:"Skip",database:{database:"Site URL & Database",connection:"Database Connection",host:"Database Host",port:"Database Port",password:"Database Password",app_url:"App URL",app_domain:"App Domain",username:"Database Username",db_name:"Database Name",db_path:"Database Path",desc:"Create a database on your server and set the credentials using the form below."},permissions:{permissions:"Permissions",permission_confirm_title:"Are you sure you want to continue?",permission_confirm_desc:"Folder permission check failed",permission_desc:"Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions."},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail Driver",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"Mail Password",username:"Mail Username",mail_config:"Mail Configuration",from_name:"From Mail Name",from_mail:"From Mail Address",encryption:"Mail Encryption",mail_config_desc:"Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc."},req:{system_req:"System Requirements",php_req_version:"Php (version {version} required)",check_req:"P\u0101rbaud\u012Bt pras\u012Bbas",system_req_desc:"Crater sist\u0113mai ir da\u017Eas servera pras\u012Bbas. P\u0101rliecinieties, ka j\u016Bsu serverim ir vajadz\u012Bg\u0101 php versija un visi t\u0101l\u0101k min\u0113tie papla\u0161in\u0101jumi."},errors:{migrate_failed:"Migr\u0101cija neizdev\u0101s",database_variables_save_error:"Nevar\u0113ja konfigur\u0113t .env failu. L\u016Bdzu p\u0101rbaudiet faila pieejas",mail_variables_save_error:"E-pasta konfigur\u0101cija neveiksm\u012Bga.",connection_failed:"Datub\u0101zes savienojums neveiksm\u012Bgs",database_should_be_empty:"Datub\u0101zei j\u0101b\u016Bt tuk\u0161ai"},success:{mail_variables_save_successfully:"E-pasts konfigur\u0113ts veiksm\u012Bgi",database_variables_save_successfully:"Database configured successfully."}},Ef={invalid_phone:"Invalid Phone Number",invalid_url:"Invalid url (ex: http://www.craterapp.com)",invalid_domain_url:"Invalid url (ex: craterapp.com)",required:"Field is required",email_incorrect:"Incorrect Email.",email_already_taken:"The email has already been taken.",email_does_not_exist:"User with given email doesn't exist",item_unit_already_taken:"This item unit name has already been taken",payment_mode_already_taken:"This payment mode name has already been taken",send_reset_link:"Send Reset Link",not_yet:"Not yet? Send it again",password_min_length:"Password must contain {count} characters",name_min_length:"Name must have at least {count} letters.",enter_valid_tax_rate:"Enter valid tax rate",numbers_only:"Numbers Only.",characters_only:"Characters Only.",password_incorrect:"Passwords must be identical",password_length:"Password must be {count} character long.",qty_must_greater_than_zero:"Quantity must be greater than zero.",price_greater_than_zero:"Price must be greater than zero.",payment_greater_than_zero:"Payment must be greater than zero.",payment_greater_than_due_amount:"Entered Payment is more than due amount of this invoice.",quantity_maxlength:"Quantity should not be greater than 20 digits.",price_maxlength:"Price should not be greater than 20 digits.",price_minvalue:"Price should be greater than 0.",amount_maxlength:"Amount should not be greater than 20 digits.",amount_minvalue:"Amount should be greater than 0.",description_maxlength:"Description should not be greater than 255 characters.",subject_maxlength:"Subject should not be greater than 100 characters.",message_maxlength:"Message should not be greater than 255 characters.",maximum_options_error:"Maximum of {max} options selected. First remove a selected option to select another.",notes_maxlength:"Notes should not be greater than 255 characters.",address_maxlength:"Address should not be greater than 255 characters.",ref_number_maxlength:"Ref Number should not be greater than 255 characters.",prefix_maxlength:"Prefix should not be greater than 5 characters.",something_went_wrong:"something went wrong"},Nf="Apr\u0113\u0137ins",Tf="Apr\u0113\u0137ina numurs",If="Apr\u0113\u0137ina datums",$f="Der\u012Bgs l\u012Bdz",Rf="R\u0113\u0137ins",Ff="R\u0113\u0137ina numurs",Mf="R\u0113\u0137ina datums",Vf="Apmaksas termi\u0146\u0161",Bf="Notes",Of="Nosaukums",Lf="Daudzums",Uf="Cena",Kf="Atlaide",qf="Summa",Zf="Starpsumma",Wf="Kop\u0101",Hf="Payment",Gf="MAKS\u0100JUMA IZDRUKA",Yf="Maks\u0101juma datums",Jf="Maks\u0101juma numurs",Xf="Apmaksas veids",Qf="Sa\u0146emt\u0101 summa",eh="IZDEVUMU ATSKAITE",th="KOP\u0100 IZDEVUMI",ah="PE\u013B\u0145AS & IZDEVUMU ATSKAITE",sh="Sales Customer Report",nh="Sales Item Report",ih="Tax Summary Report",oh="IEN\u0100KUMI",rh="PE\u013B\u0145A",dh="Atskaite par p\u0101rdoto: P\u0113c lietot\u0101ja",lh="KOP\u0100 P\u0100RDOTAIS",ch="Atskaite par p\u0101rdoto: P\u0113c preces/pakalpojuma",_h="NODOK\u013BU ATSKAITE",uh="NODOK\u013BI KOP\u0100",mh="Nodok\u013Cu veidi",ph="Izdevumi",gh="Sa\u0146\u0113m\u0113js,",fh="Pieg\u0101des adrese,",hh="Sa\u0146emts no:",vh="Nodoklis";var yh={navigation:gf,general:ff,dashboard:hf,tax_types:vf,global_search:yf,customers:bf,items:kf,estimates:wf,invoices:xf,payments:zf,expenses:Sf,login:jf,users:Pf,reports:Df,settings:Cf,wizard:Af,validation:Ef,pdf_estimate_label:Nf,pdf_estimate_number:Tf,pdf_estimate_date:If,pdf_estimate_expire_date:$f,pdf_invoice_label:Rf,pdf_invoice_number:Ff,pdf_invoice_date:Mf,pdf_invoice_due_date:Vf,pdf_notes:Bf,pdf_items_label:Of,pdf_quantity_label:Lf,pdf_price_label:Uf,pdf_discount_label:Kf,pdf_amount_label:qf,pdf_subtotal:Zf,pdf_total:Wf,pdf_payment_label:Hf,pdf_payment_receipt_label:Gf,pdf_payment_date:Yf,pdf_payment_number:Jf,pdf_payment_mode:Xf,pdf_payment_amount_received_label:Qf,pdf_expense_report_label:eh,pdf_total_expenses_label:th,pdf_profit_loss_label:ah,pdf_sales_customers_label:sh,pdf_sales_items_label:nh,pdf_tax_summery_label:ih,pdf_income_label:oh,pdf_net_profit_label:rh,pdf_customer_sales_report:dh,pdf_total_sales_label:lh,pdf_item_sales_label:ch,pdf_tax_report_label:_h,pdf_total_tax_label:uh,pdf_tax_types_label:mh,pdf_expenses_label:ph,pdf_bill_to:gh,pdf_ship_to:fh,pdf_received_from:hh,pdf_tax_label:vh};const bh={dashboard:"\xD6versikt",customers:"Kunder",items:"Artiklar",invoices:"Fakturor",expenses:"Utgifter",estimates:"Kostnadsf\xF6rslag",payments:"Betalningar",reports:"Rapporter",settings:"Inst\xE4llningar",logout:"Logga ut",users:"Anv\xE4ndare"},kh={add_company:"Skapa f\xF6retag",view_pdf:"Visa PDF",copy_pdf_url:"Kopiera adress till PDF",download_pdf:"Ladda ner PDF",save:"Spara",create:"Skapa",cancel:"Avbryt",update:"Uppdatera",deselect:"Avmarkera",download:"Ladda ner",from_date:"Fr\xE5n datum",to_date:"Till datum",from:"Fr\xE5n",to:"Till",sort_by:"Sortera p\xE5",ascending:"Stigande",descending:"Fallande",subject:"\xC4mne",body:"Inneh\xE5ll",message:"Meddelande",send:"Skicka",go_back:"Tillbaka",back_to_login:"Till inloggningssidan?",home:"Hem",filter:"Filter",delete:"Ta bort",edit:"Editera",view:"Visa",add_new_item:"Skapa artikel",clear_all:"Rensa alla",showing:"Visar",of:"av",actions:"Funktioner",subtotal:"DELSUMMA",discount:"RABATT",fixed:"Fast",percentage:"Procent",tax:"MOMS",total_amount:"TOTALSUMMA",bill_to:"Faktureras till",ship_to:"Levereras till",due:"F\xF6rfallen",draft:"F\xF6rslag",sent:"Skickat",all:"Alla",select_all:"V\xE4lj alla",choose_file:"Klicka h\xE4r f\xF6r att v\xE4lja fil",choose_template:"V\xE4lj mall",choose:"V\xE4lj",remove:"Ta bort",select_a_status:"V\xE4lj status",select_a_tax:"V\xE4lj moms",search:"S\xF6k",are_you_sure:"\xC4r du s\xE4ker?",list_is_empty:"Listan \xE4r tom.",no_tax_found:"Hittade inte moms!",four_zero_four:"404",you_got_lost:"Hoppsan! Nu \xE4r du vilse!",go_home:"G\xE5 hem",test_mail_conf:"Testa epostinst\xE4llningar",send_mail_successfully:"Lyckades skicka epost",setting_updated:"Inst\xE4llningar uppdaterades",select_state:"V\xE4lj kommun",select_country:"V\xE4lj land",select_city:"V\xE4lj stad",street_1:"Gatuadress 1",street_2:"Gatuadress 2",action_failed:"F\xF6rs\xF6k misslyckades",retry:"F\xF6rs\xF6k igen",choose_note:"V\xE4lj notering",no_note_found:"Inga noteringar hittades",insert_note:"L\xE4gg till notering",copied_pdf_url_clipboard:"Url till PDF kopierades till urklipp!"},wh={select_year:"V\xE4lj \xE5r",cards:{due_amount:"F\xF6rfallet belopp",customers:"Kunder",invoices:"Fakturor",estimates:"Kostnadsf\xF6rslag"},chart_info:{total_sales:"F\xF6rs\xE4ljning",total_receipts:"Kvitton",total_expense:"Utgifter",net_income:"Nettoinkomst",year:"V\xE4lj \xE5r"},monthly_chart:{title:"F\xF6rs\xE4ljning och utgifter"},recent_invoices_card:{title:"F\xF6rfallna fakturor",due_on:"F\xF6rfaller den",customer:"Kund",amount_due:"F\xF6rfallet belopp",actions:"Handlingar",view_all:"Visa alla"},recent_estimate_card:{title:"Senaste kostnadsf\xF6rslag",date:"Datum",customer:"Kund",amount_due:"F\xF6rfallet belopp",actions:"Handlingar",view_all:"Visa alla"}},xh={name:"Namn",description:"Beskrivning",percent:"Provent",compound_tax:"Sammansatt moms"},zh={search:"S\xF6k...",customers:"Kunder",users:"Anv\xE4ndare",no_results_found:"Hittade inga resultat"},Sh={title:"Kunder",add_customer:"L\xE4gg till kund",contacts_list:"Kundlista",name:"Namn",mail:"Epost | Epost",statement:"P\xE5st\xE5ende",display_name:"Visningsnamn",primary_contact_name:"Prim\xE4r kontakts namn",contact_name:"Kontaktnamn",amount_due:"F\xF6rfallet belopp",email:"Epost",address:"Adress",phone:"Telefon",website:"Hemsida",overview:"\xD6versikt",enable_portal:"Aktivera portal",country:"Land",state:"Kommun",city:"Stad",zip_code:"Postnummer",added_on:"Tillagd den",action:"Handling",password:"L\xF6senord",street_number:"Gatnummer",primary_currency:"Huvudvaluta",description:"Beskrivning",add_new_customer:"L\xE4gg till ny kund",save_customer:"Spara kund",update_customer:"Uppdatera kund",customer:"Kund | Kunder",new_customer:"Ny kund",edit_customer:"\xC4ndra kund",basic_info:"Information",billing_address:"Fakturaadress",shipping_address:"Leveransadress",copy_billing_address:"Kopiera fr\xE5n faktura",no_customers:"Inga kunder \xE4n!",no_customers_found:"Hittade inga kunder!",no_contact:"No contact",no_contact_name:"No contact name",list_of_customers:"H\xE4r kommer det finnas en lista med kunder.",primary_display_name:"Visningsnamn",select_currency:"V\xE4lj valuta",select_a_customer:"V\xE4lj kund",type_or_click:"Skriv eller klicka f\xF6r att v\xE4lja",new_transaction:"Ny transaktion",no_matching_customers:"Matchade inte med n\xE5gon kund!",phone_number:"Telefonnummer",create_date:"Skapandedatum",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna kund eller n\xE5gra relaterade fakturor, kostnadsf\xF6rslag eller betalningar. | Du kommer inte kunna \xE5terst\xE4lla dessa kunder eller n\xE5gra relaterade fakturor, kostnadsf\xF6rslag eller betalningar.",created_message:"Kund skapades",updated_message:"Kund uppdaterades",deleted_message:"Kund raderades | Kunder raderades"},jh={title:"Artiklar",items_list:"Artikellista",name:"Namn",unit:"Enhet",description:"Beskrivning",added_on:"Tillagd den",price:"Pris",date_of_creation:"Skapandedatum",not_selected:"No item selected",action:"Handling",add_item:"Skapa artikel",save_item:"Spara artikel",update_item:"Uppdatera artiklar",item:"Artikel | Artiklar",add_new_item:"Skapa ny artikel",new_item:"Ny artikel",edit_item:"\xC4ndra artikel",no_items:"Inga artiklar \xE4n!",list_of_items:"H\xE4r kommer lista \xF6ver artiklar vara.",select_a_unit:"v\xE4lj enhet",taxes:"Moms",item_attached_message:"Kan inte radera en artikel som anv\xE4nds",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna artikel | Du kommer inte kunna \xE5terst\xE4lla dessa artiklar",created_message:"Artikel skapades",updated_message:"Artikel uppdaterades",deleted_message:"Artikel raderades | Artiklar raderades"},Ph={title:"Kostnadsf\xF6rslag",estimate:"Kostnadsf\xF6rslag | Kostnadsf\xF6rslag",estimates_list:"Lista med kostnadsf\xF6rslag",days:"{days} dagar",months:"{months} m\xE5nader",years:"{years} \xE5r",all:"Alla",paid:"Betalda",unpaid:"Obetalda",customer:"KUND",ref_no:"REF NR.",number:"NUMMER",amount_due:"F\xD6RFALLET BELOPP",partially_paid:"Delbetald",total:"Summa",discount:"Rabatt",sub_total:"Delsumma",estimate_number:"Kostnadsf\xF6rslagsnummer",ref_number:"Ref Nummer",contact:"Kontakt",add_item:"L\xE4gg till artikel",date:"Datum",due_date:"F\xF6rfallodatum",expiry_date:"Utg\xE5ngsdatum",status:"Status",add_tax:"L\xE4gg till moms",amount:"Belopp",action:"Handling",notes:"Noteringar",tax:"Moms",estimate_template:"Mall",convert_to_invoice:"Konvertera till faktura",mark_as_sent:"Markerade som skickad",send_estimate:"Skicka kostnadsf\xF6rslag",resend_estimate:"Skicka kostnadsf\xF6rslag igen",record_payment:"Registrera betalning",add_estimate:"L\xE4gg till kostnadsf\xF6rslag",save_estimate:"Spara kostnadsf\xF6rslag",confirm_conversion:"Detta kostnadsf\xF6rslag anv\xE4nds f\xF6r att skapa ny faktura.",conversion_message:"Faktura skapades",confirm_send_estimate:"Detta kostnadsf\xF6rslag skickas via epost till kund",confirm_mark_as_sent:"Detta kostnadsf\xF6rslag markeras som skickat",confirm_mark_as_accepted:"Detta kostnadsf\xF6rslag markeras som accepterad",confirm_mark_as_rejected:"Detta kostnadsf\xF6rslag markeras som avvisad",no_matching_estimates:"Inga matchande kostnadsf\xF6rslag!",mark_as_sent_successfully:"Kostnadsf\xF6rslag markerat som skickat",send_estimate_successfully:"Kostnadsf\xF6rslag skickades",errors:{required:"F\xE4ltet \xE4r tvingande"},accepted:"Accepterad",rejected:"Rejected",sent:"Skickat",draft:"Utkast",declined:"Avvisad",new_estimate:"Nytt kostnadsf\xF6rslag",add_new_estimate:"Skapa nytt kostnadsf\xF6rslag",update_Estimate:"Uppdatera kostnadsf\xF6rslag",edit_estimate:"\xC4ndra kostnadsf\xF6rslag",items:"artiklar",Estimate:"Kostnadsf\xF6rslag | Kostnadsf\xF6rslag",add_new_tax:"Skapa ny momssats",no_estimates:"Inga kostnadsf\xF6rslag \xE4n!",list_of_estimates:"H\xE4r kommer det finnas kostnadsf\xF6rslag.",mark_as_rejected:"Markera som avvisad",mark_as_accepted:"Markera som godk\xE4nd",marked_as_accepted_message:"Kostnadsf\xF6rslag markerad som godk\xE4nd",marked_as_rejected_message:"Kostnadsf\xF6rslag markerad som avvisad",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla detta kostnadsf\xF6rslag | Du kommer inte kunna \xE5terst\xE4lla dessa kostnadsf\xF6rslag",created_message:"Kostnadsf\xF6rslag skapades",updated_message:"Kostnadsf\xF6rslag \xE4ndrades",deleted_message:"Kostnadsf\xF6rslag raderades | Kostnadsf\xF6rslag raderades",something_went_wrong:"n\xE5got gick fel",item:{title:"Artikelnamn",description:"Beskrivning",quantity:"Antal",price:"Pris",discount:"Rabatt",total:"Summa",total_discount:"Rabattsumma",sub_total:"Delsumma",tax:"Moms",amount:"Summa",select_an_item:"Skriv eller klicka f\xF6r att v\xE4lja artikel",type_item_description:"Skriv in artikelns beskrivning (frivilligt)"}},Dh={title:"Fakturor",invoices_list:"Fakturor",days:"{days} dagar",months:"{months} m\xE5nader",years:"{years} \xE5r",all:"Alla",paid:"Betalda",unpaid:"Obetalda",viewed:"Viewed",overdue:"Overdue",completed:"Completed",customer:"KUNDER",paid_status:"BETALSTATUS",ref_no:"REF NR.",number:"NUMMER",amount_due:"F\xD6RFALLET BELOPP",partially_paid:"Delbetald",total:"Summa",discount:"Rabatt",sub_total:"Delsumma",invoice:"Faktura | Fakturor",invoice_number:"Fakturanummer",ref_number:"Ref Nummer",contact:"Kontakt",add_item:"L\xE4gg till artikel",date:"Datum",due_date:"F\xF6rfallodatum",status:"Status",add_tax:"L\xE4gg till moms",amount:"Summa",action:"Handling",notes:"Noteringar",view:"Visa",send_invoice:"Skicka faktura",resend_invoice:"Skicka faktura igen",invoice_template:"Fakturamall",template:"Mall",mark_as_sent:"Markera som skickad",confirm_send_invoice:"Denna faktura skickas via epost till kunden",invoice_mark_as_sent:"Denna faktura markeras som skickad",confirm_send:"Denna faktura skickas via epost till kunden",invoice_date:"Fakturadatum",record_payment:"Registrera betalning",add_new_invoice:"L\xE4gg till ny faktura",update_expense:"\xC4ndra utgifter",edit_invoice:"Editera faktura",new_invoice:"Ny faktura",save_invoice:"Spara faktura",update_invoice:"Uppdatera faktura",add_new_tax:"L\xE4gg till ny momssats",no_invoices:"Inga fakturor \xE4n!",list_of_invoices:"H\xE4r kommer det vara en lista med fakturor.",select_invoice:"V\xE4lj faktura",no_matching_invoices:"Inga matchande fakturor!",mark_as_sent_successfully:"Fakturans status \xE4ndrad till skickad",invoice_sent_successfully:"Fakturan skickades",cloned_successfully:"Fakturan kopierades",clone_invoice:"Kopiera faktura",confirm_clone:"Denna faktura kopieras till en ny faktura",item:{title:"Artikelnamn",description:"Beskvirning",quantity:"Antal",price:"Pris",discount:"Rabatt",total:"Summa",total_discount:"Totalsumma",sub_total:"Delsumma",tax:"Moms",amount:"Summa",select_an_item:"Skriv eller klicka f\xF6r att v\xE4lja artikel",type_item_description:"Artikeltypsbeskrivning (frivillig)"},confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna faktura | Du kommer inte kunna \xE5terst\xE4lla dessa fakturor",created_message:"Faktura skapades",updated_message:"Faktura uppdaterades",deleted_message:"Faktura raderades | fakturor raderades",marked_as_sent_message:"Faktura markerad som skickad",something_went_wrong:"n\xE5got blev fel",invalid_due_amount_message:"Totalsumman f\xF6r fakturan kan inte vara l\xE4gra \xE4n den betalda summan. V\xE4nligen uppdatera fakturan eller radera dom kopplade betalningarna."},Ch={title:"Betalningar",payments_list:"Lista med betalningar",record_payment:"Registrera betalning",customer:"Kund",date:"Datum",amount:"Summa",action:"Handling",payment_number:"Betalningsnummer",payment_mode:"Betalningss\xE4tt",invoice:"Faktura",note:"Notering",add_payment:"Skapa betalning",new_payment:"Ny betalning",edit_payment:"\xC4ndra betalning",view_payment:"Visa betalning",add_new_payment:"Skapa ny betalning",send_payment_receipt:"Skicka kvitto p\xE5 betalning",send_payment:"Skicka betalning",save_payment:"Spara betalning",update_payment:"Uppdatera betalning",payment:"Betalning | Betalningar",no_payments:"Inga betalningar \xE4n!",not_selected:"Not selected",no_invoice:"No invoice",no_matching_payments:"Inga matchande betalningar!",list_of_payments:"H\xE4r kommer listan med betalningar finnas.",select_payment_mode:"V\xE4lj betalningss\xE4tt",confirm_mark_as_sent:"Detta kostnadsf\xF6rslag markeras som skickat",confirm_send_payment:"Denna betalning skickas till kunden via epost",send_payment_successfully:"Betalningen skickades",something_went_wrong:"n\xE5got gick fel",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna betalning | Du kommer inte kunna \xE5terst\xE4lla dessa betalningar",created_message:"Betalning skapades",updated_message:"Betalning uppdaterades",deleted_message:"Betalning raderades | Betalningar raderades",invalid_amount_message:"Betalsumman \xE4r ogiltig"},Ah={title:"Utgifter",expenses_list:"Lista med utgifter",select_a_customer:"V\xE4lj en kund",expense_title:"Titel",customer:"Kund",contact:"Kontakt",category:"Kategori",from_date:"Fr\xE5n datum",to_date:"Till datum",expense_date:"Datum",description:"Beskrivning",receipt:"Kvitto",amount:"Summa",action:"Handling",not_selected:"Not selected",note:"Notering",category_id:"Kategorins ID",date:"Datum",add_expense:"L\xE4gg till utgift",add_new_expense:"L\xE4gg till ny utgift",save_expense:"Spara utgift",update_expense:"Uppdatera utgift",download_receipt:"Ladda ner kvitto",edit_expense:"\xC4ndra utgift",new_expense:"Ny utgift",expense:"Utgift | Utgifter",no_expenses:"Inga utgifter \xE4n!",list_of_expenses:"H\xE4r kommer utgifterna finnas.",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna utgift | Du kommer inte kunna \xE5terst\xE4lla dessa utgifter",created_message:"Utgift skapades",updated_message:"Utgift \xE4ndrades",deleted_message:"Utgift raderades | utgifterna raderades",categories:{categories_list:"Kategorier",title:"Titel",name:"Namn",description:"Beskrivning",amount:"Summa",actions:"Handlingar",add_category:"L\xE4gg till kategori",new_category:"Ny kategori",category:"Kategori | Kategorier",select_a_category:"V\xE4lj en kategori"}},Eh={email:"Epost",password:"L\xF6senord",forgot_password:"Gl\xF6mt l\xF6senord?",or_signIn_with:"eller logga in med",login:"Logga in",register:"Registrera",reset_password:"\xC5terst\xE4ll l\xF6senord",password_reset_successfully:"L\xF6senord \xE5terst\xE4llt",enter_email:"Skriv in epost",enter_password:"Skriv in l\xF6senord",retype_password:"Skriv l\xF6senordet igen"},Nh={title:"Anv\xE4ndare",users_list:"Anv\xE4ndare",name:"Namn",description:"Beskrivning",added_on:"Tillagd den",date_of_creation:"Datum skapad",action:"Handling",add_user:"L\xE4gg till anv\xE4ndare",save_user:"Spara anv\xE4ndare",update_user:"Uppdatera anv\xE4ndare",user:"Anv\xE4ndare | Anv\xE4ndare",add_new_user:"L\xE4gg till ny anv\xE4ndare",new_user:"Ny anv\xE4ndare",edit_user:"\xC4ndra anv\xE4ndare",no_users:"Inga anv\xE4ndare \xE4n!",list_of_users:"H\xE4r kommer man se alla anv\xE4ndare.",email:"Epost",phone:"Telefon",password:"L\xF6senord",user_attached_message:"Kan inte ta bort ett objeckt som anv\xE4nds",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna anv\xE4ndare | Du kommer inte kunna \xE5terst\xE4lla dessa anv\xE4ndare",created_message:"Anv\xE4ndare skapades",updated_message:"Anv\xE4ndare uppdaterades",deleted_message:"Anv\xE4ndaren raderades | Anv\xE4ndarna raderades"},Th={title:"Rapport",from_date:"Fr\xE5n datum",to_date:"Till datum",status:"Status",paid:"Betald",unpaid:"Obetald",download_pdf:"Ladda ner PDF",view_pdf:"Visa PDF",update_report:"Uppdatera rapport",report:"Rapport | Rapporter",profit_loss:{profit_loss:"Inkomst och utgifter",to_date:"Till datum",from_date:"Fr\xE5n datum",date_range:"V\xE4lj datumintervall"},sales:{sales:"F\xF6rs\xE4ljningar",date_range:"V\xE4lj datumintervall",to_date:"Till datum",from_date:"Fr\xE5n datum",report_type:"Rapporttyp"},taxes:{taxes:"Momssatser",to_date:"Till datum",from_date:"Fr\xE5n datum",date_range:"V\xE4lj datumintervall"},errors:{required:"F\xE4ltet \xE4r tvingande"},invoices:{invoice:"Faktura",invoice_date:"Fakturadatum",due_date:"F\xF6rfallodatum",amount:"Summa",contact_name:"Kontaktnamn",status:"Status"},estimates:{estimate:"Kostnadsf\xF6rslag",estimate_date:"Kostnadsf\xF6rslagsdatum",due_date:"F\xF6rfallodatum",estimate_number:"Kostnadsf\xF6rslagsnummer",ref_number:"Ref Nummer",amount:"Summa",contact_name:"Kontaktnamn",status:"Status"},expenses:{expenses:"Utgifter",category:"Kategori",date:"Datum",amount:"Summa",to_date:"Till datum",from_date:"Fr\xE5n datum",date_range:"V\xE4lj datumintervall"}},Ih={menu_title:{account_settings:"Kontoinst\xE4llningar",company_information:"F\xF6retagsinformation",customization:"Anpassning",preferences:"Inst\xE4llningar",notifications:"Notifieringar",tax_types:"Momssatser",expense_category:"Utgiftskategorier",update_app:"Uppdatera appen",backup:"Backup",file_disk:"File Disk",custom_fields:"Anpassade f\xE4lt",payment_modes:"Betalmetoder",notes:"Noteringar"},title:"Inst\xE4llningar",setting:"Inst\xE4llningar | Inst\xE4llningar",general:"Allm\xE4n",language:"Spr\xE5k",primary_currency:"Prim\xE4r valuta",timezone:"Tidszon",date_format:"Datumformat",currencies:{title:"Valutor",currency:"Valuta | Valutor",currencies_list:"Lista med valutor",select_currency:"V\xE4lj valuta",name:"Namn",code:"Kod",symbol:"Symbol",precision:"Precision",thousand_separator:"Tusenavgr\xE4nsare",decimal_separator:"Decimalavgr\xE4nsare",position:"Position",position_of_symbol:"Symbolens position",right:"H\xF6ger",left:"V\xE4nster",action:"Handling",add_currency:"L\xE4gg till valuta"},mail:{host:"V\xE4rdadress",port:"Port",driver:"Typ",secret:"Hemlighet",mailgun_secret:"Mailgun Secret",mailgun_domain:"Dom\xE4n",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"L\xF6senord",username:"Anv\xE4ndarnamn",mail_config:"Epostinst\xE4llningar",from_name:"Fr\xE5n namn",from_mail:"Fr\xE5n adress",encryption:"Kryptering",mail_config_desc:"Nedan formul\xE4r anv\xE4nds f\xF6r att konfigurera vilket s\xE4tt som ska anv\xE4ndar f\xF6r att skicka epost. Du kan ocks\xE5 anv\xE4nda tredjepartsleverant\xF6r som Sendgrid, SES o.s.v."},pdf:{title:"PDF-inst\xE4llningar",footer_text:"Sidfotstext",pdf_layout:"PDF-layout"},company_info:{company_info:"F\xF6retagsinfo",company_name:"F\xF6retagsnamn",company_logo:"F\xF6retagslogga",section_description:"Information om ditt f\xF6retags som kommer visas p\xE5 fakturor, kostnadsf\xF6rslag och andra dokument skapade av Crater.",phone:"Telefon",country:"Land",state:"Kommun",city:"Stad",address:"Adress",zip:"Postnr",save:"Spara",updated_message:"F\xF6retagsinformation uppdaterad"},custom_fields:{title:"Anpassade f\xE4lt",section_description:"Anpassa fakturor, kostnadsf\xF6rslag och kvitton med dina egna f\xE4lt. Anv\xE4nd nedanst\xE5ende f\xE4lt i adressforamteringen p\xE5 anpassningarnas inst\xE4llningssida.",add_custom_field:"L\xE4gg till anpassat f\xE4lt",edit_custom_field:"\xC4ndra anpassade f\xE4lt",field_name:"F\xE4ltnamn",label:"Etikett",type:"Typ",name:"Namn",required:"Tvingad",placeholder:"Placeholder",help_text:"Hj\xE4lptext",default_value:"Standardv\xE4rde",prefix:"Prefix",starting_number:"Startnummer",model:"Modell",help_text_description:"Skriv in text som hj\xE4lper anv\xE4ndaren f\xF6rst\xE5 vad det anpassade f\xE4ltet anv\xE4nds f\xF6r.",suffix:"Suffix",yes:"Ja",no:"Nej",order:"Ordning",custom_field_confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla detta anpassade f\xE4lt",already_in_use:"Det anpassade f\xE4ltet anv\xE4nds",deleted_message:"Det anpassade f\xE4ltet raderades",options:"val",add_option:"L\xE4gg till val",add_another_option:"L\xE4gg till ett till val",sort_in_alphabetical_order:"Sortera i alfabetisk ordning",add_options_in_bulk:"L\xE4gg till flera val",use_predefined_options:"Anv\xE4nd f\xF6rinst\xE4llda val",select_custom_date:"V\xE4lj anpassat datum",select_relative_date:"V\xE4lj relativt datum",ticked_by_default:"Ikryssad fr\xE5n start",updated_message:"Anpassat f\xE4lt uppdaterades",added_message:"Anpassat f\xE4lt skapat"},customization:{customization:"Anpassning",save:"Spara",addresses:{title:"Adresser",section_description:"Du kan formatera kundens faktura- och leveransadress (Visas enbart i PDF-en). ",customer_billing_address:"Kunds fakturaadress",customer_shipping_address:"Kunds leveransadress",company_address:"F\xF6retagsadress",insert_fields:"L\xE4gg till f\xE4lt",contact:"Kontakt",address:"Adress",display_name:"Visningsnamn",primary_contact_name:"Huvudkontakts namn",email:"Epost",website:"Hemsida",name:"Namn",country:"Lan",state:"Kommun",city:"Stad",company_name:"F\xF6retagsnamn",address_street_1:"Gatuadress 1",address_street_2:"Gatuadress 2",phone:"Telefon",zip_code:"Postnummer",address_setting_updated:"Inst\xE4llningar f\xF6r adress uppdaterades"},updated_message:"F\xF6retagsinformation uppdaterades",invoices:{title:"Fakturor",notes:"Noteringar",invoice_prefix:"Prefix f\xF6r fakturor",default_invoice_email_body:"Standardtext f\xF6r faktura",invoice_settings:"Fakturainst\xE4llningar",autogenerate_invoice_number:"Generera fakturanummer automatiskt",autogenerate_invoice_number_desc:"Inaktivera detta dom du inte vill att det automatiskt ska genereras ett nytt fakturanummer vid skapande av faktura.",enter_invoice_prefix:"Skriv prefix f\xF6r faktura",terms_and_conditions:"Villkor",company_address_format:"Formatering av f\xF6retagsadress",shipping_address_format:"Formatering av leveransadress",billing_address_format:"Formatering av fakturaadress",invoice_settings_updated:"Fakturainst\xE4llningar uppdaterades"},estimates:{title:"Kostnadsf\xF6rslag",estimate_prefix:"Prefix f\xF6r kostnadsf\xF6rslag",default_estimate_email_body:"Standardtext f\xF6r kostnadsf\xF6rslag",estimate_settings:"Kostnadsf\xF6rslagsinst\xE4llningar",autogenerate_estimate_number:"Generera kostnadsf\xF6rslagsnummer automatiskt",estimate_setting_description:"Inaktivera detta dom du inte vill att det automatiskt ska genereras ett nytt kostnadsf\xF6rslagsnummer vid skapande av kostnadsf\xF6rslag.",enter_estimate_prefix:"Skriv prefix f\xF6r kostnadsf\xF6rslag",estimate_setting_updated:"Kostnadsf\xF6rslagsinst\xE4llningar uppdaterades",company_address_format:"Formatering av f\xF6retagsadress",billing_address_format:"Formatering av fakturaadress",shipping_address_format:"Formatering av leveransadress"},payments:{title:"Betalningar",description:"\xD6verf\xF6ringstyper f\xF6r betalningar",payment_prefix:"Prefix f\xF6r betalningar",default_payment_email_body:"Standardtext f\xF6r betalningar",payment_settings:"Betalningsinst\xE4llningar",autogenerate_payment_number:"Generera betalningsnummer automatiskt",payment_setting_description:"Inaktivera detta dom du inte vill att det automatiskt ska genereras ett nytt betalningssnummer vid skapande av betalning.",enter_payment_prefix:"Skriv prefix f\xF6r kostnadsf\xF6rslag",payment_setting_updated:"Betalningsinst\xE4llningar uppdaterades",payment_modes:"Betalningss\xE4tt",add_payment_mode:"L\xE4gg till betalningss\xE4tt",edit_payment_mode:"\xC4ndra betalningss\xE4tt",mode_name:"Typnamn",payment_mode_added:"Betalningss\xE4tt tillagd",payment_mode_updated:"Betalningss\xE4tt uppdaterat",payment_mode_confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna betalningsmetod",already_in_use:"Betalningss\xE4ttet anv\xE4nds",deleted_message:"Betalningss\xE4tt raderades",company_address_format:"Format f\xF6r f\xF6retagsadress",from_customer_address_format:"Format f\xF6r kundens fr\xE5n-adress"},items:{title:"Artiklar",units:"Enheter",add_item_unit:"L\xE4gg till artikelenhet",edit_item_unit:"Editera artikelenhet",unit_name:"Enhets namn",item_unit_added:"Artikelenhet tillagd",item_unit_updated:"Artikelenhet uppdaterad",item_unit_confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna artikelenhet",already_in_use:"Artikelenhet anv\xE4nds",deleted_message:"Artikelenhet raderades"},notes:{title:"Noteringar",description:"Spara tid genom att skapa noteringar som kan \xE5teranv\xE4ndas p\xE5 fakturor, betalningsf\xF6rslag, och betalningar.",notes:"Noteringar",type:"Typ",add_note:"L\xE4gg till notering",add_new_note:"L\xE4gg till ny notering",name:"Namn",edit_note:"Editera notering",note_added:"Notering skapades",note_updated:"Notering uppdaterades",note_confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna notering",already_in_use:"Notering anv\xE4nds",deleted_message:"Notering raderades"}},account_settings:{profile_picture:"Profilbild",name:"Namn",email:"Epost",password:"L\xF6senord",confirm_password:"Bekr\xE4fta l\xF6senord",account_settings:"Kontoinst\xE4llningar",save:"Spara",section_description:"Du kan uppdatera namn, epost och l\xF6senord med hj\xE4lp av formul\xE4ret nedan.",updated_message:"Kontoinst\xE4llningar uppdaterades"},user_profile:{name:"Namn",email:"Epost",password:"L\xF6senord",confirm_password:"Bekr\xE4fta l\xF6senord"},notification:{title:"Notifieringar",email:"Skicka notifiering till",description:"Vilka notifieringar vill du ha via epost n\xE4r n\xE5got \xE4ndras?",invoice_viewed:"Faktura kollad",invoice_viewed_desc:"N\xE4r din kund kollar fakturan via craters \xF6versikt.",estimate_viewed:"Betalf\xF6rslag kollad",estimate_viewed_desc:"N\xE4r din kund kollar betalf\xF6rslag via craters \xF6versikt.",save:"Spara",email_save_message:"Epost sparades",please_enter_email:"Skriv in epostadress"},tax_types:{title:"Momssatser",add_tax:"L\xE4gg till moms",edit_tax:"\xC4ndra moms",description:"Du kan l\xE4gga till och ta bort momssatser som du vill. Crater har st\xF6d f\xF6r moms per artikel men \xE4ven per faktura.",add_new_tax:"L\xE4gg till ny momssats",tax_settings:"Momssattsinst\xE4llningar",tax_per_item:"Moms per artikel",tax_name:"Namn",compound_tax:"Sammansatt moms",percent:"Procent",action:"Handling",tax_setting_description:"Aktivera detta om du vill l\xE4gga till momssats p\xE5 individuella fakturaartiklar. Som standard s\xE4tts moms direkt p\xE5 fakturan.",created_message:"Momssats skapades",updated_message:"Momssats uppdaterades",deleted_message:"Momssats raderades",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna Momssats",already_in_use:"Momssats anv\xE4nds"},expense_category:{title:"Kategorier f\xF6r utgifter",action:"Handling",description:"Kategorier kr\xE4vs f\xF6r att l\xE4gga till utgifter. Du kan l\xE4gga till och ta bort dessa kategorier som du vill",add_new_category:"L\xE4gg till ny kategori",add_category:"L\xE4gg till kategori",edit_category:"\xC4ndra kategori",category_name:"Kategorinamn",category_description:"Beskrivning",created_message:"Utgiftskategori skapades",deleted_message:"Utgiftskategori raderades",updated_message:"Utgiftskategori uppdaterades",confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna utgiftskategori",already_in_use:"Kategorin anv\xE4nds"},preferences:{currency:"Valuta",default_language:"Standardspr\xE5k",time_zone:"Tidszon",fiscal_year:"R\xE4kenskaps\xE5r",date_format:"Datumformattering",discount_setting:"Rabattinst\xE4llningar",discount_per_item:"Rabatt per artikel ",discount_setting_description:"Aktivera detta om du vill kunna l\xE4gga rabatt p\xE5 enskilda fakturaartiklar. Rabatt ges som standard p\xE5 hela fakturan.",save:"Spara",preference:"Preferens | Preferenser",general_settings:"Standardpreferenser f\xF6r systemet.",updated_message:"Preferenser uppdaterades",select_language:"V\xE4lj spr\xE5k",select_time_zone:"V\xE4lj tidszon",select_date_format:"V\xE4lj datumformat",select_financial_year:"V\xE4lj r\xE4kenskaps\xE5r"},update_app:{title:"Uppdatera applikationen",description:"Du kan enkelt uppdatera Crater genom att s\xF6ka efter uppdateringar via knappen nedan",check_update:"S\xF6k efter uppdateringar",avail_update:"Uppdatering \xE4r tillg\xE4nglig",next_version:"N\xE4sta version",requirements:"Krav",update:"Uppdatera nu",update_progress:"Uppdaterar...",progress_text:"Det kommer bara ta n\xE5gra minuter. St\xE4ng eller uppdatera inte webl\xE4saren f\xF6rr\xE4n uppdateringen \xE4r f\xE4rdig.",update_success:"Applikationen har uppdaterats! V\xE4nta s\xE5 kommer f\xF6nstret laddas om automatiskt..",latest_message:"Ingen uppdatering tillg\xE4nglig! Du har den senaste versionen.",current_version:"Nuvarande version",download_zip_file:"Ladda ner ZIP-fil",unzipping_package:"Zippar upp paket",copying_files:"Kopierar filer",running_migrations:"K\xF6r migreringar",finishing_update:"Avslutar uppdateringen",update_failed:"Uppdatering misslyckades",update_failed_text:"Uppdateringen misslyckades p\xE5 steg : {step} step"},backup:{title:"S\xE4kerhetskopiering | S\xE4kerhetskopieringar",description:"S\xE4kerhetskopian \xE4r en zip-fil som inneh\xE5ller alla filer i katalogerna du v\xE4ljer samt en kopia av databasen",new_backup:"Skapa ny s\xE4kerhetskopia",create_backup:"Skapa s\xE4kerhetskopia",select_backup_type:"V\xE4lj typ av s\xE4kerhetskopia",backup_confirm_delete:"Du kommer inte kunna \xE5terst\xE4lla denna s\xE4kerhetskopia",path:"s\xF6kv\xE4g",new_disk:"Ny disk",created_at:"skapad den",size:"storlek",dropbox:"dropbox",local:"lokal",healthy:"h\xE4lsosam",amount_of_backups:"antal s\xE4kerhetskopior",newest_backups:"senaste s\xE4kerhetskopiorna",used_storage:"anv\xE4nt utrymme",select_disk:"V\xE4lj disk",action:"Handling",deleted_message:"S\xE4kerhetskopia raderad",created_message:"S\xE4kerhetskopia skapades",invalid_disk_credentials:"Ogiltiga autentiseringsuppgifter f\xF6r den valda disken"},disk:{title:"Lagring | Lagringar",description:"Crater anv\xE4nder din lokala disk som standard f\xF6r att spara s\xE4kerhetskopior, avatarer och andra bildfiler. Du kan st\xE4lla in fler lagringsenheter s\xE5som DigitalOcean, S3 och Dropbox beroende av ditt behov.",created_at:"skapad den",dropbox:"dropbox",name:"Namn",driver:"Plats",disk_type:"Typ",disk_name:"Lagringsenhetsnamn",new_disk:"L\xE4gg till ny lagringsenhet",filesystem_driver:"Enhetsplats",local_driver:"Lokal enhet",local_root:"S\xF6kv\xE4g p\xE5 lokal enhet",public_driver:"Offentlig drivrutin",public_root:"Offentlig rot",public_url:"Offentlig URL",public_visibility:"Offentlig synlighet",media_driver:"Mediaenhet",media_root:"Media Root",aws_driver:"AWS",aws_key:"Nyckel",aws_secret:"L\xF6senord",aws_region:"Region",aws_bucket:"Bucket",aws_root:"S\xF6kv\xE4g",do_spaces_type:"Do Spaces type",do_spaces_key:"Nyckel",do_spaces_secret:"L\xF6senord",do_spaces_region:"Region",do_spaces_bucket:"Bucket",do_spaces_endpoint:"Endpoint",do_spaces_root:"S\xF6kv\xE4g",dropbox_type:"Typ",dropbox_token:"Token",dropbox_key:"Nyckel",dropbox_secret:"L\xF6senord",dropbox_app:"App",dropbox_root:"S\xF6kv\xE4g",default_driver:"Standard",is_default:"\xC4r standard",set_default_disk:"V\xE4lj som standard",set_default_disk_confirm:"Denna disk kommer bli standard och alla nya PFDer blir sparade h\xE4r",success_set_default_disk:"Disk vald som standard",save_pdf_to_disk:"Spara PDFer till disk",disk_setting_description:"Aktivera detta om du vill ha en kopia av varje faktura, kostnadsf\xF6rslag, och betalningskvitto som PDF p\xE5 din standard disk automatiskt.Aktiverar du denna funktion s\xE5 kommer laddtiderna f\xF6r visning av PDFer minskas.",select_disk:"V\xE4lj Disk",disk_settings:"Diskinst\xE4llningar",confirm_delete:"Dina existerande filer och kataloger p\xE5 den valda disken kommer inte p\xE5verkas men inst\xE4llningarna f\xF6r disken raderas fr\xE5n Crater",action:"Handling",edit_file_disk:"\xC4ndra disk",success_create:"Disk skapades",success_update:"Disk uppdaterades",error:"Fel vid skapande av disk",deleted_message:"Disk raderades",disk_variables_save_successfully:"Diskinst\xE4llningar sparades",disk_variables_save_error:"N\xE5got gick fel vid sparning av diskinst\xE4llningar",invalid_disk_credentials:"Felaktiga uppgifter vid val av disk"}},$h={account_info:"Kontoinformation",account_info_desc:"Nedan detaljer anv\xE4nds f\xF6r att skapa huvudadministrat\xF6rskonto. Du kan \xE4ndra detta i efterhand.",name:"Namn",email:"Epost",password:"L\xF6senord",confirm_password:"Bekr\xE4fta l\xF6senord",save_cont:"Spara och forts\xE4tt",company_info:"F\xF6retagsinformation",company_info_desc:"Denna information visas p\xE5 fakturor. Du kan \xE4ndra detta i efterhand p\xE5 sidan f\xF6r inst\xE4llningar.",company_name:"F\xF6retagsnamn",company_logo:"F\xF6retagslogga",logo_preview:"F\xF6rhandsvisning av logga",preferences:"Inst\xE4llningar",preferences_desc:"Standardinst\xE4llningar f\xF6r systemet.",country:"Land",state:"Kommun",city:"Stad",address:"Adress",street:"Gatuadress1 | Gatuadress2",phone:"Telefon",zip_code:"Postnr",go_back:"Tillbaka",currency:"Valuta",language:"Spr\xE5k",time_zone:"Tidszon",fiscal_year:"R\xE4kenskaps\xE5r",date_format:"Datumformat",from_address:"Fr\xE5n adress",username:"Anv\xE4ndarnamn",next:"N\xE4sta",continue:"Forts\xE4tt",skip:"Hoppa \xF6ver",database:{database:"Sidans URL & Databas",connection:"Databasanslutning",host:"V\xE4rdadress till databasen",port:"Port till databasen",password:"L\xF6senord till databasen",app_url:"Appens URL",app_domain:"Appens Dom\xE4n",username:"Anv\xE4ndarnamn till databasen",db_name:"Databasens namn",db_path:"Databasens s\xF6kv\xE4g",desc:"Skapa en database p\xE5 din server och st\xE4ll in autentiseringsuppgifter i formul\xE4ret nedan."},permissions:{permissions:"Beh\xF6righeter",permission_confirm_title:"\xC4r du s\xE4ker p\xE5 att du vill forts\xE4tta?",permission_confirm_desc:"Fel beh\xF6righeter vid kontroll p\xE5 katalogen",permission_desc:"Nedan \xE4r en lista p\xE5 katalogr\xE4ttigheter som kr\xE4vs f\xF6r att denna app ska fungera. Om beh\xF6righetskontrollen misslyckas, uppdatera beh\xF6righeterna f\xF6r katalogerna."},mail:{host:"V\xE4rdadress till epost",port:"Port till epost",driver:"Typ",secret:"Hemlighet",mailgun_secret:"Hemlighet",mailgun_domain:"Dom\xE4n",mailgun_endpoint:"Endpoint",ses_secret:"Hemlighet",ses_key:"Nyckel",password:"L\xF6senord",username:"Anv\xE4ndarnamn",mail_config:"Epostinst\xE4llningar",from_name:"Namn som st\xE5r vid utg\xE5ende epost",from_mail:"Epostadress som anv\xE4nds som returadress vid utg\xE5ende epost",encryption:"Epostkryptering",mail_config_desc:"Nedan formul\xE4r anv\xE4nds f\xF6r att konfigurera vilket s\xE4tt som ska anv\xE4ndar f\xF6r att skicka epost. Du kan ocks\xE5 anv\xE4nda tredjepartsleverant\xF6r som Sendgrid, SES o.s.v."},req:{system_req:"Systemkrav",php_req_version:"Php (version {version} kr\xE4vs)",check_req:"Kontrollera krav",system_req_desc:"Crater har n\xE5gra krav p\xE5 din server. Kontrollera att din server har den n\xF6dv\xE4ndiga versionen av PHP och alla till\xE4gg som n\xE4mns nedan."},errors:{migrate_failed:"Migration misslyckades",database_variables_save_error:"Kan inte skriva till .env-filen. Kontrollera dina beh\xF6righeter till filen",mail_variables_save_error:"Epostinst\xE4llningar misslyckades.",connection_failed:"Databasanslutning misslyckades",database_should_be_empty:"Databasen m\xE5ste vara tom"},success:{mail_variables_save_successfully:"Epostinst\xE4llningar sparades.",database_variables_save_successfully:"Databasinst\xE4llningar sparades."}},Rh={invalid_phone:"Felaktigt telefonnummer",invalid_url:"Felaktig url (ex: http://www.craterapp.com)",invalid_domain_url:"Felaktig url (ex: craterapp.com)",required:"F\xE4ltet \xE4r tvingande",email_incorrect:"Felaktig epostadress.",email_already_taken:"Denna epostadress finns redan.",email_does_not_exist:"Anv\xE4ndare med den epostadressen finns inte",item_unit_already_taken:"Detta artikelenhetsnamn finns redan",payment_mode_already_taken:"Betalningsmetodsnamnet finns redan",send_reset_link:"Skicka l\xE4nk f\xF6r \xE5terst\xE4llning",not_yet:"Inte \xE4n? Skicka igen",password_min_length:"L\xF6senordet m\xE5ste inneh\xE5lla {count} tecken",name_min_length:"Namn m\xE5ste ha minst {count} bokst\xE4ver.",enter_valid_tax_rate:"Skriv in till\xE5ten momssats",numbers_only:"Endast siffror.",characters_only:"Endast bokst\xE4ver.",password_incorrect:"L\xF6senorden m\xE5ste \xF6verensst\xE4mma",password_length:"L\xF6senordet m\xE5ste vara minst {count} tecken.",qty_must_greater_than_zero:"Antal m\xE5ste vara st\xF6rre \xE4n noll.",price_greater_than_zero:"Pris m\xE5ste vara st\xF6rre \xE4n noll.",payment_greater_than_zero:"Betalningen m\xE5ste vara st\xF6rre \xE4n noll.",payment_greater_than_due_amount:"Inslagen betalning \xE4r st\xF6rre \xE4n summan p\xE5 denna faktura.",quantity_maxlength:"Antal kan inte vara st\xF6rre \xE4n 20 siffror.",price_maxlength:"Pris kan inte vara st\xF6rre \xE4n 20 siffror.",price_minvalue:"Pris m\xE5ste vara st\xF6rre \xE4n 0.",amount_maxlength:"Belopp kan inte vara st\xF6rre \xE4n 20 siffror.",amount_minvalue:"Belopp m\xE5ste vara st\xF6rre \xE4n 9.",description_maxlength:"Beskrivning f\xE5r inte inneh\xE5lla fler \xE4n 255 tecken.",subject_maxlength:"\xC4mne f\xE5r inte inneh\xE5lla fler \xE4n 100 tecken.",message_maxlength:"Meddelande f\xE5r inte inneh\xE5lla fler \xE4n 255 tecken.",maximum_options_error:"H\xF6gst {max} val. Ta bort ett val f\xF6r att kunna l\xE4gga till ett annat.",notes_maxlength:"Noteringar kan inte vara st\xF6rre \xE4n 255 tecken.",address_maxlength:"Adress kan inte vara st\xF6rre \xE4n 255 tecken.",ref_number_maxlength:"Referensnummer kan inte vara st\xF6rre \xE4n 255 tecken.",prefix_maxlength:"Prefix kan inte vara st\xF6rre \xE4n 5 tecken.",something_went_wrong:"n\xE5got blev fel"},Fh="Kostnadsf\xF6rslag",Mh="Kostnadsf\xF6rslagsnummer",Vh="Kostnadsf\xF6rslagsdatum",Bh="Utg\xE5ngsdatum",Oh="Faktura",Lh="Fakturanummer",Uh="Fakturadatum",Kh="Inbetalningsdatum",qh="Noteringar",Zh="Artiklar",Wh="Antal",Hh="Kostnad",Gh="Rabatt",Yh="Belopp",Jh="Delsumma",Xh="Summa",Qh="Payment",ev="Betalningskvitto",tv="Betalningsdatum",av="Betalningsnummer",sv="Betalningstyp",nv="Belopp mottaget",iv="Kostnadsrapport",ov="Totalkostnad",rv="Resultat- och f\xF6rlustrapport",dv="Sales Customer Report",lv="Sales Item Report",cv="Tax Summary Report",_v="Inkomst",uv="Nettof\xF6rtj\xE4nst",mv="F\xF6rs\xE4ljningsrapport: Per kund",pv="SUMMA F\xD6RS\xC4LJNINGAR",gv="F\xF6rs\xE4ljningsrapport: Per artikel",fv="Momsrapport",hv="SUMMA MOMS",vv="Momssatser",yv="Utgifter",bv="Faktureras till,",kv="Skickas till,",wv="Fr\xE5n:",xv="Tax";var zv={navigation:bh,general:kh,dashboard:wh,tax_types:xh,global_search:zh,customers:Sh,items:jh,estimates:Ph,invoices:Dh,payments:Ch,expenses:Ah,login:Eh,users:Nh,reports:Th,settings:Ih,wizard:$h,validation:Rh,pdf_estimate_label:Fh,pdf_estimate_number:Mh,pdf_estimate_date:Vh,pdf_estimate_expire_date:Bh,pdf_invoice_label:Oh,pdf_invoice_number:Lh,pdf_invoice_date:Uh,pdf_invoice_due_date:Kh,pdf_notes:qh,pdf_items_label:Zh,pdf_quantity_label:Wh,pdf_price_label:Hh,pdf_discount_label:Gh,pdf_amount_label:Yh,pdf_subtotal:Jh,pdf_total:Xh,pdf_payment_label:Qh,pdf_payment_receipt_label:ev,pdf_payment_date:tv,pdf_payment_number:av,pdf_payment_mode:sv,pdf_payment_amount_received_label:nv,pdf_expense_report_label:iv,pdf_total_expenses_label:ov,pdf_profit_loss_label:rv,pdf_sales_customers_label:dv,pdf_sales_items_label:lv,pdf_tax_summery_label:cv,pdf_income_label:_v,pdf_net_profit_label:uv,pdf_customer_sales_report:mv,pdf_total_sales_label:pv,pdf_item_sales_label:gv,pdf_tax_report_label:fv,pdf_total_tax_label:hv,pdf_tax_types_label:vv,pdf_expenses_label:yv,pdf_bill_to:bv,pdf_ship_to:kv,pdf_received_from:wv,pdf_tax_label:xv};const Sv={dashboard:"Hlavn\xFD Panel",customers:"Z\xE1kazn\xEDci",items:"Polo\u017Eky",invoices:"Fakt\xFAry",expenses:"V\xFDdaje",estimates:"Cenov\xE9 odhady",payments:"Platby",reports:"Reporty",settings:"Nastavenia",logout:"Odhl\xE1si\u0165 sa",users:"U\u017Eivatelia"},jv={add_company:"Prida\u0165 firmu",view_pdf:"Zobrazi\u0165 PDF",copy_pdf_url:"Kop\xEDrova\u0165 PDF adresu",download_pdf:"Stiahnu\u0165 PDF",save:"Ulo\u017Ei\u0165",create:"Vytvori\u0165",cancel:"Zru\u0161i\u0165",update:"Aktualizova\u0165",deselect:"Zru\u0161i\u0165 v\xFDber",download:"Stiahnu\u0165",from_date:"Od d\xE1tumu",to_date:"Do d\xE1tumu",from:"Od",to:"Pre",sort_by:"Zoradi\u0165 pod\u013Ea",ascending:"Vzostupne",descending:"Zostupne",subject:"Predmet",body:"Telo textu",message:"Spr\xE1va",send:"Odosla\u0165",go_back:"Sp\xE4\u0165",back_to_login:"Sp\xE4\u0165 na prihl\xE1senie?",home:"Domov",filter:"Filtrova\u0165",delete:"Odstr\xE1ni\u0165",edit:"Upravi\u0165",view:"Zobrazi\u0165",add_new_item:"Prida\u0165 nov\xFA polo\u017Eku",clear_all:"Vy\u010Disti\u0165 v\u0161etko",showing:"Zobrazuje sa",of:"z",actions:"Akcie",subtotal:"MEDZIS\xDA\u010CET",discount:"Z\u013DAVA",fixed:"Pevn\xE9",percentage:"Percento",tax:"DA\u0147",total_amount:"SUMA SPOLU",bill_to:"Faktura\u010Dn\xE1 adresa",ship_to:"Adresa doru\u010Denia",due:"Term\xEDn",draft:"Koncept",sent:"Odoslan\xE9",all:"V\u0161etko",select_all:"Vybra\u0165 v\u0161etky",choose_file:"Kliknite sem pre vybratie s\xFAboru",choose_template:"Vybra\u0165 vzh\u013Ead",choose:"Vybra\u0165",remove:"Odstr\xE1ni\u0165",powered_by:"Be\u017E\xED na",bytefury:"Bytefury",select_a_status:"Vyberte stav",select_a_tax:"Vyberte da\u0148",search:"H\u013Eada\u0165",are_you_sure:"Ste si ist\xFD?",list_is_empty:"Zoznam je pr\xE1zdny.",no_tax_found:"\u017Diadna da\u0148 nebola n\xE1jden\xE1!",four_zero_four:"404",you_got_lost:"Ups! Stratili ste sa!",go_home:"\xCDs\u0165 domov",test_mail_conf:"Otestova\u0165 e-mailov\xFA konfigur\xE1ciu",send_mail_successfully:"E-Mail odoslan\xFD \xFAspe\u0161ne",setting_updated:"Nastavenia boli \xFAspe\u0161ne aktualizovan\xE9",select_state:"Vyberte \u0161t\xE1t",select_country:"Vyberte krajinu",select_city:"Vyberte mesto",street_1:"Prv\xFD riadok ulice",street_2:"Druh\xFD riadok ulice",action_failed:"Akcia ne\xFAspe\u0161n\xE1",retry:"Sk\xFAsi\u0165 znova",choose_note:"Vyberte pozn\xE1mku",no_note_found:"Neboli n\xE1jden\xE9 \u017Eiadne pozn\xE1mky",insert_note:"Vlo\u017E pozn\xE1mku"},Pv={select_year:"Vyberte rok",cards:{due_amount:"\u010Ciastka k zaplateniu",customers:"Z\xE1kazn\xEDci",invoices:"Fakt\xFAry",estimates:"Cenov\xE9 odhady"},chart_info:{total_sales:"Predaje",total_receipts:"Doklady o zaplaten\xED",total_expense:"V\xFDdaje",net_income:"\u010Cist\xFD pr\xEDjem",year:"Vyberte rok"},monthly_chart:{title:"Predaje a V\xFDdaje"},recent_invoices_card:{title:"Splatn\xE9 fakt\xFAry",due_on:"Term\xEDn splatenia",customer:"Z\xE1kazn\xEDk",amount_due:"\u010Ciastka k zaplateniu",actions:"Akcie",view_all:"Zobrazi\u0165 v\u0161etko"},recent_estimate_card:{title:"Ned\xE1vne cenov\xE9 odhady",date:"D\xE1tum",customer:"Z\xE1kazn\xEDk",amount_due:"Cena",actions:"Akcie",view_all:"Zobrazi\u0165 v\u0161etky"}},Dv={name:"Meno",description:"Popis",percent:"Percento",compound_tax:"Zlo\u017Een\xE1 da\u0148"},Cv={search:"H\u013Eada\u0165...",customers:"Z\xE1kazn\xEDci",users:"U\u017Eivatelia",no_results_found:"Neboli n\xE1jden\xE9 \u017Eiadne v\xFDsledky"},Av={title:"Z\xE1kazn\xEDci",add_customer:"Prida\u0165 Z\xE1kazn\xEDka",contacts_list:"Zoznam z\xE1kazn\xEDkov",name:"Meno",mail:"E-mail | E-maily",statement:"V\xFDpis",display_name:"Zobrazovan\xE9 meno",primary_contact_name:"Meno Prim\xE1rneho Kontaktu",contact_name:"Meno Kontaktu",amount_due:"\u010Ciastka k zaplateniu",email:"E-mail",address:"Adresa",phone:"Telef\xF3n",website:"Webov\xE9 str\xE1nky",overview:"Preh\u013Ead",enable_portal:"Aktivova\u0165 port\xE1l",country:"Krajina",state:"\u0160t\xE1t",city:"Mesto",zip_code:"PS\u010C",added_on:"Pridan\xE9 D\u0148a",action:"Akcia",password:"Heslo",street_number:"\u010C\xEDslo Ulice",primary_currency:"Hlavn\xE1 Mena",description:"Popis",add_new_customer:"Prida\u0165 Nov\xE9ho Z\xE1kazn\xEDka",save_customer:"Ulo\u017Ei\u0165 Z\xE1kazn\xEDka",update_customer:"Aktualizova\u0165 Zak\xE1zn\xEDka",customer:"Z\xE1kazn\xEDk | Z\xE1kazn\xEDci",new_customer:"Nov\xFD Z\xE1kazn\xEDk",edit_customer:"Upravi\u0165 Z\xE1kazn\xEDka",basic_info:"Z\xE1kladn\xE9 Inform\xE1cie",billing_address:"Faktura\u010Dn\xE1 Adresa",shipping_address:"Doru\u010Dovacia Adresa",copy_billing_address:"Kop\xEDrova\u0165 pod\u013Ea Faktura\u010Dnej adresy",no_customers:"Zatia\u013E nebol pridan\xFD \u017Eiadny z\xE1kazn\xEDk!",no_customers_found:"Nen\xE1jden\xED \u017Eiadni z\xE1kazn\xEDci!",list_of_customers:"T\xE1to sekcia bude obsahova\u0165 zoznam z\xE1kazn\xEDkov.",primary_display_name:"Hlavn\xE9 meno pre zobrazenie",select_currency:"Vyberte menu",select_a_customer:"Vyberte z\xE1kazn\xEDka",type_or_click:"Za\u010Dnite p\xEDsa\u0165 alebo kliknite pre vybratie",new_transaction:"Nov\xE1 Transakcia",no_matching_customers:"Nena\u0161li sa \u017Eiadny z\xE1kazn\xEDci sp\u013A\u0148aj\xFAce Va\u0161e podmienky!",phone_number:"Telef\xF3nne \u010C\xEDslo",create_date:"D\xE1tum Vytvorenia",confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 tohto z\xE1kazn\xEDka ani \u017Eiadne fakt\xFAry, cenov\xE9 odhady alebo platby s n\xEDm spojen\xE9. | Nebudete m\xF4c\u0165 obnovi\u0165 t\xFDchto z\xE1kazn\xEDkov ani \u017Eiadne fakt\xFAry, cenov\xE9 odhady alebo platby s nimi spojen\xE9.",created_message:"Z\xE1kazn\xEDk \xFAspe\u0161ne vytvoren\xFD",updated_message:"Z\xE1kazn\xEDk \xFAspe\u0161ne aktualizovan\xFD",deleted_message:"Z\xE1kazn\xEDk \xFAspe\u0161ne odstr\xE1nen\xFD | Z\xE1kazn\xEDci \xFAspe\u0161ne odstr\xE1nen\xED"},Ev={title:"Polo\u017Eky",items_list:"Zoznam Polo\u017Eiek",name:"Meno",unit:"Jednotka",description:"Popis",added_on:"Pridan\xE9 D\u0148a",price:"Cena",date_of_creation:"D\xE1tum Vytvorenia",action:"Akcia",add_item:"Prida\u0165 Polo\u017Eku",save_item:"Ulo\u017Ei\u0165 Polo\u017Eku",update_item:"Aktualizova\u0165 Polo\u017Eku",item:"Polo\u017Eka | Polo\u017Eky",add_new_item:"Prida\u0165 Nov\xFA Polo\u017Eku",new_item:"Nov\xE1 polo\u017Eka",edit_item:"Upravi\u0165 Polo\u017Eku",no_items:"Zatia\u013E \u017Eiadn\xE9 polo\u017Eky!",list_of_items:"T\xE1to sekcia bude obsahova\u0165 zoznam z\xE1kazn\xEDkov.",select_a_unit:"vyberte jednotku",taxes:"Dane",item_attached_message:"Nie je mo\u017En\xE9 vymaza\u0165 polo\u017Eku, ktor\xE1 sa pou\u017E\xEDva",confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 t\xFAto Polo\u017Eku | Nebudete m\xF4c\u0165 obnovi\u0165 tieto Polo\u017Eky",created_message:"Polo\u017Eka \xFAspe\u0161ne vytvoren\xE1",updated_message:"Polo\u017Eka \xFAspe\u0161ne aktualizovan\xE1",deleted_message:"Polo\u017Eka \xFAspe\u0161ne odstr\xE1nen\xE1 | Polo\u017Eky \xFAspe\u0161ne odstr\xE1nen\xE9"},Nv={title:"Cenov\xE9 odhady",estimate:"Cenov\xFD odhad | Cenov\xE9 odhady",estimates_list:"Zoznam Cenov\xFDch odhadov",days:"{days} Dn\xED",months:"{months} Mesiac",years:"{years} Rok",all:"V\u0161etko",paid:"Zaplaten\xE9",unpaid:"Nezaplaten\xE9",customer:"Z\xC1KAZN\xCDK",ref_no:"REF \u010C.",number:"\u010C\xCDSLO",amount_due:"Dl\u017En\xE1 suma",partially_paid:"\u010Ciasto\u010Dne Zaplaten\xE9",total:"Spolu",discount:"Z\u013Eava",sub_total:"Medzis\xFA\u010Det",estimate_number:"\u010C\xEDslo Cenov\xE9ho odhadu",ref_number:"Ref. \u010C\xEDslo",contact:"Kontakt",add_item:"Prida\u0165 Polo\u017Eku",date:"D\xE1tum",due_date:"D\xE1tum Splatnosti",expiry_date:"D\xE1tum Ukon\u010Denia Platnosti",status:"Stav",add_tax:"Prida\u0165 Da\u0148",amount:"Suma",action:"Akcia",notes:"Pozn\xE1mky",tax:"Da\u0148",estimate_template:"Vzh\u013Ead",convert_to_invoice:"Konvertova\u0165 do Fakt\xFAry",mark_as_sent:"Ozna\u010Di\u0165 ako odoslan\xE9",send_estimate:"Odosla\u0165 Cenov\xFD odhad",resend_estimate:"Znovu Odosla\u0165 Cenov\xFD odhad",record_payment:"Zaznamena\u0165 Platbu",add_estimate:"Vytvori\u0165 Cenov\xFD odhad",save_estimate:"Ulo\u017Ei\u0165 Cenov\xFD odhad",confirm_conversion:"Tento cenov\xFD odhad bude pou\u017Eit\xFD k vytvoreniu novej Fakt\xFAry.",conversion_message:"Fakt\xFAra \xFAspe\u0161ne vytvoren\xE1",confirm_send_estimate:"Tento Cenov\xFD odhad bude odoslan\xFD z\xE1kazn\xEDkovi prostredn\xEDctvom e-mailu",confirm_mark_as_sent:"Tento Cenov\xFD odhad bude ozna\u010Den\xFD ako odoslan\xFD",confirm_mark_as_accepted:"Tento Cenov\xFD odhad bude ozna\u010Den\xFD ako Prijat\xFD",confirm_mark_as_rejected:"Tento Cenov\xFD odhad bude ozna\u010Den\xFD ako Odmietnut\xFD",no_matching_estimates:"Nena\u0161li sa \u017Eiadne Cenov\xE9 odhady sp\u013A\u0148aj\xFAce Va\u0161e podmienky!",mark_as_sent_successfully:"Cenov\xFD odhad \xFAspe\u0161ne ozna\u010Den\xFD ako odoslan\xFD",send_estimate_successfully:"Cenov\xFD odhad \xFAspe\u0161ne odoslan\xFD",errors:{required:"Pole je povinn\xE9"},accepted:"Prij\xE1t\xE1",sent:"Odoslan\xE1",draft:"Koncept",declined:"Zru\u0161en\xFD",new_estimate:"Nov\xFD Cenov\xFD odhad",add_new_estimate:"Prida\u0165 nov\xFD Cenov\xFD odhad",update_Estimate:"Aktualizova\u0165 Cenov\xFD odhad",edit_estimate:"Upravi\u0165 Cenov\xFD odhad",items:"polo\u017Eky",Estimate:"Cenov\xFD odhad | Cenov\xE9 odhady",add_new_tax:"Prida\u0165 Nov\xFA Da\u0148",no_estimates:"Zatia\u013E \u017Eiadne cenov\xE9 odhady",list_of_estimates:"T\xE1to sekcia bude obsahova\u0165 zoznam cenov\xFDch odhadov.",mark_as_rejected:"Ozna\u010Di\u0165 ako odmietnut\xFA",mark_as_accepted:"Ozna\u010Den\xFD ako prijat\xFA",marked_as_accepted_message:"Cenov\xFD odhad ozna\u010Den\xFD ako schv\xE1len\xFD",marked_as_rejected_message:"Cenov\xFD odhad ozna\u010Den\xFD ako odmietnut\xFD",confirm_delete:"Nebude mo\u017En\xE9 obnovi\u0165 cenov\xFD odhad | Nebude mo\u017En\xE9 obnovi\u0165 cenov\xE9 odhady",created_message:"Cenov\xFD odhad \xFAspe\u0161n\xE9 vytvoren\xFD",updated_message:"Cenov\xFD odhad \xFAspe\u0161n\xE9 aktualizovan\xFD",deleted_message:"Cenov\xFD odhad \xFAspe\u0161n\xE9 vymazan\xFD | Cenov\xE9 odhady \xFAspe\u0161n\xE9 vymazan\xE9",something_went_wrong:"Nie\u010Do neprebehlo v poriadku, odsk\xFA\u0161ajte pros\xEDm znova.",item:{title:"N\xE1zov Polo\u017Eky",description:"Popis",quantity:"Mno\u017Estvo",price:"Cena",discount:"Z\u013Eava",total:"Celkom",total_discount:"Celkov\xE1 z\u013Eava",sub_total:"Medzis\xFA\u010Det",tax:"Da\u0148",amount:"Suma",select_an_item:"Za\u010Dnite p\xEDsa\u0165 alebo kliknite pre vybratie polo\u017Eky",type_item_description:"Zadajte Popis Polo\u017Eky (volite\u013En\xE9)"}},Tv={title:"Fakt\xFAry",invoices_list:"Zoznam Fakt\xFAr",days:"{days} \u010Ee\u0148",months:"{months} Mesiac",years:"{years} Rok",all:"V\u0161etko",paid:"Zaplaten\xE9",unpaid:"Nezaplaten\xE9",customer:"Z\xC1KAZN\xCDK",paid_status:"Stav platby",ref_no:"REF \u010C.",number:"\u010C\xCDSLO",amount_due:"Dl\u017En\xE1 suma",partially_paid:"\u010Ciasto\u010Dne Zaplaten\xE9",total:"Spolu",discount:"Z\u013Eava",sub_total:"Medzis\xFA\u010Det",invoice:"Fakt\xFAra | Fakt\xFAry",invoice_number:"\u010C\xEDslo Fakt\xFAry",ref_number:"Ref. \u010C\xEDslo",contact:"Kontakt",add_item:"Prida\u0165 Polo\u017Eku",date:"D\xE1tum",due_date:"D\xE1tum Splatnosti",status:"Stav",add_tax:"Prida\u0165 Da\u0148",amount:"Suma",action:"Akcia",notes:"Pozn\xE1mky",view:"Zobrazi\u0165",send_invoice:"Odosla\u0165 Fakt\xFAru",resend_invoice:"Odosla\u0165 Fakt\xFAru Znovu",invoice_template:"Vzh\u013Ead fakt\xFAry",template:"Vzh\u013Ead",mark_as_sent:"Ozna\u010Di\u0165 ako odoslan\xFA",confirm_send_invoice:"T\xE1to fakt\xFAra bude odoslan\xE1 z\xE1kazn\xEDkovi prostredn\xEDctvom e-mailu",invoice_mark_as_sent:"T\xE1to fakt\xFAra bude ozna\u010Den\xE1 ako odoslan\xE1",confirm_send:"T\xE1to fakt\xFAra bude odoslan\xE1 z\xE1kazn\xEDkovi prostredn\xEDctvom e-mailu",invoice_date:"D\xE1tum Vystavenia",record_payment:"Zaznamena\u0165 Platbu",add_new_invoice:"Nov\xE1 Fakt\xFAra",update_expense:"Update Expense",edit_invoice:"Upravi\u0165 Fakt\xFAru",new_invoice:"Nov\xE1 Fakt\xFAra",save_invoice:"Ulo\u017Ei\u0165 Fakt\xFAru",update_invoice:"Upravi\u0165 Fakt\xFAru",add_new_tax:"Prida\u0165 Nov\xFA Da\u0148",no_invoices:"Zatia\u013E nem\xE1te \u017Eiadn\xE9 fakt\xFAry!",list_of_invoices:"T\xE1to sekcia bude obsahova\u0165 zoznam fakt\xFAr",select_invoice:"Vybra\u0165 Fakt\xFAru",no_matching_invoices:"Nena\u0161li sa \u017Eiadne fakt\xFAry!",mark_as_sent_successfully:"Fakt\xFAra ozna\u010Den\xE1 ako \xFAspe\u0161ne odoslan\xE1",invoice_sent_successfully:"Fakt\xFAra bola \xFAspe\u0161ne odoslan\xE1",cloned_successfully:"Fakt\xFAra bola \xFAspe\u0161ne okop\xEDrovan\xE1",clone_invoice:"Kop\xEDrova\u0165 fakt\xFAru",confirm_clone:"Fakt\xFAra bude okop\xEDrovan\xE1 do novej",item:{title:"N\xE1zov polo\u017Eky",description:"Popis",quantity:"Mno\u017Estvo",price:"Cena",discount:"Z\u013Eava",total:"Celkom",total_discount:"Celkov\xE1 z\u013Eava",sub_total:"Medzis\xFA\u010Det",tax:"Da\u0148",amount:"\u010Ciastka",select_an_item:"Nap\xED\u0161te alebo vyberte polo\u017Eku",type_item_description:"Popis polo\u017Eky (volite\u013En\xE9)"},confirm_delete:"T\xFAto fakt\xFAru nebude mo\u017En\xE9 obnovi\u0165 | Tieto fakt\xFAry nebude mo\u017En\xE9 obnovi\u0165",created_message:"Fakt\xFAra \xFAspe\u0161ne vytvoren\xE1",updated_message:"Fakt\xFAra \xFAspe\u0161ne aktualizovan\xE1",deleted_message:"Fakt\xFAra \xFAspe\u0161ne vymazan\xE1 | Fakt\xFAry \xFAspe\u0161ne vymazan\xE9",marked_as_sent_message:"Fakt\xFAra \xFAspe\u0161ne ozna\u010Den\xE1 ako odoslan\xE1",something_went_wrong:"Nie\u010Do neprebehlo v poriadku, odsk\xFA\u0161ajte pros\xEDm znova.",invalid_due_amount_message:"Celkov\xE1 suma fakt\xFAry nem\xF4\u017Ee by\u0165 ni\u017E\u0161ia ako celkov\xE1 suma zaplaten\xE1 za t\xFAto fakt\xFAru. Ak chcete pokra\u010Dova\u0165, aktualizujte fakt\xFAru alebo odstr\xE1\u0148te s\xFAvisiace platby."},Iv={title:"Platby",payments_list:"Zoznam Platieb",record_payment:"Zaznamena\u0165 Platbu",customer:"Z\xE1kazn\xEDk",date:"D\xE1tum",amount:"Suma",action:"Akcia",payment_number:"\u010C\xEDslo Platby",payment_mode:"Sp\xF4sob Platby",invoice:"Fakt\xFAra",note:"Pozn\xE1mka",add_payment:"Prida\u0165 Platbu",new_payment:"Nov\xE1 Platba",edit_payment:"\xDApravi\u0165 Platbu",view_payment:"Zobrazi\u0165 Platbu",add_new_payment:"Nov\xE1 Platba",send_payment_receipt:"Posla\u0165 Doklad o Zaplaten\xED",send_payment:"Odosla\u0165 Platbu",save_payment:"Ulo\u017Ei\u0165 Platbu",update_payment:"\xDApravi\u0165 Platbu",payment:"Platba | Platby",no_payments:"Zatia\u013E nem\xE1te \u017Eiadne platby!",no_matching_payments:"Nena\u0161li sa \u017Eiadne platby sp\u013A\u0148aj\xFAce Va\u0161e podmienky!",list_of_payments:"T\xE1to sekcia bude obsahova\u0165 zoznam platieb.",select_payment_mode:"Vyberte sp\xF4sob platby",confirm_mark_as_sent:"Tento cenov\xFD odhad bude ozna\u010Den\xFD ako odoslan\xFD",confirm_send_payment:"Tento cenov\xFD odhad bude odoslan\xFD z\xE1kazn\xEDkovi prostredn\xEDctvom e-mailu",send_payment_successfully:"Platba \xFAspe\u0161ne odoslan\xE1",something_went_wrong:"Nie\u010Do neprebehlo v poriadku, odsk\xFA\u0161ajte pros\xEDm znova.",confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 t\xFAto Platbu | Nebudete m\xF4c\u0165 obnovi\u0165 tieto Platby",created_message:"Platba \xFAspe\u0161ne vytvoren\xE1",updated_message:"Platba \xFAspe\u0161ne upravena",deleted_message:"Platba \xFAspe\u0161ne odstr\xE1nen\xE1 | Platby \xFAspe\u0161ne odstr\xE1nen\xE9",invalid_amount_message:"Suma platby nie je spr\xE1vna"},$v={title:"V\xFDdaje",expenses_list:"Zoznam V\xFDdajov",select_a_customer:"Vyberte z\xE1kazn\xEDka",expense_title:"Nadpis",customer:"Z\xE1kazn\xEDk",contact:"Kontakt",category:"Kateg\xF3ria",from_date:"Od d\xE1tumu",to_date:"Do d\xE1tumu",expense_date:"D\xE1tum",description:"Popis",receipt:"Doklad o zaplaten\xED",amount:"Suma",action:"Akcia",note:"Pozn\xE1mka",category_id:"ID kateg\xF3rie",date:"D\xE1tum",add_expense:"Prida\u0165 V\xFDdaj",add_new_expense:"Prida\u0165 Nov\xFD V\xFDdaj",save_expense:"Ulo\u017Ei\u0165 V\xFDdaj",update_expense:"Aktualizova\u0165 V\xFDdaj",download_receipt:"Stiahnu\u0165 doklad o zaplaten\xED",edit_expense:"Upravi\u0165 V\xFDdaj",new_expense:"Nov\xFD V\xFDdaj",expense:"V\xFDdaj | V\xFDdaje",no_expenses:"Zatia\u013E nem\xE1te \u017Eiadne v\xFDdaje!",list_of_expenses:"T\xE1to sekcia bude obsahova\u0165 zoznam v\xFDdajov.",confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 tento V\xFDdaj | Nebudete m\xF4c\u0165 obnovi\u0165 tieto V\xFDdaje",created_message:"V\xFDdaj \xFAspe\u0161ne vytvoren\xFD",updated_message:"V\xFDdaj \xFAspe\u0161ne aktualizovan\xFD",deleted_message:"V\xFDdaj \xFAspe\u0161ne odstr\xE1nen\xFD | V\xFDdaje \xFAspe\u0161ne odstr\xE1nen\xE9",categories:{categories_list:"Zoznam kateg\xF3ri\xED",title:"Nadpis",name:"N\xE1zov",description:"Popis",amount:"Suma",actions:"Akcie",add_category:"Prida\u0165 Kateg\xF3riu",new_category:"Nov\xE1 Kateg\xF3ria",category:"Kateg\xF3ria | Kateg\xF3rie",select_a_category:"Vyberte kateg\xF3riu"}},Rv={email:"E-mail",password:"Heslo",forgot_password:"Zabudol som heslo",or_signIn_with:"alebo sa prihl\xE1si\u0165 pomocou",login:"Prihl\xE1si\u0165 sa",register:"Registrova\u0165 sa",reset_password:"Obnovi\u0165 heslo",password_reset_successfully:"Heslo \xDAspe\u0161ne Obnoven\xE9",enter_email:"Zadajte e-mail",enter_password:"Zadajte heslo",retype_password:"Znova zadajte heslo"},Fv={title:"U\u017Eivatelia",users_list:"Zoznam U\u017E\xEDvate\u013Eov",name:"Meno",description:"Popis",added_on:"Pridan\xE9 D\u0148a",date_of_creation:"D\xE1tum Vytvorenia",action:"Akcia",add_user:"Prida\u0165 pou\u017E\xEDvate\u013Ea",save_user:"Ulo\u017Ei\u0165 pou\u017E\xEDvate\u013Ea",update_user:"Aktualizova\u0165 pou\u017E\xEDvate\u013Ea",user:"U\u017E\xEDvate\u013E | U\u017E\xEDvatelia",add_new_user:"Prida\u0165 Nov\xE9ho U\u017E\xEDvate\u013Ea",new_user:"Nov\xFD u\u017E\xEDvate\u013E",edit_user:"Upravi\u0165 U\u017E\xEDvate\u013Ea",no_users:"Zatia\u013E nebol pridan\xFD \u017Eiadny u\u017E\xEDvate\u013E!",list_of_users:"T\xE1to sekcia bude obsahova\u0165 zoznam u\u017E\xEDvate\u013Eov.",email:"E-mail",phone:"Telef\xF3n",password:"Heslo",user_attached_message:"Nie je mo\u017En\xE9 vymaza\u0165 akt\xEDvneho u\u017E\xEDvate\u013Ea",confirm_delete:"Nebude mo\u017En\xE9 obnovi\u0165 tohto pou\u017E\xEDvate\u013Ea | Nebude mo\u017En\xE9 obnovi\u0165 t\xFDchto pou\u017E\xEDvate\u013Eov",created_message:"U\u017E\xEDvate\u013E \xFAspe\u0161ne vytvoren\xFD",updated_message:"U\u017E\xEDvate\u013E \xFAspe\u0161ne aktualizovan\xE1",deleted_message:"U\u017E\xEDvate\u013E \xFAspe\u0161ne odstr\xE1nen\xFD | U\u017E\xEDvatelia \xFAspe\u0161ne odstr\xE1nen\xED"},Mv={title:"Reporty",from_date:"Od d\xE1tumu",to_date:"Do d\xE1tumu",status:"Stav",paid:"Zaplaten\xE1",unpaid:"Nezaplaten\xE1",download_pdf:"Stiahnu\u0165 PDF",view_pdf:"Zobrazi\u0165 PDF",update_report:"Aktualizova\u0165 Report",report:"Report | Reporty",profit_loss:{profit_loss:"Ziskt a Straty",to_date:"Do d\xE1tumu",from_date:"Od d\xE1tumu",date_range:"Vybra\u0165 rozsah d\xE1tumu"},sales:{sales:"Predaje",date_range:"Vybra\u0165 rozsah d\xE1tumu",to_date:"Do d\xE1tumu",from_date:"Od d\xE1tumu",report_type:"Typ Reportu"},taxes:{taxes:"Dane",to_date:"Do d\xE1tumu",from_date:"Od d\xE1tumu",date_range:"Vybra\u0165 Rozsah D\xE1tumu"},errors:{required:"Pole je povinn\xE9"},invoices:{invoice:"Fakt\xFAra",invoice_date:"D\xE1tum Vystavenia",due_date:"D\xE1tum Splatnosti",amount:"Suma",contact_name:"Kontaktn\xE1 Osoba",status:"Stav"},estimates:{estimate:"Cenov\xFD odhad",estimate_date:"D\xE1tum cenov\xE9ho odhadu",due_date:"D\xE1tum platnosti cenov\xE9ho odhadu",estimate_number:"\u010C\xEDslo cenov\xE9ho odhadu",ref_number:"Ref. \u010C\xEDslo",amount:"Suma",contact_name:"Kontaktn\xE1 Osoba",status:"Stav"},expenses:{expenses:"V\xFDdaje",category:"Kateg\xF3ria",date:"D\xE1tum",amount:"Suma",to_date:"Do d\xE1tumu",from_date:"Od d\xE1tumu",date_range:"Vybra\u0165 Rozsah D\xE1tumu"}},Vv={menu_title:{account_settings:"Nastavenia \xFA\u010Dtu",company_information:"Inform\xE1cie o Firme",customization:"Prisp\xF4sobenie",preferences:"Preferencie",notifications:"Upozornenia",tax_types:"Typy Dan\xED",expense_category:"Kateg\xF3rie cenov\xFDch odhadov",update_app:"Aktualizova\u0165 Aplik\xE1ciu",backup:"Z\xE1loha",file_disk:"S\xFAborov\xFD disk",custom_fields:"Vlastn\xE9 Polia",payment_modes:"Sp\xF4soby Platby",notes:"Pozn\xE1mky"},title:"Nastavenia",setting:"Nastavenia | Nastavenia",general:"V\u0161eobecn\xE9",language:"Jazyk",primary_currency:"Hlavn\xE1 Mena",timezone:"\u010Casov\xE9 P\xE1smo",date_format:"Form\xE1t D\xE1tumu",currencies:{title:"Meny",currency:"Mena | Meny",currencies_list:"Zoznam Mien",select_currency:"Vyberte Menu",name:"Meno",code:"K\xF3d",symbol:"Symbol",precision:"Presnos\u0165",thousand_separator:"Oddelova\u010D Tis\xEDciek",decimal_separator:"Oddelova\u010D Desatinn\xFDch Miest",position:"Poz\xEDcia",position_of_symbol:"Poz\xEDcia Symbolu",right:"Vpravo",left:"V\u013Eavo",action:"Akcia",add_currency:"Prida\u0165 nov\xFA Menu"},mail:{host:"Host E-mailu",port:"Port E-mailu",driver:"Driver E-mailu",secret:"Tajn\xFD K\u013E\xFA\u010D (secret)",mailgun_secret:"Tajn\xFD k\u013E\xFA\u010D Mailgun (secret)",mailgun_domain:"Dom\xE9na",mailgun_endpoint:"Endpoint Mailgun",ses_secret:"SES Tajn\xFD K\u013E\xFA\u010D (secret)",ses_key:"SES k\u013E\xFA\u010D (key)",password:"E-mailov\xE9 heslo",username:"E-mailov\xE9 meno (username)",mail_config:"Konfigur\xE1cia E-mailov",from_name:"Meno odosielate\u013Ea",from_mail:"E-mail odosielate\u013Ea",encryption:"E-mailov\xE1 Enkrypcia",mail_config_desc:"Ni\u017E\u0161ie n\xE1jdete konfigur\xE1ciu E-mailu pou\u017Eit\xE9ho k odosielaniu E-mailov z aplik\xE1cie Crater. M\xF4\u017Eete taktie\u017E nastavi\u0165 spojenie so slu\u017Ebami tret\xEDch str\xE1n ako napr\xEDklad Sendgrid, SES a pod."},pdf:{title:"Nastavenia PDF",footer_text:"Text v p\xE4ti\u010Dke",pdf_layout:"Rozlo\u017Eenie PDF"},company_info:{company_info:"Inform\xE1cie o spolo\u010Dnosti",company_name:"N\xE1zov spolo\u010Dnosti",company_logo:"Logo spolo\u010Dnosti",section_description:"Inform\xE1cie o Va\u0161ej firme, ktor\xE9 bud\xFA zobrazen\xE9 na fakt\xFArach, cenov\xFDch odhadoch a in\xFDch dokumentoch vytvoren\xFDch v\u010Faka Creater.",phone:"Telef\xF3n",country:"Krajina",state:"\u0160t\xE1t",city:"Mesto",address:"Adresa",zip:"PS\u010C",save:"Ulo\u017Ei\u0165",updated_message:"Inform\xE1cie o firme \xFAspe\u0161ne aktualizovan\xE9"},custom_fields:{title:"Vlastn\xE9 Polia",section_description:"Personalizujte si Fakt\xFAry, Cenov\xE9 Odhady a Potvrdenia o platbe pomocou vlastn\xFDch pol\xED. Uistite sa, \u017Ee ste ni\u017E\u0161ie vytvoren\xE9 polia pou\u017Eili v form\xE1te adresy na str\xE1nke nastaven\xED personaliz\xE1cie.",add_custom_field:"Prida\u0165 Vlastn\xE9 Pole",edit_custom_field:"Upravi\u0165 Vlastn\xE9 Pole",field_name:"Meno Po\u013Ea",label:"Zna\u010Dka",type:"Typ",name:"N\xE1zov",required:"Povinn\xE9",placeholder:"Umiestnenie",help_text:"Pomocn\xFD Text",default_value:"Predvolen\xE1 hodnota",prefix:"Predpona",starting_number:"Po\u010Diato\u010Dn\xE9 \u010C\xEDslo",model:"Model",help_text_description:"Nap\xED\u0161te popis aby u\u017E\xEDvatelia lep\u0161ie pochopili v\xFDznam tohto po\u013Ea.",suffix:"Pr\xEDpona",yes:"\xC1no",no:"Nie",order:"Objedna\u0165",custom_field_confirm_delete:"Nebudete m\xF4c\u0165 obnovit toto vlastn\xE9 pole",already_in_use:"Toto vlastne pole sa u\u017E pou\u017E\xEDva",deleted_message:"Vlastn\xE9 pole \xFAspe\u0161ne vymazan\xE9",options:"mo\u017Enosti",add_option:"Prida\u0165 Mo\u017Enosti",add_another_option:"Prida\u0165 \u010Fa\u013E\u0161iu mo\u017Enost\u0165",sort_in_alphabetical_order:"Zoradi\u0165 v abecednom porad\xED",add_options_in_bulk:"Prida\u0165 hromadn\xE9 mo\u017Enosti",use_predefined_options:"Pou\u017Ei\u0165 predvolen\xE9 mo\u017Enosti",select_custom_date:"Vybrat vlastn\xFD d\xE1tum",select_relative_date:"Vybra\u0165 Relat\xEDvny D\xE1tum",ticked_by_default:"Predvolene ozna\u010Den\xE9",updated_message:"Vlastn\xE9 pole \xFAspe\u0161ne aktualizovan\xE9",added_message:"Vlastne pole \xFAspe\u0161ne pridan\xE9"},customization:{customization:"Prisp\xF4sobenie",save:"Ulo\u017Ei\u0165",addresses:{title:"Adresy",section_description:"M\xF4\u017Eete nastavi\u0165 form\xE1t faktura\u010Dnej a dodacej adresy z\xE1kazn\xEDka (Zobrazuje sa iba v PDF). ",customer_billing_address:"Z\xE1kazn\xEDk - faktura\u010Dn\xE1 adresa",customer_shipping_address:"Z\xE1kazn\xEDk - doru\u010Dovacia adresa",company_address:"Firemn\xE1 adresa",insert_fields:"Vlo\u017Ei\u0165 polia",contact:"Kontakt",address:"Adresa",display_name:"Zobrazovan\xE9 Meno",primary_contact_name:"Meno Prim\xE1rneho Kontaktu",email:"Email",website:"Webov\xE9 str\xE1nky",name:"N\xE1zov",country:"Krajina",state:"\u0160t\xE1t",city:"Mesto",company_name:"N\xE1zov firmy",address_street_1:"Adresa ulica 1",address_street_2:"Adresa ulica 2",phone:"Telef\xF3n",zip_code:"PS\u010C",address_setting_updated:"Nastavenia adresy \xFAspe\u0161ne aktualizovan\xE9"},updated_message:"Inform\xE1cie o firme \xFAspe\u0161ne aktualizovan\xE9",invoices:{title:"Fakt\xFAry",notes:"Pozn\xE1mky",invoice_prefix:"Predpona Fakt\xFAry",default_invoice_email_body:"Prednastaven\xE9 telo e-mailu fakt\xFAry",invoice_settings:"Nastavenia Fakt\xFAry",autogenerate_invoice_number:"Automaticky Vygenerova\u0165 \u010C\xEDslo Fakt\xFAry",autogenerate_invoice_number_desc:"Ak si neprajete automaticky generova\u0165 \u010D\xEDslo novej fakt\xFAry, vypnite t\xFAto mo\u017Enos\u0165.",enter_invoice_prefix:"Zadajte predponu fakt\xFAry",terms_and_conditions:"Podmienky pou\u017E\xEDvania",company_address_format:"Form\xE1t firemnej adresy",shipping_address_format:"Form\xE1t doru\u010Dovacej adresy",billing_address_format:"Form\xE1t faktura\u010Dnej adresy",invoice_settings_updated:"Nastavenia fakt\xFAr boli \xFAspe\u0161ne aktualizovan\xE9"},estimates:{title:"Cenov\xFD odhad",estimate_prefix:"Predpona cenov\xE9ho odhadu",default_estimate_email_body:"Prednastaven\xE9 telo e-mailu cenov\xE9ho dohadu",estimate_settings:"Nastavenia cenov\xFDch odhadov",autogenerate_estimate_number:"Automaticky generova\u0165 \u010D\xEDslo cenov\xE9ho odhadu",estimate_setting_description:"Zak\xE1\u017Ete to, ak si neprajete automaticky generova\u0165 \u010D\xEDsla cenovych odhadov zaka\u017Ed\xFDm, ke\u010F vytvor\xEDte nov\xFD odhad.",enter_estimate_prefix:"Vlo\u017Ete prepdonu cenov\xE9ho odhadu",estimate_setting_updated:"Nastavenia cenov\xFDch odhadov \xFAspe\u0161ne aktualizovan\xE9",company_address_format:"Form\xE1t firemnej adresy",billing_address_format:"Form\xE1t faktura\u010Dnej adresy",shipping_address_format:"Form\xE1t faktura\u010Dnej adresy"},payments:{title:"Platby",description:"Mo\u017Enosti platieb",payment_prefix:"Predpona platby",default_payment_email_body:"Prednastaven\xE9 telo e-mailu platby",payment_settings:"Nastavenia Platieb",autogenerate_payment_number:"Automaticky generova\u0165 \u010D\xEDslo platby",payment_setting_description:"Zak\xE1\u017Ete to, ak si neprajete automaticky generova\u0165 \u010D\xEDsla platieb zaka\u017Ed\xFDm, ke\u010F vytvor\xEDte nov\xFA platbu.",enter_payment_prefix:"Vlo\u017Eit Predponu Platby",payment_setting_updated:"Nastavenia platieb \xFAspe\u0161ne aktualizovan\xE9",payment_modes:"Typy Platieb",add_payment_mode:"Prida\u0165 typ Platby",edit_payment_mode:"Upravi\u0165 typ Platby",mode_name:"N\xE1zov platby",payment_mode_added:"Typ Platby pridan\xFD",payment_mode_updated:"Typ Platby aktualizovan\xFD",payment_mode_confirm_delete:"Nebude m\xF4c\u0165 obnovi\u0165 typ platby",already_in_use:"Tento typ platby sa u\u017E pou\u017E\xEDva",deleted_message:"Typ platby \xFAspe\u0161ne odstr\xE1nen\xFD",company_address_format:"Form\xE1t firemnej adresy",from_customer_address_format:"Z form\xE1tu adresy z\xE1kazn\xEDka"},items:{title:"Polo\u017Eky",units:"Jednotky",add_item_unit:"Prida\u0165 Jednotku",edit_item_unit:"Upravi\u0165 Jednotku",unit_name:"N\xE1zov Jednotky",item_unit_added:"Jednotka \xFAspe\u0161ne pridan\xE1",item_unit_updated:"Jednotka \xFAspe\u0161ne aktualizovan\xE1",item_unit_confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 t\xFAto Jednotku",already_in_use:"Jednotk\xE1 sa pr\xE1ve pou\u017E\xEDva",deleted_message:"Jednotka \xFAspe\u0161ne odstr\xE1nena"},notes:{title:"Pozn\xE1mky",description:"U\u0161etrite \u010Das vytv\xE1ran\xEDm pozn\xE1mok a ich op\xE4tovn\xFDm pou\u017Eit\xEDm vo svojich fakt\xFArach, odhadoch a platb\xE1ch.",notes:"Pozn\xE1mky",type:"Typ",add_note:"Prida\u0165 pozn\xE1mku",add_new_note:"Prida\u0165 Nov\xFA Pozn\xE1mku",name:"N\xE1zov",edit_note:"Upravi\u0165 pozn\xE1mku",note_added:"Pozn\xE1mka \xFAspe\u0161ne pridan\xE1",note_updated:"Pozn\xE1mka \xFAspe\u0161ne aktualizovan\xE1",note_confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 t\xFAto Pozn\xE1mku",already_in_use:"Pozn\xE1mka sa pr\xE1ve pou\u017E\xEDva",deleted_message:"Pozn\xE1mka \xFAspe\u0161ne odstr\xE1nena"}},account_settings:{profile_picture:"Profilov\xE1 Fotka",name:"Meno",email:"Email",password:"Heslo",confirm_password:"Potvrdi\u0165 heslo",account_settings:"Nastavenie \xFA\u010Dtu",save:"Ulo\u017Ei\u0165",section_description:"Svoje meno, e-mail a heslo m\xF4\u017Eete aktualizova\u0165 pomocou formul\xE1ra ni\u017E\u0161ie.",updated_message:"Nastavenia \xFA\u010Dtu boli \xFAspe\u0161ne aktualizovan\xE9"},user_profile:{name:"Meno",email:"Email",password:"Heslo",confirm_password:"Potvrdi\u0165 heslo"},notification:{title:"Upozornenia",email:"Odosla\u0165 upozornenie",description:"Ktor\xE9 e-mailov\xE9 upozornenia chcete dost\xE1va\u0165 ke\u010F sa nie\u010Do zmen\xED?",invoice_viewed:"Fakt\xFAra zobrazen\xE1",invoice_viewed_desc:"Ke\u010F si v\xE1\u0161 z\xE1kazn\xEDk prezer\xE1 fakt\xFAru odoslan\xFA cez Hlavn\xFD Panel.",estimate_viewed:"Cenov\xFD odhad zobrazen\xFD",estimate_viewed_desc:"Ke\u010F si v\xE1\u0161 z\xE1kazn\xEDk prezer\xE1 cenov\xFD odhad odoslan\xFD cez Hlavn\xFD Panel.",save:"Ulo\u017Ei\u0165",email_save_message:"E-mail bol \xFAspe\u0161ne ulo\u017Een\xFD",please_enter_email:"Zadajte e-mail"},tax_types:{title:"Typ dan\xED",add_tax:"Prida\u0165 da\u0148",edit_tax:"Upravi\u0165 Da\u0148",description:"M\xF4\u017Eete prida\u0165 alebo odobra\u0165 dane. Crater podporuje dane jednotliv\xFDch polo\u017Eiek aj na fakt\xFAre.",add_new_tax:"Prida\u0165 Nov\xFA Da\u0148",tax_settings:"Nastavenia dan\xED",tax_per_item:"Da\u0148 pre ka\u017Ed\xFA Polo\u017Eku zvl\xE1\u0161\u0165",tax_name:"N\xE1zov Dane",compound_tax:"Zlo\u017Een\xE1 da\u0148",percent:"Percento",action:"Akcia",tax_setting_description:"T\xFAto mo\u017Enos\u0165 povo\u013Ete, ak chcete prida\u0165 dane k jednotliv\xFDm polo\u017Ek\xE1m fakt\xFAr. \u0160tandardne sa dane pripo\u010D\xEDtavaj\xFA priamo k fakt\xFAre.",created_message:"Da\u0148 \xFAspe\u0161ne vytvoren\xE1",updated_message:"Da\u0148 \xFAspe\u0161ne aktualizovan\xE1",deleted_message:"Da\u0148 \xFAspe\u0161ne odstr\xE1nen\xE1",confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 da\u0148",already_in_use:"Da\u0148 u\u017E sa u\u017E po\u017E\xEDva"},expense_category:{title:"Kateg\xF3rie v\xFDdajov",action:"Akcia",description:"Na pridanie polo\u017Eiek v\xFDdavkov s\xFA povinn\xE9 kateg\xF3rie. Tieto kateg\xF3rie m\xF4\u017Eete prida\u0165 alebo odstr\xE1ni\u0165 pod\u013Ea svojich preferenci\xED.",add_new_category:"Prida\u0165 Nov\xFA Kateg\xF3riu",add_category:"Prida\u0165 Kateg\xF3riu",edit_category:"Upravi\u0165 Kateg\xF3riu",category_name:"N\xE1zov Kateg\xF3rie",category_description:"Popis",created_message:"Kateg\xF3ria cenov\xE9ho odhadu \xFAspe\u0161ne vytvoren\xE1",deleted_message:"Kateg\xF3ria cenov\xE9ho odhadu \xFAspe\u0161ne odstr\xE1nena",updated_message:"Kateg\xF3ria cenov\xE9ho odhadu \xFAspe\u0161ne aktualizovan\xE1",confirm_delete:"Nebudete m\xF4c\u0165 obnovi\u0165 t\xFAto kateg\xF3riu cenov\xFDch odhadov",already_in_use:"Kateg\xF3ria sa u\u017E pou\u017E\xEDva"},preferences:{currency:"Mena",default_language:"Predvolen\xFD Jazyk",time_zone:"\u010Casov\xE9 P\xE1smo",fiscal_year:"Fi\u0161k\xE1lny Rok",date_format:"Form\xE1t D\xE1tumu",discount_setting:"Nastavenia Z\u013Eavy",discount_per_item:"Z\u013Eava pre ka\u017Ed\xFA Polo\u017Eku zvl\xE1\u0161\u0165",discount_setting_description:"T\xFAto mo\u017Enos\u0165 povo\u013Ete, ak chcete prida\u0165 z\u013Eavu k jednotliv\xFDm polo\u017Ek\xE1m fakt\xFAry. \u0160tandardne sa z\u013Eava pripo\u010D\xEDtava priamo k fakt\xFAre.",save:"Ulo\u017Ei\u0165",preference:"Preferencie | Preferencie",general_settings:"Syst\xE9movo predvolen\xE9 preferencie.",updated_message:"Preferencie \xFAspe\u0161ne aktualizovan\xE9",select_language:"Vyberte Jazyk",select_time_zone:"Vyberte \u010Casov\xE9 P\xE1smo",select_date_format:"Vybra\u0165 Form\xE1t D\xE1tumu",select_financial_year:"Vyberte Fi\u0161k\xE1lny Rok"},update_app:{title:"Aktualizova\u0165 Aplik\xE1ciu",description:"Aplik\xE1ciu m\xF4\u017Ete jednoducho aktualizova\u0165 tla\u010Ditkom ni\u017E\u0161ie",check_update:"Skontrolova\u0165 Aktualiz\xE1cie",avail_update:"Nov\xE1 aktualiz\xE1cia je k dispoz\xEDcii",next_version:"\u010Eal\u0161ia Verzia",requirements:"Po\u017Eiadavky",update:"Aktualizova\u0165",update_progress:"Aktualiz\xE1cia prebieha...",progress_text:"Bude to trva\u0165 len p\xE1r min\xFAt. Pred dokon\u010Den\xEDm aktualiz\xE1cie neobnovujte obrazovku ani nezatv\xE1rajte okno.",update_success:"App bola aktualizovan\xE1! Po\u010Dkajte, k\xFDm sa okno v\xE1\u0161ho prehliada\u010Da na\u010D\xEDta automaticky.",latest_message:"Nie je k dispoz\xEDcii \u017Eiadna aktualiz\xE1cia! Pou\u017E\xEDvate najnov\u0161iu verziu.",current_version:"Aktu\xE1lna verzia",download_zip_file:"Stiahnu\u0165 ZIP s\xFAbor",unzipping_package:"Rozbali\u0165 bal\xEDk",copying_files:"Kop\xEDrovanie s\xFAborov",running_migrations:"Prebieha Migr\xE1cia",finishing_update:"Ukon\u010Dovanie Aktualiz\xE1cie",update_failed:"Aktualiz\xE1cia zlyhala!",update_failed_text:"Aktualiz\xE1cia zlyhala na : {step} kroku"},backup:{title:"Z\xE1loha | Z\xE1lohy",description:"Z\xE1loha je vo form\xE1te zip ktor\xFD obsahuje v\u0161etky s\xFAbory v adres\xE1roch vr\xE1tane v\xFDpisu z datab\xE1zy.",new_backup:"Vytvori\u0165 z\xE1lohu",create_backup:"Vytvori\u0165 z\xE1lohu",select_backup_type:"Vybra\u0165 typ z\xE1lohy",backup_confirm_delete:"Nebude mo\u017En\xE9 obnovi\u0165 t\xFAto z\xE1lohu",path:"cesta",new_disk:"Nov\xFD Disk",created_at:"vytvoren\xE9",size:"velkost",dropbox:"dropbox",local:"local",healthy:"v poriadku",amount_of_backups:"po\u010Det z\xE1loh",newest_backups:"najnov\u0161ie z\xE1lohy",used_storage:"vyu\u017Eit\xE9 miesto na disku",select_disk:"Vybra\u0165 disk",action:"Akcia",deleted_message:"Z\xE1loha \xFAspe\u0161ne vymazan\xE1",created_message:"Z\xE1loha \xFAspe\u0161ne vytvoren\xE1",invalid_disk_credentials:"Nespr\xE1vne prihlasovacie \xFAdaje na disk"},disk:{title:"File Disk | File Disks",description:"V predvolenom nastaven\xED pou\u017Eije Crater v\xE1\u0161 lok\xE1lny disk na ukladanie z\xE1loh, avatarov a in\xFDch obrazov\xFDch s\xFAborov. M\xF4\u017Eete nakonfigurova\u0165 viac ako jeden disku ako napr. DigitalOcean, S3 a Dropbox pod\u013Ea va\u0161ich preferenci\xED.",created_at:"vytvoren\xE9",dropbox:"Dropbox",name:"N\xE1zov",driver:"Driver",disk_type:"Typ",disk_name:"N\xE1zov Disku",new_disk:"Prida\u0165 Nov\xFD Disk",filesystem_driver:"Driver syst\xE9mov\xFDch s\xFAborov",local_driver:"lok\xE1lny Driver",local_root:"Lok\xE1lka Cesta (root)",public_driver:"Verejn\xFD Driver",public_root:"Verejn\xE1 Cesta (root)",public_url:"Verejn\xE1 URL",public_visibility:"Vidite\u013En\xE9 pre Verejnos\u0165",media_driver:"Driver m\xE9di\xED",media_root:"Root m\xE9di\xED",aws_driver:"AWS Driver",aws_key:"AWS K\u013E\xFA\u010D (key)",aws_secret:"AWS Tajn\xFD K\u013E\xFA\u010D (secret)",aws_region:"AWS Regi\xF3n",aws_bucket:"AWP Bucket",aws_root:"AWP Cesta (root)",do_spaces_type:"Do Spaces type",do_spaces_key:"Do Spaces key",do_spaces_secret:"Do Spaces Secret",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Dropbox Type",dropbox_token:"Dropbox Token",dropbox_key:"Dropbox Key",dropbox_secret:"Dropbox Secret",dropbox_app:"Dropbox App",dropbox_root:"Dropbox Root",default_driver:"Predvolen\xFD Driver",is_default:"Je predvolen\xFD",set_default_disk:"Nastavi\u0165 predvolen\xFD disk",success_set_default_disk:"Disk \xFAspe\u0161ne nastaven\xFD ako predvolen\xFD",save_pdf_to_disk:"Ulo\u017E PDFs na Disk",disk_setting_description:"T\xFAto mo\u017Enos\u0165 povo\u013Ete ak si chcete automaticky ulo\u017Ei\u0165 k\xF3piu ka\u017Ed\xE9ho s\xFAboru PDF s fakturami, odhadmi a pr\xEDjmami na predvolen\xFD disk. Pou\u017Eit\xEDm tejto mo\u017Enosti skr\xE1tite dobu na\u010D\xEDtania pri prezeran\xED s\xFAborov PDF.",select_disk:"Vybra\u0165 Disk",disk_settings:"Nastavenie Disku",confirm_delete:"Va\u0161e existuj\xFAce s\xFAbory a prie\u010Dinky na zadanom disku nebud\xFA ovplyvnen\xE9 ale konfigur\xE1cia v\xE1\u0161ho disku bude odstr\xE1nen\xE1 z Crateru",action:"Akcia",edit_file_disk:"Upravit Disk",success_create:"Disk \xFAspe\u0161ne pridan\xFD",success_update:"Disk \xFAspe\u0161ne aktualizovan\xFD",error:"Pridanie disku zlyhalo",deleted_message:"Disk bol \xFAspe\u0161ne odstr\xE1nen\xFD",disk_variables_save_successfully:"Disk bol \xFAspe\u0161ne pridan\xFD",disk_variables_save_error:"Konfigur\xE1cia disku zlyhala.",invalid_disk_credentials:"Neplatn\xE9 prihlasovacie \xFAdaje pre Disk"}},Bv={account_info:"Inform\xE1cie o \xFA\u010Dte",account_info_desc:"Ni\u017E\u0161ie uveden\xE9 podrobnosti sa pou\u017Eij\xFA na vytvorenie hlavn\xE9ho \xFA\u010Dtu spr\xE1vcu. Tie m\xF4\u017Eete kedyko\u013Evek zmeni\u0165 po prihl\xE1sen\xED.",name:"Meno",email:"Email",password:"Heslo",confirm_password:"Potvrdi\u0165 heslo",save_cont:"Ulo\u017Ei\u0165 a pokra\u010Dova\u0165",company_info:"Firemn\xE9 \xFAdaje",company_info_desc:"Tieto inform\xE1cie sa zobrazia na fakt\xFArach. Nesk\xF4r ich v\u0161ak m\xF4\u017Eete upravi\u0165.",company_name:"N\xE1zov firmy",company_logo:"Firemn\xE9 logo",logo_preview:"N\xE1h\u013Ead loga",preferences:"Preferencie",preferences_desc:"Predvolen\xE9 nastavenie syst\xE9mu.",country:"Krajina",state:"\u0160t\xE1t",city:"Mesto",address:"Adresa",street:"Ulica1 | Ulica2",phone:"Telef\xF3n",zip_code:"PS\u010C",go_back:"Nasp\xE4\u0165",currency:"Mena",language:"Jazyk",time_zone:"\u010Casov\xE9 p\xE1smo",fiscal_year:"Fi\u0161k\xE1lny rok",date_format:"Form\xE1t d\xE1tumu",from_address:"Z adresy",username:"Prihlasovacie meno",next:"\u010Ea\u013E\u0161\xED",continue:"Pokra\u010Dova\u0165",skip:"Vynecha\u0165",database:{database:"URL Adresa Aplik\xE1cie a Datab\xE1za",connection:"Pripojenie k datab\xE1ze",host:"Datab\xE1za - Host",port:"Datab\xE1za - Port",password:"Heslo do datab\xE1zy",app_url:"URL Adresa Aplik\xE1cie",app_domain:"Dom\xE9na aplik\xE1cie",username:"Prihlasovacie meno do datab\xE1zy",db_name:"N\xE1zov datab\xE1zy",db_path:"Datab\xE1z\xE1 - cesta (path)",desc:"Vytvorte datab\xE1zu na svojom serveri a pomocou nasleduj\xFAceho formul\xE1ra nastavte poverenia."},permissions:{permissions:"Opr\xE1vnenia",permission_confirm_title:"Ste si ist\xFD \u017Ee chcete pokra\u010Dova\u0165?",permission_confirm_desc:"Nedostato\u010Dn\xE9 opr\xE1vnenia na prie\u010Dinky in\u0161tal\xE1cie",permission_desc:"Ni\u017E\u0161ie je uveden\xFD zoznam povolen\xED prie\u010Dinkov ktor\xE9 s\xFA potrebn\xE9 na fungovanie aplik\xE1cie. Ak kontrola povolen\xED zlyh\xE1 nezabudnite aktualizova\u0165 povolenia prie\u010Dinka."},mail:{host:"Mail Host",port:"Mail Port",driver:"Mail Driver",secret:"Secret",mailgun_secret:"Mailgun Secret",mailgun_domain:"Domain",mailgun_endpoint:"Mailgun Endpoint",ses_secret:"SES Secret",ses_key:"SES Key",password:"Mail Password",username:"Mail Username",mail_config:"Mail Configuration",from_name:"From Mail Name",from_mail:"From Mail Address",encryption:"Mail Encryption",mail_config_desc:"Ni\u017E\u0161ie je uveden\xFD formul\xE1r na konfigur\xE1ciu ovl\xE1da\u010Da e-mailu na odosielanie e-mailov z aplik\xE1cie. M\xF4\u017Eete tie\u017E nakonfigurova\u0165 aj extern\xFDch poskytovate\u013Eov napr\xEDklad Sendgrid apod."},req:{system_req:"Syst\xE9mov\xE9 po\u017Eiadavky",php_req_version:"Php (verzia {version} po\u017Eadovan\xE1)",check_req:"Skontrolujte po\u017Eiadavky",system_req_desc:"Crater m\xE1 nieko\u013Eko po\u017Eiadaviek na server. Skontrolujte \u010Di m\xE1 v\xE1\u0161 server po\u017Eadovan\xFA verziu php a v\u0161etky moduly uveden\xE9 ni\u017E\u0161ie."},errors:{migrate_failed:"Migr\xE1ci zlyhala",database_variables_save_error:"Nie je mo\u017En\xE9 zap\xEDsa\u0165 konfigur\xE1ciu do .env file. Skontrolujte opr\xE1vnenia",mail_variables_save_error:"Konfigur\xE1cia emailu zlyhala.",connection_failed:"Pripojenie k datab\xE1ze zlyhalo",database_should_be_empty:"Datab\xE1za mus\xED by\u0165 pr\xE1zdna"},success:{mail_variables_save_successfully:"Email \xFAspe\u0161ne nakonfigurovan\xFD",database_variables_save_successfully:"Datab\xE1za \xFAspe\u0161ne nakonfigurovan\xE1."}},Ov={invalid_phone:"Zl\xE9 telef\xF3nn\xE9 \u010D\xEDslo",invalid_url:"Nespr\xE1vna URL adresa (ex: http://www.craterapp.com)",invalid_domain_url:"Nespr\xE1vna URL (ex: craterapp.com)",required:"Povinn\xE9 pole",email_incorrect:"Zl\xFD email.",email_already_taken:"Email sa uz pou\u017E\xEDva.",email_does_not_exist:"Pou\u017E\xEDvate\u013E s t\xFDmto emailom neexistuje.",item_unit_already_taken:"N\xE1zov tejto polo\u017Eky sa u\u017E pou\u017E\xEDva",payment_mode_already_taken:"N\xE1zov tohto typu platby sa u\u017E pou\u017E\xEDva",send_reset_link:"Odosla\u0165 resetovac\xED link",not_yet:"Email e\u0161te nepri\u0161iel? Znova odosla\u0165",password_min_length:"Heslo mus\xED obsahova\u0165 {count} znaky",name_min_length:"Meno mus\xED ma\u0165 minim\xE1lne {count} p\xEDsmen.",enter_valid_tax_rate:"Zadajte platn\xFA sadzbu dane",numbers_only:"Iba \u010D\xEDsla.",characters_only:"Iba znaky.",password_incorrect:"Hesl\xE1 musia by\u0165 rovnak\xE9",password_length:"Heslo musi obsahova\u0165 minim\xE1lne {count} znakov.",qty_must_greater_than_zero:"Mno\u017Estvo mus\xED by\u0165 viac ako 0.",price_greater_than_zero:"Cena mus\xED by\u0165 viac ako 0.",payment_greater_than_zero:"Platba mus\xED by\u0165 viac ako 0.",payment_greater_than_due_amount:"Zadan\xE1 platba je vy\u0161\u0161ia ako suma na fakt\xFAre.",quantity_maxlength:"Mno\u017Estvo by nemalo obsahova\u0165 ako 20 \u010D\xEDslic.",price_maxlength:"Cena by nemala obsahova\u0165 viac ako 20 \u010D\xEDslic.",price_minvalue:"Suma musi by\u0165 vy\u0161\u0161ia ako 0.",amount_maxlength:"\u010Ciastka by nemala obsahova\u0165 viac ako 20 \u010D\xEDslic.",amount_minvalue:"\u010Ciastka mus\xED by\u0165 va\u010D\u0161ia ako 0.",description_maxlength:"Popis nesmie obsahova\u0165 viac ako 255 znaokv.",subject_maxlength:"Predmet nesmie obsahova\u0165 viac ako 100 znakov.",message_maxlength:"Spr\xE1va nesmie obsahova\u0165 viac ako 255 znakov.",maximum_options_error:"Maxim\xE1lny po\u010Det z {max} mo\u017Enosti vybran\xFD. Najprv odstr\xE1nte aspo\u0148 jednu mo\u017Enost a n\xE1sledne vyberte in\xFA.",notes_maxlength:"Pozn\xE1mky nesm\xFA obsahova\u0165 viac ako 100 znakov.",address_maxlength:"Adresa nesmie obsahova\u0165 viac ako 255 znakov",ref_number_maxlength:"Referen\u010Dn\xE9 \u010Dislo nesmie obsahova\u0165 viac ako 255 znakov",prefix_maxlength:"Predpona nesmie ma\u0165 viac ako 5 znakov.",something_went_wrong:"Nie\u010Do neprebehlo v poriadku, odsk\xFA\u0161ajte pros\xEDm znova."},Lv="Cenov\xFD odhad",Uv="\u010C\xEDslo cenov\xE9ho odhadu",Kv="D\xE1tum cenov\xE9ho odhadu",qv="Platnos\u0165 cenov\xE9ho odhadu",Zv="Fakt\xFAra",Wv="\u010C\xEDslo fakt\xFAry",Hv="D\xE1tum vystavenia",Gv="D\xE1tum splatnosti",Yv="Pozn\xE1mky",Jv="Polo\u017Eky",Xv="Po\u010Det",Qv="Cena",ey="Z\u013Eava",ty="Celkom",ay="Medzis\xFA\u010Det",sy="S\xFA\u010Det",ny="Doklad o zaplaten\xED",iy="D\xE1tum platby",oy="\u010C\xEDslo platby",ry="Sp\xF4sob platby",dy="Prijat\xE1 suma",ly="Report v\xFDdajov",cy="Celkov\xE9 v\xFDdaje",_y="Zisky a straty",uy="Pr\xEDjem",my="\u010Cist\xFD pr\xEDjem",py="Report predajov: Pod\u013Ea z\xE1kazn\xEDkov",gy="Celkov\xE9 predaje",fy="Report predajov: Pod\u013Ea polo\u017Eky",hy="Report dan\xED",vy="Celkov\xE9 dane",yy="Typy dan\xED",by="V\xFDdaje",ky="Fakturova\u0165,",wy="Doru\u010Di\u0165,",xy="Prijat\xE9 od:",zy="da\u0148";var Sy={navigation:Sv,general:jv,dashboard:Pv,tax_types:Dv,global_search:Cv,customers:Av,items:Ev,estimates:Nv,invoices:Tv,payments:Iv,expenses:$v,login:Rv,users:Fv,reports:Mv,settings:Vv,wizard:Bv,validation:Ov,pdf_estimate_label:Lv,pdf_estimate_number:Uv,pdf_estimate_date:Kv,pdf_estimate_expire_date:qv,pdf_invoice_label:Zv,pdf_invoice_number:Wv,pdf_invoice_date:Hv,pdf_invoice_due_date:Gv,pdf_notes:Yv,pdf_items_label:Jv,pdf_quantity_label:Xv,pdf_price_label:Qv,pdf_discount_label:ey,pdf_amount_label:ty,pdf_subtotal:ay,pdf_total:sy,pdf_payment_receipt_label:ny,pdf_payment_date:iy,pdf_payment_number:oy,pdf_payment_mode:ry,pdf_payment_amount_received_label:dy,pdf_expense_report_label:ly,pdf_total_expenses_label:cy,pdf_profit_loss_label:_y,pdf_income_label:uy,pdf_net_profit_label:my,pdf_customer_sales_report:py,pdf_total_sales_label:gy,pdf_item_sales_label:fy,pdf_tax_report_label:hy,pdf_total_tax_label:vy,pdf_tax_types_label:yy,pdf_expenses_label:by,pdf_bill_to:ky,pdf_ship_to:wy,pdf_received_from:xy,pdf_tax_label:zy};const jy={dashboard:"B\u1EA3ng \u0111i\u1EC1u khi\u1EC3n",customers:"Kh\xE1ch h\xE0ng",items:"M\u1EB7t h\xE0ng",invoices:"H\xF3a \u0111\u01A1n",expenses:"Chi ph\xED",estimates:"\u01AF\u1EDBc t\xEDnh",payments:"Thanh to\xE1n",reports:"B\xE1o c\xE1o",settings:"C\xE0i \u0111\u1EB7t",logout:"\u0110\u0103ng xu\u1EA5t",users:"Ng\u01B0\u1EDDi d\xF9ng"},Py={add_company:"Th\xEAm c\xF4ng ty",view_pdf:"Xem PDF",copy_pdf_url:"Sao ch\xE9p Url PDF",download_pdf:"t\u1EA3i PDF",save:"Ti\u1EBFt ki\u1EC7m",create:"T\u1EA1o m\u1EDBi",cancel:"Hu\u1EF7 b\u1ECF",update:"C\u1EADp nh\u1EADt",deselect:"B\u1ECF ch\u1ECDn",download:"T\u1EA3i xu\u1ED1ng",from_date:"T\u1EEB ng\xE0y",to_date:"\u0110\u1EBFn ng\xE0y",from:"T\u1EEB",to:"\u0110\u1EBFn",sort_by:"S\u1EAFp x\u1EBFp theo",ascending:"T\u0103ng d\u1EA7n",descending:"Gi\u1EA3m d\u1EA7n",subject:"M\xF4n h\u1ECDc",body:"Th\xE2n h\xECnh",message:"Th\xF4ng \u0111i\u1EC7p",send:"G\u1EEDi",go_back:"Quay l\u1EA1i",back_to_login:"Quay l\u1EA1i \u0111\u0103ng nh\u1EADp?",home:"Trang Ch\u1EE7",filter:"B\u1ED9 l\u1ECDc",delete:"X\xF3a b\u1ECF",edit:"Ch\u1EC9nh s\u1EEDa",view:"L\u01B0\u1EE3t xem",add_new_item:"Th\xEAm m\u1EE5c m\u1EDBi",clear_all:"L\xE0m s\u1EA1ch t\u1EA5t c\u1EA3",showing:"Hi\u1EC3n th\u1ECB",of:"c\u1EE7a",actions:"H\xE0nh \u0111\u1ED9ng",subtotal:"TI\xCAU \u0110\u1EC0",discount:"GI\u1EA2M GI\xC1",fixed:"\u0111\xE3 s\u1EEDa",percentage:"Ph\u1EA7n tr\u0103m",tax:"THU\u1EBE",total_amount:"T\xD4\u0309NG C\xD4\u0323NG",bill_to:"Giao t\u1EEB",ship_to:"Giao t\u1EDBi",due:"\u0110\u1EBFn h\u1EA1n",draft:"B\u1EA3n nh\xE1p",sent:"G\u1EEDi",all:"T\u1EA5t c\u1EA3",select_all:"Ch\u1ECDn t\u1EA5t c\u1EA3",choose_file:"B\u1EA5m v\xE0o \u0111\xE2y \u0111\u1EC3 ch\u1ECDn m\u1ED9t t\u1EADp tin",choose_template:"Ch\u1ECDn m\u1ED9t m\u1EABu",choose:"Ch\u1ECDn",remove:"G\u1EE1",powered_by:"\u0110\u01B0\u1EE3c cung c\u1EA5p b\u1EDFi",bytefury:"Bytefury",select_a_status:"Ch\u1ECDn m\u1ED9t tr\u1EA1ng th\xE1i",select_a_tax:"Ch\u1ECDn thu\u1EBF",search:"T\xECm ki\u1EBFm",are_you_sure:"B\u1EA1n c\xF3 ch\u1EAFc kh\xF4ng?",list_is_empty:"Danh s\xE1ch tr\u1ED1ng.",no_tax_found:"Kh\xF4ng t\xECm th\u1EA5y thu\u1EBF!",four_zero_four:"404",you_got_lost:"R\u1EA5t ti\u1EBFc! B\u1EA1n b\u1ECB l\u1EA1c r\u1ED3i!",go_home:"V\u1EC1 nh\xE0",test_mail_conf:"Ki\u1EC3m tra c\u1EA5u h\xECnh th\u01B0",send_mail_successfully:"Th\u01B0 \u0111\xE3 \u0111\u01B0\u1EE3c g\u1EEDi th\xE0nh c\xF4ng",setting_updated:"\u0110\xE3 c\u1EADp nh\u1EADt c\xE0i \u0111\u1EB7t th\xE0nh c\xF4ng",select_state:"Ch\u1ECDn tr\u1EA1ng th\xE1i",select_country:"Ch\u1ECDn qu\u1ED1c gia",select_city:"L\u1EF1a ch\u1ECDn th\xE0nh ph\u1ED1",street_1:"\u0111\u01B0\u1EDDng s\u1ED1 1",street_2:"\u0110\u01B0\u1EDDng 2",action_failed:"\u0110\xE3 th\u1EA5t b\u1EA1i",retry:"Th\u1EED l\u1EA1i",choose_note:"Ch\u1ECDn Ghi ch\xFA",no_note_found:"Kh\xF4ng t\xECm th\u1EA5y ghi ch\xFA",insert_note:"Ch\xE8n ghi ch\xFA",copied_pdf_url_clipboard:"\u0110\xE3 sao ch\xE9p url PDF v\xE0o khay nh\u1EDB t\u1EA1m!"},Dy={select_year:"Ch\u1ECDn n\u0103m",cards:{due_amount:"S\u1ED1 ti\u1EC1n \u0111\u1EBFn h\u1EA1n",customers:"Kh\xE1ch h\xE0ng",invoices:"H\xF3a \u0111\u01A1n",estimates:"\u01AF\u1EDBc t\xEDnh"},chart_info:{total_sales:"B\xE1n h\xE0ng",total_receipts:"Bi\xEAn lai",total_expense:"Chi ph\xED",net_income:"Thu nh\u1EADp r\xF2ng",year:"Ch\u1ECDn n\u0103m"},monthly_chart:{title:"B\xE1n h\xE0ng"},recent_invoices_card:{title:"H\xF3a \u0111\u01A1n \u0111\u1EBFn h\u1EA1n",due_on:"\u0110\u1EBFn h\u1EA1n v\xE0o",customer:"kh\xE1ch h\xE0ng",amount_due:"S\u1ED1 ti\u1EC1n \u0111\u1EBFn h\u1EA1n",actions:"H\xE0nh \u0111\u1ED9ng",view_all:"Xem t\u1EA5t c\u1EA3"},recent_estimate_card:{title:"C\xE1c \u01B0\u1EDBc t\xEDnh g\u1EA7n \u0111\xE2y",date:"Ng\xE0y",customer:"kh\xE1ch h\xE0ng",amount_due:"S\u1ED1 ti\u1EC1n \u0111\u1EBFn h\u1EA1n",actions:"H\xE0nh \u0111\u1ED9ng",view_all:"Xem t\u1EA5t c\u1EA3"}},Cy={name:"T\xEAn",description:"Mi\xEAu t\u1EA3",percent:"Ph\u1EA7n tr\u0103m",compound_tax:"Thu\u1EBF t\u1ED5ng h\u1EE3p"},Ay={search:"T\xECm ki\u1EBFm...",customers:"Kh\xE1ch h\xE0ng",users:"Ng\u01B0\u1EDDi d\xF9ng",no_results_found:"Kh\xF4ng t\xECm th\u1EA5y k\u1EBFt qu\u1EA3 n\xE0o"},Ey={title:"Kh\xE1ch h\xE0ng",add_customer:"Th\xEAm kh\xE1ch h\xE0ng",contacts_list:"Danh s\xE1ch kh\xE1ch h\xE0ng",name:"T\xEAn",mail:"Th\u01B0 t\xEDn | Th\u01B0",statement:"Tuy\xEAn b\u1ED1",display_name:"T\xEAn hi\u1EC3n th\u1ECB",primary_contact_name:"T\xEAn li\xEAn h\u1EC7 ch\xEDnh",contact_name:"T\xEAn Li\xEAn l\u1EA1c",amount_due:"S\u1ED1 ti\u1EC1n \u0111\u1EBFn h\u1EA1n",email:"E-mail",address:"\u0110\u1ECBa ch\u1EC9",phone:"\u0110i\u1EC7n tho\u1EA1i",website:"Website",overview:"T\u1ED5ng quan",enable_portal:"B\u1EADt C\u1ED5ng th\xF4ng tin",country:"Qu\u1ED1c gia",state:"Ti\u1EC3u bang",city:"Tp.",zip_code:"M\xE3 B\u01B0u Ch\xEDnh",added_on:"\u0110\xE3 th\xEAm v\xE0o",action:"Ho\u1EA1t \u0111\u1ED9ng",password:"M\u1EADt kh\u1EA9u",street_number:"S\u1ED1 \u0111\u01B0\u1EDDng",primary_currency:"Ti\u1EC1n t\u1EC7 ch\xEDnh",description:"Mi\xEAu t\u1EA3",add_new_customer:"Th\xEAm kh\xE1ch h\xE0ng m\u1EDBi",save_customer:"L\u01B0u kh\xE1ch h\xE0ng",update_customer:"C\u1EADp nh\u1EADt kh\xE1ch h\xE0ng",customer:"Kh\xE1ch h\xE0ng | Kh\xE1ch h\xE0ng",new_customer:"Kh\xE1ch h\xE0ng m\u1EDBi",edit_customer:"Ch\u1EC9nh s\u1EEDa kh\xE1ch h\xE0ng",basic_info:"Th\xF4ng tin c\u01A1 b\u1EA3n",billing_address:"\u0110\u1ECBa ch\u1EC9 thanh to\xE1n",shipping_address:"\u0110\u1ECBa ch\u1EC9 giao h\xE0ng",copy_billing_address:"Sao ch\xE9p t\u1EEB thanh to\xE1n",no_customers:"Ch\u01B0a c\xF3 kh\xE1ch h\xE0ng!",no_customers_found:"Kh\xF4ng t\xECm th\u1EA5y kh\xE1ch h\xE0ng n\xE0o!",no_contact:"Kh\xF4ng c\xF3 li\xEAn l\u1EA1c",no_contact_name:"Kh\xF4ng c\xF3 t\xEAn li\xEAn h\u1EC7",list_of_customers:"Ph\u1EA7n n\xE0y s\u1EBD ch\u1EE9a danh s\xE1ch c\xE1c kh\xE1ch h\xE0ng.",primary_display_name:"T\xEAn hi\u1EC3n th\u1ECB ch\xEDnh",select_currency:"Ch\u1ECDn \u0111\u01A1n v\u1ECB ti\u1EC1n t\u1EC7",select_a_customer:"Ch\u1ECDn m\u1ED9t kh\xE1ch h\xE0ng",type_or_click:"Nh\u1EADp ho\u1EB7c nh\u1EA5p \u0111\u1EC3 ch\u1ECDn",new_transaction:"Giao d\u1ECBch m\u1EDBi",no_matching_customers:"Kh\xF4ng c\xF3 kh\xE1ch h\xE0ng ph\xF9 h\u1EE3p!",phone_number:"S\u1ED1 \u0111i\u1EC7n tho\u1EA1i",create_date:"T\u1EA1o ng\xE0y",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c kh\xE1ch h\xE0ng n\xE0y v\xE0 t\u1EA5t c\u1EA3 c\xE1c H\xF3a \u0111\u01A1n, \u01AF\u1EDBc t\xEDnh v\xE0 Thanh to\xE1n c\xF3 li\xEAn quan. | B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c nh\u1EEFng kh\xE1ch h\xE0ng n\xE0y v\xE0 t\u1EA5t c\u1EA3 c\xE1c H\xF3a \u0111\u01A1n, \u01AF\u1EDBc t\xEDnh v\xE0 Thanh to\xE1n c\xF3 li\xEAn quan.",created_message:"Kh\xE1ch h\xE0ng \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt kh\xE1ch h\xE0ng th\xE0nh c\xF4ng",deleted_message:"\u0110\xE3 x\xF3a kh\xE1ch h\xE0ng th\xE0nh c\xF4ng | \u0110\xE3 x\xF3a kh\xE1ch h\xE0ng th\xE0nh c\xF4ng"},Ny={title:"M\u1EB7t h\xE0ng",items_list:"Danh s\xE1ch m\u1EB7t h\xE0ng",name:"T\xEAn",unit:"\u0110\u01A1n v\u1ECB",description:"Mi\xEAu t\u1EA3",added_on:"\u0110\xE3 th\xEAm v\xE0o",price:"Gi\xE1 b\xE1n",date_of_creation:"Ng\xE0y t\u1EA1o",not_selected:"Kh\xF4ng c\xF3 m\u1EE5c n\xE0o \u0111\u01B0\u1EE3c ch\u1ECDn",action:"Ho\u1EA1t \u0111\u1ED9ng",add_item:"Th\xEAm m\u1EB7t h\xE0ng",save_item:"L\u01B0u m\u1EE5c",update_item:"C\u1EADp nh\u1EADt m\u1EB7t h\xE0ng",item:"M\u1EB7t h\xE0ng | M\u1EB7t h\xE0ng",add_new_item:"Th\xEAm m\u1EE5c m\u1EDBi",new_item:"S\u1EA3n ph\u1EA9m m\u1EDBi",edit_item:"Ch\u1EC9nh s\u1EEDa m\u1EE5c",no_items:"Ch\u01B0a c\xF3 m\u1EB7t h\xE0ng n\xE0o!",list_of_items:"Ph\u1EA7n n\xE0y s\u1EBD ch\u1EE9a danh s\xE1ch c\xE1c m\u1EE5c.",select_a_unit:"ch\u1ECDn \u0111\u01A1n v\u1ECB",taxes:"Thu\u1EBF",item_attached_message:"Kh\xF4ng th\u1EC3 x\xF3a m\u1ED9t m\u1EE5c \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c V\u1EADt ph\u1EA9m n\xE0y | B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c c\xE1c M\u1EE5c n\xE0y",created_message:"M\u1EE5c \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt m\u1EB7t h\xE0ng th\xE0nh c\xF4ng",deleted_message:"\u0110\xE3 x\xF3a m\u1EE5c th\xE0nh c\xF4ng | C\xE1c m\u1EE5c \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng"},Ty={title:"\u01AF\u1EDBc t\xEDnh",estimate:"\u01AF\u1EDBc t\xEDnh | \u01AF\u1EDBc t\xEDnh",estimates_list:"Danh s\xE1ch \u01B0\u1EDBc t\xEDnh",days:"{days} Ng\xE0y",months:"{months} th\xE1ng",years:"{years} N\u0103m",all:"T\u1EA5t c\u1EA3",paid:"\u0110\xE3 thanh to\xE1n",unpaid:"Ch\u01B0a thanh to\xE1n",customer:"KH\xC1CH H\xC0NG",ref_no:"S\u1ED0 THAM CHI\u1EBEU.",number:"CON S\u1ED0",amount_due:"S\u1ED0 TI\u1EC0N THANH TO\xC1N",partially_paid:"Thanh to\xE1n m\u1ED9t ph\u1EA7n",total:"To\xE0n b\u1ED9",discount:"Gi\u1EA3m gi\xE1",sub_total:"T\u1ED5ng ph\u1EE5",estimate_number:"S\u1ED1 \u01B0\u1EDBc t\xEDnh",ref_number:"S\u1ED1 REF",contact:"Li\xEAn h\u1EC7",add_item:"Th\xEAm m\u1ED9t m\u1EB7t h\xE0ng",date:"Ng\xE0y",due_date:"Ng\xE0y \u0111\xE1o h\u1EA1n",expiry_date:"Ng\xE0y h\u1EBFt h\u1EA1n",status:"Tr\u1EA1ng th\xE1i",add_tax:"Th\xEAm thu\u1EBF",amount:"S\u1ED1 ti\u1EC1n",action:"Ho\u1EA1t \u0111\u1ED9ng",notes:"Ghi ch\xFA",tax:"Thu\u1EBF",estimate_template:"B\u1EA3n m\u1EABu",convert_to_invoice:"Chuy\u1EC3n \u0111\u1ED5i sang h\xF3a \u0111\u01A1n",mark_as_sent:"\u0110\xE1nh d\u1EA5u l\xE0 \u0110\xE3 g\u1EEDi",send_estimate:"G\u1EEDi \u01B0\u1EDBc t\xEDnh",resend_estimate:"G\u1EEDi l\u1EA1i \u01B0\u1EDBc t\xEDnh",record_payment:"Ghi l\u1EA1i Thanh to\xE1n",add_estimate:"Th\xEAm \u01B0\u1EDBc t\xEDnh",save_estimate:"L\u01B0u \u01B0\u1EDBc t\xEDnh",confirm_conversion:"\u01AF\u1EDBc t\xEDnh n\xE0y s\u1EBD \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng \u0111\u1EC3 t\u1EA1o H\xF3a \u0111\u01A1n m\u1EDBi.",conversion_message:"H\xF3a \u0111\u01A1n \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",confirm_send_estimate:"\u01AF\u1EDBc t\xEDnh n\xE0y s\u1EBD \u0111\u01B0\u1EE3c g\u1EEDi qua email cho kh\xE1ch h\xE0ng",confirm_mark_as_sent:"\u01AF\u1EDBc t\xEDnh n\xE0y s\u1EBD \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0111\xE3 g\u1EEDi",confirm_mark_as_accepted:"\u01AF\u1EDBc t\xEDnh n\xE0y s\u1EBD \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0110\xE3 ch\u1EA5p nh\u1EADn",confirm_mark_as_rejected:"\u01AF\u1EDBc t\xEDnh n\xE0y s\u1EBD \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 B\u1ECB t\u1EEB ch\u1ED1i",no_matching_estimates:"Kh\xF4ng c\xF3 \u01B0\u1EDBc t\xEDnh ph\xF9 h\u1EE3p!",mark_as_sent_successfully:"\u01AF\u1EDBc t\xEDnh \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0111\xE3 g\u1EEDi th\xE0nh c\xF4ng",send_estimate_successfully:"\u01AF\u1EDBc t\xEDnh \u0111\xE3 \u0111\u01B0\u1EE3c g\u1EEDi th\xE0nh c\xF4ng",errors:{required:"Tr\u01B0\u1EDDng kh\xF4ng \u0111\u01B0\u1EE3c b\u1ECF tr\u1ED1ng."},accepted:"\u0110\xE3 \u0111\u01B0\u1EE3c ch\u1EA5p nh\u1EADn",rejected:"T\u1EEB ch\u1ED1i",sent:"G\u1EEDi",draft:"B\u1EA3n nh\xE1p",declined:"Suy gi\u1EA3m",new_estimate:"\u01AF\u1EDBc t\xEDnh m\u1EDBi",add_new_estimate:"Th\xEAm \u01B0\u1EDBc t\xEDnh m\u1EDBi",update_Estimate:"C\u1EADp nh\u1EADt \u01B0\u1EDBc t\xEDnh",edit_estimate:"Ch\u1EC9nh s\u1EEDa \u01B0\u1EDBc t\xEDnh",items:"m\u1EB7t h\xE0ng",Estimate:"\u01AF\u1EDBc t\xEDnh | \u01AF\u1EDBc t\xEDnh",add_new_tax:"Th\xEAm thu\u1EBF m\u1EDBi",no_estimates:"Ch\u01B0a c\xF3 \u01B0\u1EDBc t\xEDnh n\xE0o!",list_of_estimates:"Ph\u1EA7n n\xE0y s\u1EBD ch\u1EE9a danh s\xE1ch c\xE1c \u01B0\u1EDBc t\xEDnh.",mark_as_rejected:"\u0110\xE1nh d\u1EA5u l\xE0 b\u1ECB t\u1EEB ch\u1ED1i",mark_as_accepted:"\u0110\xE1nh d\u1EA5u l\xE0 \u0111\xE3 ch\u1EA5p nh\u1EADn",marked_as_accepted_message:"\u01AF\u1EDBc t\xEDnh \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0111\u01B0\u1EE3c ch\u1EA5p nh\u1EADn",marked_as_rejected_message:"\u01AF\u1EDBc t\xEDnh \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 b\u1ECB t\u1EEB ch\u1ED1i",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c \u01AF\u1EDBc t\xEDnh n\xE0y | B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c c\xE1c \u01AF\u1EDBc t\xEDnh n\xE0y",created_message:"\u01AF\u1EDBc t\xEDnh \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt \u01B0\u1EDBc t\xEDnh th\xE0nh c\xF4ng",deleted_message:"\u0110\xE3 x\xF3a \u01B0\u1EDBc t\xEDnh th\xE0nh c\xF4ng | \u0110\xE3 x\xF3a \u01B0\u1EDBc t\xEDnh th\xE0nh c\xF4ng",something_went_wrong:"C\xF3 g\xEC \u0111\xF3 kh\xF4ng \u1ED5n",item:{title:"Danh m\u1EE5c",description:"Mi\xEAu t\u1EA3",quantity:"\u0110\u1ECBnh l\u01B0\u1EE3ng",price:"Gi\xE1 b\xE1n",discount:"Gi\u1EA3m gi\xE1",total:"To\xE0n b\u1ED9",total_discount:"T\u1ED5ng kh\u1EA5u tr\u1EEB",sub_total:"T\u1ED5ng ph\u1EE5",tax:"Thu\u1EBF",amount:"S\u1ED1 ti\u1EC1n",select_an_item:"Nh\u1EADp ho\u1EB7c nh\u1EA5p \u0111\u1EC3 ch\u1ECDn m\u1ED9t m\u1EE5c",type_item_description:"Lo\u1EA1i M\u1EE5c M\xF4 t\u1EA3 (t\xF9y ch\u1ECDn)"}},Iy={title:"H\xF3a \u0111\u01A1n",invoices_list:"Danh s\xE1ch h\xF3a \u0111\u01A1n",days:"{days} Ng\xE0y",months:"{months} th\xE1ng",years:"{years} N\u0103m",all:"T\u1EA5t c\u1EA3",paid:"\u0110\xE3 thanh to\xE1n",unpaid:"Ch\u01B0a thanh to\xE1n",viewed:"\u0110\xE3 xem",overdue:"Qu\xE1 h\u1EA1n",completed:"\u0110\xE3 ho\xE0n th\xE0nh",customer:"KH\xC1CH H\xC0NG",paid_status:"TR\u1EA0NG TH\xC1I \u0110\xC3 TR\u1EA2 TI\u1EC0N",ref_no:"S\u1ED0 THAM CHI\u1EBEU.",number:"S\u1ED0",amount_due:"S\u1ED0 TI\u1EC0N THANH TO\xC1N",partially_paid:"Thanh to\xE1n m\u1ED9t ph\u1EA7n",total:"To\xE0n b\u1ED9",discount:"Gi\u1EA3m gi\xE1",sub_total:"T\u1ED5ng ph\u1EE5",invoice:"H\xF3a \u0111\u01A1n | H\xF3a \u0111\u01A1n",invoice_number:"S\u1ED1 h\xF3a \u0111\u01A1n",ref_number:"S\u1ED1 REF",contact:"Li\xEAn h\u1EC7",add_item:"Th\xEAm m\u1ED9t m\u1EB7t h\xE0ng",date:"Ng\xE0y",due_date:"Ng\xE0y \u0111\xE1o h\u1EA1n",status:"Tr\u1EA1ng th\xE1i",add_tax:"Th\xEAm thu\u1EBF",amount:"S\u1ED1 ti\u1EC1n",action:"Ho\u1EA1t \u0111\u1ED9ng",notes:"Ghi ch\xFA",view:"L\u01B0\u1EE3t xem",send_invoice:"G\u1EEDi h\xF3a \u0111\u01A1n",resend_invoice:"G\u1EEDi l\u1EA1i h\xF3a \u0111\u01A1n",invoice_template:"M\u1EABu h\xF3a \u0111\u01A1n",template:"B\u1EA3n m\u1EABu",mark_as_sent:"\u0110\xE1nh d\u1EA5u l\xE0 \u0111\xE3 g\u1EEDi",confirm_send_invoice:"H\xF3a \u0111\u01A1n n\xE0y s\u1EBD \u0111\u01B0\u1EE3c g\u1EEDi qua email cho kh\xE1ch h\xE0ng",invoice_mark_as_sent:"H\xF3a \u0111\u01A1n n\xE0y s\u1EBD \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0111\xE3 g\u1EEDi",confirm_send:"H\xF3a \u0111\u01A1n n\xE0y s\u1EBD \u0111\u01B0\u1EE3c g\u1EEDi qua email cho kh\xE1ch h\xE0ng",invoice_date:"Ng\xE0y l\u1EADp h\xF3a \u0111\u01A1n",record_payment:"Ghi l\u1EA1i Thanh to\xE1n",add_new_invoice:"Th\xEAm h\xF3a \u0111\u01A1n m\u1EDBi",update_expense:"C\u1EADp nh\u1EADt chi ph\xED",edit_invoice:"Ch\u1EC9nh s\u1EEDa h\xF3a \u0111\u01A1n",new_invoice:"H\xF3a \u0111\u01A1n m\u1EDBi",save_invoice:"L\u01B0u h\xF3a \u0111\u01A1n",update_invoice:"C\u1EADp nh\u1EADt h\xF3a \u0111\u01A1n",add_new_tax:"Th\xEAm thu\u1EBF m\u1EDBi",no_invoices:"Ch\u01B0a c\xF3 h\xF3a \u0111\u01A1n!",list_of_invoices:"Ph\u1EA7n n\xE0y s\u1EBD ch\u1EE9a danh s\xE1ch c\xE1c h\xF3a \u0111\u01A1n.",select_invoice:"Ch\u1ECDn h\xF3a \u0111\u01A1n",no_matching_invoices:"Kh\xF4ng c\xF3 h\xF3a \u0111\u01A1n ph\xF9 h\u1EE3p!",mark_as_sent_successfully:"H\xF3a \u0111\u01A1n \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0111\xE3 g\u1EEDi th\xE0nh c\xF4ng",invoice_sent_successfully:"H\xF3a \u0111\u01A1n \u0111\xE3 \u0111\u01B0\u1EE3c g\u1EEDi th\xE0nh c\xF4ng",cloned_successfully:"H\xF3a \u0111\u01A1n \u0111\u01B0\u1EE3c sao ch\xE9p th\xE0nh c\xF4ng",clone_invoice:"H\xF3a \u0111\u01A1n nh\xE2n b\u1EA3n",confirm_clone:"H\xF3a \u0111\u01A1n n\xE0y s\u1EBD \u0111\u01B0\u1EE3c sao ch\xE9p v\xE0o m\u1ED9t H\xF3a \u0111\u01A1n m\u1EDBi",item:{title:"Danh m\u1EE5c",description:"Mi\xEAu t\u1EA3",quantity:"\u0110\u1ECBnh l\u01B0\u1EE3ng",price:"Gi\xE1 b\xE1n",discount:"Gi\u1EA3m gi\xE1",total:"To\xE0n b\u1ED9",total_discount:"T\u1ED5ng kh\u1EA5u tr\u1EEB",sub_total:"T\u1ED5ng ph\u1EE5",tax:"Thu\u1EBF",amount:"S\u1ED1 ti\u1EC1n",select_an_item:"Nh\u1EADp ho\u1EB7c nh\u1EA5p \u0111\u1EC3 ch\u1ECDn m\u1ED9t m\u1EE5c",type_item_description:"Lo\u1EA1i M\u1EE5c M\xF4 t\u1EA3 (t\xF9y ch\u1ECDn)"},confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c H\xF3a \u0111\u01A1n n\xE0y | B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c c\xE1c H\xF3a \u0111\u01A1n n\xE0y",created_message:"H\xF3a \u0111\u01A1n \u0111\xE3 \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt h\xF3a \u0111\u01A1n th\xE0nh c\xF4ng",deleted_message:"H\xF3a \u0111\u01A1n \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng | H\xF3a \u0111\u01A1n \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng",marked_as_sent_message:"H\xF3a \u0111\u01A1n \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0111\xE3 g\u1EEDi th\xE0nh c\xF4ng",something_went_wrong:"c\xF3 g\xEC \u0111\xF3 kh\xF4ng \u1ED5n",invalid_due_amount_message:"T\u1ED5ng s\u1ED1 ti\u1EC1n tr\xEAn H\xF3a \u0111\u01A1n kh\xF4ng \u0111\u01B0\u1EE3c nh\u1ECF h\u01A1n t\u1ED5ng s\u1ED1 ti\u1EC1n \u0111\xE3 thanh to\xE1n cho H\xF3a \u0111\u01A1n n\xE0y. Vui l\xF2ng c\u1EADp nh\u1EADt h\xF3a \u0111\u01A1n ho\u1EB7c x\xF3a c\xE1c kho\u1EA3n thanh to\xE1n li\xEAn quan \u0111\u1EC3 ti\u1EBFp t\u1EE5c."},$y={title:"Thanh to\xE1n",payments_list:"Danh s\xE1ch thanh to\xE1n",record_payment:"Ghi l\u1EA1i Thanh to\xE1n",customer:"kh\xE1ch h\xE0ng",date:"Ng\xE0y",amount:"S\u1ED1 ti\u1EC1n",action:"Ho\u1EA1t \u0111\u1ED9ng",payment_number:"M\xE3 S\u1ED1 Thanh To\xE1n",payment_mode:"Ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n",invoice:"H\xF3a \u0111\u01A1n",note:"Ghi ch\xFA",add_payment:"Th\xEAm thanh to\xE1n",new_payment:"Thanh to\xE1n m\u1EDBi",edit_payment:"Ch\u1EC9nh s\u1EEDa Thanh to\xE1n",view_payment:"Xem thanh to\xE1n",add_new_payment:"Th\xEAm thanh to\xE1n m\u1EDBi",send_payment_receipt:"G\u1EEDi bi\xEAn lai thanh to\xE1n",send_payment:"G\u1EEDi h\xF3a \u0111\u01A1n",save_payment:"L\u01B0u thanh to\xE1n",update_payment:"C\u1EADp nh\u1EADt thanh to\xE1n",payment:"Thanh to\xE1n | Thanh to\xE1n",no_payments:"Ch\u01B0a c\xF3 kho\u1EA3n thanh to\xE1n n\xE0o!",not_selected:"Kh\xF4ng \u0111\u01B0\u1EE3c ch\u1ECDn",no_invoice:"Kh\xF4ng c\xF3 h\xF3a \u0111\u01A1n",no_matching_payments:"Kh\xF4ng c\xF3 kho\u1EA3n thanh to\xE1n n\xE0o ph\xF9 h\u1EE3p!",list_of_payments:"Ph\u1EA7n n\xE0y s\u1EBD ch\u1EE9a danh s\xE1ch c\xE1c kho\u1EA3n thanh to\xE1n.",select_payment_mode:"Ch\u1ECDn ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n",confirm_mark_as_sent:"\u01AF\u1EDBc t\xEDnh n\xE0y s\u1EBD \u0111\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u l\xE0 \u0111\xE3 g\u1EEDi",confirm_send_payment:"Kho\u1EA3n thanh to\xE1n n\xE0y s\u1EBD \u0111\u01B0\u1EE3c g\u1EEDi qua email cho kh\xE1ch h\xE0ng",send_payment_successfully:"Thanh to\xE1n \u0111\xE3 \u0111\u01B0\u1EE3c g\u1EEDi th\xE0nh c\xF4ng",something_went_wrong:"C\xF3 g\xEC \u0111\xF3 kh\xF4ng \u1ED5n",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c Thanh to\xE1n n\xE0y | B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c c\xE1c Kho\u1EA3n thanh to\xE1n n\xE0y",created_message:"Thanh to\xE1n \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt thanh to\xE1n th\xE0nh c\xF4ng",deleted_message:"\u0110\xE3 x\xF3a thanh to\xE1n th\xE0nh c\xF4ng | Thanh to\xE1n \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng",invalid_amount_message:"S\u1ED1 ti\u1EC1n thanh to\xE1n kh\xF4ng h\u1EE3p l\u1EC7"},Ry={title:"Chi ph\xED",expenses_list:"Danh s\xE1ch chi ph\xED",select_a_customer:"Ch\u1ECDn m\u1ED9t kh\xE1ch h\xE0ng",expense_title:"Ti\xEAu \u0111\u1EC1",customer:"kh\xE1ch h\xE0ng",contact:"Li\xEAn h\u1EC7",category:"th\u1EC3 lo\u1EA1i",from_date:"T\u1EEB ng\xE0y",to_date:"\u0110\u1EBFn ng\xE0y",expense_date:"Ng\xE0y",description:"Mi\xEAu t\u1EA3",receipt:"Bi\xEAn lai",amount:"S\u1ED1 ti\u1EC1n",action:"Ho\u1EA1t \u0111\u1ED9ng",not_selected:"Kh\xF4ng \u0111\u01B0\u1EE3c ch\u1ECDn",note:"Ghi ch\xFA",category_id:"Th\u1EC3 lo\u1EA1i ID",date:"Ng\xE0y",add_expense:"Th\xEAm chi ph\xED",add_new_expense:"Th\xEAm chi ph\xED m\u1EDBi",save_expense:"Ti\u1EBFt ki\u1EC7m chi ph\xED",update_expense:"C\u1EADp nh\u1EADt chi ph\xED",download_receipt:"Bi\xEAn nh\u1EADn t\u1EA3i xu\u1ED1ng",edit_expense:"Ch\u1EC9nh s\u1EEDa chi ph\xED",new_expense:"Chi ph\xED m\u1EDBi",expense:"Chi ph\xED | Chi ph\xED",no_expenses:"Ch\u01B0a c\xF3 chi ph\xED!",list_of_expenses:"Ph\u1EA7n n\xE0y s\u1EBD ch\u1EE9a danh s\xE1ch c\xE1c chi ph\xED.",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 thu h\u1ED3i Kho\u1EA3n chi ph\xED n\xE0y | B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 thu h\u1ED3i c\xE1c Kho\u1EA3n chi ph\xED n\xE0y",created_message:"\u0110\xE3 t\u1EA1o th\xE0nh c\xF4ng chi ph\xED",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt chi ph\xED th\xE0nh c\xF4ng",deleted_message:"\u0110\xE3 x\xF3a th\xE0nh c\xF4ng chi ph\xED | \u0110\xE3 x\xF3a th\xE0nh c\xF4ng chi ph\xED",categories:{categories_list:"Danh s\xE1ch h\u1EA1ng m\u1EE5c",title:"Ti\xEAu \u0111\u1EC1",name:"T\xEAn",description:"Mi\xEAu t\u1EA3",amount:"S\u1ED1 ti\u1EC1n",actions:"H\xE0nh \u0111\u1ED9ng",add_category:"th\xEAm th\xEA\u0309 loa\u0323i",new_category:"Danh m\u1EE5c m\u1EDBi",category:"Th\u1EC3 lo\u1EA1i | Th\u1EC3 lo\u1EA1i",select_a_category:"Ch\u1ECDn m\u1ED9t danh m\u1EE5c"}},Fy={email:"E-mail",password:"M\u1EADt kh\u1EA9u",forgot_password:"Qu\xEAn m\u1EADt kh\u1EA9u?",or_signIn_with:"ho\u1EB7c \u0110\u0103ng nh\u1EADp b\u1EB1ng",login:"\u0110\u0103ng nh\u1EADp",register:"\u0110\u0103ng k\xFD",reset_password:"\u0110\u1EB7t l\u1EA1i m\u1EADt kh\u1EA9u",password_reset_successfully:"\u0110\u1EB7t l\u1EA1i m\u1EADt kh\u1EA9u th\xE0nh c\xF4ng",enter_email:"Nh\u1EADp email",enter_password:"Nh\u1EADp m\u1EADt kh\u1EA9u",retype_password:"G\xF5 l\u1EA1i m\u1EADt kh\u1EA9u"},My={title:"Ng\u01B0\u1EDDi d\xF9ng",users_list:"Danh s\xE1ch ng\u01B0\u1EDDi d\xF9ng",name:"T\xEAn",description:"Mi\xEAu t\u1EA3",added_on:"\u0110\xE3 th\xEAm v\xE0o",date_of_creation:"Ng\xE0y t\u1EA1o",action:"Ho\u1EA1t \u0111\u1ED9ng",add_user:"Th\xEAm ng\u01B0\u1EDDi d\xF9ng",save_user:"L\u01B0u ng\u01B0\u1EDDi d\xF9ng",update_user:"C\u1EADp nh\u1EADt ng\u01B0\u1EDDi d\xF9ng",user:"Ng\u01B0\u1EDDi d\xF9ng | Ng\u01B0\u1EDDi d\xF9ng",add_new_user:"Th\xEAm ng\u01B0\u1EDDi d\xF9ng m\u1EDBi",new_user:"Ng\u01B0\u1EDDi d\xF9ng m\u1EDBi",edit_user:"Ch\u1EC9nh s\u1EEDa g\u01B0\u1EDDi d\xF9ng",no_users:"Ch\u01B0a c\xF3 ng\u01B0\u1EDDi d\xF9ng n\xE0o!",list_of_users:"Ph\u1EA7n n\xE0y s\u1EBD ch\u1EE9a danh s\xE1ch ng\u01B0\u1EDDi d\xF9ng.",email:"E-mail",phone:"\u0110i\u1EC7n tho\u1EA1i",password:"M\u1EADt kh\u1EA9u",user_attached_message:"Kh\xF4ng th\u1EC3 x\xF3a m\u1ED9t m\u1EE5c \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c Ng\u01B0\u1EDDi d\xF9ng n\xE0y | B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c nh\u1EEFng Ng\u01B0\u1EDDi d\xF9ng n\xE0y",created_message:"Ng\u01B0\u1EDDi d\xF9ng \u0111\xE3 \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt ng\u01B0\u1EDDi d\xF9ng th\xE0nh c\xF4ng",deleted_message:"\u0110\xE3 x\xF3a ng\u01B0\u1EDDi d\xF9ng th\xE0nh c\xF4ng | \u0110\xE3 x\xF3a ng\u01B0\u1EDDi d\xF9ng th\xE0nh c\xF4ng"},Vy={title:"B\xE1o c\xE1o",from_date:"T\u1EEB ng\xE0y",to_date:"\u0110\u1EBFn ng\xE0y",status:"Tr\u1EA1ng th\xE1i",paid:"\u0110\xE3 thanh to\xE1n",unpaid:"Ch\u01B0a thanh to\xE1n",download_pdf:"T\u1EA3i PDF",view_pdf:"Xem PDF",update_report:"C\u1EADp nh\u1EADt b\xE1o c\xE1o",report:"B\xE1o c\xE1o | B\xE1o c\xE1o",profit_loss:{profit_loss:"L\u1EE3i nhu\u1EADn",to_date:"\u0110\u1EBFn ng\xE0y",from_date:"T\u1EEB ng\xE0y",date_range:"Ch\u1ECDn ph\u1EA1m vi ng\xE0y"},sales:{sales:"B\xE1n h\xE0ng",date_range:"Ch\u1ECDn ph\u1EA1m vi ng\xE0y",to_date:"\u0110\u1EBFn ng\xE0y",from_date:"T\u1EEB ng\xE0y",report_type:"Lo\u1EA1i b\xE1o c\xE1o"},taxes:{taxes:"Thu\u1EBF",to_date:"\u0110\u1EBFn ng\xE0y",from_date:"T\u1EEB ng\xE0y",date_range:"Ch\u1ECDn ph\u1EA1m vi ng\xE0y"},errors:{required:"L\u0129nh v\u1EF1c \u0111\u01B0\u1EE3c y\xEAu c\u1EA7u"},invoices:{invoice:"H\xF3a \u0111\u01A1n",invoice_date:"Ng\xE0y l\u1EADp h\xF3a \u0111\u01A1n",due_date:"Ng\xE0y \u0111\xE1o h\u1EA1n",amount:"S\u1ED1 ti\u1EC1n",contact_name:"T\xEAn Li\xEAn l\u1EA1c",status:"Tr\u1EA1ng th\xE1i"},estimates:{estimate:"\u01AF\u1EDBc t\xEDnh",estimate_date:"Ng\xE0y \u01B0\u1EDBc t\xEDnh",due_date:"Ng\xE0y \u0111\xE1o h\u1EA1n",estimate_number:"S\u1ED1 \u01B0\u1EDBc t\xEDnh",ref_number:"S\u1ED1 REF",amount:"S\u1ED1 ti\u1EC1n",contact_name:"T\xEAn Li\xEAn l\u1EA1c",status:"Tr\u1EA1ng th\xE1i"},expenses:{expenses:"Chi ph\xED",category:"th\u1EC3 lo\u1EA1i",date:"Ng\xE0y",amount:"S\u1ED1 ti\u1EC1n",to_date:"\u0110\u1EBFn ng\xE0y",from_date:"T\u1EEB ng\xE0y",date_range:"Ch\u1ECDn ph\u1EA1m vi ng\xE0y"}},By={menu_title:{account_settings:"C\xE0i \u0111\u1EB7t t\xE0i kho\u1EA3n",company_information:"Th\xF4ng tin c\xF4ng ty",customization:"T\xF9y bi\u1EBFn",preferences:"S\u1EDF th\xEDch",notifications:"Th\xF4ng b\xE1o",tax_types:"C\xE1c lo\u1EA1i thu\u1EBF",expense_category:"H\u1EA1ng m\u1EE5c Chi ph\xED",update_app:"C\u1EADp nh\u1EADt \u1EE9ng d\u1EE5ng",backup:"Sao l\u01B0u",file_disk:"\u0110\u0129a t\u1EC7p",custom_fields:"Tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh",payment_modes:"Ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n",notes:"Ghi ch\xFA"},title:"C\xE0i \u0111\u1EB7t",setting:"C\xE0i \u0111\u1EB7t | C\xE0i \u0111\u1EB7t",general:"Chung",language:"Ng\xF4n ng\u1EEF",primary_currency:"Ti\u1EC1n t\u1EC7 ch\xEDnh",timezone:"M\xFAi gi\u1EDD",date_format:"\u0110\u1ECBnh d\u1EA1ng ng\xE0y th\xE1ng",currencies:{title:"Ti\u1EC1n t\u1EC7",currency:"Ti\u1EC1n t\u1EC7 | Ti\u1EC1n t\u1EC7",currencies_list:"Danh s\xE1ch ti\u1EC1n t\u1EC7",select_currency:"Ch\u1ECDn ti\u1EC1n t\u1EC7",name:"T\xEAn",code:"M\xE3",symbol:"Bi\u1EC3u t\u01B0\u1EE3ng",precision:"\u0110\u1ED9 ch\xEDnh x\xE1c",thousand_separator:"H\xE0ng ng\xE0n m\xE1y t\xE1ch",decimal_separator:"Ph\xE2n s\u1ED1 th\u1EADp ph\xE2n",position:"Ch\u1EE9c v\u1EE5",position_of_symbol:"V\u1ECB tr\xED c\u1EE7a bi\u1EC3u t\u01B0\u1EE3ng",right:"\u0110\xFAng",left:"Tr\xE1i",action:"Ho\u1EA1t \u0111\u1ED9ng",add_currency:"Th\xEAm ti\u1EC1n t\u1EC7"},mail:{host:"M\xE1y ch\u1EE7 Th\u01B0",port:"C\u1ED5ng th\u01B0",driver:"Tr\xECnh \u0111i\u1EC1u khi\u1EC3n Th\u01B0",secret:"Kh\xF3a",mailgun_secret:"Kh\xF3a Mailgun",mailgun_domain:"Mi\u1EC1n",mailgun_endpoint:"\u0110i\u1EC3m cu\u1ED1i c\u1EE7a Mailgun",ses_secret:"Kh\xF3a SES",ses_key:"Kh\xF3a SES",password:"M\u1EADt kh\u1EA9u th\u01B0",username:"T\xEAn ng\u01B0\u1EDDi d\xF9ng th\u01B0",mail_config:"C\u1EA5u h\xECnh th\u01B0",from_name:"T\u1EEB t\xEAn th\u01B0",from_mail:"T\u1EEB \u0111\u1ECBa ch\u1EC9 th\u01B0",encryption:"M\xE3 h\xF3a Th\u01B0",mail_config_desc:"D\u01B0\u1EDBi \u0111\xE2y l\xE0 bi\u1EC3u m\u1EABu \u0110\u1ECBnh c\u1EA5u h\xECnh tr\xECnh \u0111i\u1EC1u khi\u1EC3n Email \u0111\u1EC3 g\u1EEDi email t\u1EEB \u1EE9ng d\u1EE5ng. B\u1EA1n c\u0169ng c\xF3 th\u1EC3 \u0111\u1ECBnh c\u1EA5u h\xECnh c\xE1c nh\xE0 cung c\u1EA5p b\xEAn th\u1EE9 ba nh\u01B0 Sendgrid, SES, v.v."},pdf:{title:"C\xE0i \u0111\u1EB7t PDF",footer_text:"V\u0103n b\u1EA3n ch\xE2n trang",pdf_layout:"B\u1ED1 c\u1EE5c PDF"},company_info:{company_info:"Th\xF4ng tin c\xF4ng ty",company_name:"T\xEAn c\xF4ng ty",company_logo:"Logo c\xF4ng ty",section_description:"Th\xF4ng tin v\u1EC1 c\xF4ng ty c\u1EE7a b\u1EA1n s\u1EBD \u0111\u01B0\u1EE3c hi\u1EC3n th\u1ECB tr\xEAn h\xF3a \u0111\u01A1n, \u01B0\u1EDBc t\xEDnh v\xE0 c\xE1c t\xE0i li\u1EC7u kh\xE1c do Crater t\u1EA1o.",phone:"\u0110i\u1EC7n tho\u1EA1i",country:"Qu\u1ED1c gia",state:"Ti\u1EC3u bang",city:"Tp.",address:"\u0110\u1ECBa ch\u1EC9",zip:"Zip",save:"L\u01B0u",updated_message:"Th\xF4ng tin c\xF4ng ty \u0111\u01B0\u1EE3c c\u1EADp nh\u1EADt th\xE0nh c\xF4ng"},custom_fields:{title:"Tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh",section_description:"T\xF9y ch\u1EC9nh h\xF3a \u0111\u01A1n, \u01B0\u1EDBc t\xEDnh c\u1EE7a b\u1EA1n",add_custom_field:"Th\xEAm tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh",edit_custom_field:"Ch\u1EC9nh s\u1EEDa tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh",field_name:"T\xEAn tr\u01B0\u1EDDng",label:"Nh\xE3n",type:"Ki\u1EC3u",name:"T\xEAn",required:"C\u1EA7n thi\u1EBFt",placeholder:"Tr\xECnh gi\u1EEF ch\u1ED7",help_text:"V\u0103n b\u1EA3n tr\u1EE3 gi\xFAp",default_value:"Gi\xE1 tr\u1ECB m\u1EB7c \u0111\u1ECBnh",prefix:"Ti\u1EBFp \u0111\u1EA7u ng\u1EEF",starting_number:"S\u1ED1 b\u1EAFt \u0111\u1EA7u",model:"M\xF4 h\xECnh",help_text_description:"Nh\u1EADp m\u1ED9t s\u1ED1 v\u0103n b\u1EA3n \u0111\u1EC3 gi\xFAp ng\u01B0\u1EDDi d\xF9ng hi\u1EC3u m\u1EE5c \u0111\xEDch c\u1EE7a tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh n\xE0y.",suffix:"H\u1EADu t\u1ED1",yes:"\u0110\xFAng",no:"Kh\xF4ng",order:"\u0110\u1EB7t h\xE0ng",custom_field_confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c Tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh n\xE0y",already_in_use:"Tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",deleted_message:"Tr\u01B0\u1EDDng T\xF9y ch\u1EC9nh \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng",options:"c\xE1c t\xF9y ch\u1ECDn",add_option:"Th\xEAm t\xF9y ch\u1ECDn",add_another_option:"Th\xEAm m\u1ED9t t\xF9y ch\u1ECDn kh\xE1c",sort_in_alphabetical_order:"S\u1EAFp x\u1EBFp theo th\u1EE9 t\u1EF1 b\u1EA3ng ch\u1EEF c\xE1i",add_options_in_bulk:"Th\xEAm h\xE0ng lo\u1EA1t t\xF9y ch\u1ECDn",use_predefined_options:"S\u1EED d\u1EE5ng c\xE1c t\xF9y ch\u1ECDn \u0111\u01B0\u1EE3c x\xE1c \u0111\u1ECBnh tr\u01B0\u1EDBc",select_custom_date:"Ch\u1ECDn ng\xE0y t\xF9y ch\u1EC9nh",select_relative_date:"Ch\u1ECDn ng\xE0y t\u01B0\u01A1ng \u0111\u1ED1i",ticked_by_default:"\u0110\u01B0\u1EE3c \u0111\xE1nh d\u1EA5u theo m\u1EB7c \u0111\u1ECBnh",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh th\xE0nh c\xF4ng",added_message:"Tr\u01B0\u1EDDng t\xF9y ch\u1EC9nh \u0111\xE3 \u0111\u01B0\u1EE3c th\xEAm th\xE0nh c\xF4ng"},customization:{customization:"s\u1EF1 t\xF9y bi\u1EBFn",save:"Ti\u1EBFt ki\u1EC7m",addresses:{title:"\u0110\u1ECBa ch\u1EC9",section_description:"B\u1EA1n c\xF3 th\u1EC3 \u0111\u1EB7t \u0110\u1ECBnh d\u1EA1ng \u0110\u1ECBa ch\u1EC9 Thanh to\xE1n c\u1EE7a Kh\xE1ch h\xE0ng v\xE0 \u0110\u1ECBa ch\u1EC9 Giao h\xE0ng c\u1EE7a Kh\xE1ch h\xE0ng (Ch\u1EC9 hi\u1EC3n th\u1ECB d\u01B0\u1EDBi d\u1EA1ng PDF).",customer_billing_address:"\u0110\u1ECBa ch\u1EC9 thanh to\xE1n c\u1EE7a kh\xE1ch h\xE0ng",customer_shipping_address:"\u0110\u1ECBa ch\u1EC9 giao h\xE0ng c\u1EE7a kh\xE1ch h\xE0ng",company_address:"\u0111\u1ECBa ch\u1EC9 c\xF4ng ty",insert_fields:"Ch\xE8n tr\u01B0\u1EDDng",contact:"Li\xEAn h\u1EC7",address:"\u0110\u1ECBa ch\u1EC9",display_name:"T\xEAn hi\u1EC3n th\u1ECB",primary_contact_name:"T\xEAn li\xEAn h\u1EC7 ch\xEDnh",email:"E-mail",website:"Website",name:"T\xEAn",country:"Qu\u1ED1c gia",state:"Ti\u1EC3u bang",city:"Tp.",company_name:"T\xEAn c\xF4ng ty",address_street_1:"\u0110\u1ECBa ch\u1EC9 \u0110\u01B0\u1EDDng 1",address_street_2:"\u0110\u1ECBa ch\u1EC9 \u0110\u01B0\u1EDDng 2",phone:"\u0110i\u1EC7n tho\u1EA1i",zip_code:"M\xE3 B\u01B0u Ch\xEDnh",address_setting_updated:"\u0110\xE3 c\u1EADp nh\u1EADt c\xE0i \u0111\u1EB7t \u0111\u1ECBa ch\u1EC9 th\xE0nh c\xF4ng"},updated_message:"Th\xF4ng tin c\xF4ng ty \u0111\u01B0\u1EE3c c\u1EADp nh\u1EADt th\xE0nh c\xF4ng",invoices:{title:"H\xF3a \u0111\u01A1n",notes:"Ghi ch\xFA",invoice_prefix:"Ti\u1EC1n t\u1ED1 h\xF3a \u0111\u01A1n",default_invoice_email_body:"N\u1ED9i dung email h\xF3a \u0111\u01A1n m\u1EB7c \u0111\u1ECBnh",invoice_settings:"C\xE0i \u0111\u1EB7t h\xF3a \u0111\u01A1n",autogenerate_invoice_number:"T\u1EF1 \u0111\u1ED9ng t\u1EA1o s\u1ED1 h\xF3a \u0111\u01A1n",autogenerate_invoice_number_desc:"T\u1EAFt t\xEDnh n\u0103ng n\xE0y, N\u1EBFu b\u1EA1n kh\xF4ng mu\u1ED1n t\u1EF1 \u0111\u1ED9ng t\u1EA1o s\u1ED1 h\xF3a \u0111\u01A1n m\u1ED7i khi b\u1EA1n t\u1EA1o h\xF3a \u0111\u01A1n m\u1EDBi.",invoice_email_attachment:"G\u1EEDi h\xF3a \u0111\u01A1n d\u01B0\u1EDBi d\u1EA1ng t\u1EC7p \u0111\xEDnh k\xE8m",invoice_email_attachment_setting_description:"B\u1EADt t\xEDnh n\u0103ng n\xE0y n\u1EBFu b\u1EA1n mu\u1ED1n g\u1EEDi h\xF3a \u0111\u01A1n d\u01B0\u1EDBi d\u1EA1ng t\u1EC7p \u0111\xEDnh k\xE8m email. Xin l\u01B0u \xFD r\u1EB1ng n\xFAt 'Xem H\xF3a \u0111\u01A1n' trong email s\u1EBD kh\xF4ng \u0111\u01B0\u1EE3c hi\u1EC3n th\u1ECB n\u1EEFa khi \u0111\u01B0\u1EE3c b\u1EADt.",enter_invoice_prefix:"Nh\u1EADp ti\u1EC1n t\u1ED1 h\xF3a \u0111\u01A1n",terms_and_conditions:"C\xE1c \u0111i\u1EC1u kho\u1EA3n v\xE0 \u0111i\u1EC1u ki\u1EC7n",company_address_format:"\u0110\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 c\xF4ng ty",shipping_address_format:"\u0110\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 giao h\xE0ng",billing_address_format:"\u0110\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 thanh to\xE1n",invoice_settings_updated:"\u0110\xE3 c\u1EADp nh\u1EADt c\xE0i \u0111\u1EB7t h\xF3a \u0111\u01A1n th\xE0nh c\xF4ng"},estimates:{title:"\u01AF\u1EDBc t\xEDnh",estimate_prefix:"Ti\u1EC1n t\u1ED1 \u01B0\u1EDBc t\xEDnh",default_estimate_email_body:"N\u1ED9i dung Email \u01AF\u1EDBc t\xEDnh M\u1EB7c \u0111\u1ECBnh",estimate_settings:"C\xE0i \u0111\u1EB7t \u01B0\u1EDBc t\xEDnh",autogenerate_estimate_number:"T\u1EF1 \u0111\u1ED9ng t\u1EA1o s\u1ED1 \u01B0\u1EDBc t\xEDnh",estimate_setting_description:"T\u1EAFt t\xEDnh n\u0103ng n\xE0y, n\u1EBFu b\u1EA1n kh\xF4ng mu\u1ED1n t\u1EF1 \u0111\u1ED9ng t\u1EA1o s\u1ED1 \u01B0\u1EDBc t\xEDnh m\u1ED7i khi b\u1EA1n t\u1EA1o \u01B0\u1EDBc t\xEDnh m\u1EDBi.",estimate_email_attachment:"G\u1EEDi \u01B0\u1EDBc t\xEDnh d\u01B0\u1EDBi d\u1EA1ng t\u1EC7p \u0111\xEDnh k\xE8m",estimate_email_attachment_setting_description:"B\u1EADt t\xEDnh n\u0103ng n\xE0y n\u1EBFu b\u1EA1n mu\u1ED1n g\u1EEDi \u01B0\u1EDBc t\xEDnh d\u01B0\u1EDBi d\u1EA1ng t\u1EC7p \u0111\xEDnh k\xE8m email. Xin l\u01B0u \xFD r\u1EB1ng n\xFAt 'Xem \u01AF\u1EDBc t\xEDnh' trong email s\u1EBD kh\xF4ng \u0111\u01B0\u1EE3c hi\u1EC3n th\u1ECB n\u1EEFa khi \u0111\u01B0\u1EE3c b\u1EADt.",enter_estimate_prefix:"Nh\u1EADp ti\u1EC1n t\u1ED1 estmiate",estimate_setting_updated:"\u0110\xE3 c\u1EADp nh\u1EADt c\xE0i \u0111\u1EB7t \u01B0\u1EDBc t\xEDnh th\xE0nh c\xF4ng",company_address_format:"\u0110\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 c\xF4ng ty",billing_address_format:"\u0110\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 thanh to\xE1n",shipping_address_format:"\u0110\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 giao h\xE0ng"},payments:{title:"Thanh to\xE1n",description:"C\xE1c ph\u01B0\u01A1ng th\u1EE9c giao d\u1ECBch thanh to\xE1n",payment_prefix:"Ti\u1EC1n t\u1ED1 thanh to\xE1n",default_payment_email_body:"N\u1ED9i dung Email Thanh to\xE1n M\u1EB7c \u0111\u1ECBnh",payment_settings:"C\xE0i \u0111\u1EB7t thanh to\xE1n",autogenerate_payment_number:"T\u1EF1 \u0111\u1ED9ng t\u1EA1o s\u1ED1 thanh to\xE1n",payment_setting_description:"T\u1EAFt t\xEDnh n\u0103ng n\xE0y, n\u1EBFu b\u1EA1n kh\xF4ng mu\u1ED1n t\u1EF1 \u0111\u1ED9ng t\u1EA1o s\u1ED1 thanh to\xE1n m\u1ED7i khi b\u1EA1n t\u1EA1o m\u1ED9t kho\u1EA3n thanh to\xE1n m\u1EDBi.",payment_email_attachment:"G\u1EEDi thanh to\xE1n d\u01B0\u1EDBi d\u1EA1ng t\u1EC7p \u0111\xEDnh k\xE8m",payment_email_attachment_setting_description:"B\u1EADt t\xEDnh n\u0103ng n\xE0y n\u1EBFu b\u1EA1n mu\u1ED1n g\u1EEDi bi\xEAn nh\u1EADn thanh to\xE1n d\u01B0\u1EDBi d\u1EA1ng t\u1EC7p \u0111\xEDnh k\xE8m email. Xin l\u01B0u \xFD r\u1EB1ng n\xFAt 'Xem Thanh to\xE1n' trong email s\u1EBD kh\xF4ng \u0111\u01B0\u1EE3c hi\u1EC3n th\u1ECB n\u1EEFa khi \u0111\u01B0\u1EE3c b\u1EADt.",enter_payment_prefix:"Nh\u1EADp ti\u1EC1n t\u1ED1 thanh to\xE1n",payment_setting_updated:"\u0110\xE3 c\u1EADp nh\u1EADt c\xE0i \u0111\u1EB7t thanh to\xE1n th\xE0nh c\xF4ng",payment_modes:"Ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n",add_payment_mode:"Th\xEAm ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n",edit_payment_mode:"Ch\u1EC9nh s\u1EEDa Ph\u01B0\u01A1ng th\u1EE9c Thanh to\xE1n",mode_name:"T\xEAn ch\u1EBF \u0111\u1ED9",payment_mode_added:"Ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n \u0111\xE3 \u0111\u01B0\u1EE3c th\xEAm",payment_mode_updated:"\u0110\xE3 c\u1EADp nh\u1EADt ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n",payment_mode_confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c Ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n n\xE0y",already_in_use:"Ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",deleted_message:"Ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng",company_address_format:"\u0110\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 c\xF4ng ty",from_customer_address_format:"T\u1EEB \u0111\u1ECBnh d\u1EA1ng \u0111\u1ECBa ch\u1EC9 kh\xE1ch h\xE0ng"},items:{title:"M\u1EB7t h\xE0ng",units:"C\xE1c \u0111\u01A1n v\u1ECB",add_item_unit:"Th\xEAm \u0111\u01A1n v\u1ECB m\u1EB7t h\xE0ng",edit_item_unit:"Ch\u1EC9nh s\u1EEDa \u0111\u01A1n v\u1ECB m\u1EB7t h\xE0ng",unit_name:"T\xEAn b\xE0i",item_unit_added:"\u0110\u01A1n v\u1ECB m\u1EB7t h\xE0ng \u0111\xE3 \u0111\u01B0\u1EE3c th\xEAm",item_unit_updated:"\u0110\xE3 c\u1EADp nh\u1EADt \u0111\u01A1n v\u1ECB m\u1EB7t h\xE0ng",item_unit_confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c \u0111\u01A1n v\u1ECB M\u1EB7t h\xE0ng n\xE0y",already_in_use:"\u0110\u01A1n v\u1ECB v\u1EADt ph\u1EA9m \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",deleted_message:"\u0110\u01A1n v\u1ECB m\u1EB7t h\xE0ng \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng"},notes:{title:"Ghi ch\xFA",description:"Ti\u1EBFt ki\u1EC7m th\u1EDDi gian b\u1EB1ng c\xE1ch t\u1EA1o ghi ch\xFA v\xE0 s\u1EED d\u1EE5ng l\u1EA1i ch\xFAng tr\xEAn h\xF3a \u0111\u01A1n, \u01B0\u1EDBc t\xEDnh c\u1EE7a b\u1EA1n",notes:"Ghi ch\xFA",type:"Ki\u1EC3u",add_note:"Th\xEAm ghi ch\xFA",add_new_note:"Th\xEAm ghi ch\xFA m\u1EDBi",name:"T\xEAn",edit_note:"Ch\u1EC9nh s\u1EEDa ghi ch\xFA",note_added:"\u0110\xE3 th\xEAm ghi ch\xFA th\xE0nh c\xF4ng",note_updated:"\u0110\xE3 c\u1EADp nh\u1EADt ghi ch\xFA th\xE0nh c\xF4ng",note_confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c Ghi ch\xFA n\xE0y",already_in_use:"Ghi ch\xFA \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",deleted_message:"\u0110\xE3 x\xF3a ghi ch\xFA th\xE0nh c\xF4ng"}},account_settings:{profile_picture:"\u1EA2nh \u0111\u1EA1i di\u1EC7n",name:"T\xEAn",email:"E-mail",password:"M\u1EADt kh\u1EA9u",confirm_password:"X\xE1c nh\u1EADn m\u1EADt kh\u1EA9u",account_settings:"C\xE0i \u0111\u1EB7t t\xE0i kho\u1EA3n",save:"L\u01B0u",section_description:"B\u1EA1n c\xF3 th\u1EC3 c\u1EADp nh\u1EADt t\xEAn, email c\u1EE7a m\xECnh",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt c\xE0i \u0111\u1EB7t t\xE0i kho\u1EA3n th\xE0nh c\xF4ng"},user_profile:{name:"T\xEAn",email:"E-mail",password:"M\u1EADt kh\u1EA9u",confirm_password:"X\xE1c nh\u1EADn m\u1EADt kh\u1EA9u"},notification:{title:"Th\xF4ng b\xE1o",email:"G\u1EEDi th\xF4ng b\xE1o t\u1EDBi",description:"B\u1EA1n mu\u1ED1n nh\u1EADn th\xF4ng b\xE1o email n\xE0o khi c\xF3 \u0111i\u1EC1u g\xEC \u0111\xF3 thay \u0111\u1ED5i?",invoice_viewed:"H\xF3a \u0111\u01A1n \u0111\xE3 xem",invoice_viewed_desc:"Khi kh\xE1ch h\xE0ng c\u1EE7a b\u1EA1n xem h\xF3a \u0111\u01A1n \u0111\u01B0\u1EE3c g\u1EEDi qua b\u1EA3ng \u0111i\u1EC1u khi\u1EC3n mi\u1EC7ng n\xFAi l\u1EEDa.",estimate_viewed:"\u01AF\u1EDBc t\xEDnh \u0111\xE3 xem",estimate_viewed_desc:"Khi kh\xE1ch h\xE0ng c\u1EE7a b\u1EA1n xem \u01B0\u1EDBc t\xEDnh \u0111\u01B0\u1EE3c g\u1EEDi qua b\u1EA3ng \u0111i\u1EC1u khi\u1EC3n mi\u1EC7ng n\xFAi l\u1EEDa.",save:"L\u01B0u",email_save_message:"Email \u0111\xE3 \u0111\u01B0\u1EE3c l\u01B0u th\xE0nh c\xF4ng",please_enter_email:"Vui l\xF2ng nh\u1EADp Email"},tax_types:{title:"C\xE1c lo\u1EA1i thu\u1EBF",add_tax:"Th\xEAm thu\u1EBF",edit_tax:"Ch\u1EC9nh s\u1EEDa thu\u1EBF",description:"B\u1EA1n c\xF3 th\u1EC3 th\xEAm ho\u1EB7c b\u1EDBt thu\u1EBF t\xF9y \xFD. Crater h\u1ED7 tr\u1EE3 Thu\u1EBF \u0111\u1ED1i v\u1EDBi c\xE1c m\u1EB7t h\xE0ng ri\xEAng l\u1EBB c\u0169ng nh\u01B0 tr\xEAn h\xF3a \u0111\u01A1n.",add_new_tax:"Th\xEAm thu\u1EBF m\u1EDBi",tax_settings:"C\xE0i \u0111\u1EB7t thu\u1EBF",tax_per_item:"Thu\u1EBF m\u1ED7i m\u1EB7t h\xE0ng",tax_name:"T\xEAn thu\u1EBF",compound_tax:"Thu\u1EBF t\u1ED5ng h\u1EE3p",percent:"Ph\u1EA7n tr\u0103m",action:"Ho\u1EA1t \u0111\u1ED9ng",tax_setting_description:"B\u1EADt t\xEDnh n\u0103ng n\xE0y n\u1EBFu b\u1EA1n mu\u1ED1n th\xEAm thu\u1EBF v\xE0o c\xE1c m\u1EE5c h\xF3a \u0111\u01A1n ri\xEAng l\u1EBB. Theo m\u1EB7c \u0111\u1ECBnh, thu\u1EBF \u0111\u01B0\u1EE3c th\xEAm tr\u1EF1c ti\u1EBFp v\xE0o h\xF3a \u0111\u01A1n.",created_message:"Lo\u1EA1i thu\u1EBF \u0111\xE3 \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt th\xE0nh c\xF4ng lo\u1EA1i thu\u1EBF",deleted_message:"\u0110\xE3 x\xF3a th\xE0nh c\xF4ng lo\u1EA1i thu\u1EBF",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c Lo\u1EA1i thu\u1EBF n\xE0y",already_in_use:"Thu\u1EBF \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng"},expense_category:{title:"H\u1EA1ng m\u1EE5c Chi ph\xED",action:"Ho\u1EA1t \u0111\u1ED9ng",description:"C\xE1c danh m\u1EE5c \u0111\u01B0\u1EE3c y\xEAu c\u1EA7u \u0111\u1EC3 th\xEAm c\xE1c m\u1EE5c chi ph\xED. B\u1EA1n c\xF3 th\u1EC3 Th\xEAm ho\u1EB7c X\xF3a c\xE1c danh m\u1EE5c n\xE0y t\xF9y theo s\u1EDF th\xEDch c\u1EE7a m\xECnh.",add_new_category:"Th\xEAm danh m\u1EE5c m\u1EDBi",add_category:"th\xEAm th\xEA\u0309 loa\u0323i",edit_category:"Ch\u1EC9nh s\u1EEDa danh m\u1EE5c",category_name:"t\xEAn danh m\u1EE5c",category_description:"Mi\xEAu t\u1EA3",created_message:"Danh m\u1EE5c Chi ph\xED \u0111\xE3 \u0111\u01B0\u1EE3c t\u1EA1o th\xE0nh c\xF4ng",deleted_message:"\u0110\xE3 x\xF3a th\xE0nh c\xF4ng danh m\u1EE5c chi ph\xED",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt danh m\u1EE5c chi ph\xED th\xE0nh c\xF4ng",confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c Danh m\u1EE5c Chi ph\xED n\xE0y",already_in_use:"Danh m\u1EE5c \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng"},preferences:{currency:"Ti\u1EC1n t\u1EC7",default_language:"Ng\xF4n ng\u1EEF m\u1EB7c \u0111\u1ECBnh",time_zone:"M\xFAi gi\u1EDD",fiscal_year:"N\u0103m t\xE0i ch\xEDnh",date_format:"\u0110\u1ECBnh d\u1EA1ng ng\xE0y th\xE1ng",discount_setting:"C\xE0i \u0111\u1EB7t chi\u1EBFt kh\u1EA5u",discount_per_item:"Gi\u1EA3m gi\xE1 cho m\u1ED7i m\u1EB7t h\xE0ng",discount_setting_description:"B\u1EADt t\xEDnh n\u0103ng n\xE0y n\u1EBFu b\u1EA1n mu\u1ED1n th\xEAm Gi\u1EA3m gi\xE1 v\xE0o c\xE1c m\u1EB7t h\xE0ng h\xF3a \u0111\u01A1n ri\xEAng l\u1EBB. Theo m\u1EB7c \u0111\u1ECBnh, Gi\u1EA3m gi\xE1 \u0111\u01B0\u1EE3c th\xEAm tr\u1EF1c ti\u1EBFp v\xE0o h\xF3a \u0111\u01A1n.",save:"L\u01B0u",preference:"S\u1EDF th\xEDch | S\u1EDF th\xEDch",general_settings:"T\xF9y ch\u1ECDn m\u1EB7c \u0111\u1ECBnh cho h\u1EC7 th\u1ED1ng.",updated_message:"\u0110\xE3 c\u1EADp nh\u1EADt th\xE0nh c\xF4ng c\xE1c t\xF9y ch\u1ECDn",select_language:"Ch\u1ECDn ng\xF4n ng\u1EEF",select_time_zone:"Ch\u1ECDn m\xFAi gi\u1EDD",select_date_format:"Ch\u1ECDn \u0111\u1ECBnh d\u1EA1ng ng\xE0y",select_financial_year:"Ch\u1ECDn n\u0103m t\xE0i ch\xEDnh"},update_app:{title:"C\u1EADp nh\u1EADt \u1EE9ng d\u1EE5ng",description:"B\u1EA1n c\xF3 th\u1EC3 d\u1EC5 d\xE0ng c\u1EADp nh\u1EADt Crater b\u1EB1ng c\xE1ch ki\u1EC3m tra b\u1EA3n c\u1EADp nh\u1EADt m\u1EDBi b\u1EB1ng c\xE1ch nh\u1EA5p v\xE0o n\xFAt b\xEAn d\u01B0\u1EDBi",check_update:"Ki\u1EC3m tra c\u1EADp nh\u1EADt",avail_update:"C\u1EADp nh\u1EADt m\u1EDBi c\xF3 s\u1EB5n",next_version:"Phi\xEAn b\u1EA3n ti\u1EBFp theo",requirements:"Y\xEAu c\u1EA7u",update:"C\u1EADp nh\u1EADt b\xE2y gi\u1EDD",update_progress:"\u0110ang c\u1EADp nh\u1EADt ...",progress_text:"N\xF3 s\u1EBD ch\u1EC9 m\u1EA5t m\u1ED9t v\xE0i ph\xFAt. Vui l\xF2ng kh\xF4ng l\xE0m m\u1EDBi m\xE0n h\xECnh ho\u1EB7c \u0111\xF3ng c\u1EEDa s\u1ED5 tr\u01B0\u1EDBc khi c\u1EADp nh\u1EADt k\u1EBFt th\xFAc",update_success:"\u1EE8ng d\u1EE5ng \u0111\xE3 \u0111\u01B0\u1EE3c c\u1EADp nh\u1EADt! Vui l\xF2ng \u0111\u1EE3i trong khi c\u1EEDa s\u1ED5 tr\xECnh duy\u1EC7t c\u1EE7a b\u1EA1n \u0111\u01B0\u1EE3c t\u1EA3i l\u1EA1i t\u1EF1 \u0111\u1ED9ng.",latest_message:"Kh\xF4ng c\xF3 b\u1EA3n c\u1EADp nh\u1EADt n\xE0o! B\u1EA1n \u0111ang s\u1EED d\u1EE5ng phi\xEAn b\u1EA3n m\u1EDBi nh\u1EA5t.",current_version:"Phi\xEAn b\u1EA3n hi\u1EC7n t\u1EA1i",download_zip_file:"T\u1EA3i xu\u1ED1ng t\u1EC7p ZIP",unzipping_package:"G\xF3i gi\u1EA3i n\xE9n",copying_files:"Sao ch\xE9p c\xE1c t\u1EADp tin",deleting_files:"X\xF3a c\xE1c t\u1EC7p kh\xF4ng s\u1EED d\u1EE5ng",running_migrations:"Ch\u1EA1y di c\u01B0",finishing_update:"C\u1EADp nh\u1EADt k\u1EBFt th\xFAc",update_failed:"C\u1EADp nh\u1EADt kh\xF4ng th\xE0nh c\xF4ng",update_failed_text:"L\u1EA5y l\xE0m ti\u1EBFc! C\u1EADp nh\u1EADt c\u1EE7a b\u1EA1n kh\xF4ng th\xE0nh c\xF4ng v\xE0o: b\u01B0\u1EDBc {step}"},backup:{title:"Sao l\u01B0u | Sao l\u01B0u",description:"B\u1EA3n sao l\u01B0u l\xE0 m\u1ED9t t\u1EC7p zip ch\u1EE9a t\u1EA5t c\u1EA3 c\xE1c t\u1EC7p trong th\u01B0 m\u1EE5c b\u1EA1n ch\u1EC9 \u0111\u1ECBnh c\xF9ng v\u1EDBi m\u1ED9t k\u1EBFt xu\u1EA5t c\u01A1 s\u1EDF d\u1EEF li\u1EC7u c\u1EE7a b\u1EA1n",new_backup:"Th\xEAm b\u1EA3n sao l\u01B0u m\u1EDBi",create_backup:"T\u1EA1o b\u1EA3n sao",select_backup_type:"Ch\u1ECDn lo\u1EA1i sao l\u01B0u",backup_confirm_delete:"B\u1EA1n s\u1EBD kh\xF4ng th\u1EC3 kh\xF4i ph\u1EE5c B\u1EA3n sao l\u01B0u n\xE0y",path:"con \u0111\u01B0\u1EDDng",new_disk:"\u0110\u0129a m\u1EDBi",created_at:"\u0111\u01B0\u1EE3c t\u1EA1o ra t\u1EA1i",size:"k\xEDch th\u01B0\u1EDBc",dropbox:"dropbox",local:"\u0111\u1ECBa ph\u01B0\u01A1ng",healthy:"kh\u1ECFe m\u1EA1nh",amount_of_backups:"l\u01B0\u1EE3ng sao l\u01B0u",newest_backups:"b\u1EA3n sao l\u01B0u m\u1EDBi nh\u1EA5t",used_storage:"l\u01B0u tr\u1EEF \u0111\xE3 s\u1EED d\u1EE5ng",select_disk:"Ch\u1ECDn \u0111\u0129a",action:"Ho\u1EA1t \u0111\u1ED9ng",deleted_message:"\u0110\xE3 x\xF3a b\u1EA3n sao l\u01B0u th\xE0nh c\xF4ng",created_message:"\u0110\xE3 t\u1EA1o th\xE0nh c\xF4ng b\u1EA3n sao l\u01B0u",invalid_disk_credentials:"Th\xF4ng tin \u0111\u0103ng nh\u1EADp kh\xF4ng h\u1EE3p l\u1EC7 c\u1EE7a \u0111\u0129a \u0111\xE3 ch\u1ECDn"},disk:{title:"\u0110\u0129a t\u1EADp tin | \u0110\u0129a T\u1EC7p",description:"Theo m\u1EB7c \u0111\u1ECBnh, Crater s\u1EBD s\u1EED d\u1EE5ng \u0111\u0129a c\u1EE5c b\u1ED9 c\u1EE7a b\u1EA1n \u0111\u1EC3 l\u01B0u c\xE1c b\u1EA3n sao l\u01B0u, \u1EA3nh \u0111\u1EA1i di\u1EC7n v\xE0 c\xE1c t\u1EC7p h\xECnh \u1EA3nh kh\xE1c. B\u1EA1n c\xF3 th\u1EC3 \u0111\u1ECBnh c\u1EA5u h\xECnh nhi\u1EC1u h\u01A1n m\u1ED9t tr\xECnh \u0111i\u1EC1u khi\u1EC3n \u0111\u0129a nh\u01B0 DigitalOcean, S3 v\xE0 Dropbox theo s\u1EDF th\xEDch c\u1EE7a m\xECnh.",created_at:"\u0111\u01B0\u1EE3c t\u1EA1o ra t\u1EA1i",dropbox:"dropbox",name:"T\xEAn",driver:"Ng\u01B0\u1EDDi l\xE1i xe",disk_type:"Ki\u1EC3u",disk_name:"T\xEAn \u0111\u0129a",new_disk:"Th\xEAm \u0111\u0129a m\u1EDBi",filesystem_driver:"Tr\xECnh \u0111i\u1EC1u khi\u1EC3n h\u1EC7 th\u1ED1ng t\u1EADp tin",local_driver:"Tr\xECnh \u0111i\u1EC1u khi\u1EC3n \u0111\u1ECBa ph\u01B0\u01A1ng",local_root:"G\u1ED1c c\u1EE5c b\u1ED9",public_driver:"T\xE0i x\u1EBF c\xF4ng c\u1ED9ng",public_root:"G\u1ED1c c\xF4ng khai",public_url:"URL c\xF4ng khai",public_visibility:"Hi\u1EC3n th\u1ECB c\xF4ng khai",media_driver:"Tr\xECnh \u0111i\u1EC1u khi\u1EC3n ph\u01B0\u01A1ng ti\u1EC7n",media_root:"G\u1ED1c ph\u01B0\u01A1ng ti\u1EC7n",aws_driver:"Tr\xECnh \u0111i\u1EC1u khi\u1EC3n AWS",aws_key:"Kh\xF3a AWS",aws_secret:"Kh\xF3a AWS",aws_region:"Khu v\u1EF1c AWS",aws_bucket:"Nh\xF3m AWS",aws_root:"G\u1ED1c AWS",do_spaces_type:"L\xE0m ki\u1EC3u Spaces",do_spaces_key:"Do ph\xEDm Spaces",do_spaces_secret:"L\xE0m b\xED m\u1EADt v\u1EC1 kh\xF4ng gian",do_spaces_region:"Do Spaces Region",do_spaces_bucket:"Do Spaces Bucket",do_spaces_endpoint:"Do Spaces Endpoint",do_spaces_root:"Do Spaces Root",dropbox_type:"Lo\u1EA1i h\u1ED9p ch\u1EE9a",dropbox_token:"M\xE3 th\xF4ng b\xE1o Dropbox",dropbox_key:"Kh\xF3a Dropbox",dropbox_secret:"Kh\xF3a Dropbox",dropbox_app:"\u1EE8ng d\u1EE5ng Dropbox",dropbox_root:"G\u1ED1c Dropbox",default_driver:"Tr\xECnh \u0111i\u1EC1u khi\u1EC3n m\u1EB7c \u0111\u1ECBnh",is_default:"L\xC0 \u0110\u1ECANH NGH\u0128A",set_default_disk:"\u0110\u1EB7t \u0111\u0129a m\u1EB7c \u0111\u1ECBnh",set_default_disk_confirm:"\u0110\u0129a n\xE0y s\u1EBD \u0111\u01B0\u1EE3c \u0111\u1EB7t l\xE0m m\u1EB7c \u0111\u1ECBnh v\xE0 t\u1EA5t c\u1EA3 c\xE1c t\u1EC7p PDF m\u1EDBi s\u1EBD \u0111\u01B0\u1EE3c l\u01B0u tr\xEAn \u0111\u0129a n\xE0y",success_set_default_disk:"\u0110\u0129a \u0111\u01B0\u1EE3c \u0111\u1EB7t l\xE0m m\u1EB7c \u0111\u1ECBnh th\xE0nh c\xF4ng",save_pdf_to_disk:"L\u01B0u PDF v\xE0o \u0111\u0129a",disk_setting_description:"B\u1EADt t\xEDnh n\u0103ng n\xE0y, n\u1EBFu b\u1EA1n mu\u1ED1n l\u01B0u m\u1ED9t b\u1EA3n sao c\u1EE7a m\u1ED7i H\xF3a \u0111\u01A1n, \u01AF\u1EDBc t\xEDnh",select_disk:"Ch\u1ECDn \u0111\u0129a",disk_settings:"C\xE0i \u0111\u1EB7t \u0111\u0129a",confirm_delete:"T\u1EC7p hi\u1EC7n c\xF3 c\u1EE7a b\u1EA1n",action:"Ho\u1EA1t \u0111\u1ED9ng",edit_file_disk:"Ch\u1EC9nh s\u1EEDa \u0110\u0129a T\u1EC7p",success_create:"\u0110\xE3 th\xEAm \u0111\u0129a th\xE0nh c\xF4ng",success_update:"\u0110\xE3 c\u1EADp nh\u1EADt \u0111\u0129a th\xE0nh c\xF4ng",error:"Th\xEAm \u0111\u0129a kh\xF4ng th\xE0nh c\xF4ng",deleted_message:"\u0110\u0129a T\u1EC7p \u0111\xE3 \u0111\u01B0\u1EE3c x\xF3a th\xE0nh c\xF4ng",disk_variables_save_successfully:"\u0110\xE3 c\u1EA5u h\xECnh \u0111\u0129a th\xE0nh c\xF4ng",disk_variables_save_error:"C\u1EA5u h\xECnh \u0111\u0129a kh\xF4ng th\xE0nh c\xF4ng.",invalid_disk_credentials:"Th\xF4ng tin \u0111\u0103ng nh\u1EADp kh\xF4ng h\u1EE3p l\u1EC7 c\u1EE7a \u0111\u0129a \u0111\xE3 ch\u1ECDn"}},Oy={account_info:"th\xF4ng tin t\xE0i kho\u1EA3n",account_info_desc:"Th\xF4ng tin chi ti\u1EBFt d\u01B0\u1EDBi \u0111\xE2y s\u1EBD \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng \u0111\u1EC3 t\u1EA1o t\xE0i kho\u1EA3n Qu\u1EA3n tr\u1ECB vi\xEAn ch\xEDnh. Ngo\xE0i ra, b\u1EA1n c\xF3 th\u1EC3 thay \u0111\u1ED5i th\xF4ng tin chi ti\u1EBFt b\u1EA5t c\u1EE9 l\xFAc n\xE0o sau khi \u0111\u0103ng nh\u1EADp.",name:"T\xEAn",email:"E-mail",password:"M\u1EADt kh\u1EA9u",confirm_password:"X\xE1c nh\u1EADn m\u1EADt kh\u1EA9u",save_cont:"L\u01B0u",company_info:"Th\xF4ng tin c\xF4ng ty",company_info_desc:"Th\xF4ng tin n\xE0y s\u1EBD \u0111\u01B0\u1EE3c hi\u1EC3n th\u1ECB tr\xEAn h\xF3a \u0111\u01A1n. L\u01B0u \xFD r\u1EB1ng b\u1EA1n c\xF3 th\u1EC3 ch\u1EC9nh s\u1EEDa \u0111i\u1EC1u n\xE0y sau tr\xEAn trang c\xE0i \u0111\u1EB7t.",company_name:"T\xEAn c\xF4ng ty",company_logo:"Logo c\xF4ng ty",logo_preview:"Xem tr\u01B0\u1EDBc Logo",preferences:"S\u1EDF th\xEDch",preferences_desc:"T\xF9y ch\u1ECDn m\u1EB7c \u0111\u1ECBnh cho h\u1EC7 th\u1ED1ng.",country:"Qu\u1ED1c gia",state:"Ti\u1EC3u bang",city:"Tp.",address:"\u0110\u1ECBa ch\u1EC9",street:"Ph\u1ED11 | Street2",phone:"\u0110i\u1EC7n tho\u1EA1i",zip_code:"M\xE3 B\u01B0u Ch\xEDnh",go_back:"Quay l\u1EA1i",currency:"Ti\u1EC1n t\u1EC7",language:"Ng\xF4n ng\u1EEF",time_zone:"M\xFAi gi\u1EDD",fiscal_year:"N\u0103m t\xE0i ch\xEDnh",date_format:"\u0110\u1ECBnh d\u1EA1ng ng\xE0y th\xE1ng",from_address:"T\u1EEB \u0111\u1ECBa ch\u1EC9",username:"t\xEAn t\xE0i kho\u1EA3n",next:"K\u1EBF ti\u1EBFp",continue:"Ti\u1EBFp t\u1EE5c",skip:"Nh\u1EA3y",database:{database:"URL trang web",connection:"K\u1EBFt n\u1ED1i c\u01A1 s\u1EDF d\u1EEF li\u1EC7u",host:"M\xE1y ch\u1EE7 c\u01A1 s\u1EDF d\u1EEF li\u1EC7u",port:"C\u1ED5ng c\u01A1 s\u1EDF d\u1EEF li\u1EC7u",password:"M\u1EADt kh\u1EA9u c\u01A1 s\u1EDF d\u1EEF li\u1EC7u",app_url:"URL \u1EE9ng d\u1EE5ng",app_domain:"Mi\u1EC1n \u1EE9ng d\u1EE5ng",username:"T\xEAn ng\u01B0\u1EDDi d\xF9ng c\u01A1 s\u1EDF d\u1EEF li\u1EC7u",db_name:"T\xEAn c\u01A1 s\u1EDF d\u1EEF li\u1EC7u",db_path:"\u0110\u01B0\u1EDDng d\u1EABn c\u01A1 s\u1EDF d\u1EEF li\u1EC7u",desc:"T\u1EA1o c\u01A1 s\u1EDF d\u1EEF li\u1EC7u tr\xEAn m\xE1y ch\u1EE7 c\u1EE7a b\u1EA1n v\xE0 \u0111\u1EB7t th\xF4ng tin \u0111\u0103ng nh\u1EADp b\u1EB1ng bi\u1EC3u m\u1EABu b\xEAn d\u01B0\u1EDBi."},permissions:{permissions:"Quy\u1EC1n",permission_confirm_title:"B\u1EA1n c\xF3 ch\u1EAFc ch\u1EAFn mu\u1ED1n ti\u1EBFp t\u1EE5c kh\xF4ng?",permission_confirm_desc:"Ki\u1EC3m tra quy\u1EC1n th\u01B0 m\u1EE5c kh\xF4ng th\xE0nh c\xF4ng",permission_desc:"D\u01B0\u1EDBi \u0111\xE2y l\xE0 danh s\xE1ch c\xE1c quy\u1EC1n \u0111\u1ED1i v\u1EDBi th\u01B0 m\u1EE5c \u0111\u01B0\u1EE3c y\xEAu c\u1EA7u \u0111\u1EC3 \u1EE9ng d\u1EE5ng ho\u1EA1t \u0111\u1ED9ng. N\u1EBFu ki\u1EC3m tra quy\u1EC1n kh\xF4ng th\xE0nh c\xF4ng, h\xE3y \u0111\u1EA3m b\u1EA3o c\u1EADp nh\u1EADt quy\u1EC1n th\u01B0 m\u1EE5c c\u1EE7a b\u1EA1n."},mail:{host:"M\xE1y ch\u1EE7 Th\u01B0",port:"C\u1ED5ng th\u01B0",driver:"Tr\xECnh \u0111i\u1EC1u khi\u1EC3n Th\u01B0",secret:"Kh\xF3a",mailgun_secret:"Kh\xF3a Mailgun",mailgun_domain:"Mi\u1EC1n",mailgun_endpoint:"\u0110i\u1EC3m cu\u1ED1i c\u1EE7a Mailgun",ses_secret:"Kh\xF3a SES",ses_key:"Kh\xF3a SES",password:"M\u1EADt kh\u1EA9u th\u01B0",username:"T\xEAn ng\u01B0\u1EDDi d\xF9ng th\u01B0",mail_config:"C\u1EA5u h\xECnh th\u01B0",from_name:"T\u1EEB t\xEAn th\u01B0",from_mail:"T\u1EEB \u0111\u1ECBa ch\u1EC9 th\u01B0",encryption:"M\xE3 h\xF3a Th\u01B0",mail_config_desc:"D\u01B0\u1EDBi \u0111\xE2y l\xE0 bi\u1EC3u m\u1EABu \u0110\u1ECBnh c\u1EA5u h\xECnh tr\xECnh \u0111i\u1EC1u khi\u1EC3n Email \u0111\u1EC3 g\u1EEDi email t\u1EEB \u1EE9ng d\u1EE5ng. B\u1EA1n c\u0169ng c\xF3 th\u1EC3 \u0111\u1ECBnh c\u1EA5u h\xECnh c\xE1c nh\xE0 cung c\u1EA5p b\xEAn th\u1EE9 ba nh\u01B0 Sendgrid, SES, v.v."},req:{system_req:"y\xEAu c\u1EA7u h\u1EC7 th\u1ED1ng",php_req_version:"Php (version {version} required)",check_req:"Ki\u1EC3m tra y\xEAu c\u1EA7u",system_req_desc:"Crater c\xF3 m\u1ED9t s\u1ED1 y\xEAu c\u1EA7u m\xE1y ch\u1EE7. \u0110\u1EA3m b\u1EA3o r\u1EB1ng m\xE1y ch\u1EE7 c\u1EE7a b\u1EA1n c\xF3 phi\xEAn b\u1EA3n php b\u1EAFt bu\u1ED9c v\xE0 t\u1EA5t c\u1EA3 c\xE1c ph\u1EA7n m\u1EDF r\u1ED9ng \u0111\u01B0\u1EE3c \u0111\u1EC1 c\u1EADp b\xEAn d\u01B0\u1EDBi."},errors:{migrate_failed:"Di chuy\u1EC3n kh\xF4ng th\xE0nh c\xF4ng",database_variables_save_error:"Kh\xF4ng th\u1EC3 ghi c\u1EA5u h\xECnh v\xE0o t\u1EC7p .env. Vui l\xF2ng ki\u1EC3m tra quy\u1EC1n \u0111\u1ED1i v\u1EDBi t\u1EC7p c\u1EE7a n\xF3",mail_variables_save_error:"C\u1EA5u h\xECnh email kh\xF4ng th\xE0nh c\xF4ng.",connection_failed:"K\u1EBFt n\u1ED1i c\u01A1 s\u1EDF d\u1EEF li\u1EC7u kh\xF4ng th\xE0nh c\xF4ng",database_should_be_empty:"C\u01A1 s\u1EDF d\u1EEF li\u1EC7u ph\u1EA3i tr\u1ED1ng"},success:{mail_variables_save_successfully:"Email \u0111\u01B0\u1EE3c \u0111\u1ECBnh c\u1EA5u h\xECnh th\xE0nh c\xF4ng",database_variables_save_successfully:"\u0110\xE3 c\u1EA5u h\xECnh th\xE0nh c\xF4ng c\u01A1 s\u1EDF d\u1EEF li\u1EC7u."}},Ly={invalid_phone:"S\u1ED1 \u0111i\u1EC7n tho\u1EA1i kh\xF4ng h\u1EE3p l\u1EC7",invalid_url:"Url kh\xF4ng h\u1EE3p l\u1EC7 (v\xED d\u1EE5: http://www.craterapp.com)",invalid_domain_url:"Url kh\xF4ng h\u1EE3p l\u1EC7 (v\xED d\u1EE5: craterapp.com)",required:"L\u0129nh v\u1EF1c \u0111\u01B0\u1EE3c y\xEAu c\u1EA7u",email_incorrect:"Email kh\xF4ng ch\xEDnh x\xE1c.",email_already_taken:"L\xE1 th\u01B0 \u0111\xE3 \u0111\u01B0\u1EE3c l\u1EA5y \u0111i.",email_does_not_exist:"Ng\u01B0\u1EDDi d\xF9ng c\xF3 email \u0111\xE3 cho kh\xF4ng t\u1ED3n t\u1EA1i",item_unit_already_taken:"T\xEAn \u0111\u01A1n v\u1ECB m\u1EB7t h\xE0ng n\xE0y \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",payment_mode_already_taken:"T\xEAn ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n n\xE0y \u0111\xE3 \u0111\u01B0\u1EE3c s\u1EED d\u1EE5ng",send_reset_link:"G\u1EEDi li\xEAn k\u1EBFt \u0111\u1EB7t l\u1EA1i",not_yet:"Ch\u01B0a? G\u1EEDi l\u1EA1i",password_min_length:"M\u1EADt kh\u1EA9u ph\u1EA3i ch\u1EE9a {count} k\xFD t\u1EF1",name_min_length:"T\xEAn ph\u1EA3i c\xF3 \xEDt nh\u1EA5t {count} ch\u1EEF c\xE1i.",enter_valid_tax_rate:"Nh\u1EADp thu\u1EBF su\u1EA5t h\u1EE3p l\u1EC7",numbers_only:"Ch\u1EC9 s\u1ED1.",characters_only:"Ch\u1EC9 nh\xE2n v\u1EADt.",password_incorrect:"M\u1EADt kh\u1EA9u ph\u1EA3i gi\u1ED1ng h\u1EC7t nhau",password_length:"M\u1EADt kh\u1EA9u ph\u1EA3i d\xE0i {count} k\xFD t\u1EF1.",qty_must_greater_than_zero:"S\u1ED1 l\u01B0\u1EE3ng ph\u1EA3i l\u1EDBn h\u01A1n kh\xF4ng.",price_greater_than_zero:"Gi\xE1 ph\u1EA3i l\u1EDBn h\u01A1n 0.",payment_greater_than_zero:"Kho\u1EA3n thanh to\xE1n ph\u1EA3i l\u1EDBn h\u01A1n 0.",payment_greater_than_due_amount:"Thanh to\xE1n \u0111\xE3 nh\u1EADp nhi\u1EC1u h\u01A1n s\u1ED1 ti\u1EC1n \u0111\u1EBFn h\u1EA1n c\u1EE7a h\xF3a \u0111\u01A1n n\xE0y.",quantity_maxlength:"S\u1ED1 l\u01B0\u1EE3ng kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 20 ch\u1EEF s\u1ED1.",price_maxlength:"Gi\xE1 kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 20 ch\u1EEF s\u1ED1.",price_minvalue:"Gi\xE1 ph\u1EA3i l\u1EDBn h\u01A1n 0.",amount_maxlength:"S\u1ED1 ti\u1EC1n kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 20 ch\u1EEF s\u1ED1.",amount_minvalue:"S\u1ED1 ti\u1EC1n ph\u1EA3i l\u1EDBn h\u01A1n 0.",description_maxlength:"M\xF4 t\u1EA3 kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 65.000 k\xFD t\u1EF1.",subject_maxlength:"Ch\u1EE7 \u0111\u1EC1 kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 100 k\xFD t\u1EF1.",message_maxlength:"Tin nh\u1EAFn kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 255 k\xFD t\u1EF1.",maximum_options_error:"\u0110\xE3 ch\u1ECDn t\u1ED1i \u0111a {max} t\xF9y ch\u1ECDn. \u0110\u1EA7u ti\xEAn, h\xE3y x\xF3a m\u1ED9t t\xF9y ch\u1ECDn \u0111\xE3 ch\u1ECDn \u0111\u1EC3 ch\u1ECDn m\u1ED9t t\xF9y ch\u1ECDn kh\xE1c.",notes_maxlength:"Ghi ch\xFA kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 65.000 k\xFD t\u1EF1.",address_maxlength:"\u0110\u1ECBa ch\u1EC9 kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 255 k\xFD t\u1EF1.",ref_number_maxlength:"S\u1ED1 tham chi\u1EBFu kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 255 k\xFD t\u1EF1.",prefix_maxlength:"Ti\u1EC1n t\u1ED1 kh\xF4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 5 k\xFD t\u1EF1.",something_went_wrong:"c\xF3 g\xEC \u0111\xF3 kh\xF4ng \u1ED5n"},Uy="\u01AF\u1EDBc t\xEDnh",Ky="S\u1ED1 \u01B0\u1EDBc t\xEDnh",qy="Ng\xE0y \u01B0\u1EDBc t\xEDnh",Zy="Ng\xE0y h\u1EBFt h\u1EA1n",Wy="H\xF3a \u0111\u01A1n",Hy="S\u1ED1 h\xF3a \u0111\u01A1n",Gy="Ng\xE0y l\u1EADp h\xF3a \u0111\u01A1n",Yy="Ng\xE0y \u0111\xE1o h\u1EA1n",Jy="Ghi ch\xFA",Xy="M\u1EB7t h\xE0ng",Qy="\u0110\u1ECBnh l\u01B0\u1EE3ng",eb="Gi\xE1 b\xE1n",tb="Gi\u1EA3m gi\xE1",ab="S\u1ED1 ti\u1EC1n",sb="T\u1ED5ng ph\u1EE5",nb="To\xE0n b\u1ED9",ib="Thanh to\xE1n",ob="H\xD3A \u0110\u01A0N THANH TO\xC1N",rb="Ng\xE0y thanh to\xE1n",db="S\u1ED1 ti\u1EC1n ph\u1EA3i tr\u1EA3",lb="Ph\u01B0\u01A1ng th\u1EE9c thanh to\xE1n",cb="S\u1ED1 ti\u1EC1n nh\u1EADn \u0111\u01B0\u1EE3c",_b="B\xC1O C\xC1O CHI PH\xCD",ub="T\u1ED4NG CHI PH\xCD",mb="L\u1EE2I NHU\u1EACN",pb="B\xE1o c\xE1o kh\xE1ch h\xE0ng b\xE1n h\xE0ng",gb="B\xE1o c\xE1o m\u1EB7t h\xE0ng b\xE1n h\xE0ng",fb="B\xE1o c\xE1o T\xF3m t\u1EAFt Thu\u1EBF",hb="THU NH\u1EACP = EARNINGS",vb="L\u1EE2I NHU\u1EACN R\xD2NG",yb="B\xE1o c\xE1o b\xE1n h\xE0ng: Theo kh\xE1ch h\xE0ng",bb="T\u1ED4NG DOANH S\u1ED0 B\xC1N H\xC0NG",kb="B\xE1o c\xE1o b\xE1n h\xE0ng: Theo m\u1EB7t h\xE0ng",wb="B\xC1O C\xC1O THU\u1EBE",xb="T\u1ED4NG THU\u1EBE",zb="C\xE1c lo\u1EA1i thu\u1EBF",Sb="Chi ph\xED",jb="Xu\u1EA5t t\u1EEB,",Pb="Chuy\u1EC3n t\u1EDBi,",Db="Nh\xE2\u0323n t\u1EEB:",Cb="Thu\u1EBF";var Ab={navigation:jy,general:Py,dashboard:Dy,tax_types:Cy,global_search:Ay,customers:Ey,items:Ny,estimates:Ty,invoices:Iy,payments:$y,expenses:Ry,login:Fy,users:My,reports:Vy,settings:By,wizard:Oy,validation:Ly,pdf_estimate_label:Uy,pdf_estimate_number:Ky,pdf_estimate_date:qy,pdf_estimate_expire_date:Zy,pdf_invoice_label:Wy,pdf_invoice_number:Hy,pdf_invoice_date:Gy,pdf_invoice_due_date:Yy,pdf_notes:Jy,pdf_items_label:Xy,pdf_quantity_label:Qy,pdf_price_label:eb,pdf_discount_label:tb,pdf_amount_label:ab,pdf_subtotal:sb,pdf_total:nb,pdf_payment_label:ib,pdf_payment_receipt_label:ob,pdf_payment_date:rb,pdf_payment_number:db,pdf_payment_mode:lb,pdf_payment_amount_received_label:cb,pdf_expense_report_label:_b,pdf_total_expenses_label:ub,pdf_profit_loss_label:mb,pdf_sales_customers_label:pb,pdf_sales_items_label:gb,pdf_tax_summery_label:fb,pdf_income_label:hb,pdf_net_profit_label:vb,pdf_customer_sales_report:yb,pdf_total_sales_label:bb,pdf_item_sales_label:kb,pdf_tax_report_label:wb,pdf_total_tax_label:xb,pdf_tax_types_label:zb,pdf_expenses_label:Sb,pdf_bill_to:jb,pdf_ship_to:Pb,pdf_received_from:Db,pdf_tax_label:Cb},Eb={en:Qn,fr:no,es:cr,ar:gd,de:bl,ja:Sc,pt_BR:W_,it:Xu,sr:sp,nl:dg,ko:pf,lv:yh,sv:zv,sk:Sy,vi:Ab,pl:E_};const Nb={props:{bgColor:{type:String,default:null},color:{type:String,default:null}},setup(s){return(r,i)=>(l(),_("span",{class:"px-2 py-1 text-sm font-normal text-center text-green-800 uppercase bg-success",style:Ce({backgroundColor:s.bgColor,color:s.color})},[F(r.$slots,"default")],4))}};var Tb=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Nb});const Ib={name:"BaseBreadcrumb"},$b={class:"flex flex-wrap py-4 text-gray-900 rounded list-reset"};function Rb(s,r,i,a,t,n){return l(),_("nav",null,[c("ol",$b,[F(s.$slots,"default")])])}var Fb=ee(Ib,[["render",Rb]]),Mb=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Fb});const Vb={class:"pr-2 text-sm"},Bb={key:0,class:"px-1"},Ob={props:{title:{type:String,default:String},to:{type:String,default:"#"},active:{type:Boolean,default:!1,required:!1}},setup(s){return(r,i)=>{const a=C("router-link");return l(),_("li",Vb,[u(a,{class:"m-0 mr-2 text-sm font-medium leading-5 text-gray-900 outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-400",to:s.to},{default:g(()=>[K(w(s.title),1)]),_:1},8,["to"]),s.active?S("",!0):(l(),_("span",Bb,"/"))])}}};var Lb=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Ob});const Ub={},Kb={class:"animate-spin",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},qb=c("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),Zb=c("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1),Wb=[qb,Zb];function Hb(s,r){return l(),_("svg",Kb,Wb)}var Gb=ee(Ub,[["render",Hb]]);const Yb={props:{contentLoading:{type:Boolean,default:!1},defaultClass:{type:String,default:"inline-flex whitespace-nowrap items-center border font-medium focus:outline-none focus:ring-2 focus:ring-offset-2"},tag:{type:String,default:"button"},disabled:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},size:{type:String,default:"md",validator:function(s){return["xs","sm","md","lg","xl"].indexOf(s)!==-1}},variant:{type:String,default:"primary",validator:function(s){return["primary","secondary","primary-outline","white","danger","gray"].indexOf(s)!==-1}}},setup(s){const r=s,i=D(()=>({"px-2.5 py-1.5 text-xs leading-4 rounded":r.size==="xs","px-3 py-2 text-sm leading-4 rounded-md":r.size=="sm","px-4 py-2 text-sm leading-5 rounded-md":r.size==="md","px-4 py-2 text-base leading-6 rounded-md":r.size==="lg","px-6 py-3 text-base leading-6 rounded-md":r.size==="xl"})),a=D(()=>{switch(r.size){case"xs":return"32";case"sm":return"38";case"md":return"42";case"lg":return"42";case"xl":return"46";default:return""}}),t=D(()=>({"border-transparent shadow-sm text-white bg-primary-600 hover:bg-primary-700 focus:ring-primary-500":r.variant==="primary","border-transparent text-primary-700 bg-primary-100 hover:bg-primary-200 focus:ring-primary-500":r.variant==="secondary","border-transparent border-solid border-primary-500 font-normal transition ease-in-out duration-150 text-primary-500 hover:bg-primary-200 shadow-inner focus:ring-primary-500":r.variant=="primary-outline","border-gray-200 text-gray-700 bg-white hover:bg-gray-50 focus:ring-primary-500 focus:ring-offset-0":r.variant=="white","border-transparent shadow-sm text-white bg-red-600 hover:bg-red-700 focus:ring-red-500":r.variant==="danger","border-transparent bg-gray-200 border hover:bg-opacity-60 focus:ring-gray-500 focus:ring-offset-0":r.variant==="gray"})),n=D(()=>r.rounded?"!rounded-full":""),e=D(()=>({"-ml-0.5 mr-2 h-4 w-4":r.size=="sm","-ml-1 mr-2 h-5 w-5":r.size==="md","-ml-1 mr-3 h-5 w-5":r.size==="lg"||r.size==="xl"})),o=D(()=>({"text-white":r.variant==="primary","text-primary-700":r.variant==="secondary","text-gray-700":r.variant==="white","text-gray-400":r.variant==="gray"})),m=D(()=>({"ml-2 -mr-0.5 h-4 w-4":r.size=="sm","ml-2 -mr-1 h-5 w-5":r.size==="md","ml-3 -mr-1 h-5 w-5":r.size==="lg"||r.size==="xl"}));return(p,k)=>{const x=C("BaseContentPlaceholdersBox"),b=C("BaseContentPlaceholders"),h=C("BaseCustomTag");return s.contentLoading?(l(),T(b,{key:0,class:"disabled cursor-normal pointer-events-none"},{default:g(()=>[u(x,{rounded:!0,style:Ce([{width:"96px"},`height: ${d(a)}px;`])},null,8,["style"])]),_:1})):(l(),T(h,{key:1,tag:s.tag,disabled:s.disabled,class:A([s.defaultClass,d(i),d(t),d(n)])},{default:g(()=>[s.loading?(l(),T(Gb,{key:0,class:A([d(e),d(o)])},null,8,["class"])):F(p.$slots,"left",{key:1,class:A(d(e))}),F(p.$slots,"default"),F(p.$slots,"right",{class:A([d(m),d(o)])})]),_:3},8,["tag","disabled","class"]))}}};var Jb=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Yb});const Xb={class:"bg-white rounded-lg shadow"},Qb={key:0,class:"px-5 py-4 text-black border-b border-gray-100 border-solid"},ek={key:1,class:"px-5 py-4 border-t border-gray-100 border-solid sm:px-6"},tk={props:{containerClass:{type:String,default:"px-4 py-5 sm:px-8 sm:py-8"}},setup(s){const r=pe(),i=D(()=>!!r.header),a=D(()=>!!r.footer);return(t,n)=>(l(),_("div",Xb,[d(i)?(l(),_("div",Qb,[F(t.$slots,"header")])):S("",!0),c("div",{class:A(s.containerClass)},[F(t.$slots,"default")],2),d(a)?(l(),_("div",ek,[F(t.$slots,"footer")])):S("",!0)]))}};var ak=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:tk});const sk={class:"relative flex items-start"},nk={class:"flex items-center h-5"},ik=["id","disabled"],ok={class:"ml-3 text-sm"},rk=["for"],dk={props:{label:{type:String,default:""},modelValue:{type:[Boolean,Array],default:!1},id:{type:[Number,String],default:()=>`check_${Math.random().toString(36).substr(2,9)}`},disabled:{type:Boolean,default:!1},checkboxClass:{type:String,default:"w-4 h-4 border-gray-300 rounded cursor-pointer"},setInitialValue:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(s,{emit:r}){const i=s;i.setInitialValue&&r("update:modelValue",i.modelValue);const a=D({get:()=>i.modelValue,set:n=>{r("update:modelValue",n),r("change",n)}}),t=D(()=>i.disabled?"text-gray-300 cursor-not-allowed":"text-primary-600 focus:ring-primary-500");return(n,e)=>(l(),_("div",sk,[c("div",nk,[xe(c("input",le({id:s.id,"onUpdate:modelValue":e[0]||(e[0]=o=>J(a)?a.value=o:null)},n.$attrs,{disabled:s.disabled,type:"checkbox",class:[s.checkboxClass,d(t)]}),null,16,ik),[[Bt,d(a)]])]),c("div",ok,[s.label?(l(),_("label",{key:0,for:s.id,class:A(`font-medium ${s.disabled?"text-gray-400 cursor-not-allowed":"text-gray-600"} cursor-pointer `)},w(s.label),11,rk)):S("",!0)])]))}};var lk=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:dk});const ck={props:{rounded:{type:Boolean,default:!1},centered:{type:Boolean,default:!1},animated:{type:Boolean,default:!0}},setup(s){const r=s,i=D(()=>({"base-content-placeholders":!0,"base-content-placeholders-is-rounded":r.rounded,"base-content-placeholders-is-centered":r.centered,"base-content-placeholders-is-animated":r.animated}));return(a,t)=>(l(),_("div",{class:A(d(i))},[F(a.$slots,"default")],2))}};var _k=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:ck});const uk={props:{circle:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1}},setup(s){const r=s,i=D(()=>({"base-content-circle":r.circle,"base-content-placeholders-is-rounded":r.rounded}));return(a,t)=>(l(),_("div",{class:A(["base-content-placeholders-box",d(i)])},null,2))}};var mk=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:uk});const pk={class:"base-content-placeholders-heading"},gk={key:0,class:"base-content-placeholders-heading__box"},fk=c("div",{class:"base-content-placeholders-heading__content"},[c("div",{class:"base-content-placeholders-heading__title",style:{background:"#eee"}}),c("div",{class:"base-content-placeholders-heading__subtitle"})],-1),hk={props:{box:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1}},setup(s){return(r,i)=>(l(),_("div",pk,[s.box?(l(),_("div",gk)):S("",!0),fk]))}};var vk=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:hk});const yk={class:"base-content-placeholders-text"},bk={props:{lines:{type:Number,default:4},rounded:{type:Boolean,default:!1}},setup(s){const r=s,i=D(()=>({"base-content-placeholders-is-rounded":r.rounded}));return(a,t)=>(l(),_("div",yk,[(l(!0),_(Q,null,ae(s.lines,n=>(l(),_("div",{key:n,class:A([d(i),"w-full h-full base-content-placeholders-text__line"])},null,2))),128))]))}};var kk=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:bk}),xt={id:null,label:null,type:null,name:null,default_answer:null,is_required:!1,placeholder:null,model_type:null,order:1,options:[]},wk=s=>Qe({locale:"en",fallbackLocale:"en",messages:s});const{global:ne}=wk;var Ze={isImageFile(s){return["image/gif","image/jpeg","image/png"].includes(s)},addClass(s,r){s.classList?s.classList.add(r):s.className+=" "+r},hasClass(s,r){return s.classList?s.classList.contains(r):new RegExp("(^| )"+r+"( |$)","gi").test(s.className)},formatMoney(s,r=0){r||(r={precision:2,thousand_separator:",",decimal_separator:".",symbol:"$"}),s=s/100;let{precision:i,decimal_separator:a,thousand_separator:t,symbol:n,swap_currency_symbol:e}=r;try{i=Math.abs(i),i=isNaN(i)?2:i;const o=s<0?"-":"";let m=parseInt(s=Math.abs(Number(s)||0).toFixed(i)).toString(),p=m.length>3?m.length%3:0,k=`${n}`,x=p?m.substr(0,p)+t:"",b=m.substr(p).replace(/(\d{3})(?=\d)/g,"$1"+t),h=i?a+Math.abs(s-m).toFixed(i).slice(2):"",E=o+x+b+h;return e?E+" "+k:k+" "+E}catch(o){console.error(o)}},mergeSettings(s,r){Object.keys(r).forEach(function(i){i in s&&(s[i]=r[i])})},checkValidUrl(s){return s.includes("http://localhost")||s.includes("http://127.0.0.1")||s.includes("https://localhost")||s.includes("https://127.0.0.1")?!0:!!new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i").test(s)},checkValidDomainUrl(s){return s.includes("localhost")||s.includes("127.0.0.1")?!0:!!new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i").test(s)},fallbackCopyTextToClipboard(s){var r=document.createElement("textarea");r.value=s,r.style.top="0",r.style.left="0",r.style.position="fixed",document.body.appendChild(r),r.focus(),r.select();try{var i=document.execCommand("copy"),a=i?"successful":"unsuccessful";console.log("Fallback: Copying text command was "+a)}catch(t){console.error("Fallback: Oops, unable to copy",t)}document.body.removeChild(r)},copyTextToClipboard(s){if(!navigator.clipboard){this.fallbackCopyTextToClipboard(s);return}navigator.clipboard.writeText(s).then(function(){return!0},function(r){return!1})},arrayDifference(s,r){return s==null?void 0:s.filter(i=>(r==null?void 0:r.indexOf(i))<0)},getBadgeStatusColor(s){switch(s){case"DRAFT":return{bgColor:"#F8EDCB",color:"#744210"};case"PAID":return{bgColor:"#D5EED0",color:"#276749"};case"UNPAID":return{bgColor:"#F8EDC",color:"#744210"};case"SENT":return{bgColor:"rgba(246, 208, 154, 0.4)",color:"#975a16"};case"REJECTED":return{bgColor:"#E1E0EA",color:"#1A1841"};case"ACCEPTED":return{bgColor:"#D5EED0",color:"#276749"};case"VIEWED":return{bgColor:"#C9E3EC",color:"#2c5282"};case"EXPIRED":return{bgColor:"#FED7D7",color:"#c53030"};case"PARTIALLY PAID":return{bgColor:"#C9E3EC",color:"#2c5282"};case"OVERDUE":return{bgColor:"#FED7D7",color:"#c53030"};case"COMPLETED":return{bgColor:"#D5EED0",color:"#276749"};case"DUE":return{bgColor:"#F8EDCB",color:"#744210"};case"YES":return{bgColor:"#D5EED0",color:"#276749"};case"NO":return{bgColor:"#FED7D7",color:"#c53030"}}},getStatusTranslation(s){switch(s){case"DRAFT":return ne.t("general.draft");case"PAID":return ne.t("invoices.paid");case"UNPAID":return ne.t("invoices.unpaid");case"SENT":return ne.t("general.sent");case"REJECTED":return ne.t("estimates.rejected");case"ACCEPTED":return ne.t("estimates.accepted");case"VIEWED":return ne.t("invoices.viewed");case"EXPIRED":return ne.t("estimates.expired");case"PARTIALLY PAID":return ne.t("estimates.partially_paid");case"OVERDUE":return ne.t("invoices.overdue");case"COMPLETED":return ne.t("invoices.completed");case"DUE":return ne.t("general.due");default:return s}},toFormData(s){const r=new FormData;return Object.keys(s).forEach(i=>{Ot.exports.isArray(s[i])?r.append(i,JSON.stringify(s[i])):(s[i]===null&&(s[i]=""),r.append(i,s[i]))}),r}};const xk=(s=!1)=>{const r=s?window.pinia.defineStore:X,{global:i}=window.i18n;return r({id:"custom-field",state:()=>({customFields:[],isRequestOngoing:!1,currentCustomField:R({},xt)}),getters:{isEdit(){return!!this.currentCustomField.id}},actions:{resetCustomFields(){this.customFields=[]},resetCurrentCustomField(){this.currentCustomField=R({},xt)},fetchCustomFields(a){return new Promise((t,n)=>{f.get("/api/v1/custom-fields",{params:a}).then(e=>{this.customFields=e.data.data,t(e)}).catch(e=>{v(e),n(e)})})},fetchNoteCustomFields(a){return new Promise((t,n)=>{if(this.isRequestOngoing)return t({requestOnGoing:!0}),!0;this.isRequestOngoing=!0,f.get("/api/v1/custom-fields",{params:a}).then(e=>{this.customFields=e.data.data,this.isRequestOngoing=!1,t(e)}).catch(e=>{this.isRequestOngoing=!1,v(e),n(e)})})},fetchCustomField(a){return new Promise((t,n)=>{f.get(`/api/v1/custom-fields/${a}`).then(e=>{this.currentCustomField=e.data.data,this.currentCustomField.options&&this.currentCustomField.options.length&&(this.currentCustomField.options=this.currentCustomField.options.map(o=>o={name:o})),t(e)}).catch(e=>{v(e),n(e)})})},addCustomField(a){const t=M();return new Promise((n,e)=>{f.post("/api/v1/custom-fields",a).then(o=>{let m=R({},o.data.data);m.options&&(m.options=m.options.map(p=>({name:p||""}))),this.customFields.push(m),t.showNotification({type:"success",message:i.t("settings.custom_fields.added_message")}),n(o)}).catch(o=>{v(o),e(o)})})},updateCustomField(a){const t=M();return new Promise((n,e)=>{f.put(`/api/v1/custom-fields/${a.id}`,a).then(o=>{let m=R({},o.data.data);m.options&&(m.options=m.options.map(k=>({name:k||""})));let p=this.customFields.findIndex(k=>k.id===m.id);this.customFields[p]&&(this.customFields[p]=m),t.showNotification({type:"success",message:i.t("settings.custom_fields.updated_message")}),n(o)}).catch(o=>{v(o),e(o)})})},deleteCustomFields(a){const t=M();return new Promise((n,e)=>{f.delete(`/api/v1/custom-fields/${a}`).then(o=>{let m=this.customFields.findIndex(p=>p.id===a);this.customFields.splice(m,1),o.data.error?t.showNotification({type:"error",message:i.t("settings.custom_fields.already_in_use")}):t.showNotification({type:"success",message:i.t("settings.custom_fields.deleted_message")}),n(o)}).catch(o=>{v(o),e(o)})})}}})()},zk={key:1,class:"relative"},Sk={class:"absolute bottom-0 right-0 z-10"},jk={class:"flex p-2"},Pk={class:"mb-1 ml-2 text-xs font-semibold text-gray-500 uppercase"},Dk=["onClick"],Ck={class:"flex pl-1"},Ak={props:{contentLoading:{type:Boolean,default:!1},modelValue:{type:String,default:""},fields:{type:Array,default:null}},emits:["update:modelValue"],setup(s,{emit:r}){const i=s,a=xk();let t=q([]),n=q([]),e=q([]),o=q([]),m=q([]);ge(()=>i.fields,b=>{i.fields&&i.fields.length>0&&x()}),ge(()=>a.customFields,b=>{n.value=b?b.filter(h=>h.model_type==="Invoice"):[],m.value=b?b.filter(h=>h.model_type==="Customer"):[],o.value=b?b.filter(h=>h.model_type==="Payment"):[],e.value=b.filter(h=>h.model_type==="Estimate"),x()}),ze(()=>{k()});const p=D({get:()=>i.modelValue,set:b=>{r("update:modelValue",b)}});async function k(){await a.fetchCustomFields()}async function x(){t.value=[],i.fields&&i.fields.length>0&&(i.fields.find(b=>b=="shipping")&&t.value.push({label:"Shipping Address",fields:[{label:"Address name",value:"SHIPPING_ADDRESS_NAME"},{label:"Country",value:"SHIPPING_COUNTRY"},{label:"State",value:"SHIPPING_STATE"},{label:"City",value:"SHIPPING_CITY"},{label:"Address Street 1",value:"SHIPPING_ADDRESS_STREET_1"},{label:"Address Street 2",value:"SHIPPING_ADDRESS_STREET_2"},{label:"Phone",value:"SHIPPING_PHONE"},{label:"Zip Code",value:"SHIPPING_ZIP_CODE"}]}),i.fields.find(b=>b=="billing")&&t.value.push({label:"Billing Address",fields:[{label:"Address name",value:"BILLING_ADDRESS_NAME"},{label:"Country",value:"BILLING_COUNTRY"},{label:"State",value:"BILLING_STATE"},{label:"City",value:"BILLING_CITY"},{label:"Address Street 1",value:"BILLING_ADDRESS_STREET_1"},{label:"Address Street 2",value:"BILLING_ADDRESS_STREET_2"},{label:"Phone",value:"BILLING_PHONE"},{label:"Zip Code",value:"BILLING_ZIP_CODE"}]}),i.fields.find(b=>b=="customer")&&t.value.push({label:"Customer",fields:[{label:"Display Name",value:"CONTACT_DISPLAY_NAME"},{label:"Contact Name",value:"PRIMARY_CONTACT_NAME"},{label:"Email",value:"CONTACT_EMAIL"},{label:"Phone",value:"CONTACT_PHONE"},{label:"Website",value:"CONTACT_WEBSITE"},...m.value.map(b=>({label:b.label,value:b.slug}))]}),i.fields.find(b=>b=="invoice")&&t.value.push({label:"Invoice",fields:[{label:"Date",value:"INVOICE_DATE"},{label:"Due Date",value:"INVOICE_DUE_DATE"},{label:"Number",value:"INVOICE_NUMBER"},{label:"Ref Number",value:"INVOICE_REF_NUMBER"},{label:"Invoice Link",value:"INVOICE_LINK"},...n.value.map(b=>({label:b.label,value:b.slug}))]}),i.fields.find(b=>b=="estimate")&&t.value.push({label:"Estimate",fields:[{label:"Date",value:"ESTIMATE_DATE"},{label:"Expiry Date",value:"ESTIMATE_EXPIRY_DATE"},{label:"Number",value:"ESTIMATE_NUMBER"},{label:"Ref Number",value:"ESTIMATE_REF_NUMBER"},{label:"Estimate Link",value:"ESTIMATE_LINK"},...e.value.map(b=>({label:b.label,value:b.slug}))]}),i.fields.find(b=>b=="payment")&&t.value.push({label:"Payment",fields:[{label:"Date",value:"PAYMENT_DATE"},{label:"Number",value:"PAYMENT_NUMBER"},{label:"Mode",value:"PAYMENT_MODE"},{label:"Amount",value:"PAYMENT_AMOUNT"},{label:"Payment Link",value:"PAYMENT_LINK"},...o.value.map(b=>({label:b.label,value:b.slug}))]}),i.fields.find(b=>b=="company")&&t.value.push({label:"Company",fields:[{label:"Company Name",value:"COMPANY_NAME"},{label:"Country",value:"COMPANY_COUNTRY"},{label:"State",value:"COMPANY_STATE"},{label:"City",value:"COMPANY_CITY"},{label:"Address Street 1",value:"COMPANY_ADDRESS_STREET_1"},{label:"Address Street 2",value:"COMPANY_ADDRESS_STREET_2"},{label:"Phone",value:"COMPANY_PHONE"},{label:"Zip Code",value:"COMPANY_ZIP_CODE"}]}))}return x(),(b,h)=>{const E=C("BaseContentPlaceholdersBox"),$=C("BaseContentPlaceholders"),I=C("BaseIcon"),z=C("BaseButton"),V=C("BaseDropdown"),L=C("BaseEditor");return s.contentLoading?(l(),T($,{key:0},{default:g(()=>[u(E,{rounded:!0,class:"w-full",style:{height:"200px"}})]),_:1})):(l(),_("div",zk,[c("div",Sk,[u(V,{"close-on-select":!0,"max-height":"220",position:"top-end","width-class":"w-92",class:"mb-2"},{activator:g(()=>[u(z,{type:"button",variant:"primary-outline",class:"mr-4"},{left:g(G=>[u(I,{name:"PlusSmIcon",class:A(G.class)},null,8,["class"])]),default:g(()=>[K(w(b.$t("settings.customization.insert_fields"))+" ",1)]),_:1})]),default:g(()=>[c("div",jk,[(l(!0),_(Q,null,ae(d(t),(G,me)=>(l(),_("ul",{key:me,class:"list-none"},[c("li",Pk,w(G.label),1),(l(!0),_(Q,null,ae(G.fields,(Z,N)=>(l(),_("li",{key:N,class:"w-48 text-sm font-normal cursor-pointer hover:bg-gray-100 rounded ml-1 py-0.5",onClick:y=>p.value+=`{${Z.value}}`},[c("div",Ck,[u(I,{name:"ChevronDoubleRightIcon",class:"h-3 mt-1 mr-2 text-gray-400"}),K(" "+w(Z.label),1)])],8,Dk))),128))]))),128))])]),_:1})]),u(L,{modelValue:d(p),"onUpdate:modelValue":h[0]||(h[0]=G=>J(p)?p.value=G:null)},null,8,["modelValue"])]))}}};var Ek=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Ak});const Nk={props:{tag:{type:String,default:"button"}},setup(s,{slots:r,attrs:i,emit:a}){return()=>Lt(`${s.tag}`,i,r)}};var Tk=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Nk});const Ik={key:0,class:"text-sm font-bold leading-5 text-black non-italic space-y-1"},$k={key:0},Rk={key:1},Fk={key:2},Mk={key:3},Vk={key:4},Bk={key:5},Ok={props:{address:{type:Object,required:!0}},setup(s){return(r,i)=>{var a,t,n,e,o,m,p,k,x,b,h,E,$,I;return s.address?(l(),_("div",Ik,[((a=s.address)==null?void 0:a.address_street_1)?(l(),_("p",$k,w((t=s.address)==null?void 0:t.address_street_1)+",",1)):S("",!0),((n=s.address)==null?void 0:n.address_street_2)?(l(),_("p",Rk,w((e=s.address)==null?void 0:e.address_street_2)+",",1)):S("",!0),((o=s.address)==null?void 0:o.city)?(l(),_("p",Fk,w((m=s.address)==null?void 0:m.city)+",",1)):S("",!0),((p=s.address)==null?void 0:p.state)?(l(),_("p",Mk,w((k=s.address)==null?void 0:k.state)+",",1)):S("",!0),((b=(x=s.address)==null?void 0:x.country)==null?void 0:b.name)?(l(),_("p",Vk,w((E=(h=s.address)==null?void 0:h.country)==null?void 0:E.name)+",",1)):S("",!0),(($=s.address)==null?void 0:$.zip)?(l(),_("p",Bk,w((I=s.address)==null?void 0:I.zip)+".",1)):S("",!0)])):S("",!0)}}};var Lk=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Ok}),Re={name:null,phone:null,address_street_1:null,address_street_2:null,city:null,state:null,country_id:null,zip:null,type:null};function zt(){return{name:"",contact_name:"",email:"",phone:null,password:"",confirm_password:"",currency_id:null,website:null,billing:R({},Re),shipping:R({},Re),customFields:[],fields:[],enable_portal:!1}}const be=(s=!1)=>{const r=s?window.pinia.defineStore:X,{global:i}=window.i18n;return r({id:"customer",state:()=>({customers:[],totalCustomers:0,selectAllField:!1,selectedCustomers:[],selectedViewCustomer:{},isFetchingInitialSettings:!1,isFetchingViewData:!1,currentCustomer:R({},zt())}),getters:{isEdit:a=>!!a.currentCustomer.id},actions:{resetCurrentCustomer(){this.currentCustomer=R({},zt())},copyAddress(){this.currentCustomer.shipping=W(R({},this.currentCustomer.billing),{type:"shipping"})},fetchCustomerInitialSettings(a){const t=fe(),n=Ie(),e=_e();this.isFetchingInitialSettings=!0;let o=[];a?o=[this.fetchCustomer(t.params.id)]:this.currentCustomer.currency_id=e.selectedCompanyCurrency.id,Promise.all([n.fetchCurrencies(),n.fetchCountries(),...o]).then(async([m,p,k])=>{this.isFetchingInitialSettings=!1}).catch(m=>{v(m)})},fetchCustomers(a){return new Promise((t,n)=>{f.get("/api/v1/customers",{params:a}).then(e=>{this.customers=e.data.data,this.totalCustomers=e.data.meta.customer_total_count,t(e)}).catch(e=>{v(e),n(e)})})},fetchViewCustomer(a){return new Promise((t,n)=>{this.isFetchingViewData=!0,f.get(`/api/v1/customers/${a.id}/stats`,{params:a}).then(e=>{this.selectedViewCustomer={},Object.assign(this.selectedViewCustomer,e.data.data),this.setAddressStub(e.data.data),this.isFetchingViewData=!1,t(e)}).catch(e=>{this.isFetchingViewData=!1,v(e),n(e)})})},fetchCustomer(a){return new Promise((t,n)=>{f.get(`/api/v1/customers/${a}`).then(e=>{Object.assign(this.currentCustomer,e.data.data),this.setAddressStub(e.data.data),t(e)}).catch(e=>{v(e),n(e)})})},addCustomer(a){return new Promise((t,n)=>{f.post("/api/v1/customers",a).then(e=>{this.customers.push(e.data.data),M().showNotification({type:"success",message:i.t("customers.created_message")}),t(e)}).catch(e=>{v(e),n(e)})})},updateCustomer(a){return new Promise((t,n)=>{f.put(`/api/v1/customers/${a.id}`,a).then(e=>{if(e.data){let o=this.customers.findIndex(p=>p.id===e.data.data.id);this.customers[o]=a,M().showNotification({type:"success",message:i.t("customers.updated_message")})}t(e)}).catch(e=>{v(e),n(e)})})},deleteCustomer(a){const t=M();return new Promise((n,e)=>{f.post("/api/v1/customers/delete",a).then(o=>{let m=this.customers.findIndex(p=>p.id===a);this.customers.splice(m,1),t.showNotification({type:"success",message:i.tc("customers.deleted_message",1)}),n(o)}).catch(o=>{v(o),e(o)})})},deleteMultipleCustomers(){const a=M();return new Promise((t,n)=>{f.post("/api/v1/customers/delete",{ids:this.selectedCustomers}).then(e=>{this.selectedCustomers.forEach(o=>{let m=this.customers.findIndex(p=>p.id===o.id);this.customers.splice(m,1)}),a.showNotification({type:"success",message:i.tc("customers.deleted_message",2)}),t(e)}).catch(e=>{v(e),n(e)})})},setSelectAllState(a){this.selectAllField=a},selectCustomer(a){this.selectedCustomers=a,this.selectedCustomers.length===this.customers.length?this.selectAllField=!0:this.selectAllField=!1},selectAllCustomers(){if(this.selectedCustomers.length===this.customers.length)this.selectedCustomers=[],this.selectAllField=!1;else{let a=this.customers.map(t=>t.id);this.selectedCustomers=a,this.selectAllField=!0}},setAddressStub(a){a.billing||(this.currentCustomer.billing=R({},Re)),a.shipping||(this.currentCustomer.shipping=R({},Re))}}})()},Pe=(s=!1)=>(s?window.pinia.defineStore:X)({id:"modal",state:()=>({active:!1,content:"",title:"",componentName:"",id:"",size:"md",data:null,refreshData:null,variant:""}),getters:{isEdit(){return!!this.id}},actions:{openModal(i){this.componentName=i.componentName,this.active=!0,i.id&&(this.id=i.id),this.title=i.title,i.content&&(this.content=i.content),i.data&&(this.data=i.data),i.refreshData&&(this.refreshData=i.refreshData),i.variant&&(this.variant=i.variant),i.size&&(this.size=i.size)},resetModalData(){this.content="",this.title="",this.componentName="",this.id="",this.data=null,this.refreshData=null},closeModal(){this.active=!1,setTimeout(()=>{this.resetModalData()},300)}}})(),Fe=(s=!1)=>{const r=s?window.pinia.defineStore:X,{global:i}=window.i18n;return r({id:"item",state:()=>({items:[],totalItems:0,selectAllField:!1,selectedItems:[],itemUnits:[],currentItemUnit:{id:null,name:""},currentItem:{name:"",description:"",price:0,unit_id:"",unit:null,taxes:[],tax_per_item:!1}}),getters:{isItemUnitEdit:a=>!!a.currentItemUnit.id},actions:{resetCurrentItem(){this.currentItem={name:"",description:"",price:0,unit_id:"",unit:null,taxes:[]}},fetchItems(a){return new Promise((t,n)=>{f.get("/api/v1/items",{params:a}).then(e=>{this.items=e.data.data,this.totalItems=e.data.meta.item_total_count,t(e)}).catch(e=>{v(e),n(e)})})},fetchItem(a){return new Promise((t,n)=>{f.get(`/api/v1/items/${a}`).then(e=>{e.data&&Object.assign(this.currentItem,e.data.data),t(e)}).catch(e=>{v(e),n(e)})})},addItem(a){return new Promise((t,n)=>{f.post("/api/v1/items",a).then(e=>{const o=M();this.items.push(e.data.data),o.showNotification({type:"success",message:i.t("items.created_message")}),t(e)}).catch(e=>{v(e),n(e)})})},updateItem(a){return new Promise((t,n)=>{f.put(`/api/v1/items/${a.id}`,a).then(e=>{if(e.data){const o=M();let m=this.items.findIndex(p=>p.id===e.data.data.id);this.items[m]=a.item,o.showNotification({type:"success",message:i.t("items.updated_message")})}t(e)}).catch(e=>{v(e),n(e)})})},deleteItem(a){const t=M();return new Promise((n,e)=>{f.post("/api/v1/items/delete",a).then(o=>{let m=this.items.findIndex(p=>p.id===a);this.items.splice(m,1),t.showNotification({type:"success",message:i.tc("items.deleted_message",1)}),n(o)}).catch(o=>{v(o),e(o)})})},deleteMultipleItems(){const a=M();return new Promise((t,n)=>{f.post("/api/v1/items/delete",{ids:this.selectedItems}).then(e=>{this.selectedItems.forEach(o=>{let m=this.items.findIndex(p=>p.id===o.id);this.items.splice(m,1)}),a.showNotification({type:"success",message:i.tc("items.deleted_message",2)}),t(e)}).catch(e=>{v(e),n(e)})})},selectItem(a){this.selectedItems=a,this.selectedItems.length===this.items.length?this.selectAllField=!0:this.selectAllField=!1},selectAllItems(a){if(this.selectedItems.length===this.items.length)this.selectedItems=[],this.selectAllField=!1;else{let t=this.items.map(n=>n.id);this.selectedItems=t,this.selectAllField=!0}},addItemUnit(a){const t=M();return new Promise((n,e)=>{f.post("/api/v1/units",a).then(o=>{this.itemUnits.push(o.data.data),o.data.data&&t.showNotification({type:"success",message:i.t("settings.customization.items.item_unit_added")}),o.data.errors&&t.showNotification({type:"error",message:err.response.data.errors[0]}),n(o)}).catch(o=>{v(o),e(o)})})},updateItemUnit(a){const t=M();return new Promise((n,e)=>{f.put(`/api/v1/units/${a.id}`,a).then(o=>{let m=this.itemUnits.findIndex(p=>p.id===o.data.data.id);this.itemUnits[m]=a,o.data.data&&t.showNotification({type:"success",message:i.t("settings.customization.items.item_unit_updated")}),o.data.errors&&t.showNotification({type:"error",message:err.response.data.errors[0]}),n(o)}).catch(o=>{v(o),e(o)})})},fetchItemUnits(a){return new Promise((t,n)=>{f.get("/api/v1/units",{params:a}).then(e=>{this.itemUnits=e.data.data,t(e)}).catch(e=>{v(e),n(e)})})},fetchItemUnit(a){return new Promise((t,n)=>{f.get(`/api/v1/units/${a}`).then(e=>{this.currentItemUnit=e.data.data,t(e)}).catch(e=>{v(e),n(e)})})},deleteItemUnit(a){const t=M();return new Promise((n,e)=>{f.delete(`/api/v1/units/${a}`).then(o=>{if(!o.data.error){let m=this.itemUnits.findIndex(p=>p.id===a);this.itemUnits.splice(m,1)}o.data.success&&t.showNotification({type:"success",message:i.t("settings.customization.items.deleted_message")}),n(o)}).catch(o=>{v(o),e(o)})})}}})()},ke=(s=!1)=>{const r=s?window.pinia.defineStore:X,{global:i}=window.i18n;return r({id:"taxType",state:()=>({taxTypes:[],currentTaxType:{id:null,name:"",percent:0,description:"",compound_tax:!1,collective_tax:0}}),getters:{isEdit:a=>!!a.currentTaxType.id},actions:{resetCurrentTaxType(){this.currentTaxType={id:null,name:"",percent:0,description:"",compound_tax:!1,collective_tax:0}},fetchTaxTypes(a){return new Promise((t,n)=>{f.get("/api/v1/tax-types",{params:a}).then(e=>{this.taxTypes=e.data.data,t(e)}).catch(e=>{v(e),n(e)})})},fetchTaxType(a){return new Promise((t,n)=>{f.get(`/api/v1/tax-types/${a}`).then(e=>{this.currentTaxType=e.data.data,t(e)}).catch(e=>{v(e),n(e)})})},addTaxType(a){const t=M();return new Promise((n,e)=>{f.post("/api/v1/tax-types",a).then(o=>{this.taxTypes.push(o.data.data),t.showNotification({type:"success",message:i.t("settings.tax_types.created_message")}),n(o)}).catch(o=>{v(o),e(o)})})},updateTaxType(a){const t=M();return new Promise((n,e)=>{f.put(`/api/v1/tax-types/${a.id}`,a).then(o=>{if(o.data){let m=this.taxTypes.findIndex(p=>p.id===o.data.data.id);this.taxTypes[m]=a.taxTypes,t.showNotification({type:"success",message:i.t("settings.tax_types.updated_message")})}n(o)}).catch(o=>{v(o),e(o)})})},fetchSalesTax(a){return new Promise((t,n)=>{f.post("/api/m/sales-tax-us/current-tax",a).then(e=>{if(e.data){let o=this.taxTypes.findIndex(m=>m.name==="SalesTaxUs");o>-1&&this.taxTypes.splice(o,1),this.taxTypes.push(W(R({},e.data.data),{tax_type_id:e.data.data.id}))}t(e)}).catch(e=>{v(e),n(e)})})},deleteTaxType(a){return new Promise((t,n)=>{f.delete(`/api/v1/tax-types/${a}`).then(e=>{if(e.data.success){let o=this.taxTypes.findIndex(p=>p.id===a);this.taxTypes.splice(o,1),M().showNotification({type:"success",message:i.t("settings.tax_types.deleted_message")})}t(e)}).catch(e=>{v(e),n(e)})})}}})()};var We={estimate_id:null,item_id:null,name:"",title:"",description:null,quantity:1,price:0,discount_type:"fixed",discount_val:0,discount:0,total:0,sub_total:0,totalTax:0,totalSimpleTax:0,totalCompoundTax:0,tax:0,taxes:[]},ie={name:"",tax_type_id:0,type:"GENERAL",amount:null,percent:null,compound_tax:!1};function St(){return{id:null,customer:null,template_name:"",tax_per_item:null,sales_tax_type:null,sales_tax_address_type:null,discount_per_item:null,estimate_date:"",expiry_date:"",estimate_number:"",customer_id:null,sub_total:0,total:0,tax:0,notes:"",discount_type:"fixed",discount_val:0,reference_number:null,discount:0,items:[W(R({},We),{id:Y.raw(),taxes:[W(R({},ie),{id:Y.raw()})]})],taxes:[],customFields:[],fields:[],selectedNote:null,selectedCurrency:""}}const He=(s=!1)=>{const r=s?window.pinia.defineStore:X,{global:i}=window.i18n;return r({id:"estimate",state:()=>({templates:[],estimates:[],selectAllField:!1,selectedEstimates:[],totalEstimateCount:0,isFetchingInitialSettings:!1,showExchangeRate:!1,newEstimate:R({},St())}),getters:{getSubTotal(){return this.newEstimate.items.reduce(function(a,t){return a+t.total},0)},getTotalSimpleTax(){return oe.sumBy(this.newEstimate.taxes,function(a){return a.compound_tax?0:a.amount})},getTotalCompoundTax(){return oe.sumBy(this.newEstimate.taxes,function(a){return a.compound_tax?a.amount:0})},getTotalTax(){return this.newEstimate.tax_per_item==="NO"||this.newEstimate.tax_per_item===null?this.getTotalSimpleTax+this.getTotalCompoundTax:oe.sumBy(this.newEstimate.items,function(a){return a.tax})},getSubtotalWithDiscount(){return this.getSubTotal-this.newEstimate.discount_val},getTotal(){return this.getSubtotalWithDiscount+this.getTotalTax},isEdit:a=>!!a.newEstimate.id},actions:{resetCurrentEstimate(){this.newEstimate=R({},St())},previewEstimate(a){return new Promise((t,n)=>{f.get(`/api/v1/estimates/${a.id}/send/preview`,{params:a}).then(e=>{t(e)}).catch(e=>{v(e),n(e)})})},fetchEstimates(a){return new Promise((t,n)=>{f.get("/api/v1/estimates",{params:a}).then(e=>{this.estimates=e.data.data,this.totalEstimateCount=e.data.meta.estimate_total_count,t(e)}).catch(e=>{v(e),n(e)})})},getNextNumber(a,t=!1){return new Promise((n,e)=>{f.get("/api/v1/next-number?key=estimate",{params:a}).then(o=>{t&&(this.newEstimate.estimate_number=o.data.nextNumber),n(o)}).catch(o=>{v(o),e(o)})})},fetchEstimate(a){return new Promise((t,n)=>{f.get(`/api/v1/estimates/${a}`).then(e=>{Object.assign(this.newEstimate,e.data.data),t(e)}).catch(e=>{console.log(e),v(e),n(e)})})},addSalesTaxUs(){const a=ke();let t=R({},ie),n=this.newEstimate.taxes.find(e=>e.name==="Sales Tax"&&e.type==="MODULE");if(n){for(const e in n)Object.prototype.hasOwnProperty.call(t,e)&&(t[e]=n[e]);t.id=n.tax_type_id,console.log(t,"salesTax"),a.taxTypes.push(t),console.log(a.taxTypes)}},sendEstimate(a){const t=M();return new Promise((n,e)=>{f.post(`/api/v1/estimates/${a.id}/send`,a).then(o=>{a.is_preview||t.showNotification({type:"success",message:i.t("estimates.send_estimate_successfully")}),n(o)}).catch(o=>{v(o),e(o)})})},addEstimate(a){return new Promise((t,n)=>{f.post("/api/v1/estimates",a).then(e=>{this.estimates=[...this.estimates,e.data.estimate],M().showNotification({type:"success",message:i.t("estimates.created_message")}),t(e)}).catch(e=>{v(e),n(e)})})},deleteEstimate(a){const t=M();return new Promise((n,e)=>{f.post("/api/v1/estimates/delete",a).then(o=>{let m=this.estimates.findIndex(p=>p.id===a);this.estimates.splice(m,1),t.showNotification({type:"success",message:i.t("estimates.deleted_message",1)}),n(o)}).catch(o=>{v(o),e(o)})})},deleteMultipleEstimates(a){const t=M();return new Promise((n,e)=>{f.post("/api/v1/estimates/delete",{ids:this.selectedEstimates}).then(o=>{this.selectedEstimates.forEach(m=>{let p=this.estimates.findIndex(k=>k.id===m.id);this.estimates.splice(p,1)}),this.selectedEstimates=[],t.showNotification({type:"success",message:i.tc("estimates.deleted_message",2)}),n(o)}).catch(o=>{v(o),e(o)})})},updateEstimate(a){return new Promise((t,n)=>{f.put(`/api/v1/estimates/${a.id}`,a).then(e=>{let o=this.estimates.findIndex(p=>p.id===e.data.data.id);this.estimates[o]=e.data.data,M().showNotification({type:"success",message:i.t("estimates.updated_message")}),t(e)}).catch(e=>{v(e),n(e)})})},markAsAccepted(a){return new Promise((t,n)=>{f.post(`/api/v1/estimates/${a.id}/status`,a).then(e=>{let o=this.estimates.findIndex(m=>m.id===a.id);this.estimates[o]&&(this.estimates[o].status="ACCEPTED",M().showNotification({type:"success",message:i.t("estimates.marked_as_accepted_message")})),t(e)}).catch(e=>{v(e),n(e)})})},markAsRejected(a){return new Promise((t,n)=>{f.post(`/api/v1/estimates/${a.id}/status`,a).then(e=>{M().showNotification({type:"success",message:i.t("estimates.marked_as_rejected_message")}),t(e)}).catch(e=>{v(e),n(e)})})},markAsSent(a){return new Promise((t,n)=>{f.post(`/api/v1/estimates/${a.id}/status`,a).then(e=>{let o=this.estimates.findIndex(m=>m.id===a.id);this.estimates[o]&&(this.estimates[o].status="SENT",M().showNotification({type:"success",message:i.t("estimates.mark_as_sent_successfully")})),t(e)}).catch(e=>{v(e),n(e)})})},convertToInvoice(a){const t=M();return new Promise((n,e)=>{f.post(`/api/v1/estimates/${a}/convert-to-invoice`).then(o=>{t.showNotification({type:"success",message:i.t("estimates.conversion_message")}),n(o)}).catch(o=>{v(o),e(o)})})},searchEstimate(a){return new Promise((t,n)=>{f.get(`/api/v1/estimates?${a}`).then(e=>{t(e)}).catch(e=>{v(e),n(e)})})},selectEstimate(a){this.selectedEstimates=a,this.selectedEstimates.length===this.estimates.length?this.selectAllField=!0:this.selectAllField=!1},selectAllEstimates(){if(this.selectedEstimates.length===this.estimates.length)this.selectedEstimates=[],this.selectAllField=!1;else{let a=this.estimates.map(t=>t.id);this.selectedEstimates=a,this.selectAllField=!0}},selectCustomer(a){return new Promise((t,n)=>{f.get(`/api/v1/customers/${a}`).then(e=>{this.newEstimate.customer=e.data.data,this.newEstimate.customer_id=e.data.data.id,t(e)}).catch(e=>{v(e),n(e)})})},fetchEstimateTemplates(a){return new Promise((t,n)=>{f.get("/api/v1/estimates/templates",{params:a}).then(e=>{this.templates=e.data.estimateTemplates,t(e)}).catch(e=>{v(e),n(e)})})},setTemplate(a){this.newEstimate.template_name=a},resetSelectedCustomer(){this.newEstimate.customer=null,this.newEstimate.customer_id=""},selectNote(a){this.newEstimate.selectedNote=null,this.newEstimate.selectedNote=a},resetSelectedNote(){this.newEstimate.selectedNote=null},addItem(){this.newEstimate.items.push(W(R({},We),{id:Y.raw(),taxes:[W(R({},ie),{id:Y.raw()})]}))},updateItem(a){Object.assign(this.newEstimate.items[a.index],R({},a))},removeItem(a){this.newEstimate.items.splice(a,1)},deselectItem(a){this.newEstimate.items[a]=W(R({},We),{id:Y.raw(),taxes:[W(R({},ie),{id:Y.raw()})]})},async fetchEstimateInitialSettings(a){const t=_e(),n=be(),e=Fe(),o=ke(),m=fe();if(this.isFetchingInitialSettings=!0,this.newEstimate.selectedCurrency=t.selectedCompanyCurrency,m.query.customer){let k=await n.fetchCustomer(m.query.customer);this.newEstimate.customer=k.data.data,this.newEstimate.customer_id=k.data.data.id}let p=[];a?p=[this.fetchEstimate(m.params.id)]:(this.newEstimate.tax_per_item=t.selectedCompanySettings.tax_per_item,this.newEstimate.sales_tax_type=t.selectedCompanySettings.sales_tax_type,this.newEstimate.sales_tax_address_type=t.selectedCompanySettings.sales_tax_address_type,this.newEstimate.discount_per_item=t.selectedCompanySettings.discount_per_item,this.newEstimate.estimate_date=ye().format("YYYY-MM-DD"),t.selectedCompanySettings.estimate_set_expiry_date_automatically==="YES"&&(this.newEstimate.expiry_date=ye().add(t.selectedCompanySettings.estimate_expiry_date_days,"days").format("YYYY-MM-DD"))),Promise.all([e.fetchItems({filter:{},orderByField:"",orderBy:""}),this.resetSelectedNote(),this.fetchEstimateTemplates(),this.getNextNumber(),o.fetchTaxTypes({limit:"all"}),...p]).then(async([k,x,b,h,E,$,I])=>{a||(h.data&&(this.newEstimate.estimate_number=h.data.nextNumber),this.setTemplate(this.templates[0].name)),a&&this.addSalesTaxUs(),this.isFetchingInitialSettings=!1}).catch(k=>{v(k),this.isFetchingInitialSettings=!1})}}})()};var Ge={invoice_id:null,item_id:null,name:"",title:"",description:null,quantity:1,price:0,discount_type:"fixed",discount_val:0,discount:0,total:0,totalTax:0,totalSimpleTax:0,totalCompoundTax:0,tax:0,taxes:[]};function jt(){return{id:null,invoice_number:"",customer:null,customer_id:null,template_name:null,invoice_date:"",due_date:"",notes:"",discount:0,discount_type:"fixed",discount_val:0,reference_number:null,tax:0,sub_total:0,total:0,tax_per_item:null,sales_tax_type:null,sales_tax_address_type:null,discount_per_item:null,taxes:[],items:[W(R({},Ge),{id:Y.raw(),taxes:[W(R({},ie),{id:Y.raw()})]})],customFields:[],fields:[],selectedNote:null,selectedCurrency:""}}const Me=(s=!1)=>{const r=s?window.pinia.defineStore:X,{global:i}=window.i18n,a=M();return r({id:"invoice",state:()=>({templates:[],invoices:[],selectedInvoices:[],selectAllField:!1,invoiceTotalCount:0,showExchangeRate:!1,isFetchingInitialSettings:!1,isFetchingInvoice:!1,newInvoice:R({},jt())}),getters:{getInvoice:t=>n=>{let e=parseInt(n);return t.invoices.find(o=>o.id===e)},getSubTotal(){return this.newInvoice.items.reduce(function(t,n){return t+n.total},0)},getTotalSimpleTax(){return oe.sumBy(this.newInvoice.taxes,function(t){return t.compound_tax?0:t.amount})},getTotalCompoundTax(){return oe.sumBy(this.newInvoice.taxes,function(t){return t.compound_tax?t.amount:0})},getTotalTax(){return this.newInvoice.tax_per_item==="NO"||this.newInvoice.tax_per_item===null?this.getTotalSimpleTax+this.getTotalCompoundTax:oe.sumBy(this.newInvoice.items,function(t){return t.tax})},getSubtotalWithDiscount(){return this.getSubTotal-this.newInvoice.discount_val},getTotal(){return this.getSubtotalWithDiscount+this.getTotalTax},isEdit:t=>!!t.newInvoice.id},actions:{resetCurrentInvoice(){this.newInvoice=R({},jt())},previewInvoice(t){return new Promise((n,e)=>{f.get(`/api/v1/invoices/${t.id}/send/preview`,{params:t}).then(o=>{n(o)}).catch(o=>{v(o),e(o)})})},fetchInvoices(t){return new Promise((n,e)=>{f.get("/api/v1/invoices",{params:t}).then(o=>{this.invoices=o.data.data,this.invoiceTotalCount=o.data.meta.invoice_total_count,n(o)}).catch(o=>{v(o),e(o)})})},fetchInvoice(t){return new Promise((n,e)=>{f.get(`/api/v1/invoices/${t}`).then(o=>{Object.assign(this.newInvoice,o.data.data),this.newInvoice.customer=o.data.data.customer,n(o)}).catch(o=>{v(o),e(o)})})},addSalesTaxUs(){const t=ke();let n=R({},ie),e=this.newInvoice.taxes.find(o=>o.name==="Sales Tax"&&o.type==="MODULE");if(e){for(const o in e)Object.prototype.hasOwnProperty.call(n,o)&&(n[o]=e[o]);n.id=e.tax_type_id,t.taxTypes.push(n)}},sendInvoice(t){return new Promise((n,e)=>{f.post(`/api/v1/invoices/${t.id}/send`,t).then(o=>{a.showNotification({type:"success",message:i.t("invoices.invoice_sent_successfully")}),n(o)}).catch(o=>{v(o),e(o)})})},addInvoice(t){return new Promise((n,e)=>{f.post("/api/v1/invoices",t).then(o=>{this.invoices=[...this.invoices,o.data.invoice],a.showNotification({type:"success",message:i.t("invoices.created_message")}),n(o)}).catch(o=>{v(o),e(o)})})},deleteInvoice(t){return new Promise((n,e)=>{f.post("/api/v1/invoices/delete",t).then(o=>{let m=this.invoices.findIndex(p=>p.id===t);this.invoices.splice(m,1),a.showNotification({type:"success",message:i.t("invoices.deleted_message",1)}),n(o)}).catch(o=>{v(o),e(o)})})},deleteMultipleInvoices(t){return new Promise((n,e)=>{f.post("/api/v1/invoices/delete",{ids:this.selectedInvoices}).then(o=>{this.selectedInvoices.forEach(m=>{let p=this.invoices.findIndex(k=>k.id===m.id);this.invoices.splice(p,1)}),this.selectedInvoices=[],a.showNotification({type:"success",message:i.tc("invoices.deleted_message",2)}),n(o)}).catch(o=>{v(o),e(o)})})},updateInvoice(t){return new Promise((n,e)=>{f.put(`/api/v1/invoices/${t.id}`,t).then(o=>{let m=this.invoices.findIndex(p=>p.id===o.data.data.id);this.invoices[m]=o.data.data,a.showNotification({type:"success",message:i.t("invoices.updated_message")}),n(o)}).catch(o=>{v(o),e(o)})})},cloneInvoice(t){return new Promise((n,e)=>{f.post(`/api/v1/invoices/${t.id}/clone`,t).then(o=>{a.showNotification({type:"success",message:i.t("invoices.cloned_successfully")}),n(o)}).catch(o=>{v(o),e(o)})})},markAsSent(t){return new Promise((n,e)=>{f.post(`/api/v1/invoices/${t.id}/status`,t).then(o=>{let m=this.invoices.findIndex(p=>p.id===t.id);this.invoices[m]&&(this.invoices[m].status="SENT"),a.showNotification({type:"success",message:i.t("invoices.mark_as_sent_successfully")}),n(o)}).catch(o=>{v(o),e(o)})})},getNextNumber(t,n=!1){return new Promise((e,o)=>{f.get("/api/v1/next-number?key=invoice",{params:t}).then(m=>{n&&(this.newInvoice.invoice_number=m.data.nextNumber),e(m)}).catch(m=>{v(m),o(m)})})},searchInvoice(t){return new Promise((n,e)=>{f.get(`/api/v1/invoices?${t}`).then(o=>{n(o)}).catch(o=>{v(o),e(o)})})},selectInvoice(t){this.selectedInvoices=t,this.selectedInvoices.length===this.invoices.length?this.selectAllField=!0:this.selectAllField=!1},selectAllInvoices(){if(this.selectedInvoices.length===this.invoices.length)this.selectedInvoices=[],this.selectAllField=!1;else{let t=this.invoices.map(n=>n.id);this.selectedInvoices=t,this.selectAllField=!0}},selectCustomer(t){return new Promise((n,e)=>{f.get(`/api/v1/customers/${t}`).then(o=>{this.newInvoice.customer=o.data.data,this.newInvoice.customer_id=o.data.data.id,n(o)}).catch(o=>{v(o),e(o)})})},fetchInvoiceTemplates(t){return new Promise((n,e)=>{f.get("/api/v1/invoices/templates",{params:t}).then(o=>{this.templates=o.data.invoiceTemplates,n(o)}).catch(o=>{v(o),e(o)})})},selectNote(t){this.newInvoice.selectedNote=null,this.newInvoice.selectedNote=t},setTemplate(t){this.newInvoice.template_name=t},resetSelectedCustomer(){this.newInvoice.customer=null,this.newInvoice.customer_id=null},addItem(){this.newInvoice.items.push(W(R({},Ge),{id:Y.raw(),taxes:[W(R({},ie),{id:Y.raw()})]}))},updateItem(t){Object.assign(this.newInvoice.items[t.index],R({},t))},removeItem(t){this.newInvoice.items.splice(t,1)},deselectItem(t){this.newInvoice.items[t]=W(R({},Ge),{id:Y.raw(),taxes:[W(R({},ie),{id:Y.raw()})]})},resetSelectedNote(){this.newInvoice.selectedNote=null},async fetchInvoiceInitialSettings(t){const n=_e(),e=be(),o=Fe(),m=ke(),p=fe();if(this.isFetchingInitialSettings=!0,this.newInvoice.selectedCurrency=n.selectedCompanyCurrency,p.query.customer){let x=await e.fetchCustomer(p.query.customer);this.newInvoice.customer=x.data.data,this.newInvoice.customer_id=x.data.data.id}let k=[];t?k=[this.fetchInvoice(p.params.id)]:(this.newInvoice.tax_per_item=n.selectedCompanySettings.tax_per_item,this.newInvoice.sales_tax_type=n.selectedCompanySettings.sales_tax_type,this.newInvoice.sales_tax_address_type=n.selectedCompanySettings.sales_tax_address_type,this.newInvoice.discount_per_item=n.selectedCompanySettings.discount_per_item,this.newInvoice.invoice_date=ye().format("YYYY-MM-DD"),n.selectedCompanySettings.invoice_set_due_date_automatically==="YES"&&(this.newInvoice.due_date=ye().add(n.selectedCompanySettings.invoice_due_date_days,"days").format("YYYY-MM-DD"))),Promise.all([o.fetchItems({filter:{},orderByField:"",orderBy:""}),this.resetSelectedNote(),this.fetchInvoiceTemplates(),this.getNextNumber(),m.fetchTaxTypes({limit:"all"}),...k]).then(async([x,b,h,E,$,I])=>{t||(E.data&&(this.newInvoice.invoice_number=E.data.nextNumber),h.data&&this.setTemplate(this.templates[0].name)),t&&this.addSalesTaxUs(),this.isFetchingInitialSettings=!1}).catch(x=>{v(x),reject(x)})}}})()},Uk={class:"relative flex px-4 py-2 rounded-lg bg-opacity-40 bg-gray-300 whitespace-nowrap flex-col mt-1"},Kk=c("rect",{width:"37",height:"37",rx:"10",fill:"currentColor"},null,-1),qk=c("path",{d:"M16 10C15.7348 10 15.4804 10.1054 15.2929 10.2929C15.1054 10.4804 15 10.7348 15 11C15 11.2652 15.1054 11.5196 15.2929 11.7071C15.4804 11.8946 15.7348 12 16 12H18C18.2652 12 18.5196 11.8946 18.7071 11.7071C18.8946 11.5196 19 11.2652 19 11C19 10.7348 18.8946 10.4804 18.7071 10.2929C18.5196 10.1054 18.2652 10 18 10H16Z",fill:"white"},null,-1),Zk=c("path",{d:"M11 13C11 12.4696 11.2107 11.9609 11.5858 11.5858C11.9609 11.2107 12.4696 11 13 11C13 11.7956 13.3161 12.5587 13.8787 13.1213C14.4413 13.6839 15.2044 14 16 14H18C18.7956 14 19.5587 13.6839 20.1213 13.1213C20.6839 12.5587 21 11.7956 21 11C21.5304 11 22.0391 11.2107 22.4142 11.5858C22.7893 11.9609 23 12.4696 23 13V19H18.414L19.707 17.707C19.8892 17.5184 19.99 17.2658 19.9877 17.0036C19.9854 16.7414 19.8802 16.4906 19.6948 16.3052C19.5094 16.1198 19.2586 16.0146 18.9964 16.0123C18.7342 16.01 18.4816 16.1108 18.293 16.293L15.293 19.293C15.1055 19.4805 15.0002 19.7348 15.0002 20C15.0002 20.2652 15.1055 20.5195 15.293 20.707L18.293 23.707C18.4816 23.8892 18.7342 23.99 18.9964 23.9877C19.2586 23.9854 19.5094 23.8802 19.6948 23.6948C19.8802 23.5094 19.9854 23.2586 19.9877 22.9964C19.99 22.7342 19.8892 22.4816 19.707 22.293L18.414 21H23V24C23 24.5304 22.7893 25.0391 22.4142 25.4142C22.0391 25.7893 21.5304 26 21 26H13C12.4696 26 11.9609 25.7893 11.5858 25.4142C11.2107 25.0391 11 24.5304 11 24V13ZM23 19H25C25.2652 19 25.5196 19.1054 25.7071 19.2929C25.8946 19.4804 26 19.7348 26 20C26 20.2652 25.8946 20.5196 25.7071 20.7071C25.5196 20.8946 25.2652 21 25 21H23V19Z",fill:"white"},null,-1),Wk=[Kk,qk,Zk],Hk={props:{token:{type:String,default:null,required:!0}},setup(s){const r=M(),i=q(""),{t:a}=Se();function t(e){let o;document.selection?(o=document.body.createTextRange(),o.moveToElementText(e),o.select()):window.getSelection&&(o=document.createRange(),o.selectNode(e),window.getSelection().removeAllRanges(),window.getSelection().addRange(o))}function n(){t(i.value),document.execCommand("copy"),r.showNotification({type:"success",message:a("general.copied_url_clipboard")})}return(e,o)=>{const m=et("tooltip");return l(),_("div",Uk,[c("span",{ref:(p,k)=>{k.publicUrl=p,i.value=p},class:"pr-10 text-sm font-medium text-black truncate select-all select-color"},w(s.token),513),xe((l(),_("svg",{class:"absolute right-0 h-full inset-y-0 cursor-pointer focus:outline-none text-primary-500",width:"37",viewBox:"0 0 37 37",fill:"none",xmlns:"http://www.w3.org/2000/svg",onClick:n},Wk,512)),[[m,{content:"Copy to Clipboard"}]])])}}};var Ye={recurring_invoice_id:null,item_id:null,name:"",title:"",sales_tax_type:null,sales_tax_address_type:null,description:null,quantity:1,price:0,discount_type:"fixed",discount_val:0,discount:0,total:0,totalTax:0,totalSimpleTax:0,totalCompoundTax:0,tax:0,taxes:[]};function Pt(){return{currency:null,customer:null,customer_id:null,invoice_template_id:1,sub_total:0,total:0,tax:0,notes:"",discount_type:"fixed",discount_val:0,discount:0,starts_at:null,send_automatically:!0,status:"ACTIVE",company_id:null,next_invoice_at:null,next_invoice_date:null,frequency:"0 0 * * 0",limit_count:null,limit_by:"NONE",limit_date:null,exchange_rate:null,tax_per_item:null,discount_per_item:null,template_name:null,items:[W(R({},Ye),{id:Y.raw(),taxes:[W(R({},ie),{id:Y.raw()})]})],taxes:[],customFields:[],fields:[],invoices:[],selectedNote:null,selectedFrequency:{label:"Every Week",value:"0 0 * * 0"},selectedInvoice:null}}const Dt=(s=!1)=>{const r=s?window.pinia.defineStore:X,{global:i}=window.i18n;return r({id:"recurring-invoice",state:()=>({templates:[],recurringInvoices:[],selectedRecurringInvoices:[],totalRecurringInvoices:0,isFetchingInitialSettings:!1,isFetchingViewData:!1,showExchangeRate:!1,selectAllField:!1,newRecurringInvoice:R({},Pt()),frequencies:[{label:"Every Minute",value:"* * * * *"},{label:"Every 30 Minute",value:"*/30 * * * *"},{label:"Every Hour",value:"0 * * * *"},{label:"Every 2 Hour",value:"0 */2 * * *"},{label:"Twice A Day",value:"0 13-15 * * *"},{label:"Every Week",value:"0 0 * * 0"},{label:"Every 15 Days",value:"0 5 */15 * *"},{label:"First Day Of Month",value:"0 0 1 * *"},{label:"Every 6 Month",value:"0 0 1 */6 *"},{label:"Every Year",value:"0 0 1 1 *"},{label:"Custom",value:"CUSTOM"}]}),getters:{getSubTotal(){var a;return((a=this.newRecurringInvoice)==null?void 0:a.items.reduce(function(t,n){return t+n.total},0))||0},getTotalSimpleTax(){return oe.sumBy(this.newRecurringInvoice.taxes,function(a){return a.compound_tax?0:a.amount})},getTotalCompoundTax(){return oe.sumBy(this.newRecurringInvoice.taxes,function(a){return a.compound_tax?a.amount:0})},getTotalTax(){return this.newRecurringInvoice.tax_per_item==="NO"||this.newRecurringInvoice.tax_per_item===null?this.getTotalSimpleTax+this.getTotalCompoundTax:oe.sumBy(this.newRecurringInvoice.items,function(a){return a.tax})},getSubtotalWithDiscount(){return this.getSubTotal-this.newRecurringInvoice.discount_val},getTotal(){return this.getSubtotalWithDiscount+this.getTotalTax}},actions:{resetCurrentRecurringInvoice(){this.newRecurringInvoice=R({},Pt())},deselectItem(a){this.newRecurringInvoice.items[a]=W(R({},Ye),{id:Y.raw(),taxes:[W(R({},ie),{id:Y.raw()})]})},addRecurringInvoice(a){return new Promise((t,n)=>{f.post("/api/v1/recurring-invoices",a).then(e=>{this.recurringInvoices=[...this.recurringInvoices,e.data.recurringInvoice],M().showNotification({type:"success",message:i.t("recurring_invoices.created_message")}),t(e)}).catch(e=>{v(e),n(e)})})},fetchRecurringInvoice(a){return new Promise((t,n)=>{this.isFetchingViewData=!0,f.get(`/api/v1/recurring-invoices/${a}`).then(e=>{Object.assign(this.newRecurringInvoice,e.data.data),this.newRecurringInvoice.invoices=e.data.data.invoices||[],this.setSelectedFrequency(),this.isFetchingViewData=!1,t(e)}).catch(e=>{this.isFetchingViewData=!1,v(e),n(e)})})},updateRecurringInvoice(a){return new Promise((t,n)=>{f.put(`/api/v1/recurring-invoices/${a.id}`,a).then(e=>{t(e),M().showNotification({type:"success",message:i.t("recurring_invoices.updated_message")});let m=this.recurringInvoices.findIndex(p=>p.id===e.data.data.id);this.recurringInvoices[m]=e.data.data}).catch(e=>{v(e),n(e)})})},selectCustomer(a){return new Promise((t,n)=>{f.get(`/api/v1/customers/${a}`).then(e=>{this.newRecurringInvoice.customer=e.data.data,this.newRecurringInvoice.customer_id=e.data.data.id,t(e)}).catch(e=>{v(e),n(e)})})},searchRecurringInvoice(a){return new Promise((t,n)=>{f.get(`/api/v1/recurring-invoices?${a}`).then(e=>{t(e)}).catch(e=>{v(e),n(e)})})},fetchRecurringInvoices(a){return new Promise((t,n)=>{f.get("/api/v1/recurring-invoices",{params:a}).then(e=>{this.recurringInvoices=e.data.data,this.totalRecurringInvoices=e.data.meta.recurring_invoice_total_count,t(e)}).catch(e=>{v(e),n(e)})})},deleteRecurringInvoice(a){return new Promise((t,n)=>{f.post("/api/v1/recurring-invoices/delete",a).then(e=>{let o=this.recurringInvoices.findIndex(m=>m.id===a);this.recurringInvoices.splice(o,1),t(e)}).catch(e=>{v(e),n(e)})})},deleteMultipleRecurringInvoices(a){return new Promise((t,n)=>{let e=this.selectedRecurringInvoices;a&&(e=[a]),f.post("/api/v1/recurring-invoices/delete",{ids:e}).then(o=>{this.selectedRecurringInvoices.forEach(m=>{let p=this.recurringInvoices.findIndex(k=>k.id===m.id);this.recurringInvoices.splice(p,1)}),this.selectedRecurringInvoices=[],t(o)}).catch(o=>{v(o),n(o)})})},resetSelectedCustomer(){this.newRecurringInvoice.customer=null,this.newRecurringInvoice.customer_id=""},selectRecurringInvoice(a){this.selectedRecurringInvoices=a,this.selectedRecurringInvoices.length===this.recurringInvoices.length?this.selectAllField=!0:this.selectAllField=!1},selectAllRecurringInvoices(){if(this.selectedRecurringInvoices.length===this.recurringInvoices.length)this.selectedRecurringInvoices=[],this.selectAllField=!1;else{let a=this.recurringInvoices.map(t=>t.id);this.selectedRecurringInvoices=a,this.selectAllField=!0}},addItem(){this.newRecurringInvoice.items.push(W(R({},Ye),{id:Y.raw(),taxes:[W(R({},ie),{id:Y.raw()})]}))},removeItem(a){this.newRecurringInvoice.items.splice(a,1)},updateItem(a){Object.assign(this.newRecurringInvoice.items[a.index],R({},a))},async fetchRecurringInvoiceInitialSettings(a){const t=_e(),n=be(),e=Fe(),o=Me(),m=ke(),p=fe();if(this.isFetchingInitialSettings=!0,this.newRecurringInvoice.currency=t.selectedCompanyCurrency,p.query.customer){let x=await n.fetchCustomer(p.query.customer);this.newRecurringInvoice.customer=x.data.data,this.selectCustomer(x.data.data.id)}let k=[];a?k=[this.fetchRecurringInvoice(p.params.id)]:(this.newRecurringInvoice.tax_per_item=t.selectedCompanySettings.tax_per_item,this.newRecurringInvoice.discount_per_item=t.selectedCompanySettings.discount_per_item,this.newRecurringInvoice.sales_tax_type=t.selectedCompanySettings.sales_tax_type,this.newRecurringInvoice.sales_tax_address_type=t.selectedCompanySettings.sales_tax_address_type,this.newRecurringInvoice.starts_at=ye().format("YYYY-MM-DD"),this.newRecurringInvoice.next_invoice_date=ye().add(7,"days").format("YYYY-MM-DD")),Promise.all([e.fetchItems({filter:{},orderByField:"",orderBy:""}),this.resetSelectedNote(),o.fetchInvoiceTemplates(),m.fetchTaxTypes({limit:"all"}),...k]).then(async([x,b,h,E,$])=>{var I,z;h.data&&(this.templates=o.templates),a||this.setTemplate(this.templates[0].name),a&&($==null?void 0:$.data)&&(R({},$.data.data),this.setTemplate((z=(I=$==null?void 0:$.data)==null?void 0:I.data)==null?void 0:z.template_name)),a&&this.addSalesTaxUs(),this.isFetchingInitialSettings=!1}).catch(x=>{console.log(x),v(x)})},addSalesTaxUs(){const a=ke();let t=R({},ie),n=this.newRecurringInvoice.taxes.find(e=>e.name==="Sales Tax"&&e.type==="MODULE");if(n){for(const e in n)Object.prototype.hasOwnProperty.call(t,e)&&(t[e]=n[e]);t.id=n.tax_type_id,a.taxTypes.push(t)}},setTemplate(a){this.newRecurringInvoice.template_name=a},setSelectedFrequency(){let a=this.frequencies.find(t=>t.value===this.newRecurringInvoice.frequency);a?this.newRecurringInvoice.selectedFrequency=a:this.newRecurringInvoice.selectedFrequency={label:"Custom",value:"CUSTOM"}},resetSelectedNote(){this.newRecurringInvoice.selectedNote=null},fetchRecurringInvoiceFrequencyDate(a){return new Promise((t,n)=>{f.get("/api/v1/recurring-invoice-frequency",{params:a}).then(e=>{this.newRecurringInvoice.next_invoice_at=e.data.next_invoice_at,t(e)}).catch(e=>{M().showNotification({type:"error",message:i.t("errors.enter_valid_cron_format")}),n(e)})})}}})()},Gk={class:"flex justify-between w-full"},Yk=["onSubmit"],Jk={class:"px-6 pb-3"},Xk={class:"md:col-span-2"},Qk={class:"text-sm text-gray-500"},ew={class:"grid md:grid-cols-12"},tw={class:"flex justify-end col-span-12"},aw={class:"z-0 flex justify-end p-4 border-t border-gray-200 border-solid"},Ct={setup(s){const r=Dt(),i=Pe(),a=He(),t=be(),n=_e(),e=Ie(),o=Me(),m=M();let p=q(!1);const{t:k}=Se(),x=fe();q(!1);const b=q(!1);let h=q(!1),E=q(!1);const $=D(()=>i.active&&i.componentName==="CustomerModal"),I=D(()=>({name:{required:te.withMessage(k("validation.required"),tt),minLength:te.withMessage(k("validation.name_min_length",{count:3}),Ve(3))},currency_id:{required:te.withMessage(k("validation.required"),tt)},password:{required:te.withMessage(k("validation.required"),at(t.currentCustomer.enable_portal==!0&&!t.currentCustomer.password_added)),minLength:te.withMessage(k("validation.password_min_length",{count:8}),Ve(8))},confirm_password:{sameAsPassword:te.withMessage(k("validation.password_incorrect"),Ut(t.currentCustomer.password))},email:{required:te.withMessage(k("validation.required"),at(t.currentCustomer.enable_portal==!0)),email:te.withMessage(k("validation.email_incorrect"),Kt)},prefix:{minLength:te.withMessage(k("validation.name_min_length",{count:3}),Ve(3))},website:{url:te.withMessage(k("validation.invalid_url"),qt)},billing:{address_street_1:{maxLength:te.withMessage(k("validation.address_maxlength",{count:255}),Ae(255))},address_street_2:{maxLength:te.withMessage(k("validation.address_maxlength",{count:255}),Ae(255))}},shipping:{address_street_1:{maxLength:te.withMessage(k("validation.address_maxlength",{count:255}),Ae(255))},address_street_2:{maxLength:te.withMessage(k("validation.address_maxlength",{count:255}),Ae(255))}}})),z=Zt(I,D(()=>t.currentCustomer)),V=D(()=>`${window.location.origin}/${n.selectedCompany.slug}/customer/login`);function L(){t.copyAddress()}async function G(){t.isEdit||(t.currentCustomer.currency_id=n.selectedCompanyCurrency.id)}async function me(){if(z.value.$touch(),z.value.$invalid&&t.currentCustomer.email===""&&m.showNotification({type:"error",message:k("settings.notification.please_enter_email")}),z.value.$invalid)return!0;b.value=!0;let N=R({},t.currentCustomer);try{let y=null;t.isEdit?y=await t.updateCustomer(N):y=await t.addCustomer(N),y.data&&(b.value=!1,(x.name==="invoices.create"||x.name==="invoices.edit")&&o.selectCustomer(y.data.data.id),(x.name==="estimates.create"||x.name==="estimates.edit")&&a.selectCustomer(y.data.data.id),(x.name==="recurring-invoices.create"||x.name==="recurring-invoices.edit")&&r.selectCustomer(y.data.data.id),Z())}catch(y){console.error(y),b.value=!1}}function Z(){i.closeModal(),setTimeout(()=>{t.resetCurrentCustomer(),z.value.$reset()},300)}return(N,y)=>{const ue=C("BaseIcon"),H=C("BaseInput"),U=C("BaseInputGroup"),we=C("BaseMultiselect"),de=C("BaseInputGrid"),he=C("BaseTab"),se=C("BaseSwitch"),ve=C("BaseTextarea"),De=C("BaseButton"),Et=C("BaseTabGroup"),Nt=C("BaseModal");return l(),T(Nt,{show:d($),onClose:Z,onOpen:G},{header:g(()=>[c("div",Gk,[K(w(d(i).title)+" ",1),u(ue,{name:"XIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:Z})])]),default:g(()=>[c("form",{action:"",onSubmit:re(me,["prevent"])},[c("div",Jk,[u(Et,null,{default:g(()=>[u(he,{title:N.$t("customers.basic_info"),class:"!mt-2"},{default:g(()=>[u(de,{layout:"one-column"},{default:g(()=>[u(U,{label:N.$t("customers.display_name"),required:"",error:d(z).name.$error&&d(z).name.$errors[0].$message},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.name,"onUpdate:modelValue":y[0]||(y[0]=P=>d(t).currentCustomer.name=P),modelModifiers:{trim:!0},type:"text",name:"name",class:"mt-1 md:mt-0",invalid:d(z).name.$error,onInput:y[1]||(y[1]=P=>d(z).name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),u(U,{label:N.$tc("settings.currencies.currency"),required:"",error:d(z).currency_id.$error&&d(z).currency_id.$errors[0].$message},{default:g(()=>[u(we,{modelValue:d(t).currentCustomer.currency_id,"onUpdate:modelValue":y[2]||(y[2]=P=>d(t).currentCustomer.currency_id=P),options:d(e).currencies,"value-prop":"id",searchable:"",placeholder:N.$t("customers.select_currency"),"max-height":200,class:"mt-1 md:mt-0","track-by":"name",invalid:d(z).currency_id.$error,label:"name"},null,8,["modelValue","options","placeholder","invalid"])]),_:1},8,["label","error"]),u(U,{label:N.$t("customers.primary_contact_name")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.contact_name,"onUpdate:modelValue":y[3]||(y[3]=P=>d(t).currentCustomer.contact_name=P),type:"text",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(U,{label:N.$t("login.email"),error:d(z).email.$error&&d(z).email.$errors[0].$message},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.email,"onUpdate:modelValue":y[4]||(y[4]=P=>d(t).currentCustomer.email=P),modelModifiers:{trim:!0},type:"text",name:"email",class:"mt-1 md:mt-0",invalid:d(z).email.$error,onInput:y[5]||(y[5]=P=>d(z).email.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),u(U,{label:N.$t("customers.prefix"),error:d(z).prefix.$error&&d(z).prefix.$errors[0].$message,"content-loading":d(p)},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.prefix,"onUpdate:modelValue":y[6]||(y[6]=P=>d(t).currentCustomer.prefix=P),"content-loading":d(p),type:"text",name:"name",class:"",invalid:d(z).prefix.$error,onInput:y[7]||(y[7]=P=>d(z).prefix.$touch())},null,8,["modelValue","content-loading","invalid"])]),_:1},8,["label","error","content-loading"]),u(de,null,{default:g(()=>[u(U,{label:N.$t("customers.phone")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.phone,"onUpdate:modelValue":y[8]||(y[8]=P=>d(t).currentCustomer.phone=P),modelModifiers:{trim:!0},type:"text",name:"phone",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(U,{label:N.$t("customers.website"),error:d(z).website.$error&&d(z).website.$errors[0].$message},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.website,"onUpdate:modelValue":y[9]||(y[9]=P=>d(t).currentCustomer.website=P),type:"url",class:"mt-1 md:mt-0",invalid:d(z).website.$error,onInput:y[10]||(y[10]=P=>d(z).website.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"])]),_:1})]),_:1})]),_:1},8,["title"]),u(he,{title:N.$t("customers.portal_access")},{default:g(()=>[u(de,{class:"col-span-5 lg:col-span-4"},{default:g(()=>[c("div",Xk,[c("p",Qk,w(N.$t("customers.portal_access_text")),1),u(se,{modelValue:d(t).currentCustomer.enable_portal,"onUpdate:modelValue":y[11]||(y[11]=P=>d(t).currentCustomer.enable_portal=P),class:"mt-1 flex"},null,8,["modelValue"])]),d(t).currentCustomer.enable_portal?(l(),T(U,{key:0,"content-loading":d(p),label:N.$t("customers.portal_access_url"),class:"md:col-span-2","help-text":N.$t("customers.portal_access_url_help")},{default:g(()=>[u(Hk,{token:d(V)},null,8,["token"])]),_:1},8,["content-loading","label","help-text"])):S("",!0),d(t).currentCustomer.enable_portal?(l(),T(U,{key:1,"content-loading":d(p),error:d(z).password.$error&&d(z).password.$errors[0].$message,label:N.$t("customers.password")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.password,"onUpdate:modelValue":y[14]||(y[14]=P=>d(t).currentCustomer.password=P),modelModifiers:{trim:!0},"content-loading":d(p),type:d(h)?"text":"password",name:"password",invalid:d(z).password.$error,onInput:y[15]||(y[15]=P=>d(z).password.$touch())},{right:g(()=>[d(h)?(l(),T(ue,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:y[12]||(y[12]=P=>J(h)?h.value=!d(h):h=!d(h))})):(l(),T(ue,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:y[13]||(y[13]=P=>J(h)?h.value=!d(h):h=!d(h))}))]),_:1},8,["modelValue","content-loading","type","invalid"])]),_:1},8,["content-loading","error","label"])):S("",!0),d(t).currentCustomer.enable_portal?(l(),T(U,{key:2,error:d(z).confirm_password.$error&&d(z).confirm_password.$errors[0].$message,"content-loading":d(p),label:"Confirm Password"},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.confirm_password,"onUpdate:modelValue":y[18]||(y[18]=P=>d(t).currentCustomer.confirm_password=P),modelModifiers:{trim:!0},"content-loading":d(p),type:d(E)?"text":"password",name:"confirm_password",invalid:d(z).confirm_password.$error,onInput:y[19]||(y[19]=P=>d(z).confirm_password.$touch())},{right:g(()=>[d(E)?(l(),T(ue,{key:0,name:"EyeOffIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:y[16]||(y[16]=P=>J(E)?E.value=!d(E):E=!d(E))})):(l(),T(ue,{key:1,name:"EyeIcon",class:"w-5 h-5 mr-1 text-gray-500 cursor-pointer",onClick:y[17]||(y[17]=P=>J(E)?E.value=!d(E):E=!d(E))}))]),_:1},8,["modelValue","content-loading","type","invalid"])]),_:1},8,["error","content-loading"])):S("",!0)]),_:1})]),_:1},8,["title"]),u(he,{title:N.$t("customers.billing_address"),class:"!mt-2"},{default:g(()=>[u(de,{layout:"one-column"},{default:g(()=>[u(U,{label:N.$t("customers.name")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.billing.name,"onUpdate:modelValue":y[20]||(y[20]=P=>d(t).currentCustomer.billing.name=P),type:"text",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(U,{label:N.$t("customers.country")},{default:g(()=>[u(we,{modelValue:d(t).currentCustomer.billing.country_id,"onUpdate:modelValue":y[21]||(y[21]=P=>d(t).currentCustomer.billing.country_id=P),options:d(e).countries,searchable:"","show-labels":!1,placeholder:N.$t("general.select_country"),"allow-empty":!1,"track-by":"name",class:"mt-1 md:mt-0",label:"name","value-prop":"id"},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),u(U,{label:N.$t("customers.state")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.billing.state,"onUpdate:modelValue":y[22]||(y[22]=P=>d(t).currentCustomer.billing.state=P),type:"text",name:"billingState",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(U,{label:N.$t("customers.city")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.billing.city,"onUpdate:modelValue":y[23]||(y[23]=P=>d(t).currentCustomer.billing.city=P),type:"text",name:"billingCity",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(U,{label:N.$t("customers.address"),error:d(z).billing.address_street_1.$error&&d(z).billing.address_street_1.$errors[0].$message},{default:g(()=>[u(ve,{modelValue:d(t).currentCustomer.billing.address_street_1,"onUpdate:modelValue":y[24]||(y[24]=P=>d(t).currentCustomer.billing.address_street_1=P),placeholder:N.$t("general.street_1"),rows:"2",cols:"50",class:"mt-1 md:mt-0",invalid:d(z).billing.address_street_1.$error,onInput:y[25]||(y[25]=P=>d(z).billing.address_street_1.$touch())},null,8,["modelValue","placeholder","invalid"])]),_:1},8,["label","error"])]),_:1}),u(de,{layout:"one-column"},{default:g(()=>[u(U,{error:d(z).billing.address_street_2.$error&&d(z).billing.address_street_2.$errors[0].$message},{default:g(()=>[u(ve,{modelValue:d(t).currentCustomer.billing.address_street_2,"onUpdate:modelValue":y[26]||(y[26]=P=>d(t).currentCustomer.billing.address_street_2=P),placeholder:N.$t("general.street_2"),rows:"2",cols:"50",invalid:d(z).billing.address_street_2.$error,onInput:y[27]||(y[27]=P=>d(z).billing.address_street_2.$touch())},null,8,["modelValue","placeholder","invalid"])]),_:1},8,["error"]),u(U,{label:N.$t("customers.phone")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.billing.phone,"onUpdate:modelValue":y[28]||(y[28]=P=>d(t).currentCustomer.billing.phone=P),modelModifiers:{trim:!0},type:"text",name:"phone",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(U,{label:N.$t("customers.zip_code")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.billing.zip,"onUpdate:modelValue":y[29]||(y[29]=P=>d(t).currentCustomer.billing.zip=P),type:"text",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),_:1},8,["title"]),u(he,{title:N.$t("customers.shipping_address"),class:"!mt-2"},{default:g(()=>[c("div",ew,[c("div",tw,[u(De,{variant:"primary",type:"button",size:"xs",onClick:y[30]||(y[30]=P=>L())},{default:g(()=>[K(w(N.$t("customers.copy_billing_address")),1)]),_:1})])]),u(de,{layout:"one-column"},{default:g(()=>[u(U,{label:N.$t("customers.name")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.shipping.name,"onUpdate:modelValue":y[31]||(y[31]=P=>d(t).currentCustomer.shipping.name=P),type:"text",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(U,{label:N.$t("customers.country")},{default:g(()=>[u(we,{modelValue:d(t).currentCustomer.shipping.country_id,"onUpdate:modelValue":y[32]||(y[32]=P=>d(t).currentCustomer.shipping.country_id=P),options:d(e).countries,searchable:!0,"show-labels":!1,"allow-empty":!1,placeholder:N.$t("general.select_country"),"track-by":"name",class:"mt-1 md:mt-0",label:"name","value-prop":"id"},null,8,["modelValue","options","placeholder"])]),_:1},8,["label"]),u(U,{label:N.$t("customers.state")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.shipping.state,"onUpdate:modelValue":y[33]||(y[33]=P=>d(t).currentCustomer.shipping.state=P),type:"text",name:"shippingState",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(U,{label:N.$t("customers.city")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.shipping.city,"onUpdate:modelValue":y[34]||(y[34]=P=>d(t).currentCustomer.shipping.city=P),type:"text",name:"shippingCity",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(U,{label:N.$t("customers.address"),error:d(z).shipping.address_street_1.$error&&d(z).shipping.address_street_1.$errors[0].$message},{default:g(()=>[u(ve,{modelValue:d(t).currentCustomer.shipping.address_street_1,"onUpdate:modelValue":y[35]||(y[35]=P=>d(t).currentCustomer.shipping.address_street_1=P),placeholder:N.$t("general.street_1"),rows:"2",cols:"50",class:"mt-1 md:mt-0",invalid:d(z).shipping.address_street_1.$error,onInput:y[36]||(y[36]=P=>d(z).shipping.address_street_1.$touch())},null,8,["modelValue","placeholder","invalid"])]),_:1},8,["label","error"])]),_:1}),u(de,{layout:"one-column"},{default:g(()=>[u(U,{error:d(z).shipping.address_street_2.$error&&d(z).shipping.address_street_2.$errors[0].$message},{default:g(()=>[u(ve,{modelValue:d(t).currentCustomer.shipping.address_street_2,"onUpdate:modelValue":y[37]||(y[37]=P=>d(t).currentCustomer.shipping.address_street_2=P),placeholder:N.$t("general.street_2"),rows:"2",cols:"50",invalid:d(z).shipping.address_street_1.$error,onInput:y[38]||(y[38]=P=>d(z).shipping.address_street_2.$touch())},null,8,["modelValue","placeholder","invalid"])]),_:1},8,["error"]),u(U,{label:N.$t("customers.phone")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.shipping.phone,"onUpdate:modelValue":y[39]||(y[39]=P=>d(t).currentCustomer.shipping.phone=P),modelModifiers:{trim:!0},type:"text",name:"phone",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"]),u(U,{label:N.$t("customers.zip_code")},{default:g(()=>[u(H,{modelValue:d(t).currentCustomer.shipping.zip,"onUpdate:modelValue":y[40]||(y[40]=P=>d(t).currentCustomer.shipping.zip=P),type:"text",class:"mt-1 md:mt-0"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),_:1},8,["title"])]),_:1})]),c("div",aw,[u(De,{class:"mr-3 text-sm",type:"button",variant:"primary-outline",onClick:Z},{default:g(()=>[K(w(N.$t("general.cancel")),1)]),_:1}),u(De,{loading:b.value,variant:"primary",type:"submit"},{left:g(P=>[b.value?S("",!0):(l(),T(ue,{key:0,name:"SaveIcon",class:A(P.class)},null,8,["class"]))]),default:g(()=>[K(" "+w(N.$t("general.save")),1)]),_:1},8,["loading"])])],40,Yk)]),_:1},8,["show"])}}},sw={props:{modelValue:{type:[String,Number,Object],default:""},fetchAll:{type:Boolean,default:!1},showAction:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(s,{emit:r}){const i=s,{t:a}=Se(),t=Pe(),n=be(),e=je(),o=D({get:()=>i.modelValue,set:k=>{r("update:modelValue",k)}});async function m(k){let x={search:k};return i.fetchAll&&(x.limit="all"),(await n.fetchCustomers(x)).data.data}async function p(){n.resetCurrentCustomer(),t.openModal({title:a("customers.add_new_customer"),componentName:"CustomerModal"})}return(k,x)=>{const b=C("BaseIcon"),h=C("BaseSelectAction"),E=C("BaseMultiselect");return l(),_(Q,null,[u(E,le({modelValue:d(o),"onUpdate:modelValue":x[0]||(x[0]=$=>J(o)?o.value=$:null)},k.$attrs,{"track-by":"name","value-prop":"id",label:"name","filter-results":!1,"resolve-on-load":"",delay:500,searchable:!0,options:m,"label-value":"name",placeholder:k.$t("customers.type_or_click"),"can-deselect":!1,class:"w-full"}),Wt({_:2},[s.showAction?{name:"action",fn:g(()=>[d(e).hasAbilities(d(O).CREATE_CUSTOMER)?(l(),T(h,{key:0,onClick:p},{default:g(()=>[u(b,{name:"UserAddIcon",class:"h-4 mr-2 -ml-2 text-center text-primary-400"}),K(" "+w(k.$t("customers.add_new_customer")),1)]),_:1})):S("",!0)])}:void 0]),1040,["modelValue","placeholder"]),u(Ct)],64)}}};var nw=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:sw});const iw={key:1,class:"max-h-[173px]"},ow={class:"flex relative justify-between mb-2"},rw={class:"flex"},dw=["onClick"],lw={class:"grid grid-cols-2 gap-8 mt-2"},cw={key:0,class:"flex flex-col"},_w={class:"mb-1 text-sm font-medium text-left text-gray-400 uppercase whitespace-nowrap"},uw={key:0,class:"flex flex-col flex-1 p-0 text-left"},mw={key:0,class:"relative w-11/12 text-sm truncate"},pw={class:"relative w-11/12 text-sm truncate"},gw={key:0},fw={key:1},hw={key:2},vw={key:1,class:"relative w-11/12 text-sm truncate"},yw={key:1,class:"flex flex-col"},bw={class:"mb-1 text-sm font-medium text-left text-gray-400 uppercase whitespace-nowrap"},kw={key:0,class:"flex flex-col flex-1 p-0 text-left"},ww={key:0,class:"relative w-11/12 text-sm truncate"},xw={class:"relative w-11/12 text-sm truncate"},zw={key:0},Sw={key:1},jw={key:2},Pw={key:1,class:"relative w-11/12 text-sm truncate"},Dw={class:"relative flex justify-center px-0 p-0 py-16 bg-white border border-gray-200 border-solid rounded-md min-h-[170px]"},Cw={class:"mt-1"},Aw={class:"text-lg font-medium text-gray-900"},Ew=c("span",{class:"text-red-500"}," * ",-1),Nw={key:0,class:"text-red-500 text-sm absolute right-3 bottom-3"},Tw={key:0,class:"absolute min-w-full z-10"},Iw={class:"relative"},$w={class:"max-h-80 flex flex-col overflow-auto list border-t border-gray-200"},Rw=["onClick"],Fw={class:"flex items-center content-center justify-center w-10 h-10 mr-4 text-xl font-semibold leading-9 text-white bg-gray-300 rounded-full avatar"},Mw={class:"flex flex-col justify-center text-left"},Vw={key:0,class:"flex justify-center p-5 text-gray-400"},Bw={class:"text-base text-gray-500 cursor-pointer"},Ow={class:"m-0 ml-3 text-sm leading-none cursor-pointer font-base text-primary-400"},Lw={props:{valid:{type:Object,default:()=>{}},customerId:{type:Number,default:null},type:{type:String,default:null},contentLoading:{type:Boolean,default:!1}},setup(s){const r=s,i=Pe(),a=He(),t=be(),n=Ie(),e=Me(),o=Dt(),m=je(),p=fe(),{t:k}=Se(),x=q(null),b=q(!1),h=D(()=>{switch(r.type){case"estimate":return a.newEstimate.customer;case"invoice":return e.newInvoice.customer;case"recurring-invoice":return o.newRecurringInvoice.customer;default:return""}});function E(){r.type==="estimate"?a.resetSelectedCustomer():r.type==="invoice"?e.resetSelectedCustomer():o.resetSelectedCustomer()}r.customerId&&r.type==="estimate"?a.selectCustomer(r.customerId):r.customerId&&r.type==="invoice"?e.selectCustomer(r.customerId):r.customerId&&o.selectCustomer(r.customerId);async function $(){await t.fetchCustomer(h.value.id),i.openModal({title:k("customers.edit_customer"),componentName:"CustomerModal"})}async function I(){await t.fetchCustomers({filter:{},orderByField:"",orderBy:"",customer_id:r.customerId})}const z=Jt(()=>{b.value=!0,V()},500);async function V(){let Z={display_name:x.value,page:1};await t.fetchCustomers(Z),b.value=!1}function L(){i.openModal({title:k("customers.add_customer"),componentName:"CustomerModal",variant:"md"})}function G(Z){if(Z)return Z.split(" ")[0].charAt(0).toUpperCase()}function me(Z,N){let y={userId:Z};p.params.id&&(y.model_id=p.params.id),r.type==="estimate"?(a.getNextNumber(y,!0),a.selectCustomer(Z)):r.type==="invoice"?(e.getNextNumber(y,!0),e.selectCustomer(Z)):o.selectCustomer(Z),N(),x.value=null}return n.fetchCurrencies(),n.fetchCountries(),I(),(Z,N)=>{const y=C("BaseContentPlaceholdersBox"),ue=C("BaseContentPlaceholders"),H=C("BaseText"),U=C("BaseIcon"),we=C("BaseInput");return s.contentLoading?(l(),T(ue,{key:0},{default:g(()=>[u(y,{rounded:!0,class:"w-full",style:{"min-height":"170px"}})]),_:1})):(l(),_("div",iw,[u(Ct),d(h)?(l(),_("div",{key:0,class:"flex flex-col p-4 bg-white border border-gray-200 border-solid min-h-[170px] rounded-md",onClick:N[0]||(N[0]=re(()=>{},["stop"]))},[c("div",ow,[u(H,{text:d(h).name,length:30,class:"flex-1 text-base font-medium text-left text-gray-900"},null,8,["text"]),c("div",rw,[c("a",{class:"relative my-0 ml-6 text-sm font-medium cursor-pointer text-primary-500 items-center flex",onClick:re($,["stop"])},[u(U,{name:"PencilIcon",class:"text-gray-500 h-4 w-4 mr-1"}),K(" "+w(Z.$t("general.edit")),1)],8,dw),c("a",{class:"relative my-0 ml-6 text-sm flex items-center font-medium cursor-pointer text-primary-500",onClick:E},[u(U,{name:"XCircleIcon",class:"text-gray-500 h-4 w-4 mr-1"}),K(" "+w(Z.$t("general.deselect")),1)])])]),c("div",lw,[d(h).billing?(l(),_("div",cw,[c("label",_w,w(Z.$t("general.bill_to")),1),d(h).billing?(l(),_("div",uw,[d(h).billing.name?(l(),_("label",mw,w(d(h).billing.name),1)):S("",!0),c("label",pw,[d(h).billing.city?(l(),_("span",gw,w(d(h).billing.city),1)):S("",!0),d(h).billing.city&&d(h).billing.state?(l(),_("span",fw," , ")):S("",!0),d(h).billing.state?(l(),_("span",hw,w(d(h).billing.state),1)):S("",!0)]),d(h).billing.zip?(l(),_("label",vw,w(d(h).billing.zip),1)):S("",!0)])):S("",!0)])):S("",!0),d(h).shipping?(l(),_("div",yw,[c("label",bw,w(Z.$t("general.ship_to")),1),d(h).shipping?(l(),_("div",kw,[d(h).shipping.name?(l(),_("label",ww,w(d(h).shipping.name),1)):S("",!0),c("label",xw,[d(h).shipping.city?(l(),_("span",zw,w(d(h).shipping.city),1)):S("",!0),d(h).shipping.city&&d(h).shipping.state?(l(),_("span",Sw," , ")):S("",!0),d(h).shipping.state?(l(),_("span",jw,w(d(h).shipping.state),1)):S("",!0)]),d(h).shipping.zip?(l(),_("label",Pw,w(d(h).shipping.zip),1)):S("",!0)])):S("",!0)])):S("",!0)])])):(l(),T(d(Yt),{key:1,class:"relative flex flex-col rounded-md"},{default:g(({open:de})=>[u(d(Ht),{class:A([{"text-opacity-90":de,"border border-solid border-red-500 focus:ring-red-500 rounded":s.valid.$error,"focus:ring-2 focus:ring-primary-400":!s.valid.$error},"w-full outline-none rounded-md"])},{default:g(()=>[c("div",Dw,[u(U,{name:"UserIcon",class:"flex justify-center !w-10 !h-10 p-2 mr-5 text-sm text-white bg-gray-200 rounded-full font-base"}),c("div",Cw,[c("label",Aw,[K(w(Z.$t("customers.new_customer"))+" ",1),Ew]),s.valid.$error&&s.valid.$errors[0].$message?(l(),_("p",Nw,w(Z.$t("estimates.errors.required")),1)):S("",!0)])])]),_:2},1032,["class"]),u(Ee,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"translate-y-1 opacity-0","enter-to-class":"translate-y-0 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"translate-y-0 opacity-100","leave-to-class":"translate-y-1 opacity-0"},{default:g(()=>[de?(l(),_("div",Tw,[u(d(Gt),{focus:"",static:"",class:"overflow-hidden rounded-md shadow-lg ring-1 ring-black ring-opacity-5 bg-white"},{default:g(({close:he})=>[c("div",Iw,[u(we,{modelValue:x.value,"onUpdate:modelValue":[N[1]||(N[1]=se=>x.value=se),N[2]||(N[2]=se=>d(z)(se))],"container-class":"m-4",placeholder:Z.$t("general.search"),type:"text",icon:"search"},null,8,["modelValue","placeholder"]),c("ul",$w,[(l(!0),_(Q,null,ae(d(t).customers,(se,ve)=>(l(),_("li",{key:ve,href:"#",class:"flex px-6 py-2 border-b border-gray-200 border-solid cursor-pointer hover:cursor-pointer hover:bg-gray-100 focus:outline-none focus:bg-gray-100 last:border-b-0",onClick:De=>me(se.id,he)},[c("span",Fw,w(G(se.name)),1),c("div",Mw,[se.name?(l(),T(H,{key:0,text:se.name,length:30,class:"m-0 text-base font-normal leading-tight cursor-pointer"},null,8,["text"])):S("",!0),se.contact_name?(l(),T(H,{key:1,text:se.contact_name,length:30,class:"m-0 text-sm font-medium text-gray-400 cursor-pointer"},null,8,["text"])):S("",!0)])],8,Rw))),128)),d(t).customers.length===0?(l(),_("div",Vw,[c("label",Bw,w(Z.$t("customers.no_customers_found")),1)])):S("",!0)])]),d(m).hasAbilities(d(O).CREATE_CUSTOMER)?(l(),_("button",{key:0,type:"button",class:"h-10 flex items-center justify-center w-full px-2 py-3 bg-gray-200 border-none outline-none focus:bg-gray-300",onClick:L},[u(U,{name:"UserAddIcon",class:"text-primary-400"}),c("label",Ow,w(Z.$t("customers.add_new_customer")),1)])):S("",!0)]),_:1})])):S("",!0)]),_:2},1024)]),_:1}))]))}}};var Uw=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Lw});const Kw=c("path",{"fill-rule":"evenodd",d:"M6 2a1 1 0 00-1 1v1H4a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1V3a1 1 0 10-2 0v1H7V3a1 1 0 00-1-1zm0 5a1 1 0 000 2h8a1 1 0 100-2H6z","clip-rule":"evenodd"},null,-1),qw=[Kw],Zw={props:{modelValue:{type:[String,Date],default:()=>new Date},contentLoading:{type:Boolean,default:!1},placeholder:{type:String,default:null},invalid:{type:Boolean,default:!1},enableTime:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},showCalendarIcon:{type:Boolean,default:!0},containerClass:{type:String,default:""},defaultInputClass:{type:String,default:"font-base pl-8 py-2 outline-none focus:ring-primary-400 focus:outline-none focus:border-primary-400 block w-full sm:text-sm border-gray-200 rounded-md text-black"},time24hr:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(s,{emit:r}){const i=s,a=q(null),t=pe(),n=_e();let e=Be({altInput:!0,enableTime:i.enableTime,time_24hr:i.time24hr});const o=D({get:()=>i.modelValue,set:E=>{r("update:modelValue",E)}}),m=D(()=>{var E;return(E=n.selectedCompanySettings)==null?void 0:E.carbon_date_format}),p=D(()=>!!t.icon),k=D(()=>`${i.containerClass} `),x=D(()=>i.invalid?"border-red-400 ring-red-400 focus:ring-red-400 focus:border-red-400":""),b=D(()=>i.disabled?"border border-solid rounded-md outline-none input-field box-border-2 base-date-picker-input placeholder-gray-400 bg-gray-200 text-gray-600 border-gray-200":"");function h(E){a.value.fp.open()}return ge(()=>i.enableTime,E=>{i.enableTime&&(e.enableTime=i.enableTime)},{immediate:!0}),ge(()=>m,()=>{i.enableTime?e.altFormat=m.value?`${m.value} H:i `:"d M Y H:i":e.altFormat=m.value?m.value:"d M Y"},{immediate:!0}),(E,$)=>{const I=C("BaseContentPlaceholdersBox"),z=C("BaseContentPlaceholders");return s.contentLoading?(l(),T(z,{key:0},{default:g(()=>[u(I,{rounded:!0,class:A(`w-full ${d(k)}`),style:{height:"38px"}},null,8,["class"])]),_:1})):(l(),_("div",{key:1,class:A([d(k),"relative flex flex-row"])},[s.showCalendarIcon&&!d(p)?(l(),_("svg",{key:0,viewBox:"0 0 20 20",fill:"currentColor",class:"absolute w-4 h-4 mx-2 my-2.5 text-sm not-italic font-black text-gray-400 cursor-pointer",onClick:h},qw)):S("",!0),s.showCalendarIcon&&d(p)?F(E.$slots,"icon",{key:1}):S("",!0),u(d(st),le({ref:(V,L)=>{L.dp=V,a.value=V},modelValue:d(o),"onUpdate:modelValue":$[0]||($[0]=V=>J(o)?o.value=V:null)},E.$attrs,{disabled:s.disabled,config:d(e),class:[s.defaultInputClass,d(x),d(b)]}),null,16,["modelValue","disabled","config","class"])],2))}}};var Ww=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Zw});const Hw={},Gw={class:"grid gap-4 mt-5 md:grid-cols-2 lg:grid-cols-3"};function Yw(s,r){return l(),_("div",Gw,[F(s.$slots,"default")])}var Jw=ee(Hw,[["render",Yw]]),Xw=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Jw});const Qw={key:1},ex={class:"text-sm font-bold leading-5 text-black non-italic"},tx={props:{label:{type:String,required:!0},value:{type:[String,Number],default:""},contentLoading:{type:Boolean,default:!1}},setup(s){return(r,i)=>{const a=C("BaseContentPlaceholdersBox"),t=C("BaseContentPlaceholders"),n=C("BaseLabel");return l(),_("div",null,[s.contentLoading?(l(),T(t,{key:0},{default:g(()=>[u(a,{class:"w-20 h-5 mb-1"}),u(a,{class:"w-40 h-5"})]),_:1})):(l(),_("div",Qw,[u(n,{class:"font-normal mb-1"},{default:g(()=>[K(w(s.label),1)]),_:1}),c("p",ex,[K(w(s.value)+" ",1),F(r.$slots,"default")])]))])}}};var ax=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:tx});const sx=(s=!1)=>{const r=s?window.pinia.defineStore:X,{global:i}=window.i18n;return r({id:"dialog",state:()=>({active:!1,title:"",message:"",size:"md",data:null,variant:"danger",yesLabel:i.t("settings.custom_fields.yes"),noLabel:i.t("settings.custom_fields.no"),noLabel:"No",resolve:null,hideNoButton:!1}),actions:{openDialog(a){return this.active=!0,this.title=a.title,this.message=a.message,this.size=a.size,this.data=a.data,this.variant=a.variant,this.yesLabel=a.yesLabel,this.noLabel=a.noLabel,this.hideNoButton=a.hideNoButton,new Promise((t,n)=>{this.resolve=t})},closeDialog(){this.active=!1,setTimeout(()=>{this.title="",this.message="",this.data=null},300)}}})()},nx={class:"flex items-end justify-center min-h-screen min-h-screen-ios px-4 pt-4 pb-20 text-center sm:block sm:p-0"},ix=c("span",{class:"hidden sm:inline-block sm:align-middle sm:h-screen sm:h-screen-ios","aria-hidden":"true"},"\u200B",-1),ox={class:"mt-3 text-center sm:mt-5"},rx={class:"mt-2"},dx={class:"text-sm text-gray-500"},lx={setup(s){const r=sx();function i(t){r.resolve(t),r.closeDialog()}const a=D(()=>{switch(r.size){case"sm":return"sm:max-w-sm";case"md":return"sm:max-w-md";case"lg":return"sm:max-w-lg";default:return"sm:max-w-md"}});return(t,n)=>{const e=C("BaseIcon"),o=C("base-button");return l(),T(d(ot),{as:"template",show:d(r).active},{default:g(()=>[u(d(it),{as:"div",static:"",class:"fixed inset-0 z-20 overflow-y-auto",open:d(r).active,onClose:d(r).closeDialog},{default:g(()=>[c("div",nx,[u(d(Ne),{as:"template",enter:"ease-out duration-300","enter-from":"opacity-0","enter-to":"opacity-100",leave:"ease-in duration-200","leave-from":"opacity-100","leave-to":"opacity-0"},{default:g(()=>[u(d(nt),{class:"fixed inset-0 transition-opacity bg-gray-500 bg-opacity-75"})]),_:1}),ix,u(d(Ne),{as:"template",enter:"ease-out duration-300","enter-from":"opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95","enter-to":"opacity-100 translate-y-0 sm:scale-100",leave:"ease-in duration-200","leave-from":"opacity-100 translate-y-0 sm:scale-100","leave-to":"opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"},{default:g(()=>[c("div",{class:A(["inline-block px-4 pt-5 pb-4 overflow-hidden text-left align-bottom transition-all bg-white rounded-lg shadow-xl sm:my-8 sm:align-middle sm:w-full sm:p-6 relative",d(a)])},[c("div",null,[c("div",{class:A(["flex items-center justify-center w-12 h-12 mx-auto bg-green-100 rounded-full",{"bg-green-100":d(r).variant==="primary","bg-red-100":d(r).variant==="danger"}])},[d(r).variant==="primary"?(l(),T(e,{key:0,name:"CheckIcon",class:"w-6 h-6 text-green-600"})):(l(),T(e,{key:1,name:"ExclamationIcon",class:"w-6 h-6 text-red-600","aria-hidden":"true"}))],2),c("div",ox,[u(d(Xt),{as:"h3",class:"text-lg font-medium leading-6 text-gray-900"},{default:g(()=>[K(w(d(r).title),1)]),_:1}),c("div",rx,[c("p",dx,w(d(r).message),1)])])]),c("div",{class:A(["mt-5 sm:mt-6",{"sm:grid sm:grid-cols-2 sm:gap-3 sm:grid-flow-row-dense":!d(r).hideNoButton}])},[u(o,{class:A(["justify-center",{"w-full":d(r).hideNoButton}]),variant:d(r).variant,onClick:n[0]||(n[0]=m=>i(!0))},{default:g(()=>[K(w(d(r).yesLabel),1)]),_:1},8,["variant","class"]),d(r).hideNoButton?S("",!0):(l(),T(o,{key:0,class:"justify-center",variant:"white",onClick:n[1]||(n[1]=m=>i(!1))},{default:g(()=>[K(w(d(r).noLabel),1)]),_:1}))],2)],2)]),_:1})])]),_:1},8,["open","onClose"])]),_:1},8,["show"])}}};var cx=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:lx});const _x={},ux={class:"w-full text-gray-300"};function mx(s,r){return l(),_("hr",ux)}var px=ee(_x,[["render",mx]]),gx=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:px});function fx(s){let r=q(null),i=q(null),a=q(null);return ze(()=>{rt(t=>{if(!i.value||!r.value)return;let n=i.value.el||i.value,e=r.value.el||r.value;e instanceof HTMLElement&&n instanceof HTMLElement&&(a.value=Qt(e,n,s),t(a.value.destroy))})}),[r,i,a]}const hx={class:"py-1"},vx={props:{containerClass:{type:String,required:!1,default:""},widthClass:{type:String,default:"w-56"},positionClass:{type:String,default:"absolute z-10 right-0"},position:{type:String,default:"bottom-end"},wrapperClass:{type:String,default:"inline-block h-full text-left"},contentLoading:{type:Boolean,default:!1}},setup(s){const r=s,i=D(()=>`origin-top-right rounded-md shadow-lg bg-white ring-1 ring-black ring-opacity-5 divide-y divide-gray-100 focus:outline-none ${r.containerClass}`);let[a,t,n]=fx({placement:"bottom-end",strategy:"fixed",modifiers:[{name:"offset",options:{offset:[0,10]}}]});function e(){n.value.update()}return(o,m)=>{const p=C("BaseContentPlaceholdersBox"),k=C("BaseContentPlaceholders");return l(),_("div",{class:A(["relative",s.wrapperClass])},[s.contentLoading?(l(),T(k,{key:0,class:"disabled cursor-normal pointer-events-none"},{default:g(()=>[u(p,{rounded:!0,class:"w-14",style:{height:"42px"}})]),_:1})):(l(),T(d(aa),{key:1},{default:g(()=>[u(d(ea),{ref:(x,b)=>{b.trigger=x,J(a)?a.value=x:a=x},class:"focus:outline-none",onClick:e},{default:g(()=>[F(o.$slots,"activator")]),_:3},512),c("div",{ref:(x,b)=>{b.container=x,J(t)?t.value=x:t=x},class:A(["z-10",s.widthClass])},[u(Ee,{"enter-active-class":"transition duration-100 ease-out","enter-from-class":"scale-95 opacity-0","enter-to-class":"scale-100 opacity-100","leave-active-class":"transition duration-75 ease-in","leave-from-class":"scale-100 opacity-100","leave-to-class":"scale-95 opacity-0"},{default:g(()=>[u(d(ta),{class:A(d(i))},{default:g(()=>[c("div",hx,[F(o.$slots,"default")])]),_:3},8,["class"])]),_:3})],2)]),_:3}))],2)}}};var yx=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:vx});const bx={setup(s){return(r,i)=>(l(),T(d(ia),sa(na(r.$attrs)),{default:g(({active:a})=>[c("a",{href:"#",class:A([a?"bg-gray-100 text-gray-900":"text-gray-700","group flex items-center px-4 py-2 text-sm font-normal"])},[F(r.$slots,"default",{active:a})],2)]),_:3},16))}};var kx=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:bx});const wx={class:"flex flex-col items-center justify-center mt-16"},xx={class:"flex flex-col items-center justify-center"},zx={class:"mt-2"},Sx={class:"font-medium"},jx={class:"mt-2"},Px={class:"text-gray-500"},Dx={class:"mt-6"},Cx={props:{title:{type:String,default:String},description:{type:String,default:String}},setup(s){return(r,i)=>(l(),_("div",wx,[c("div",xx,[F(r.$slots,"default")]),c("div",zx,[c("label",Sx,w(s.title),1)]),c("div",jx,[c("label",Px,w(s.description),1)]),c("div",Dx,[F(r.$slots,"actions")])]))}};var Ax=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Cx});const Ex={class:"rounded-md bg-red-50 p-4"},Nx={class:"flex"},Tx={class:"shrink-0"},Ix={class:"ml-3"},$x={class:"text-sm font-medium text-red-800"},Rx={class:"mt-2 text-sm text-red-700"},Fx={role:"list",class:"list-disc pl-5 space-y-1"},Mx={props:{errorTitle:{type:String,default:"There were some errors with your submission"},errors:{type:Array,default:null}},setup(s){return(r,i)=>(l(),_("div",Ex,[c("div",Nx,[c("div",Tx,[u(d(oa),{class:"h-5 w-5 text-red-400","aria-hidden":"true"})]),c("div",Ix,[c("h3",$x,w(s.errorTitle),1),c("div",Rx,[c("ul",Fx,[(l(!0),_(Q,null,ae(s.errors,(a,t)=>(l(),_("li",{key:t},w(a),1))),128))])])])])]))}};var Vx=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Mx});const Bx={props:{status:{type:String,required:!1,default:""}},setup(s){const r=s,i=D(()=>{switch(r.status){case"DRAFT":return"bg-yellow-300 bg-opacity-25 px-2 py-1 text-sm text-yellow-800 uppercase font-normal text-center ";case"SENT":return" bg-yellow-500 bg-opacity-25 px-2 py-1 text-sm text-yellow-900 uppercase font-normal text-center ";case"VIEWED":return"bg-blue-400 bg-opacity-25 px-2 py-1 text-sm text-blue-900 uppercase font-normal text-center";case"EXPIRED":return"bg-red-300 bg-opacity-25 px-2 py-1 text-sm text-red-800 uppercase font-normal text-center";case"ACCEPTED":return"bg-green-400 bg-opacity-25 px-2 py-1 text-sm text-green-800 uppercase font-normal text-center";case"REJECTED":return"bg-purple-300 bg-opacity-25 px-2 py-1 text-sm text-purple-800 uppercase font-normal text-center";default:return"bg-gray-500 bg-opacity-25 px-2 py-1 text-sm text-gray-900 uppercase font-normal text-center"}});return(a,t)=>(l(),_("span",{class:A(d(i))},[F(a.$slots,"default")],2))}};var Ox=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Bx});const Lx=["multiple","name","accept"],Ux={key:0,class:""},Kx=["src"],qx=["onClick"],Zx={key:1,class:"flex flex-col items-center"},Wx={class:"text-xs leading-4 text-center text-gray-400"},Hx=K(" Drag a file here or "),Gx=["onClick"],Yx=K(" to choose a file "),Jx={class:"text-xs leading-4 text-center text-gray-400 mt-2"},Xx={key:2,class:"flex w-full h-full border border-gray-200 rounded"},Qx=["src"],ez={key:1,class:"flex justify-center items-center text-gray-400 flex-col space-y-2 px-2 py-4 w-full"},tz=c("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-8 w-8",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[c("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"1.25",d:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"})],-1),az={key:0,class:"text-gray-600 font-medium text-sm truncate overflow-hidden w-full"},sz={key:3,class:"flex flex-wrap w-full"},nz=["src"],iz={key:1,class:"flex justify-center items-center text-gray-400 flex-col space-y-2 px-2 py-4 w-full"},oz=c("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-8 w-8",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[c("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"1.25",d:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"})],-1),rz={key:0,class:"text-gray-600 font-medium text-sm truncate overflow-hidden w-full"},dz=["onClick"],lz={key:4,class:"flex w-full items-center justify-center"},cz=["src"],_z={key:1,class:"flex justify-center items-center text-gray-400 flex-col space-y-2 px-2 py-4 w-full"},uz=c("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-8 w-8",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[c("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"1.25",d:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"})],-1),mz={key:0,class:"text-gray-600 font-medium text-sm truncate overflow-hidden w-full"},pz=["onClick"],gz={props:{multiple:{type:Boolean,default:!1},avatar:{type:Boolean,default:!1},autoProcess:{type:Boolean,default:!1},uploadUrl:{type:String,default:""},preserveLocalFiles:{type:Boolean,default:!1},accept:{type:String,default:"image/*"},inputFieldName:{type:String,default:"photos"},base64:{type:Boolean,default:!1},modelValue:{type:Array,default:()=>[]},recommendedText:{type:String,default:""}},emits:["change","remove","update:modelValue"],setup(s,{emit:r}){const i=s;let a=q([]);const t=q([]),n=q(null);q(null),q(null);function e(){a.value=[],i.modelValue&&i.modelValue.length?t.value=[...i.modelValue]:t.value=[]}function o($){return f.post(i.uploadUrl,$).then(I=>I.data).then(I=>I.map(z=>W(R({},z),{url:`/images/${z.id}`})))}function m($){o($).then(I=>{a=[].concat(I)}).catch(I=>{})}function p($){return new Promise((I,z)=>{const V=new FileReader;V.readAsDataURL($),V.onload=()=>I(V.result),V.onerror=L=>z(L)})}function k($,I,z){if(!I.length||(i.multiple?r("change",$,I,z):i.base64?p(I[0]).then(L=>{r("change",$,L,z,I[0])}):r("change",$,I[0],z),i.preserveLocalFiles||(t.value=[]),Array.from(Array(I.length).keys()).forEach(L=>{const G=I[L];Ze.isImageFile(G.type)?p(G).then(me=>{t.value.push({fileObject:G,type:G.type,name:G.name,image:me})}):t.value.push({fileObject:G,type:G.type,name:G.name})}),r("update:modelValue",t.value),!i.autoProcess))return;const V=new FormData;Array.from(Array(I.length).keys()).forEach(L=>{V.append($,I[L],I[L].name)}),m(V)}function x(){n.value&&n.value.click()}function b($){t.value=[],r("remove",$)}function h($){t.value.splice($,1)}function E(){return new URL("/build/img/default-avatar.jpg",self.location)}return ze(()=>{e()}),ge(()=>i.modelValue,$=>{t.value=[...$]}),($,I)=>{const z=C("BaseIcon");return l(),_("form",{enctype:"multipart/form-data",class:A(["relative flex items-center justify-center p-2 border-2 border-dashed rounded-md cursor-pointer avatar-upload border-gray-200 transition-all duration-300 ease-in-out isolate w-full hover:border-gray-300 group min-h-[100px] bg-gray-50",s.avatar?"w-32 h-32":"w-full"])},[c("input",{id:"file-upload",ref:(V,L)=>{L.inputRef=V,n.value=V},type:"file",tabindex:"-1",multiple:s.multiple,name:s.inputFieldName,accept:s.accept,class:"absolute z-10 w-full h-full opacity-0 cursor-pointer",onChange:I[0]||(I[0]=V=>k(V.target.name,V.target.files,V.target.files.length))},null,40,Lx),!t.value.length&&s.avatar?(l(),_("div",Ux,[c("img",{src:E(),class:"rounded",alt:"Default Avatar"},null,8,Kx),c("a",{href:"#",class:"absolute z-30 bg-white rounded-full -bottom-3 -right-3 group",onClick:re(x,["prevent","stop"])},[u(z,{name:"PlusCircleIcon",class:"h-8 text-xl leading-6 text-primary-500 group-hover:text-primary-600"})],8,qx)])):t.value.length?t.value.length&&s.avatar&&!s.multiple?(l(),_("div",Xx,[t.value[0].image?(l(),_("img",{key:0,for:"file-upload",src:t.value[0].image,class:"block object-cover w-full h-full rounded opacity-100",style:{animation:"fadeIn 2s ease"}},null,8,Qx)):(l(),_("div",ez,[tz,t.value[0].name?(l(),_("p",az,w(t.value[0].name),1)):S("",!0)])),c("a",{href:"#",class:"box-border absolute z-30 flex items-center justify-center w-8 h-8 bg-white border border-gray-200 rounded-full shadow-md -bottom-3 -right-3 group hover:border-gray-300",onClick:I[1]||(I[1]=re(V=>b(t.value[0]),["prevent","stop"]))},[u(z,{name:"XIcon",class:"h-4 text-xl leading-6 text-black"})])])):t.value.length&&s.multiple?(l(),_("div",sz,[(l(!0),_(Q,null,ae(t.value,(V,L)=>(l(),_("a",{key:V,href:"#",class:"block p-2 m-2 bg-white border border-gray-200 rounded hover:border-gray-500 relative max-w-md",onClick:I[2]||(I[2]=re(()=>{},["prevent"]))},[V.image?(l(),_("img",{key:0,for:"file-upload",src:V.image,class:"block object-cover w-20 h-20 opacity-100",style:{animation:"fadeIn 2s ease"}},null,8,nz)):(l(),_("div",iz,[oz,V.name?(l(),_("p",rz,w(V.name),1)):S("",!0)])),c("a",{href:"#",class:"box-border absolute z-30 flex items-center justify-center w-8 h-8 bg-white border border-gray-200 rounded-full shadow-md -bottom-3 -right-3 group hover:border-gray-300",onClick:re(G=>h(L),["prevent","stop"])},[u(z,{name:"XIcon",class:"h-4 text-xl leading-6 text-black"})],8,dz)]))),128))])):(l(),_("div",lz,[(l(!0),_(Q,null,ae(t.value,(V,L)=>(l(),_("a",{key:V,href:"#",class:"block p-2 m-2 bg-white border border-gray-200 rounded hover:border-gray-500 relative max-w-md",onClick:I[3]||(I[3]=re(()=>{},["prevent"]))},[V.image?(l(),_("img",{key:0,for:"file-upload",src:V.image,class:"block object-contain h-20 opacity-100 min-w-[5rem]",style:{animation:"fadeIn 2s ease"}},null,8,cz)):(l(),_("div",_z,[uz,V.name?(l(),_("p",mz,w(V.name),1)):S("",!0)])),c("a",{href:"#",class:"box-border absolute z-30 flex items-center justify-center w-8 h-8 bg-white border border-gray-200 rounded-full shadow-md -bottom-3 -right-3 group hover:border-gray-300",onClick:re(G=>h(L),["prevent","stop"])},[u(z,{name:"XIcon",class:"h-4 text-xl leading-6 text-black"})],8,pz)]))),128))])):(l(),_("div",Zx,[u(z,{name:"CloudUploadIcon",class:"h-6 mb-2 text-xl leading-6 text-gray-400"}),c("p",Wx,[Hx,c("a",{class:"cursor-pointer text-primary-500 hover:text-primary-600 hover:font-medium relative z-20",href:"#",onClick:re(x,["prevent","stop"])}," browse ",8,Gx),Yx]),c("p",Jx,w(s.recommendedText),1)]))],2)}}};var fz=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:gz});const hz={class:"relative z-10 p-4 md:p-8 bg-gray-200 rounded"},vz={props:{show:{type:Boolean,default:!1},rowOnXl:{type:Boolean,default:!1}},emits:["clear"],setup(s){return(r,i)=>(l(),T(Ee,{"enter-active-class":"transition duration-500 ease-in-out","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition ease-in-out","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:g(()=>[xe(c("div",hz,[F(r.$slots,"filter-header"),c("label",{class:"absolute text-sm leading-snug text-gray-900 cursor-pointer hover:text-gray-700 top-2.5 right-3.5",onClick:i[0]||(i[0]=a=>r.$emit("clear"))},w(r.$t("general.clear_all")),1),c("div",{class:A(["flex flex-col space-y-3",s.rowOnXl?"xl:flex-row xl:space-x-4 xl:space-y-0 xl:items-center":"lg:flex-row lg:space-x-4 lg:space-y-0 lg:items-center"])},[F(r.$slots,"default")],2)],512),[[dt,s.show]])]),_:3}))}};var yz=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:vz});const bz={style:{"font-family":"sans-serif"}},kz={props:{amount:{type:[Number,String],required:!0},currency:{type:Object,default:()=>null}},setup(s){const r=s,i=ra("utils"),a=_e(),t=D(()=>i.formatMoney(r.amount,r.currency||a.selectedCompanyCurrency));return(n,e)=>(l(),_("span",bz,w(d(t)),1))}};var wz=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:kz});const xz={viewBox:"0 0 225 50",fill:"none",xmlns:"http://www.w3.org/2000/svg"},zz=lt('',9),Sz={id:"paint0_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},jz=["stop-color"],Pz=["stop-color"],Dz={id:"paint1_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},Cz=["stop-color"],Az=["stop-color"],Ez={id:"paint2_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},Nz=["stop-color"],Tz=["stop-color"],Iz={id:"paint3_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},$z=["stop-color"],Rz=["stop-color"],Fz={id:"paint4_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},Mz=["stop-color"],Vz=["stop-color"],Bz={id:"paint5_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},Oz=["stop-color"],Lz=["stop-color"],Uz={id:"paint6_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},Kz=["stop-color"],qz=["stop-color"],Zz={id:"paint7_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},Wz=["stop-color"],Hz=["stop-color"],Gz={id:"paint8_linear_499_29",x1:"-2.72961e-07",y1:"22.9922",x2:"224.397",y2:"22.9922",gradientUnits:"userSpaceOnUse"},Yz=["stop-color"],Jz=["stop-color"],Xz={props:{darkColor:{type:String,default:"rgba(var(--color-primary-500), var(--tw-text-opacity))"},lightColor:{type:String,default:"rgba(var(--color-primary-400), var(--tw-text-opacity))"}},setup(s){return(r,i)=>(l(),_("svg",xz,[zz,c("defs",null,[c("linearGradient",Sz,[c("stop",{"stop-color":s.darkColor},null,8,jz),c("stop",{offset:"1","stop-color":s.lightColor},null,8,Pz)]),c("linearGradient",Dz,[c("stop",{"stop-color":s.darkColor},null,8,Cz),c("stop",{offset:"1","stop-color":s.lightColor},null,8,Az)]),c("linearGradient",Ez,[c("stop",{"stop-color":s.darkColor},null,8,Nz),c("stop",{offset:"1","stop-color":s.lightColor},null,8,Tz)]),c("linearGradient",Iz,[c("stop",{"stop-color":s.darkColor},null,8,$z),c("stop",{offset:"1","stop-color":s.lightColor},null,8,Rz)]),c("linearGradient",Fz,[c("stop",{"stop-color":s.darkColor},null,8,Mz),c("stop",{offset:"1","stop-color":s.lightColor},null,8,Vz)]),c("linearGradient",Bz,[c("stop",{"stop-color":s.darkColor},null,8,Oz),c("stop",{offset:"1","stop-color":s.lightColor},null,8,Lz)]),c("linearGradient",Uz,[c("stop",{"stop-color":s.darkColor},null,8,Kz),c("stop",{offset:"1","stop-color":s.lightColor},null,8,qz)]),c("linearGradient",Zz,[c("stop",{"stop-color":s.darkColor},null,8,Wz),c("stop",{offset:"1","stop-color":s.lightColor},null,8,Hz)]),c("linearGradient",Gz,[c("stop",{"stop-color":s.darkColor},null,8,Yz),c("stop",{offset:"1","stop-color":s.lightColor},null,8,Jz)])])]))}};const Qz={class:"flex flex-col items-center justify-center h-screen h-screen-ios"},eS={class:"loader loader-white"},tS=lt('
',3),aS={props:{showBgOverlay:{default:!1,type:Boolean}},setup(s){return(r,i)=>(l(),_("div",Qz,[c("div",eS,[tS,u(Xz,{class:"absolute block h-auto max-w-full transform -translate-x-1/2 -translate-y-1/2 w-28 text-primary-400 top-1/2 left-1/2",alt:"Crater Logo"})])]))}};var sS=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:aS});const nS={props:{type:{type:String,default:"section-title",validator:function(s){return["section-title","heading-title"].indexOf(s)!==-1}}},setup(s){const r=s,i=D(()=>({"text-gray-900 text-lg font-medium":r.type==="heading-title","text-gray-500 uppercase text-base":r.type==="section-title"}));return(a,t)=>(l(),_("h6",{class:A(d(i))},[F(a.$slots,"default")],2))}};var iS=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:nS});const oS={props:{name:{type:String,required:!0}},setup(s){const r=q(!1);return ze(()=>{r.value=!0}),(i,a)=>r.value?(l(),T(da(d(la)[s.name]),{key:0,class:"h-5 w-5"})):S("",!0)}};var rS=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:oS});const dS={class:"rounded-md bg-yellow-50 p-4 relative"},lS={class:"flex flex-col"},cS={class:"flex"},_S={class:"shrink-0"},uS={class:"ml-3"},mS={class:"text-sm font-medium text-yellow-800"},pS={class:"mt-2 text-sm text-yellow-700"},gS={role:"list",class:"list-disc pl-5 space-y-1"},fS={key:0,class:"mt-4 ml-3"},hS={class:"-mx-2 -my-1.5 flex flex-row-reverse"},vS=["onClick"],yS={props:{title:{type:String,default:"There were some errors with your submission"},lists:{type:Array,default:null},actions:{type:Array,default:()=>["Dismiss"]}},emits:["hide"],setup(s,{emit:r}){return(i,a)=>{const t=C("BaseIcon");return l(),_("div",dS,[u(t,{name:"XIcon",class:"h-5 w-5 text-yellow-500 absolute right-4 cursor-pointer",onClick:a[0]||(a[0]=n=>i.$emit("hide"))}),c("div",lS,[c("div",cS,[c("div",_S,[u(t,{name:"ExclamationIcon",class:"h-5 w-5 text-yellow-400","aria-hidden":"true"})]),c("div",uS,[c("h3",mS,w(s.title),1),c("div",pS,[c("ul",gS,[(l(!0),_(Q,null,ae(s.lists,(n,e)=>(l(),_("li",{key:e},w(n),1))),128))])])])]),s.actions.length?(l(),_("div",fS,[c("div",hS,[(l(!0),_(Q,null,ae(s.actions,(n,e)=>(l(),_("button",{key:e,type:"button",class:"bg-yellow-50 px-2 py-1.5 rounded-md text-sm font-medium text-yellow-800 hover:bg-yellow-100 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-offset-yellow-50 focus:ring-yellow-600 mr-3",onClick:o=>i.$emit(`${n}`)},w(n),9,vS))),128))])])):S("",!0)])])}}};var bS=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:yS});const kS={key:0,class:"absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none"},wS=c("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),xS=c("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1),zS=[wS,xS],SS={key:1,class:"absolute inset-y-0 left-0 flex items-center pl-3"},jS={key:2,class:"inline-flex items-center px-3 text-gray-500 border border-r-0 border-gray-200 rounded-l-md bg-gray-50 sm:text-sm"},PS={key:3,class:"absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none"},DS={class:"text-gray-500 sm:text-sm"},CS=["type","value","disabled"],AS={key:4,class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none"},ES=c("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),NS=c("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1),TS=[ES,NS],IS={key:5,class:"absolute inset-y-0 right-0 flex items-center pr-3"},$S={props:{contentLoading:{type:Boolean,default:!1},type:{type:[Number,String],default:"text"},modelValue:{type:[String,Number],default:""},loading:{type:Boolean,default:!1},loadingPosition:{type:String,default:"left"},addon:{type:String,default:null},inlineAddon:{type:String,default:""},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},containerClass:{type:String,default:""},contentLoadClass:{type:String,default:""},defaultInputClass:{type:String,default:"font-base block w-full sm:text-sm border-gray-200 rounded-md text-black"},iconLeftClass:{type:String,default:"h-5 w-5 text-gray-400"},iconRightClass:{type:String,default:"h-5 w-5 text-gray-400"},modelModifiers:{default:()=>({})}},emits:["update:modelValue"],setup(s,{emit:r}){const i=s;q(!1);const a=pe(),t=D(()=>!!a.left||i.loading&&i.loadingPosition==="left"),n=D(()=>!!a.right||i.loading&&i.loadingPosition==="right"),e=D(()=>t.value&&n.value?"px-10":t.value?"pl-10":n.value?"pr-10":""),o=D(()=>i.addon?"flex-1 min-w-0 block w-full px-3 py-2 !rounded-none !rounded-r-md":i.inlineAddon?"pl-7":""),m=D(()=>i.invalid?"border-red-500 ring-red-500 focus:ring-red-500 focus:border-red-500":"focus:ring-primary-400 focus:border-primary-400"),p=D(()=>i.disabled?"border-gray-100 bg-gray-100 !text-gray-400 ring-gray-200 focus:ring-gray-200 focus:border-gray-100":""),k=D(()=>{let b=`${i.containerClass} `;return i.addon?`${i.containerClass} flex`:b});function x(b){let h=b.target.value;i.modelModifiers.uppercase&&(h=h.toUpperCase()),r("update:modelValue",h)}return(b,h)=>{const E=C("BaseContentPlaceholdersBox"),$=C("BaseContentPlaceholders");return s.contentLoading?(l(),T($,{key:0},{default:g(()=>[u(E,{rounded:!0,class:A(`w-full ${s.contentLoadClass}`),style:{height:"38px"}},null,8,["class"])]),_:1})):(l(),_("div",{key:1,class:A([[s.containerClass,d(k)],"relative rounded-md shadow-sm font-base"])},[s.loading&&s.loadingPosition==="left"?(l(),_("div",kS,[(l(),_("svg",{class:A(["animate-spin !text-primary-500",[s.iconLeftClass]]),xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},zS,2))])):d(t)?(l(),_("div",SS,[F(b.$slots,"left",{class:A(s.iconLeftClass)})])):S("",!0),s.addon?(l(),_("span",jS,w(s.addon),1)):S("",!0),s.inlineAddon?(l(),_("div",PS,[c("span",DS,w(s.inlineAddon),1)])):S("",!0),c("input",le(b.$attrs,{type:s.type,value:s.modelValue,disabled:s.disabled,class:[s.defaultInputClass,d(e),d(o),d(m),d(p)],onInput:x}),null,16,CS),s.loading&&s.loadingPosition==="right"?(l(),_("div",AS,[(l(),_("svg",{class:A(["animate-spin !text-primary-500",[s.iconRightClass]]),xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},TS,2))])):S("",!0),d(n)?(l(),_("div",IS,[F(b.$slots,"right",{class:A(s.iconRightClass)})])):S("",!0)],2))}}};var RS=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:$S});const FS={props:{layout:{type:String,default:"two-column"}},setup(s){const r=s,i=D(()=>r.layout==="two-column"?"grid gap-y-6 gap-x-4 grid-cols-1 md:grid-cols-2":"grid gap-y-6 gap-x-4 grid-cols-1");return(a,t)=>(l(),_("div",{class:A(d(i))},[F(a.$slots,"default")],2))}};var MS=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:FS});const VS={class:"text-sm text-red-500"},BS={key:0,class:"text-gray-500 text-xs mt-1 font-light"},OS={key:1,class:"block mt-0.5 text-sm text-red-500"},LS={props:{contentLoading:{type:Boolean,default:!1},contentLoadClass:{type:String,default:"w-16 h-5"},label:{type:String,default:""},variant:{type:String,default:"vertical"},error:{type:[String,Boolean],default:null},required:{type:Boolean,default:!1},tooltip:{type:String,default:null,required:!1},helpText:{type:String,default:null,required:!1}},setup(s){const r=s,i=D(()=>r.variant==="horizontal"?"grid md:grid-cols-12 items-center":""),a=D(()=>r.variant==="horizontal"?"relative pr-0 pt-1 mr-3 text-sm md:col-span-4 md:text-right mb-1 md:mb-0":""),t=D(()=>r.variant==="horizontal"?"md:col-span-8 md:col-start-5 md:col-ends-12":"flex flex-col mt-1"),n=pe(),e=D(()=>!!n.labelRight);return(o,m)=>{const p=C("BaseContentPlaceholdersText"),k=C("BaseContentPlaceholders"),x=C("BaseIcon"),b=et("tooltip");return l(),_("div",{class:A([d(i),"relative w-full text-left"])},[s.contentLoading?(l(),T(k,{key:0},{default:g(()=>[u(p,{lines:1,class:A(s.contentLoadClass)},null,8,["class"])]),_:1})):s.label?(l(),_("label",{key:1,class:A([d(a),"flex text-sm not-italic items-center font-medium text-gray-800 whitespace-nowrap justify-between"])},[c("div",null,[K(w(s.label)+" ",1),xe(c("span",VS," * ",512),[[dt,s.required]])]),d(e)?F(o.$slots,"labelRight",{key:0}):S("",!0),s.tooltip?xe((l(),T(x,{key:1,name:"InformationCircleIcon",class:"h-4 text-gray-400 cursor-pointer hover:text-gray-600"},null,512)),[[b,{content:s.tooltip}]]):S("",!0)],2)):S("",!0),c("div",{class:A(d(t))},[F(o.$slots,"default"),s.helpText?(l(),_("span",BS,w(s.helpText),1)):S("",!0),s.error?(l(),_("span",OS,w(s.error),1)):S("",!0)],2)],2)}}};var US=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:LS});const KS={props:{status:{type:String,required:!1,default:""}},setup(s){return{badgeColorClasses:D(()=>{switch(s.status){case"DRAFT":return"bg-yellow-300 bg-opacity-25 px-2 py-1 text-sm text-yellow-800 uppercase font-normal text-center";case"SENT":return" bg-yellow-500 bg-opacity-25 px-2 py-1 text-sm text-yellow-900 uppercase font-normal text-center ";case"VIEWED":return"bg-blue-400 bg-opacity-25 px-2 py-1 text-sm text-blue-900 uppercase font-normal text-center";case"COMPLETED":return"bg-green-500 bg-opacity-25 px-2 py-1 text-sm text-green-900 uppercase font-normal text-center";case"DUE":return"bg-yellow-500 bg-opacity-25 px-2 py-1 text-sm text-yellow-900 uppercase font-normal text-center";case"OVERDUE":return"bg-red-300 bg-opacity-50 px-2 py-1 text-sm text-red-900 uppercase font-normal text-center";case"UNPAID":return"bg-yellow-500 bg-opacity-25 px-2 py-1 text-sm text-yellow-900 uppercase font-normal text-center";case"PARTIALLY_PAID":return"bg-blue-400 bg-opacity-25 px-2 py-1 text-sm text-blue-900 uppercase font-normal text-center";case"PAID":return"bg-green-500 bg-opacity-25 px-2 py-1 text-sm text-green-900 uppercase font-normal text-center";default:return"bg-gray-500 bg-opacity-25 px-2 py-1 text-sm text-gray-900 uppercase font-normal text-center"}})}}};function qS(s,r,i,a,t,n){return l(),_("span",{class:A(a.badgeColorClasses)},[F(s.$slots,"default")],2)}var ZS=ee(KS,[["render",qS]]),WS=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:ZS});const HS={class:"flex-1 text-sm"},GS={key:0,class:"relative flex items-center h-10 pl-2 bg-gray-200 border border-gray-200 border-solid rounded"},YS={class:"w-full pt-1 text-xs text-light"},JS={key:0},XS={class:"text-red-600"},QS={props:{contentLoading:{type:Boolean,default:!1},type:{type:String,default:null},item:{type:Object,required:!0},index:{type:Number,default:0},invalid:{type:Boolean,required:!1,default:!1},invalidDescription:{type:Boolean,required:!1,default:!1},taxPerItem:{type:String,default:""},taxes:{type:Array,default:null},store:{type:Object,default:null},storeProp:{type:String,default:""}},emits:["search","select"],setup(s,{emit:r}){const i=s,a=Fe();He(),Me();const t=Pe(),n=je();fe();const{t:e}=Se(),o=q(null);q(!1);let m=Be(R({},i.item));Object.assign(m,i.item),D(()=>0);const p=D({get:()=>i.item.description,set:h=>{i.store[i.storeProp].items[i.index].description=h}});async function k(h){return(await a.fetchItems({search:h})).data.data}function x(){t.openModal({title:e("items.add_item"),componentName:"ItemModal",refreshData:h=>r("select",h),data:{taxPerItem:i.taxPerItem,taxes:i.taxes,itemIndex:i.index,store:i.store,storeProps:i.storeProp}})}function b(h){i.store.deselectItem(h)}return(h,E)=>{const $=C("BaseIcon"),I=C("BaseSelectAction"),z=C("BaseMultiselect"),V=C("BaseTextarea");return l(),_("div",HS,[s.item.item_id?(l(),_("div",GS,[K(w(s.item.name)+" ",1),c("span",{class:"absolute text-gray-400 cursor-pointer top-[8px] right-[10px]",onClick:E[0]||(E[0]=L=>b(s.index))},[u($,{name:"XCircleIcon"})])])):(l(),T(z,{key:1,modelValue:o.value,"onUpdate:modelValue":[E[1]||(E[1]=L=>o.value=L),E[2]||(E[2]=L=>h.$emit("select",L))],"content-loading":s.contentLoading,"value-prop":"id","track-by":"id",invalid:s.invalid,"preserve-search":"","initial-search":d(m).name,label:"name",filterResults:!1,"resolve-on-load":"",delay:500,searchable:"",options:k,object:"",onSearchChange:E[3]||(E[3]=L=>h.$emit("search",L))},{action:g(()=>[d(n).hasAbilities(d(O).CREATE_ITEM)?(l(),T(I,{key:0,onClick:x},{default:g(()=>[u($,{name:"PlusCircleIcon",class:"h-4 mr-2 -ml-2 text-center text-primary-400"}),K(" "+w(h.$t("general.add_new_item")),1)]),_:1})):S("",!0)]),_:1},8,["modelValue","content-loading","invalid","initial-search"])),c("div",YS,[u(V,{modelValue:d(p),"onUpdate:modelValue":E[4]||(E[4]=L=>J(p)?p.value=L:null),"content-loading":s.contentLoading,autosize:!0,class:"text-xs",borderless:!0,placeholder:h.$t("estimates.item.type_item_description"),invalid:s.invalidDescription},null,8,["modelValue","content-loading","placeholder","invalid"]),s.invalidDescription?(l(),_("div",JS,[c("span",XS,w(h.$tc("validation.description_maxlength")),1)])):S("",!0)])])}}};var ej=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:QS});const tj={},aj={class:"text-sm not-italic font-medium leading-5 text-primary-800"};function sj(s,r){return l(),_("label",aj,[F(s.$slots,"default")])}var nj=ee(tj,[["render",sj]]),ij=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:nj});const oj={class:"flex items-end justify-center min-h-screen min-h-screen-ios px-4 text-center sm:block sm:px-2"},rj=c("span",{class:"hidden sm:inline-block sm:align-middle sm:h-screen sm:h-screen-ios","aria-hidden":"true"},"\u200B",-1),dj={key:0,class:"flex items-center justify-between px-6 py-4 text-lg font-medium text-black border-b border-gray-200 border-solid"},lj={props:{show:{type:Boolean,default:!1}},emits:["close","open"],setup(s,{emit:r}){const i=s,a=pe(),t=Pe();rt(()=>{i.show&&r("open",i.show)});const n=D(()=>{switch(t.size){case"sm":return"sm:max-w-2xl w-full";case"md":return"sm:max-w-4xl w-full";case"lg":return"sm:max-w-6xl w-full";default:return"sm:max-w-2xl w-full"}}),e=D(()=>!!a.header);return(o,m)=>(l(),T(ca,{to:"body"},[u(d(ot),{appear:"",as:"template",show:s.show},{default:g(()=>[u(d(it),{as:"div",static:"",class:"fixed inset-0 z-20 overflow-y-auto",open:s.show,onClose:m[0]||(m[0]=p=>o.$emit("close"))},{default:g(()=>[c("div",oj,[u(d(Ne),{as:"template",enter:"ease-out duration-300","enter-from":"opacity-0","enter-to":"opacity-100",leave:"ease-in duration-200","leave-from":"opacity-100","leave-to":"opacity-0"},{default:g(()=>[u(d(nt),{class:"fixed inset-0 transition-opacity bg-gray-700 bg-opacity-25"})]),_:1}),rj,u(d(Ne),{as:"template",enter:"ease-out duration-300","enter-from":"opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95","enter-to":"opacity-100 translate-y-0 sm:scale-100",leave:"ease-in duration-200","leave-from":"opacity-100 translate-y-0 sm:scale-100","leave-to":"opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"},{default:g(()=>[c("div",{class:A(`inline-block - align-middle - bg-white - rounded-lg - text-left - overflow-hidden - relative - shadow-xl - transition-all - my-4 - ${d(n)} - sm:w-full - border-t-8 border-solid rounded shadow-xl border-primary-500`)},[d(e)?(l(),_("div",dj,[F(o.$slots,"header")])):S("",!0),F(o.$slots,"default"),F(o.$slots,"footer")],2)]),_:3})])]),_:3},8,["open"])]),_:3},8,["show"])]))}};var cj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:lj});const _j={props:{contentLoading:{type:Boolean,default:!1},modelValue:{type:[String,Number],required:!0,default:""},invalid:{type:Boolean,default:!1},inputClass:{type:String,default:"font-base block w-full sm:text-sm border-gray-200 rounded-md text-black"},disabled:{type:Boolean,default:!1},percent:{type:Boolean,default:!1},currency:{type:Object,default:null}},emits:["update:modelValue"],setup(s,{emit:r}){const i=s;let a=_a;const t=_e();let n=!1;const e=D({get:()=>i.modelValue,set:p=>{if(!n){n=!0;return}r("update:modelValue",p)}}),o=D(()=>{const p=i.currency?i.currency:t.selectedCompanyCurrency;return{decimal:p.decimal_separator,thousands:p.thousand_separator,prefix:p.symbol+" ",precision:p.precision,masked:!1}}),m=D(()=>i.invalid?"border-red-500 ring-red-500 focus:ring-red-500 focus:border-red-500":"focus:ring-primary-400 focus:border-primary-400");return(p,k)=>{const x=C("BaseContentPlaceholdersBox"),b=C("BaseContentPlaceholders");return s.contentLoading?(l(),T(b,{key:0},{default:g(()=>[u(x,{rounded:!0,class:"w-full",style:{height:"38px"}})]),_:1})):(l(),T(d(a),le({key:1,modelValue:d(e),"onUpdate:modelValue":k[0]||(k[0]=h=>J(e)?e.value=h:null)},d(o),{class:[s.inputClass,d(m)],disabled:s.disabled}),null,16,["modelValue","class","disabled"]))}}};var uj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:_j});const mj={props:{sucess:{type:Boolean,default:!1}},setup(s){return(r,i)=>(l(),_("span",{class:A([s.sucess?"bg-green-100 text-green-700 ":"bg-red-100 text-red-700","px-2 py-1 text-sm font-normal text-center uppercase"])},[F(r.$slots,"default")],2))}};var pj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:mj});const gj={},fj={class:"flex-1 p-4 md:p-8 flex flex-col"};function hj(s,r){return l(),_("div",fj,[F(s.$slots,"default")])}var vj=ee(gj,[["render",hj]]),yj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:vj});const bj={class:"flex flex-wrap justify-between"},kj={class:"text-2xl font-bold text-left text-black"},wj={class:"flex items-center"},xj={props:{title:{type:[String],default:"",required:!0}},setup(s){return(r,i)=>(l(),_("div",bj,[c("div",null,[c("h3",kj,w(s.title),1),F(r.$slots,"default")]),c("div",wj,[F(r.$slots,"actions")])]))}};var zj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:xj});const Sj={props:{status:{type:String,required:!1,default:""},defaultClass:{type:String,default:"px-1 py-0.5 text-xs"}},setup(s){return{badgeColorClasses:D(()=>{switch(s.status){case"PAID":return"bg-primary-300 bg-opacity-25 text-primary-800 uppercase font-normal text-center";case"UNPAID":return" bg-yellow-500 bg-opacity-25 text-yellow-900 uppercase font-normal text-center ";case"PARTIALLY_PAID":return"bg-blue-400 bg-opacity-25 text-blue-900 uppercase font-normal text-center";default:return"bg-gray-500 bg-opacity-25 text-gray-900 uppercase font-normal text-center"}})}}};function jj(s,r,i,a,t,n){return l(),_("span",{class:A([[a.badgeColorClasses,i.defaultClass],""])},[F(s.$slots,"default")],2)}var Pj=ee(Sj,[["render",jj]]),Dj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Pj});const Cj=K(" Privacy setting "),Aj={class:"-space-y-px rounded-md"},Ej={class:"relative flex cursor-pointer focus:outline-none"},Nj=c("span",{class:"rounded-full bg-white w-1.5 h-1.5"},null,-1),Tj=[Nj],Ij={class:"flex flex-col ml-3"},$j={props:{id:{type:[String,Number],required:!1,default:()=>`radio_${Math.random().toString(36).substr(2,9)}`},label:{type:String,default:""},modelValue:{type:[String,Number],default:""},value:{type:[String,Number],default:""},name:{type:[String,Number],default:""},checkedStateClass:{type:String,default:"bg-primary-600"},unCheckedStateClass:{type:String,default:"bg-white "},optionGroupActiveStateClass:{type:String,default:"ring-2 ring-offset-2 ring-primary-500"},checkedStateLabelClass:{type:String,default:"text-primary-900 "},unCheckedStateLabelClass:{type:String,default:"text-gray-900"},optionGroupClass:{type:String,default:"h-4 w-4 mt-0.5 cursor-pointer rounded-full border flex items-center justify-center"},optionGroupLabelClass:{type:String,default:"block text-sm font-light"}},emits:["update:modelValue"],setup(s,{emit:r}){const i=s,a=D({get:()=>i.modelValue,set:t=>r("update:modelValue",t)});return(t,n)=>(l(),T(d(ma),{modelValue:d(a),"onUpdate:modelValue":n[0]||(n[0]=e=>J(a)?a.value=e:null)},{default:g(()=>[u(d(ct),{class:"sr-only"},{default:g(()=>[Cj]),_:1}),c("div",Aj,[u(d(ua),le({id:s.id,as:"template",value:s.value,name:s.name},t.$attrs),{default:g(({checked:e,active:o})=>[c("div",Ej,[c("span",{class:A([e?s.checkedStateClass:s.unCheckedStateClass,o?s.optionGroupActiveStateClass:"",s.optionGroupClass]),"aria-hidden":"true"},Tj,2),c("div",Ij,[u(d(ct),{as:"span",class:A([e?s.checkedStateLabelClass:s.unCheckedStateLabelClass,s.optionGroupLabelClass])},{default:g(()=>[K(w(s.label),1)]),_:2},1032,["class"])])])]),_:1},16,["id","value","name"])])]),_:1},8,["modelValue"]))}};var Rj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:$j});const Fj={name:"StarsRating",components:{},directives:{},props:{config:{type:Object,default:null},rating:{type:[Number],default:0}},data:function(){return{stars:[],emptyStar:0,fullStar:1,totalStars:5,isIndicatorActive:!1,style:{fullStarColor:"#F1C644",emptyStarColor:"#D4D4D4",starWidth:20,starHeight:20}}},computed:{getStarPoints:function(){let s=this.style.starWidth/2,r=this.style.starHeight/2,i=5,a=this.style.starWidth/i,n=a*2.5;return this.calcStarPoints(s,r,i,a,n)}},created(){this.initStars(),this.setStars(),this.setConfigData()},methods:{calcStarPoints(s,r,i,a,t){let n=Math.PI/i,e=60,o=i*2,m="";for(let p=0;p(l(),_("div",{key:o,title:i.rating,class:"star-container"},[(l(),_("svg",{style:Ce([{fill:`url(#gradient${e.raw})`},{width:s.style.starWidth},{height:s.style.starHeight}]),class:"star-svg"},[c("polygon",{points:n.getStarPoints,style:{"fill-rule":"nonzero"}},null,8,Bj),c("defs",null,[c("linearGradient",{id:`gradient${e.raw}`},[c("stop",{id:"stop1",offset:e.percent,"stop-color":n.getFullFillColor(e),"stop-opacity":"1"},null,8,Lj),c("stop",{id:"stop2",offset:e.percent,"stop-color":n.getFullFillColor(e),"stop-opacity":"0"},null,8,Uj),c("stop",{id:"stop3",offset:e.percent,"stop-color":s.style.emptyStarColor,"stop-opacity":"1"},null,8,Kj),c("stop",{id:"stop4","stop-color":s.style.emptyStarColor,offset:"100%","stop-opacity":"1"},null,8,qj)],8,Oj)])],4))],8,Vj))),128)),s.isIndicatorActive?(l(),_("div",Zj,w(i.rating),1)):S("",!0)])}var Hj=ee(Fj,[["render",Wj],["__scopeId","data-v-52311750"]]),Gj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Hj});const Yj={props:{status:{type:String,required:!1,default:""}},setup(s){return{badgeColorClasses:D(()=>{switch(s.status){case"COMPLETED":return"bg-green-500 bg-opacity-25 px-2 py-1 text-sm text-green-900 uppercase font-normal text-center";case"ON_HOLD":return"bg-yellow-500 bg-opacity-25 px-2 py-1 text-sm text-yellow-900 uppercase font-normal text-center";case"ACTIVE":return"bg-blue-400 bg-opacity-25 px-2 py-1 text-sm text-blue-900 uppercase font-normal text-center";default:return"bg-gray-500 bg-opacity-25 px-2 py-1 text-sm text-gray-900 uppercase font-normal text-center"}})}}};function Jj(s,r,i,a,t,n){return l(),_("span",{class:A(a.badgeColorClasses)},[F(s.$slots,"default")],2)}var Xj=ee(Yj,[["render",Jj]]),Qj=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:Xj});const eP={},tP={class:"flex flex-col"},aP={class:"-my-2 overflow-x-auto sm:-mx-6 lg:-mx-8"},sP={class:"py-2 align-middle inline-block min-w-full sm:px-4 lg:px-6"},nP={class:"overflow-hidden sm:px-2 lg:p-2"};function iP(s,r){return l(),_("div",tP,[c("div",aP,[c("div",sP,[c("div",nP,[F(s.$slots,"default")])])])])}var oP=ee(eP,[["render",iP]]),rP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:oP});const dP={},lP={class:"flex items-center justify-center w-full px-6 py-2 text-sm bg-gray-200 cursor-pointer text-primary-400"};function cP(s,r){return l(),_("div",lP,[F(s.$slots,"default")])}var _P=ee(dP,[["render",cP]]),uP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:_P});const mP={class:"relative"},pP={key:0,class:"block truncate"},gP={key:1,class:"block text-gray-400 truncate"},fP={key:2,class:"block text-gray-400 truncate"},hP={class:"absolute inset-y-0 right-0 flex items-center pr-2 pointer-events-none"},vP={props:{contentLoading:{type:Boolean,default:!1},modelValue:{type:[String,Number,Boolean,Object,Array],default:""},options:{type:Array,required:!0},label:{type:String,default:""},placeholder:{type:String,default:""},labelKey:{type:[String],default:"label"},valueProp:{type:String,default:null},multiple:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(s,{emit:r}){const i=s;let a=q(i.modelValue);function t(e){return typeof e=="object"&&e!==null}function n(e){return t(e)?e[i.labelKey]:e}return ge(()=>i.modelValue,()=>{i.valueProp&&i.options.length?a.value=i.options.find(e=>{if(e[i.valueProp])return e[i.valueProp]===i.modelValue}):a.value=i.modelValue}),ge(a,e=>{i.valueProp?r("update:modelValue",e[i.valueProp]):r("update:modelValue",e)}),(e,o)=>{const m=C("BaseContentPlaceholdersBox"),p=C("BaseContentPlaceholders"),k=C("BaseIcon");return s.contentLoading?(l(),T(p,{key:0},{default:g(()=>[u(m,{rounded:!0,class:"w-full h-10"})]),_:1})):(l(),T(d(va),le({key:1,modelValue:d(a),"onUpdate:modelValue":o[0]||(o[0]=x=>J(a)?a.value=x:a=x),as:"div"},R({},e.$attrs)),{default:g(()=>[s.label?(l(),T(d(pa),{key:0,class:"block text-sm not-italic font-medium text-gray-800 mb-0.5"},{default:g(()=>[K(w(s.label),1)]),_:1})):S("",!0),c("div",mP,[u(d(ga),{class:"relative w-full py-2 pl-3 pr-10 text-left bg-white border border-gray-200 rounded-md shadow-sm cursor-default focus:outline-none focus:ring-1 focus:ring-primary-500 focus:border-primary-500 sm:text-sm"},{default:g(()=>[n(d(a))?(l(),_("span",pP,w(n(d(a))),1)):s.placeholder?(l(),_("span",gP,w(s.placeholder),1)):(l(),_("span",fP," Please select an option ")),c("span",hP,[u(k,{name:"SelectorIcon",class:"text-gray-400","aria-hidden":"true"})])]),_:1}),u(Ee,{"leave-active-class":"transition duration-100 ease-in","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:g(()=>[u(d(fa),{class:"absolute z-10 w-full py-1 mt-1 overflow-auto text-base bg-white rounded-md shadow-lg max-h-60 ring-1 ring-black ring-opacity-5 focus:outline-none sm:text-sm"},{default:g(()=>[(l(!0),_(Q,null,ae(s.options,x=>(l(),T(d(ha),{key:x.id,value:x,as:"template"},{default:g(({active:b,selected:h})=>[c("li",{class:A([b?"text-white bg-primary-600":"text-gray-900","cursor-default select-none relative py-2 pl-3 pr-9"])},[c("span",{class:A([h?"font-semibold":"font-normal","block truncate"])},w(n(x)),3),h?(l(),_("span",{key:0,class:A([b?"text-white":"text-primary-600","absolute inset-y-0 right-0 flex items-center pr-4"])},[u(k,{name:"CheckIcon","aria-hidden":"true"})],2)):S("",!0)],2)]),_:2},1032,["value"]))),128)),F(e.$slots,"default")]),_:3})]),_:3})])]),_:3},16,["modelValue"]))}}};var yP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:vP});const bP={class:"flex flex-wrap justify-between lg:flex-nowrap mb-5"},kP={class:"font-medium text-lg text-left"},wP={class:"mt-2 text-sm leading-snug text-left text-gray-500 max-w-[680px]"},xP={class:"mt-4 lg:mt-0 lg:ml-2"},zP={props:{title:{type:String,required:!0},description:{type:String,required:!0}},setup(s){return(r,i)=>{const a=C("BaseCard");return l(),T(a,null,{default:g(()=>[c("div",bP,[c("div",null,[c("h6",kP,w(s.title),1),c("p",wP,w(s.description),1)]),c("div",xP,[F(r.$slots,"action")])]),F(r.$slots,"default")]),_:3})}}};var SP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:zP});const jP={},PP={class:"animate-spin",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},DP=c("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),CP=c("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1),AP=[DP,CP];function EP(s,r){return l(),_("svg",PP,AP)}var NP=ee(jP,[["render",EP]]),TP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:NP});const IP={class:"flex flex-row items-start"},$P={props:{labelLeft:{type:String,default:""},labelRight:{type:String,default:""},modelValue:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(s,{emit:r}){const i=s,a=D({get:()=>i.modelValue,set:t=>r("update:modelValue",t)});return(t,n)=>(l(),T(d(ut),null,{default:g(()=>[c("div",IP,[s.labelLeft?(l(),T(d(Oe),{key:0,class:"mr-4 cursor-pointer"},{default:g(()=>[K(w(s.labelLeft),1)]),_:1})):S("",!0),u(d(_t),le({modelValue:d(a),"onUpdate:modelValue":n[0]||(n[0]=e=>J(a)?a.value=e:null),class:[d(a)?"bg-primary-500":"bg-gray-300","relative inline-flex items-center h-6 transition-colors rounded-full w-11 focus:outline-none focus:ring-primary-500"]},t.$attrs),{default:g(()=>[c("span",{class:A([d(a)?"translate-x-6":"translate-x-1","inline-block w-4 h-4 transition-transform bg-white rounded-full"])},null,2)]),_:1},16,["modelValue","class"]),s.labelRight?(l(),T(d(Oe),{key:1,class:"ml-4 cursor-pointer"},{default:g(()=>[K(w(s.labelRight),1)]),_:1})):S("",!0)])]),_:1}))}};var RP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:$P});const FP={class:"flex flex-col"},MP={props:{title:{type:String,required:!0},description:{type:String,default:""},modelValue:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(s,{emit:r}){function i(a){r("update:modelValue",a)}return(a,t)=>(l(),T(d(ut),{as:"li",class:"py-4 flex items-center justify-between"},{default:g(()=>[c("div",FP,[u(d(Oe),{as:"p",class:"p-0 mb-1 text-sm leading-snug text-black font-medium",passive:""},{default:g(()=>[K(w(s.title),1)]),_:1}),u(d(ya),{class:"text-sm text-gray-500"},{default:g(()=>[K(w(s.description),1)]),_:1})]),u(d(_t),{disabled:s.disabled,"model-value":s.modelValue,class:A([s.modelValue?"bg-primary-500":"bg-gray-200","ml-4 relative inline-flex shrink-0 h-6 w-11 border-2 border-transparent rounded-full cursor-pointer transition-colors ease-in-out duration-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-500"]),"onUpdate:modelValue":i},{default:g(()=>[c("span",{"aria-hidden":"true",class:A([s.modelValue?"translate-x-5":"translate-x-0","inline-block h-5 w-5 rounded-full bg-white shadow ring-0 transition ease-in-out duration-200"])},null,2)]),_:1},8,["disabled","model-value","class"])]),_:1}))}};var VP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:MP});const BP={props:{title:{type:[String,Number],default:"Tab"},count:{type:[String,Number],default:""},countVariant:{type:[String,Number],default:""},tabPanelContainer:{type:String,default:"py-4 mt-px"}},setup(s){return(r,i)=>(l(),T(d(ba),{class:A([s.tabPanelContainer,"focus:outline-none"])},{default:g(()=>[F(r.$slots,"default")]),_:3},8,["class"]))}};var OP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:BP});const LP={props:{defaultIndex:{type:Number,default:0},filter:{type:String,default:null}},emits:["change"],setup(s,{emit:r}){const i=pe(),a=D(()=>i.default().map(n=>n.props));function t(n){r("change",a.value[n])}return(n,e)=>{const o=C("BaseBadge");return l(),_("div",null,[u(d(za),{"default-index":s.defaultIndex,onChange:t},{default:g(()=>[u(d(ka),{class:A(["flex border-b border-grey-light","relative overflow-x-auto overflow-y-hidden","lg:pb-0 lg:ml-0"])},{default:g(()=>[(l(!0),_(Q,null,ae(d(a),(m,p)=>(l(),T(d(wa),{key:p,as:"template"},{default:g(({selected:k})=>[c("button",{class:A(["px-8 py-2 text-sm leading-5 font-medium flex items-center relative border-b-2 mt-4 focus:outline-none whitespace-nowrap",k?" border-primary-400 text-black font-medium":"border-transparent text-gray-500 hover:text-gray-700 hover:border-gray-300"])},[K(w(m.title)+" ",1),m.count?(l(),T(o,{key:0,class:"!rounded-full overflow-hidden ml-2",variant:m["count-variant"],"default-class":"flex items-center justify-center w-5 h-5 p-1 rounded-full text-medium"},{default:g(()=>[K(w(m.count),1)]),_:2},1032,["variant"])):S("",!0)],2)]),_:2},1024))),128))]),_:1}),F(n.$slots,"before-tabs"),u(d(xa),null,{default:g(()=>[F(n.$slots,"default")]),_:3})]),_:3},8,["default-index"])])}}};var UP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:LP});const KP={props:{tag:{type:String,default:"div"},text:{type:String,default:""},length:{type:Number,default:0}},setup(s){const r=s,i=D(()=>r.text.length{const n=C("BaseCustomTag");return l(),T(n,{tag:s.tag,title:s.text},{default:g(()=>[K(w(d(i)),1)]),_:1},8,["tag","title"])}}};var qP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:KP});const ZP=["value","disabled"],WP={props:{contentLoading:{type:Boolean,default:!1},row:{type:Number,default:null},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},modelValue:{type:[String,Number],default:""},defaultInputClass:{type:String,default:"box-border w-full px-3 py-2 text-sm not-italic font-normal leading-snug text-left text-black placeholder-gray-400 bg-white border border-gray-200 border-solid rounded outline-none"},autosize:{type:Boolean,default:!1},borderless:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(s,{emit:r}){const i=s,a=q(null),t=D(()=>i.invalid&&!i.borderless?"border-red-400 ring-red-400 focus:ring-red-400 focus:border-red-400":i.borderless?"border-none outline-none focus:ring-primary-400 focus:border focus:border-primary-400":"focus:ring-primary-400 focus:border-primary-400"),n=D(()=>{switch(i.row){case 2:return"56";case 4:return"94";default:return"56"}});function e(o){r("update:modelValue",o.target.value),i.autosize&&(o.target.style.height="auto",o.target.style.height=`${o.target.scrollHeight}px`)}return ze(()=>{a.value&&i.autosize&&(a.value.style.height=a.value.scrollHeight+"px",a.value.style.overflow&&a.value.style.overflow.y&&(a.value.style.overflow.y="hidden"),a.value.style.resize="none")}),(o,m)=>{const p=C("BaseContentPlaceholdersBox"),k=C("BaseContentPlaceholders");return s.contentLoading?(l(),T(k,{key:0},{default:g(()=>[u(p,{rounded:!0,class:"w-full",style:Ce(`height: ${d(n)}px`)},null,8,["style"])]),_:1})):(l(),_("textarea",le({key:1},o.$attrs,{ref:(x,b)=>{b.textarea=x,a.value=x},value:s.modelValue,class:[s.defaultInputClass,d(t)],disabled:s.disabled,onInput:e}),null,16,ZP))}}};var HP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:WP});const GP=c("path",{"fill-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm1-12a1 1 0 10-2 0v4a1 1 0 00.293.707l2.828 2.829a1 1 0 101.415-1.415L11 9.586V6z","clip-rule":"evenodd"},null,-1),YP=[GP],JP={props:{modelValue:{type:[String,Date],default:()=>moment(new Date)},contentLoading:{type:Boolean,default:!1},placeholder:{type:String,default:null},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},containerClass:{type:String,default:""},clockIcon:{type:Boolean,default:!0},defaultInputClass:{type:String,default:"font-base pl-8 py-2 outline-none focus:ring-primary-400 focus:outline-none focus:border-primary-400 block w-full sm:text-sm border-gray-300 rounded-md text-black"}},emits:["update:modelValue"],setup(s,{emit:r}){const i=s,a=q(null),t=pe();let n=Be({enableTime:!0,noCalendar:!0,dateFormat:"H:i",time_24hr:!0});const e=D({get:()=>i.modelValue,set:b=>r("update:modelValue",b)}),o=D(()=>!!t.icon);function m(b){a.value.fp.open()}const p=D(()=>`${i.containerClass} `),k=D(()=>i.invalid?"border-red-400 ring-red-400 focus:ring-red-400 focus:border-red-400":""),x=D(()=>i.disabled?"border border-solid rounded-md outline-none input-field box-border-2 base-date-picker-input placeholder-gray-400 bg-gray-300 text-gray-600 border-gray-300":"");return(b,h)=>{const E=C("BaseContentPlaceholdersBox"),$=C("BaseContentPlaceholders");return s.contentLoading?(l(),T($,{key:0},{default:g(()=>[u(E,{rounded:!0,class:A(`w-full ${d(p)}`),style:{height:"38px"}},null,8,["class"])]),_:1})):(l(),_("div",{key:1,class:A([d(p),"relative flex flex-row"])},[s.clockIcon&&!d(o)?(l(),_("svg",{key:0,xmlns:"http://www.w3.org/2000/svg",class:"absolute top-px w-4 h-4 mx-2 my-2.5 text-sm not-italic font-black text-gray-400 cursor-pointer",viewBox:"0 0 20 20",fill:"currentColor",onClick:m},YP)):S("",!0),s.clockIcon&&d(o)?F(b.$slots,"icon",{key:1}):S("",!0),u(d(st),le({ref:(I,z)=>{z.dpt=I,a.value=I},modelValue:d(e),"onUpdate:modelValue":h[0]||(h[0]=I=>J(e)?e.value=I:null)},b.$attrs,{disabled:s.disabled,config:d(n),class:[s.defaultInputClass,d(k),d(x)]}),null,16,["modelValue","disabled","config","class"])],2))}}};var XP=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:JP});const QP={props:{currentStep:{type:Number,default:null},steps:{type:Number,default:null},containerClass:{type:String,default:"flex justify-between w-full my-10 max-w-xl mx-auto"},progress:{type:String,default:"rounded-full float-left w-6 h-6 border-4 cursor-pointer"},currentStepClass:{type:String,default:"bg-white border-primary-500"},nextStepClass:{type:String,default:"border-gray-200 bg-white"},previousStepClass:{type:String,default:"bg-primary-500 border-primary-500 flex justify-center items-center"},iconClass:{type:String,default:"flex items-center justify-center w-full h-full text-sm font-black text-center text-white"}},emits:["click"],setup(s){function r(i){return s.currentStep===i?[s.currentStepClass,s.progress]:s.currentStep>i?[s.previousStepClass,s.progress]:s.currentStep(l(),_("a",{key:o,class:A([a.stepStyle(e),"z-10"]),href:"#",onClick:re(m=>s.$emit("click",o),["prevent"])},[i.currentStep>e?(l(),_("svg",{key:0,class:A(i.iconClass),fill:"currentColor",viewBox:"0 0 20 20",onClick:m=>s.$emit("click",o)},sD,10,tD)):S("",!0)],10,eD))),128))],2)}var At=ee(QP,[["render",nD]]),iD=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:At});const oD={class:"w-full"},rD={props:{wizardStepsContainerClass:{type:String,default:"relative flex items-center justify-center"},currentStep:{type:Number,default:0},steps:{type:Number,default:0}},emits:["click"],setup(s,{emit:r}){return(i,a)=>(l(),_("div",oD,[F(i.$slots,"nav",{},()=>[u(At,{"current-step":s.currentStep,steps:s.steps,onClick:a[0]||(a[0]=t=>i.$emit("click",t))},null,8,["current-step","steps"])]),c("div",{class:A(s.wizardStepsContainerClass)},[F(i.$slots,"default")],2)]))}};var dD=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:rD});const lD={key:0},cD={props:{title:{type:String,default:null},description:{type:String,default:null},stepContainerClass:{type:String,default:"w-full p-8 mb-8 bg-white border border-gray-200 border-solid rounded"},stepTitleClass:{type:String,default:"text-2xl not-italic font-semibold leading-7 text-black"},stepDescriptionClass:{type:String,default:"w-full mt-2.5 mb-8 text-sm not-italic leading-snug text-gray-500 lg:w-7/12 md:w-7/12 sm:w-7/12"}},setup(s){return(r,i)=>(l(),_("div",{class:A(s.stepContainerClass)},[s.title||s.description?(l(),_("div",lD,[s.title?(l(),_("p",{key:0,class:A(s.stepTitleClass)},w(s.title),3)):S("",!0),s.description?(l(),_("p",{key:1,class:A(s.stepDescriptionClass)},w(s.description),3)):S("",!0)])):S("",!0),F(r.$slots,"default")],2))}};var _D=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",default:cD});const uD=s=>{Object.entries({"./components/base/BaseBadge.vue":Tb,"./components/base/BaseBreadcrumb.vue":Mb,"./components/base/BaseBreadcrumbItem.vue":Lb,"./components/base/BaseButton.vue":Jb,"./components/base/BaseCard.vue":ak,"./components/base/BaseCheckbox.vue":lk,"./components/base/BaseContentPlaceholders.vue":_k,"./components/base/BaseContentPlaceholdersBox.vue":mk,"./components/base/BaseContentPlaceholdersHeading.vue":vk,"./components/base/BaseContentPlaceholdersText.vue":kk,"./components/base/BaseCustomInput.vue":Ek,"./components/base/BaseCustomTag.vue":Tk,"./components/base/BaseCustomerAddressDisplay.vue":Lk,"./components/base/BaseCustomerSelectInput.vue":nw,"./components/base/BaseCustomerSelectPopup.vue":Uw,"./components/base/BaseDatePicker.vue":Ww,"./components/base/BaseDescriptionList.vue":Xw,"./components/base/BaseDescriptionListItem.vue":ax,"./components/base/BaseDialog.vue":cx,"./components/base/BaseDivider.vue":gx,"./components/base/BaseDropdown.vue":yx,"./components/base/BaseDropdownItem.vue":kx,"./components/base/BaseEmptyPlaceholder.vue":Ax,"./components/base/BaseErrorAlert.vue":Vx,"./components/base/BaseEstimateStatusBadge.vue":Ox,"./components/base/BaseFileUploader.vue":fz,"./components/base/BaseFilterWrapper.vue":yz,"./components/base/BaseFormatMoney.vue":wz,"./components/base/BaseGlobalLoader.vue":sS,"./components/base/BaseHeading.vue":iS,"./components/base/BaseIcon.vue":rS,"./components/base/BaseInfoAlert.vue":bS,"./components/base/BaseInput.vue":RS,"./components/base/BaseInputGrid.vue":MS,"./components/base/BaseInputGroup.vue":US,"./components/base/BaseInvoiceStatusBadge.vue":WS,"./components/base/BaseItemSelect.vue":ej,"./components/base/BaseLabel.vue":ij,"./components/base/BaseModal.vue":cj,"./components/base/BaseMoney.vue":uj,"./components/base/BaseNewBadge.vue":pj,"./components/base/BasePage.vue":yj,"./components/base/BasePageHeader.vue":zj,"./components/base/BasePaidStatusBadge.vue":Dj,"./components/base/BaseRadio.vue":Rj,"./components/base/BaseRating.vue":Gj,"./components/base/BaseRecurringInvoiceStatusBadge.vue":Qj,"./components/base/BaseScrollPane.vue":rP,"./components/base/BaseSelectAction.vue":uP,"./components/base/BaseSelectInput.vue":yP,"./components/base/BaseSettingCard.vue":SP,"./components/base/BaseSpinner.vue":TP,"./components/base/BaseSwitch.vue":RP,"./components/base/BaseSwitchSection.vue":VP,"./components/base/BaseTab.vue":OP,"./components/base/BaseTabGroup.vue":UP,"./components/base/BaseText.vue":qP,"./components/base/BaseTextarea.vue":HP,"./components/base/BaseTimePicker.vue":XP,"./components/base/BaseWizard.vue":dD,"./components/base/BaseWizardNavigation.vue":iD,"./components/base/BaseWizardStep.vue":_D}).forEach(([n,e])=>{const o=n.split("/").pop().replace(/\.\w+$/,"");s.component(o,e.default)});const i=Le(()=>j(()=>import("./BaseTable.6e206ca7.js"),["assets/BaseTable.6e206ca7.js","assets/vendor.01d0adc5.js"])),a=Le(()=>j(()=>import("./BaseMultiselect.b73cc8d6.js"),["assets/BaseMultiselect.b73cc8d6.js","assets/vendor.01d0adc5.js"])),t=Le(()=>j(()=>import("./BaseEditor.d94e3dc1.js"),["assets/BaseEditor.d94e3dc1.js","assets/BaseEditor.bacb9608.css","assets/vendor.01d0adc5.js"]));s.component("BaseTable",i),s.component("BaseMultiselect",a),s.component("BaseEditor",t)},ce=Sa(Ls);class mD{constructor(){this.bootingCallbacks=[],this.messages=Eb}booting(r){this.bootingCallbacks.push(r)}executeCallbacks(){this.bootingCallbacks.forEach(r=>{r(ce,$e)})}addMessages(r=[]){oe.merge(this.messages,r)}start(){this.executeCallbacks(),uD(ce),ce.provide("$utils",Ze);const r=Qe({locale:"en",fallbackLocale:"en",globalInjection:!0,messages:this.messages});window.i18n=r;const{createPinia:i}=window.pinia;ce.use($e),ce.use(ja),ce.use(r),ce.use(i()),ce.provide("utils",Ze),ce.directive("tooltip",Pa),ce.mount("body")}}window.pinia=Da;window.Vuelidate=Ca;window.Vue=Aa;window.router=$e;window.VueRouter=Ea;window.Crater=new mD;export{Ue as L,Gb as S,ie as T,ee as _,Na as a,_e as b,Pe as c,Ie as d,je as e,Xz as f,O as g,v as h,Me as i,sx as j,He as k,be as l,xk as m,Hk as n,j as o,Fe as p,ke as q,Ta as r,Ze as s,Dt as t,M as u,Vs as v,bx as w,vx as x}; diff --git a/public/build/assets/payment.037dd620.js b/public/build/assets/payment.b9d460da.js similarity index 93% rename from public/build/assets/payment.037dd620.js rename to public/build/assets/payment.b9d460da.js index 93024ac30..06e7411ad 100644 --- a/public/build/assets/payment.037dd620.js +++ b/public/build/assets/payment.b9d460da.js @@ -1 +1 @@ -import{h as s}from"./auth.4644c288.js";import{a as o}from"./vendor.01d0adc5.js";const{defineStore:i}=window.pinia,d=i({id:"customerPaymentStore",state:()=>({payments:[],selectedViewPayment:[],totalPayments:0}),actions:{fetchPayments(e,a){return new Promise((n,m)=>{o.get(`/api/v1/${a}/customer/payments`,{params:e}).then(t=>{this.payments=t.data.data,this.totalPayments=t.data.meta.paymentTotalCount,n(t)}).catch(t=>{s(t),m(t)})})},fetchViewPayment(e,a){return new Promise((n,m)=>{o.get(`/api/v1/${a}/customer/payments/${e.id}`).then(t=>{this.selectedViewPayment=t.data.data,n(t)}).catch(t=>{s(t),m(t)})})},searchPayment(e,a){return new Promise((n,m)=>{o.get(`/api/v1/${a}/customer/payments`,{params:e}).then(t=>{this.payments=t.data,n(t)}).catch(t=>{s(t),m(t)})})},fetchPaymentModes(e,a){return new Promise((n,m)=>{o.get(`/api/v1/${a}/customer/payment-method`,{params:e}).then(t=>{n(t)}).catch(t=>{s(t),m(t)})})}}});export{d as u}; +import{h as s}from"./auth.0e030165.js";import{a as o}from"./vendor.01d0adc5.js";const{defineStore:i}=window.pinia,d=i({id:"customerPaymentStore",state:()=>({payments:[],selectedViewPayment:[],totalPayments:0}),actions:{fetchPayments(e,a){return new Promise((n,m)=>{o.get(`/api/v1/${a}/customer/payments`,{params:e}).then(t=>{this.payments=t.data.data,this.totalPayments=t.data.meta.paymentTotalCount,n(t)}).catch(t=>{s(t),m(t)})})},fetchViewPayment(e,a){return new Promise((n,m)=>{o.get(`/api/v1/${a}/customer/payments/${e.id}`).then(t=>{this.selectedViewPayment=t.data.data,n(t)}).catch(t=>{s(t),m(t)})})},searchPayment(e,a){return new Promise((n,m)=>{o.get(`/api/v1/${a}/customer/payments`,{params:e}).then(t=>{this.payments=t.data,n(t)}).catch(t=>{s(t),m(t)})})},fetchPaymentModes(e,a){return new Promise((n,m)=>{o.get(`/api/v1/${a}/customer/payment-method`,{params:e}).then(t=>{n(t)}).catch(t=>{s(t),m(t)})})}}});export{d as u}; diff --git a/public/build/assets/payment.5c57bec3.js b/public/build/assets/payment.bb0c6e9e.js similarity index 97% rename from public/build/assets/payment.5c57bec3.js rename to public/build/assets/payment.bb0c6e9e.js index efa484ccc..5e3806f1f 100644 --- a/public/build/assets/payment.5c57bec3.js +++ b/public/build/assets/payment.bb0c6e9e.js @@ -1 +1 @@ -var f=Object.defineProperty;var r=Object.getOwnPropertySymbols;var g=Object.prototype.hasOwnProperty,w=Object.prototype.propertyIsEnumerable;var u=(y,o,i)=>o in y?f(y,o,{enumerable:!0,configurable:!0,writable:!0,value:i}):y[o]=i,p=(y,o)=>{for(var i in o||(o={}))g.call(o,i)&&u(y,i,o[i]);if(r)for(var i of r(o))w.call(o,i)&&u(y,i,o[i]);return y};import{G as v,I as _,a as d,d as N}from"./vendor.01d0adc5.js";import{b as S,h as m,u as h}from"./main.75722495.js";var P={maxPayableAmount:Number.MAX_SAFE_INTEGER,selectedCustomer:"",currency:null,currency_id:"",customer_id:"",payment_number:"",payment_date:"",amount:0,invoice_id:"",notes:"",payment_method_id:"",customFields:[],fields:[]};const I=(y=!1)=>{const o=y?window.pinia.defineStore:N,{global:i}=window.i18n;return o({id:"payment",state:()=>({payments:[],paymentTotalCount:0,selectAllField:!1,selectedPayments:[],selectedNote:null,showExchangeRate:!1,drivers:[],providers:[],paymentProviders:{id:null,name:"",driver:"",active:!1,settings:{key:"",secret:""}},currentPayment:p({},P),paymentModes:[],currentPaymentMode:{id:"",name:null},isFetchingInitialData:!1}),getters:{isEdit:t=>!!t.paymentProviders.id},actions:{fetchPaymentInitialData(t){const n=S(),s=v();this.isFetchingInitialData=!0;let e=[];t&&(e=[this.fetchPayment(s.params.id)]),Promise.all([this.fetchPaymentModes({limit:"all"}),this.getNextNumber(),...e]).then(async([a,l,c])=>{t?c.data.data.invoice&&(this.currentPayment.maxPayableAmount=parseInt(c.data.data.invoice.due_amount)):!t&&l.data&&(this.currentPayment.payment_date=_().format("YYYY-MM-DD"),this.currentPayment.payment_number=l.data.nextNumber,this.currentPayment.currency=n.selectedCompanyCurrency),this.isFetchingInitialData=!1}).catch(a=>{m(a)})},fetchPayments(t){return new Promise((n,s)=>{d.get("/api/v1/payments",{params:t}).then(e=>{this.payments=e.data.data,this.paymentTotalCount=e.data.meta.payment_total_count,n(e)}).catch(e=>{m(e),s(e)})})},fetchPayment(t){return new Promise((n,s)=>{d.get(`/api/v1/payments/${t}`).then(e=>{Object.assign(this.currentPayment,e.data.data),n(e)}).catch(e=>{m(e),s(e)})})},addPayment(t){return new Promise((n,s)=>{d.post("/api/v1/payments",t).then(e=>{this.payments.push(e.data),h().showNotification({type:"success",message:i.t("payments.created_message")}),n(e)}).catch(e=>{m(e),s(e)})})},updatePayment(t){return new Promise((n,s)=>{d.put(`/api/v1/payments/${t.id}`,t).then(e=>{if(e.data){let a=this.payments.findIndex(c=>c.id===e.data.data.id);this.payments[a]=t.payment,h().showNotification({type:"success",message:i.t("payments.updated_message")})}n(e)}).catch(e=>{m(e),s(e)})})},deletePayment(t){const n=h();return new Promise((s,e)=>{d.post("/api/v1/payments/delete",t).then(a=>{let l=this.payments.findIndex(c=>c.id===t);this.payments.splice(l,1),n.showNotification({type:"success",message:i.t("payments.deleted_message",1)}),s(a)}).catch(a=>{m(a),e(a)})})},deleteMultiplePayments(){const t=h();return new Promise((n,s)=>{d.post("/api/v1/payments/delete",{ids:this.selectedPayments}).then(e=>{this.selectedPayments.forEach(a=>{let l=this.payments.findIndex(c=>c.id===a.id);this.payments.splice(l,1)}),t.showNotification({type:"success",message:i.tc("payments.deleted_message",2)}),n(e)}).catch(e=>{m(e),s(e)})})},setSelectAllState(t){this.selectAllField=t},selectPayment(t){this.selectedPayments=t,this.selectedPayments.length===this.payments.length?this.selectAllField=!0:this.selectAllField=!1},selectAllPayments(){if(this.selectedPayments.length===this.payments.length)this.selectedPayments=[],this.selectAllField=!1;else{let t=this.payments.map(n=>n.id);this.selectedPayments=t,this.selectAllField=!0}},selectNote(t){this.selectedNote=null,this.selectedNote=t},resetSelectedNote(t){this.selectedNote=null},searchPayment(t){return new Promise((n,s)=>{d.get("/api/v1/payments",{params:t}).then(e=>{this.payments=e.data,n(e)}).catch(e=>{m(e),s(e)})})},previewPayment(t){return new Promise((n,s)=>{d.get(`/api/v1/payments/${t.id}/send/preview`,{params:t}).then(e=>{n(e)}).catch(e=>{m(e),s(e)})})},sendEmail(t){return new Promise((n,s)=>{d.post(`/api/v1/payments/${t.id}/send`,t).then(e=>{n(e)}).catch(e=>{m(e),s(e)})})},getNextNumber(t,n=!1){return new Promise((s,e)=>{d.get("/api/v1/next-number?key=payment",{params:t}).then(a=>{n&&(this.currentPayment.payment_number=a.data.nextNumber),s(a)}).catch(a=>{m(a),e(a)})})},resetCurrentPayment(){this.currentPayment=p({},P)},fetchPaymentModes(t){return new Promise((n,s)=>{d.get("/api/v1/payment-methods",{params:t}).then(e=>{this.paymentModes=e.data.data,n(e)}).catch(e=>{m(e),s(e)})})},fetchPaymentMode(t){return new Promise((n,s)=>{d.get(`/api/v1/payment-methods/${t}`).then(e=>{this.currentPaymentMode=e.data.data,n(e)}).catch(e=>{m(e),s(e)})})},addPaymentMode(t){const n=h();return new Promise((s,e)=>{d.post("/api/v1/payment-methods",t).then(a=>{this.paymentModes.push(a.data.data),n.showNotification({type:"success",message:i.t("settings.payment_modes.payment_mode_added")}),s(a)}).catch(a=>{m(a),e(a)})})},updatePaymentMode(t){const n=h();return new Promise((s,e)=>{d.put(`/api/v1/payment-methods/${t.id}`,t).then(a=>{if(a.data){let l=this.paymentModes.findIndex(c=>c.id===a.data.data.id);this.paymentModes[l]=t.paymentModes,n.showNotification({type:"success",message:i.t("settings.payment_modes.payment_mode_updated")})}s(a)}).catch(a=>{m(a),e(a)})})},deletePaymentMode(t){const n=h();return new Promise((s,e)=>{d.delete(`/api/v1/payment-methods/${t}`).then(a=>{let l=this.paymentModes.findIndex(c=>c.id===t);this.paymentModes.splice(l,1),a.data.success&&n.showNotification({type:"success",message:i.t("settings.payment_modes.deleted_message")}),s(a)}).catch(a=>{m(a),e(a)})})}}})()};export{I as u}; +var f=Object.defineProperty;var r=Object.getOwnPropertySymbols;var g=Object.prototype.hasOwnProperty,w=Object.prototype.propertyIsEnumerable;var u=(y,o,i)=>o in y?f(y,o,{enumerable:!0,configurable:!0,writable:!0,value:i}):y[o]=i,p=(y,o)=>{for(var i in o||(o={}))g.call(o,i)&&u(y,i,o[i]);if(r)for(var i of r(o))w.call(o,i)&&u(y,i,o[i]);return y};import{G as v,I as _,a as d,d as N}from"./vendor.01d0adc5.js";import{b as S,h as m,u as h}from"./main.24f7a84b.js";var P={maxPayableAmount:Number.MAX_SAFE_INTEGER,selectedCustomer:"",currency:null,currency_id:"",customer_id:"",payment_number:"",payment_date:"",amount:0,invoice_id:"",notes:"",payment_method_id:"",customFields:[],fields:[]};const I=(y=!1)=>{const o=y?window.pinia.defineStore:N,{global:i}=window.i18n;return o({id:"payment",state:()=>({payments:[],paymentTotalCount:0,selectAllField:!1,selectedPayments:[],selectedNote:null,showExchangeRate:!1,drivers:[],providers:[],paymentProviders:{id:null,name:"",driver:"",active:!1,settings:{key:"",secret:""}},currentPayment:p({},P),paymentModes:[],currentPaymentMode:{id:"",name:null},isFetchingInitialData:!1}),getters:{isEdit:t=>!!t.paymentProviders.id},actions:{fetchPaymentInitialData(t){const n=S(),s=v();this.isFetchingInitialData=!0;let e=[];t&&(e=[this.fetchPayment(s.params.id)]),Promise.all([this.fetchPaymentModes({limit:"all"}),this.getNextNumber(),...e]).then(async([a,l,c])=>{t?c.data.data.invoice&&(this.currentPayment.maxPayableAmount=parseInt(c.data.data.invoice.due_amount)):!t&&l.data&&(this.currentPayment.payment_date=_().format("YYYY-MM-DD"),this.currentPayment.payment_number=l.data.nextNumber,this.currentPayment.currency=n.selectedCompanyCurrency),this.isFetchingInitialData=!1}).catch(a=>{m(a)})},fetchPayments(t){return new Promise((n,s)=>{d.get("/api/v1/payments",{params:t}).then(e=>{this.payments=e.data.data,this.paymentTotalCount=e.data.meta.payment_total_count,n(e)}).catch(e=>{m(e),s(e)})})},fetchPayment(t){return new Promise((n,s)=>{d.get(`/api/v1/payments/${t}`).then(e=>{Object.assign(this.currentPayment,e.data.data),n(e)}).catch(e=>{m(e),s(e)})})},addPayment(t){return new Promise((n,s)=>{d.post("/api/v1/payments",t).then(e=>{this.payments.push(e.data),h().showNotification({type:"success",message:i.t("payments.created_message")}),n(e)}).catch(e=>{m(e),s(e)})})},updatePayment(t){return new Promise((n,s)=>{d.put(`/api/v1/payments/${t.id}`,t).then(e=>{if(e.data){let a=this.payments.findIndex(c=>c.id===e.data.data.id);this.payments[a]=t.payment,h().showNotification({type:"success",message:i.t("payments.updated_message")})}n(e)}).catch(e=>{m(e),s(e)})})},deletePayment(t){const n=h();return new Promise((s,e)=>{d.post("/api/v1/payments/delete",t).then(a=>{let l=this.payments.findIndex(c=>c.id===t);this.payments.splice(l,1),n.showNotification({type:"success",message:i.t("payments.deleted_message",1)}),s(a)}).catch(a=>{m(a),e(a)})})},deleteMultiplePayments(){const t=h();return new Promise((n,s)=>{d.post("/api/v1/payments/delete",{ids:this.selectedPayments}).then(e=>{this.selectedPayments.forEach(a=>{let l=this.payments.findIndex(c=>c.id===a.id);this.payments.splice(l,1)}),t.showNotification({type:"success",message:i.tc("payments.deleted_message",2)}),n(e)}).catch(e=>{m(e),s(e)})})},setSelectAllState(t){this.selectAllField=t},selectPayment(t){this.selectedPayments=t,this.selectedPayments.length===this.payments.length?this.selectAllField=!0:this.selectAllField=!1},selectAllPayments(){if(this.selectedPayments.length===this.payments.length)this.selectedPayments=[],this.selectAllField=!1;else{let t=this.payments.map(n=>n.id);this.selectedPayments=t,this.selectAllField=!0}},selectNote(t){this.selectedNote=null,this.selectedNote=t},resetSelectedNote(t){this.selectedNote=null},searchPayment(t){return new Promise((n,s)=>{d.get("/api/v1/payments",{params:t}).then(e=>{this.payments=e.data,n(e)}).catch(e=>{m(e),s(e)})})},previewPayment(t){return new Promise((n,s)=>{d.get(`/api/v1/payments/${t.id}/send/preview`,{params:t}).then(e=>{n(e)}).catch(e=>{m(e),s(e)})})},sendEmail(t){return new Promise((n,s)=>{d.post(`/api/v1/payments/${t.id}/send`,t).then(e=>{n(e)}).catch(e=>{m(e),s(e)})})},getNextNumber(t,n=!1){return new Promise((s,e)=>{d.get("/api/v1/next-number?key=payment",{params:t}).then(a=>{n&&(this.currentPayment.payment_number=a.data.nextNumber),s(a)}).catch(a=>{m(a),e(a)})})},resetCurrentPayment(){this.currentPayment=p({},P)},fetchPaymentModes(t){return new Promise((n,s)=>{d.get("/api/v1/payment-methods",{params:t}).then(e=>{this.paymentModes=e.data.data,n(e)}).catch(e=>{m(e),s(e)})})},fetchPaymentMode(t){return new Promise((n,s)=>{d.get(`/api/v1/payment-methods/${t}`).then(e=>{this.currentPaymentMode=e.data.data,n(e)}).catch(e=>{m(e),s(e)})})},addPaymentMode(t){const n=h();return new Promise((s,e)=>{d.post("/api/v1/payment-methods",t).then(a=>{this.paymentModes.push(a.data.data),n.showNotification({type:"success",message:i.t("settings.payment_modes.payment_mode_added")}),s(a)}).catch(a=>{m(a),e(a)})})},updatePaymentMode(t){const n=h();return new Promise((s,e)=>{d.put(`/api/v1/payment-methods/${t.id}`,t).then(a=>{if(a.data){let l=this.paymentModes.findIndex(c=>c.id===a.data.data.id);this.paymentModes[l]=t.paymentModes,n.showNotification({type:"success",message:i.t("settings.payment_modes.payment_mode_updated")})}s(a)}).catch(a=>{m(a),e(a)})})},deletePaymentMode(t){const n=h();return new Promise((s,e)=>{d.delete(`/api/v1/payment-methods/${t}`).then(a=>{let l=this.paymentModes.findIndex(c=>c.id===t);this.paymentModes.splice(l,1),a.data.success&&n.showNotification({type:"success",message:i.t("settings.payment_modes.deleted_message")}),s(a)}).catch(a=>{m(a),e(a)})})}}})()};export{I as u}; diff --git a/public/build/assets/users.73a3faa4.js b/public/build/assets/users.e0b660dd.js similarity index 90% rename from public/build/assets/users.73a3faa4.js rename to public/build/assets/users.e0b660dd.js index 23267023f..5370f8970 100644 --- a/public/build/assets/users.73a3faa4.js +++ b/public/build/assets/users.e0b660dd.js @@ -1 +1 @@ -import{a as l,d as p}from"./vendor.01d0adc5.js";import{h as o,u as d}from"./main.75722495.js";const w=(u=!1)=>{const m=u?window.pinia.defineStore:p,{global:n}=window.i18n;return m({id:"users",state:()=>({roles:[],users:[],totalUsers:0,currentUser:null,selectAllField:!1,selectedUsers:[],customerList:[],userList:[],userData:{name:"",email:"",password:null,phone:null,companies:[]}}),actions:{resetUserData(){this.userData={name:"",email:"",password:null,phone:null,role:null,companies:[]}},fetchUsers(s){return new Promise((i,t)=>{l.get("/api/v1/users",{params:s}).then(e=>{this.users=e.data.data,this.totalUsers=e.data.meta.total,i(e)}).catch(e=>{o(e),t(e)})})},fetchUser(s){return new Promise((i,t)=>{l.get(`/api/v1/users/${s}`).then(e=>{var a,r;this.userData=e.data.data,((r=(a=this.userData)==null?void 0:a.companies)==null?void 0:r.length)&&this.userData.companies.forEach((c,f)=>{this.userData.roles.forEach(h=>{h.scope===c.id&&(this.userData.companies[f].role=h.name)})}),i(e)}).catch(e=>{console.log(e),o(e),t(e)})})},fetchRoles(s){return new Promise((i,t)=>{l.get("/api/v1/roles").then(e=>{this.roles=e.data.data,i(e)}).catch(e=>{o(e),t(e)})})},addUser(s){return new Promise((i,t)=>{l.post("/api/v1/users",s).then(e=>{this.users.push(e.data),d().showNotification({type:"success",message:n.t("users.created_message")}),i(e)}).catch(e=>{o(e),t(e)})})},updateUser(s){return new Promise((i,t)=>{l.put(`/api/v1/users/${s.id}`,s).then(e=>{if(e){let r=this.users.findIndex(c=>c.id===e.data.data.id);this.users[r]=e.data.data}d().showNotification({type:"success",message:n.t("users.updated_message")}),i(e)}).catch(e=>{o(e),t(e)})})},deleteUser(s){const i=d();return new Promise((t,e)=>{l.post("/api/v1/users/delete",{users:s.ids}).then(a=>{let r=this.users.findIndex(c=>c.id===s);this.users.splice(r,1),i.showNotification({type:"success",message:n.tc("users.deleted_message",1)}),t(a)}).catch(a=>{o(a),e(a)})})},deleteMultipleUsers(){return new Promise((s,i)=>{l.post("/api/v1/users/delete",{users:this.selectedUsers}).then(t=>{this.selectedUsers.forEach(a=>{let r=this.users.findIndex(c=>c.id===a.id);this.users.splice(r,1)}),d().showNotification({type:"success",message:n.tc("users.deleted_message",2)}),s(t)}).catch(t=>{o(t),i(t)})})},searchUsers(s){return new Promise((i,t)=>{l.get("/api/v1/search",{params:s}).then(e=>{this.userList=e.data.users.data,this.customerList=e.data.customers.data,i(e)}).catch(e=>{o(e),t(e)})})},setSelectAllState(s){this.selectAllField=s},selectUser(s){this.selectedUsers=s,this.selectedUsers.length===this.users.length?this.selectAllField=!0:this.selectAllField=!1},selectAllUsers(){if(this.selectedUsers.length===this.users.length)this.selectedUsers=[],this.selectAllField=!1;else{let s=this.users.map(i=>i.id);this.selectedUsers=s,this.selectAllField=!0}}}})()};export{w as u}; +import{a as l,d as p}from"./vendor.01d0adc5.js";import{h as o,u as d}from"./main.24f7a84b.js";const w=(u=!1)=>{const f=u?window.pinia.defineStore:p,{global:n}=window.i18n;return f({id:"users",state:()=>({roles:[],users:[],totalUsers:0,currentUser:null,selectAllField:!1,selectedUsers:[],customerList:[],userList:[],userData:{name:"",email:"",password:null,phone:null,companies:[]}}),actions:{resetUserData(){this.userData={name:"",email:"",password:null,phone:null,role:null,companies:[]}},fetchUsers(s){return new Promise((i,t)=>{l.get("/api/v1/users",{params:s}).then(e=>{this.users=e.data.data,this.totalUsers=e.data.meta.total,i(e)}).catch(e=>{o(e),t(e)})})},fetchUser(s){return new Promise((i,t)=>{l.get(`/api/v1/users/${s}`).then(e=>{var a,r;this.userData=e.data.data,((r=(a=this.userData)==null?void 0:a.companies)==null?void 0:r.length)&&this.userData.companies.forEach((c,m)=>{this.userData.roles.forEach(h=>{h.scope===c.id&&(this.userData.companies[m].role=h.name)})}),i(e)}).catch(e=>{console.log(e),o(e),t(e)})})},fetchRoles(s){return new Promise((i,t)=>{l.get("/api/v1/roles").then(e=>{this.roles=e.data.data,i(e)}).catch(e=>{o(e),t(e)})})},addUser(s){return new Promise((i,t)=>{l.post("/api/v1/users",s).then(e=>{this.users.push(e.data),d().showNotification({type:"success",message:n.t("users.created_message")}),i(e)}).catch(e=>{o(e),t(e)})})},updateUser(s){return new Promise((i,t)=>{l.put(`/api/v1/users/${s.id}`,s).then(e=>{if(e){let r=this.users.findIndex(c=>c.id===e.data.data.id);this.users[r]=e.data.data}d().showNotification({type:"success",message:n.t("users.updated_message")}),i(e)}).catch(e=>{o(e),t(e)})})},deleteUser(s){const i=d();return new Promise((t,e)=>{l.post("/api/v1/users/delete",{users:s.ids}).then(a=>{let r=this.users.findIndex(c=>c.id===s);this.users.splice(r,1),i.showNotification({type:"success",message:n.tc("users.deleted_message",1)}),t(a)}).catch(a=>{o(a),e(a)})})},deleteMultipleUsers(){return new Promise((s,i)=>{l.post("/api/v1/users/delete",{users:this.selectedUsers}).then(t=>{this.selectedUsers.forEach(a=>{let r=this.users.findIndex(c=>c.id===a.id);this.users.splice(r,1)}),d().showNotification({type:"success",message:n.tc("users.deleted_message",2)}),s(t)}).catch(t=>{o(t),i(t)})})},searchUsers(s){return new Promise((i,t)=>{l.get("/api/v1/search",{params:s}).then(e=>{this.userList=e.data.users.data,this.customerList=e.data.customers.data,i(e)}).catch(e=>{o(e),t(e)})})},setSelectAllState(s){this.selectAllField=s},selectUser(s){this.selectedUsers=s,this.selectedUsers.length===this.users.length?this.selectAllField=!0:this.selectAllField=!1},selectAllUsers(){if(this.selectedUsers.length===this.users.length)this.selectedUsers=[],this.selectAllField=!1;else{let s=this.users.map(i=>i.id);this.selectedUsers=s,this.selectAllField=!0}}}})()};export{w as u}; diff --git a/public/build/manifest.json b/public/build/manifest.json index 8a0ebf92d..1a9c47560 100644 --- a/public/build/manifest.json +++ b/public/build/manifest.json @@ -1,6 +1,6 @@ { "resources/scripts/main.js": { - "file": "assets/main.75722495.js", + "file": "assets/main.24f7a84b.js", "src": "resources/scripts/main.js", "isEntry": true, "imports": [ @@ -85,24 +85,24 @@ "file": "assets/vendor.01d0adc5.js" }, "resources/scripts/admin/layouts/LayoutInstallation.vue": { - "file": "assets/LayoutInstallation.46a8b6d2.js", + "file": "assets/LayoutInstallation.9dd005dc.js", "src": "resources/scripts/admin/layouts/LayoutInstallation.vue", "isDynamicEntry": true, "imports": [ - "_NotificationRoot.a98180ab.js", + "_NotificationRoot.79eede9f.js", "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, - "_NotificationRoot.a98180ab.js": { - "file": "assets/NotificationRoot.a98180ab.js", + "_NotificationRoot.79eede9f.js": { + "file": "assets/NotificationRoot.79eede9f.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, "resources/scripts/admin/views/auth/Login.vue": { - "file": "assets/Login.9abd1acb.js", + "file": "assets/Login.f6c16d98.js", "src": "resources/scripts/admin/views/auth/Login.vue", "isDynamicEntry": true, "imports": [ @@ -111,27 +111,27 @@ ] }, "resources/scripts/admin/layouts/LayoutBasic.vue": { - "file": "assets/LayoutBasic.e1f34a75.js", + "file": "assets/LayoutBasic.7688bb12.js", "src": "resources/scripts/admin/layouts/LayoutBasic.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_exchange-rate.dffa79b6.js", - "_users.73a3faa4.js", - "_NotificationRoot.a98180ab.js", + "_exchange-rate.3b3d35e2.js", + "_users.e0b660dd.js", + "_NotificationRoot.79eede9f.js", "_index.esm.998a6eeb.js" ] }, - "_exchange-rate.dffa79b6.js": { - "file": "assets/exchange-rate.dffa79b6.js", + "_exchange-rate.3b3d35e2.js": { + "file": "assets/exchange-rate.3b3d35e2.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, - "_users.73a3faa4.js": { - "file": "assets/users.73a3faa4.js", + "_users.e0b660dd.js": { + "file": "assets/users.e0b660dd.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" @@ -144,17 +144,17 @@ ] }, "resources/scripts/admin/layouts/LayoutLogin.vue": { - "file": "assets/LayoutLogin.d574a04a.js", + "file": "assets/LayoutLogin.805658ef.js", "src": "resources/scripts/admin/layouts/LayoutLogin.vue", "isDynamicEntry": true, "imports": [ - "_NotificationRoot.a98180ab.js", + "_NotificationRoot.79eede9f.js", "resources/scripts/main.js", "_vendor.01d0adc5.js" ] }, "resources/scripts/admin/views/auth/ResetPassword.vue": { - "file": "assets/ResetPassword.970ec316.js", + "file": "assets/ResetPassword.1eebc8d4.js", "src": "resources/scripts/admin/views/auth/ResetPassword.vue", "isDynamicEntry": true, "imports": [ @@ -163,7 +163,7 @@ ] }, "resources/scripts/admin/views/auth/ForgotPassword.vue": { - "file": "assets/ForgotPassword.6a2c79cb.js", + "file": "assets/ForgotPassword.6f6930b9.js", "src": "resources/scripts/admin/views/auth/ForgotPassword.vue", "isDynamicEntry": true, "imports": [ @@ -172,59 +172,59 @@ ] }, "resources/scripts/admin/views/dashboard/Dashboard.vue": { - "file": "assets/Dashboard.bdf9de48.js", + "file": "assets/Dashboard.f077f144.js", "src": "resources/scripts/admin/views/dashboard/Dashboard.vue", "isDynamicEntry": true, "imports": [ - "_EstimateIcon.1f3b368d.js", + "_EstimateIcon.8ca6d05b.js", "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_LineChart.a92f3bea.js", - "_InvoiceIndexDropdown.430bc329.js", - "_EstimateIndexDropdown.4eab32d4.js" + "_LineChart.f87804e4.js", + "_InvoiceIndexDropdown.a18e118f.js", + "_EstimateIndexDropdown.7244b3a5.js" ] }, - "_EstimateIcon.1f3b368d.js": { - "file": "assets/EstimateIcon.1f3b368d.js", + "_EstimateIcon.8ca6d05b.js": { + "file": "assets/EstimateIcon.8ca6d05b.js", "imports": [ "resources/scripts/main.js", "_vendor.01d0adc5.js" ] }, - "_LineChart.a92f3bea.js": { - "file": "assets/LineChart.a92f3bea.js", + "_LineChart.f87804e4.js": { + "file": "assets/LineChart.f87804e4.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, - "_InvoiceIndexDropdown.430bc329.js": { - "file": "assets/InvoiceIndexDropdown.430bc329.js", + "_InvoiceIndexDropdown.a18e118f.js": { + "file": "assets/InvoiceIndexDropdown.a18e118f.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, - "_EstimateIndexDropdown.4eab32d4.js": { - "file": "assets/EstimateIndexDropdown.4eab32d4.js", + "_EstimateIndexDropdown.7244b3a5.js": { + "file": "assets/EstimateIndexDropdown.7244b3a5.js", "imports": [ "resources/scripts/main.js", "_vendor.01d0adc5.js" ] }, "resources/scripts/admin/views/customers/Index.vue": { - "file": "assets/Index.83e96e3c.js", + "file": "assets/Index.d28beda3.js", "src": "resources/scripts/admin/views/customers/Index.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_CustomerIndexDropdown.3adf4218.js", + "_CustomerIndexDropdown.34ba7779.js", "_AstronautIcon.948728ac.js" ] }, - "_CustomerIndexDropdown.3adf4218.js": { - "file": "assets/CustomerIndexDropdown.3adf4218.js", + "_CustomerIndexDropdown.34ba7779.js": { + "file": "assets/CustomerIndexDropdown.34ba7779.js", "imports": [ "resources/scripts/main.js", "_vendor.01d0adc5.js" @@ -237,17 +237,17 @@ ] }, "resources/scripts/admin/views/customers/Create.vue": { - "file": "assets/Create.3e41e2ab.js", + "file": "assets/Create.6147407c.js", "src": "resources/scripts/admin/views/customers/Create.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_CreateCustomFields.a3a572c4.js" + "_CreateCustomFields.8531ebe0.js" ] }, - "_CreateCustomFields.a3a572c4.js": { - "file": "assets/CreateCustomFields.a3a572c4.js", + "_CreateCustomFields.8531ebe0.js": { + "file": "assets/CreateCustomFields.8531ebe0.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" @@ -266,43 +266,43 @@ ] }, "resources/scripts/admin/views/customers/View.vue": { - "file": "assets/View.958a5524.js", + "file": "assets/View.4e871e2e.js", "src": "resources/scripts/admin/views/customers/View.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_LoadingIcon.44a6304d.js", - "_LineChart.a92f3bea.js", - "_CustomerIndexDropdown.3adf4218.js" + "_LoadingIcon.e09a5e28.js", + "_LineChart.f87804e4.js", + "_CustomerIndexDropdown.34ba7779.js" ] }, - "_LoadingIcon.44a6304d.js": { - "file": "assets/LoadingIcon.44a6304d.js", + "_LoadingIcon.e09a5e28.js": { + "file": "assets/LoadingIcon.e09a5e28.js", "imports": [ "resources/scripts/main.js", "_vendor.01d0adc5.js" ] }, "resources/scripts/admin/views/settings/SettingsIndex.vue": { - "file": "assets/SettingsIndex.7750922b.js", + "file": "assets/SettingsIndex.88c27d32.js", "src": "resources/scripts/admin/views/settings/SettingsIndex.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_BaseListItem.4eea691c.js" + "_BaseListItem.bd97231b.js" ] }, - "_BaseListItem.4eea691c.js": { - "file": "assets/BaseListItem.4eea691c.js", + "_BaseListItem.bd97231b.js": { + "file": "assets/BaseListItem.bd97231b.js", "imports": [ "resources/scripts/main.js", "_vendor.01d0adc5.js" ] }, "resources/scripts/admin/views/settings/AccountSetting.vue": { - "file": "assets/AccountSetting.d3009f2e.js", + "file": "assets/AccountSetting.3c63f5fd.js", "src": "resources/scripts/admin/views/settings/AccountSetting.vue", "isDynamicEntry": true, "imports": [ @@ -311,7 +311,7 @@ ] }, "resources/scripts/admin/views/settings/CompanyInfoSettings.vue": { - "file": "assets/CompanyInfoSettings.a1bb8458.js", + "file": "assets/CompanyInfoSettings.d640f156.js", "src": "resources/scripts/admin/views/settings/CompanyInfoSettings.vue", "isDynamicEntry": true, "imports": [ @@ -320,7 +320,7 @@ ] }, "resources/scripts/admin/views/settings/PreferencesSetting.vue": { - "file": "assets/PreferencesSetting.abc39a72.js", + "file": "assets/PreferencesSetting.5c1b78a2.js", "src": "resources/scripts/admin/views/settings/PreferencesSetting.vue", "isDynamicEntry": true, "imports": [ @@ -329,40 +329,40 @@ ] }, "resources/scripts/admin/views/settings/customization/CustomizationSetting.vue": { - "file": "assets/CustomizationSetting.5e54e84c.js", + "file": "assets/CustomizationSetting.1c2a30db.js", "src": "resources/scripts/admin/views/settings/customization/CustomizationSetting.vue", "isDynamicEntry": true, "imports": [ "resources/scripts/main.js", "_vendor.01d0adc5.js", - "_DragIcon.213b1d78.js", - "_payment.5c57bec3.js", - "_ItemUnitModal.01494bfb.js" + "_DragIcon.0a950eb9.js", + "_payment.bb0c6e9e.js", + "_ItemUnitModal.98d168e7.js" ] }, - "_ItemUnitModal.01494bfb.js": { - "file": "assets/ItemUnitModal.01494bfb.js", + "_ItemUnitModal.98d168e7.js": { + "file": "assets/ItemUnitModal.98d168e7.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, - "_payment.5c57bec3.js": { - "file": "assets/payment.5c57bec3.js", + "_payment.bb0c6e9e.js": { + "file": "assets/payment.bb0c6e9e.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, - "_DragIcon.213b1d78.js": { - "file": "assets/DragIcon.213b1d78.js", + "_DragIcon.0a950eb9.js": { + "file": "assets/DragIcon.0a950eb9.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, "resources/scripts/admin/views/settings/NotificationsSetting.vue": { - "file": "assets/NotificationsSetting.90090d1e.js", + "file": "assets/NotificationsSetting.7c27b8ff.js", "src": "resources/scripts/admin/views/settings/NotificationsSetting.vue", "isDynamicEntry": true, "imports": [ @@ -371,43 +371,43 @@ ] }, "resources/scripts/admin/views/settings/TaxTypesSetting.vue": { - "file": "assets/TaxTypesSetting.332f7c14.js", + "file": "assets/TaxTypesSetting.1ef5c19d.js", "src": "resources/scripts/admin/views/settings/TaxTypesSetting.vue", "isDynamicEntry": true, "imports": [ "resources/scripts/main.js", "_vendor.01d0adc5.js", - "_TaxTypeModal.bf6662b3.js" + "_TaxTypeModal.5b98d9fc.js" ] }, - "_TaxTypeModal.bf6662b3.js": { - "file": "assets/TaxTypeModal.bf6662b3.js", + "_TaxTypeModal.5b98d9fc.js": { + "file": "assets/TaxTypeModal.5b98d9fc.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, "resources/scripts/admin/views/settings/PaymentsModeSetting.vue": { - "file": "assets/PaymentsModeSetting.963d7ca9.js", + "file": "assets/PaymentsModeSetting.09e94b30.js", "src": "resources/scripts/admin/views/settings/PaymentsModeSetting.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_payment.5c57bec3.js", + "_payment.bb0c6e9e.js", "resources/scripts/main.js", - "_PaymentModeModal.9b5fc610.js" + "_PaymentModeModal.fb4664cf.js" ] }, - "_PaymentModeModal.9b5fc610.js": { - "file": "assets/PaymentModeModal.9b5fc610.js", + "_PaymentModeModal.fb4664cf.js": { + "file": "assets/PaymentModeModal.fb4664cf.js", "imports": [ "_vendor.01d0adc5.js", - "_payment.5c57bec3.js", + "_payment.bb0c6e9e.js", "resources/scripts/main.js" ] }, "resources/scripts/admin/views/settings/CustomFieldsSetting.vue": { - "file": "assets/CustomFieldsSetting.9f0813a0.js", + "file": "assets/CustomFieldsSetting.452cd2ca.js", "src": "resources/scripts/admin/views/settings/CustomFieldsSetting.vue", "isDynamicEntry": true, "imports": [ @@ -428,66 +428,66 @@ ] }, "resources/scripts/admin/views/settings/NotesSetting.vue": { - "file": "assets/NotesSetting.2f08acf1.js", + "file": "assets/NotesSetting.6010dd94.js", "src": "resources/scripts/admin/views/settings/NotesSetting.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_NoteModal.f6d01f84.js", - "_payment.5c57bec3.js" + "_NoteModal.5bd3cf32.js", + "_payment.bb0c6e9e.js" ] }, - "_NoteModal.f6d01f84.js": { - "file": "assets/NoteModal.f6d01f84.js", + "_NoteModal.5bd3cf32.js": { + "file": "assets/NoteModal.5bd3cf32.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_payment.5c57bec3.js" + "_payment.bb0c6e9e.js" ], "css": [ "assets/NoteModal.3245b7d3.css" ] }, "resources/scripts/admin/views/settings/ExpenseCategorySetting.vue": { - "file": "assets/ExpenseCategorySetting.80e0d8ac.js", + "file": "assets/ExpenseCategorySetting.9d23ded7.js", "src": "resources/scripts/admin/views/settings/ExpenseCategorySetting.vue", "isDynamicEntry": true, "imports": [ "resources/scripts/main.js", - "_category.4b37f0ed.js", + "_category.5ef2a7e7.js", "_vendor.01d0adc5.js", - "_CategoryModal.9a2e05b9.js" + "_CategoryModal.5e03bcbb.js" ] }, - "_category.4b37f0ed.js": { - "file": "assets/category.4b37f0ed.js", + "_category.5ef2a7e7.js": { + "file": "assets/category.5ef2a7e7.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, - "_CategoryModal.9a2e05b9.js": { - "file": "assets/CategoryModal.9a2e05b9.js", + "_CategoryModal.5e03bcbb.js": { + "file": "assets/CategoryModal.5e03bcbb.js", "imports": [ "_vendor.01d0adc5.js", - "_category.4b37f0ed.js", + "_category.5ef2a7e7.js", "resources/scripts/main.js" ] }, "resources/scripts/admin/views/settings/ExchangeRateProviderSetting.vue": { - "file": "assets/ExchangeRateProviderSetting.57eedd6c.js", + "file": "assets/ExchangeRateProviderSetting.a7b33d5f.js", "src": "resources/scripts/admin/views/settings/ExchangeRateProviderSetting.vue", "isDynamicEntry": true, "imports": [ - "_exchange-rate.dffa79b6.js", + "_exchange-rate.3b3d35e2.js", "resources/scripts/main.js", "_vendor.01d0adc5.js", "resources/scripts/components/base/base-table/BaseTable.vue" ] }, "resources/scripts/components/base/base-table/BaseTable.vue": { - "file": "assets/BaseTable.6e206ca7.js", + "file": "assets/BaseTable.ab76526e.js", "src": "resources/scripts/components/base/base-table/BaseTable.vue", "isDynamicEntry": true, "imports": [ @@ -496,65 +496,65 @@ ] }, "resources/scripts/admin/views/settings/MailConfigSetting.vue": { - "file": "assets/MailConfigSetting.91f66b99.js", + "file": "assets/MailConfigSetting.4b59b903.js", "src": "resources/scripts/admin/views/settings/MailConfigSetting.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_mail-driver.4ea1af6b.js", + "_mail-driver.69202299.js", "resources/scripts/main.js" ] }, - "_mail-driver.4ea1af6b.js": { - "file": "assets/mail-driver.4ea1af6b.js", + "_mail-driver.69202299.js": { + "file": "assets/mail-driver.69202299.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, "resources/scripts/admin/views/settings/FileDiskSetting.vue": { - "file": "assets/FileDiskSetting.b99dc80a.js", + "file": "assets/FileDiskSetting.467dcb51.js", "src": "resources/scripts/admin/views/settings/FileDiskSetting.vue", "isDynamicEntry": true, "imports": [ - "_disk.518ebc4b.js", + "_disk.62fb5cf1.js", "resources/scripts/main.js", "_vendor.01d0adc5.js" ] }, - "_disk.518ebc4b.js": { - "file": "assets/disk.518ebc4b.js", + "_disk.62fb5cf1.js": { + "file": "assets/disk.62fb5cf1.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, "resources/scripts/admin/views/settings/BackupSetting.vue": { - "file": "assets/BackupSetting.f5a6fab0.js", + "file": "assets/BackupSetting.e1ea237b.js", "src": "resources/scripts/admin/views/settings/BackupSetting.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_disk.518ebc4b.js" + "_disk.62fb5cf1.js" ] }, "resources/scripts/admin/views/settings/UpdateAppSetting.vue": { - "file": "assets/UpdateAppSetting.dcf672e8.js", + "file": "assets/UpdateAppSetting.700f9339.js", "src": "resources/scripts/admin/views/settings/UpdateAppSetting.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_LoadingIcon.44a6304d.js", - "_exchange-rate.dffa79b6.js" + "_LoadingIcon.e09a5e28.js", + "_exchange-rate.3b3d35e2.js" ], "css": [ "assets/UpdateAppSetting.7d8b987a.css" ] }, "resources/scripts/admin/views/settings/RolesSettings.vue": { - "file": "assets/RolesSettings.3be3bc63.js", + "file": "assets/RolesSettings.94da2291.js", "src": "resources/scripts/admin/views/settings/RolesSettings.vue", "isDynamicEntry": true, "imports": [ @@ -563,7 +563,7 @@ ] }, "resources/scripts/admin/views/items/Index.vue": { - "file": "assets/Index.2f43174e.js", + "file": "assets/Index.62cd1a7f.js", "src": "resources/scripts/admin/views/items/Index.vue", "isDynamicEntry": true, "imports": [ @@ -572,89 +572,89 @@ ] }, "resources/scripts/admin/views/items/Create.vue": { - "file": "assets/Create.bffd06e1.js", + "file": "assets/Create.6124b0ba.js", "src": "resources/scripts/admin/views/items/Create.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_ItemUnitModal.01494bfb.js" + "_ItemUnitModal.98d168e7.js" ] }, "resources/scripts/admin/views/expenses/Index.vue": { - "file": "assets/Index.9d0bbfbe.js", + "file": "assets/Index.bfe16422.js", "src": "resources/scripts/admin/views/expenses/Index.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_expense.e270a61c.js", - "_category.4b37f0ed.js", + "_expense.6f364fe1.js", + "_category.5ef2a7e7.js", "resources/scripts/main.js" ] }, - "_expense.e270a61c.js": { - "file": "assets/expense.e270a61c.js", + "_expense.6f364fe1.js": { + "file": "assets/expense.6f364fe1.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, "resources/scripts/admin/views/expenses/Create.vue": { - "file": "assets/Create.a722899f.js", + "file": "assets/Create.a6517fd4.js", "src": "resources/scripts/admin/views/expenses/Create.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_expense.e270a61c.js", - "_category.4b37f0ed.js", + "_expense.6f364fe1.js", + "_category.5ef2a7e7.js", "resources/scripts/main.js", - "_CreateCustomFields.a3a572c4.js", - "_CategoryModal.9a2e05b9.js", - "_ExchangeRateConverter.7d8c4309.js", - "_exchange-rate.dffa79b6.js" + "_CreateCustomFields.8531ebe0.js", + "_CategoryModal.5e03bcbb.js", + "_ExchangeRateConverter.285065a4.js", + "_exchange-rate.3b3d35e2.js" ] }, - "_ExchangeRateConverter.7d8c4309.js": { - "file": "assets/ExchangeRateConverter.7d8c4309.js", + "_ExchangeRateConverter.285065a4.js": { + "file": "assets/ExchangeRateConverter.285065a4.js", "imports": [ "resources/scripts/main.js", - "_exchange-rate.dffa79b6.js", + "_exchange-rate.3b3d35e2.js", "_vendor.01d0adc5.js" ] }, "resources/scripts/admin/views/users/Index.vue": { - "file": "assets/Index.857b8662.js", + "file": "assets/Index.9163b87f.js", "src": "resources/scripts/admin/views/users/Index.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_users.73a3faa4.js", + "_users.e0b660dd.js", "resources/scripts/main.js", "_AstronautIcon.948728ac.js" ] }, "resources/scripts/admin/views/users/Create.vue": { - "file": "assets/Create.625aeacb.js", + "file": "assets/Create.489d68ed.js", "src": "resources/scripts/admin/views/users/Create.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", "_index.esm.998a6eeb.js", - "_users.73a3faa4.js" + "_users.e0b660dd.js" ] }, "resources/scripts/admin/views/estimates/Index.vue": { - "file": "assets/Index.c0a868bd.js", + "file": "assets/Index.1b67a295.js", "src": "resources/scripts/admin/views/estimates/Index.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", "_ObservatoryIcon.1877bd3e.js", - "_EstimateIndexDropdown.4eab32d4.js", - "_SendEstimateModal.a8bc3854.js", - "_mail-driver.4ea1af6b.js" + "_EstimateIndexDropdown.7244b3a5.js", + "_SendEstimateModal.123953ba.js", + "_mail-driver.69202299.js" ] }, "_ObservatoryIcon.1877bd3e.js": { @@ -663,73 +663,73 @@ "_vendor.01d0adc5.js" ] }, - "_SendEstimateModal.a8bc3854.js": { - "file": "assets/SendEstimateModal.a8bc3854.js", + "_SendEstimateModal.123953ba.js": { + "file": "assets/SendEstimateModal.123953ba.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_mail-driver.4ea1af6b.js" + "_mail-driver.69202299.js" ] }, "resources/scripts/admin/views/estimates/create/EstimateCreate.vue": { - "file": "assets/EstimateCreate.4010e1b1.js", + "file": "assets/EstimateCreate.8e177523.js", "src": "resources/scripts/admin/views/estimates/create/EstimateCreate.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_SalesTax.0ff2d954.js", - "_CreateCustomFields.a3a572c4.js", - "_ExchangeRateConverter.7d8c4309.js", - "_TaxTypeModal.bf6662b3.js", - "_DragIcon.213b1d78.js", - "_SelectNotePopup.781ad74a.js", - "_NoteModal.f6d01f84.js", - "_payment.5c57bec3.js", - "_exchange-rate.dffa79b6.js" + "_SalesTax.7ce396b6.js", + "_CreateCustomFields.8531ebe0.js", + "_ExchangeRateConverter.285065a4.js", + "_TaxTypeModal.5b98d9fc.js", + "_DragIcon.0a950eb9.js", + "_SelectNotePopup.5f004c2c.js", + "_NoteModal.5bd3cf32.js", + "_payment.bb0c6e9e.js", + "_exchange-rate.3b3d35e2.js" ] }, - "_SalesTax.0ff2d954.js": { - "file": "assets/SalesTax.0ff2d954.js", + "_SalesTax.7ce396b6.js": { + "file": "assets/SalesTax.7ce396b6.js", "imports": [ "resources/scripts/main.js", - "_DragIcon.213b1d78.js", + "_DragIcon.0a950eb9.js", "_vendor.01d0adc5.js", - "_SelectNotePopup.781ad74a.js" + "_SelectNotePopup.5f004c2c.js" ] }, - "_SelectNotePopup.781ad74a.js": { - "file": "assets/SelectNotePopup.781ad74a.js", + "_SelectNotePopup.5f004c2c.js": { + "file": "assets/SelectNotePopup.5f004c2c.js", "imports": [ "_vendor.01d0adc5.js", - "_NoteModal.f6d01f84.js", + "_NoteModal.5bd3cf32.js", "resources/scripts/main.js" ] }, "resources/scripts/admin/views/estimates/View.vue": { - "file": "assets/View.1a50dc40.js", + "file": "assets/View.1fa1b212.js", "src": "resources/scripts/admin/views/estimates/View.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_EstimateIndexDropdown.4eab32d4.js", + "_EstimateIndexDropdown.7244b3a5.js", "resources/scripts/main.js", - "_SendEstimateModal.a8bc3854.js", - "_LoadingIcon.44a6304d.js", - "_mail-driver.4ea1af6b.js" + "_SendEstimateModal.123953ba.js", + "_LoadingIcon.e09a5e28.js", + "_mail-driver.69202299.js" ] }, "resources/scripts/admin/views/payments/Index.vue": { - "file": "assets/Index.492a896e.js", + "file": "assets/Index.597f85ba.js", "src": "resources/scripts/admin/views/payments/Index.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_payment.5c57bec3.js", + "_payment.bb0c6e9e.js", "_CapsuleIcon.dc769b69.js", - "_SendPaymentModal.1bb9d371.js", - "_mail-driver.4ea1af6b.js" + "_SendPaymentModal.57c4c1f4.js", + "_mail-driver.69202299.js" ] }, "_CapsuleIcon.dc769b69.js": { @@ -738,42 +738,42 @@ "_vendor.01d0adc5.js" ] }, - "_SendPaymentModal.1bb9d371.js": { - "file": "assets/SendPaymentModal.1bb9d371.js", + "_SendPaymentModal.57c4c1f4.js": { + "file": "assets/SendPaymentModal.57c4c1f4.js", "imports": [ "resources/scripts/main.js", "_vendor.01d0adc5.js", - "_payment.5c57bec3.js", - "_mail-driver.4ea1af6b.js" + "_payment.bb0c6e9e.js", + "_mail-driver.69202299.js" ] }, "resources/scripts/admin/views/payments/Create.vue": { - "file": "assets/Create.be897594.js", + "file": "assets/Create.03dd2833.js", "src": "resources/scripts/admin/views/payments/Create.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_ExchangeRateConverter.7d8c4309.js", + "_ExchangeRateConverter.285065a4.js", "resources/scripts/main.js", - "_payment.5c57bec3.js", - "_SelectNotePopup.781ad74a.js", - "_CreateCustomFields.a3a572c4.js", - "_PaymentModeModal.9b5fc610.js", - "_exchange-rate.dffa79b6.js", - "_NoteModal.f6d01f84.js" + "_payment.bb0c6e9e.js", + "_SelectNotePopup.5f004c2c.js", + "_CreateCustomFields.8531ebe0.js", + "_PaymentModeModal.fb4664cf.js", + "_exchange-rate.3b3d35e2.js", + "_NoteModal.5bd3cf32.js" ] }, "resources/scripts/admin/views/payments/View.vue": { - "file": "assets/View.abc1c107.js", + "file": "assets/View.dadb2ec2.js", "src": "resources/scripts/admin/views/payments/View.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_payment.5c57bec3.js", - "_SendPaymentModal.1bb9d371.js", - "_LoadingIcon.44a6304d.js", - "_mail-driver.4ea1af6b.js" + "_payment.bb0c6e9e.js", + "_SendPaymentModal.57c4c1f4.js", + "_LoadingIcon.e09a5e28.js", + "_mail-driver.69202299.js" ] }, "resources/scripts/admin/views/errors/404.vue": { @@ -785,16 +785,16 @@ ] }, "resources/scripts/admin/views/invoices/Index.vue": { - "file": "assets/Index.56add046.js", + "file": "assets/Index.cfd59198.js", "src": "resources/scripts/admin/views/invoices/Index.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", "_MoonwalkerIcon.ab503573.js", - "_InvoiceIndexDropdown.430bc329.js", - "_SendInvoiceModal.89e6012d.js", - "_mail-driver.4ea1af6b.js" + "_InvoiceIndexDropdown.a18e118f.js", + "_SendInvoiceModal.1e029d4e.js", + "_mail-driver.69202299.js" ] }, "_MoonwalkerIcon.ab503573.js": { @@ -803,97 +803,97 @@ "_vendor.01d0adc5.js" ] }, - "_SendInvoiceModal.89e6012d.js": { - "file": "assets/SendInvoiceModal.89e6012d.js", + "_SendInvoiceModal.1e029d4e.js": { + "file": "assets/SendInvoiceModal.1e029d4e.js", "imports": [ "resources/scripts/main.js", "_vendor.01d0adc5.js", - "_mail-driver.4ea1af6b.js" + "_mail-driver.69202299.js" ] }, "resources/scripts/admin/views/invoices/create/InvoiceCreate.vue": { - "file": "assets/InvoiceCreate.8ae6be7c.js", + "file": "assets/InvoiceCreate.6a7669bf.js", "src": "resources/scripts/admin/views/invoices/create/InvoiceCreate.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_SalesTax.0ff2d954.js", - "_ExchangeRateConverter.7d8c4309.js", - "_CreateCustomFields.a3a572c4.js", - "_TaxTypeModal.bf6662b3.js", - "_DragIcon.213b1d78.js", - "_SelectNotePopup.781ad74a.js", - "_NoteModal.f6d01f84.js", - "_payment.5c57bec3.js", - "_exchange-rate.dffa79b6.js" + "_SalesTax.7ce396b6.js", + "_ExchangeRateConverter.285065a4.js", + "_CreateCustomFields.8531ebe0.js", + "_TaxTypeModal.5b98d9fc.js", + "_DragIcon.0a950eb9.js", + "_SelectNotePopup.5f004c2c.js", + "_NoteModal.5bd3cf32.js", + "_payment.bb0c6e9e.js", + "_exchange-rate.3b3d35e2.js" ] }, "resources/scripts/admin/views/invoices/View.vue": { - "file": "assets/View.796e2446.js", + "file": "assets/View.b5d80566.js", "src": "resources/scripts/admin/views/invoices/View.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_InvoiceIndexDropdown.430bc329.js", + "_InvoiceIndexDropdown.a18e118f.js", "resources/scripts/main.js", - "_SendInvoiceModal.89e6012d.js", - "_LoadingIcon.44a6304d.js", - "_mail-driver.4ea1af6b.js" + "_SendInvoiceModal.1e029d4e.js", + "_LoadingIcon.e09a5e28.js", + "_mail-driver.69202299.js" ] }, "resources/scripts/admin/views/recurring-invoices/Index.vue": { - "file": "assets/Index.f1fe364f.js", + "file": "assets/Index.40a6e1ec.js", "src": "resources/scripts/admin/views/recurring-invoices/Index.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_SendInvoiceModal.89e6012d.js", - "_RecurringInvoiceIndexDropdown.37d4a992.js", + "_SendInvoiceModal.1e029d4e.js", + "_RecurringInvoiceIndexDropdown.44561f32.js", "_MoonwalkerIcon.ab503573.js", - "_mail-driver.4ea1af6b.js" + "_mail-driver.69202299.js" ] }, - "_RecurringInvoiceIndexDropdown.37d4a992.js": { - "file": "assets/RecurringInvoiceIndexDropdown.37d4a992.js", + "_RecurringInvoiceIndexDropdown.44561f32.js": { + "file": "assets/RecurringInvoiceIndexDropdown.44561f32.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, "resources/scripts/admin/views/recurring-invoices/create/RecurringInvoiceCreate.vue": { - "file": "assets/RecurringInvoiceCreate.e076e6ab.js", + "file": "assets/RecurringInvoiceCreate.8ea74176.js", "src": "resources/scripts/admin/views/recurring-invoices/create/RecurringInvoiceCreate.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_SalesTax.0ff2d954.js", + "_SalesTax.7ce396b6.js", "resources/scripts/main.js", - "_ExchangeRateConverter.7d8c4309.js", - "_CreateCustomFields.a3a572c4.js", - "_TaxTypeModal.bf6662b3.js", - "_DragIcon.213b1d78.js", - "_SelectNotePopup.781ad74a.js", - "_NoteModal.f6d01f84.js", - "_payment.5c57bec3.js", - "_exchange-rate.dffa79b6.js" + "_ExchangeRateConverter.285065a4.js", + "_CreateCustomFields.8531ebe0.js", + "_TaxTypeModal.5b98d9fc.js", + "_DragIcon.0a950eb9.js", + "_SelectNotePopup.5f004c2c.js", + "_NoteModal.5bd3cf32.js", + "_payment.bb0c6e9e.js", + "_exchange-rate.3b3d35e2.js" ] }, "resources/scripts/admin/views/recurring-invoices/View.vue": { - "file": "assets/View.aa6cd8ac.js", + "file": "assets/View.57eb7885.js", "src": "resources/scripts/admin/views/recurring-invoices/View.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_LoadingIcon.44a6304d.js", - "_InvoiceIndexDropdown.430bc329.js", - "_RecurringInvoiceIndexDropdown.37d4a992.js" + "_LoadingIcon.e09a5e28.js", + "_InvoiceIndexDropdown.a18e118f.js", + "_RecurringInvoiceIndexDropdown.44561f32.js" ] }, "resources/scripts/admin/views/reports/layout/Index.vue": { - "file": "assets/Index.a3eeb117.js", + "file": "assets/Index.1117c7c6.js", "src": "resources/scripts/admin/views/reports/layout/Index.vue", "isDynamicEntry": true, "imports": [ @@ -902,17 +902,17 @@ ] }, "resources/scripts/admin/views/installation/Installation.vue": { - "file": "assets/Installation.e5762019.js", + "file": "assets/Installation.85c2b6a4.js", "src": "resources/scripts/admin/views/installation/Installation.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_mail-driver.4ea1af6b.js" + "_mail-driver.69202299.js" ] }, "resources/scripts/admin/views/modules/Index.vue": { - "file": "assets/Index.de1759af.js", + "file": "assets/Index.e5c8e723.js", "src": "resources/scripts/admin/views/modules/Index.vue", "isDynamicEntry": true, "imports": [ @@ -921,7 +921,7 @@ ] }, "resources/scripts/admin/views/modules/View.vue": { - "file": "assets/View.f7652815.js", + "file": "assets/View.da42cf28.js", "src": "resources/scripts/admin/views/modules/View.vue", "isDynamicEntry": true, "imports": [ @@ -938,155 +938,155 @@ ] }, "resources/scripts/customer/layouts/LayoutBasic.vue": { - "file": "assets/LayoutBasic.df06fd51.js", + "file": "assets/LayoutBasic.d42d886d.js", "src": "resources/scripts/customer/layouts/LayoutBasic.vue", "isDynamicEntry": true, "imports": [ - "_auth.4644c288.js", + "_auth.0e030165.js", "_vendor.01d0adc5.js", - "_global.08b6a984.js", + "_global.ab8f317c.js", "resources/scripts/main.js", - "_NotificationRoot.a98180ab.js" + "_NotificationRoot.79eede9f.js" ] }, - "_global.08b6a984.js": { - "file": "assets/global.08b6a984.js", + "_global.ab8f317c.js": { + "file": "assets/global.ab8f317c.js", "imports": [ - "_auth.4644c288.js", + "_auth.0e030165.js", "resources/scripts/main.js", "_vendor.01d0adc5.js" ] }, - "_auth.4644c288.js": { - "file": "assets/auth.4644c288.js", + "_auth.0e030165.js": { + "file": "assets/auth.0e030165.js", "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js" ] }, "resources/scripts/customer/layouts/LayoutLogin.vue": { - "file": "assets/LayoutLogin.96ca0d8f.js", + "file": "assets/LayoutLogin.65e9ed77.js", "src": "resources/scripts/customer/layouts/LayoutLogin.vue", "isDynamicEntry": true, "imports": [ - "_NotificationRoot.a98180ab.js", + "_NotificationRoot.79eede9f.js", "resources/scripts/main.js", "_vendor.01d0adc5.js" ] }, "resources/scripts/customer/views/auth/Login.vue": { - "file": "assets/Login.e5a5b4de.js", + "file": "assets/Login.9a626b8a.js", "src": "resources/scripts/customer/views/auth/Login.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_auth.4644c288.js", + "_auth.0e030165.js", "resources/scripts/main.js" ] }, "resources/scripts/customer/views/auth/ForgotPassword.vue": { - "file": "assets/ForgotPassword.51f99d8b.js", + "file": "assets/ForgotPassword.5b735567.js", "src": "resources/scripts/customer/views/auth/ForgotPassword.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_auth.4644c288.js", + "_auth.0e030165.js", "resources/scripts/main.js" ] }, "resources/scripts/customer/views/auth/ResetPassword.vue": { - "file": "assets/ResetPassword.485b38b4.js", + "file": "assets/ResetPassword.d34fd48c.js", "src": "resources/scripts/customer/views/auth/ResetPassword.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_global.08b6a984.js", - "_auth.4644c288.js", + "_global.ab8f317c.js", + "_auth.0e030165.js", "resources/scripts/main.js" ] }, "resources/scripts/customer/views/dashboard/Dashboard.vue": { - "file": "assets/Dashboard.4e48457e.js", + "file": "assets/Dashboard.1686f020.js", "src": "resources/scripts/customer/views/dashboard/Dashboard.vue", "isDynamicEntry": true, "imports": [ - "_EstimateIcon.1f3b368d.js", + "_EstimateIcon.8ca6d05b.js", "_vendor.01d0adc5.js", - "_global.08b6a984.js", - "_auth.4644c288.js", + "_global.ab8f317c.js", + "_auth.0e030165.js", "resources/scripts/main.js", "resources/scripts/components/base/base-table/BaseTable.vue" ] }, "resources/scripts/customer/views/invoices/Index.vue": { - "file": "assets/Index.a00a8636.js", + "file": "assets/Index.43ec37d8.js", "src": "resources/scripts/customer/views/invoices/Index.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_invoice.b61ade7d.js", + "_invoice.7c108372.js", "resources/scripts/components/base/base-table/BaseTable.vue", - "_global.08b6a984.js", + "_global.ab8f317c.js", "_MoonwalkerIcon.ab503573.js", - "_auth.4644c288.js", + "_auth.0e030165.js", "resources/scripts/main.js" ] }, - "_invoice.b61ade7d.js": { - "file": "assets/invoice.b61ade7d.js", + "_invoice.7c108372.js": { + "file": "assets/invoice.7c108372.js", "imports": [ - "_auth.4644c288.js", + "_auth.0e030165.js", "_vendor.01d0adc5.js" ] }, "resources/scripts/customer/views/invoices/View.vue": { - "file": "assets/View.02e08873.js", + "file": "assets/View.8b14b89e.js", "src": "resources/scripts/customer/views/invoices/View.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_invoice.b61ade7d.js", - "_global.08b6a984.js", - "_auth.4644c288.js" + "_invoice.7c108372.js", + "_global.ab8f317c.js", + "_auth.0e030165.js" ] }, "resources/scripts/customer/views/estimates/Index.vue": { - "file": "assets/Index.36ae4778.js", + "file": "assets/Index.fe0e7efd.js", "src": "resources/scripts/customer/views/estimates/Index.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/components/base/base-table/BaseTable.vue", - "_global.08b6a984.js", - "_estimate.e6573e64.js", + "_global.ab8f317c.js", + "_estimate.d7337943.js", "_ObservatoryIcon.1877bd3e.js", "resources/scripts/main.js", - "_auth.4644c288.js" + "_auth.0e030165.js" ] }, - "_estimate.e6573e64.js": { - "file": "assets/estimate.e6573e64.js", + "_estimate.d7337943.js": { + "file": "assets/estimate.d7337943.js", "imports": [ "resources/scripts/main.js", "_vendor.01d0adc5.js", - "_auth.4644c288.js" + "_auth.0e030165.js" ] }, "resources/scripts/customer/views/estimates/View.vue": { - "file": "assets/View.00b10884.js", + "file": "assets/View.0fbb572e.js", "src": "resources/scripts/customer/views/estimates/View.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_estimate.e6573e64.js", - "_global.08b6a984.js", - "_auth.4644c288.js" + "_estimate.d7337943.js", + "_global.ab8f317c.js", + "_auth.0e030165.js" ] }, "resources/scripts/customer/views/payments/Index.vue": { - "file": "assets/Index.97b641ce.js", + "file": "assets/Index.b974602b.js", "src": "resources/scripts/customer/views/payments/Index.vue", "isDynamicEntry": true, "imports": [ @@ -1094,66 +1094,66 @@ "resources/scripts/components/base/base-table/BaseTable.vue", "_CapsuleIcon.dc769b69.js", "resources/scripts/main.js", - "_payment.037dd620.js", - "_global.08b6a984.js", - "_auth.4644c288.js" + "_payment.b9d460da.js", + "_global.ab8f317c.js", + "_auth.0e030165.js" ] }, - "_payment.037dd620.js": { - "file": "assets/payment.037dd620.js", + "_payment.b9d460da.js": { + "file": "assets/payment.b9d460da.js", "imports": [ - "_auth.4644c288.js", + "_auth.0e030165.js", "_vendor.01d0adc5.js" ] }, "resources/scripts/customer/views/payments/View.vue": { - "file": "assets/View.6c9abcf9.js", + "file": "assets/View.59fb53ba.js", "src": "resources/scripts/customer/views/payments/View.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", "resources/scripts/main.js", - "_payment.037dd620.js", - "_global.08b6a984.js", - "_auth.4644c288.js" + "_payment.b9d460da.js", + "_global.ab8f317c.js", + "_auth.0e030165.js" ] }, "resources/scripts/customer/views/settings/SettingsIndex.vue": { - "file": "assets/SettingsIndex.25913381.js", + "file": "assets/SettingsIndex.be01d1b2.js", "src": "resources/scripts/customer/views/settings/SettingsIndex.vue", "isDynamicEntry": true, "imports": [ - "_BaseListItem.4eea691c.js", + "_BaseListItem.bd97231b.js", "_vendor.01d0adc5.js", - "_global.08b6a984.js", + "_global.ab8f317c.js", "resources/scripts/main.js", - "_auth.4644c288.js" + "_auth.0e030165.js" ] }, "resources/scripts/customer/views/settings/CustomerSettings.vue": { - "file": "assets/CustomerSettings.3e617f27.js", + "file": "assets/CustomerSettings.e3f07130.js", "src": "resources/scripts/customer/views/settings/CustomerSettings.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_global.08b6a984.js", - "_auth.4644c288.js", + "_global.ab8f317c.js", + "_auth.0e030165.js", "resources/scripts/main.js" ] }, "resources/scripts/customer/views/settings/AddressInformation.vue": { - "file": "assets/AddressInformation.908aefd5.js", + "file": "assets/AddressInformation.71bff022.js", "src": "resources/scripts/customer/views/settings/AddressInformation.vue", "isDynamicEntry": true, "imports": [ "_vendor.01d0adc5.js", - "_global.08b6a984.js", - "_auth.4644c288.js", + "_global.ab8f317c.js", + "_auth.0e030165.js", "resources/scripts/main.js" ] }, "resources/scripts/components/base-select/BaseMultiselect.vue": { - "file": "assets/BaseMultiselect.b73cc8d6.js", + "file": "assets/BaseMultiselect.ed75c8b8.js", "src": "resources/scripts/components/base-select/BaseMultiselect.vue", "isDynamicEntry": true, "imports": [ @@ -1162,7 +1162,7 @@ ] }, "resources/scripts/components/base/base-editor/BaseEditor.vue": { - "file": "assets/BaseEditor.d94e3dc1.js", + "file": "assets/BaseEditor.464a133b.js", "src": "resources/scripts/components/base/base-editor/BaseEditor.vue", "isDynamicEntry": true, "imports": [ diff --git a/resources/scripts/locales/ar.json b/resources/scripts/locales/ar.json index b01881581..b1c166f6f 100644 --- a/resources/scripts/locales/ar.json +++ b/resources/scripts/locales/ar.json @@ -1,32 +1,37 @@ { "navigation": { - "dashboard": "الرئيسية", + "dashboard": "لوحة التحكم", "customers": "العملاء", - "items": "الأصناف", + "items": "بضائع/خدمات", "invoices": "الفواتير", + "recurring-invoices": "Recurring Invoices", "expenses": "النفقات", "estimates": "التقديرات", - "payments": "المدفوعات", + "payments": "الدفوعات", "reports": "التقارير", "settings": "الإعدادات", - "logout": "خروج", - "users": "المستخدمون" + "logout": "تسجيل الخروج", + "users": "المستخدمون", + "modules": "Modules" }, "general": { "add_company": "أضف شركة", "view_pdf": "عرض PDF", - "copy_pdf_url": "Copy PDF Url", + "copy_pdf_url": "نسخ رابط PDF", "download_pdf": "تنزيل PDF", "save": "حفظ", - "create": "خلق", - "cancel": "إلغاء الأمر", + "create": "إنشاء", + "cancel": "تراجع", "update": "تحديث", - "deselect": "Deselect", - "download": "تنزيل", + "deselect": "إلغاء الإختيار", + "download": "تحميل", "from_date": "من تاريخ", "to_date": "إلى تاريخ", "from": "من", "to": "إلى", + "ok": "Ok", + "yes": "Yes", + "no": "No", "sort_by": "ترتيب حسب", "ascending": "تصاعدي", "descending": "تنازلي", @@ -34,6 +39,7 @@ "body": "الجسم", "message": "رسالة", "send": "إرسال", + "preview": "Preview", "go_back": "إلى الخلف", "back_to_login": "العودة إلى تسجيل الدخول؟", "home": "الرئيسية", @@ -50,43 +56,50 @@ "discount": "خصم", "fixed": "ثابت", "percentage": "نسبة", - "tax": "ضريبة", + "tax": "اداء", "total_amount": "المبلغ الإجمالي", - "bill_to": "مطلوب من", + "bill_to": "الفاتورة لـ", "ship_to": "يشحن إلى", - "due": "واجبة السداد", + "due": "المتبقي", "draft": "مسودة", - "sent": "مرسلة", + "sent": "ارسلت", "all": "الكل", - "select_all": "تحديد الل", + "select_all": "تحديد الكل", + "select_template": "Select Template", "choose_file": "اضغط هنا لاختيار ملف", "choose_template": "اختيار القالب", "choose": "اختر", - "remove": "إزالة", - "powered_by": "تصميم", - "bytefury": "باترفوري", + "remove": "حذف", "select_a_status": "اختر الحالة", - "select_a_tax": "اختر الضريبة", + "select_a_tax": "اختر الاداء", "search": "بحث", - "are_you_sure": "هل أنت متأكد?", + "are_you_sure": "هل أنت متأكد؟", "list_is_empty": "القائمة فارغة.", "no_tax_found": "لا يوجد ضريبة!", "four_zero_four": "404", "you_got_lost": "عفواً! يبدو أنك قد تهت!", - "go_home": "عودة إلى الرئيسية", - "test_mail_conf": "اختبار تكوين البريد", + "go_home": "الذهاب الى الصفحة الرئيسية", + "test_mail_conf": "اختبار اعدادات البريد", "send_mail_successfully": "تم إرسال البريد بنجاح", "setting_updated": "تم تحديث الإعدادات بنجاح", "select_state": "اختر الولاية/المنطقة", "select_country": "اختر الدولة", "select_city": "اختر المدينة", "street_1": "عنوان الشارع 1", - "street_2": "عنوان الشارع 2", + "street_2": "الشارع 2", "action_failed": "فشلت العملية", "retry": "أعد المحاولة", "choose_note": "اختر ملاحظة", "no_note_found": "لم يتم العثور على الملاحظة", - "insert_note": "أدخل ملاحظة" + "insert_note": "أدخل ملاحظة", + "copied_pdf_url_clipboard": "تم نسخ رابط PDF إلى الحافظة!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Docs", + "do_you_wish_to_continue": "Do you wish to continue?", + "note": "Note", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { "select_year": "اختر السنة", @@ -94,7 +107,8 @@ "due_amount": "المبلغ المطلوب", "customers": "العملاء", "invoices": "الفواتير", - "estimates": "التقديرات" + "estimates": "التقديرات", + "payments": "Payments" }, "chart_info": { "total_sales": "المبيعات", @@ -135,8 +149,28 @@ "users": "المستخدمون", "no_results_found": "لم يتم العثور على نتائج" }, + "company_switcher": { + "label": "SWITCH COMPANY", + "no_results_found": "No Results Found", + "add_new_company": "Add new company", + "new_company": "New company", + "created_message": "Company created successfully" + }, + "dateRange": { + "today": "Today", + "this_week": "This Week", + "this_month": "This Month", + "this_quarter": "This Quarter", + "this_year": "This Year", + "previous_week": "Previous Week", + "previous_month": "Previous Month", + "previous_quarter": "Previous Quarter", + "previous_year": "Previous Year", + "custom": "Custom" + }, "customers": { "title": "العملاء", + "prefix": "Prefix", "add_customer": "إضافة عميل", "contacts_list": "قائمة العملاء", "name": "الاسم", @@ -151,7 +185,10 @@ "phone": "الهاتف", "website": "موقع الإنترنت", "overview": "استعراض", - "enable_portal": "Enable Portal", + "invoice_prefix": "Invoice Prefix", + "estimate_prefix": "Estimate Prefix", + "payment_prefix": "Payment Prefix", + "enable_portal": "تفعيل البوابة", "country": "الدولة", "state": "الولاية/المنطقة", "city": "المدينة", @@ -159,6 +196,7 @@ "added_on": "أضيف في", "action": "إجراء", "password": "كلمة المرور", + "confirm_password": "Confirm Password", "street_number": "رقم الشارع", "primary_currency": "العملة الرئيسية", "description": "الوصف", @@ -169,13 +207,17 @@ "new_customer": "عميل جديد", "edit_customer": "تعديل عميل", "basic_info": "معلوات أساسية", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", "billing_address": "عنوان الفوترة", "shipping_address": "عنوان الشحن", "copy_billing_address": "نسخ من عنوان الفوترة", "no_customers": "لا يوجد عملاء حتى الآن!", "no_customers_found": "لم يتم الحصول على عملاء!", - "no_contact": "No contact", - "no_contact_name": "No contact name", + "no_contact": "ليست هناك جهات اتصال", + "no_contact_name": "اسم جهة الاتصال غير موجود", "list_of_customers": "سوف يحتوي هذا القسم على قائمة العملاء.", "primary_display_name": "اسم العرض الرئيسي", "select_currency": "اختر العملة", @@ -188,7 +230,9 @@ "confirm_delete": "لن تتمكن من استرداد هذا العميل وجميع الفواتير والتقديرات والمدفوعات ذات الصلة. | لن تتمكن من استرداد هؤلاء العملاء وجميع الفواتير والتقديرات والمدفوعات ذات الصلة.", "created_message": "تم إنشاء العملاء بنجاح", "updated_message": "تم تحديث العملاء بنجاح", - "deleted_message": "تم حذف العملاء بنجاح | تم حذف العميل بنجاح" + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "تم حذف العملاء بنجاح | تم حذف العميل بنجاح", + "edit_currency_not_allowed": "Cannot change currency once transactions created." }, "items": { "title": "الأصناف", @@ -199,7 +243,7 @@ "added_on": "أضيف في", "price": "السعر", "date_of_creation": "تاريخ الإنشاء", - "not_selected": "No item selected", + "not_selected": "لم يتم إختيار أي عنصر", "action": "إجراء", "add_item": "إضافة صنف", "save_item": "حفظ الصنف", @@ -220,6 +264,8 @@ }, "estimates": { "title": "التقديرات", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", "estimate": "تقدير | تقديرات", "estimates_list": "قائمة التقديرات", "days": "{days} أيام", @@ -270,9 +316,11 @@ "required": "حقل مطلوب" }, "accepted": "مقبول", - "rejected": "Rejected", + "rejected": "مرفوض", + "expired": "Expired", "sent": "مرسل", "draft": "مسودة", + "viewed": "Viewed", "declined": "مرفوض", "new_estimate": "تقدير جديد", "add_new_estimate": "إضافة تقدير جديد", @@ -309,16 +357,19 @@ }, "invoices": { "title": "الفواتير", + "download": "Download", + "pay_invoice": "Pay Invoice", "invoices_list": "قائمة الفواتير", + "invoice_information": "Invoice Information", "days": "{days} أيام", "months": "{months} أشهر", "years": "{years} سنوات", "all": "الكل", "paid": "مدفوع", "unpaid": "غير مدفوع", - "viewed": "Viewed", - "overdue": "Overdue", - "completed": "Completed", + "viewed": "شوهد", + "overdue": "متأخر", + "completed": "اكتمل", "customer": "العميل", "paid_status": "حالة الدفع", "ref_no": "رقم المرجع.", @@ -344,10 +395,13 @@ "send_invoice": "إرسال الفاتورة", "resend_invoice": "إعادة إرسال الفاتورة", "invoice_template": "قالب الفاتورة", + "conversion_message": "Invoice cloned successful", "template": "قالب", "mark_as_sent": "تحديد كمرسل", "confirm_send_invoice": "سيتم إرسال هذه الفاتورة بالبريد الألكتروني إلى العميل", "invoice_mark_as_sent": "سيتم تحديد هذه الفاتورة كمرسلة", + "confirm_mark_as_accepted": "This invoice will be marked as Accepted", + "confirm_mark_as_rejected": "This invoice will be marked as Rejected", "confirm_send": "سيتم إرسال هذه الفاتورة بالبريد الألكتروني إلى العميل", "invoice_date": "تاريخ الفاتورة", "record_payment": "تسجيل مدفوعات", @@ -359,11 +413,13 @@ "update_invoice": "تحديث الفاتورة", "add_new_tax": "إضافة ضريبة جديدة", "no_invoices": "لا يوجد فواتير حتى الآن!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", "list_of_invoices": "قائمة الفواتير .", "select_invoice": "اختر الفاتورة", "no_matching_invoices": "لا يوجد فواتير مطابقة!", "mark_as_sent_successfully": "تم تحديد الفاتورة كمرسلة بنجاح", - "invoice_sent_successfully": "تم إرسال الفاتورة بنجاح", + "invoice_sent_successfully": "Invoice sent successfully", "cloned_successfully": "تم استنساخ الفاتورة بنجاح", "clone_invoice": "استنساخ الفاتورة", "confirm_clone": "سيتم استنساخ هذه الفاتورة في فاتورة جديدة", @@ -381,6 +437,7 @@ "select_an_item": "اكتب أو انقر لاختيار صنف", "type_item_description": "وصف الصنف (اختياري)" }, + "payment_attached_message": "هناك مدفوعات مرتبطة بالفعل بإحدى الفواتير المحددة. تأكد من حذف المدفوعات المرتبطة أولاً قبل حذف الفاتورة.", "confirm_delete": "لن تتمكن من استرجاع الفاتورة بعد هذه الإجراء | لن تتمكن من استرجاع الفواتير بعد هذا الإجراء", "created_message": "تم إنشاء الفاتورة بنجاح", "updated_message": "تم تحديث الفاتورة بنجاح", @@ -389,6 +446,115 @@ "something_went_wrong": "خطأ غير معروف!", "invalid_due_amount_message": "المبلغ النهائي للفاتورة لا يمكن أن يكون أقل من المبلغ المطلوب لها. رجاءاً حدث الفاتورة أو قم بحذف المدفوعات المرتبطة بها للاستمرار." }, + "recurring_invoices": { + "title": "Recurring Invoices", + "invoices_list": "Recurring Invoices List", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Viewed", + "overdue": "Overdue", + "active": "Active", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, "payments": { "title": "المدفوعات", "payments_list": "قائمة المدفوعات", @@ -406,20 +572,20 @@ "edit_payment": "تعديل الدفعة", "view_payment": "عرض الدفعة", "add_new_payment": "إضافة دفعة جديدة", - "send_payment_receipt": "Send Payment Receipt", + "send_payment_receipt": "إرسال إيصال الدفع", "send_payment": "إرسال الدفعة", "save_payment": "حفظ الدفعة", "update_payment": "تحديث الدفعة", "payment": "دفعة | مدفوعات", "no_payments": "لا يوجد مدفوعات حتى الآن!", - "not_selected": "Not selected", - "no_invoice": "No invoice", + "not_selected": "لم يتم تحديد", + "no_invoice": "لا توجد فاتورة", "no_matching_payments": "لا توجد مدفوعات مطابقة!", "list_of_payments": "سوف تحتوي هذه القائمة على مدفوعات الفواتير.", "select_payment_mode": "اختر طريقة الدفع", "confirm_mark_as_sent": "سيتم التحديد كمرسل على هذا التقدير", - "confirm_send_payment": "This payment will be sent via email to the customer", - "send_payment_successfully": "Payment sent successfully", + "confirm_send_payment": "سيتم إرسال هذه الدفعة عبر البريد الإلكتروني إلى العميل", + "send_payment_successfully": "تم إرسال الدفعة بنجاح", "something_went_wrong": "خطأ غير معروف!", "confirm_delete": "لن تكون قادر على استرجاع هذه الدفعة | لن تكون قادراً على استرجاع هذه المدفوعات", "created_message": "تم إنشاء الدفعة بنجاح", @@ -433,6 +599,7 @@ "select_a_customer": "حدد عميلاً", "expense_title": "العنوان", "customer": "العميل", + "currency": "Currency", "contact": "تواصل", "category": "الفئة", "from_date": "من تاريخ", @@ -442,7 +609,7 @@ "receipt": "سند القبض", "amount": "المبلغ المطلوب", "action": "إجراء", - "not_selected": "Not selected", + "not_selected": "لم يتم تحديد", "note": "ملاحظة", "category_id": "رمز الفئة", "date": "تاريخ النفقات", @@ -486,6 +653,51 @@ "enter_password": "أكتب كلمة المرور", "retype_password": "أعد كتابة كلمة المرور" }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, "users": { "title": "المستخدمون", "users_list": "قائمة المستخدمين", @@ -510,7 +722,9 @@ "confirm_delete": "لن تتمكن من استرداد هذا العنصر | لن تتمكن من استرداد هؤلاء المستخدمين", "created_message": "تم إنشاء المستخدم بنجاح", "updated_message": "تم تحديث المستخدم بنجاح", - "deleted_message": "تم حذف المستخدم بنجاح | تم حذف المستخدم بنجاح" + "deleted_message": "تم حذف المستخدم بنجاح | تم حذف المستخدم بنجاح", + "select_company_role": "Select Role for {company}", + "companies": "Companies" }, "reports": { "title": "تقرير", @@ -587,7 +801,12 @@ "file_disk": "قرص الملف", "custom_fields": "الحقول المخصصة", "payment_modes": "طرق الدفع", - "notes": "ملاحظات" + "notes": "ملاحظات", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." }, "title": "إعدادات", "setting": "إعدادات | إعدادات", @@ -649,7 +868,13 @@ "address": "العنوان", "zip": "الرمز البريدي", "save": "حفظ", - "updated_message": "تم تحديث معلومات الشركة بنجاح" + "delete": "Delete", + "updated_message": "تم تحديث معلومات الشركة بنجاح", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" }, "custom_fields": { "title": "الحقول المخصصة", @@ -660,6 +885,7 @@ "label": "ضع الكلمة المناسبة", "type": "نوع", "name": "اسم", + "slug": "Slug", "required": "مطلوب", "placeholder": "عنصر نائب", "help_text": "نص المساعدة", @@ -685,85 +911,104 @@ "select_relative_date": "حدد التاريخ النسبي", "ticked_by_default": "يتم تحديده بشكل افتراضي", "updated_message": "تم تحديث الحقل المخصص بنجاح", - "added_message": "تمت إضافة الحقل المخصص بنجاح" + "added_message": "تمت إضافة الحقل المخصص بنجاح", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." }, "customization": { "customization": "التخصيص", - "save": "حفظ", - "addresses": { - "title": "العنوان", - "section_description": "يمكنك ضبط عنوان إرسال فواتير العملاء وتنسيق عنوان شحن العملاء (معروض في PDF فقط).", - "customer_billing_address": "عنوان فواتير العميل", - "customer_shipping_address": "عنوان الشحن للعميل", - "company_address": "عنوان الشركة", - "insert_fields": "أضف حقل", - "contact": "تواصل", - "address": "العنوان", - "display_name": "الاسم الظاهر", - "primary_contact_name": "مسؤول التواصل الرئيسي", - "email": "البريد الإلكتروني", - "website": "موقع الإنترنت", - "name": "الاسم", - "country": "الدولة", - "state": "الولاية/المنطقة", - "city": "المدينة", - "company_name": "اسم الشركة", - "address_street_1": "عنوان الشارع 1", - "address_street_2": "عنوان الشارع 2", - "phone": "الهاتف", - "zip_code": "الرمز البريدي", - "address_setting_updated": "تم تحديث العنوان بنجاح" - }, "updated_message": "تم تحديث معلومات الشركة بنجاح", + "save": "حفظ", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", "invoices": { "title": "الفواتير", - "notes": "ملاحظات", - "invoice_prefix": "بادئة رقم الفاتورة", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", "default_invoice_email_body": "نص الفاتورة الافتراضي للبريد الإلكتروني", - "invoice_settings": "إعدادات الفاتورة", - "autogenerate_invoice_number": "ترقيم آلي للفاتورة", - "autogenerate_invoice_number_desc": "تعطيل الترقيم الآلي ، إذا كنت لا ترغب في إنشاء أرقام الفاتورة تلقائيًا في كل مرة تقوم فيها بإنشاء فاتورة جديدة.", - "enter_invoice_prefix": "أدخل بادئة رقم الفاتورة", - "terms_and_conditions": "الأحكام والشروط", "company_address_format": "تنسيق عنوان الشركة", "shipping_address_format": "تنسيق عنوان الشحن", "billing_address_format": "تنسيق عنوان الفواتير", - "invoice_settings_updated": "تم تحديث إعداد الفاتورة بنجاح" + "invoice_email_attachment": "إرسال الفواتير كمرفقات", + "invoice_email_attachment_setting_description": "تفعيل هذا إذا كنت ترغب في إرسال الفواتير كمرفق بريد إلكتروني. يرجى ملاحظة أن زر \"عرض الفواتير\" في رسائل البريد الإلكتروني لن يتم عرضه بعد الآن عند التفعيل.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." }, "estimates": { "title": "التقديرات", - "estimate_prefix": "بادئة رقم التقدير", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", "default_estimate_email_body": "تقدير نص البريد الإلكتروني الافتراضي", - "estimate_settings": "إعدادت التقدير", - "autogenerate_estimate_number": "ترقيم آلي للتقدير", - "estimate_setting_description": "تعطيل الترقيم الآلي ، إذا كنت لا ترغب في إنشاء أرقام التقديرات تلقائيًا في كل مرة تقوم فيها بإنشاء تقدير جديد.", - "enter_estimate_prefix": "أدخل بادئة رقم التقدير", - "estimate_setting_updated": "تم تحديث إعدادات التقدير بنجاح", "company_address_format": "تنسيق عنوان الشركة", + "shipping_address_format": "تنسيق عنوان الشحن", "billing_address_format": "تنسيق عنوان الفواتير", - "shipping_address_format": "تنسيق عنوان الشحن" + "estimate_email_attachment": "إرسال التقديرات كمرفقات", + "estimate_email_attachment_setting_description": "تفعيل هذا إذا كنت ترغب في إرسال الفواتير كمرفق بريد إلكتروني. يرجى ملاحظة أن زر \"عرض التقديرات\" في رسائل البريد الإلكتروني لن يتم عرضه بعد الآن عند التفعيل.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" }, "payments": { "title": "المدفوعات", - "description": "Modes of transaction for payments", - "payment_prefix": "بادئة رقم الدفعة", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", "default_payment_email_body": "نص البريد الإلكتروني للدفع الافتراضي", - "payment_settings": "إعدادات الدفعة", - "autogenerate_payment_number": "ترقيم آلي للمدفوعات", - "payment_setting_description": "تعطيل الترقيم الآلي ، إذا كنت لا ترغب في إنشاء أرقام الدفعة تلقائيًا في كل مرة تقوم فيها بإنشاء دفعة جديدة.", - "enter_payment_prefix": "أدخل بادئة رقم الدفعة", - "payment_setting_updated": "تم تحديث إعدادات الدفعة بنجاح", - "payment_modes": "طرق الدفع", - "add_payment_mode": "أضف وضع الدفع", - "edit_payment_mode": "تحرير وضع الدفع", - "mode_name": "اسم الوضع", - "payment_mode_added": "تمت إضافة وضع الدفع", - "payment_mode_updated": "تم تحديث وضع الدفع", - "payment_mode_confirm_delete": "لن تتمكن من استعادة وضع الدفع هذا", - "already_in_use": "وضع الدفع قيد الاستخدام بالفعل", - "deleted_message": "تم حذف وضع الدفع بنجاح", "company_address_format": "تنسيق عنوان الشركة", - "from_customer_address_format": "من تنسيق عنوان العميل" + "from_customer_address_format": "من تنسيق عنوان العميل", + "payment_email_attachment": "إرسال المدفوعات كمرفقات", + "payment_email_attachment_setting_description": "تفعيل هذا إذا كنت ترغب في إرسال الفواتير كمرفق بريد إلكتروني. يرجى ملاحظة أن زر \"عرض المدفوعات\" في رسائل البريد الإلكتروني لن يتم عرضه بعد الآن عند التفعيل.", + "payment_settings_updated": "Payment Settings updated successfully" }, "items": { "title": "العناصر", @@ -779,7 +1024,7 @@ }, "notes": { "title": "ملاحظات", - "description": "Save time by creating notes and reusing them on your invoices, estimates & payments.", + "description": "توفير الوقت عن طريق إنشاء الملاحظات وإعادة استخدامها على الفواتير والتقديرات والمدفوعات.", "notes": "ملاحظات", "type": "نوع", "add_note": "اضف ملاحظة", @@ -822,6 +1067,57 @@ "email_save_message": "تم حفظ البريد الإلكتروني بنجاح", "please_enter_email": "فضلاً أدخل البريد الإلكتروني" }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, "tax_types": { "title": "أنواع الضرائب", "add_tax": "أضف ضريبة", @@ -841,6 +1137,18 @@ "confirm_delete": "لن تتمكن من استرجاع نوع الضرية هذا", "already_in_use": "ضريبة قيد الاستخدام" }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, "expense_category": { "title": "فئات النفقات", "action": "إجراء", @@ -865,14 +1173,23 @@ "discount_setting": "إعدادات الخصم", "discount_per_item": "خصم على الصنف ", "discount_setting_description": "قم بتمكين هذا إذا كنت تريد إضافة خصم إلى عناصر الفاتورة الفردية. بشكل افتراضي ، يتم إضافة الخصم مباشرة إلى الفاتورة.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", "save": "حفظ", "preference": "تفضيل | تفضيلات", "general_settings": "التفضيلات الافتراضية للنظام.", "updated_message": "تم تحديث التفضيلات بنجاح", "select_language": "اختر اللغة", "select_time_zone": "اختر المنطة الزمنية", - "select_date_format": "Select Date Format", - "select_financial_year": "اختر السنة المالية" + "select_date_format": "اختر صيغة التاريخ", + "select_financial_year": "اختر السنة المالية", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" }, "update_app": { "title": "تحديث النظام", @@ -880,7 +1197,7 @@ "check_update": "تحقق من التحديثات", "avail_update": "تحديث جديد متوفر", "next_version": "النسخة الجديدة", - "requirements": "Requirements", + "requirements": "المتطلبات", "update": "حدث الآن", "update_progress": "قيد التحديث...", "progress_text": "سوف يستغرق التحديث بضع دقائق. يرجى عدم تحديث الشاشة أو إغلاق النافذة قبل انتهاء التحديث", @@ -890,10 +1207,12 @@ "download_zip_file": "تنزيل ملف ZIP", "unzipping_package": "حزمة فك الضغط", "copying_files": "نسخ الملفات", + "deleting_files": "حذف الملفات الغير مستخدمة", "running_migrations": "إدارة عمليات الترحيل", "finishing_update": "تحديث التشطيب", "update_failed": "فشل التحديث", - "update_failed_text": "آسف! فشل التحديث الخاص بك في: {step} خطوة" + "update_failed_text": "آسف! فشل التحديث الخاص بك في: {step} خطوة", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." }, "backup": { "title": "النسخ الاحتياطي | النسخ الاحتياطية", @@ -905,7 +1224,7 @@ "path": "مسار", "new_disk": "قرص جديد", "created_at": "أنشئت في", - "size": "size", + "size": "حجم الملف", "dropbox": "بصندوق الإسقاط", "local": "محلي", "healthy": "صحي", @@ -915,7 +1234,7 @@ "select_disk": "حدد القرص", "action": "عمل", "deleted_message": "تم حذف النسخة الاحتياطية بنجاح", - "created_message": "Backup created successfully", + "created_message": "تم إنشاء النسخة الاحتياطية بنجاح", "invalid_disk_credentials": "بيانات اعتماد غير صالحة للقرص المحدد" }, "disk": { @@ -959,21 +1278,34 @@ "default_driver": "برنامج التشغيل الافتراضي", "is_default": "أمر افتراضي", "set_default_disk": "تعيين القرص الافتراضي", - "success_set_default_disk": "Disk set as default successfully", + "set_default_disk_confirm": "سيتم تعيين هذا القرص كالافتراضي وسيتم حفظ جميع ملفات PDF الجديدة على هذا القرص", + "success_set_default_disk": "تم تعيين القرص كالافتراضي بنجاح", "save_pdf_to_disk": "حفظ ملفات PDF على القرص", "disk_setting_description": "قم بتمكين هذا ، إذا كنت ترغب في حفظ نسخة من كل فاتورة ، تقدير وإيصال دفع PDF على القرص الافتراضي الخاص بك تلقائيًا. سيؤدي تشغيل هذا الخيار إلى تقليل وقت التحميل عند عرض ملفات PDF.", "select_disk": "حدد القرص", "disk_settings": "إعدادات القرص", - "confirm_delete": "Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater", + "confirm_delete": "لن تتأثر الملفات والمجلدات الموجودة في القرص المحدد ولكن سيتم حذف اعدادات القرص الخاص بك من Crater", "action": "عمل", - "edit_file_disk": "Edit File Disk", + "edit_file_disk": "تعديل قرص الملف", "success_create": "تمت إضافة القرص بنجاح", - "success_update": "Disk updated successfully", + "success_update": "تم تحديث القرص بنجاح", "error": "فشل إضافة القرص", - "deleted_message": "File Disk deleted successfully", + "deleted_message": "تم حذف ملف القرص بنجاح", "disk_variables_save_successfully": "تم تكوين القرص بنجاح", "disk_variables_save_error": "فشل تكوين القرص.", "invalid_disk_credentials": "بيانات اعتماد غير صالحة للقرص المحدد" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { @@ -991,6 +1323,7 @@ "logo_preview": "استعراض الشعار", "preferences": "التفضيلات", "preferences_desc": "التفضيلات الافتراضية للنظام", + "currency_set_alert": "The company's currency cannot be changed later.", "country": "الدولة", "state": "الولاية/المنطقة", "city": "المدينة", @@ -1016,10 +1349,10 @@ "port": "منفذ قاعدة البيانات", "password": "كلمة مرور قاعدة البيانات", "app_url": "عنوان الإنترنت للنظام", - "app_domain": "App Domain", + "app_domain": "رابط التطبيق", "username": "اسم المستخدم لقاعدة البيانات", "db_name": "سم قاعدة البيانات", - "db_path": "Database Path", + "db_path": "مسار قاعدة البيانات", "desc": "قم بإنشاء قاعدة بيانات على الخادم الخاص بك وتعيين بيانات الاعتماد باستخدام النموذج أدناه." }, "permissions": { @@ -1028,6 +1361,15 @@ "permission_confirm_desc": "فشل فحص أذونات المجلد", "permission_desc": "فيما يلي قائمة أذونات المجلد المطلوبة حتى يعمل التطبيق. في حالة فشل فحص الإذن ، تأكد من تحديث أذونات المجلد." }, + "verify_domain": { + "title": "التحقق من النطاق", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "نطاق التطبيق", + "verify_now": "تحقق الآن", + "success": "تم التحقق من النطاق بنجاح.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "التحقق والمتابعة" + }, "mail": { "host": "خادم البريد", "port": "منفذ البريد", @@ -1066,8 +1408,8 @@ }, "validation": { "invalid_phone": "رقم الهاتف غير صحيح", - "invalid_url": "عنوان انترنت غير صحيح (مثال: http://www.craterapp.com)", - "invalid_domain_url": "عنوان انترنت غير صحيح (مثال: craterapp.com)", + "invalid_url": "عنوان انترنت غير صحيح (مثال: http://www.crater.com)", + "invalid_domain_url": "عنوان انترنت غير صحيح (مثال: crater.com)", "required": "حقل مطلوب", "email_incorrect": "بريد الكتروني غير صحيح.", "email_already_taken": "هذا البريد الالكتروني مستخدم مسبقاً", @@ -1078,6 +1420,7 @@ "not_yet": "ليس بعد؟ أعد الإرسال الآن..", "password_min_length": "كلمة المرور يجب أن تتكون من {count} أحرف على الأقل", "name_min_length": "الاسم يجب أن يتكون من {count} أحرف على الأقل", + "prefix_min_length": "Prefix must have at least {count} letters.", "enter_valid_tax_rate": "أدخل معدل الضريبة بشكل صحيح", "numbers_only": "أرقام فقط.", "characters_only": "حروف فقط.", @@ -1092,55 +1435,87 @@ "price_minvalue": "يجب أن يكون السعر أكبر من صفر.", "amount_maxlength": "يجب ألا يزيد المبلغ عن 20 رقماً.", "amount_minvalue": "يجب أن يكون المبلغ أكبر من صفر.", + "discount_maxlength": "Discount should not be greater than max discount", "description_maxlength": "يجب ألا يزيد الوصف عن 255 حرفاً.", - "subject_maxlength": "Subject should not be greater than 100 characters.", - "message_maxlength": "Message should not be greater than 255 characters.", + "subject_maxlength": "يجب الا يزيد العنوان عن 100 حرف.", + "message_maxlength": "يجب ألا يزيد حجم النص عن 255 حرف.", "maximum_options_error": "الحد الأعلى هو {max} خيارات. قم بإزالة أحد الخيارات لتحديد خيار آخر.", "notes_maxlength": "يجب ألا يزيد حجم الملاحظات عن 255 حرفاً.", "address_maxlength": "يجب ألا يزيد العنوان عن 255 حرفاً.", "ref_number_maxlength": "يجب ألا يزيد الرقم المرجعي عن 255 حرفاً.", "prefix_maxlength": "يجب ألا تزيد البادئة عن 5 أحرف.", - "something_went_wrong": "خطأ غير معروف!" + "something_went_wrong": "خطأ غير معروف!", + "number_length_minvalue": "يجب أن تكون قيمة الرقم أكبر من الصفر", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, "pdf_estimate_label": "تقدير", "pdf_estimate_number": "رقم تقدير", "pdf_estimate_date": "تاريخ التقدير", - "pdf_estimate_expire_date": "Expiry date", + "pdf_estimate_expire_date": "تاريخ انتهاء الصلاحية", "pdf_invoice_label": "الفاتورة", "pdf_invoice_number": "رقم الفاتورة", "pdf_invoice_date": "تاريخ الفاتورة", - "pdf_invoice_due_date": "Due date", + "pdf_invoice_due_date": "تاريخ الاستحقاق", "pdf_notes": "ملاحظات", "pdf_items_label": "الأصناف", "pdf_quantity_label": "الكمية", "pdf_price_label": "السعر", "pdf_discount_label": "الخصم", "pdf_amount_label": "المبلغ المطلوب", - "pdf_subtotal": "Subtotal", + "pdf_subtotal": "المجموع الفرعي", "pdf_total": "الإجمالي", - "pdf_payment_label": "Payment", - "pdf_payment_receipt_label": "PAYMENT RECEIPT", - "pdf_payment_date": "Payment Date", + "pdf_payment_label": "الدفع", + "pdf_payment_receipt_label": "ايصال الدفع", + "pdf_payment_date": "تاريخ الدفع", "pdf_payment_number": "رقم الدفعة", "pdf_payment_mode": "نوع الدفعة", - "pdf_payment_amount_received_label": "Amount Received", - "pdf_expense_report_label": "EXPENSES REPORT", - "pdf_total_expenses_label": "TOTAL EXPENSE", - "pdf_profit_loss_label": "PROFIT & LOSS REPORT", - "pdf_sales_customers_label": "Sales Customer Report", - "pdf_sales_items_label": "Sales Item Report", - "pdf_tax_summery_label": "Tax Summary Report", - "pdf_income_label": "INCOME", - "pdf_net_profit_label": "NET PROFIT", - "pdf_customer_sales_report": "Sales Report: By Customer", - "pdf_total_sales_label": "TOTAL SALES", - "pdf_item_sales_label": "Sales Report: By Item", - "pdf_tax_report_label": "TAX REPORT", - "pdf_total_tax_label": "TOTAL TAX", + "pdf_payment_amount_received_label": "المبلغ المستلم", + "pdf_expense_report_label": "تقرير المصاريف", + "pdf_total_expenses_label": "مجموع المصاريف", + "pdf_profit_loss_label": "تقرير الارباح و الخسائر", + "pdf_sales_customers_label": "تقرير عملاء المبيعات", + "pdf_sales_items_label": "تقرير عناصر المبيعات", + "pdf_tax_summery_label": "تقرير ملخص الضرائب", + "pdf_income_label": "الايرادات", + "pdf_net_profit_label": "صافي الأرباح", + "pdf_customer_sales_report": "تقرير المبيعات: حسب العميل", + "pdf_total_sales_label": "مجموع المبيعات", + "pdf_item_sales_label": "تقرير المبيعات: حسب البضاعة او الخدمة", + "pdf_tax_report_label": "تقرير الاداءات", + "pdf_total_tax_label": "اجمالي الاداءات", "pdf_tax_types_label": "أنواع الضرائب", "pdf_expenses_label": "النفقات", "pdf_bill_to": "مطلوب من,", "pdf_ship_to": "يشحن إلى,", - "pdf_received_from": "Received from:", - "pdf_tax_label": "ضريبة" + "pdf_received_from": "تم الاستلام من:", + "pdf_tax_label": "Tax" } diff --git a/resources/scripts/locales/cs.json b/resources/scripts/locales/cs.json new file mode 100644 index 000000000..6c7892087 --- /dev/null +++ b/resources/scripts/locales/cs.json @@ -0,0 +1,1521 @@ +{ + "navigation": { + "dashboard": "Nástěnka", + "customers": "Zákazníci", + "items": "Položky", + "invoices": "Faktury", + "recurring-invoices": "Opakující se faktury", + "expenses": "Výdaje", + "estimates": "Nabídky", + "payments": "Platby", + "reports": "Hlášení", + "settings": "Nastavení", + "logout": "Odhlásit se", + "users": "Uživatelé", + "modules": "Modules" + }, + "general": { + "add_company": "Přidat firmu", + "view_pdf": "Zobrazit PDF", + "copy_pdf_url": "Kopírovat adresu PDF", + "download_pdf": "Stáhnout PDF", + "save": "Uložit", + "create": "Vytvořit", + "cancel": "Zrušit", + "update": "Aktualizovat", + "deselect": "Odznačit", + "download": "Stáhnout", + "from_date": "Od data", + "to_date": "Do data", + "from": "Od", + "to": "Do", + "ok": "OK", + "yes": "Ano", + "no": "Ne", + "sort_by": "Seřadit podle", + "ascending": "Vzestupně", + "descending": "Sestupně", + "subject": "Předmět", + "body": "Tělo", + "message": "Zpráva", + "send": "Odeslat", + "preview": "Náhled", + "go_back": "Vrátit se", + "back_to_login": "Zpět na přihlášení?", + "home": "Domů", + "filter": "Filtr", + "delete": "Smazat", + "edit": "Upravit", + "view": "Zobrazit", + "add_new_item": "Přidat novou položku", + "clear_all": "Vymazat vše", + "showing": "Zobrazuji", + "of": "z", + "actions": "Akce", + "subtotal": "MEZISOUČET", + "discount": "SLEVA", + "fixed": "Fixní", + "percentage": "Procentuálně", + "tax": "DANĚ", + "total_amount": "CELKOVÉ MNOŽSTVÍ", + "bill_to": "Příjemce faktury", + "ship_to": "Doručovací adresa", + "due": "Datum platnosti", + "draft": "Koncept", + "sent": "Odesláno", + "all": "Vše", + "select_all": "Vybrat vše", + "select_template": "Vybrat šablonu", + "choose_file": "Klikněte zde pro výběr souboru", + "choose_template": "Zvolit šablonu", + "choose": "Vybrat", + "remove": "Odebrat", + "select_a_status": "Vybrat stav", + "select_a_tax": "Vybrat daň", + "search": "Hledat", + "are_you_sure": "Opravdu?", + "list_is_empty": "Seznam je prázdný.", + "no_tax_found": "Žádná daň nebyla nalezena!", + "four_zero_four": "404", + "you_got_lost": "Jejda! Ztratili jste se!", + "go_home": "Návrat domů", + "test_mail_conf": "Otestovat konfiguraci mailů", + "send_mail_successfully": "Mail byl úspěšně odeslán", + "setting_updated": "Nastavení úspěšně aktualizováno", + "select_state": "Zvolte stát", + "select_country": "Zvolte zemi", + "select_city": "Zvolte město", + "street_1": "Ulice 1", + "street_2": "Ulice 2", + "action_failed": "Akce se nezdařila", + "retry": "Zkusit znovu", + "choose_note": "Zvolit poznámku", + "no_note_found": "Nebyly nalezeny žádné poznámky", + "insert_note": "Vložit poznámku", + "copied_pdf_url_clipboard": "Adresa PDF zkopírována do schránky!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Dokumentace", + "do_you_wish_to_continue": "Přejete si pokračovat?", + "note": "Poznámka", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" + }, + "dashboard": { + "select_year": "Vybrat rok", + "cards": { + "due_amount": "Částka k zaplacení", + "customers": "Zákazníci", + "invoices": "Faktury", + "estimates": "Odhady", + "payments": "Payments" + }, + "chart_info": { + "total_sales": "Slevy", + "total_receipts": "Doklady", + "total_expense": "Výdaje", + "net_income": "Čistý příjem", + "year": "Vybrat rok" + }, + "monthly_chart": { + "title": "Prodeje a výdaje" + }, + "recent_invoices_card": { + "title": "Splatné faktury", + "due_on": "Splatnost", + "customer": "Zákazník", + "amount_due": "Splatná částka", + "actions": "Akce", + "view_all": "Zobrazit vše" + }, + "recent_estimate_card": { + "title": "Nedávné nabídky", + "date": "Datum", + "customer": "Zákazník", + "amount_due": "Částka k zaplacení", + "actions": "Akce", + "view_all": "Zobrazit vše" + } + }, + "tax_types": { + "name": "Jméno", + "description": "Popis", + "percent": "Procento", + "compound_tax": "Kombinovaná daň" + }, + "global_search": { + "search": "Hledat...", + "customers": "Zákazníci", + "users": "Uživatelé", + "no_results_found": "Nebyly nalezeny žádné výsledky" + }, + "company_switcher": { + "label": "Přepnout firmy", + "no_results_found": "Nebyly nalezeny žádné výsledky", + "add_new_company": "Přidat firmu", + "new_company": "Nová firma", + "created_message": "Firma úspěšně vytvořena" + }, + "dateRange": { + "today": "Dnes", + "this_week": "Tento týden", + "this_month": "Tento měsíc", + "this_quarter": "Toto čtvrtletí", + "this_year": "Tento rok", + "previous_week": "Předchozí týden", + "previous_month": "Předchozí měsíc", + "previous_quarter": "Předchozí čtvrtletí", + "previous_year": "Předchozí rok", + "custom": "Vlastní" + }, + "customers": { + "title": "Zákazníci", + "prefix": "Prefix", + "add_customer": "Přidat zákazníka", + "contacts_list": "Seznam zákazníků", + "name": "Jméno", + "mail": "E-mail | E-maily", + "statement": "Výpis", + "display_name": "Zobrazené jméno", + "primary_contact_name": "Jméno primárního kontaktu", + "contact_name": "Jméno kontaktu", + "amount_due": "Částka k zaplacení", + "email": "Email", + "address": "Adresa", + "phone": "Telefon", + "website": "Webová stránka", + "overview": "Přehled", + "invoice_prefix": "Prefix pro faktury", + "estimate_prefix": "Prefix pro odhady", + "payment_prefix": "Prefix pro platby", + "enable_portal": "Povolit portál", + "country": "Země", + "state": "Stát", + "city": "Město", + "zip_code": "PSČ", + "added_on": "Přidáno dne", + "action": "Akce", + "password": "Heslo", + "confirm_password": "Potvrdit heslo", + "street_number": "Číslo ulice", + "primary_currency": "Primární měna", + "description": "Popis", + "add_new_customer": "Přidat nového zákazníka", + "save_customer": "Uložit zákazníka", + "update_customer": "Aktualizovat zákazníka", + "customer": "Zákazník | Zákazníci", + "new_customer": "Nový zákazník", + "edit_customer": "Upravit zákazníka", + "basic_info": "Základní informace", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", + "billing_address": "Fakturační adresa", + "shipping_address": "Doručovací adresa", + "copy_billing_address": "Zkopírovat z fakturace", + "no_customers": "Dosud žádní zákazníci!", + "no_customers_found": "Nebyli nalezeni žádní zákazníci!", + "no_contact": "Žádný kontakt", + "no_contact_name": "Bez jména kontaktu", + "list_of_customers": "Tato sekce bude obsahovat seznam zákazníků.", + "primary_display_name": "Primární zobrazované jméno", + "select_currency": "Vybrat měnu", + "select_a_customer": "Vybrat zákazníka", + "type_or_click": "Zadejte nebo klikněte pro výběr", + "new_transaction": "Nová transakce", + "no_matching_customers": "Neexistují žádní odpovídající zákazníci!", + "phone_number": "Telefonní číslo", + "create_date": "Datum vytvoření", + "confirm_delete": "Nebudete moci obnovit tohoto zákazníka a všechny jeho faktury, odhady a platby. | Nebudete moci obnovit tyto zákazníky a všechny jejich faktury, odhady a platby.", + "created_message": "Zákazník úspěšně vytvořen", + "updated_message": "Zákazník úspěšně upraven", + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Zákazník úspěšně smazán | Zákazníci úspěšně smazáni", + "edit_currency_not_allowed": "Po vytvoření transakce nelze změnit měnu." + }, + "items": { + "title": "Položky", + "items_list": "Seznam položek", + "name": "Název", + "unit": "Jednotka", + "description": "Popis", + "added_on": "Přidáno", + "price": "Cena", + "date_of_creation": "Datum vytvoření", + "not_selected": "Není vybrána žádná položka", + "action": "Akce", + "add_item": "Přidat položku", + "save_item": "Uložit položku", + "update_item": "Aktualizovat položku", + "item": "Položka | Položky", + "add_new_item": "Přidat novou položku", + "new_item": "Nová položka", + "edit_item": "Upravit položku", + "no_items": "Zatím žádné položky!", + "list_of_items": "Tato sekce bude obsahovat seznam položek.", + "select_a_unit": "vyberte jednotku", + "taxes": "Daně", + "item_attached_message": "Nelze odstranit položku, která se již používá", + "confirm_delete": "Nebudete moci obnovit tuto položku | Nebudete moci obnovit tyto položky", + "created_message": "Položka byla úspěšně vytvořena", + "updated_message": "Položka úspěšně upravena", + "deleted_message": "Položka byla úspěšně odstraněna | Položky byly úspěšně odstraněny" + }, + "estimates": { + "title": "Odhady", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", + "estimate": "Odhad | Odhady", + "estimates_list": "Seznam odhadů", + "days": "{days} dní", + "months": "{months} měsíc", + "years": "{years} rok", + "all": "Vše", + "paid": "Zaplacené", + "unpaid": "Neplacené", + "customer": "ZÁKAZNÍK", + "ref_no": "REFERENČNÍ ČÍSLO", + "number": "ČÍSLO", + "amount_due": "ČÁSTKA K ZAPLACENÍ", + "partially_paid": "Částečně zaplaceno", + "total": "Celkem", + "discount": "Sleva", + "sub_total": "Mezisoučet", + "estimate_number": "Odhadované číslo", + "ref_number": "Referenční číslo", + "contact": "Kontakt", + "add_item": "Přidat položku", + "date": "Datum", + "due_date": "Datum splatnosti", + "expiry_date": "Datum expirace", + "status": "Stav", + "add_tax": "Přidat daň", + "amount": "Částka", + "action": "Akce", + "notes": "Poznámky", + "tax": "Daň", + "estimate_template": "Šablona", + "convert_to_invoice": "Převést na fakturu", + "mark_as_sent": "Označit jako odeslané", + "send_estimate": "Odeslat odhad", + "resend_estimate": "Znovu odeslat odhad", + "record_payment": "Zaznamenat platbu", + "add_estimate": "Přidat odhad", + "save_estimate": "Uložit odhad", + "confirm_conversion": "Tento odhad bude použit k vytvoření nové faktury.", + "conversion_message": "Faktura byla úspěšně vytvořena", + "confirm_send_estimate": "Tento odhad bude zaslán e-mailem zákazníkovi", + "confirm_mark_as_sent": "Tento odhad bude označen jako odeslaný", + "confirm_mark_as_accepted": "Tento odhad bude označen jako Přijatý", + "confirm_mark_as_rejected": "Tento odhad bude označen jako Odmítnutý", + "no_matching_estimates": "Neexistují žádné odpovídající odhady!", + "mark_as_sent_successfully": "Odhad byl označen jako úspěšně odeslán", + "send_estimate_successfully": "Odhad byl úspěšně odeslán", + "errors": { + "required": "Pole je povinné" + }, + "accepted": "Přijato", + "rejected": "Odmítnuto", + "expired": "Expired", + "sent": "Odesláno", + "draft": "Koncept", + "viewed": "Viewed", + "declined": "Odmítnuto", + "new_estimate": "Nový odhad", + "add_new_estimate": "Přidat nový odhad", + "update_Estimate": "Aktualizovat odhad", + "edit_estimate": "Upravit odhad", + "items": "položky", + "Estimate": "Odhad | Odhady", + "add_new_tax": "Přidat novou daň", + "no_estimates": "Zatím žádné odhady!", + "list_of_estimates": "Tato sekce bude obsahovat seznam odhadů.", + "mark_as_rejected": "Označit jako odmítnuté", + "mark_as_accepted": "Označit jako přijaté", + "marked_as_accepted_message": "Odhad označen jako přijatý", + "marked_as_rejected_message": "Odhad označen jako odmítnutý", + "confirm_delete": "Nebudete moci obnovit tento odhad | Nebudete moci obnovit tyto odhady", + "created_message": "Odhad úspěšně vytvořen", + "updated_message": "Odhad úspěšně upraven", + "deleted_message": "Odhad úspěšně odstraněn | Odhady úspěšně odstraněny", + "something_went_wrong": "něco se nezdařilo", + "item": { + "title": "Název položky", + "description": "Popis", + "quantity": "Množství", + "price": "Cena", + "discount": "Sleva", + "total": "Celkem", + "total_discount": "Celková sleva", + "sub_total": "Mezisoučet", + "tax": "Daň", + "amount": "Množství", + "select_an_item": "Pište nebo klikněte pro výběr položky", + "type_item_description": "Zadejte popis položky (volitelné)" + } + }, + "invoices": { + "title": "Faktury", + "download": "Download", + "pay_invoice": "Pay Invoice", + "invoices_list": "Seznam faktur", + "invoice_information": "Invoice Information", + "days": "{days} dní", + "months": "{months} měsíc", + "years": "{years} rok", + "all": "Vše", + "paid": "Zaplacené", + "unpaid": "Neplacené", + "viewed": "Zobrazené", + "overdue": "Po splatnosti", + "completed": "Dokončené", + "customer": "ZÁKAZNÍK", + "paid_status": "STAV PLATBY", + "ref_no": "REFERENČNÍ ČÍSLO", + "number": "ČÍSLO", + "amount_due": "ČÁSTKA K ZAPLACENÍ", + "partially_paid": "Částečně zaplaceno", + "total": "Celkem", + "discount": "Sleva", + "sub_total": "Mezisoučet", + "invoice": "Faktura | Faktury", + "invoice_number": "Číslo faktury", + "ref_number": "Referenční číslo", + "contact": "Kontakt", + "add_item": "Přidat položku", + "date": "Datum", + "due_date": "Datum splatnosti", + "status": "Stav", + "add_tax": "Přidat daň", + "amount": "Částka", + "action": "Akce", + "notes": "Poznámky", + "view": "Zobrazit", + "send_invoice": "Odeslat fakturu", + "resend_invoice": "Znovu odeslat fakturu", + "invoice_template": "Šablona faktury", + "conversion_message": "Faktura byla úspěšně naklonována", + "template": "Vybrat šablonu", + "mark_as_sent": "Označit jako odeslané", + "confirm_send_invoice": "Tato faktura bude zaslána e-mailem zákazníkovi", + "invoice_mark_as_sent": "Tato faktura bude označena jako odeslaná", + "confirm_mark_as_accepted": "Tato faktura bude označena jako přijatá", + "confirm_mark_as_rejected": "Tato faktura bude označena jako odmítnutá", + "confirm_send": "Tato faktura bude zaslána e-mailem zákazníkovi", + "invoice_date": "Datum fakturace", + "record_payment": "Zaznamenat platbu", + "add_new_invoice": "Přidat novou fakturu", + "update_expense": "Aktualizovat výdaj", + "edit_invoice": "Upravit fakturu", + "new_invoice": "Nová faktura", + "save_invoice": "Uložit fakturu", + "update_invoice": "Upravit fakturu", + "add_new_tax": "Přidat novou daň", + "no_invoices": "Zatím žádné faktury!", + "mark_as_rejected": "Označit jako odmítnuté", + "mark_as_accepted": "Označit jako přijaté", + "list_of_invoices": "Tato sekce bude obsahovat seznam faktur.", + "select_invoice": "Vybrat fakturu", + "no_matching_invoices": "Neexistují žádné odpovídající faktury!", + "mark_as_sent_successfully": "Faktura označena jako úspěšně odeslaná", + "invoice_sent_successfully": "Faktura byla úspěšně odeslána", + "cloned_successfully": "Faktura úspěšně naklonována", + "clone_invoice": "Naklonovat fakturu", + "confirm_clone": "Tato faktura bude naklonována do nové faktury", + "item": { + "title": "Název položky", + "description": "Popis", + "quantity": "Množství", + "price": "Cena", + "discount": "Sleva", + "total": "Celkem", + "total_discount": "Celková sleva", + "sub_total": "Mezisoučet", + "tax": "Daň", + "amount": "Množství", + "select_an_item": "Pište nebo klikněte pro výběr položky", + "type_item_description": "Zadejte popis položky (volitelné)" + }, + "payment_attached_message": "Na jedné z vybraných faktur je již přiložena platba. Nezapomeňte nejprve odstranit připojené platby, abyste mohli pokračovat s odstraněním", + "confirm_delete": "Nebudete moci obnovit tuto fakturu | Nebudete moci obnovit tyto faktury", + "created_message": "Faktura byla úspěšně vytvořena", + "updated_message": "Faktura byla úspěšně upravena", + "deleted_message": "Faktura byla úspěšně odstraněna | Faktury byly úspěšně odstraněny", + "marked_as_sent_message": "Faktura označena jako úspěšně odeslaná", + "something_went_wrong": "něco se nezdařilo", + "invalid_due_amount_message": "Celková částka faktury nemůže být nižší než celková částka zaplacená za tuto fakturu. Chcete-li pokračovat, upravte fakturu nebo smažte související platby." + }, + "recurring_invoices": { + "title": "Opakující se faktury", + "invoices_list": "Seznam opakujících se faktur", + "days": "{days} dní", + "months": "{months} měsíc", + "years": "{years} rok", + "all": "Všechny", + "paid": "Zaplacené", + "unpaid": "Neplacené", + "viewed": "Zobrazené", + "overdue": "Po splatnosti", + "active": "Aktivní", + "completed": "Dokončené", + "customer": "ZÁKAZNÍK", + "paid_status": "STAV PLATBY", + "ref_no": "REFERENČNÍ ČÍSLO", + "number": "ČÍSLO", + "amount_due": "ČÁSTKA K ZAPLACENÍ", + "partially_paid": "Částečně zaplaceno", + "total": "Celkem", + "discount": "Sleva", + "sub_total": "Mezisoučet", + "invoice": "Opakující se faktura | Opakující se faktury", + "invoice_number": "Číslo opakující se faktury", + "next_invoice_date": "Datum další fakturace", + "ref_number": "Referenční číslo", + "contact": "Kontakt", + "add_item": "Přidat položku", + "date": "Datum", + "limit_by": "Omezit podle", + "limit_date": "Omezit datum", + "limit_count": "Omezit počet", + "count": "Počet", + "status": "Stav", + "select_a_status": "Vyberte stav", + "working": "Pracuje", + "on_hold": "Čekající", + "complete": "Dokončeno", + "add_tax": "Přidat daň", + "amount": "Množství", + "action": "Akce", + "notes": "Poznámky", + "view": "Zobrazit", + "basic_info": "Základní informace", + "send_invoice": "Odeslat opakující se fakturu", + "auto_send": "Automaticky odeslat", + "resend_invoice": "Znovu odeslat opakující se fakturu", + "invoice_template": "Šablona opakující se faktury", + "conversion_message": "Opakující se faktura byla úspěšně naklonována", + "template": "Šablona", + "mark_as_sent": "Označit jako odeslané", + "confirm_send_invoice": "Tato opakující se faktura bude odeslána e-mailem zákazníkovi", + "invoice_mark_as_sent": "Tato opakující se faktura bude označena jako odeslaná", + "confirm_send": "Tato opakující se faktura bude odeslána e-mailem zákazníkovi", + "starts_at": "Počáteční datum", + "due_date": "Splatnost faktury", + "record_payment": "Zaznamenat platbu", + "add_new_invoice": "Přidat novou opakující se fakturu", + "update_expense": "Aktualizovat výdaje", + "edit_invoice": "Upravit opakující se fakturu", + "new_invoice": "Přidat novou opakující se fakturu", + "send_automatically": "Odeslat automaticky", + "send_automatically_desc": "Povolte, pokud chcete automaticky odeslat fakturu zákazníkovi po jejím vytvoření.", + "save_invoice": "Uložit opakující se fakturu", + "update_invoice": "Upravit opakující se fakturu", + "add_new_tax": "Přidat novou daň", + "no_invoices": "Zatím žádné opakující se faktury!", + "mark_as_rejected": "Označit jako odmítnuté", + "mark_as_accepted": "Označit jako přijaté", + "list_of_invoices": "Tato sekce bude obsahovat seznam opakujících se faktur.", + "select_invoice": "Vybrat fakturu", + "no_matching_invoices": "Neexistují žádné odpovídající opakující se faktury!", + "mark_as_sent_successfully": "Opakující se faktura označena jako úspěšně odeslaná", + "invoice_sent_successfully": "Opakující se faktura byla úspěšně odeslána", + "cloned_successfully": "Opakující se faktura úspěšně naklonována", + "clone_invoice": "Naklonovat opakující se fakturu", + "confirm_clone": "Tato opakující se faktura bude naklonována do nové opakující se faktury", + "item": { + "title": "Název položky", + "description": "Popis", + "quantity": "Množství", + "price": "Cena", + "discount": "Sleva", + "total": "Celkem", + "total_discount": "Celková sleva", + "sub_total": "Mezisoučet", + "tax": "Daň", + "amount": "Množství", + "select_an_item": "Pište nebo klikněte pro výběr položky", + "type_item_description": "Zadejte popis položky (volitelné)" + }, + "frequency": { + "title": "Četnost", + "select_frequency": "Vybrat četnost", + "minute": "Minuta", + "hour": "Hodina", + "day_month": "Den v měsíci", + "month": "Měsíc", + "day_week": "Den v týdnu" + }, + "confirm_delete": "Nebudete moci obnovit tuto fakturu | Nebudete moci obnovit tyto faktury", + "created_message": "Opakující se faktura byla úspěšně vytvořena", + "updated_message": "Opakující se faktura úspěšně upravena", + "deleted_message": "Opakující se faktura úspěšně smazána | Opakující se faktury úspěšně odstraněny", + "marked_as_sent_message": "Opakující se faktura označena jako úspěšně odeslána", + "user_email_does_not_exist": "E-mail uživatele neexistuje", + "something_went_wrong": "něco se nezdařilo", + "invalid_due_amount_message": "Celková částka opakované faktury nemůže být nižší než celková částka zaplacená za tuto opakující se fakturu. Pro pokračování aktualizujte fakturu nebo odstraňte související platby." + }, + "payments": { + "title": "Platby", + "payments_list": "Seznam plateb", + "record_payment": "Zaznamenat platbu", + "customer": "Zákazník", + "date": "Datum", + "amount": "Množství", + "action": "Akce", + "payment_number": "Číslo platby", + "payment_mode": "Platební metoda", + "invoice": "Faktura", + "note": "Poznámka", + "add_payment": "Přidat platbu", + "new_payment": "Nová platba", + "edit_payment": "Upravit platbu", + "view_payment": "Zobrazit platbu", + "add_new_payment": "Přidat novou platbu", + "send_payment_receipt": "Odeslat potvrzení o platbě", + "send_payment": "Odeslat platbu", + "save_payment": "Uložit platbu", + "update_payment": "Upravit platbu", + "payment": "Platba | Platby", + "no_payments": "Zatím žádné platby!", + "not_selected": "Nevybráno", + "no_invoice": "Žádná faktura", + "no_matching_payments": "Neexistují žádné odpovídající platby!", + "list_of_payments": "Tato sekce bude obsahovat seznam plateb.", + "select_payment_mode": "Vyberte platební metodu", + "confirm_mark_as_sent": "Tento odhad bude označen jako odeslaný", + "confirm_send_payment": "Tato platba bude odeslána e-mailem zákazníkovi", + "send_payment_successfully": "Platba byla úspěšně odeslána", + "something_went_wrong": "něco se nezdařilo", + "confirm_delete": "Tuto platbu nebudete moci obnovit | Tyto platby nebudete moci obnovit", + "created_message": "Platba úspěšně vytvořena", + "updated_message": "Platba úspěšně upravena", + "deleted_message": "Platba úspěšně odstraněna | Platby úspěšně odstraněny", + "invalid_amount_message": "Částka platby je neplatná" + }, + "expenses": { + "title": "Výdaje", + "expenses_list": "Seznam výdajů", + "select_a_customer": "Vyberte zákazníka", + "expense_title": "Nadpis", + "customer": "Zákazník", + "currency": "Měna", + "contact": "Kontakt", + "category": "Kategorie", + "from_date": "Od data", + "to_date": "Do data", + "expense_date": "Datum", + "description": "Popis", + "receipt": "Doklad", + "amount": "Částka", + "action": "Akce", + "not_selected": "Nevybráno", + "note": "Poznámka", + "category_id": "ID kategorie", + "date": "Datum", + "add_expense": "Přidat výdaj", + "add_new_expense": "Přidat nový výdaj", + "save_expense": "Uložit výdaj", + "update_expense": "Upravit výdaj", + "download_receipt": "Stáhnout doklad", + "edit_expense": "Upravit výdaj", + "new_expense": "Nový výdaj", + "expense": "Výdaj | Výdaje", + "no_expenses": "Zatím žádné výdaje!", + "list_of_expenses": "Tato sekce bude obsahovat seznam výdajů.", + "confirm_delete": "Nebudete moci obnovit tento výdaj | Nebudete moci obnovit tyto výdaje", + "created_message": "Výdaj úspěšně vytvořen", + "updated_message": "Výdaj úspěšně aktualizován", + "deleted_message": "Výdaj byl úspěšně odstraněn | Výdaje byly úspěšně odstraněny", + "categories": { + "categories_list": "Seznam kategorií", + "title": "Nadpis", + "name": "Název", + "description": "Popis", + "amount": "Množství", + "actions": "Akce", + "add_category": "Přidat kategorii", + "new_category": "Nová kategorie", + "category": "Kategorie | Kategorie", + "select_a_category": "Vyberte kategorii" + } + }, + "login": { + "email": "E-mail", + "password": "Heslo", + "forgot_password": "Zapomněli jste heslo?", + "or_signIn_with": "nebo se přihlašte pomocí", + "login": "Přihlášení", + "register": "Registrace", + "reset_password": "Obnovit heslo", + "password_reset_successfully": "Obnovení hesla proběhlo úspěšně", + "enter_email": "Zadejte e-mail", + "enter_password": "Zadejte heslo", + "retype_password": "Zadejte heslo znovu" + }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, + "users": { + "title": "Uživatelé", + "users_list": "Seznam uživatelů", + "name": "Jméno", + "description": "Popis", + "added_on": "Přidáno dne", + "date_of_creation": "Datum vytvoření", + "action": "Akce", + "add_user": "Přidat uživatele", + "save_user": "Uložit uživatele", + "update_user": "Upravit uživatele", + "user": "Uživatel | Uživatelé", + "add_new_user": "Přidat nového uživatele", + "new_user": "Nový uživatel", + "edit_user": "Upravit uživatele", + "no_users": "Zatím žádní uživatelé!", + "list_of_users": "Tato sekce bude obsahovat seznam uživatelů.", + "email": "E-mail", + "phone": "Telefon", + "password": "Heslo", + "user_attached_message": "Nelze odstranit položku, která se již používá", + "confirm_delete": "Nebudete moci obnovit tohoto uživatele | Nebudete schopni obnovit tyto uživatele", + "created_message": "Uživatel byl úspěšně vytvořen", + "updated_message": "Uživatel byl úspěšně upraven", + "deleted_message": "Uživatel byl úspěšně odstraněn | Uživatelé byli úspěšně odstraněni", + "select_company_role": "Vyberte roli pro {company}", + "companies": "Společnosti" + }, + "reports": { + "title": "Report", + "from_date": "Datum od", + "to_date": "Do data", + "status": "Stav", + "paid": "Zaplaceno", + "unpaid": "Nezaplaceno", + "download_pdf": "Stáhnout PDF", + "view_pdf": "Zobrazit PDF", + "update_report": "Upravit report", + "report": "Report | Reporty", + "profit_loss": { + "profit_loss": "Zisk a ztráta", + "to_date": "Do data", + "from_date": "Od data", + "date_range": "Vybrat časový rozsah" + }, + "sales": { + "sales": "Prodeje", + "date_range": "Vybrat časový rozsah", + "to_date": "Do data", + "from_date": "Od data", + "report_type": "Typ reportu" + }, + "taxes": { + "taxes": "Daně", + "to_date": "Do data", + "from_date": "Od data", + "date_range": "Vybrat časový rozsah" + }, + "errors": { + "required": "Pole je povinné" + }, + "invoices": { + "invoice": "Faktura", + "invoice_date": "Datum fakturace", + "due_date": "Datum splatnosti", + "amount": "Množství", + "contact_name": "Jméno kontaktu", + "status": "Stav" + }, + "estimates": { + "estimate": "Odhad", + "estimate_date": "Datum odhadu", + "due_date": "Datum splatnosti", + "estimate_number": "Číslo odhadu", + "ref_number": "Referenční číslo", + "amount": "Množství", + "contact_name": "Jméno kontaktu", + "status": "Stav" + }, + "expenses": { + "expenses": "Výdaje", + "category": "Kategorie", + "date": "Datum", + "amount": "Množství", + "to_date": "Do data", + "from_date": "Od data", + "date_range": "Vyberte rozsah data" + } + }, + "settings": { + "menu_title": { + "account_settings": "Nastavení účtu", + "company_information": "Informace o společnosti", + "customization": "Přizpůsobení", + "preferences": "Preference", + "notifications": "Oznámení", + "tax_types": "Typy daní", + "expense_category": "Kategorie výdajů", + "update_app": "Aktualizace aplikace", + "backup": "Zálohování", + "file_disk": "Souborový disk", + "custom_fields": "Vlastní pole", + "payment_modes": "Způsoby plateb", + "notes": "Poznámky", + "exchange_rate": "Směnný kurz", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." + }, + "title": "Nastavení", + "setting": "Nastavení | Nastavení", + "general": "Obecné", + "language": "Jazyk", + "primary_currency": "Primární měna", + "timezone": "Časová zóna", + "date_format": "Formát data", + "currencies": { + "title": "Měny", + "currency": "Měna | Měny", + "currencies_list": "Seznam měn", + "select_currency": "Vyberte měnu", + "name": "Název", + "code": "Kód", + "symbol": "Symbol", + "precision": "Přesnost", + "thousand_separator": "Oddělovač tisíců", + "decimal_separator": "Oddělovač desetinných míst", + "position": "Umístění", + "position_of_symbol": "Umístění symbolu", + "right": "Vpravo", + "left": "Vlevo", + "action": "Akce", + "add_currency": "Přidat měnu" + }, + "mail": { + "host": "Hostitel e-mailu", + "port": "Port e-mailu", + "driver": "Ovladač e-mailů", + "secret": "Tajný klíč", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Doména", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "E-mailové heslo", + "username": "Uživatelské jméno pro e-mail", + "mail_config": "Konfigurace e-mailu", + "from_name": "Jméno odesílatele", + "from_mail": "Z e-mailové adresy", + "encryption": "Šifrování e-mailu", + "mail_config_desc": "Níže je uveden formulář pro konfiguraci e-mailového ovladače pro odesílání e-mailů z aplikace. Můžete také nakonfigurovat poskytovatele třetích stran, jako je Sendgrid, SES atd." + }, + "pdf": { + "title": "Nastavení PDF", + "footer_text": "Text zápatí", + "pdf_layout": "Rozvržení PDF" + }, + "company_info": { + "company_info": "Údaje o společnosti", + "company_name": "Název společnosti", + "company_logo": "Logo společnosti", + "section_description": "Informace o vaší společnosti, která bude zobrazena na fakturách, odhadech a dalších dokladech vytvořených v Crateru.", + "phone": "Telefon", + "country": "Země", + "state": "Stát", + "city": "Město", + "address": "Adresa", + "zip": "PSČ", + "save": "Uložit", + "delete": "Smazat", + "updated_message": "Informace o společnosti byly úspěšně aktualizovány", + "delete_company": "Odstranit společnost", + "delete_company_description": "Jakmile svou společnost odstraníte, trvale přijdete o všechna data a soubory s ní spojené.", + "are_you_absolutely_sure": "Jste si opravdu jisti?", + "delete_company_modal_desc": "Tuto akci nelze vrátit zpět. Tato akce trvale odstraní {company} a všechna související data.", + "delete_company_modal_label": "Zadejte prosím {company} pro potvrzení" + }, + "custom_fields": { + "title": "Vlastní pole", + "section_description": "Přizpůsobte si své faktury, odhady a potvrzení o platbě podle vlastních polí. Ujistěte se, že používáte níže přidaná pole ve formátu adresy na stránce pro přizpůsobení.", + "add_custom_field": "Přidat vlastní pole", + "edit_custom_field": "Upravit vlastní pole", + "field_name": "Název pole", + "label": "Popis", + "type": "Typ", + "name": "Jméno", + "slug": "Pahýl", + "required": "Povinné", + "placeholder": "Zástupný text", + "help_text": "Text nápovědy", + "default_value": "Výchozí hodnota", + "prefix": "Prefix", + "starting_number": "Počáteční číslo", + "model": "Model", + "help_text_description": "Zadejte nějaký text, který pomůže uživatelům pochopit účel tohoto vlastního pole.", + "suffix": "Sufix", + "yes": "Ano", + "no": "Ne", + "order": "Pořadí", + "custom_field_confirm_delete": "Nebudete moci obnovit toto vlastní pole", + "already_in_use": "Vlastní pole je již používáno", + "deleted_message": "Vlastní pole bylo úspěšně odstraněno", + "options": "možnosti", + "add_option": "Přidat možnosti", + "add_another_option": "Přidat další možnost", + "sort_in_alphabetical_order": "Řadit v abecedním pořadí", + "add_options_in_bulk": "Přidat možnosti hromadně", + "use_predefined_options": "Použít předdefinované možnosti", + "select_custom_date": "Vyberte vlastní datum", + "select_relative_date": "Vyberte relativní datum", + "ticked_by_default": "Ve výchozím nastavení zaškrtnuto", + "updated_message": "Vlastní pole bylo úspěšně upraveno", + "added_message": "Vlastní pole bylo úspěšně přidáno", + "press_enter_to_add": "Stiskněte Enter pro přidání nové možnosti", + "model_in_use": "Nelze aktualizovat model pro pole, která jsou již používána.", + "type_in_use": "Nelze aktualizovat typ pro pole, která jsou již používána." + }, + "customization": { + "customization": "přizpůsobení", + "updated_message": "Informace o společnosti byly úspěšně aktualizovány", + "save": "Uložit", + "insert_fields": "Vložit pole", + "learn_custom_format": "Zjistěte, jak používat vlastní formát", + "add_new_component": "Přidat novou komponentu", + "component": "Komponenty", + "Parameter": "Parametr", + "series": "Řada", + "series_description": "Pro nastavení statického prefixu/postfixu jako 'INV' napříč vaší společností. Podporuje délku až 4 znaky.", + "series_param_label": "Hodnota řady", + "delimiter": "Oddělovač", + "delimiter_description": "Jeden znak pro určení hranice mezi 2 samostatnými komponentami. Ve výchozím nastavení je nastaveno na -", + "delimiter_param_label": "Hodnota oddělovače", + "date_format": "Formát data", + "date_format_description": "Pole pro formát místní data a času. Výchozí formát: 'Y' vykresluje aktuální rok.", + "date_format_param_label": "Formát", + "sequence": "Sekvence", + "sequence_description": "Po sobě jdoucí posloupnost čísel ve vaší společnosti. Můžete určit délku daného parametru.", + "sequence_param_label": "Délka sekvence", + "customer_series": "Řada zákazníků", + "customer_series_description": "Možnost nastavit jiný prefix/postfix pro každého zákazníka.", + "customer_sequence": "Sekvence zákazníků", + "customer_sequence_description": "Po sobě jdoucí posloupnost čísel pro každého zákazníka.", + "customer_sequence_param_label": "Délka sekvence", + "random_sequence": "Náhodná sekvence", + "random_sequence_description": "Náhodný alfanumerický řetězec. Můžete určit délku daného parametru.", + "random_sequence_param_label": "Délka sekvence", + "invoices": { + "title": "Faktury", + "invoice_number_format": "Formát čísla faktury", + "invoice_number_format_description": "Přizpůsobte si, jak bude vaše číslo faktury automaticky generováno při vytváření nové faktury.", + "preview_invoice_number": "Náhled čísla faktury", + "due_date": "Datum splatnosti", + "due_date_description": "Určete, jak se automaticky nastavuje datum splatnosti vytváření faktury.", + "due_date_days": "Splatnost faktury po dnech", + "set_due_date_automatically": "Automaticky nastavit datum splatnosti", + "set_due_date_automatically_description": "Povolte, pokud chcete nastavit datum splatnosti automaticky při vytvoření nové faktury.", + "default_formats": "Výchozí formáty", + "default_formats_description": "Níže uvedené formáty se používají k automatickému vyplnění polí při vytváření faktury.", + "default_invoice_email_body": "Výchozí text e-mailu pro faktury", + "company_address_format": "Formát adresy společnosti", + "shipping_address_format": "Formát doručovací adresy", + "billing_address_format": "Formát fakturační adresy", + "invoice_email_attachment": "Odesílat faktury jako přílohy", + "invoice_email_attachment_setting_description": "Povolte, pokud chcete odesílat faktury jako přílohy e-mailu. Vezměte prosím na vědomí, že tlačítko 'Zobrazit fakturu' v e-mailech se již nezobrazí, pokud je povoleno.", + "invoice_settings_updated": "Nastavení faktur bylo úspěšně upraveno", + "retrospective_edits": "Zpětné úpravy", + "allow": "Povolit", + "disable_on_invoice_partial_paid": "Zakázat po zaznamenání částečné platby", + "disable_on_invoice_paid": "Vypnout po zaplacení plné platby", + "disable_on_invoice_sent": "Vypnout po odeslání faktury", + "retrospective_edits_description": " Na základě zákonů vaší země nebo vašich preferencí můžete uživatelům bránit v úpravě dokončených faktur." + }, + "estimates": { + "title": "Odhady", + "estimate_number_format": "Formát čísla odhadu", + "estimate_number_format_description": "Přizpůsobte si, jak bude vaše číslo odhadu automaticky generováno, při vytváření nového odhadu.", + "preview_estimate_number": "Náhled čísla odhadu", + "expiry_date": "Datum expirace", + "expiry_date_description": "Určete, jak se automaticky nastavuje datum expirace při vytváření odhadu.", + "expiry_date_days": "Platnost odhadu vyprší za dny", + "set_expiry_date_automatically": "Automaticky nastavit datum expirace", + "set_expiry_date_automatically_description": "Povolte, pokud chcete nastavit datum expirace automaticky při vytvoření nového odhadu.", + "default_formats": "Výchozí formáty", + "default_formats_description": "Níže uvedené formáty se používají k automatickému vyplnění polí při vytváření odhadu.", + "default_estimate_email_body": "Výchozí text e-mailu pro odhady", + "company_address_format": "Formát adresy společnosti", + "shipping_address_format": "Formát doručovací adresy", + "billing_address_format": "Formát fakturační adresy", + "estimate_email_attachment": "Odeslat odhady jako přílohy", + "estimate_email_attachment_setting_description": "Povolte, pokud chcete odesílat odhady jako přílohy e-mailu. Vezměte prosím na vědomí, že tlačítko 'Zobrazit odhad' v e-mailech se již nezobrazí, pokud je povoleno.", + "estimate_settings_updated": "Nastavení odhadů úspěšně upraveno", + "convert_estimate_options": "Akce konverze odhadu", + "convert_estimate_description": "Určete, co se stane s odhadem poté, co se převede na fakturu.", + "no_action": "Žádná akce", + "delete_estimate": "Odstranit odhad", + "mark_estimate_as_accepted": "Označit odhad za přijatý" + }, + "payments": { + "title": "Platby", + "payment_number_format": "Formát čísel plateb", + "payment_number_format_description": "Přizpůsobte si, jak se bude číslo platby automaticky generovat, když vytvoříte novou platbu.", + "preview_payment_number": "Náhled čísla platby", + "default_formats": "Výchozí formáty", + "default_formats_description": "Níže uvedené formáty se používají k automatickému vyplnění polí při vytváření plateb.", + "default_payment_email_body": "Výchozí text e-mailu platby", + "company_address_format": "Formát adresy společnosti", + "from_customer_address_format": "Z formátu adresy zákazníka", + "payment_email_attachment": "Odesílat platby jako přílohy", + "payment_email_attachment_setting_description": "Povolte, pokud chcete odeslat potvrzení o platbě jako přílohu e-mailu. Vezměte prosím na vědomí, že tlačítko 'Zobrazit platbu' v e-mailech se již nebude zobrazovat, pokud je povoleno.", + "payment_settings_updated": "Nastavení plateb bylo úspěšně upraveno" + }, + "items": { + "title": "Položky", + "units": "Jednotky", + "add_item_unit": "Přidat jednotku položky", + "edit_item_unit": "Upravit jednotku položky", + "unit_name": "Název jednotky", + "item_unit_added": "Jednotka položky přidána", + "item_unit_updated": "Jednotka položky upravena", + "item_unit_confirm_delete": "Nebudete moci obnovit tuto jednotku položky", + "already_in_use": "Jednotka položky se již používá", + "deleted_message": "Jednotka položky byla úspěšně odstraněna" + }, + "notes": { + "title": "Poznámky", + "description": "Ušetřete čas vytvořením poznámek a jejich opětovným použitím na fakturách, odhadech a platbách.", + "notes": "Poznámky", + "type": "Typ", + "add_note": "Přidat poznámku", + "add_new_note": "Přidat novou poznámku", + "name": "Jméno", + "edit_note": "Upravit poznámku", + "note_added": "Poznámka úspěšně přidána", + "note_updated": "Poznámka úspěšně upravena", + "note_confirm_delete": "Nebudete moci obnovit tuto poznámku", + "already_in_use": "Poznámka je již používána", + "deleted_message": "Poznámka byla úspěšně smazána" + } + }, + "account_settings": { + "profile_picture": "Profilový obrázek", + "name": "Jméno", + "email": "E-mail", + "password": "Heslo", + "confirm_password": "Potvrdit heslo", + "account_settings": "Nastavení účtu", + "save": "Uložit", + "section_description": "Své jméno, e-mail a heslo můžete aktualizovat pomocí formuláře níže.", + "updated_message": "Nastavení účtu bylo úspěšně aktualizováno" + }, + "user_profile": { + "name": "Jméno", + "email": "E-mail", + "password": "Heslo", + "confirm_password": "Potvrzení hesla" + }, + "notification": { + "title": "Oznámení", + "email": "Posílat oznámení na", + "description": "Která e-mailová oznámení chcete dostávat, když se něco změní?", + "invoice_viewed": "Faktura zobrazena", + "invoice_viewed_desc": "Když si váš zákazník zobrazí fakturu odeslánou přes hlavní panel Crateru.", + "estimate_viewed": "Odhad zobrazen", + "estimate_viewed_desc": "Když si váš zákazník zobrazí odhad odeslaný přes hlavní panel Crateru.", + "save": "Uložit", + "email_save_message": "E-mail úspěšně uložen", + "please_enter_email": "Prosím, zadejte e-mail" + }, + "roles": { + "title": "Role", + "description": "Správa rolí a oprávnění této společnosti", + "save": "Uložit", + "add_new_role": "Přidat novou roli", + "role_name": "Název role", + "added_on": "Přidáno dne", + "add_role": "Přidat roli", + "edit_role": "Upravit roli", + "name": "Název", + "permission": "Oprávnění | Oprávnění", + "select_all": "Vybrat vše", + "none": "Žádné", + "confirm_delete": "Nebudete moci obnovit tuto roli", + "created_message": "Role byla úspěšně vytvořena", + "updated_message": "Role úspěšně změněna", + "deleted_message": "Role úspěšně odstraněna", + "already_in_use": "Role je již používána" + }, + "exchange_rate": { + "exchange_rate": "Směnný kurz", + "title": "Opravit problémy se směnným kurzem", + "description": "Zadejte prosím směnný kurz všech níže uvedených měn, abyste pomohli Crateru správně vypočítat částky v {currency}.", + "drivers": "Ovladače", + "new_driver": "Přidat nového poskytovatele", + "edit_driver": "Upravit poskytovatele", + "select_driver": "Vybrat ovladač", + "update": "vybrat směnný kurz ", + "providers_description": "Nakonfigurujte zde poskytovatele směnných kurzů, aby automaticky načítali nejnovější směnný kurz u transakcí.", + "key": "API klíč", + "name": "Název", + "driver": "Ovladač", + "is_default": "JE VÝCHOZÍ", + "currency": "Měny", + "exchange_rate_confirm_delete": "Nebudete moci obnovit tento ovladač", + "created_message": "Poskytovatel úspěšně vytvořen", + "updated_message": "Poskytovatel úspěšně upraven", + "deleted_message": "Poskytovatel úspěšně odstraněn", + "error": " Aktivní ovladač nelze odstranit", + "default_currency_error": "Tato měna je již používána v jednom z aktivních poskytovatelů", + "exchange_help_text": "Zadejte směnný kurz pro převod z {currency} do {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Převodník měn", + "server": "Server", + "url": "URL", + "active": "Aktivní", + "currency_help_text": "Tento poskytovatel bude použit pouze na výše vybraných měnách", + "currency_in_used": "Následující měny jsou již aktivní u jiného poskytovatele. Odstraňte tyto měny z výběru a znovu aktivujte tohoto poskytovatele." + }, + "tax_types": { + "title": "Typy daní", + "add_tax": "Přidat daň", + "edit_tax": "Upravit daň", + "description": "Můžete přidat nebo odebrat daně, jak chcete. Crater podporuje daně z jednotlivých položek i z celé faktury.", + "add_new_tax": "Přidat novou daň", + "tax_settings": "Nastavení daně", + "tax_per_item": "Daň za položku", + "tax_name": "Název daně", + "compound_tax": "Složená daň", + "percent": "Procento", + "action": "Akce", + "tax_setting_description": "Povolte, pokud chcete přidat daně k jednotlivým položkám faktury. Ve výchozím nastavení jsou daně přidány přímo na fakturu.", + "created_message": "Typ daně úspěšně vytvořen", + "updated_message": "Typ daně úspěšně upraven", + "deleted_message": "Typ daně úspěšně odstraněn", + "confirm_delete": "Tento typ daně nebudete moci obnovit", + "already_in_use": "Daň se již používá" + }, + "payment_modes": { + "title": "Platební metody", + "description": "Platební metody transakcí pro platby", + "add_payment_mode": "Přidat platební metodu", + "edit_payment_mode": "Upravit platební metodu", + "mode_name": "Název metody", + "payment_mode_added": "Platební metoda přidána", + "payment_mode_updated": "Platební metoda upravena", + "payment_mode_confirm_delete": "Nebudete moci obnovit tuto platební metodu", + "already_in_use": "Platební metoda se již používá", + "deleted_message": "Platební metoda byla úspěšně odstraněna" + }, + "expense_category": { + "title": "Kategorie výdajů", + "action": "Akce", + "description": "Kategorie jsou vyžadovány pro přidání výdajových položek. Můžete přidat nebo odebrat tyto kategorie podle vašich preferencí.", + "add_new_category": "Přidat novou kategorii", + "add_category": "Přidat kategorii", + "edit_category": "Upravit Kategorii", + "category_name": "Název kategorie", + "category_description": "Popis", + "created_message": "Kategorie výdajů úspěšně vytvořena", + "deleted_message": "Kategorie výdajů úspěšně odstraněna", + "updated_message": "Kategorie výdajů úspěšně upravena", + "confirm_delete": "Nebudete moci obnovit tuto kategorii výdajů", + "already_in_use": "Kategorie se již používá" + }, + "preferences": { + "currency": "Měna", + "default_language": "Výchozí jazyk", + "time_zone": "Časové pásmo", + "fiscal_year": "Fiskální rok", + "date_format": "Formát data", + "discount_setting": "Nastavení slev", + "discount_per_item": "Sleva za položku ", + "discount_setting_description": "Povolte tuto možnost, pokud chcete přidat slevu do jednotlivých položek faktury. Ve výchozím nastavení je sleva přidána přímo na fakturu.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", + "save": "Uložit", + "preference": "Předvolba | Předvolby", + "general_settings": "Výchozí předvolby systému.", + "updated_message": "Předvolby úspěšně upraveny", + "select_language": "Vyberte jazyk", + "select_time_zone": "Vyberte časové pásmo", + "select_date_format": "Vyberte formát data", + "select_financial_year": "Vyberte fiskální rok", + "recurring_invoice_status": "Stav opakující se faktury", + "create_status": "Vytvořit stav", + "active": "Aktivní", + "on_hold": "Čekající", + "update_status": "Upravit stav", + "completed": "Dokončeno", + "company_currency_unchangeable": "Měnu společnosti nelze měnit" + }, + "update_app": { + "title": "Aktualizace aplikace", + "description": "Kliknutím na tlačítko níže můžete jednoduše aktualizovat Crater", + "check_update": "Zkontrolovat aktualizace", + "avail_update": "K dispozici je nová aktualizace", + "next_version": "Další verze", + "requirements": "Požadavky", + "update": "Aktualizovat teď", + "update_progress": "Probíhá aktualizace...", + "progress_text": "Bude to trvat jen několik minut. Neobnovujte obrazovku ani nezavírejte okno před dokončením aktualizace", + "update_success": "Aplikace byla aktualizována! Počkejte prosím, než se okno prohlížeče automaticky znovu načte.", + "latest_message": "Žádná aktualizace není k dispozici! Jste na nejnovější verzi.", + "current_version": "Aktuální verze", + "download_zip_file": "Stáhnout soubor ZIP", + "unzipping_package": "Rozbalování balíku", + "copying_files": "Kopírování souborů", + "deleting_files": "Odstraňování nepoužitých souborů", + "running_migrations": "Spouštění migrací", + "finishing_update": "Dokončování aktualizace", + "update_failed": "Aktualizace se nezdařila", + "update_failed_text": "Omlouváme se! Aktualizace se nezdařila v {step}. kroku", + "update_warning": "Všechny soubory aplikace a výchozí soubory šablon budou přepsány při aktualizaci aplikace pomocí tohoto nástroje. Před aktualizací si prosím zálohujte šablony a databázi." + }, + "backup": { + "title": "Záloha | Zálohy", + "description": "Záloha je soubor ZIP, který obsahuje všechny soubory ve složkách, které zadáte spolu s kopií vaší databáze", + "new_backup": "Přidat novou zálohu", + "create_backup": "Vytvořit zálohu", + "select_backup_type": "Vyberte typ zálohy", + "backup_confirm_delete": "Tuto zálohu nebudete moci obnovit", + "path": "cesta", + "new_disk": "Nový disk", + "created_at": "vytvořeno v", + "size": "velikost", + "dropbox": "dropbox", + "local": "místní", + "healthy": "zdravý", + "amount_of_backups": "počet záloh", + "newest_backups": "nejnovější zálohy", + "used_storage": "využité úložiště", + "select_disk": "Vyberte disk", + "action": "Akce", + "deleted_message": "Záloha úspěšně odstraněna", + "created_message": "Záloha byla úspěšně vytvořena", + "invalid_disk_credentials": "Nesprávné přihlašovací údaje pro vybraný disk" + }, + "disk": { + "title": "Souborový disk | Souborové disky", + "description": "Ve výchozím nastavení bude Crater používat váš lokální disk pro ukládání záloh, avataru a dalších obrázků. Podle vašich preferencí můžete nakonfigurovat více než jeden ovladač disku, jako je DigitalOcean, S3 nebo Dropbox.", + "created_at": "vytvořeno v", + "dropbox": "dropbox", + "name": "Název", + "driver": "Ovladač", + "disk_type": "Typ", + "disk_name": "Název disku", + "new_disk": "Přidat nový disk", + "filesystem_driver": "Ovladač souborového systému", + "local_driver": "místní ovladač", + "local_root": "místní kořenový adresář", + "public_driver": "Veřejný ovladač", + "public_root": "Veřejný kořenový adresář", + "public_url": "Veřejná adresa URL", + "public_visibility": "Veřejná viditelnost", + "media_driver": "Ovladač médií", + "media_root": "Kořenový adresář medií", + "aws_driver": "AWS ovladač", + "aws_key": "AWS Key", + "aws_secret": "AWS Secret", + "aws_region": "AWS Region", + "aws_bucket": "AWS Bucket", + "aws_root": "AWS Root", + "do_spaces_type": "Do Spaces type", + "do_spaces_key": "Do Spaces key", + "do_spaces_secret": "Do Spaces Secret", + "do_spaces_region": "Do Spaces Region", + "do_spaces_bucket": "Do Spaces Bucket", + "do_spaces_endpoint": "Do Spaces Endpoint", + "do_spaces_root": "Do Spaces Root", + "dropbox_type": "Dropbox Type", + "dropbox_token": "Dropbox Token", + "dropbox_key": "Dropbox Key", + "dropbox_secret": "Dropbox Secret", + "dropbox_app": "Dropbox App", + "dropbox_root": "Dropbox Root", + "default_driver": "Výchozí ovladač", + "is_default": "JE VÝCHOZÍ", + "set_default_disk": "Nastavit výchozí disk", + "set_default_disk_confirm": "Tento disk bude nastaven jako výchozí a všechny nové PDF budou uloženy na tomto disku", + "success_set_default_disk": "Disk úspěšně nastaven jako výchozí", + "save_pdf_to_disk": "Ukládat PDF na disk", + "disk_setting_description": " Povolte, pokud chcete automaticky uložit kopii PDF každé faktury, odhadu a potvrzení o platbě. Zapnutí této možnosti sníží dobu načítání při prohlížení PDF.", + "select_disk": "Vyberte disk", + "disk_settings": "Nastavení disku", + "confirm_delete": "Vaše existující soubory a složky na určeném disku nebudou ovlivněny, ale konfigurace disku bude odstraněna z Crateru", + "action": "Akce", + "edit_file_disk": "Upravit souborový disk", + "success_create": "Disk byl úspěšně přidán", + "success_update": "Disk úspěšně upraven", + "error": "Přidání disku se nezdařilo", + "deleted_message": "Souborový disk úspěšně smazán", + "disk_variables_save_successfully": "Disk úspěšně nakonfigurován", + "disk_variables_save_error": "Konfigurace disku selhala.", + "invalid_disk_credentials": "Nesprávné přihlašovací údaje pro vybraný disk" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." + } + }, + "wizard": { + "account_info": "Informace o účtu", + "account_info_desc": "Níže uvedené údaje budou použity k vytvoření hlavního účtu správce. Také můžete změnit podrobnosti kdykoliv po přihlášení.", + "name": "Jméno", + "email": "E-mail", + "password": "Heslo", + "confirm_password": "Potvrdit heslo", + "save_cont": "Uložit a pokračovat", + "company_info": "Informace o společnosti", + "company_info_desc": "Tyto informace budou zobrazeny na fakturách. Později je můžete upravit na stránce s nastavením.", + "company_name": "Název společnosti", + "company_logo": "Logo společnosti", + "logo_preview": "Náhled loga", + "preferences": "Předvolby společnosti", + "preferences_desc": "Zadejte výchozí předvolby pro tuto společnost.", + "currency_set_alert": "Měnu společnosti nelze později změnit.", + "country": "Země", + "state": "Stát", + "city": "Město", + "address": "Adresa", + "street": "Ulice1 | Ulice2", + "phone": "Telefon", + "zip_code": "PSČ", + "go_back": "Jít zpět", + "currency": "Měna", + "language": "Jazyk", + "time_zone": "Časové pásmo", + "fiscal_year": "Fiskální rok", + "date_format": "Formát data", + "from_address": "Z adresy", + "username": "Uživatelské jméno", + "next": "Další", + "continue": "Pokračovat", + "skip": "Přeskočit", + "database": { + "database": "URL webu a databáze", + "connection": "Připojení k databázi", + "host": "Host databáze", + "port": "Port databáze", + "password": "Heslo do databáze", + "app_url": "URL aplikace", + "app_domain": "Doména aplikace", + "username": "Uživatelské jméno k databázi", + "db_name": "Název databáze", + "db_path": "Cesta k databázi", + "desc": "Vytvořte databázi na svém serveru a nastavte přihlašovací údaje pomocí níže uvedeného formuláře." + }, + "permissions": { + "permissions": "Oprávnění", + "permission_confirm_title": "Opravdu chcete pokračovat?", + "permission_confirm_desc": "Kontrola oprávnění složky selhala", + "permission_desc": "Níže je seznam oprávnění složek, která jsou vyžadována, aby aplikace pracovala. Pokud kontrola oprávnění selže, aktualizujte oprávnění daných složek." + }, + "verify_domain": { + "title": "Ověření domény", + "desc": "Crater používá ověření na základě relace, které vyžaduje ověření domény pro účely zabezpečení. Zadejte prosím doménu, na které budete přistupovat ke své webové aplikaci.", + "app_domain": "Doména aplikace", + "verify_now": "Ověřit teď", + "success": "Ověření domény bylo úspěšné.", + "failed": "Ověření domény se nezdařilo. Zadejte prosím platný název domény.", + "verify_and_continue": "Ověřit a pokračovat" + }, + "mail": { + "host": "Hostitel e-mailu", + "port": "Port e-mailu", + "driver": "Ovladač e-mailů", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Doména", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "E-mailové heslo", + "username": "Uživatelské jméno e-mailu", + "mail_config": "Konfigurace e-mailu", + "from_name": "Jméno odesílatele", + "from_mail": "Z e-mailové adresy", + "encryption": "Šifrování e-mailu", + "mail_config_desc": "Níže je uveden formulář pro konfiguraci e-mailového ovladače pro odesílání e-mailů z aplikace. Můžete také nakonfigurovat poskytovatele třetích stran, jako je Sendgrid, SES atd." + }, + "req": { + "system_req": "Systémové požadavky", + "php_req_version": "Php (požadovaná verze {version})", + "check_req": "Zkontrolujte požadavky", + "system_req_desc": "Crater má několik požadavků na server. Ujistěte se, že váš server má požadovanou php verzi a všechna níže uvedená rozšíření." + }, + "errors": { + "migrate_failed": "Migrace se nezdařila", + "database_variables_save_error": "Nelze zapsat konfiguraci do souboru .env. Zkontrolujte prosím jeho oprávnění", + "mail_variables_save_error": "Nastavení e-mailu se nezdařilo.", + "connection_failed": "Spojení s databází se nezdařilo", + "database_should_be_empty": "Databáze by měla být prázdná" + }, + "success": { + "mail_variables_save_successfully": "E-mail byl úspěšně nastaven", + "database_variables_save_successfully": "Databáze byla úspěšně nastavena." + } + }, + "validation": { + "invalid_phone": "Neplatné telefonní číslo", + "invalid_url": "Neplatná URL (např. http://www.craterapp.com)", + "invalid_domain_url": "Neplatná URL (např. craterapp.com)", + "required": "Pole je povinné", + "email_incorrect": "Nesprávný e-mail.", + "email_already_taken": "Tento e-mail již byl použit.", + "email_does_not_exist": "Uživatel s daným e-mailem neexistuje", + "item_unit_already_taken": "Tento název jednotky je již obsazen", + "payment_mode_already_taken": "Tento název platební metody již byl použit", + "send_reset_link": "Zaslat odkaz na obnovení hesla", + "not_yet": "Ještě ne? Poslat znovu", + "password_min_length": "Heslo musí obsahovat {count} znaků", + "name_min_length": "Jméno musí mít alespoň {count} písmen.", + "prefix_min_length": "Prefix musí mít alespoň {count} písmen.", + "enter_valid_tax_rate": "Zadejte platnou daňovou sazbu", + "numbers_only": "Pouze čísla.", + "characters_only": "Pouze písmena.", + "password_incorrect": "Hesla musí být stejná", + "password_length": "Heslo musí být dlouhé {count} znaků.", + "qty_must_greater_than_zero": "Množství musí být větší než nula.", + "price_greater_than_zero": "Cena musí být vyšší než nula.", + "payment_greater_than_zero": "Platba musí být vyšší než nula.", + "payment_greater_than_due_amount": "Zadaná platba je vyšší než splatná částka této faktury.", + "quantity_maxlength": "Množství by nemělo být delší než 20 číslic.", + "price_maxlength": "Cena by neměla být delší než 20 číslic.", + "price_minvalue": "Cena by měla být větší než 0.", + "amount_maxlength": "Množství by nemělo být delší než 20 číslic.", + "amount_minvalue": "Množství by mělo být větší než 0.", + "discount_maxlength": "Sleva by neměla být vyšší než maximální sleva", + "description_maxlength": "Popis by neměl být delší než 255 znaků.", + "subject_maxlength": "Předmět by neměl být delší než 100 znaků.", + "message_maxlength": "Zpráva by neměla být delší než 255 znaků.", + "maximum_options_error": "Vybráno maximum z {max} možností. Nejprve odeberte vybranou možnost pro další výběr.", + "notes_maxlength": "Poznámky by neměly být delší než 65 000 znaků.", + "address_maxlength": "Adresa by neměla být delší než 255 znaků.", + "ref_number_maxlength": "Referenční číslo by nemělo být delší než 255 znaků.", + "prefix_maxlength": "Prefix by neměl být delší než 5 znaků.", + "something_went_wrong": "něco se nezdařilo", + "number_length_minvalue": "Délka čísla by měla být větší než 0", + "at_least_one_ability": "Vyberte prosím alespoň jedno oprávnění.", + "valid_driver_key": "Zadejte prosím platný {driver} klíč.", + "valid_exchange_rate": "Zadejte prosím platný směnný kurz.", + "company_name_not_same": "Název společnosti se musí shodovat se zadaným názvem." + }, + "errors": { + "starter_plan": "Tato funkce je k dispozici na Starter Plánu a dále!", + "invalid_provider_key": "Zadejte prosím platný API klíč poskytovatele.", + "estimate_number_used": "Číslo odhadu již bylo použito.", + "invoice_number_used": "Číslo faktury již bylo použito.", + "payment_attached": "Na této faktuře je již přiložena platba. Abyste mohli pokračovat v odstranění, odstraňtě nejdříve přiložené platby.", + "payment_number_used": "Číslo platby již bylo použito.", + "name_already_taken": "Název již byl použit.", + "receipt_does_not_exist": "Doklad neexistuje.", + "customer_cannot_be_changed_after_payment_is_added": "Zákazníka nelze měnit po přidání platby", + "invalid_credentials": "Neplatné přihlašovací údaje.", + "not_allowed": "Není povoleno", + "login_invalid_credentials": "Tyto údaje neodpovídají našim záznamům.", + "enter_valid_cron_format": "Zadejte platný formát cronu", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" + }, + "pdf_estimate_label": "Odhad", + "pdf_estimate_number": "Číslo odhadu", + "pdf_estimate_date": "Datum odhadu", + "pdf_estimate_expire_date": "Doba platnosti", + "pdf_invoice_label": "Faktura", + "pdf_invoice_number": "Číslo faktury", + "pdf_invoice_date": "Datum fakturace", + "pdf_invoice_due_date": "Datum splatnosti", + "pdf_notes": "Poznámky", + "pdf_items_label": "Položky", + "pdf_quantity_label": "Množství", + "pdf_price_label": "Cena", + "pdf_discount_label": "Sleva", + "pdf_amount_label": "Množství", + "pdf_subtotal": "Mezisoučet", + "pdf_total": "Celkem", + "pdf_payment_label": "Platba", + "pdf_payment_receipt_label": "DOKLAD O PLATBĚ", + "pdf_payment_date": "Datum platby", + "pdf_payment_number": "Číslo platby", + "pdf_payment_mode": "Platební metoda", + "pdf_payment_amount_received_label": "Obdržená částka", + "pdf_expense_report_label": "REPORT VÝDAJŮ", + "pdf_total_expenses_label": "VÝDAJE CELKEM", + "pdf_profit_loss_label": "REPORT ZISKU A ZTRÁT", + "pdf_sales_customers_label": "Report o zákaznících prodeje", + "pdf_sales_items_label": "Report o položkách prodeje", + "pdf_tax_summery_label": "Report o shrnutí daní", + "pdf_income_label": "PŘÍJEM", + "pdf_net_profit_label": "ČISTÝ ZISK", + "pdf_customer_sales_report": "Report o prodeji: Podle zákazníka", + "pdf_total_sales_label": "PRODEJE CELKEM", + "pdf_item_sales_label": "Report o prodeji: Podle položky", + "pdf_tax_report_label": "DAŇOVÝ REPORT", + "pdf_total_tax_label": "DANĚ CELKEM", + "pdf_tax_types_label": "Typy daní", + "pdf_expenses_label": "Výdaje", + "pdf_bill_to": "Odběratel", + "pdf_ship_to": "Příjemce", + "pdf_received_from": "Přijato od:", + "pdf_tax_label": "Daň" +} diff --git a/resources/scripts/locales/de.json b/resources/scripts/locales/de.json index a7aa6d5f7..b3ca2b48d 100644 --- a/resources/scripts/locales/de.json +++ b/resources/scripts/locales/de.json @@ -4,13 +4,15 @@ "customers": "Kunden", "items": "Artikel", "invoices": "Rechnungen", - "expenses": "Kosten", - "estimates": "Kostenvoranschläge", + "recurring-invoices": "Serienrechnungen", + "expenses": "Ausgaben", + "estimates": "Angebote", "payments": "Zahlungen", "reports": "Berichte", "settings": "Einstellungen", "logout": "Abmelden", - "users": "Benutzer" + "users": "Benutzer", + "modules": "Modules" }, "general": { "add_company": "Unternehmen hinzufügen", @@ -26,7 +28,10 @@ "from_date": "Von Datum", "to_date": "bis Datum", "from": "Von", - "to": "bis", + "to": "An", + "ok": "Okay", + "yes": "Ja", + "no": "Nein", "sort_by": "Sortieren nach", "ascending": "Aufsteigend", "descending": "Absteigend", @@ -34,6 +39,7 @@ "body": "Inhalt", "message": "Nachricht", "send": "Absenden", + "preview": "Vorschau", "go_back": "zurück", "back_to_login": "Zurück zum Login?", "home": "Startseite", @@ -53,18 +59,17 @@ "tax": "Steuer", "total_amount": "GESAMTSUMME", "bill_to": "Rechnungsempfänger", - "ship_to": "Versand ein", + "ship_to": "Versand an", "due": "Fällig", "draft": "Entwurf", "sent": "Gesendet", "all": "Alle", "select_all": "Alle auswählen", + "select_template": "Vorlage auswählen", "choose_file": "Klicken Sie hier, um eine Datei auszuwählen", "choose_template": "Wählen Sie eine Vorlage", "choose": "Wählen", "remove": "Entfernen", - "powered_by": "Betrieben durch", - "bytefury": "Bytefury", "select_a_status": "Status wählen", "select_a_tax": "Steuersatz wählen", "search": "Suchen", @@ -75,18 +80,26 @@ "you_got_lost": "Hoppla! Du hast dich verirrt!", "go_home": "Geh zurück", "test_mail_conf": "E-Mail Konfiguration testen", - "send_mail_successfully": "E-Mail versendet erfolgreich", + "send_mail_successfully": "E-Mail erfolgreich versendet", "setting_updated": "Einstellungen erfolgreich aktualisiert", "select_state": "Bundesland wählen", "select_country": "Land wählen", "select_city": "Stadt wählen", - "street_1": "Straße", - "street_2": "Zusatz Strasse", + "street_1": "Straße und Hausnummer", + "street_2": "Adresszusatz", "action_failed": "Aktion fehlgeschlagen", "retry": "Wiederholen", "choose_note": "Notiz auswählen", "no_note_found": "Keine Notizen gefunden", - "insert_note": "Notiz einfügen" + "insert_note": "Notiz einfügen", + "copied_pdf_url_clipboard": "PDF-URL in Zwischenablage kopiert!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Dokumentation", + "do_you_wish_to_continue": "Möchten Sie fortfahren?", + "note": "Notiz", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { "select_year": "Jahr wählen", @@ -94,30 +107,31 @@ "due_amount": "Offene Beträge", "customers": "Kunden", "invoices": "Rechnungen", - "estimates": "Kostenvoranschläge" + "estimates": "Angebote", + "payments": "Payments" }, "chart_info": { "total_sales": "Aufträge gesamt", "total_receipts": "Zahlungen gesamt", - "total_expense": "Kosten gesamt", + "total_expense": "Ausgaben", "net_income": "Einnahmen Netto", "year": "Jahr" }, "monthly_chart": { - "title": "Umsatz & Kosten" + "title": "Umsatz & Ausgaben" }, "recent_invoices_card": { "title": "Fällige Rechnungen", "due_on": "Fällig am", - "customer": "Kunden", + "customer": "Kunde", "amount_due": "Offener Betrag", "actions": "Aktionen", "view_all": "Alle Anzeigen" }, "recent_estimate_card": { - "title": "Aktuelle Kostenvoranschläge", + "title": "Aktuelle Angebote", "date": "Datum", - "customer": "Kunden", + "customer": "Kunde", "amount_due": "Betrag", "actions": "Aktionen", "view_all": "Alle Anzeigen" @@ -135,8 +149,28 @@ "users": "Benutzer", "no_results_found": "Keine Ergebnisse gefunden" }, + "company_switcher": { + "label": "UNTERNEHMEN WECHSELN", + "no_results_found": "Keine Ergebnisse gefunden", + "add_new_company": "Neues Unternehmen hinzufügen", + "new_company": "Neues Unternehmen", + "created_message": "Unternehmen erfolgreich angelegt" + }, + "dateRange": { + "today": "Heute", + "this_week": "Diese Woche", + "this_month": "Dieser Monat", + "this_quarter": "Dieses Quartal", + "this_year": "Dieses Jahr", + "previous_week": "Vorherige Woche", + "previous_month": "Vorheriger Monat", + "previous_quarter": "Vorheriges Quartal", + "previous_year": "Vorheriges Jahr", + "custom": "Benutzerdefiniert" + }, "customers": { "title": "Kunden", + "prefix": "Präfix", "add_customer": "Kunde hinzufügen", "contacts_list": "Kunden-Liste", "name": "Name", @@ -151,6 +185,9 @@ "phone": "Telefon", "website": "Webseite", "overview": "Übersicht", + "invoice_prefix": "Rechnungspräfix", + "estimate_prefix": "Angebotspräfix", + "payment_prefix": "Zahlungspräfix", "enable_portal": "Kunden-Portal aktivieren", "country": "Land", "state": "Bundesland", @@ -159,6 +196,7 @@ "added_on": "Hinzugefügt am", "action": "Aktion", "password": "Passwort", + "confirm_password": "Passwort bestätigen", "street_number": "Hausnummer", "primary_currency": "Primäre Währung", "description": "Beschreibung", @@ -169,6 +207,10 @@ "new_customer": "Neuer Kunde", "edit_customer": "Kunde bearbeiten", "basic_info": "Basisinformation", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", "billing_address": "Rechnungsadresse", "shipping_address": "Versand-Adresse", "copy_billing_address": "Rechnungsadresse kopieren", @@ -176,7 +218,7 @@ "no_customers_found": "Keine Kunden gefunden!", "no_contact": "Kein Kontakt", "no_contact_name": "Kein Kontaktname", - "list_of_customers": "Dieser Abschnitt enthält die Liste der Kunden.", + "list_of_customers": "Dieser Bereich zeigt alle Kunden.", "primary_display_name": "Primärer Anzeige Name", "select_currency": "Währung wählen", "select_a_customer": "Wählen Sie einen Kunden", @@ -185,10 +227,12 @@ "no_matching_customers": "Es gibt keine passenden Kunden!", "phone_number": "Telefonnummer", "create_date": "Erstellungsdatum", - "confirm_delete": "Sie können diesen Kunden und alle zugehörigen Rechnungen, Schätzungen und Zahlungen nicht wiederherstellen. | Sie können diesen Kunden und alle zugehörigen Rechnungen, Schätzungen und Zahlungen nicht wiederherstellen.", + "confirm_delete": "Sie werden diesen Kunden und alle zugehörigen Rechnungen, Angebote und Zahlungen nicht wiederherstellen können. | Sie werden diese Kunden und alle zugehörigen Rechnungen, Angebote und Zahlungen nicht wiederherstellen können.", "created_message": "Benutzer erfolgreich erstellt", "updated_message": "Kunde erfolgreich aktualisiert", - "deleted_message": "Kunden erfolgreich gelöscht | Kunden erfolgreich gelöscht" + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Kunden erfolgreich gelöscht | Kunden erfolgreich gelöscht", + "edit_currency_not_allowed": "Währung kann nicht geändert werden, wenn Transaktionen erstellt wurden." }, "items": { "title": "Artikel", @@ -209,8 +253,8 @@ "new_item": "Neuer Artikel", "edit_item": "Artikel bearbeiten", "no_items": "Keine Artikel vorhanden!", - "list_of_items": "Dieser Abschnitt enthält die Liste der Artikel.", - "select_a_unit": "wählen Sie die Einheit", + "list_of_items": "Dieser Bereich zeigt alle Artikel.", + "select_a_unit": "Einheit auswählen", "taxes": "Steuern", "item_attached_message": "Ein Artikel der bereits verwendet wird kann nicht gelöscht werden", "confirm_delete": "Sie können diesen Artikel nicht wiederherstellen | Sie können diese Artikel nicht wiederherstellen", @@ -219,24 +263,26 @@ "deleted_message": "Artikel erfolgreich gelöscht | Artikel erfolgreich gelöscht" }, "estimates": { - "title": "Kostenvoranschläge", - "estimate": "Kostenvoranschlag | Kostenvoranschläge", - "estimates_list": "Liste Kostenvoranschläge", + "title": "Angebote", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", + "estimate": "Angebot | Angebote", + "estimates_list": "Angebotsübersicht", "days": "{days} Tage", "months": "{months} Monat", "years": "{years} Jahre", "all": "Alle", "paid": "Bezahlt", - "unpaid": "Unbezahlte", - "customer": "KUNDEN", + "unpaid": "Unbezahlt", + "customer": "KUNDE", "ref_no": "REF. - NR.", - "number": "ANZAHL", + "number": "NUMMER", "amount_due": "OFFENER BETRAG", "partially_paid": "Teilweise bezahlt", "total": "Gesamt", "discount": "Rabatt", "sub_total": "Zwischensumme", - "estimate_number": "Kostenvoran. Nummer", + "estimate_number": "Angebotsnummer", "ref_number": "Ref-Nummer", "contact": "Kontakt", "add_item": "Fügen Sie ein Artikel hinzu", @@ -247,53 +293,55 @@ "add_tax": "Steuer hinzufügen", "amount": "Summe", "action": "Aktion", - "notes": "Hinweise", + "notes": "Notizen", "tax": "Steuer", "estimate_template": "Vorlage", "convert_to_invoice": "Konvertieren in Rechnung", "mark_as_sent": "Als gesendet markieren", - "send_estimate": "Kostenvoranschlag senden", - "resend_estimate": "Kostenvoranschlag erneut senden", + "send_estimate": "Angebot senden", + "resend_estimate": "Angebot erneut senden", "record_payment": "Zahlung erfassen", - "add_estimate": "Kostenvoranschlag hinzufügen", - "save_estimate": "Kostenvoranschlag speichern", - "confirm_conversion": "Sie möchten, konvertieren Sie diese Schätzung in die Rechnung?", + "add_estimate": "Angebote hinzufügen", + "save_estimate": "Angebot speichern", + "confirm_conversion": "Dieses Angebot wird verwendet, um eine neue Rechnung zu erstellen.", "conversion_message": "Rechnung erfolgreich erstellt", - "confirm_send_estimate": "Der Kostenvoranschlag wird per E-Mail an den Kunden gesendet", - "confirm_mark_as_sent": "Dieser Kostenvoranschlag wird als gesendet markiert", - "confirm_mark_as_accepted": "Dieser Kostenvoranschlag wird als angenommen markiert", - "confirm_mark_as_rejected": "Dieser Kostenvoranschlag wird als abgelehnt markiert", - "no_matching_estimates": "Es gibt keine übereinstimmenden Kostenvoranschläge!", - "mark_as_sent_successfully": "Kostenvoranschlag als gesendet markiert.", - "send_estimate_successfully": "Kostenvoranschlag erfolgreich gesendet", + "confirm_send_estimate": "Das Angebot wird per E-Mail an den Kunden gesendet", + "confirm_mark_as_sent": "Dieses Angebot wird als gesendet markiert", + "confirm_mark_as_accepted": "Dieses Angebot wird als angenommen markiert", + "confirm_mark_as_rejected": "Dieses Angebot wird als abgelehnt markiert", + "no_matching_estimates": "Es gibt keine übereinstimmenden Angebote!", + "mark_as_sent_successfully": "Angebot als gesendet markiert", + "send_estimate_successfully": "Angebot erfolgreich gesendet", "errors": { "required": "Feld ist erforderlich" }, "accepted": "Angenommen", "rejected": "Abgelehnt", + "expired": "Expired", "sent": "Gesendet", "draft": "Entwurf", + "viewed": "Viewed", "declined": "Abgelehnt", - "new_estimate": "Neuer Kostenvoranschlag", - "add_new_estimate": "Neuen Kostenvoranschlag hinzufügen", - "update_Estimate": "Kostenvoranschlag aktualisieren", - "edit_estimate": "Kostenvoranschlag ändern", + "new_estimate": "Neues Angebot", + "add_new_estimate": "Neues Angebot hinzufügen", + "update_Estimate": "Angebot aktualisieren", + "edit_estimate": "Angebot ändern", "items": "Artikel", - "Estimate": "Kostenvoranschlag | Kostenvoranschläge", + "Estimate": "Angebot | Angebote", "add_new_tax": "neuen Steuersatz hinzufügen", - "no_estimates": "Keine Kostenvoranschläge vorhanden!", - "list_of_estimates": "Dieser Abschnitt enthält die Liste der Kostenvoranschläge.", + "no_estimates": "Keine Angebote vorhanden!", + "list_of_estimates": "Dieser Bereich zeigt alle Angebote.", "mark_as_rejected": "Markiert als abgelehnt", "mark_as_accepted": "Markiert als angenommen", - "marked_as_accepted_message": "Kostenvoranschlag als angenommen markiert", - "marked_as_rejected_message": "Kostenvoranschlag als abgelehnt markiert", - "confirm_delete": "Der Kostenvoranschlag kann nicht wiederhergestellt werden | Die Kostenvoranschläge können nicht wiederhergestellt werden", - "created_message": "Kostenvoranschlag erfolgreich erstellt", - "updated_message": "Kostenvoranschlag erfolgreich aktualisiert", - "deleted_message": "Kostenvoranschlag erfolgreich gelöscht | Kostenvoranschläge erfolgreich gelöscht", + "marked_as_accepted_message": "Angebot als angenommen markiert", + "marked_as_rejected_message": "Angebot als abgelehnt markiert", + "confirm_delete": "Das Angebot kann nicht wiederhergestellt werden | Die Angebote können nicht wiederhergestellt werden", + "created_message": "Angebot erfolgreich erstellt", + "updated_message": "Angebot erfolgreich aktualisiert", + "deleted_message": "Angebot erfolgreich gelöscht | Angebote erfolgreich gelöscht", "something_went_wrong": "Da ging etwas schief", "item": { - "title": "Titel", + "title": "Titel des Artikels", "description": "Beschreibung", "quantity": "Menge", "price": "Preis", @@ -309,7 +357,10 @@ }, "invoices": { "title": "Rechnungen", + "download": "Download", + "pay_invoice": "Pay Invoice", "invoices_list": "Liste der Rechnungen", + "invoice_information": "Invoice Information", "days": "{days} Tage", "months": "{months} Monat", "years": "{years} Jahre", @@ -319,10 +370,10 @@ "viewed": "Gesehen", "overdue": "Überfällig", "completed": "Abgeschlossen", - "customer": "KUNDEN", - "paid_status": "BEZAHLT-STATUS", + "customer": "KUNDE", + "paid_status": "ZAHLUNGSSTATUS", "ref_no": "REF. - NR.", - "number": "ANZAHL", + "number": "NUMMER", "amount_due": "OFFENER BETRAG", "partially_paid": "Teilzahlung", "total": "Gesamt", @@ -339,27 +390,32 @@ "add_tax": "Steuersatz hinzufügen", "amount": "Summe", "action": "Aktion", - "notes": "Hinweise", + "notes": "Notizen", "view": "Anzeigen", "send_invoice": "Rechnung senden", "resend_invoice": "Rechnung erneut senden", - "invoice_template": "Rechnungs-Vorlage", - "template": "Vorlage", + "invoice_template": "Rechnungsvorlage", + "conversion_message": "Rechnung erfolgreich kopiert", + "template": "Vorlage auswählen", "mark_as_sent": "Als gesendet markieren", "confirm_send_invoice": "Diese Rechnung wird per E-Mail an den Kunden gesendet", "invoice_mark_as_sent": "Diese Rechnung wird als gesendet markiert", + "confirm_mark_as_accepted": "Diese Rechnung wird als akzeptiert markiert", + "confirm_mark_as_rejected": "Diese Rechnung wird als abgelehnt markiert", "confirm_send": "Diese Rechnung wird per E-Mail an den Kunden gesendet", "invoice_date": "Rechnungsdatum", "record_payment": "Zahlung erfassen", "add_new_invoice": "Neue Rechnung hinzufügen", - "update_expense": "Kosten aktualisieren", + "update_expense": "Ausgabe aktualisieren", "edit_invoice": "Rechnung bearbeiten", "new_invoice": "Neue Rechnung", "save_invoice": "Rechnung speichern", "update_invoice": "Rechnung ändern", "add_new_tax": "Neuen Steuersatz hinzufügen", "no_invoices": "Keine Rechnungen vorhanden!", - "list_of_invoices": "Dieser Abschnitt enthält die Liste der Rechnungen.", + "mark_as_rejected": "Als abgelehnt markieren", + "mark_as_accepted": "Als akzeptiert markieren", + "list_of_invoices": "Dieser Bereich zeigt alle Rechnungen.", "select_invoice": "Wählen Sie eine Rechnung", "no_matching_invoices": "Es gibt keine entsprechenden Rechnungen!", "mark_as_sent_successfully": "Rechnung gekennzeichnet als erfolgreich gesendet", @@ -368,7 +424,7 @@ "clone_invoice": "Rechnung kopieren", "confirm_clone": "Diese Rechnung wird kopiert", "item": { - "title": "Titel", + "title": "Titel des Artikels", "description": "Beschreibung", "quantity": "Menge", "price": "Preis", @@ -381,6 +437,7 @@ "select_an_item": "Geben Sie oder wählen Sie ein Artikel", "type_item_description": "Artikel Beschreibung (optional)" }, + "payment_attached_message": "Einer der ausgewählten Rechnungen ist bereits eine Zahlung zugeordnet. Stellen Sie sicher, dass Sie zuerst die angehängten Zahlungen löschen, um mit dem Entfernen fortzufahren", "confirm_delete": "Sie können diese Rechnung nicht wiederherstellen. | Sie können diese Rechnungen nicht wiederherstellen.", "created_message": "Rechnung erfolgreich erstellt", "updated_message": "Rechnung erfolgreich aktualisiert", @@ -389,11 +446,120 @@ "something_went_wrong": "Da ist etwas schief gelaufen", "invalid_due_amount_message": "Der Gesamtrechnungsbetrag darf nicht kleiner sein als der für diese Rechnung bezahlte Gesamtbetrag. Bitte aktualisieren Sie die Rechnung oder löschen Sie die zugehörigen Zahlungen um fortzufahren." }, + "recurring_invoices": { + "title": "Serienrechnungen", + "invoices_list": "Liste aller Serienrechnungen", + "days": "{days} Tage", + "months": "{months} Monat", + "years": "{years} Jahr", + "all": "Alle", + "paid": "Bezahlt", + "unpaid": "Unbezahlt", + "viewed": "Gesehen", + "overdue": "Überfällig", + "active": "Aktiv", + "completed": "Abgeschlossen", + "customer": "KUNDE", + "paid_status": "ZAHLUNGSSTATUS", + "ref_no": "REF. - NR.", + "number": "NUMMER", + "amount_due": "OFFENER BETRAG", + "partially_paid": "Teilweise bezahlt", + "total": "Gesamt", + "discount": "Rabatt", + "sub_total": "Zwischensumme", + "invoice": "Wiederkehrende Rechnung | Wiederkehrende Rechnungen", + "invoice_number": "Serienrechnungsnummer", + "next_invoice_date": "Nächstes Rechnungsdatum", + "ref_number": "Ref. Nummer", + "contact": "Kontakt", + "add_item": "Artikel hinzufügen", + "date": "Datum", + "limit_by": "Eingrenzen nach", + "limit_date": "Datum eingrenzen", + "limit_count": "Anzahl eingrenzen", + "count": "Anzahl", + "status": "Status", + "select_a_status": "Status auswählen", + "working": "Verarbeitung läuft", + "on_hold": "Pausiert", + "complete": "Abgeschlossen", + "add_tax": "Steuer hinzufügen", + "amount": "Summe", + "action": "Aktion", + "notes": "Notizen", + "view": "Anzeigen", + "basic_info": "Allgemeine Daten", + "send_invoice": "Serienrechnung senden", + "auto_send": "Automatisch senden", + "resend_invoice": "Serienrechnung erneut senden", + "invoice_template": "Serienrechnungsvorlage", + "conversion_message": "Serienrechnung erfolgreich kopiert", + "template": "Vorlage", + "mark_as_sent": "Als gesendet markieren", + "confirm_send_invoice": "Diese Serienrechnung wird per E-Mail an den Kunden gesendet", + "invoice_mark_as_sent": "Diese Serienrechnung wird als gesendet markiert", + "confirm_send": "Diese Serienrechnung wird per E-Mail an den Kunden gesendet", + "starts_at": "Anfangsdatum", + "due_date": "Fälligkeitsdatum der Rechnung", + "record_payment": "Zahlung aufzeichnen", + "add_new_invoice": "Neue Serienrechnung hinzufügen", + "update_expense": "Ausgabe aktualisieren", + "edit_invoice": "Serienrechnung bearbeiten", + "new_invoice": "Neue Serienrechnung", + "send_automatically": "Automatisch senden", + "send_automatically_desc": "Aktivieren Sie dies, wenn Sie die Rechnung bei der Erstellung automatisch an den Kunden senden möchten.", + "save_invoice": "Serienrechnung speichern", + "update_invoice": "Serienrechnung aktualisieren", + "add_new_tax": "Neuen Steuersatz hinzufügen", + "no_invoices": "Noch keine Serienrechnungen!", + "mark_as_rejected": "Als abgelehnt markieren", + "mark_as_accepted": "Als akzeptiert markieren", + "list_of_invoices": "Dieser Abschnitt wird die Liste aller Serienrechnungen enthalten.", + "select_invoice": "Rechnung auswählen", + "no_matching_invoices": "Es gibt keine passenden Serienrechnungen!", + "mark_as_sent_successfully": "Serienrechnung als erfolgreich gesendet markiert", + "invoice_sent_successfully": "Serienrechnung erfolgreich gesendet", + "cloned_successfully": "Serienrechnung erfolgreich kopiert", + "clone_invoice": "Serienrechnung kopieren", + "confirm_clone": "Diese Serienrechnung wird in eine neue Serienrechnung kopiert", + "item": { + "title": "Titel des Artikels", + "description": "Beschreibung", + "quantity": "Menge", + "price": "Preis", + "discount": "Rabatt", + "total": "Gesamt", + "total_discount": "Gesamtrabatt", + "sub_total": "Zwischensumme", + "tax": "Steuer", + "amount": "Menge", + "select_an_item": "Geben Sie den Artikel ein, oder wählen Sie ihn aus", + "type_item_description": "Artikel-Beschreibung (optional)" + }, + "frequency": { + "title": "Intervall", + "select_frequency": "Intervall auswählen", + "minute": "Minute", + "hour": "Stunde", + "day_month": "Tag des Monats", + "month": "Monat", + "day_week": "Tag der Woche" + }, + "confirm_delete": "Sie werden diese Rechnung nicht wiederherstellen können | Sie werden nicht in der Lage sein, diese Rechnungen wiederherzustellen", + "created_message": "Serienrechnung erfolgreich erstellt", + "updated_message": "Serienrechnung erfolgreich aktualisiert", + "deleted_message": "Serienrechnung erfolgreich gelöscht | Serienrechnungen erfolgreich gelöscht", + "marked_as_sent_message": "Serienrechnung als erfolgreich gesendet markiert", + "user_email_does_not_exist": "E-Mail des Benutzers existiert nicht", + "something_went_wrong": "etwas ist schief gelaufen", + "invalid_due_amount_message": "Der Gesamtbetrag der Serienrechnung darf nicht kleiner als der bezahlte Gesamtbetrag für diese Serienrechnung sein. Bitte aktualisieren Sie die Rechnung oder löschen Sie die zugehörigen Zahlungen, um fortzufahren." + }, "payments": { "title": "Zahlungen", "payments_list": "Liste der Zahlungen", "record_payment": "Zahlung eintragen", - "customer": "Kunden", + "customer": "Kunde", "date": "Datum", "amount": "Summe", "action": "Aktion", @@ -415,9 +581,9 @@ "not_selected": "Nicht ausgewählt", "no_invoice": "Keine Rechnung", "no_matching_payments": "Es gibt keine passenden Zahlungen!", - "list_of_payments": "Dieser Abschnitt enthält die Liste der Zahlungen.", + "list_of_payments": "Dieser Bereich zeigt alle Zahlungen.", "select_payment_mode": "Wählen Sie den Zahlungsmodus", - "confirm_mark_as_sent": "Dieser Kostenvoranschlag wird als gesendet markiert", + "confirm_mark_as_sent": "Dieses Angebot wird als gesendet markiert", "confirm_send_payment": "Diese Zahlung wird per E-Mail an den Kunden gesendet", "send_payment_successfully": "Zahlung erfolgreich gesendet", "something_went_wrong": "Da ist etwas schief gelaufen", @@ -428,38 +594,39 @@ "invalid_amount_message": "Zahlungsbetrag ist ungültig" }, "expenses": { - "title": "Aufwendungen/Ausgaben", - "expenses_list": "Liste der Ausgaben", + "title": "Ausgaben", + "expenses_list": "Ausgabenübersicht", "select_a_customer": "Wählen Sie einen Kunden", "expense_title": "Titel", - "customer": "Kundin", + "customer": "Kunde", + "currency": "Währung", "contact": "Kontakt", "category": "Kategorie", "from_date": "Von Datum", "to_date": "bis Datum", "expense_date": "Datum", "description": "Beschreibung", - "receipt": "Eingang", + "receipt": "Rechnung", "amount": "Summe", - "not_selected": "Nicht ausgewählt", "action": "Aktion", + "not_selected": "Nicht ausgewählt", "note": "Hinweis", "category_id": "Kategorie-Id", - "date": "Aufwandsdatum", - "add_expense": "Aufwendung hinzufügen", - "add_new_expense": "Neue Aufwendung hinzufügen", - "save_expense": "Aufwendung speichern", - "update_expense": "Aufwendung aktualisieren", + "date": "Ausgabedatum", + "add_expense": "Ausgabe hinzufügen", + "add_new_expense": "Neue Ausgabe hinzufügen", + "save_expense": "Ausgabe speichern", + "update_expense": "Ausgabe aktualisieren", "download_receipt": "Quittung herunterladen", - "edit_expense": "Aufwendung ändern", - "new_expense": "Neue Aufwendung", - "expense": "Aufwendung | Aufwendungen", + "edit_expense": "Ausgabe bearbeiten", + "new_expense": "Neue Ausgabe", + "expense": "Ausgabe | Ausgaben", "no_expenses": "Noch keine Ausgaben!", - "list_of_expenses": "Dieser Abschnitt enthält die Liste der Ausgaben.", + "list_of_expenses": "Dieser Bereich enthält alle Ausgaben.", "confirm_delete": "Sie können diese Ausgabe nicht wiederherstellen. | Sie können diese Ausgaben nicht wiederherstellen.", - "created_message": "Aufwand erfolgreich erstellt", - "updated_message": "Aufwand erfolgreich aktualisiert", - "deleted_message": "Aufwand erfolgreich gelöscht | Aufwand erfolgreich gelöscht", + "created_message": "Ausgabe erfolgreich erstellt", + "updated_message": "Ausgabe erfolgreich aktualisiert", + "deleted_message": "Ausgabe erfolgreich gelöscht | Ausgaben erfolgreich gelöscht", "categories": { "categories_list": "Liste der Kategorien", "title": "Titel", @@ -486,6 +653,51 @@ "enter_password": "Geben Sie das Passwort ein", "retype_password": "Passwort bestätigen" }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, "users": { "title": "Benutzer", "users_list": "Benutzerliste", @@ -502,7 +714,7 @@ "new_user": "Neuer Benutzer", "edit_user": "Benutzer bearbeiten", "no_users": "Noch keine Benutzer!", - "list_of_users": "Dieser Abschnitt enthält die Liste der Benutzer.", + "list_of_users": "Dieser Bereich zeigt alle Benutzer.", "email": "E-Mail", "phone": "Telefon", "password": "Passwort", @@ -510,7 +722,9 @@ "confirm_delete": "Sie werden diesen Benutzer nicht wiederherstellen können | Sie werden nicht in der Lage sein, diese Benutzer wiederherzustellen", "created_message": "Benutzer erfolgreich erstellt", "updated_message": "Benutzer wurde erfolgreich aktualisiert", - "deleted_message": "Benutzer erfolgreich gelöscht | Benutzer erfolgreich gelöscht" + "deleted_message": "Benutzer erfolgreich gelöscht | Benutzer erfolgreich gelöscht", + "select_company_role": "Wähle Rolle für {company}", + "companies": "Unternehmen" }, "reports": { "title": "Bericht", @@ -554,17 +768,17 @@ "status": "Status" }, "estimates": { - "estimate": "Kostenvoranschlag", - "estimate_date": "Datum Kostenvoranschlag", + "estimate": "Angebot", + "estimate_date": "Angebotsdatum", "due_date": "Fälligkeit", - "estimate_number": "Kostenvoranschlag-Nr.", + "estimate_number": "Angebotsnummer", "ref_number": "Ref-Nummer", "amount": "Summe", "contact_name": "Ansprechpartner", "status": "Status" }, "expenses": { - "expenses": "Aufwendungen", + "expenses": "Ausgaben", "category": "Kategorie", "date": "Datum", "amount": "Summe", @@ -577,7 +791,7 @@ "menu_title": { "account_settings": "Konto-Einstellungen", "company_information": "Informationen zum Unternehmen", - "customization": "Anpassung", + "customization": "Personalisierung", "preferences": "Einstellungen", "notifications": "Benachrichtigungen", "tax_types": "Steuersätze", @@ -587,7 +801,12 @@ "file_disk": "Dateispeicher", "custom_fields": "Benutzerdefinierte Felder", "payment_modes": "Zahlungsarten", - "notes": "Hinweise" + "notes": "Notizen", + "exchange_rate": "Wechselkurs", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." }, "title": "Einstellungen", "setting": "Einstellung | Einstellungen", @@ -641,7 +860,7 @@ "company_info": "Firmeninfo", "company_name": "Name des Unternehmens", "company_logo": "Firmenlogo", - "section_description": "Informationen zu Ihrem Unternehmen, die auf Rechnungen, Kostenvoranschlägen und anderen von Crater erstellten Dokumenten angezeigt werden.", + "section_description": "Informationen zu Ihrem Unternehmen, die auf Rechnungen, Angeboten und anderen von Crater erstellten Dokumenten angezeigt werden.", "phone": "Telefon", "country": "Land", "state": "Bundesland", @@ -649,17 +868,24 @@ "address": "Adresse", "zip": "PLZ", "save": "Speichern", - "updated_message": "Unternehmensinformationen wurden erfolgreich aktualisiert" + "delete": "Löschen", + "updated_message": "Unternehmensinformationen wurden erfolgreich aktualisiert", + "delete_company": "Unternehmen löschen", + "delete_company_description": "Sobald Sie Ihr Unternehmen löschen, verlieren Sie alle damit verbundenen Daten und Dateien.", + "are_you_absolutely_sure": "Sind Sie wirklich sicher?", + "delete_company_modal_desc": "Diese Aktion kann nicht rückgängig gemacht werden. Dies wird {company} und alle damit verbundenen Daten dauerhaft löschen.", + "delete_company_modal_label": "Bitte geben Sie {company} zur Bestätigung ein" }, "custom_fields": { "title": "Benutzerdefinierte Felder", - "section_description": "Passen Sie Ihre Rechnungen, Kostenvoranschläge und Zahlungseinnahmen mit Ihren eigenen Feldern an. Benutzen Sie die unten aufgeführten Felder in den Adressformaten auf der Seite Anpassungseinstellungen.", + "section_description": "Passen Sie Ihre Rechnungen, Angebote und Zahlungsbelege mit Ihren eigenen Feldern an. Stellen Sie sicher, dass Sie die unten hinzugefügten Felder in den Adressformaten auf der Seite mit den Anpassungseinstellungen verwenden.", "add_custom_field": "Benutzerdefiniertes Feld hinzufügen", "edit_custom_field": "Benutzerdefiniertes Feld bearbeiten", "field_name": "Feldname", - "label": "Etikette", + "label": "Bezeichnung", "type": "Art", "name": "Name", + "slug": "Kürzel", "required": "Erforderlich", "placeholder": "Platzhalter", "help_text": "Hilfstext", @@ -671,7 +897,7 @@ "suffix": "Vorzeichen", "yes": "Ja", "no": "Nein", - "order": "Auftrag", + "order": "Reihenfolge", "custom_field_confirm_delete": "Sie können dieses benutzerdefinierte Feld nicht wiederherstellen", "already_in_use": "Benutzerdefiniertes Feld wird bereits verwendet", "deleted_message": "Benutzerdefiniertes Feld erfolgreich gelöscht", @@ -685,88 +911,104 @@ "select_relative_date": "Wählen Sie Relatives Datum", "ticked_by_default": "Standardmäßig aktiviert", "updated_message": "Benutzerdefiniertes Feld erfolgreich aktualisiert", - "added_message": "Benutzerdefiniertes Feld erfolgreich hinzugefügt" + "added_message": "Benutzerdefiniertes Feld erfolgreich hinzugefügt", + "press_enter_to_add": "Eingabetaste drücken, um neue Option hinzuzufügen", + "model_in_use": "Das Modell kann für bereits verwendete Felder nicht aktualisiert werden.", + "type_in_use": "Der Typ von bereits verwendeten Feldern kann nicht aktualisiert werden." }, "customization": { - "customization": "Anpassung", - "save": "Speichern", - "addresses": { - "title": "Adressen", - "section_description": "Sie können die Rechnungsadresse und das Versandadressenformat des Kunden festlegen (nur in PDF angezeigt). ", - "customer_billing_address": "Rechnungsadresse des Kunden", - "customer_shipping_address": "Versand-Adresse des Kunden", - "company_address": "Firma Adresse", - "insert_fields": "Felder einfügen", - "contact": "Kontakt", - "address": "Adresse", - "display_name": "Anzeigename", - "primary_contact_name": "Ansprechpartner", - "email": "E-Mail", - "website": "Webseite", - "name": "Name", - "country": "Land", - "state": "Bundesland", - "city": "Stadt", - "company_name": "Name des Unternehmens", - "address_street_1": "Strasse", - "address_street_2": "Zusatz Strasse", - "phone": "Telefon", - "zip_code": "PLZ", - "address_setting_updated": "Adresse-Einstellung erfolgreich aktualisiert" - }, + "customization": "Personalisierung", "updated_message": "Unternehmensinformationen wurden erfolgreich aktualisiert", + "save": "Speichern", + "insert_fields": "Felder einfügen", + "learn_custom_format": "Erfahren Sie, wie Sie benutzerdefiniertes Format verwenden", + "add_new_component": "Neue Komponente hinzufügen", + "component": "Komponente", + "Parameter": "Parameter", + "series": "Nummernfolge", + "series_description": "Um ein statisches Präfix/Postfix wie 'INV' in Ihrem Unternehmen zu setzen. Es unterstützt eine Zeichenlänge von bis zu 4 Zeichen.", + "series_param_label": "Nummernfolge", + "delimiter": "Trennzeichen", + "delimiter_description": "Einzelnes Zeichen für die Verwendung zwischen zwei separaten Komponenten. Standardmäßig ist dies -", + "delimiter_param_label": "Trennzeichen", + "date_format": "Datumsformat", + "date_format_description": "Ein lokales Datums- und Zeitfeld, das einen Format-Parameter akzeptiert. Das Standardformat: 'Y' stellt das aktuelle Jahr dar.", + "date_format_param_label": "Format", + "sequence": "Fortlaufende Nummer", + "sequence_description": "Fortlaufende Nummernabfolge in Ihrem Unternehmen. Sie können die Länge des angegebenen Parameters angeben.", + "sequence_param_label": "Länge der fortlaufenden Nummer", + "customer_series": "Kundenspez. Nummernfolge", + "customer_series_description": "Ein anderes Präfix/Postfix für jeden Kunden festlegen.", + "customer_sequence": "Fortlaufende Kundennummer", + "customer_sequence_description": "Fortlaufende Nummernabfolge für jeden ihrer Kunden.", + "customer_sequence_param_label": "Länge der laufenden Nummer", + "random_sequence": "Zufällige Zeichenkette", + "random_sequence_description": "Zufällige alphanumerische Zeichenkette. Sie können die Länge als Parameter angeben.", + "random_sequence_param_label": "Länge der Zeichenkette", "invoices": { "title": "Rechnungen", - "notes": "Hinweise", - "invoice_prefix": "Rechnung Präfix", - "invoice_number_length": "Rechnungsnummerlänge", + "invoice_number_format": "Rechnungsnummernformat", + "invoice_number_format_description": "Passen Sie an, wie Ihre Rechnungsnummer automatisch generiert wird, wenn Sie eine neue Rechnung erstellen.", + "preview_invoice_number": "Vorschau Rechnungsnummer", + "due_date": "Fälligkeitsdatum", + "due_date_description": "Legen Sie fest, wie das Fälligkeitsdatum automatisch gesetzt wird, wenn Sie eine Rechnung erstellen.", + "due_date_days": "Rechnung fällig nach Tagen", + "set_due_date_automatically": "Fälligkeitsdatum automatisch setzen", + "set_due_date_automatically_description": "Aktivieren Sie dies, wenn Sie das Fälligkeitsdatum automatisch setzen möchten, wenn Sie eine neue Rechnung erstellen.", + "default_formats": "Standardformate", + "default_formats_description": "Die unten angegebenen Formate werden verwendet, um die Felder bei der Erstellung einer Rechnung automatisch auszufüllen.", "default_invoice_email_body": "Standard Rechnung E-Mail Inhalt", - "invoice_settings": "Rechnungseinstellungen", - "autogenerate_invoice_number": "Rechnungsnummer automatisch generieren", - "autogenerate_invoice_number_desc": "Deaktivieren Sie diese Option, wenn Sie Rechnungsnummern nicht jedes Mal automatisch generieren möchten, wenn Sie eine neue Rechnung erstellen.", - "enter_invoice_prefix": "Rechnungspräfix eingeben", - "terms_and_conditions": "Allgemeine Geschäftsbedingungen", "company_address_format": "Firmenadressformat", "shipping_address_format": "Versandadressen Format", "billing_address_format": "Rechnungsadressen Format", - "invoice_settings_updated": "Rechnungseinstellung erfolgreich aktualisiert" + "invoice_email_attachment": "Rechnungen als Anhänge verschicken", + "invoice_email_attachment_setting_description": "Aktivieren Sie dies, wenn Sie Rechnungen als E-Mail-Anhang versenden möchten. Bitte beachten Sie, dass die Schaltfläche \"Rechnung anzeigen\" in E-Mails dann nicht mehr angezeigt wird.", + "invoice_settings_updated": "Rechnungseinstellungen erfolgreich aktualisiert", + "retrospective_edits": "Rückwirkende Änderungen", + "allow": "Erlauben", + "disable_on_invoice_partial_paid": "Deaktivieren, nachdem Teilzahlung erfasst wurde", + "disable_on_invoice_paid": "Deaktivieren, nachdem vollständige Zahlung erfasst wurde", + "disable_on_invoice_sent": "Deaktivieren, nachdem Rechnung gesendet wurde", + "retrospective_edits_description": " Basierend auf den Gesetzen Ihres Landes oder Ihrer Präferenz, können Sie Benutzer daran hindern, fertige Rechnungen zu bearbeiten." }, "estimates": { - "title": "Kostenvoranschläge", - "estimate_prefix": "Kostenvoranschlag Präfix", - "estimate_number_length": "Angebotsnummerlänge", - "default_estimate_email_body": "Rechnung - E-Mail Text", - "estimate_settings": "Einstellungen Kostenvoranschlag", - "autogenerate_estimate_number": "Kostenvoranschlagsnummer automatisch generieren", - "estimate_setting_description": "Deaktivieren Sie diese Option, wenn Sie nicht jedes Mal, wenn Sie einen neue Kostenvoranschlag erstellen, automatisch eine Schätzung generieren möchten.", - "enter_estimate_prefix": "Geben Sie das Kostenvoranschlag Präfix ein", - "estimate_setting_updated": "Einstellungen Kostenvoranschläge erfolgreich aktualisiert", + "title": "Angebote", + "estimate_number_format": "Angebotsnummernformat", + "estimate_number_format_description": "Passen Sie an, wie Ihre Angebotsnummer automatisch generiert wird, wenn Sie ein neues Angebot erstellen.", + "preview_estimate_number": "Vorschau Angebotsnummer", + "expiry_date": "Ablaufdatum", + "expiry_date_description": "Legen Sie fest, wie das Ablaufdatum automatisch gesetzt wird, wenn Sie ein Angebot erstellen.", + "expiry_date_days": "Angebot läuft ab nach Tagen", + "set_expiry_date_automatically": "Ablaufdatum automatisch setzen", + "set_expiry_date_automatically_description": "Aktivieren Sie dies, wenn Sie das Ablaufdatum automatisch setzen möchten sobald Sie ein neues Angebot erstellen.", + "default_formats": "Standardformate", + "default_formats_description": "Die unten angegebenen Formate werden verwendet, um die Felder bei der Erstellung eines Angebots automatisch auszufüllen.", + "default_estimate_email_body": "Angebot - E-Mail Text", "company_address_format": "Firmenadresse Format", + "shipping_address_format": "Versandadressen Format", "billing_address_format": "Rechnungsadressen Format", - "shipping_address_format": "Versandadressen Format" + "estimate_email_attachment": "Angebote als Anhänge verschicken", + "estimate_email_attachment_setting_description": "Aktivieren Sie dies, wenn Sie Angebote als E-Mail-Anhang versenden möchten. Bitte beachten Sie, dass die Schaltfläche \"Angebot anzeigen\" in E-Mails dann nicht mehr angezeigt wird.", + "estimate_settings_updated": "Angebotseinstellungen erfolgreich aktualisiert", + "convert_estimate_options": "Aktion nach Angebotsumwandlung", + "convert_estimate_description": "Legen Sie fest, was mit dem Angebot geschieht, nachdem es in eine Rechnung umgewandelt wurde.", + "no_action": "Keine Aktion", + "delete_estimate": "Angebot löschen", + "mark_estimate_as_accepted": "Angebot als angenommen markieren" }, "payments": { "title": "Zahlungen", - "description": "Transaktionsmodi für Zahlungen", - "payment_prefix": "Zahlung Präfix", - "payment_number_length": "Zahlungsnummerlänge", + "payment_number_format": "Zahlungsnummernformat", + "payment_number_format_description": "Passen Sie an, wie Ihre Zahlungsnummer automatisch generiert wird, wenn Sie eine neue Zahlung erstellen.", + "preview_payment_number": "Vorschau Zahlungsnummer", + "default_formats": "Standardformate", + "default_formats_description": "Die unten angegebenen Formate werden verwendet, um die Felder bei der Buchung einer Zahlung automatisch auszufüllen.", "default_payment_email_body": "Zahlung - E-Mail Text", - "payment_settings": "Zahlung Einstellungen", - "autogenerate_payment_number": "Zahlungsnummer automatisch generieren", - "payment_setting_description": "Deaktivieren Sie diese Option, wenn Sie nicht jedes Mal, wenn Sie eine neue Zahlung erstellen, automatisch Zahlungsnummern generieren möchten.", - "enter_payment_prefix": "Zahlungspräfix eingeben", - "payment_setting_updated": "Zahlungseinstellung erfolgreich aktualisiert", - "payment_modes": "Zahlungsarten", - "add_payment_mode": "Zahlungsmethode hinzufügen", - "edit_payment_mode": "Zahlungsmodus bearbeiten", - "mode_name": "Methodenname", - "payment_mode_added": "Zahlungsmethode hinzugefügt", - "payment_mode_updated": "Zahlungsmethode aktualisiert", - "payment_mode_confirm_delete": "Du kannst diese Zahlungsmethode nicht wiederherstellen", - "already_in_use": "Zahlungsmethode bereits in Verwendung", - "deleted_message": "Zahlungsmethode erfolgreich", "company_address_format": "Firmenadressformat", - "from_customer_address_format": "Rechnungsadressen Format" + "from_customer_address_format": "Rechnungsadressen Format", + "payment_email_attachment": "Zahlungen als Anhänge verschicken", + "payment_email_attachment_setting_description": "Aktivieren Sie dies, wenn Sie Zahlungen als E-Mail-Anhang versenden möchten. Bitte beachten Sie, dass die Schaltfläche \"Zahlung anzeigen\" in E-Mails dann nicht mehr angezeigt wird.", + "payment_settings_updated": "Zahlungseinstellung erfolgreich aktualisiert" }, "items": { "title": "Artikel", @@ -781,8 +1023,8 @@ "deleted_message": "Artikeleinheit erfolgreich gelöscht" }, "notes": { - "title": "Hinweise", - "description": "Sparen Sie Zeit, indem Sie Notizen erstellen und diese auf Ihren Rechnungen, Kostenvoranschlägen und Zahlungen wiederverwenden.", + "title": "Notizen", + "description": "Sparen Sie Zeit, indem Sie Notizen erstellen und diese auf Ihren Rechnungen, Angeboten und Zahlungen wiederverwenden.", "notes": "Hinweise", "type": "Art", "add_note": "Notiz hinzufügen", @@ -819,12 +1061,63 @@ "description": "Welche E-Mail-Benachrichtigungen möchten Sie erhalten wenn sich etwas ändert?", "invoice_viewed": "Rechnung angezeigt", "invoice_viewed_desc": "Wenn Ihr Kunde die gesendete Rechnung anzeigt bekommt.", - "estimate_viewed": "Kostenvoranschlag angesehen", - "estimate_viewed_desc": "Wenn Ihr Kunde den gesendeten Kostenvoranschlag anzeigt bekommt.", + "estimate_viewed": "Angebot angesehen", + "estimate_viewed_desc": "Wenn Ihr Kunde das gesendete Angebot anzeigt bekommt.", "save": "Speichern", "email_save_message": "Email erfolgreich gespeichert", "please_enter_email": "Bitte E-Mail eingeben" }, + "roles": { + "title": "Rollen", + "description": "Rollen & Berechtigungen dieses Unternehmens verwalten", + "save": "Speichern", + "add_new_role": "Neue Rolle hinzufügen", + "role_name": "Name der Rolle", + "added_on": "Hinzugefügt am", + "add_role": "Rolle hinzufügen", + "edit_role": "Rolle bearbeiten", + "name": "Name", + "permission": "Berechtigung | Berechtigungen", + "select_all": "Alle auswählen", + "none": "Keine", + "confirm_delete": "Sie werden diese Rolle nicht wiederherstellen können", + "created_message": "Rolle erfolgreich erstellt", + "updated_message": "Rolle erfolgreich aktualisiert", + "deleted_message": "Rolle erfolgreich gelöscht", + "already_in_use": "Rolle wird bereits benutzt" + }, + "exchange_rate": { + "exchange_rate": "Wechselkurs", + "title": "Wechselkursprobleme korrigieren", + "description": "Bitte geben Sie den Wechselkurs aller unten genannten Währungen ein, um Crater bei der korrekten Berechnung der Beträge in {currency} zu unterstützen.", + "drivers": "Treiber", + "new_driver": "Neuen Anbieter hinzufügen", + "edit_driver": "Anbieter bearbeiten", + "select_driver": "Treiber auswählen", + "update": "wähle Wechselkurs ", + "providers_description": "Konfigurieren Sie hier Ihre Wechselkursanbieter, um automatisch den aktuellen Wechselkurs für Transaktionen abzurufen.", + "key": "API-Schlüssel", + "name": "Name", + "driver": "Treiber", + "is_default": "STANDARD", + "currency": "Währungen", + "exchange_rate_confirm_delete": "Sie werden diesen Treiber nicht wiederherstellen können", + "created_message": "Artikel erfolgreich erstellt", + "updated_message": "Anbieter erfolgreich aktualisiert", + "deleted_message": "Anbieter erfolgreich gelöscht", + "error": " Aktive Treiber können nicht gelöscht werden", + "default_currency_error": "Diese Währung wird bereits in einem der aktiven Anbieter verwendet", + "exchange_help_text": "Wechselkurs eingeben um von {currency} nach {baseCurrency} zu konvertieren", + "currency_freak": "CurrencyFreaks", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Währungsumrechner", + "server": "Server", + "url": "URL", + "active": "Aktiv", + "currency_help_text": "Dieser Anbieter wird nur in oben ausgewählten Währungen verwendet", + "currency_in_used": "Die folgenden Währungen sind bereits bei einem anderen Anbieter aktiv. Bitte entfernen Sie diese Währungen aus der Auswahl, um diesen Anbieter erneut zu aktivieren." + }, "tax_types": { "title": "Steuersätze", "add_tax": "Steuersätze hinzufügen", @@ -844,8 +1137,20 @@ "confirm_delete": "Sie können diesen Steuersatz nicht wiederherstellen", "already_in_use": "Steuersatz wird bereits verwendet" }, + "payment_modes": { + "title": "Zahlungsarten", + "description": "Transaktionsmodi für Zahlungen", + "add_payment_mode": "Zahlungsart hinzufügen", + "edit_payment_mode": "Zahlungsart bearbeiten", + "mode_name": "Name", + "payment_mode_added": "Zahlungsart hinzugefügt", + "payment_mode_updated": "Zahlungsart aktualisiert", + "payment_mode_confirm_delete": "Sie werden diese Zahlungsart nicht wiederherstellen können", + "already_in_use": "Zahlungsart wird bereits verwendet", + "deleted_message": "Zahlungsart erfolgreich gelöscht" + }, "expense_category": { - "title": "Kategorien Kosten", + "title": "Ausgabenkategorien", "action": "Aktion", "description": "Für das Hinzufügen von Ausgabeneinträgen sind Kategorien erforderlich. Sie können diese Kategorien nach Ihren Wünschen hinzufügen oder entfernen.", "add_new_category": "Neue Kategorie hinzufügen", @@ -868,6 +1173,8 @@ "discount_setting": "Einstellung Rabatt", "discount_per_item": "Rabatt pro Artikel ", "discount_setting_description": "Aktivieren Sie diese Option, wenn Sie einzelnen Rechnungspositionen einen Rabatt hinzufügen möchten. Standardmäßig wird der Rabatt direkt zur Rechnung hinzugefügt.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", "save": "Speichern", "preference": "Präferenz | Präferenzen", "general_settings": "Standardeinstellungen für das System.", @@ -875,7 +1182,14 @@ "select_language": "Sprache auswählen", "select_time_zone": "Zeitzone auswählen", "select_date_format": "Wähle das Datumsformat", - "select_financial_year": "Geschäftsjahr auswählen" + "select_financial_year": "Geschäftsjahr auswählen", + "recurring_invoice_status": "Status der Serienrechnung", + "create_status": "Status erstellen", + "active": "Aktiv", + "on_hold": "Pausiert", + "update_status": "Status aktualisieren", + "completed": "Abgeschlossen", + "company_currency_unchangeable": "Die Währung des Unternehmens kann nicht geändert werden" }, "update_app": { "title": "Applikation aktualisieren", @@ -893,10 +1207,12 @@ "download_zip_file": "Laden Sie die ZIP-Datei herunter", "unzipping_package": "Paket entpacken", "copying_files": "Dateien kopieren", + "deleting_files": "Ungenutzte Dateien löschen", "running_migrations": "Ausführen von Migrationen", "finishing_update": "Update beenden", "update_failed": "Update fehlgeschlagen", - "update_failed_text": "Es tut uns leid! Ihr Update ist am folgenden Schritt fehlgeschlagen: {step}" + "update_failed_text": "Es tut uns leid! Ihr Update ist am folgenden Schritt fehlgeschlagen: {step}", + "update_warning": "Alle Anwendungsdateien und Standardvorlagen werden überschrieben, wenn Sie die Anwendung mit diesem Hilfsprogramm aktualisieren. Bitte machen Sie vor dem Update ein Backup Ihrer Vorlagen & Datenbank." }, "backup": { "title": "Sicherung | Sicherungen", @@ -933,7 +1249,7 @@ "new_disk": "Speicher hinzufügen", "filesystem_driver": "Dateisystem-Treiber", "local_driver": "Lokaler Treiber", - "local_root": "lokaler Pfad", + "local_root": "Lokaler Pfad", "public_driver": "Öffentlicher Treiber", "public_root": "Öffentlicher Pfad", "public_url": "Öffentliche URL", @@ -947,29 +1263,30 @@ "aws_bucket": "AWS Bucket", "aws_root": "AWS-Pfad", "do_spaces_type": "Do Spaces-Typ", - "do_spaces_key": "Do Spaces-Schlüssel", - "do_spaces_secret": "Do Spaces-Geheimnis", - "do_spaces_region": "Do Spaces Region", + "do_spaces_key": "Do Spaces Key", + "do_spaces_secret": "Do Spaces Secret", + "do_spaces_region": "Do Spaced Region", "do_spaces_bucket": "Do Spaces Bucket", "do_spaces_endpoint": "Do Spaces Endpoint", - "do_spaces_root": "Do Spaces Root", - "dropbox_type": "Dropbox Type", + "do_spaces_root": "Do Spaced Root", + "dropbox_type": "Dropbox Typ", "dropbox_token": "Dropbox Token", - "dropbox_key": "Dropbox Key", + "dropbox_key": "Dropbox Schlüssel", "dropbox_secret": "Dropbox Secret", "dropbox_app": "Dropbox App", "dropbox_root": "Dropbox Root", "default_driver": "Standard-Treiber", "is_default": "Standard", "set_default_disk": "Als Standard festlegen", + "set_default_disk_confirm": "Dieser Speicherort wird als Standard gesetzt und alle neuen PDFs werden auf diesem gespeichert", "success_set_default_disk": "Speicher wurde als Standard festgelegt", "save_pdf_to_disk": "PDFs auf Festplatte speichern", - "disk_setting_description": " Aktivieren Sie dies, um eine Kopie von jeder Rechnung, jedem Kostenvoranschlag & jedem Zahlungsbelegung als PDF automatisch auf ihrem Standard-Speicher abzulegen. Wenn Sie diese Option aktivieren, verringert sich die Ladezeit beim Betrachten der PDFs.", + "disk_setting_description": " Aktivieren Sie dies, um eine Kopie von jeder Rechnung, jedem Angebot & jedem Zahlungsbeleg als PDF automatisch auf ihrem Standard-Speicher abzulegen. Wenn Sie diese Option aktivieren, verringert sich die Ladezeit beim Betrachten der PDFs.", "select_disk": "Speicherort auswählen", "disk_settings": "Speichermedienkonfiguration", "confirm_delete": "Ihre existierenden Dateien und Ordner auf der angegebenen Festplatte werden nicht beeinflusst, aber Dieser Speicherort wird aus Crater gelöscht", "action": "Aktion", - "edit_file_disk": "Edit File Disk", + "edit_file_disk": "Speicherort editieren", "success_create": "Speicher erfolgreich hinzugefügt", "success_update": "Speicher erfolgreich bearbeitet", "error": "Hinzufügen des Speichers gescheitert", @@ -977,6 +1294,18 @@ "disk_variables_save_successfully": "Speicher erfolgreich konfiguriert", "disk_variables_save_error": "Konfiguration des Speicher gescheitert", "invalid_disk_credentials": "Ungültige Anmeldeinformationen für ausgewählten Speicher" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { @@ -994,6 +1323,7 @@ "logo_preview": "Vorschau Logo", "preferences": "Einstellungen", "preferences_desc": "Standardeinstellungen für das System.", + "currency_set_alert": "Die Währung des Unternehmens kann später nicht mehr geändert werden.", "country": "Land", "state": "Bundesland", "city": "Stadt", @@ -1031,6 +1361,15 @@ "permission_confirm_desc": "Prüfung der Berechtigung der Ordner fehlgeschlagen.", "permission_desc": "Unten finden Sie eine Liste der Ordnerberechtigungen, die erforderlich sind, damit die App funktioniert. Wenn die Berechtigungsprüfung fehlschlägt, müssen Sie Ihre Ordnerberechtigungen aktualisieren." }, + "verify_domain": { + "title": "Domain-Verifizierung", + "desc": "Crater verwendet Session-basierte Authentifizierung, die aus Sicherheitsgründen eine Domain-Verifizierung erfordert. Bitte geben Sie die Domain ein, auf der Sie auf Ihre Webanwendung zugreifen werden.", + "app_domain": "Domain der App", + "verify_now": "Jetzt verifizieren", + "success": "Domain erfolgreich verifiziert.", + "failed": "Domainüberprüfung fehlgeschlagen. Bitte geben Sie einen gültigen Domainnamen ein.", + "verify_and_continue": "Verifizieren und fortfahren" + }, "mail": { "host": "E-Mail-Host", "port": "E-Mail-Port", @@ -1069,10 +1408,10 @@ }, "validation": { "invalid_phone": "Ungültige Telefonnummer", - "invalid_url": "Ungültige URL (Bsp.: http://www.craterapp.com)", - "invalid_domain_url": "Ungültige URL (Bsp.: craterapp.com)", + "invalid_url": "Ungültige URL (Bsp.: http://www.crater.com)", + "invalid_domain_url": "Ungültige URL (Bsp.: crater.com)", "required": "Feld ist erforderlich", - "email_incorrect": "Falsche E-Mail.", + "email_incorrect": "Ungültige E-Mail.", "email_already_taken": "Die E-Mail ist bereits vergeben.", "email_does_not_exist": "Benutzer mit der angegebenen E-Mail existiert nicht", "item_unit_already_taken": "Die Artikeleinheit wurde bereits vergeben", @@ -1081,6 +1420,7 @@ "not_yet": "Noch erhalten? Erneut senden", "password_min_length": "Password muß {count} Zeichen enthalten", "name_min_length": "Name muss mindestens {count} Zeichen enthalten.", + "prefix_min_length": "Präfix muss mindestens {count} Buchstaben enthalten.", "enter_valid_tax_rate": "Geben Sie einen gültige Steuersatz ein", "numbers_only": "Nur Zahlen.", "characters_only": "Nur Zeichen.", @@ -1095,6 +1435,7 @@ "price_minvalue": "Der Preis sollte größer als 0 sein.", "amount_maxlength": "Der Betrag sollte nicht größer als 20 Ziffern sein.", "amount_minvalue": "Betrag sollte größer als 0 sein.", + "discount_maxlength": "Rabatt sollte nicht größer als der maximale Rabatt sein", "description_maxlength": "Die Beschreibung sollte nicht länger als 255 Zeichen sein.", "subject_maxlength": "Der Betreff sollte nicht länger als 100 Zeichen sein.", "message_maxlength": "Die Nachricht sollte nicht länger als 255 Zeichen sein.", @@ -1104,11 +1445,41 @@ "ref_number_maxlength": "Ref Number sollte nicht länger als 255 Zeichen sein.", "prefix_maxlength": "Das Präfix sollte nicht länger als 5 Zeichen sein.", "something_went_wrong": "Da ist etwas schief gelaufen", - "number_length_minvalue": "Nummernlänge sollte größer als 0 sein" + "number_length_minvalue": "Nummernlänge sollte größer als 0 sein", + "at_least_one_ability": "Bitte wählen Sie mindestens eine Berechtigung aus.", + "valid_driver_key": "Bitte geben Sie einen gültigen {driver} Schlüssel ein.", + "valid_exchange_rate": "Bitte geben Sie einen gültigen Wechselkurs ein.", + "company_name_not_same": "Name des Unternehmens muss mit dem angegebenen Namen übereinstimmen." + }, + "errors": { + "starter_plan": "Diese Funktion ist erst ab dem Starterplan verfügbar!", + "invalid_provider_key": "Bitte geben Sie einen gültigen API-Schlüssel für den Anbieter ein.", + "estimate_number_used": "Die Angebotsnummer ist bereits vergeben.", + "invoice_number_used": "Die Rechnungsnummer ist bereits vergeben.", + "payment_attached": "Dieser Rechnung ist bereits eine Zahlung zugewiesen. Bitte zuerst die zugewiesenen Zahlungen löschen, um mit der Entfernung fortzufahren.", + "payment_number_used": "Die Zahlungsnummer ist bereits vergeben.", + "name_already_taken": "Der Name ist bereits vergeben.", + "receipt_does_not_exist": "Beleg existiert nicht.", + "customer_cannot_be_changed_after_payment_is_added": "Kunde kann nach dem Hinzufügen der Zahlung nicht geändert werden", + "invalid_credentials": "Ungültige Anmeldeinformationen.", + "not_allowed": "Nicht erlaubt", + "login_invalid_credentials": "Diese Anmeldeinformationen stimmen nicht mit unseren Aufzeichnungen überein.", + "enter_valid_cron_format": "Bitte geben Sie ein gültiges Cron-Format ein", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, - "pdf_estimate_label": "Kostenvoranschlag", - "pdf_estimate_number": "Kostenvoran. Nummer", - "pdf_estimate_date": "Datum Kostenvoranschlag", + "pdf_estimate_label": "Angebot", + "pdf_estimate_number": "Angebotsnummer", + "pdf_estimate_date": "Angebotsdatum", "pdf_estimate_expire_date": "Ablaufdatum", "pdf_invoice_label": "Rechnung", "pdf_invoice_number": "Rechnungsnummer", @@ -1142,9 +1513,9 @@ "pdf_tax_report_label": "Umsatzsteuer BERICHT", "pdf_total_tax_label": "Gesamte Umsatzsteuer", "pdf_tax_types_label": "Steuersätze", - "pdf_expenses_label": "Gesamtausgaben", - "pdf_bill_to": "Rechnungsempfänger,", - "pdf_ship_to": "Versand an,", + "pdf_expenses_label": "Ausgaben", + "pdf_bill_to": "Rechnungsempfänger:", + "pdf_ship_to": "Versand an:", "pdf_received_from": "Erhalten von:", - "pdf_tax_label": "Skat" + "pdf_tax_label": "Steuer" } diff --git a/resources/scripts/locales/el.json b/resources/scripts/locales/el.json new file mode 100644 index 000000000..b8d976353 --- /dev/null +++ b/resources/scripts/locales/el.json @@ -0,0 +1,1521 @@ +{ + "navigation": { + "dashboard": "Ταμπλό", + "customers": "Πελάτες", + "items": "Προϊόντα", + "invoices": "Τιμολόγια", + "recurring-invoices": "Επαναλαμβανόμενα τιμολόγια", + "expenses": "Έξοδα", + "estimates": "Εκτιμήσεις", + "payments": "Πληρωμές", + "reports": "Αναφορές", + "settings": "Ρυθμίσεις", + "logout": "Αποσύνδεση", + "users": "Χρήστες", + "modules": "Modules" + }, + "general": { + "add_company": "Προσθήκη Εταιρείας", + "view_pdf": "Προβολή PDF", + "copy_pdf_url": "Αντιγραφή συνδέσμου PDF", + "download_pdf": "Λήψη PDF", + "save": "Αποθήκευση", + "create": "Δημιουργία", + "cancel": "Ακύρωση", + "update": "Ενημέρωση", + "deselect": "Αποεπιλογή", + "download": "Κατεβάστε το", + "from_date": "Από Ημερομηνία", + "to_date": "Έως ημερομηνία", + "from": "Aπό", + "to": "Προς", + "ok": "Οκ", + "yes": "Ναι", + "no": "Όχι", + "sort_by": "Ταξινόμηση κατά", + "ascending": "Αύξουσα", + "descending": "Φθίνουσα", + "subject": "Θέμα", + "body": "Σώμα", + "message": "Μήνυμα", + "send": "Αποστολή", + "preview": "Προεπισκόπηση", + "go_back": "Επιστροφή", + "back_to_login": "Πίσω στην σελίδα Σύνδεσης;", + "home": "Αρχική", + "filter": "Φίλτρα", + "delete": "Διαγραφή", + "edit": "Επεξεργασία", + "view": "Προβολή", + "add_new_item": "Προσθήκη Νέου Στοιχείου", + "clear_all": "Εκκαθάριση όλων", + "showing": "Εμφανίζονται", + "of": "του", + "actions": "Ενέργειες", + "subtotal": "Μερικό Σύνολο", + "discount": "ΈΚΠΤΩΣΗ", + "fixed": "Σταθερό", + "percentage": "Ποσοστό", + "tax": "ΦΟΡΟΣ", + "total_amount": "ΣΥΝΟΛΙΚΟ ΠΟΣΟ", + "bill_to": "Χρέωση σε", + "ship_to": "Αποστολή σε", + "due": "Οφειλόμενο", + "draft": "Πρόχειρο", + "sent": "Απεσταλμένα", + "all": "Όλα", + "select_all": "Επιλογή Όλων", + "select_template": "Επιλογή Προτύπου", + "choose_file": "Κάντε κλικ εδώ για να επιλέξετε αρχείο", + "choose_template": "Επιλέξτε ένα πρότυπο", + "choose": "Επιλέξτε", + "remove": "Κατάργηση", + "select_a_status": "Επιλέξτε κατάσταση", + "select_a_tax": "Επιλέξτε φόρο", + "search": "Αναζήτηση", + "are_you_sure": "Είστε σίγουρος/η;", + "list_is_empty": "Η λίστα είναι κενή.", + "no_tax_found": "Δεν βρέθηκε φόρος!", + "four_zero_four": "404", + "you_got_lost": "Ουπς! Έχετε Χαθεί!", + "go_home": "Μετάβαση στην Αρχική", + "test_mail_conf": "Δοκιμή Ρύθμισης Αλληλογραφίας", + "send_mail_successfully": "Το Μήνυμα εστάλη επιτυχώς", + "setting_updated": "Οι Ρυθμίσεις ενημερώθηκαν επιτυχώς", + "select_state": "Επιλογή νομού", + "select_country": "Επιλογή Χώρας", + "select_city": "Επιλογή Πόλης", + "street_1": "Οδός 1", + "street_2": "Οδός 2", + "action_failed": "Αποτυχία Ενέργειας", + "retry": "Επανάληψη", + "choose_note": "Επιλογή Σημείωσης", + "no_note_found": "Δεν Βρέθηκε Σημείωση", + "insert_note": "Εισαγωγή Σημείωσης", + "copied_pdf_url_clipboard": "Αντιγράφηκε το url του PDF στo πρόχειρο!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Έγγραφα", + "do_you_wish_to_continue": "Θέλετε να συνεχίσετε;", + "note": "Σημείωση", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" + }, + "dashboard": { + "select_year": "Επιλογή έτους", + "cards": { + "due_amount": "Οφειλόμενο Ποσό", + "customers": "Πελάτες", + "invoices": "Τιμολόγια", + "estimates": "Εκτιμήσεις", + "payments": "Payments" + }, + "chart_info": { + "total_sales": "Πωλήσεις", + "total_receipts": "Αποδείξεις", + "total_expense": "Έξοδα", + "net_income": "Καθαρό Εισόδημα", + "year": "Επιλογή έτους" + }, + "monthly_chart": { + "title": "Πωλήσεις & Έξοδα" + }, + "recent_invoices_card": { + "title": "Ανεξόφλητα Τιμολόγια", + "due_on": "Εξόφληση Έως", + "customer": "Πελάτης", + "amount_due": "Οφειλόμενο ποσό", + "actions": "Ενέργειες", + "view_all": "Προβολή Όλων" + }, + "recent_estimate_card": { + "title": "Πρόσφατες Εκτιμήσεις", + "date": "Ημερομηνία", + "customer": "Πελάτης", + "amount_due": "Οφειλόμενο Ποσό", + "actions": "Ενέργειες", + "view_all": "Προβολή Όλων" + } + }, + "tax_types": { + "name": "Όνομα", + "description": "Περιγραφή", + "percent": "Ποσοστό", + "compound_tax": "Σύνθετος Φόρος" + }, + "global_search": { + "search": "Αναζήτηση...", + "customers": "Πελάτες", + "users": "Χρήστες", + "no_results_found": "Δεν Βρέθηκαν Αποτελέσματα" + }, + "company_switcher": { + "label": "ΑΛΛΑΓΗ ΕΤΑΙΡΕΙΑΣ", + "no_results_found": "Δεν Βρέθηκαν Αποτελέσματα", + "add_new_company": "Προσθήκη νέας εταιρείας", + "new_company": "Νέα εταιρεία", + "created_message": "Η εταιρεία δημιουργήθηκε επιτυχώς" + }, + "dateRange": { + "today": "Σήμερα", + "this_week": "Τρέχουσα Εβδομάδα", + "this_month": "Τρέχων Μήνας", + "this_quarter": "Τρέχον Τρίμηνο", + "this_year": "Τρέχον Έτος", + "previous_week": "Προηγούμενη Εβδομάδα", + "previous_month": "Προηγούμενος Μήνας", + "previous_quarter": "Προηγούμενο Τρίμηνο", + "previous_year": "Προηγούμενο Έτος", + "custom": "Προσαρμοσμένο" + }, + "customers": { + "title": "Πελάτες", + "prefix": "Πρόθεμα", + "add_customer": "Προσθήκη Πελάτη", + "contacts_list": "Λίστα Πελατών", + "name": "Όνομα", + "mail": "Μήνυμα ηλεκτρονικού ταχυδρομείου", + "statement": "Κατάσταση", + "display_name": "Εμφανιζόμενο Όνομα", + "primary_contact_name": "Κύρια επαφή", + "contact_name": "Όνομα Επαφής", + "amount_due": "Οφειλόμενο Ποσό", + "email": "Ηλεκτρονική διεύθυνση", + "address": "Διεύθυνση", + "phone": "Τηλέφωνο", + "website": "Ιστοσελίδα", + "overview": "Επισκόπηση", + "invoice_prefix": "Πρόθεμα παραστατικού", + "estimate_prefix": "Εκτίμηση Προθέματος", + "payment_prefix": "Πρόθεμα Πληρωμής", + "enable_portal": "Ενεργοποιήση Πύλης", + "country": "Χώρα", + "state": "Νομός", + "city": "Πόλη", + "zip_code": "Ταχυδρομικός κώδικας", + "added_on": "Προστέθηκε Στις", + "action": "Ενέργεια", + "password": "Κωδικός", + "confirm_password": "Επιβεβαίωση Κωδικού", + "street_number": "Αριθμός οδού", + "primary_currency": "Κύριο Νόμισμα", + "description": "Περιγραφή", + "add_new_customer": "Προσθήκη Νέου Πελάτη", + "save_customer": "Αποθήκευση πελάτη", + "update_customer": "Ενημέρωση πελατών", + "customer": "Πελάτες - Πελάτες", + "new_customer": "Νέος πελάτης", + "edit_customer": "Επεξεργασία Πελάτη\n", + "basic_info": "Βασικές Πληροφορίες", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", + "billing_address": "Διεύθυνση Χρέωσης", + "shipping_address": "Διεύθυνση Αποστολής", + "copy_billing_address": "Αντιγραφή από τιμολόγηση", + "no_customers": "Δεν υπάρχουν πελάτες ακόμα!", + "no_customers_found": "Δεν βρέθηκαν πελάτες", + "no_contact": "Καμμία επαφή", + "no_contact_name": "Δεν υπάρχει όνομα επαφής", + "list_of_customers": "Αυτή η ενότητα θα περιέχει τη λίστα πελατών.", + "primary_display_name": "Κύριο Εμφανιζόμενο Όνομα", + "select_currency": "Επιλογή νομίσματος", + "select_a_customer": "Επιλέξτε έναν πελάτη", + "type_or_click": "Πληκτρολογήστε ή κάντε κλικ για να επιλέξετε ένα στοιχείο", + "new_transaction": "Νέα συναλλαγή", + "no_matching_customers": "Δεν υπάρχουν πελάτες που να ταιριάζουν!", + "phone_number": "Αριθμός Τηλεφώνου", + "create_date": "Ημερομηνία Δημιουργίας", + "confirm_delete": "Δεν θα είστε σε θέση να ανακτήσει αυτόν τον πελάτη και όλα τα σχετικά Τιμολόγια, Εκτιμήσεις και Πληρωμές. √ Δεν θα είστε σε θέση να ανακτήσει αυτούς τους πελάτες και όλα τα σχετικά Τιμολόγια, Εκτιμήσεις και Πληρωμές.", + "created_message": "Ο πελάτης δημιουργήθηκε με επιτυχία", + "updated_message": "Ο πελάτης ενημερώθηκε με επιτυχία", + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Πελάτης διαγράφηκε επιτυχώς | Οι πελάτες διαγράφηκαν με επιτυχία", + "edit_currency_not_allowed": "Δεν είναι δυνατή η αλλαγή νομίσματος μόλις δημιουργηθούν συναλλαγές." + }, + "items": { + "title": "Στοιχεία", + "items_list": "Λίστα Στοιχείων", + "name": "Όνομα", + "unit": "Μονάδα", + "description": "Περιγραφή", + "added_on": "Προστέθηκε Στις", + "price": "Τιμή", + "date_of_creation": "Ημερομηνία Δημιουργίας", + "not_selected": "Δεν έχει επιλεχθεί στοιχείο", + "action": "Ενέργεια", + "add_item": "Προσθήκη Στοιχείου", + "save_item": "Αποθήκευση Στοιχείου", + "update_item": "Ενημέρωση Στοιχείου", + "item": "Στοιχείο | Στοιχεία", + "add_new_item": "Προσθήκη Νέου Στοιχείου", + "new_item": "Νέο Στοιχείο", + "edit_item": "Επεξεργασία Στοιχείου", + "no_items": "Δεν υπάρχουν Στοιχεία ακόμα!", + "list_of_items": "Αυτή η ενότητα θα περιέχει τη λίστα των στοιχείων.", + "select_a_unit": "επιλέξτε μονάδα", + "taxes": "Φόροι", + "item_attached_message": "Δεν είναι δυνατή η διαγραφή ενός στοιχείου που χρησιμοποιείται ήδη", + "confirm_delete": "Δεν θα είστε σε θέση να ανακτήσει αυτή την εκτίμηση ’, δεν θα είστε σε θέση να ανακτήσει αυτές τις εκτιμήσεις", + "created_message": "Το αντικείμενο δημιουργήθηκε επιτυχώς", + "updated_message": "Το αντικείμενο ενημερώθηκε επιτυχώς", + "deleted_message": "Ο υπολογισμός διαγράφηκε επιτυχώς" + }, + "estimates": { + "title": "Εκτιμήσεις", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", + "estimate": "Εκτίμηση | Εκτιμήσεις", + "estimates_list": "Λίστα Εκτιμήσεων", + "days": "{days} Ημέρες", + "months": "{months} Μήνας", + "years": "{years} Έτος", + "all": "Όλα", + "paid": "Εξοφλημένο", + "unpaid": "Ανεξόφλητο", + "customer": "ΤΕΛΩΝΕΙΑΚΗ", + "ref_no": "REF NO.", + "number": "ΑΡΙΘΜΟΣ", + "amount_due": "ΠΟΣΟ ΠΡΟΣ ΠΛΗΡΩΜΗ", + "partially_paid": "Μερικώς Εξοφλημένο", + "total": "Σύνολο ", + "discount": "Έκπτωση", + "sub_total": "Μερικό Σύνολο", + "estimate_number": "Εκτίμηση Αριθμού", + "ref_number": "Αριθμός Αναφοράς", + "contact": "Επικοινωνία", + "add_item": "Προσθήκη στοιχείου", + "date": "Ημερομηνία", + "due_date": "Ημερομηνία λήξης", + "expiry_date": "Ημερομηνία λήξης", + "status": "Κατάσταση", + "add_tax": "Προσθήκη Φόρου", + "amount": "Ποσό", + "action": "Ενέργεια", + "notes": "Σημειώσεις", + "tax": "Φόρος", + "estimate_template": "Πρότυπο", + "convert_to_invoice": "Μετατράπηκε σε Τιμολόγιο", + "mark_as_sent": "Σήμανση ως απεσταλμένου", + "send_estimate": "Νέα Εκτίμηση", + "resend_estimate": "Πρόσφατες Εκτιμήσεις", + "record_payment": "Καταγραφή Πληρωμής", + "add_estimate": "Νέα Εκτίμηση", + "save_estimate": "Νέα Εκτίμηση", + "confirm_conversion": "Αυτή η εκτίμηση θα χρησιμοποιηθεί για τη δημιουργία ενός νέου τιμολογίου.", + "conversion_message": "Το τιμολόγιο κλωνοποιήθηκε επιτυχώς", + "confirm_send_estimate": "Αυτό το τιμολόγιο θα αποσταλεί μέσω email στον πελάτη", + "confirm_mark_as_sent": "Η εκτίμηση αυτή θα επισημανθεί ως εστάλη", + "confirm_mark_as_accepted": "Αυτό το τιμολόγιο θα επισημανθεί ως Απορριπτόμενο", + "confirm_mark_as_rejected": "Αυτό το τιμολόγιο θα επισημανθεί ως Απορριπτόμενο", + "no_matching_estimates": "Δεν υπάρχουν αντίστοιχες εκτιμήσεις!", + "mark_as_sent_successfully": "Το τιμολόγιο επισημάνθηκε ως απεσταλμένο επιτυχώς", + "send_estimate_successfully": "Το τιμολόγιο εστάλη επιτυχώς", + "errors": { + "required": "Το πεδίο είναι υποχρεωτικό" + }, + "accepted": "Αποδεκτή", + "rejected": "Απορρίφθηκε", + "expired": "Expired", + "sent": "Αποστολή", + "draft": "Πρόχειρο", + "viewed": "Viewed", + "declined": "Απορρίφθηκε", + "new_estimate": "Νέα Εκτίμηση", + "add_new_estimate": "Προσθήκη Νέας Εκτίμησης", + "update_Estimate": "Ενημέρωση εκτίμησης", + "edit_estimate": "Επεξεργασία Εκτίμησης", + "items": "στοιχεία", + "Estimate": "Εκτίμηση | Εκτιμήσεις", + "add_new_tax": "Προσθήκη Νέου Φόρου", + "no_estimates": "Δεν υπάρχουν εκτιμήσεις ακόμα!", + "list_of_estimates": "Αυτή η ενότητα θα περιέχει τη λίστα των στοιχείων.", + "mark_as_rejected": "Σήμανση ως απορρίφθηκε", + "mark_as_accepted": "Σήμανση ως αποδεκτό", + "marked_as_accepted_message": "Εκτίμηση που έχει επισημανθεί ως αποδεκτή", + "marked_as_rejected_message": "Εκτίμηση που σημειώνεται ως απορριφθείσα", + "confirm_delete": "Δεν θα είστε σε θέση να ανακτήσει αυτή την εκτίμηση ’, δεν θα είστε σε θέση να ανακτήσει αυτές τις εκτιμήσεις", + "created_message": "Το τιμολόγιο εστάλη επιτυχώς", + "updated_message": "Το τιμολόγιο εστάλη επιτυχώς", + "deleted_message": "Ο υπολογισμός διαγράφηκε επιτυχώς", + "something_went_wrong": "Κάτι πήγε στραβά", + "item": { + "title": "Τίτλος Προϊόντος", + "description": "Περιγραφή", + "quantity": "Ποσότητα", + "price": "Τιμή", + "discount": "Έκπτωση", + "total": "Σύνολο ", + "total_discount": "Συνολική Έκπτωση", + "sub_total": "Μερικό Σύνολο", + "tax": "Φόρος", + "amount": "Ποσό", + "select_an_item": "Πληκτρολογήστε ή κάντε κλικ για να επιλέξετε ένα στοιχείο", + "type_item_description": "Πληκτρολογήστε Περιγραφή Στοιχείου (προαιρετικό)" + } + }, + "invoices": { + "title": "Τιμολόγια", + "download": "Download", + "pay_invoice": "Pay Invoice", + "invoices_list": "Λίστα Τιμολογίων", + "invoice_information": "Invoice Information", + "days": "{days} Ημέρες", + "months": "{months} Μήνας", + "years": "{years} Έτος", + "all": "Όλα", + "paid": "Εξοφλημένο", + "unpaid": "Ανεξόφλητο", + "viewed": "Προβλήθηκαν", + "overdue": "Εκπρόθεσμα", + "completed": "Ολοκληρώθηκε", + "customer": "ΤΕΛΩΝΕΙΑΚΗ", + "paid_status": "ΚΑΤΑΣΤΑΣΗ ΠΛΗΡΩΜΗΣ", + "ref_no": "REF NO.", + "number": "ΑΡΙΘΜΟΣ", + "amount_due": "ΠΟΣΟ ΠΡΟΣ ΠΛΗΡΩΜΗ", + "partially_paid": "Μερικώς Εξοφλημένο", + "total": "Σύνολο ", + "discount": "Έκπτωση", + "sub_total": "Μερικό Σύνολο", + "invoice": "Τιμολόγια (Τιμολόγια)", + "invoice_number": "Αριθμός τιμολογίου", + "ref_number": "Αριθμός Αναφοράς", + "contact": "Επικοινωνία", + "add_item": "Προσθήκη στοιχείου", + "date": "Ημερομηνία", + "due_date": "Ημερομηνία λήξης", + "status": "Κατάσταση", + "add_tax": "Προσθήκη Φόρου", + "amount": "Ποσό", + "action": "Ενέργεια", + "notes": "Σημειώσεις", + "view": "Προβολή", + "send_invoice": "Αποστολή Παραστατικών", + "resend_invoice": "Αποστολή Παραστατικών", + "invoice_template": "Πρότυπο Τιμολογίου ", + "conversion_message": "Το τιμολόγιο κλωνοποιήθηκε επιτυχώς", + "template": "Επιλογή Προτύπου", + "mark_as_sent": "Σήμανση ως απεσταλμένου", + "confirm_send_invoice": "Αυτό το τιμολόγιο θα αποσταλεί μέσω email στον πελάτη", + "invoice_mark_as_sent": "Αυτό το τιμολόγιο θα επισημανθεί ως απεσταλμένο", + "confirm_mark_as_accepted": "Αυτό το τιμολόγιο θα επισημανθεί ως Αποδεκτό", + "confirm_mark_as_rejected": "Αυτό το τιμολόγιο θα επισημανθεί ως Απορριπτόμενο", + "confirm_send": "Αυτό το τιμολόγιο θα αποσταλεί μέσω email στον πελάτη", + "invoice_date": "Ημερομηνία Τιμολογίου", + "record_payment": "Καταγραφή Πληρωμής", + "add_new_invoice": "Προσθήκη Νέου Τιμολογίου", + "update_expense": "Ενημέρωση Δαπάνης", + "edit_invoice": "Επεξεργασία Τιμολογίου", + "new_invoice": "Νέο Τιμολόγιο", + "save_invoice": "Αποθήκευση Τιμολογίου", + "update_invoice": "Ενημέρωση Τιμολογίου", + "add_new_tax": "Προσθήκη Νέου Φόρου", + "no_invoices": "Κανένα Τιμολόγιο ακόμα!", + "mark_as_rejected": "Σήμανση ως απορρίφθηκε", + "mark_as_accepted": "Σήμανση ως αποδεκτό", + "list_of_invoices": "Αυτή η ενότητα θα περιέχει τη λίστα τιμολογίων.", + "select_invoice": "Επιλογή Τιμολογίου", + "no_matching_invoices": "Δεν υπάρχει κανένα αντίστοιχο τιμολόγιο!", + "mark_as_sent_successfully": "Το τιμολόγιο επισημάνθηκε ως απεσταλμένο επιτυχώς", + "invoice_sent_successfully": "Το τιμολόγιο εστάλη επιτυχώς", + "cloned_successfully": "Το τιμολόγιο κλωνοποιήθηκε επιτυχώς", + "clone_invoice": "Κλωνοποίηση Τιμολογίου", + "confirm_clone": "Αυτό το τιμολόγιο θα κλωνοποιηθεί σε ένα νέο Τιμολόγιο", + "item": { + "title": "Τίτλος Προϊόντος", + "description": "Περιγραφή", + "quantity": "Ποσότητα", + "price": "Τιμή", + "discount": "Έκπτωση", + "total": "Ολικό", + "total_discount": "Συνολική Έκπτωση", + "sub_total": "Μερικό Σύνολο", + "tax": "Φόρος", + "amount": "Ποσό", + "select_an_item": "Πληκτρολογήστε ή κάντε κλικ για να επιλέξετε ένα στοιχείο", + "type_item_description": "Πληκτρολογήστε Περιγραφή Στοιχείου (προαιρετικό)" + }, + "payment_attached_message": "Αυτό το τιμολόγιο έχει ήδη μια πληρωμή που επισυνάπτεται σε αυτό. Βεβαιωθείτε ότι έχετε διαγράψει πρώτα τις συνημμένες πληρωμές για να προχωρήσετε με την αφαίρεση", + "confirm_delete": "Δεν θα είστε σε θέση να ανακτήσει αυτή την εκτίμηση ’, δεν θα είστε σε θέση να ανακτήσει αυτές τις εκτιμήσεις", + "created_message": "Το τιμολόγιο κλωνοποιήθηκε επιτυχώς", + "updated_message": "Το τιμολόγιο ενημερώθηκε επιτυχώς", + "deleted_message": "Ο υπολογισμός διαγράφηκε επιτυχώς", + "marked_as_sent_message": "Το τιμολόγιο επισημάνθηκε ως απεσταλμένο επιτυχώς", + "something_went_wrong": "Κάτι πήγε στραβά", + "invalid_due_amount_message": "Συνολικό επαναλαμβανόμενο ποσό Τιμολογίου δεν μπορεί να είναι μικρότερο από το συνολικό καταβληθέν ποσό για αυτό το επαναλαμβανόμενο τιμολόγιο. Παρακαλούμε ενημερώστε το τιμολόγιο ή διαγράψτε τις σχετικές πληρωμές για να συνεχίσετε." + }, + "recurring_invoices": { + "title": "Επαναλαμβανόμενα τιμολόγια", + "invoices_list": "Επαναλαμβανόμενα τιμολόγια", + "days": "{days} Ημέρες", + "months": "{months} Μήνας", + "years": "{years} Έτος", + "all": "Όλα", + "paid": "Εξοφλημένο", + "unpaid": "Ανεξόφλητο", + "viewed": "Προβλήθηκαν", + "overdue": "Εκπρόθεσμα", + "active": "Ενεργή", + "completed": "Ολοκληρώθηκε", + "customer": "ΤΕΛΩΝΕΙΑΚΗ", + "paid_status": "ΚΑΤΑΣΤΑΣΗ ΠΛΗΡΩΜΗΣ", + "ref_no": "REF NO.", + "number": "ΑΡΙΘΜΟΣ", + "amount_due": "ΠΟΣΟ ΠΡΟΣ ΠΛΗΡΩΜΗ", + "partially_paid": "Μερικώς Εξοφλημένο", + "total": "Σύνολο ", + "discount": "Έκπτωση", + "sub_total": "Μερικό Σύνολο", + "invoice": "Επαναλαμβανόμενο Τιμολόγιο | Επαναλαμβανόμενα Τιμολόγια", + "invoice_number": "Αριθμός επαναλαμβανόμενου τιμολογίου", + "next_invoice_date": "Επόμενη Ημερομηνία Τιμολογίου", + "ref_number": "Αριθμός Αναφοράς", + "contact": "Επικοινωνία", + "add_item": "Προσθήκη στοιχείου", + "date": "Ημερομηνία", + "limit_by": "Περιορισμός Ανά:", + "limit_date": "Περιορισμός Ημερομηνίας", + "limit_count": "Όριο Καταμέτρησης", + "count": "Αρίθμηση", + "status": "Κατάσταση", + "select_a_status": "Επιλέξτε κατάσταση", + "working": "Λειτουργεί", + "on_hold": "Σε αναμονή", + "complete": "Ολοκληρώθηκε", + "add_tax": "Προσθήκη Φόρου", + "amount": "Ποσό", + "action": "Ενέργεια", + "notes": "Σημειώσεις", + "view": "Προβολή", + "basic_info": "Βασικές Πληροφορίες", + "send_invoice": "Δημιουργία Επαναλαμβανόμενου Τιμολογίου", + "auto_send": "Αυτόματη Αποστολή", + "resend_invoice": "Δημιουργία Επαναλαμβανόμενου Τιμολογίου", + "invoice_template": "Αριθμός επαναλαμβανόμενου τιμολογίου", + "conversion_message": "Επαναλαμβανόμενο τιμολόγιο κλωνοποιήθηκε επιτυχής", + "template": "Πρότυπο", + "mark_as_sent": "Σήμανση ως απεσταλμένου", + "confirm_send_invoice": "Αυτό το τιμολόγιο θα αποσταλεί μέσω email στον πελάτη", + "invoice_mark_as_sent": "Αυτό το τιμολόγιο θα επισημανθεί ως απεσταλμένο", + "confirm_send": "Αυτό το τιμολόγιο θα αποσταλεί μέσω email στον πελάτη", + "starts_at": "Ημερομηνία έναρξης", + "due_date": "Ημ/νία τιμολόγησης", + "record_payment": "Καταγραφή Πληρωμής", + "add_new_invoice": "Δημιουργία Επαναλαμβανόμενου Τιμολογίου", + "update_expense": "Ενημέρωση Δαπάνης", + "edit_invoice": "Επαναλαμβανόμενα τιμολόγια", + "new_invoice": "Επαναλαμβανόμενα τιμολόγια", + "send_automatically": "Αυτόματη Αποστολή", + "send_automatically_desc": "Ενεργοποιήστε αυτό, αν θέλετε να στείλετε το τιμολόγιο αυτόματα στον πελάτη όταν δημιουργηθεί.", + "save_invoice": "Αποθήκευση Επαναλαμβανόμενου Τιμολογίου", + "update_invoice": "Δημιουργία Επαναλαμβανόμενου Τιμολογίου", + "add_new_tax": "Προσθήκη Νέου Φόρου", + "no_invoices": "Επαναλαμβανόμενα τιμολόγια!", + "mark_as_rejected": "Σήμανση ως απορρίφθηκε", + "mark_as_accepted": "Σήμανση ως αποδεκτό", + "list_of_invoices": "Αυτή η ενότητα θα περιέχει τη λίστα τιμολογίων.", + "select_invoice": "Επιλογή Τιμολογίου", + "no_matching_invoices": "Δεν υπάρχει κανένα αντίστοιχο τιμολόγιο!", + "mark_as_sent_successfully": "Το τιμολόγιο επισημάνθηκε ως απεσταλμένο επιτυχώς", + "invoice_sent_successfully": "Επαναλαμβανόμενο τιμολόγιο κλωνοποιήθηκε επιτυχής", + "cloned_successfully": "Επαναλαμβανόμενο τιμολόγιο κλωνοποιήθηκε επιτυχής", + "clone_invoice": "Δημιουργία Επαναλαμβανόμενου Τιμολογίου", + "confirm_clone": "Αυτό το επαναλαμβανόμενο τιμολόγιο θα κλωνοποιηθεί σε ένα νέο επαναλαμβανόμενο τιμολόγιο", + "item": { + "title": "Τίτλος Προϊόντος", + "description": "Περιγραφή", + "quantity": "Ποσότητα", + "price": "Τιμή", + "discount": "Έκπτωση", + "total": "Σύνολο ", + "total_discount": "Συνολική Έκπτωση", + "sub_total": "Μερικό Σύνολο", + "tax": "Φόρος", + "amount": "Ποσό", + "select_an_item": "Πληκτρολογήστε ή κάντε κλικ για να επιλέξετε ένα στοιχείο", + "type_item_description": "Πληκτρολογήστε Περιγραφή Στοιχείου (προαιρετικό)" + }, + "frequency": { + "title": "Συχνότητα", + "select_frequency": "Επιλογή συχνοτήτων", + "minute": "Λεπτό", + "hour": "Ώρα", + "day_month": "Ημέρα του μήνα", + "month": "Μήνας", + "day_week": "Ημέρα της εβδομάδας" + }, + "confirm_delete": "Δεν θα είστε σε θέση να ανακτήσει αυτή την εκτίμηση ’, δεν θα είστε σε θέση να ανακτήσει αυτές τις εκτιμήσεις", + "created_message": "Επαναλαμβανόμενο τιμολόγιο κλωνοποιήθηκε επιτυχής", + "updated_message": "Επαναλαμβανόμενο τιμολόγιο κλωνοποιήθηκε επιτυχής", + "deleted_message": "Επαναλαμβανόμενο Τιμολόγιο διαγράφηκε επιτυχώς ‘ Επαναλαμβανόμενα Τιμολόγια διαγράφηκαν με επιτυχία", + "marked_as_sent_message": "Το τιμολόγιο επισημάνθηκε ως απεσταλμένο επιτυχώς", + "user_email_does_not_exist": "Αυτό το e-mail δεν υπάρχει", + "something_went_wrong": "Κάτι πήγε στραβά", + "invalid_due_amount_message": "Συνολικό επαναλαμβανόμενο ποσό Τιμολογίου δεν μπορεί να είναι μικρότερο από το συνολικό καταβληθέν ποσό για αυτό το επαναλαμβανόμενο τιμολόγιο. Παρακαλούμε ενημερώστε το τιμολόγιο ή διαγράψτε τις σχετικές πληρωμές για να συνεχίσετε." + }, + "payments": { + "title": "Πληρωμές", + "payments_list": "Λίστα πληρωμών", + "record_payment": "Καταγραφή Πληρωμής", + "customer": "Πελάτης", + "date": "Ημερομηνία", + "amount": "Ποσό", + "action": "Ενέργεια", + "payment_number": "Αριθμός Πληρωμής", + "payment_mode": "Τρόπος πληρωμής", + "invoice": "Τιμολόγιο", + "note": "Σημείωση", + "add_payment": "Προσθήκη Πληρωμής", + "new_payment": "Νέα Πληρωμή", + "edit_payment": "Επεξεργασία Πληρωμής", + "view_payment": "Προβολή Πληρωμής", + "add_new_payment": "Προσθήκη Νέας Πληρωμής", + "send_payment_receipt": "Αποστολή Απόδειξης Πληρωμής", + "send_payment": "Αποστολή Πληρωμής", + "save_payment": "Αποθήκευση Πληρωμής", + "update_payment": "Ενημέρωση Πληρωμής", + "payment": "Πληρωμές Πληρωμών", + "no_payments": "Καμία πληρωμή ακόμα!", + "not_selected": "Δεν έχει επιλεγεί", + "no_invoice": "Χωρίς τιμολόγιο", + "no_matching_payments": "Δεν υπάρχουν πληρωμές που να ταιριάζουν!", + "list_of_payments": "Αυτή η ενότητα θα περιέχει τον κατάλογο πληρωμών.", + "select_payment_mode": "Επιλέξτε τρόπο πληρωμής", + "confirm_mark_as_sent": "Η εκτίμηση αυτή θα επισημανθεί ως εστάλη", + "confirm_send_payment": "Αυτή η πληρωμή θα σταλεί μέσω email στον πελάτη", + "send_payment_successfully": "Η πληρωμή εστάλη επιτυχώς", + "something_went_wrong": "Κάτι πήγε στραβά", + "confirm_delete": "Δεν θα είστε σε θέση να ανακτήσει αυτή την εκτίμηση ’, δεν θα είστε σε θέση να ανακτήσει αυτές τις εκτιμήσεις", + "created_message": "Η πληρωμή εστάλη επιτυχώς", + "updated_message": "Η πληρωμή εστάλη επιτυχώς", + "deleted_message": "Ο υπολογισμός διαγράφηκε επιτυχώς", + "invalid_amount_message": "Το ποσό δεν είναι έγκυρο" + }, + "expenses": { + "title": "Έξοδα", + "expenses_list": "Λίστα Εξόδων", + "select_a_customer": "Επιλέξτε έναν πελάτη", + "expense_title": "Τίτλος", + "customer": "Πελάτης", + "currency": "Νόμισμα", + "contact": "Επικοινωνία", + "category": "Κατηγορία", + "from_date": "Από Ημερομηνία", + "to_date": "Έως ημερομηνία", + "expense_date": "Ημερομηνία", + "description": "Περιγραφή", + "receipt": "Απόδειξη", + "amount": "Ποσό", + "action": "Ενέργεια", + "not_selected": "Δεν έχει επιλεγεί", + "note": "Σημείωση", + "category_id": "ID Κατηγορίας", + "date": "Ημερομηνία", + "add_expense": "Προσθήκη δαπάνης", + "add_new_expense": "Προσθήκη δαπάνης", + "save_expense": "Ενημέρωση Δαπάνης", + "update_expense": "Ενημέρωση Δαπάνης", + "download_receipt": "Λήψη Απόδειξης", + "edit_expense": "Προσθήκη δαπάνης", + "new_expense": "Προσθήκη δαπάνης", + "expense": "Έξοδα - Έξοδα", + "no_expenses": "Δεν υπάρχουν έξοδα ακόμα!", + "list_of_expenses": "Αυτή η ενότητα θα περιέχει τη λίστα των στοιχείων.", + "confirm_delete": "Δεν θα είστε σε θέση να ανακτήσει αυτή την εκτίμηση ’, δεν θα είστε σε θέση να ανακτήσει αυτές τις εκτιμήσεις", + "created_message": "Το τιμολόγιο εστάλη επιτυχώς", + "updated_message": "Το τιμολόγιο εστάλη επιτυχώς", + "deleted_message": "Ο υπολογισμός διαγράφηκε επιτυχώς", + "categories": { + "categories_list": "Λίστα Κατηγορίων", + "title": "Τίτλος", + "name": "Όνομα", + "description": "Περιγραφή", + "amount": "Ποσό", + "actions": "Ενέργειες", + "add_category": "Προσθήκη Κατηγορίας", + "new_category": "Νέα κατηγορία", + "category": "Κατηγορία \"Κατηγορίες", + "select_a_category": "Επιλέξτε μια κατηγορία" + } + }, + "login": { + "email": "Ηλεκτρονική διεύθυνση", + "password": "Κωδικός", + "forgot_password": "Ξεχάσατε τον κωδικό;", + "or_signIn_with": "or sign in with", + "login": "Σύνδεση", + "register": "Εγγραφείτε", + "reset_password": "Επαναφορά κωδικού πρόσβασης", + "password_reset_successfully": "Επαναφορά του κωδικού πρόσβασης με επιτυχία", + "enter_email": "Εισάγετε email", + "enter_password": "Εισαγωγή κωδικού πρόσβασης", + "retype_password": "Πληκτρολόγησε και πάλι τον κωδικό" + }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, + "users": { + "title": "Χρήστες", + "users_list": "Λίστα Χρηστών", + "name": "Όνομα", + "description": "Περιγραφή", + "added_on": "Προστέθηκε Στις", + "date_of_creation": "Ημερομηνία Δημιουργίας", + "action": "Ενέργεια", + "add_user": "Προσθήκη Χρήστη", + "save_user": "Αποθήκευση Χρήστη", + "update_user": "Ενημέρωση χρήστη", + "user": "Χρήστης | Χρήστες", + "add_new_user": "Προσθήκη νέου Χρήστη", + "new_user": "Νέος χρήστης", + "edit_user": "Επεξεργασία Χρήστη", + "no_users": "Δεν υπάρχουν Στοιχεία ακόμα!", + "list_of_users": "Αυτή η ενότητα θα περιέχει τη λίστα των στοιχείων.", + "email": "Ηλεκτρονική διεύθυνση", + "phone": "Τηλέφωνο", + "password": "Κωδικός", + "user_attached_message": "Δεν είναι δυνατή η διαγραφή ενός στοιχείου που χρησιμοποιείται ήδη", + "confirm_delete": "Δεν θα είστε σε θέση να ανακτήσει αυτή την εκτίμηση ’, δεν θα είστε σε θέση να ανακτήσει αυτές τις εκτιμήσεις", + "created_message": "Ο χρήστης δημιουργήθηκε με επιτυχία", + "updated_message": "Ο χρήστης ενημερώθηκε με επιτυχία", + "deleted_message": "Ο υπολογισμός διαγράφηκε επιτυχώς", + "select_company_role": "Επιλέξτε ρόλο για {company}", + "companies": "Εταιρείες" + }, + "reports": { + "title": "Αναφορά", + "from_date": "Από Ημερομηνία", + "to_date": "Έως ημερομηνία", + "status": "Κατάσταση", + "paid": "Εξοφλημένο", + "unpaid": "Ανεξόφλητο", + "download_pdf": "Λήψη PDF", + "view_pdf": "Προβολή PDF", + "update_report": "Ενημέρωση Αναφοράς", + "report": "Αναφορά | Αναφορές", + "profit_loss": { + "profit_loss": "Κέρδη & Απώλεια", + "to_date": "Έως ημερομηνία", + "from_date": "Από Ημερομηνία", + "date_range": "Επιλέξτε εύρος ημερομηνίας" + }, + "sales": { + "sales": "Πωλήσεις", + "date_range": "Επιλέξτε εύρος ημερομηνίας", + "to_date": "Έως ημερομηνία", + "from_date": "Από Ημερομηνία", + "report_type": "Τύπος Αναφοράς" + }, + "taxes": { + "taxes": "Φόροι", + "to_date": "Έως ημερομηνία", + "from_date": "Από Ημερομηνία", + "date_range": "Επιλέξτε εύρος ημερομηνίας" + }, + "errors": { + "required": "Το πεδίο είναι υποχρεωτικό" + }, + "invoices": { + "invoice": "Τιμολόγιο", + "invoice_date": "Ημερομηνία Τιμολογίου", + "due_date": "Ημερομηνία λήξης", + "amount": "Ποσό", + "contact_name": "Όνομα Επαφής", + "status": "Κατάσταση" + }, + "estimates": { + "estimate": "Εκτιμώμενο", + "estimate_date": "Εκτιμώμενη ημ. επισκευής", + "due_date": "Ημερομηνία λήξης", + "estimate_number": "Εκτίμηση Αριθμού", + "ref_number": "Αριθμός Αναφοράς", + "amount": "Ποσό", + "contact_name": "Όνομα Επαφής", + "status": "Κατάσταση" + }, + "expenses": { + "expenses": "Έξοδα", + "category": "Κατηγορία", + "date": "Ημερομηνία", + "amount": "Ποσό", + "to_date": "Έως ημερομηνία", + "from_date": "Από Ημερομηνία", + "date_range": "Επιλέξτε εύρος ημερομηνίας" + } + }, + "settings": { + "menu_title": { + "account_settings": "Ρυθμίσεις Λογαριασμού", + "company_information": "Πληροφορίες Εταιρίας", + "customization": "Προσαρμογή", + "preferences": "Ρυθμίσεις", + "notifications": "Ειδοποιήσεις", + "tax_types": "Φορολογική κλάση", + "expense_category": "Κατηγορίες Εξόδων", + "update_app": "Ενημέρωση εφαρμογής", + "backup": "Αντίγραφα ασφαλείας", + "file_disk": "Δίσκος Αρχείου", + "custom_fields": "Προσαρμοσμένα πεδία", + "payment_modes": "Τρόπος πληρωμής", + "notes": "Σημειώσεις", + "exchange_rate": "Συναλλαγματική ισοτιμία", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." + }, + "title": "Ρυθμίσεις", + "setting": "Ρύθμιση Ρυθμίσεων", + "general": "General", + "language": "Language", + "primary_currency": "Κύριο Νόμισμα", + "timezone": "Ζώνη Ώρας", + "date_format": "Μορφή Ημερομηνίας", + "currencies": { + "title": "Συνάλλαγμα", + "currency": "Νόμισμα", + "currencies_list": "Λίστα συναλλαγμάτων", + "select_currency": "Επιλογή νομίσματος", + "name": "Όνομα", + "code": "Κώδικας", + "symbol": "Σύμβολο", + "precision": "Ακρίβεια", + "thousand_separator": "Διαχωριστικό χιλιάδων", + "decimal_separator": "Διαχωριστής δεκαδικών", + "position": "Θέση", + "position_of_symbol": "Θέση Συμβόλου", + "right": "Δεξιά", + "left": "Αριστερά", + "action": "Ενέργεια", + "add_currency": "Προσθέστε νόμισμα" + }, + "mail": { + "host": "Διακομιστής Αλληλογραφίας", + "port": "Διακομιστής Αλληλογραφίας", + "driver": "Οδηγός Αλληλογραφίας", + "secret": "Μυστικό", + "mailgun_secret": "Μυστικό Mailgun", + "mailgun_domain": "Τομέας", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Μυστικό", + "ses_key": "Κλειδί SES", + "password": "Κωδικός Πρόσβασης Ταχυδρομείου", + "username": "Όνομα Ταχυδρομείου", + "mail_config": "Διαμόρφωση Mail", + "from_name": "Όνομα Αποστολέα", + "from_mail": "Διεύθυνση Αποστολής", + "encryption": "Κρυπτογράφηση Email", + "mail_config_desc": "Παρακάτω είναι η φόρμα για τη ρύθμιση παραμέτρων του προγράμματος οδήγησης ηλεκτρονικού ταχυδρομείου για την αποστολή μηνυμάτων ηλεκτρονικού ταχυδρομείου από την εφαρμογή. Μπορείτε επίσης να ρυθμίσετε τις παραμέτρους τρίτων παρόχων όπως το Sendgrid, το SES κλπ." + }, + "pdf": { + "title": "Ρυθμίσεις PDF", + "footer_text": "Κείμενο Υποσέλιδου", + "pdf_layout": "Διάταξη PDF" + }, + "company_info": { + "company_info": "Πληροφορίες Εταιρίας", + "company_name": "Όνομα Εταιρείας", + "company_logo": "Λογότυπο Εταιρείας", + "section_description": "Πληροφορίες σχετικά με την εταιρεία σας που θα εμφανίζονται σε τιμολόγια, εκτιμήσεις και άλλα έγγραφα που δημιουργούνται από την Crater.", + "phone": "Τηλέφωνο", + "country": "Χώρα", + "state": "Νομός", + "city": "Πόλη", + "address": "Διεύθυνση", + "zip": "Ταχυδρομικός Κώδικας", + "save": "Αποθήκευση", + "delete": "Διαγραφή", + "updated_message": "Οι πληροφορίες για τον πύργο εμφιάλωσης ενημερώθηκαν επιτυχώς.", + "delete_company": "Διαγραφή Εταιρείας", + "delete_company_description": "Μόλις διαγράψετε την εταιρεία σας, θα χάσετε όλα τα δεδομένα και τα αρχεία που σχετίζονται με αυτή μόνιμα.", + "are_you_absolutely_sure": "Είσαι σίγουρος/η;", + "delete_company_modal_desc": "Αυτή η ενέργεια δεν μπορεί να αναιρεθεί. Αυτό θα διαγράψει μόνιμα {company} και όλα τα συσχετισμένα δεδομένα.", + "delete_company_modal_label": "Παρακαλώ πληκτρολογήστε {company} για επιβεβαίωση" + }, + "custom_fields": { + "title": "Προσαρμοσμένα πεδία", + "section_description": "Προσαρμόστε τα Τιμολόγια σας, Εκτιμήσεις & Αποδείξεις Πληρωμής με τα δικά σας πεδία. Σιγουρευτείτε ότι χρησιμοποιείτε τα παρακάτω πεδία στις μορφές διευθύνσεων στη σελίδα Ρυθμίσεις προσαρμογής.", + "add_custom_field": "Προσθήκη προσαρμοσμένου πεδίου", + "edit_custom_field": "Επεξεργασία Προσαρμοσμένου Πεδίου", + "field_name": "Όνομα πεδίου", + "label": "Επιγραφή", + "type": "Type", + "name": "Όνομα", + "slug": "Δυνατό χτύπημα", + "required": "Απαιτείται", + "placeholder": "Σύμβολο υποκατάστασης", + "help_text": "Κείμενο βοήθειας", + "default_value": "Προεπιλεγμένη τιμή", + "prefix": "Πρόθεμα", + "starting_number": "Αρχή αρίθμησης από", + "model": "Μοντέλο", + "help_text_description": "Εισάγετε κάποιο κείμενο για να βοηθήσετε τους χρήστες να κατανοήσουν τον σκοπό αυτού του προσαρμοσμένου πεδίου.", + "suffix": "Επίθεμα", + "yes": "Ναι", + "no": "Όχι", + "order": "Σειρά", + "custom_field_confirm_delete": "Δεν θα μπορείτε να ανακτήσετε αυτό το Προσαρμοσμένο Πεδίο", + "already_in_use": "Η διεύθυνση email χρησιμοποιείται ήδη", + "deleted_message": "Επιτυχής διαγραφή προσαρμοσμένου κλειδιού", + "options": "ρυθμίσεις", + "add_option": "Προσθήκη επιλογής", + "add_another_option": "Προσθήκη άλλης επιλογής", + "sort_in_alphabetical_order": "Ταξινόμηση σε αλφαβητική σειρά", + "add_options_in_bulk": "Προσθήκη επιλογών μαζικά", + "use_predefined_options": "Χρήση Προκαθορισμένων Επιλογών", + "select_custom_date": "Επιλέξτε Προσαρμοσμένη Ημερομηνία", + "select_relative_date": "Επιλέξτε ημερομηνία επιστροφής", + "ticked_by_default": "Ενεργοποιημένη από προεπιλογή", + "updated_message": "Επιτυχής διαγραφή προσαρμοσμένου κλειδιού", + "added_message": "Επιτυχής διαγραφή προσαρμοσμένου κλειδιού", + "press_enter_to_add": "Πατήστε enter για να προσθέσετε νέα επιλογή", + "model_in_use": "Δεν είναι δυνατή η ενημέρωση μοντέλου για πεδία που είναι ήδη σε χρήση.", + "type_in_use": "Δεν είναι δυνατή η ενημέρωση μοντέλου για πεδία που είναι ήδη σε χρήση." + }, + "customization": { + "customization": "προσαρμογή", + "updated_message": "Οι πληροφορίες για τον πύργο εμφιάλωσης ενημερώθηκαν επιτυχώς.", + "save": "Αποθήκευση", + "insert_fields": "Πεδίο ετικέτας", + "learn_custom_format": "Μάθετε πώς να χρησιμοποιείτε προσαρμοσμένη μορφή", + "add_new_component": "Προσθήκη στοιχείου", + "component": "Συστατικό", + "Parameter": "Παράμετρος", + "series": "Σειρά", + "series_description": "Για να ορίσετε ένα στατικό πρόθεμα/επίθεμα όπως 'INV' σε όλη την εταιρεία σας. Υποστηρίζει μήκος χαρακτήρα έως και 4 χαρακτήρες.", + "series_param_label": "Όνομα σειράς", + "delimiter": "Διαχωριστικό", + "delimiter_description": "Ενιαίος χαρακτήρας για τον καθορισμό του ορίου μεταξύ 2 ξεχωριστών στοιχείων. Από προεπιλογή το σετ του -", + "delimiter_param_label": "Τιμή Οριοθέτη", + "date_format": "Μορφή Ημερομηνίας", + "date_format_description": "Ένα τοπικό πεδίο ημερομηνίας και ώρας που δέχεται μια παράμετρο μορφής. Η προεπιλεγμένη μορφή: 'Y' εμφανίζει το τρέχον έτος.", + "date_format_param_label": "Μορφή", + "sequence": "Αλληλουχία", + "sequence_description": "Συνεχής ακολουθία αριθμών σε όλη την εταιρεία σας. Μπορείτε να καθορίσετε το μήκος του δοσμένου παραμέτρου.", + "sequence_param_label": "Μήκος Ακολουθίας", + "customer_series": "Σειρά Πελατών", + "customer_series_description": "Για να ορίσετε ένα διαφορετικό πρόθεμα/επίθεμα για κάθε πελάτη.", + "customer_sequence": "Προσαρμόστε την αριθμοδότηση", + "customer_sequence_description": "Συνεχής ακολουθία αριθμών για κάθε πελάτη σας.", + "customer_sequence_param_label": "Μήκος Ακολουθίας", + "random_sequence": "Τυχαία Ακολουθία", + "random_sequence_description": "Τυχαία αλφαριθμητική συμβολοσειρά. Μπορείτε να καθορίσετε το μήκος του δοσμένου παραμέτρου.", + "random_sequence_param_label": "Μήκος Ακολουθίας", + "invoices": { + "title": "Τιμολόγια", + "invoice_number_format": "Μορφή Αριθμού Τιμολογίου", + "invoice_number_format_description": "Προσαρμόστε τον τρόπο με τον οποίο δημιουργείται αυτόματα ο υπολογισμός σας όταν δημιουργείτε μια νέα εκτίμηση.", + "preview_invoice_number": "Προεπισκόπηση Αριθμού Τιμολογίου", + "due_date": "Ημερομηνία λήξης", + "due_date_description": "Καθορίστε πώς ορίζεται αυτόματα η ημερομηνία λήξης όταν δημιουργείτε μια εκτίμηση.", + "due_date_days": "Τιμολόγια ληξιπρόθεσμα μετά από (ημέρες)", + "set_due_date_automatically": "Ορισμός Ημερομηνίας Λήξης Αυτόματα", + "set_due_date_automatically_description": "Ενεργοποιήστε το αν επιθυμείτε να ορίσετε την ημερομηνία λήξης αυτόματα όταν δημιουργείτε μια νέα εκτίμηση.", + "default_formats": "Προεπιλεγμένες επεκτάσεις", + "default_formats_description": "Παρακάτω οι παρακάτω μορφές χρησιμοποιούνται για να γεμίσουν αυτόματα τα πεδία στη δημιουργία τιμολογίων.", + "default_invoice_email_body": "Προκαθορισμένο Σώμα Email Τιμολογίου", + "company_address_format": "Μορφή Διεύθυνσης Εταιρείας", + "shipping_address_format": "Μορφή Διεύθυνσης Αποστολής", + "billing_address_format": "Μορφή Διεύθυνσης Χρέωσης", + "invoice_email_attachment": "Αποστολή τιμολογίων ως συνημμένων", + "invoice_email_attachment_setting_description": "Ενεργοποιήστε αυτό αν θέλετε να στείλετε τιμολόγια ως συνημμένο email. Παρακαλώ σημειώστε ότι το κουμπί 'Προβολή Τιμολογίου' στα μηνύματα ηλεκτρονικού ταχυδρομείου δεν θα εμφανίζεται πλέον όταν είναι ενεργοποιημένο.", + "invoice_settings_updated": "Οι Ρυθμίσεις ενημερώθηκαν επιτυχώς", + "retrospective_edits": "Αναδρομικές Διεργασίες", + "allow": "Αποδοχή", + "disable_on_invoice_partial_paid": "Απενεργοποίηση μετά την εγγραφή μερικής πληρωμής", + "disable_on_invoice_paid": "Απενεργοποίηση μετά την εγγραφή μερικής πληρωμής", + "disable_on_invoice_sent": "Απενεργοποίηση μετά την αποστολή τιμολογίου", + "retrospective_edits_description": " Με βάση τους νόμους της χώρας σας ή τις προτιμήσεις σας, μπορείτε να περιορίσετε τους χρήστες από την επεξεργασία οριστικοποιημένων τιμολογίων." + }, + "estimates": { + "title": "Εκτιμήσεις", + "estimate_number_format": "Εκτίμηση Μορφής Αριθμού", + "estimate_number_format_description": "Προσαρμόστε τον τρόπο με τον οποίο δημιουργείται αυτόματα ο υπολογισμός σας όταν δημιουργείτε μια νέα εκτίμηση.", + "preview_estimate_number": "Εκτίμηση Αριθμού Προεπισκόπησης", + "expiry_date": "Ημερομηνία λήξης", + "expiry_date_description": "Καθορίστε πώς ορίζεται αυτόματα η ημερομηνία λήξης όταν δημιουργείτε μια εκτίμηση.", + "expiry_date_days": "Ο υπολογισμός λήγει μετά από ημέρες", + "set_expiry_date_automatically": "Ορισμός Ημερομηνίας Λήξης Αυτόματα", + "set_expiry_date_automatically_description": "Ενεργοποιήστε το αν επιθυμείτε να ορίσετε την ημερομηνία λήξης αυτόματα όταν δημιουργείτε μια νέα εκτίμηση.", + "default_formats": "Προεπιλεγμένες επεκτάσεις", + "default_formats_description": "Παρακάτω οι παρακάτω μορφές χρησιμοποιούνται για να γεμίσουν αυτόματα τα πεδία στη δημιουργία τιμολογίων.", + "default_estimate_email_body": "Προκαθορισμένο Σώμα Email Τιμολογίου", + "company_address_format": "Μορφή Διεύθυνσης Εταιρείας", + "shipping_address_format": "Μορφή Διεύθυνσης Αποστολής", + "billing_address_format": "Μορφή Διεύθυνσης Χρέωσης", + "estimate_email_attachment": "Αποστολή τιμολογίων ως συνημμένων", + "estimate_email_attachment_setting_description": "Ενεργοποιήστε αυτό αν θέλετε να στείλετε τιμολόγια ως συνημμένο email. Παρακαλώ σημειώστε ότι το κουμπί 'Προβολή Τιμολογίου' στα μηνύματα ηλεκτρονικού ταχυδρομείου δεν θα εμφανίζεται πλέον όταν είναι ενεργοποιημένο.", + "estimate_settings_updated": "Οι Ρυθμίσεις ενημερώθηκαν επιτυχώς", + "convert_estimate_options": "Εκτίμηση Μετατροπής Ενέργειας", + "convert_estimate_description": "Καθορίστε τι συμβαίνει στην εκτίμηση αφού μετατραπεί σε τιμολόγιο.", + "no_action": "Καμία ενέργεια", + "delete_estimate": "Διαγραφή εκτίμησης", + "mark_estimate_as_accepted": "Σημειώστε την εκτίμηση ως αποδεκτή" + }, + "payments": { + "title": "Πληρωμές", + "payment_number_format": "Μορφή Αριθμού Πληρωμής", + "payment_number_format_description": "Προσαρμόστε τον τρόπο με τον οποίο δημιουργείται αυτόματα ο υπολογισμός σας όταν δημιουργείτε μια νέα εκτίμηση.", + "preview_payment_number": "Προεπισκόπηση Αριθμού Πληρωμής", + "default_formats": "Προεπιλεγμένες επεκτάσεις", + "default_formats_description": "Παρακάτω οι παρακάτω μορφές χρησιμοποιούνται για να γεμίσουν αυτόματα τα πεδία στη δημιουργία τιμολογίων.", + "default_payment_email_body": "Προκαθορισμένο Σώμα Email Τιμολογίου", + "company_address_format": "Μορφή Διεύθυνσης Εταιρείας", + "from_customer_address_format": "Από Τη Μορφή Διεύθυνσης Πελάτη", + "payment_email_attachment": "Αποστολή τιμολογίων ως συνημμένων", + "payment_email_attachment_setting_description": "Ενεργοποιήστε αυτό αν θέλετε να στείλετε τιμολόγια ως συνημμένο email. Παρακαλώ σημειώστε ότι το κουμπί 'Προβολή Τιμολογίου' στα μηνύματα ηλεκτρονικού ταχυδρομείου δεν θα εμφανίζεται πλέον όταν είναι ενεργοποιημένο.", + "payment_settings_updated": "Οι Ρυθμίσεις ενημερώθηκαν επιτυχώς" + }, + "items": { + "title": "Προϊόντα", + "units": "Μονάδες", + "add_item_unit": "Προσθήκη Μονάδας Αντικειμένου", + "edit_item_unit": "Προσθήκη Μονάδας Αντικειμένου", + "unit_name": "Όνομα μονάδας", + "item_unit_added": "Το Αντικείμενο Δεν Προσθέθηκε", + "item_unit_updated": "Το Αντικείμενο Δεν Προσθέθηκε", + "item_unit_confirm_delete": "Δεν θα μπορείτε να ανακτήσετε αυτό το Προσαρμοσμένο Πεδίο", + "already_in_use": "Η διεύθυνση email χρησιμοποιείται ήδη", + "deleted_message": "Τα στοιχεία έχουν διαγραφεί με επιτυχία" + }, + "notes": { + "title": "Σημειώσεις", + "description": "Εξοικονομήστε χρόνο δημιουργώντας σημειώσεις και επαναχρησιμοποίησή τους στα τιμολόγια σας, εκτιμήσεις και πληρωμές.", + "notes": "Σημειώσεις", + "type": "Type", + "add_note": "Προσθήκη σημείωσης", + "add_new_note": "Προσθήκη Νέας Σημείωσης", + "name": "Όνομα", + "edit_note": "Επεξεργασία σημείωσης", + "note_added": "προστέθηκε με επιτυχία", + "note_updated": "Ο ρόλος ενημερώθηκε με επιτυχία.", + "note_confirm_delete": "Δεν θα μπορείτε να ανακτήσετε αυτό το Προσαρμοσμένο Πεδίο", + "already_in_use": "Το όνομα είναι ήδη σε χρήση", + "deleted_message": "Ο ρόλος διαγράφηκε με επιτυχία" + } + }, + "account_settings": { + "profile_picture": "Εικόνα Προφίλ", + "name": "Όνομα", + "email": "Ηλεκτρονική διεύθυνση", + "password": "Κωδικός", + "confirm_password": "Επιβεβαίωση Κωδικού", + "account_settings": "Ρυθμίσεις Λογαριασμού", + "save": "Αποθήκευση", + "section_description": "Μπορείτε να ενημερώσετε το όνομά σας, email & κωδικό πρόσβασης χρησιμοποιώντας την παρακάτω φόρμα.", + "updated_message": "Οι ρυθμίσεις του λογαριασμού ενημερώθηκαν επιτυχώς!" + }, + "user_profile": { + "name": "Όνομα", + "email": "Ηλεκτρονική διεύθυνση", + "password": "Κωδικός", + "confirm_password": "Επιβεβαίωση Κωδικού" + }, + "notification": { + "title": "Ειδοποιήσεις", + "email": "Αποστολή ειδοποιήσεων", + "description": "Ποιες ειδοποιήσεις ηλεκτρονικού ταχυδρομείου θα θέλατε να λαμβάνετε όταν κάτι αλλάζει?", + "invoice_viewed": "Τιμολόγιο προβλήθηκε", + "invoice_viewed_desc": "Όταν ο πελάτης σας βλέπει το τιμολόγιο που αποστέλλεται μέσω του πίνακα ελέγχου.", + "estimate_viewed": "Εκτίμηση προβεβλημένων", + "estimate_viewed_desc": "Όταν ο πελάτης σας βλέπει την εκτίμηση που αποστέλλεται μέσω του πίνακα ελέγχου κρατήσεων.", + "save": "Αποθήκευση", + "email_save_message": "Το Μήνυμα εστάλη επιτυχώς", + "please_enter_email": "Εισαγάγετε e-mail" + }, + "roles": { + "title": "Ρόλοι", + "description": "Διαχειριστείτε τους ρόλους και τα δικαιώματα αυτής της εταιρείας", + "save": "Αποθήκευση", + "add_new_role": "Προσθήκη Νέου Ρόλου", + "role_name": "Όνομα ρόλου", + "added_on": "Προστέθηκε στις", + "add_role": "Προσθήκη ρόλου", + "edit_role": "Επεξεργασία Ρόλου", + "name": "Όνομα", + "permission": "Δικαιώματα Δικαιωμάτων", + "select_all": "Επιλογή Όλων", + "none": "Κανείς", + "confirm_delete": "Δεν θα μπορείτε να ανακτήσετε αυτό το Προσαρμοσμένο Πεδίο", + "created_message": "Ο χρήστης δημιουργήθηκε με επιτυχία", + "updated_message": "Ο ρόλος ενημερώθηκε με επιτυχία.", + "deleted_message": "Ο ρόλος διαγράφηκε με επιτυχία", + "already_in_use": "Το όνομα είναι ήδη σε χρήση" + }, + "exchange_rate": { + "exchange_rate": "Συναλλαγματική ισοτιμία", + "title": "Διόρθωση ζητημάτων συναλλάγματος", + "description": "Παρακαλούμε εισάγετε τη συναλλαγματική ισοτιμία όλων των νομισμάτων που αναφέρονται παρακάτω για να βοηθήσετε τον Κρατήρα να υπολογίσει σωστά τα ποσά σε {currency}.", + "drivers": "Οδηγοί", + "new_driver": "Προσθήκη νέας υπηρεσίας παροχής", + "edit_driver": "Επεξεργασία παρόχου", + "select_driver": "Επιλέξτε έναν Οδηγό", + "update": "επιλογή συναλλαγματικής ισοτιμίας ", + "providers_description": "Ρυθμίστε τους παρόχους συναλλαγματικών ισοτιμιών σας εδώ για να συγκεντρώσετε αυτόματα την τελευταία συναλλαγματική ισοτιμία στις συναλλαγές.", + "key": "Κλειδί API", + "name": "Όνομα", + "driver": "Οδηγός", + "is_default": "IS ΠΡΟΦΥΛΑΞΗ", + "currency": "Συνάλλαγμα", + "exchange_rate_confirm_delete": "Δεν θα μπορείτε να ανακτήσετε αυτό το Προσαρμοσμένο Πεδίο", + "created_message": "Ο πελάτης δημιουργήθηκε με επιτυχία", + "updated_message": "Ο πελάτης δημιουργήθηκε με επιτυχία", + "deleted_message": "Ο πελάτης δημιουργήθηκε με επιτυχία", + "error": " Δεν μπορείτε να Διαγράψετε το Ενεργό Οδηγό", + "default_currency_error": "Αυτό το νόμισμα χρησιμοποιείται ήδη σε έναν από τους Active Provider", + "exchange_help_text": "Εισάγετε συναλλαγματική ισοτιμία για μετατροπή από {currency} σε {baseCurrency}", + "currency_freak": "Νόμισμα Freak", + "currency_layer": "Στρώμα Νομίσματος", + "open_exchange_rate": "Open Exchange Rates", + "currency_converter": "Μετατροπέας νομίσματος (Automatic Translation)", + "server": "Σέρβερ", + "url": "Διεύθυνση URL", + "active": "Ενεργή", + "currency_help_text": "Αυτός ο πάροχος θα χρησιμοποιηθεί μόνο πάνω από τα επιλεγμένα νομίσματα", + "currency_in_used": "Τα ακόλουθα νομίσματα είναι ήδη ενεργά σε άλλο πάροχο. Παρακαλώ αφαιρέστε αυτά τα νομίσματα από την επιλογή για να ενεργοποιήσετε ξανά αυτόν τον πάροχο." + }, + "tax_types": { + "title": "Φορολογική κλάση", + "add_tax": "Προσθήκη Φόρου", + "edit_tax": "Επεξεργασία φόρου", + "description": "Μπορείτε να προσθέσετε ή να αφαιρέσετε φόρους όπως σας παρακαλώ. Κρατήρα υποστηρίζει φόρους επί μεμονωμένων προϊόντων καθώς και στο τιμολόγιο.", + "add_new_tax": "Προσθήκη Νέου Φόρου", + "tax_settings": "Φορολογικές ρυθμίσεις", + "tax_per_item": "Στοιχείο Φόντου Υπομενού", + "tax_name": "Όνομα Φόρου", + "compound_tax": "Σύνθετος Φόρος", + "percent": "Ποσοστό", + "action": "Ενέργεια", + "tax_setting_description": "Ενεργοποιήστε το αν θέλετε να προσθέσετε έκπτωση σε μεμονωμένα στοιχεία τιμολογίου. Από προεπιλογή, η έκπτωση προστίθεται απευθείας στο τιμολόγιο.", + "created_message": "Το τιμολόγιο εστάλη επιτυχώς", + "updated_message": "Το τιμολόγιο εστάλη επιτυχώς", + "deleted_message": "Το τιμολόγιο εστάλη επιτυχώς", + "confirm_delete": "Δεν θα μπορείτε να ανακτήσετε αυτό το Προσαρμοσμένο Πεδίο", + "already_in_use": "Το όνομα είναι ήδη σε χρήση" + }, + "payment_modes": { + "title": "Τρόπος πληρωμής", + "description": "Τρόποι συναλλαγής για πληρωμές", + "add_payment_mode": "Τρόπος πληρωμής", + "edit_payment_mode": "Τρόπος πληρωμής", + "mode_name": "Όνομα λειτουργίας", + "payment_mode_added": "Προστέθηκε Λειτουργία Πληρωμής", + "payment_mode_updated": "Προστέθηκε Λειτουργία Πληρωμής", + "payment_mode_confirm_delete": "Δεν θα μπορείτε να ανακτήσετε αυτό το Προσαρμοσμένο Πεδίο", + "already_in_use": "Το όνομα είναι ήδη σε χρήση", + "deleted_message": "Η πληρωμή εστάλη επιτυχώς" + }, + "expense_category": { + "title": "Κατηγορίες Εξόδων", + "action": "Ενέργεια", + "description": "Απαιτούνται κατηγορίες για την προσθήκη καταχωρήσεων εξόδων. Μπορείτε να προσθέσετε ή να αφαιρέσετε αυτές τις κατηγορίες σύμφωνα με τις προτιμήσεις σας.", + "add_new_category": "Προσθήκη Νέας Κατηγορίας", + "add_category": "Προσθήκη Κατηγορίας", + "edit_category": "Προσθήκη Κατηγορίας", + "category_name": "Όνομα Κατηγορίας", + "category_description": "Περιγραφή", + "created_message": "Το τιμολόγιο εστάλη επιτυχώς", + "deleted_message": "Το τιμολόγιο εστάλη επιτυχώς", + "updated_message": "Το τιμολόγιο εστάλη επιτυχώς", + "confirm_delete": "Δεν θα μπορείτε να ανακτήσετε αυτό το Προσαρμοσμένο Πεδίο", + "already_in_use": "Το όνομα είναι ήδη σε χρήση" + }, + "preferences": { + "currency": "Νόμισμα", + "default_language": "Προεπιλεγμένη γλώσσα", + "time_zone": "Ζώνη Ώρας", + "fiscal_year": "Οικονομικό έτος", + "date_format": "Μορφή Ημερομηνίας", + "discount_setting": "Ρυθμίσεις Λογαριασμού", + "discount_per_item": "Έκπτωση Ανά Στοιχείο ", + "discount_setting_description": "Ενεργοποιήστε το αν θέλετε να προσθέσετε έκπτωση σε μεμονωμένα στοιχεία τιμολογίου. Από προεπιλογή, η έκπτωση προστίθεται απευθείας στο τιμολόγιο.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", + "save": "Αποθήκευση", + "preference": "Προτίμηση - Προτιμήσεις", + "general_settings": "Προεπιλεγμένες προτιμήσεις για το σύστημα.", + "updated_message": "Η πληρωμή εστάλη επιτυχώς", + "select_language": "Επιλογή Γλώσσας", + "select_time_zone": "Επιλέξτε ζώνη ώρας", + "select_date_format": "Μορφή σύντομης ημερομηνίας", + "select_financial_year": "Επιλογή Οικονομικού Έτους", + "recurring_invoice_status": "Επαναλαμβανόμενα τιμολόγια", + "create_status": "Δημιουργία κατάστασης", + "active": "Ενεργή", + "on_hold": "Σε αναμονή", + "update_status": "Ενημέρωση Κατάστασης", + "completed": "Ολοκληρώθηκε", + "company_currency_unchangeable": "Το νόμισμα της εταιρείας δεν μπορεί να αλλάξει" + }, + "update_app": { + "title": "Ενημέρωση εφαρμογής", + "description": "Μπορείτε εύκολα να ενημερώσετε τον Κρατήρα ελέγχοντας για μια νέα ενημέρωση κάνοντας κλικ στο παρακάτω κουμπί", + "check_update": "Έλεγχος Ενημερώσεων", + "avail_update": "Υπάρχει διαθέσιμη νέα ενημέρωση", + "next_version": "Επόμενη Έκδοση", + "requirements": "Απαιτήσεις", + "update": "Ενημέρωση τώρα", + "update_progress": "Ενημέρωση σε εξέλιξη", + "progress_text": "Θα χρειαστούν μόνο λίγα λεπτά. Παρακαλώ μην ανανεώσετε την οθόνη ή να κλείσετε το παράθυρο πριν τελειώσει η ενημέρωση.", + "update_success": "Η εφαρμογή έχει ενημερωθεί! Παρακαλώ περιμένετε όσο το παράθυρο του περιηγητή σας φορτώνεται αυτόματα.", + "latest_message": "Δεν υπάρχουν προς το παρόν διαθέσιμες ενημερώσεις. Χρησιμοποιείτε την τελευταία έκδοση.", + "current_version": "Τρέχουσα έκδοση", + "download_zip_file": "Κατεβάστε σε ZIP", + "unzipping_package": "Αποσυμπίεση Πακέτου", + "copying_files": "Αντιγραφή Αρχείων", + "deleting_files": "Διαγραφή αχρησιμοποίητων αρχείων", + "running_migrations": "Εκτέλεση Μεταναστών", + "finishing_update": "Ολοκλήρωση Ενημέρωσης", + "update_failed": "Αποτυχία ενημέρωσης", + "update_failed_text": "Συγνώμη! Η ενημέρωσή σας απέτυχε σε: {step} βήμα", + "update_warning": "Όλα τα αρχεία εφαρμογών και τα προεπιλεγμένα αρχεία προτύπων θα αντικατασταθούν όταν ενημερώνετε την εφαρμογή χρησιμοποιώντας αυτό το βοηθητικό πρόγραμμα. Παρακαλώ πάρτε ένα αντίγραφο ασφαλείας των προτύπων και της βάσης δεδομένων σας πριν από την ενημέρωση." + }, + "backup": { + "title": "Αντίγραφο Ασφαλείας \"Αντίγραφα Ασφαλείας", + "description": "Το αντίγραφο ασφαλείας είναι ένα zipfile που περιέχει όλα τα αρχεία στους καταλόγους που καθορίζετε μαζί με μια χωματερή της βάσης δεδομένων σας", + "new_backup": "Νέο αντίγραφο ασφαλείας", + "create_backup": "Δημιουργία αντιγράφου ασφαλείας", + "select_backup_type": "Επιλογή Τύπου(ων) Αντιγράφου Ασφαλείας", + "backup_confirm_delete": "Δεν θα μπορείτε να ανακτήσετε αυτό το Προσαρμοσμένο Πεδίο", + "path": "Path", + "new_disk": "Νέος Δίσκος", + "created_at": "Δημιουργήθηκε στις", + "size": "μέγεθος", + "dropbox": "Dropbox", + "local": "Τοπικές ρυθμίσεις", + "healthy": "υγιές", + "amount_of_backups": "ποσό αντιγράφων ασφαλείας", + "newest_backups": "νέα αντίγραφα ασφαλείας", + "used_storage": "Χώρος αποθήκευσης σε χρήση", + "select_disk": "Επιλέξτε δίσκο", + "action": "Ενέργεια", + "deleted_message": "Η διαγραφή των αντιγράφων ασφαλείας ολοκληρώθηκε επιτυχώς", + "created_message": "Η δημιουργία αντιγράφου ασφαλείας ολοκληρώθηκε με επιτυχία", + "invalid_disk_credentials": "Μη έγκυρο διαπιστευτήριο του επιλεγμένου δίσκου" + }, + "disk": { + "title": "Δίσκος Αρχείου.Δίσκοι Αρχείου", + "description": "Από προεπιλογή, ο Κρατήρας θα χρησιμοποιήσει τον τοπικό σας δίσκο για την αποθήκευση αντιγράφων ασφαλείας, avatar και άλλων αρχείων εικόνας. Μπορείτε να ρυθμίσετε περισσότερους από έναν οδηγούς δίσκων όπως DigitalOcean, S3 και Dropbox σύμφωνα με τις προτιμήσεις σας.", + "created_at": "Δημιουργήθηκε στις", + "dropbox": "Dropbox", + "name": "Όνομα", + "driver": "Οδηγός", + "disk_type": "Type", + "disk_name": "Χρήση δίσκου", + "new_disk": "Φόρτωση Νέου Δίσκου", + "filesystem_driver": "Οδηγός Συστήματος Αρχείων", + "local_driver": "τοπικός οδηγός", + "local_root": "τοπική ρίζα", + "public_driver": "Πρόκριση Οδηγού", + "public_root": "Δημόσια Ρίζα", + "public_url": "Δημόσια διεύθυνση URL", + "public_visibility": "Δημόσια Ορατότητα", + "media_driver": "Οδηγός Αλληλογραφίας", + "media_root": "Ρίζα Πολυμέσων", + "aws_driver": "Οδηγός AWS", + "aws_key": "Κλειδί SES", + "aws_secret": "SES Μυστικό", + "aws_region": "Περιοχή AWS", + "aws_bucket": "SES Μυστικό", + "aws_root": "Ρίζα AWS", + "do_spaces_type": "Τύπος κενών", + "do_spaces_key": "Τύπος κενών", + "do_spaces_secret": "Μυστικό Όριο Χώρων", + "do_spaces_region": "Περιοχή \"Χώρων\"", + "do_spaces_bucket": "Μυστικό Όριο Χώρων", + "do_spaces_endpoint": "Εκτέλεση Χώρων Τελικού Σημείου", + "do_spaces_root": "Περιοχή \"Χώρων\"", + "dropbox_type": "Συγχρονισμός Dropbox", + "dropbox_token": "Συγχρονισμός Dropbox", + "dropbox_key": "Κλειδί Dropbox", + "dropbox_secret": "Μυστικό Dropbox", + "dropbox_app": "Συγχρονισμός Dropbox", + "dropbox_root": "Ρίζα Dropbox", + "default_driver": "Προεπιλεγμένος Οδηγός", + "is_default": "IS ΠΡΟΦΥΛΑΞΗ", + "set_default_disk": "Ορισμός Προεπιλεγμένου Δίσκου", + "set_default_disk_confirm": "Αυτός ο δίσκος θα οριστεί ως προεπιλεγμένος και όλα τα νέα αρχεία PDF θα αποθηκευτούν σε αυτόν τον δίσκο", + "success_set_default_disk": "Ο δίσκος ορίστηκε ως προκαθορισμένος επιτυχώς", + "save_pdf_to_disk": "Αποθήκευση κλειδιού στο δίσκο", + "disk_setting_description": " Ενεργοποιήστε αυτό, αν θέλετε να αποθηκεύσετε ένα αντίγραφο του κάθε τιμολογίου, Εκτίμηση & παραλαβή πληρωμής PDF στον προεπιλεγμένο δίσκο σας αυτόματα. Η ενεργοποίηση αυτής της επιλογής θα μειώσει το χρόνο φόρτωσης κατά την προβολή των PDF.", + "select_disk": "Επιλέξτε δίσκο", + "disk_settings": "Ρυθμίσεις Δίσκου", + "confirm_delete": "Τα υπάρχοντα αρχεία και οι φάκελοι σας στον καθορισμένο δίσκο δεν θα επηρεαστούν αλλά η διαμόρφωση του δίσκου σας θα διαγραφεί από τον Κρατήρα", + "action": "Ενέργεια", + "edit_file_disk": "Επεξεργασία Δίσκου Αρχείου", + "success_create": "Η δεξαμενή προστέθηκε επιτυχώς.", + "success_update": "Η δεξαμενή προστέθηκε επιτυχώς.", + "error": "Η προσθήκη δίσκου απέτυχε", + "deleted_message": "Ο δίσκος αρχείου διαγράφηκε επιτυχώς", + "disk_variables_save_successfully": "Η Ρύθμιση Του Δίσκου Επιτυχής", + "disk_variables_save_error": "Αποτυχία ρύθμισης του δίσκου.", + "invalid_disk_credentials": "Μη έγκυρο διαπιστευτήριο του επιλεγμένου δίσκου" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." + } + }, + "wizard": { + "account_info": "Πληροφορίες Λογαριασμού", + "account_info_desc": "Παρακάτω θα χρησιμοποιηθούν οι λεπτομέρειες για τη δημιουργία του κύριου λογαριασμού διαχειριστή. Επίσης, μπορείτε να αλλάξετε τα στοιχεία ανά πάσα στιγμή μετά τη σύνδεση.", + "name": "Όνομα", + "email": "Ηλεκτρονική διεύθυνση", + "password": "Κωδικός", + "confirm_password": "Επιβεβαίωση Κωδικού", + "save_cont": "Αποθήκευση & συνεχεία", + "company_info": "Πληροφορίες Εταιρίας", + "company_info_desc": "Αυτές οι πληροφορίες θα εμφανίζονται στα τιμολόγια. Σημειώστε ότι μπορείτε να το επεξεργαστείτε αργότερα στη σελίδα ρυθμίσεων.", + "company_name": "Όνομα Εταιρείας", + "company_logo": "Λογότυπο Εταιρείας", + "logo_preview": "Προεπισκόπηση Λογότυπου", + "preferences": "Προτιμήσεις Εταιρείας", + "preferences_desc": "Καθορίστε τις προεπιλεγμένες προτιμήσεις για αυτήν την εταιρεία.", + "currency_set_alert": "Το νόμισμα της εταιρείας δεν μπορεί να αλλάξει.", + "country": "Χώρα", + "state": "Νομός", + "city": "Πόλη", + "address": "Διεύθυνση", + "street": "Οδός 1 - Οδός 2", + "phone": "Τηλέφωνο", + "zip_code": "Ταχυδρομικός κώδικας", + "go_back": "Επιστροφή", + "currency": "Νόμισμα", + "language": "Language", + "time_zone": "Ζώνη Ώρας", + "fiscal_year": "Οικονομικό έτος", + "date_format": "Μορφή Ημερομηνίας", + "from_address": "Διεύθυνση Αποστολής", + "username": "Όνομα Χρήστη", + "next": "Επόμενο", + "continue": "Συνέχεια", + "skip": "Salta", + "database": { + "database": "Url & Βάση Δεδομένων Ιστοτόπου", + "connection": "Σύνδεση με Βάση Δεδομένων", + "host": "Διακομιστής Βάσης Δεδομένων", + "port": "Θύρα Βάσης Δεδομένων", + "password": "Κωδικός Βάσης Δεδομένων", + "app_url": "URL Εφαρμογής", + "app_domain": "Τομέας Εφαρμογής", + "username": "Όνομα Χρήστη Βάσης Δεδομένων", + "db_name": "Όνομα βάσης δεδομένων", + "db_path": "Διαδρομή Βάσης Δεδομένων", + "desc": "Δημιουργήστε μια βάση δεδομένων στο διακομιστή σας και ορίστε τα διαπιστευτήρια χρησιμοποιώντας την παρακάτω φόρμα." + }, + "permissions": { + "permissions": "Δικαιώματα", + "permission_confirm_title": "Είστε βέβαιοι ότι θέλετε να συνεχίσετε;", + "permission_confirm_desc": "Ο έλεγχος δικαιωμάτων φακέλου απέτυχε", + "permission_desc": "Παρακάτω είναι η λίστα των δικαιωμάτων φακέλων που απαιτούνται για να λειτουργήσει η εφαρμογή. Εάν ο έλεγχος της άδειας αποτύχει, φροντίστε να ενημερώσετε τα δικαιώματα του φακέλου σας." + }, + "verify_domain": { + "title": "Ανθρώπινη Επαλήθευση", + "desc": "Ο Κρατήρας χρησιμοποιεί έλεγχο ταυτότητας που βασίζεται σε συνεδρία και απαιτεί επαλήθευση τομέα για λόγους ασφαλείας. Παρακαλώ εισάγετε τον τομέα στον οποίο θα έχετε πρόσβαση στην εφαρμογή ιστού σας.", + "app_domain": "Τομέας Εφαρμογής", + "verify_now": "Επαληθεύστε Τώρα", + "success": "Η διεύθυνση του ηλεκτρονικού ταχυδρομείου σας επαληθεύτηκε", + "failed": "Η επαλήθευση τομέα απέτυχε. Παρακαλώ εισάγετε έγκυρο όνομα τομέα.", + "verify_and_continue": "Επαλήθευση Και Συνέχεια" + }, + "mail": { + "host": "Διακομιστής Αλληλογραφίας", + "port": "Διακομιστής Αλληλογραφίας", + "driver": "Οδηγός Αλληλογραφίας", + "secret": "Μυστικό", + "mailgun_secret": "Μυστικό Mailgun", + "mailgun_domain": "Τομέας", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Μυστικό", + "ses_key": "Κλειδί SES", + "password": "Κωδικός Πρόσβασης Ταχυδρομείου", + "username": "Όνομα Ταχυδρομείου", + "mail_config": "Διαμόρφωση Mail", + "from_name": "Όνομα Αποστολέα", + "from_mail": "Διεύθυνση Αποστολής", + "encryption": "Κρυπτογράφηση Email", + "mail_config_desc": "Παρακάτω είναι η φόρμα για τη ρύθμιση παραμέτρων του προγράμματος οδήγησης ηλεκτρονικού ταχυδρομείου για την αποστολή μηνυμάτων ηλεκτρονικού ταχυδρομείου από την εφαρμογή. Μπορείτε επίσης να ρυθμίσετε τις παραμέτρους τρίτων παρόχων όπως το Sendgrid, το SES κλπ." + }, + "req": { + "system_req": "Απαιτήσεις Συστήματος", + "php_req_version": "PHP (απαιτείται έκδοση {version})", + "check_req": "Έλεγχος Απαιτήσεων", + "system_req_desc": "Ο κρατήρας έχει μερικές απαιτήσεις διακομιστή. Βεβαιωθείτε ότι ο διακομιστής σας έχει την απαιτούμενη έκδοση php και όλες τις επεκτάσεις που αναφέρονται παρακάτω." + }, + "errors": { + "migrate_failed": "Αποτυχία Μετεγκατάστασης", + "database_variables_save_error": "Δεν είναι δυνατή η εγγραφή ρύθμισης παραμέτρων στο αρχείο .env. Παρακαλώ ελέγξτε τα δικαιώματα αρχείου", + "mail_variables_save_error": "Αποτυχία ρύθμισης του δίσκου.", + "connection_failed": "Σύνδεση βάσης δεδομένων", + "database_should_be_empty": "Η βάση δεδομένων πρέπει να είναι κενή" + }, + "success": { + "mail_variables_save_successfully": "Η Ρύθμιση Του Δίσκου Επιτυχής", + "database_variables_save_successfully": "Η Ρύθμιση Του Δίσκου Επιτυχής." + } + }, + "validation": { + "invalid_phone": "Μη έγκυρος αριθμός τηλεφώνου", + "invalid_url": "Μη έγκυρη διεύθυνση url (π.χ. http://www.craterapp.com)", + "invalid_domain_url": "Μη έγκυρη διεύθυνση url (π.χ. craterapp.com)", + "required": "Το πεδίο είναι υποχρεωτικό", + "email_incorrect": "Λάθος μορφή e-mail;", + "email_already_taken": "Το όνομα έχει ήδη ληφθεί.", + "email_does_not_exist": "Το συγκεκριμένο email χρησιμοποιείται ήδη από άλλον χρήστη", + "item_unit_already_taken": "Αυτό το όνομα χρήστη έχει ήδη ληφθεί.", + "payment_mode_already_taken": "Αυτό το όνομα χρήστη έχει ήδη ληφθεί.", + "send_reset_link": "Αποστολή συνδέσμου επαναφοράς", + "not_yet": "Όχι ακόμα? Στείλε το ξανά", + "password_min_length": "Ο κωδικός πρόσβασης πρέπει να περιέχει τουλάχιστον 6 χαρακτήρες", + "name_min_length": "Το όνομα πρέπει να έχει τουλάχιστον {count} γράμματα.", + "prefix_min_length": "Το όνομα πρέπει να έχει τουλάχιστον {count} γράμματα.", + "enter_valid_tax_rate": "Εισάγετε έγκυρο φορολογικό συντελεστή", + "numbers_only": "Αριθμοί Μόνο.", + "characters_only": "Χαρακτήρες Μόνο.", + "password_incorrect": "Οι κωδικοί πρόσβασης πρέπει να είναι ίδιοι", + "password_length": "Ο κωδικός πρόσβασης πρέπει να είναι {count} χαρακτήρας.", + "qty_must_greater_than_zero": "Η ποσότητα πρέπει να είναι μεγαλύτερη του μηδενός.", + "price_greater_than_zero": "Η τιμή πρέπει να είναι μεγαλύτερη του μηδενός.", + "payment_greater_than_zero": "Η πληρωμή πρέπει να είναι μεγαλύτερη του μηδενός.", + "payment_greater_than_due_amount": "Η πληρωμή που εισήχθη είναι περισσότερο από το οφειλόμενο ποσό αυτού του τιμολογίου.", + "quantity_maxlength": "Η ποσότητα δεν πρέπει να υπερβαίνει τα 20 ψηφία.", + "price_maxlength": "Η τιμή δεν πρέπει να είναι μεγαλύτερη από 20 ψηφία.", + "price_minvalue": "Η τιμή θα πρέπει να είναι μεγαλύτερη από 0.", + "amount_maxlength": "Το ποσό δεν πρέπει να υπερβαίνει τα 20 ψηφία.", + "amount_minvalue": "Το ποσό πρέπει να είναι μεγαλύτερο από 0.", + "discount_maxlength": "Η έκπτωση δεν πρέπει να είναι μεγαλύτερη από τη μέγιστη έκπτωση", + "description_maxlength": "Η περιγραφή δεν πρέπει να είναι μεγαλύτερη από 255 χαρακτήρες.", + "subject_maxlength": "Η περιγραφή δεν πρέπει να είναι μεγαλύτερη από 100 χαρακτήρες.", + "message_maxlength": "Το μήνυμα δεν πρέπει να είναι μεγαλύτερο από 255 χαρακτήρες.", + "maximum_options_error": "Μέγιστο {max} επιλογές επιλεγμένες. Αφαιρέστε πρώτα μια επιλεγμένη επιλογή για να επιλέξετε μια άλλη.", + "notes_maxlength": "Η περιγραφή δεν πρέπει να είναι μεγαλύτερη από 65,000 χαρακτήρες.", + "address_maxlength": "Η διεύθυνση δεν πρέπει να είναι μεγαλύτερη από 255 χαρακτήρες.", + "ref_number_maxlength": "Η διεύθυνση δεν πρέπει να είναι μεγαλύτερη από 255 χαρακτήρες.", + "prefix_maxlength": "Η περιγραφή δεν πρέπει να είναι μεγαλύτερη από 5 χαρακτήρες.", + "something_went_wrong": "Κάτι δεν πήγε καλά", + "number_length_minvalue": "Το μήκος του αριθμού πρέπει να είναι μεγαλύτερο από 0", + "at_least_one_ability": "Παρακαλώ επιλέξτε τουλάχιστον ένα δικαίωμα.", + "valid_driver_key": "Παρακαλώ εισάγετε ένα έγκυρο κλειδί {driver}.", + "valid_exchange_rate": "Παρακαλώ εισάγετε μια έγκυρη συναλλαγματική ισοτιμία.", + "company_name_not_same": "Το όνομα της εταιρείας πρέπει να ταιριάζει με το συγκεκριμένο όνομα." + }, + "errors": { + "starter_plan": "Αυτή η λειτουργία είναι διαθέσιμη στο Starter plan και μετά!", + "invalid_provider_key": "Εισαγάγετε Έγκυρο Κλειδί Api Πάροχου.", + "estimate_number_used": "Ο αριθμός της εκτίμησης έχει ήδη ληφθεί.", + "invoice_number_used": "Ο αριθμός τιμολογίου έχει ήδη ληφθεί.", + "payment_attached": "Αυτό το τιμολόγιο έχει ήδη μια πληρωμή που επισυνάπτεται σε αυτό. Βεβαιωθείτε ότι έχετε διαγράψει πρώτα τις συνημμένες πληρωμές για να προχωρήσετε με την αφαίρεση.", + "payment_number_used": "Ο αριθμός πληρωμής έχει ήδη ληφθεί.", + "name_already_taken": "Το όνομα έχει ήδη ληφθεί.", + "receipt_does_not_exist": "Δεν υπάρχει απόδειξη.", + "customer_cannot_be_changed_after_payment_is_added": "Ο πελάτης δεν μπορεί να αλλάξει μετά την πληρωμή προστίθεται", + "invalid_credentials": "Μη Έγκυρα Πιστοποιητικά.", + "not_allowed": "Δεν Επιτρέπεται", + "login_invalid_credentials": "Αυτά τα διαπιστευτήρια δεν ταιριάζουν με τα αρχεία μας.", + "enter_valid_cron_format": "Παρακαλώ εισάγετε μια έγκυρη μορφή cron", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" + }, + "pdf_estimate_label": "Εκτίμηση", + "pdf_estimate_number": "Εκτίμηση Αριθμού", + "pdf_estimate_date": "Εκτιμώμενη ημ. επισκευής", + "pdf_estimate_expire_date": "Ημερομηνία λήξης", + "pdf_invoice_label": "Τιμολόγιο", + "pdf_invoice_number": "Αριθμός τιμολογίου", + "pdf_invoice_date": "Ημ/νία Τιμολόγησης", + "pdf_invoice_due_date": "Echéance", + "pdf_notes": "Σημειώσεις", + "pdf_items_label": "Προϊόντα", + "pdf_quantity_label": "Ποσότητα", + "pdf_price_label": "Τιμή", + "pdf_discount_label": "Έκπτωση", + "pdf_amount_label": "Ποσό", + "pdf_subtotal": "Υποσύνολο", + "pdf_total": "Σύνολο ", + "pdf_payment_label": "Πληρωμή", + "pdf_payment_receipt_label": "ΠΡΟΣΑΡΜΟΓΗ ΠΛΗΡΩΜΗΣ", + "pdf_payment_date": "Ημ/νία εξόφλησης", + "pdf_payment_number": "Αριθμός Πληρωμής", + "pdf_payment_mode": "Τρόπος πληρωμής", + "pdf_payment_amount_received_label": "Ποσοστό Ληφθέντων", + "pdf_expense_report_label": "ΕΚΘΕΣΗ ΕΞΑΓΩΓΩΝ", + "pdf_total_expenses_label": "ΣΥΝΟΛΟ ΔΑΠΑΝΗΣ", + "pdf_profit_loss_label": "ΕΚΘΕΣΗ ΕΠΑΦΗΣ & LOSS", + "pdf_sales_customers_label": "Αναφορά Πελάτη Πωλήσεων", + "pdf_sales_items_label": "Αναφορά Πελάτη Πωλήσεων", + "pdf_tax_summery_label": "Αναφορά Περίληψης Φόρου", + "pdf_income_label": "ΕΙΣΟΔΗΜΑΤΑ\n", + "pdf_net_profit_label": "NET PROFIT", + "pdf_customer_sales_report": "Έκθεση Πωλήσεων: Από Τον Πελάτη", + "pdf_total_sales_label": "ΣΥΝΟΛΟ ΠΩΛΗΣΗΣ", + "pdf_item_sales_label": "Έκθεση Πωλήσεων: Από Τον Πελάτη", + "pdf_tax_report_label": "ΦΟΡΟΛΟΓΙΚΗ ΕΚΘΕΣΗ", + "pdf_total_tax_label": "ΣΥΝΟΛΟ ΦΟΡΟΥ", + "pdf_tax_types_label": "Φορολογική κλάση", + "pdf_expenses_label": "Έξοδα", + "pdf_bill_to": "Χρέωση σε,", + "pdf_ship_to": "Αποστολή σε,", + "pdf_received_from": "Λήψη από", + "pdf_tax_label": "Φόρος" +} diff --git a/resources/scripts/locales/es.json b/resources/scripts/locales/es.json index 61ffe4f23..434832857 100644 --- a/resources/scripts/locales/es.json +++ b/resources/scripts/locales/es.json @@ -4,13 +4,15 @@ "customers": "Clientes", "items": "Artículos", "invoices": "Facturas", + "recurring-invoices": "Facturas recurrentes", "expenses": "Gastos", "estimates": "Presupuestos", "payments": "Pagos", "reports": "Informes", - "settings": "Configuraciones", + "settings": "Ajustes", "logout": "Cerrar sesión", - "users": "Usuarios" + "users": "Usuarios", + "modules": "Modules" }, "general": { "add_company": "Añadir empresa", @@ -27,13 +29,17 @@ "to_date": "Hasta la fecha", "from": "De", "to": "A", + "ok": "De acuerdo", + "yes": "Sí", + "no": "No", "sort_by": "Ordenar por", "ascending": "Ascendente", "descending": "Descendente", - "subject": "Sujeta", + "subject": "Asunto", "body": "Cuerpo", "message": "Mensaje", "send": "Enviar", + "preview": "Previsualizar", "go_back": "Volver", "back_to_login": "¿Volver al inicio de sesión?", "home": "Inicio", @@ -51,7 +57,7 @@ "fixed": "Fijo", "percentage": "Porcentaje", "tax": "IMPUESTO", - "total_amount": "CANTIDAD TOTAL", + "total_amount": "VALOR TOTAL", "bill_to": "Cobrar a", "ship_to": "Enviar a", "due": "Debido", @@ -59,12 +65,11 @@ "sent": "Enviado", "all": "Todas", "select_all": "Seleccionar todo", + "select_template": "Seleccionar plantilla", "choose_file": "Haga clic aquí para elegir un archivo", "choose_template": "Elige una plantilla", "choose": "Escoger", "remove": "Eliminar", - "powered_by": "Impulsado por", - "bytefury": "Bytefury", "select_a_status": "Selecciona un estado", "select_a_tax": "Selecciona un impuesto", "search": "Buscar", @@ -86,15 +91,24 @@ "retry": "Procesar de nuevo", "choose_note": "Elegir nota", "no_note_found": "No se encontró ninguna nota", - "insert_note": "Insertar una nota" + "insert_note": "Insertar una nota", + "copied_pdf_url_clipboard": "Copiar Url al portapapeles", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Documentación", + "do_you_wish_to_continue": "¿Deseas continuar?", + "note": "Nota", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { "select_year": "Seleccionar año", "cards": { - "due_amount": "Cantidad Debida", + "due_amount": "Importe pendiente", "customers": "Clientes", "invoices": "Facturas", - "estimates": "Presupuestos" + "estimates": "Presupuestos", + "payments": "Payments" }, "chart_info": { "total_sales": "Ventas", @@ -110,7 +124,7 @@ "title": "Facturas adeudadas", "due_on": "Debido a", "customer": "Cliente", - "amount_due": "Cantidad Debida", + "amount_due": "Importe pendiente", "actions": "Acciones", "view_all": "Ver todo" }, @@ -118,7 +132,7 @@ "title": "Presupuestos recientes", "date": "Fecha", "customer": "Cliente", - "amount_due": "Cantidad Debida", + "amount_due": "Importe pendiente", "actions": "Acciones", "view_all": "Ver todo" } @@ -135,8 +149,28 @@ "users": "Usuarios", "no_results_found": "No se encontraron resultados" }, + "company_switcher": { + "label": "CAMBIAR EMPRESA", + "no_results_found": "No se encontraron resultados", + "add_new_company": "Añadir nueva empresa", + "new_company": "Nueva empresa", + "created_message": "Empresa creada satisfactoriamente" + }, + "dateRange": { + "today": "Hoy", + "this_week": "Esta semana", + "this_month": "Este mes", + "this_quarter": "Este trimestre", + "this_year": "Año actual", + "previous_week": "Semana pasada", + "previous_month": "Mes pasado", + "previous_quarter": "Trimestre pasado", + "previous_year": "Año pasado", + "custom": "Personalizado" + }, "customers": { "title": "Clientes", + "prefix": "Prefijo", "add_customer": "Agregar cliente", "contacts_list": "Lista de clientes", "name": "Nombre", @@ -145,12 +179,15 @@ "display_name": "Nombre para mostrar", "primary_contact_name": "Nombre de contacto primario", "contact_name": "Nombre de contacto", - "amount_due": "Cantidad Debida", + "amount_due": "Importe pendiente", "email": "Correo electrónico", "address": "Dirección", "phone": "Teléfono", "website": "Sitio web", "overview": "Descripción general", + "invoice_prefix": "Prefijo de la factura", + "estimate_prefix": "Prefijo de los presupuestos", + "payment_prefix": "Prefijo de pago", "enable_portal": "Habilitar Portal", "country": "País", "state": "Estado", @@ -159,6 +196,7 @@ "added_on": "Añadido el", "action": "Acción", "password": "Contraseña", + "confirm_password": "Confirmar contraseña", "street_number": "Número de calle", "primary_currency": "Moneda primaria", "description": "Descripción", @@ -169,13 +207,17 @@ "new_customer": "Nuevo cliente", "edit_customer": "Editar cliente", "basic_info": "Información básica", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", "billing_address": "Dirección de Facturación", "shipping_address": "Dirección de Envío", "copy_billing_address": "Copia de facturación", "no_customers": "¡Aún no hay clientes!", "no_customers_found": "¡No se encontraron clientes!", - "no_contact": "No contact", - "no_contact_name": "No contact name", + "no_contact": "No hay contactos", + "no_contact_name": "No hay nombres de contactos", "list_of_customers": "Esta sección contendrá la lista de clientes.", "primary_display_name": "Nombre de visualización principal", "select_currency": "Seleccione el tipo de moneda", @@ -188,7 +230,9 @@ "confirm_delete": "No podrá recuperar este cliente y todas las facturas, estimaciones y pagos relacionados. | No podrá recuperar estos clientes y todas las facturas, estimaciones y pagos relacionados.", "created_message": "Cliente creado con éxito", "updated_message": "Cliente actualizado con éxito", - "deleted_message": "Cliente eliminado correctamente | Clientes eliminados exitosamente" + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Cliente eliminado correctamente | Clientes eliminados exitosamente", + "edit_currency_not_allowed": "No se puede cambiar la divisa una vez creadas las transacciones." }, "items": { "title": "Artículos", @@ -199,7 +243,7 @@ "added_on": "Añadido", "price": "Precio", "date_of_creation": "Fecha de creación", - "not_selected": "No item selected", + "not_selected": "Ningún elemento seleccionado", "action": "Acción", "add_item": "Añadir artículo", "save_item": "Guardar artículo", @@ -220,18 +264,20 @@ }, "estimates": { "title": "Presupuestos", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", "estimate": "Presupuesto | Presupuestos", "estimates_list": "Lista de presupuestos", - "days": "días Días", - "months": "meses Mes", - "years": "años Año", + "days": "{días} Días", + "months": "{meses} Mes", + "years": "{años} Año", "all": "Todas", "paid": "Pagada", "unpaid": "No pagado", "customer": "CLIENTE", "ref_no": "NÚMERO DE REFERENCIA.", "number": "NÚMERO", - "amount_due": "CANTIDAD DEBIDA", + "amount_due": "IMPORTE PENDIENTE", "partially_paid": "Parcialmente pagado", "total": "Total", "discount": "Descuento", @@ -270,9 +316,11 @@ "required": "Se requiere campo" }, "accepted": "Aceptado", - "rejected": "Rejected", + "rejected": "Rechazado", + "expired": "Expired", "sent": "Enviado", "draft": "Borrador", + "viewed": "Viewed", "declined": "Rechazado", "new_estimate": "Nuevo presupuesto", "add_new_estimate": "Añadir nuevo presupuesto", @@ -309,21 +357,24 @@ }, "invoices": { "title": "Facturas", + "download": "Download", + "pay_invoice": "Pay Invoice", "invoices_list": "Lista de facturas", - "days": "días Días", - "months": "meses Mes", - "years": "años Año", + "invoice_information": "Invoice Information", + "days": "{días} Días", + "months": "{meses} Mes", + "years": "{años} Año", "all": "Todas", "paid": "Pagada", "unpaid": "No pagado", - "viewed": "Viewed", - "overdue": "Overdue", - "completed": "Completed", + "viewed": "Visto", + "overdue": "Vencido", + "completed": "Completado", "customer": "CLIENTE", "paid_status": "ESTADO PAGADO", "ref_no": "NÚMERO DE REFERENCIA.", "number": "NÚMERO", - "amount_due": "CANTIDAD DEBIDA", + "amount_due": "IMPORTE PENDIENTE", "partially_paid": "Parcialmente pagado", "total": "Total", "discount": "Descuento", @@ -344,10 +395,13 @@ "send_invoice": "Enviar la factura", "resend_invoice": "Reenviar factura", "invoice_template": "Plantilla de factura", + "conversion_message": "Factura clonada correctamente", "template": "Modelo", "mark_as_sent": "Marcar como enviada", "confirm_send_invoice": "Esta factura será enviada por email al cliente", "invoice_mark_as_sent": "Esta factura se marcará como enviada", + "confirm_mark_as_accepted": "Esta factura se marcará como aceptada", + "confirm_mark_as_rejected": "Esta factura se marcará como rechazada", "confirm_send": "Estas facturas se enviarán por correo electrónico al cliente.", "invoice_date": "Fecha de la factura", "record_payment": "Registro de pago", @@ -359,13 +413,15 @@ "update_invoice": "Actualizar factura", "add_new_tax": "Agregar nuevo impuesto", "no_invoices": "¡Aún no hay facturas!", + "mark_as_rejected": "Marcar como rechazado", + "mark_as_accepted": "Marcar como aceptado", "list_of_invoices": "Esta sección contendrá la lista de facturas.", "select_invoice": "Seleccionar factura", "no_matching_invoices": "¡No hay facturas coincidentes con la selección!", "mark_as_sent_successfully": "Factura marcada como enviada con éxito", - "invoice_sent_successfully": "Factura enviada exitosamente", - "cloned_successfully": "Factura clonada exitosamente", - "clone_invoice": "Factura de clonación", + "invoice_sent_successfully": "Factura enviada satisfactoriamente", + "cloned_successfully": "Factura clonada correctamente", + "clone_invoice": "Clonar factura", "confirm_clone": "Esta factura se clonará en una nueva factura.", "item": { "title": "Título del artículo", @@ -381,13 +437,123 @@ "select_an_item": "Escriba o haga clic para seleccionar un elemento", "type_item_description": "Descripción del tipo de elemento (opcional)" }, + "payment_attached_message": "Una de las facturas seleccionadas ya tiene un pago adjunto. Asegúrese de eliminar primero los pagos adjuntos para continuar con la eliminación", "confirm_delete": "No podrá recuperar esta factura | No podrá recuperar estas facturas", "created_message": "Factura creada exitosamente", "updated_message": "Factura actualizada exitosamente", "deleted_message": "Factura eliminada con éxito | Facturas borradas exitosamente", "marked_as_sent_message": "Factura marcada como enviada con éxito", "something_went_wrong": "Algo fue mal", - "invalid_due_amount_message": "El pago ingresado es mayor que la cantidad total debida por esta factura. Por favor verificalo y vuelve a intentarlo" + "invalid_due_amount_message": "El pago introducido es mayor que el importe total pendiente de esta factura. Por favor, verificalo y vuelve a intentarlo." + }, + "recurring_invoices": { + "title": "Facturas recurrentes", + "invoices_list": "Lista de facturas recurrentes", + "days": "{days} Días", + "months": "{months} Mes/es", + "years": "{years} Año/s", + "all": "Todas", + "paid": "Pagada", + "unpaid": "No pagada", + "viewed": "Vista", + "overdue": "Vencido", + "active": "Activo", + "completed": "Completado", + "customer": "CLIENTE", + "paid_status": "ESTADO DE PAGO", + "ref_no": "NÚM. DE REFERENCIA.", + "number": "NÚMERO", + "amount_due": "IMPORTE PENDIENTE", + "partially_paid": "Parcialmente pagada", + "total": "Total", + "discount": "Descuento", + "sub_total": "Subtotal", + "invoice": "Factura recurrente | Facturas recurrentes", + "invoice_number": "Número de factura recurrente", + "next_invoice_date": "Fecha de la próxima factura", + "ref_number": "Número de referencia", + "contact": "Contacto", + "add_item": "Añadir un elemento", + "date": "Fecha", + "limit_by": "Limitar por", + "limit_date": "Fecha límite", + "limit_count": "Número de Límites", + "count": "Recuento", + "status": "Estado", + "select_a_status": "Selecciona un estado", + "working": "Trabajando", + "on_hold": "En espera", + "complete": "Completado", + "add_tax": "Agregar impuesto", + "amount": "Cantidad", + "action": "Acción", + "notes": "Notas", + "view": "Ver", + "basic_info": "Información básica", + "send_invoice": "Enviar factura recurrente", + "auto_send": "Autoenviar", + "resend_invoice": "Reenviar factura recurrente", + "invoice_template": "Plantilla de la factura recurrente", + "conversion_message": "Factura recurrente clonada con éxito", + "template": "Plantilla", + "mark_as_sent": "Marcar como enviada", + "confirm_send_invoice": "Esta factura recurrente se enviará por correo electrónico al cliente", + "invoice_mark_as_sent": "Esta factura recurrente se marcará como enviada", + "confirm_send": "Esta factura recurrente se enviará por correo electrónico al cliente", + "starts_at": "Fecha de inicio", + "due_date": "Fecha límite de la factura", + "record_payment": "Registrar pago", + "add_new_invoice": "Añadir nueva factura recurrente", + "update_expense": "Actualizar gasto", + "edit_invoice": "Editar factura recurrente", + "new_invoice": "Nueva factura recurrente", + "send_automatically": "Enviar automáticamente", + "send_automatically_desc": "Habilite esto, si desea enviar la factura automáticamente al cliente cuando se haya creado.", + "save_invoice": "Guardar factura recurrente", + "update_invoice": "Actualizar factura recurrente", + "add_new_tax": "Agregar nuevo impuesto", + "no_invoices": "¡Aún no hay facturas recurrentes!", + "mark_as_rejected": "Marcar como rechazado", + "mark_as_accepted": "Marcar como aceptado", + "list_of_invoices": "Esta sección contiene la lista de facturas recurrentes.", + "select_invoice": "Seleccionar factura", + "no_matching_invoices": "¡No hay facturas recurrentes que coincidan!", + "mark_as_sent_successfully": "Factura recurrente marcada como enviada correctamente", + "invoice_sent_successfully": "Factura recurrente enviada correctamente", + "cloned_successfully": "Factura recurrente clonada con éxito", + "clone_invoice": "Clonar factura recurrente", + "confirm_clone": "Esta factura recurrente será clonada en una nueva factura recurrente", + "item": { + "title": "Título del artículo", + "description": "Descripción", + "quantity": "Cantidad", + "price": "Precio", + "discount": "Descuento", + "total": "Total", + "total_discount": "Descuento total", + "sub_total": "Subtotal", + "tax": "Impuesto", + "amount": "Cantidad", + "select_an_item": "Escribe o haz clic para seleccionar un elemento", + "type_item_description": "Descripción del tipo de elemento(opcional)" + }, + "frequency": { + "title": "Frecuencia", + "select_frequency": "Seleccionar frecuencia", + "minute": "Minuto", + "hour": "Hora", + "day_month": "Día del mes", + "month": "Mes", + "day_week": "Día de la semana" + }, + "confirm_delete": "No podrá recuperar esta factura | No podrás recuperar estas facturas", + "created_message": "Factura recurrente creada con éxito", + "updated_message": "Factura recurrente actualizada correctamente", + "deleted_message": "Factura recurrente eliminada correctamente | Facturas recurrentes eliminadas correctamente", + "marked_as_sent_message": "Factura recurrente marcada como enviada con éxito", + "user_email_does_not_exist": "El email del usuario no existe", + "something_went_wrong": "algo ha ido mal", + "invalid_due_amount_message": "La cantidad total de la factura recurrente no puede ser menor a la cantidad total pagada. Por favor, actualiza la factura o elimina los pagos asociados para continuar." }, "payments": { "title": "Pagos", @@ -412,8 +578,8 @@ "update_payment": "Actualizar pago", "payment": "Pago | Pagos", "no_payments": "¡Aún no hay pagos!", - "not_selected": "Not selected", - "no_invoice": "No invoice", + "not_selected": "No seleccionado", + "no_invoice": "Sin facturas", "no_matching_payments": "¡No hay pagos equivalentes!", "list_of_payments": "Esta sección contendrá la lista de pagos.", "select_payment_mode": "Seleccionar modo de pago", @@ -433,6 +599,7 @@ "select_a_customer": "Selecciona un cliente", "expense_title": "Título", "customer": "Cliente", + "currency": "Divisa", "contact": "Contacto", "category": "Categoría", "from_date": "Desde la fecha", @@ -442,7 +609,7 @@ "receipt": "Recibo", "amount": "Cantidad", "action": "Acción", - "not_selected": "Not selected", + "not_selected": "Sin seleccionar", "note": "Nota", "category_id": "Categoria ID", "date": "Fecha de gastos", @@ -486,6 +653,51 @@ "enter_password": "Escriba la contraseña", "retype_password": "Reescriba la contraseña" }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, "users": { "title": "Usuarios", "users_list": "Lista de usuarios", @@ -510,7 +722,9 @@ "confirm_delete": "No podrá recuperar este Usuario | No podrá recuperar estos Usuarios", "created_message": "Usuario creado satisfactoriamente", "updated_message": "Usuario actualizado satisfactoriamente", - "deleted_message": "Usuario eliminado exitosamente | Usuario eliminado correctamente" + "deleted_message": "Usuario eliminado exitosamente | Usuario eliminado correctamente", + "select_company_role": "Seleccionar rol para {company}", + "companies": "Empresas" }, "reports": { "title": "Informe", @@ -586,8 +800,13 @@ "backup": "Copias de seguridad", "file_disk": "Disco de archivo", "custom_fields": "Campos Personalizados", - "payment_modes": "Modos de pago", - "notes": "Notas" + "payment_modes": "Formas de pago", + "notes": "Notas", + "exchange_rate": "Tasa de cambio", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." }, "title": "Configuraciones", "setting": "Configuraciones | Configuraciones", @@ -649,7 +868,13 @@ "address": "Dirección", "zip": "Código Postal", "save": "Guardar", - "updated_message": "Información de la empresa actualizada con éxito" + "delete": "Eliminar", + "updated_message": "Información de la empresa actualizada con éxito", + "delete_company": "Eliminar empresa", + "delete_company_description": "Una vez que elimines tu empresa, perderás todos los datos y archivos asociados a ella permanentemente.", + "are_you_absolutely_sure": "¿Estás realmente seguro?", + "delete_company_modal_desc": "Est acción no se puede deshacer. Se eliminará de manera permanente {company} y todos sus datos asociados.", + "delete_company_modal_label": "Por favor escribe {company} para confirmar" }, "custom_fields": { "title": "Campos Personalizados", @@ -660,6 +885,7 @@ "label": "Etiqueta", "type": "Tipo", "name": "Nombre", + "slug": "Slug", "required": "Necesaria", "placeholder": "Marcador de posición", "help_text": "texto de ayuda", @@ -685,85 +911,104 @@ "select_relative_date": "Seleccionar fecha relativa", "ticked_by_default": "Marcada por defecto", "updated_message": "Campo personalizado actualizado correctamente", - "added_message": "Campo personalizado agregado correctamente" + "added_message": "Campo personalizado agregado correctamente", + "press_enter_to_add": "Presiona Enter para añadir una nueva opción", + "model_in_use": "No se puede actualizar el modelo para los campos que ya están en uso.", + "type_in_use": "No se puede actualizar el tipo de los campos que ya están en uso." }, "customization": { "customization": "Personalización", - "save": "Guardar", - "addresses": { - "title": "Direcciones", - "section_description": "Puede configurar la Dirección de facturación del cliente y el Formato de dirección de envío del cliente (solo se muestra en PDF).", - "customer_billing_address": "Dirección de facturación del cliente", - "customer_shipping_address": "Dirección de envío del cliente", - "company_address": "Dirección de la compañia", - "insert_fields": "Insertar campos", - "contact": "Contacto", - "address": "Dirección", - "display_name": "Nombre para mostrar", - "primary_contact_name": "Nombre de contacto principal", - "email": "Correo electrónico", - "website": "Sitio web", - "name": "Nombre", - "country": "País", - "state": "Estado", - "city": "Ciudad", - "company_name": "Nombre de la compañia", - "address_street_1": "Dirección de la calle 1", - "address_street_2": "Dirección de la calle 2", - "phone": "Telefono", - "zip_code": "Codigo postal", - "address_setting_updated": "Configuración de dirección actualizada correctamente" - }, "updated_message": "Información de la empresa actualizada con éxito", + "save": "Guardar", + "insert_fields": "Insertar campos", + "learn_custom_format": "Aprende a utilizar el formato personalizado", + "add_new_component": "Añadir nuevo componente", + "component": "Componente", + "Parameter": "Parámetro", + "series": "Series", + "series_description": "Para establecer un prefijo/sufijo fijo como por ejemplo 'INV' para las facturas de tu empresa. El número máximo de caracteres permitidos es 4.", + "series_param_label": "Valor de series", + "delimiter": "Delimitador", + "delimiter_description": "Carácter único para especificar el límite entre 2 componentes separados. Por defecto está configurado en -", + "delimiter_param_label": "Valor delimitador", + "date_format": "Formato de fecha", + "date_format_description": "Un campo de fecha y hora local que acepta un parámetro de formato. El formato predeterminado: 'Y' representa el año actual.", + "date_format_param_label": "Formato", + "sequence": "Secuencia", + "sequence_description": "Secuencia consecutiva de números en su empresa. Puede especificar la longitud en el parámetro dado.", + "sequence_param_label": "Longitud de la secuencia", + "customer_series": "Series de clientes", + "customer_series_description": "Establecer un prefijo/postfijo diferente para cada cliente.", + "customer_sequence": "Secuencia de cliente", + "customer_sequence_description": "Secuencia consecutiva de números para cada uno de sus clientes.", + "customer_sequence_param_label": "Longitud de la secuencia", + "random_sequence": "Secuencia aleatoria", + "random_sequence_description": "Cadena alfanumérica aleatoria. Puedes especificar la longitud en el parámetro dado.", + "random_sequence_param_label": "Longitud de la secuencia", "invoices": { "title": "Facturas", - "notes": "Notas", - "invoice_prefix": "Prefijo de las facturas", + "invoice_number_format": "Formato de número de factura", + "invoice_number_format_description": "Personalice cómo se genera automáticamente su número de factura cuando crea una nueva factura.", + "preview_invoice_number": "Previsualizar número de factura", + "due_date": "Fecha de vencimiento", + "due_date_description": "Especifique cómo se establece automáticamente la fecha de vencimiento cuando crea una factura.", + "due_date_days": "Factura vence después de días", + "set_due_date_automatically": "Establecer fecha de vencimiento automáticamente", + "set_due_date_automatically_description": "Habilite esto si desea establecer la fecha de vencimiento automáticamente cuando crea una nueva factura.", + "default_formats": "Formatos por defecto", + "default_formats_description": "Los formatos dados a continuación se utilizan para completar los campos automáticamente en la creación de la factura.", "default_invoice_email_body": "Cuerpo predeterminado del correo electrónico de la factura", - "invoice_settings": "Ajustes de facturas", - "autogenerate_invoice_number": "Autogenerar número de factura", - "autogenerate_invoice_number_desc": "Desactive esto, si no desea generar automáticamente números de factura cada vez que cree una nueva factura.", - "enter_invoice_prefix": "Introduzca el prefijo de factura", - "terms_and_conditions": "Términos y Condiciones", "company_address_format": "Formato de dirección de la empresa", "shipping_address_format": "Formato de la dirección de envío", "billing_address_format": "Formato de dirección de facturación", - "invoice_settings_updated": "Configuración de factura actualizada correctamente" + "invoice_email_attachment": "Enviar cotización como adjunto", + "invoice_email_attachment_setting_description": "Activa esto si quieres enviar facturas como archivo adjunto de correo electrónico. Tenga en cuenta que el botón 'Ver factura' en los correos electrónicos ya no se mostrará cuando esté habilitado.", + "invoice_settings_updated": "La configuración de facturas se ha actualizado correctamente", + "retrospective_edits": "Ediciones retrospectivas", + "allow": "Permitir", + "disable_on_invoice_partial_paid": "Desactivar después de que se registre un pago parcial", + "disable_on_invoice_paid": "Desactivar después de que se registre el pago completo", + "disable_on_invoice_sent": "Desactivar después de enviar la factura", + "retrospective_edits_description": " Según las leyes de su país o sus preferencias, puede restringir que los usuarios editen las facturas finalizadas." }, "estimates": { "title": "Estimaciones", - "estimate_prefix": "Prefijo de los presupuestos", + "estimate_number_format": "Formato de número de estimación", + "estimate_number_format_description": "Personalice cómo se genera automáticamente su número de presupuesto cuando crea un nuevo presupuesto.", + "preview_estimate_number": "Vista previa del número de presupuesto", + "expiry_date": "Fecha de vencimiento", + "expiry_date_description": "Especifique cómo se establece automáticamente la fecha de caducidad cuando crea un presupuesto.", + "expiry_date_days": "Estimación Caduca después de días", + "set_expiry_date_automatically": "Establecer fecha de expiración automáticamente", + "set_expiry_date_automatically_description": "Habilite esto si desea establecer la fecha de vencimiento automáticamente cuando crea un nuevo presupuesto.", + "default_formats": "Formatos por defecto", + "default_formats_description": "Los formatos dados a continuación se utilizan para completar los campos automáticamente en la creación del presupuesto.", "default_estimate_email_body": "Cuerpo predeterminado estimado del correo electrónico", - "estimate_settings": "Ajustes de presupuestos", - "autogenerate_estimate_number": "Autogenerar número de presupuesto", - "estimate_setting_description": "Desactive esto, si no desea generar automáticamente números de presupuesto cada vez que cree un nuevo presupuesto.", - "enter_estimate_prefix": "Introduzca el prefijo de presupuesto", - "estimate_setting_updated": "Configuración de presupuestos actualizada correctamente", "company_address_format": "Formato de dirección de la empresa", + "shipping_address_format": "Formato de dirección de envío", "billing_address_format": "Formato de la dirección de facturación", - "shipping_address_format": "Formato de dirección de envío" + "estimate_email_attachment": "Enviar cotización como adjunto", + "estimate_email_attachment_setting_description": "Activa esto si quieres enviar facturas como archivo adjunto de correo electrónico. Tenga en cuenta que el botón 'Ver factura' en los correos electrónicos ya no se mostrará cuando esté habilitado.", + "estimate_settings_updated": "Ajustes de presupuesto actualizados con éxito", + "convert_estimate_options": "Acción de conversión de presupuesto", + "convert_estimate_description": "Especifique lo que sucede con el presupuesto una vez que se convierte en una factura.", + "no_action": "No hacer nada", + "delete_estimate": "Eliminar presupuesto", + "mark_estimate_as_accepted": "Marcar presupuesto como aceptado" }, "payments": { "title": "Pagos", - "description": "Modos de transacción de pagos", - "payment_prefix": "Prefijo de los pagos", + "payment_number_format": "Formato del número de pago", + "payment_number_format_description": "Personalice cómo se genera automáticamente su número de pago cuando crea un nuevo pago.", + "preview_payment_number": "Previsualizar número de pago", + "default_formats": "Formatos predeterminados", + "default_formats_description": "Los formatos dados a continuación se utilizan para completar los campos automáticamente en la creación del pago.", "default_payment_email_body": "Cuerpo predeterminado del correo electrónico del pago", - "payment_settings": "Ajustes de pagos", - "autogenerate_payment_number": "Autogenerar número de pago", - "payment_setting_description": "Desactive esto, si no desea generar automáticamente números de pago cada vez que cree un nuevo pago.", - "enter_payment_prefix": "Introduzca el prefijo de pago", - "payment_setting_updated": "Configuración de pagos actualizada correctamente", - "payment_modes": "Modos de pago", - "add_payment_mode": "Agregar modo de pago", - "edit_payment_mode": "Editar modo de pago", - "mode_name": "Nombre del modo", - "payment_mode_added": "Modo de pago agregado", - "payment_mode_updated": "Modo de pago actualizado", - "payment_mode_confirm_delete": "No podrá recuperar este modo de pago", - "already_in_use": "El modo de pago ya está en uso", - "deleted_message": "Modo de pago eliminado correctamente", "company_address_format": "Formato de dirección de la empresa", - "from_customer_address_format": "Desde el formato de dirección del cliente" + "from_customer_address_format": "Desde el formato de dirección del cliente", + "payment_email_attachment": "Enviar pagos como adjunto", + "payment_email_attachment_setting_description": "Activa esto si quieres enviar los pagos como archivo adjunto de correo electrónico. Tenga en cuenta que el botón 'Ver pago' en los correos electrónicos ya no se mostrará cuando esté habilitado.", + "payment_settings_updated": "Los métodos de pago se han actualizado correctamente" }, "items": { "title": "Artículos", @@ -822,6 +1067,57 @@ "email_save_message": "Correo electrónico guardado con éxito", "please_enter_email": "Por favor, introduzca su correo electrónico" }, + "roles": { + "title": "Roles", + "description": "Configura los roles y permisos de esta empresa", + "save": "Guardar", + "add_new_role": "Añadir nuevo rol", + "role_name": "Nombre del rol", + "added_on": "Añadido el", + "add_role": "Añadir rol", + "edit_role": "Editar rol", + "name": "Nombre", + "permission": "Permiso | Permisos", + "select_all": "Seleccionar todo", + "none": "Ninguno", + "confirm_delete": "No podrá recuperar este Rol", + "created_message": "Rol creado correctamente", + "updated_message": "Rol actualizado correctamente", + "deleted_message": "Rol eliminado correctamente", + "already_in_use": "El rol ya está en uso" + }, + "exchange_rate": { + "exchange_rate": "Tasa de cambio", + "title": "Solucionar problemas de cambio de moneda", + "description": "Por favor, selecciona un tipo de cambio para todas las monedas mencionadas a continuación para ayudar a Crater a calcular correctamente las cantidades en {currency}.", + "drivers": "Controladores", + "new_driver": "Añadir nuevo proveedor", + "edit_driver": "Editar proveedor", + "select_driver": "Seleccione un controlador", + "update": "selecciona un tipo de cambio ", + "providers_description": "Configure sus proveedores de tipos de cambio aquí para obtener automáticamente el tipo de cambio más reciente en las transacciones.", + "key": "Clave API", + "name": "Nombre", + "driver": "Controlador", + "is_default": "Usar por defecto", + "currency": "Divisas", + "exchange_rate_confirm_delete": "No podrá recuperar este controlador", + "created_message": "Proveedor creado correctamente", + "updated_message": "Proveedor actualizado correctamente", + "deleted_message": "Proveedor eliminado correctamente", + "error": " No puede eliminar el controlador activo", + "default_currency_error": "Esta moneda ya se usa en uno de los proveedores activos", + "exchange_help_text": "Ingrese el tipo de cambio para convertir de {currency} a {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Conversor de moneda", + "server": "Servidor", + "url": "URL", + "active": "Activo", + "currency_help_text": "Este proveedor solo se utilizará en las monedas seleccionadas anteriormente", + "currency_in_used": "Las siguientes monedas ya están activas en otro proveedor. Elimine estas monedas de la selección para volver a activar este proveedor." + }, "tax_types": { "title": "Tipos de impuestos", "add_tax": "Agregar impuesto", @@ -841,6 +1137,18 @@ "confirm_delete": "No podrá recuperar este tipo de impuesto", "already_in_use": "El impuesto ya está en uso." }, + "payment_modes": { + "title": "Formas de pago", + "description": "Modos de transacción para pagos", + "add_payment_mode": "Agregar modo de pago", + "edit_payment_mode": "Editar modo de pago", + "mode_name": "Nombre del modo", + "payment_mode_added": "Forma de pago añadida", + "payment_mode_updated": "Forma de pago actualizada", + "payment_mode_confirm_delete": "No podrás recuperar este Modo de Pago", + "already_in_use": "El método de paga ya está en uso", + "deleted_message": "Método de pago eliminado correctamente" + }, "expense_category": { "title": "Categorías de gastos", "action": "Acción", @@ -865,6 +1173,8 @@ "discount_setting": "Ajuste de descuento", "discount_per_item": "Descuento por artículo", "discount_setting_description": "Habilítelo si desea agregar Descuento a artículos de factura individuales. Por defecto, los descuentos se agregan directamente a la factura.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", "save": "Guardar", "preference": "Preferencia | Preferencias", "general_settings": "Preferencias predeterminadas para el sistema.", @@ -872,11 +1182,18 @@ "select_language": "seleccione el idioma", "select_time_zone": "selecciona la zona horaria", "select_date_format": "Seleccionar formato de fecha", - "select_financial_year": "seleccione año financiero" + "select_financial_year": "seleccione año financiero", + "recurring_invoice_status": "Estado de la factura recurrente", + "create_status": "Crear estado", + "active": "Activo", + "on_hold": "En espera", + "update_status": "Actualizar estado", + "completed": "Completado", + "company_currency_unchangeable": "No se puede cambiar la divisa de la empresa" }, "update_app": { "title": "Actualizar aplicación", - "description": "actualizar la descripción de la aplicación", + "description": "Puedes actualizar Crater fácilmente comprobando si existe una nueva actualización haciendo clic en el botón de abajo", "check_update": "Buscar actualizaciones", "avail_update": "Nueva actualización disponible", "next_version": "Próxima versión", @@ -890,10 +1207,12 @@ "download_zip_file": "Descargar archivo ZIP", "unzipping_package": "Descomprimir paquete", "copying_files": "Copiando documentos", + "deleting_files": "Eliminando archivos no usados", "running_migrations": "Ejecutar migraciones", "finishing_update": "Actualización final", "update_failed": "Actualización fallida", - "update_failed_text": "¡Lo siento! Su actualización falló el: {step} paso" + "update_failed_text": "¡Lo siento! Su actualización falló el: {step} paso", + "update_warning": "Todos los archivos y temas predeterminados se sobreescribirán cuando actualice la aplicación a través de esta utilidad. Por favor, cree una copia de seguridad de sus temas y base de datos antes de actualizar." }, "backup": { "title": "Copia de seguridad | Copias de seguridad", @@ -957,8 +1276,9 @@ "dropbox_app": "Aplicación Dropbox", "dropbox_root": "Raíz Dropbox", "default_driver": "Controlador por defecto", - "is_default": "ES PREDETERMINADO", + "is_default": "Usar por defecto", "set_default_disk": "Establecer disco predeterminado", + "set_default_disk_confirm": "Este disco se establecerá por defecto y todos los nuevos PDFs se guardarán en este disco", "success_set_default_disk": "Disco establecido correctamente como predeterminado", "save_pdf_to_disk": "Guardar PDFs a disco", "disk_setting_description": " Habilite esto, si desea guardar automáticamente una copia en formato pdf de cada factura, cálculo y recibo de pago en su disco predeterminado. Al activar esta opción, se reducirá el tiempo de carga al visualizar los archivos PDFs.", @@ -974,6 +1294,18 @@ "disk_variables_save_successfully": "Disco configurado correctamente", "disk_variables_save_error": "La configuración del disco ha fallado.", "invalid_disk_credentials": "Credencial no válida del disco seleccionado" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { @@ -991,6 +1323,7 @@ "logo_preview": "Vista previa del logotipo", "preferences": "Preferencias", "preferences_desc": "Preferencias predeterminadas para el sistema.", + "currency_set_alert": "La moneda de la empresa no se puede cambiar más tarde.", "country": "País", "state": "Estado", "city": "Ciudad", @@ -1028,6 +1361,15 @@ "permission_confirm_desc": "Error de verificación de permisos de carpeta", "permission_desc": "A continuación se muestra la lista de permisos de carpeta necesarios para que la aplicación funcione. Si la verificación de permisos falla, asegúrese de actualizar los permisos de su carpeta." }, + "verify_domain": { + "title": "Verificación de dominio", + "desc": "Crater utiliza la autenticación basada en Sesión que requiere verificación de dominio por motivos de seguridad. Por favor, introduzca el dominio en el que accederá a su aplicación web.", + "app_domain": "Dominio de aplicación", + "verify_now": "Verificar ahora", + "success": "Dominio verificado correctamente.", + "failed": "La verificación del dominio falló. Ingrese un nombre de dominio válido.", + "verify_and_continue": "Verificar y continuar" + }, "mail": { "host": "Host de correo", "port": "Puerto de correo", @@ -1078,6 +1420,7 @@ "not_yet": "¿Aún no? Envíalo de nuevo", "password_min_length": "La contraseña debe contener {count} caracteres", "name_min_length": "El nombre debe tener al menos {count} letras.", + "prefix_min_length": "El prefijo debe tener al menos {count} letras.", "enter_valid_tax_rate": "Ingrese una tasa impositiva válida", "numbers_only": "Solo números.", "characters_only": "Solo caracteres.", @@ -1086,12 +1429,13 @@ "qty_must_greater_than_zero": "La cantidad debe ser mayor que cero.", "price_greater_than_zero": "El precio debe ser mayor que cero.", "payment_greater_than_zero": "El pago debe ser mayor que cero.", - "payment_greater_than_due_amount": "El pago ingresado es mayor a la cantidad debida de esta factura.", + "payment_greater_than_due_amount": "El pago introducido es mayor que el importe pendiente de esta factura.", "quantity_maxlength": "La cantidad no debe ser mayor de 20 dígitos.", "price_maxlength": "El precio no debe ser mayor de 20 dígitos.", "price_minvalue": "El precio debe ser mayor que 0 dígitos", "amount_maxlength": "La cantidad no debe ser mayor de 20 dígitos.", "amount_minvalue": "La cantidad debe ser mayor que 0 dígitos", + "discount_maxlength": "El descuento no debe ser mayor que el descuento máximo", "description_maxlength": "La descripción no debe tener más de 255 caracteres.", "subject_maxlength": "El asunto no debe tener más de 100 caracteres.", "message_maxlength": "El mensaje no debe tener más de 255 caracteres.", @@ -1100,7 +1444,38 @@ "address_maxlength": "La dirección no debe tener más de 255 caracteres.", "ref_number_maxlength": "El número de referencia no debe tener más de 255 caracteres.", "prefix_maxlength": "El prefijo no debe tener más de 5 caracteres.", - "something_went_wrong": "Algo fue mal" + "something_went_wrong": "Algo fue mal", + "number_length_minvalue": "La cantidad debe ser mayor que 0", + "at_least_one_ability": "Por favor, selecciona al menos un permiso.", + "valid_driver_key": "Por favor, introduza una clave {driver} válida.", + "valid_exchange_rate": "Por favor, introduce una tasa de cambio válida.", + "company_name_not_same": "El nombre de la empresa debe coincidir con el nombre indicado." + }, + "errors": { + "starter_plan": "¡Esta función está disponible en el plan Starter y en adelante!", + "invalid_provider_key": "Por favor, introduzca un proveedor de claves API válido.", + "estimate_number_used": "El número de estimación ya se ha tomado.", + "invoice_number_used": "El número de factura ya está en uso.", + "payment_attached": "Esta factura ya tiene un pago adjunto. Asegúrese de eliminar primero los pagos adjuntos para continuar con la eliminación.", + "payment_number_used": "El número de pago ya está en uso.", + "name_already_taken": "El nombre ya está en uso.", + "receipt_does_not_exist": "No existe el recibo.", + "customer_cannot_be_changed_after_payment_is_added": "El cliente no puede ser modificado después de agregar el pago", + "invalid_credentials": "Credenciales inválidas.", + "not_allowed": "No permitido", + "login_invalid_credentials": "Estas credenciales no coinciden con nuestros registros.", + "enter_valid_cron_format": "Por favor, introduzca un formato cron válido", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, "pdf_estimate_label": "Presupuestar", "pdf_estimate_number": "Número de Presupuesto", @@ -1118,18 +1493,18 @@ "pdf_amount_label": "Cantidad", "pdf_subtotal": "Subtotal", "pdf_total": "Total", - "pdf_payment_label": "Payment", + "pdf_payment_label": "Pagos", "pdf_payment_receipt_label": "RECIBO DE PAGO", "pdf_payment_date": "Fecha de pago", "pdf_payment_number": "Numero de pago", "pdf_payment_mode": "Modo de pago", - "pdf_payment_amount_received_label": "Monto Recibido", + "pdf_payment_amount_received_label": "Importe recibido", "pdf_expense_report_label": "INFORME DE GASTOS", "pdf_total_expenses_label": "GASTO TOTAL", "pdf_profit_loss_label": "INFORME PERDIDAS & GANANCIAS", - "pdf_sales_customers_label": "Sales Customer Report", - "pdf_sales_items_label": "Sales Item Report", - "pdf_tax_summery_label": "Tax Summary Report", + "pdf_sales_customers_label": "Informe de ventas por cliente", + "pdf_sales_items_label": "Informe de ventas por ítem", + "pdf_tax_summery_label": "Informe de ventas impuestos", "pdf_income_label": "INGRESO", "pdf_net_profit_label": "GANANCIA NETA", "pdf_customer_sales_report": "Informe de ventas: Por cliente", @@ -1142,5 +1517,5 @@ "pdf_bill_to": "Cobrar a,", "pdf_ship_to": "Enviar a,", "pdf_received_from": "Recibido desde:", - "pdf_tax_label": "Imposto" + "pdf_tax_label": "Impuesto" } diff --git a/resources/scripts/locales/fa.json b/resources/scripts/locales/fa.json new file mode 100644 index 000000000..014796076 --- /dev/null +++ b/resources/scripts/locales/fa.json @@ -0,0 +1,1521 @@ +{ + "navigation": { + "dashboard": "پیشخوان", + "customers": "مشتریان", + "items": "آیتم ها", + "invoices": "صورت حساب‌ها", + "recurring-invoices": "Recurring Invoices", + "expenses": "هزینه ها", + "estimates": "برآوردها", + "payments": "پرداخت‌ها", + "reports": "گزارشات", + "settings": "تنظیمات", + "logout": "خروج از حساب", + "users": "کاربران", + "modules": "Modules" + }, + "general": { + "add_company": "افزودن شرکت", + "view_pdf": "مشاهده نسخه PDF", + "copy_pdf_url": "کپی لینک PDF", + "download_pdf": "دانلود PDF", + "save": "ذخیره", + "create": "ایجاد", + "cancel": "لغو", + "update": "به‌روز رسانی", + "deselect": "لغو انتخاب", + "download": "دانلود", + "from_date": "از تاریخ", + "to_date": "تا تاریخ", + "from": "از", + "to": "به", + "ok": "تایید", + "yes": "بله", + "no": "خیر", + "sort_by": "مرتب سازی بر اساس", + "ascending": "صعودی", + "descending": "نزولی", + "subject": "موضوع", + "body": "متن ایمیل", + "message": "پیام", + "send": "ارسال", + "preview": "پیش‌نمایش", + "go_back": "برگشت", + "back_to_login": "بازگشت به صفحه ورود؟", + "home": "صفحه اصلی", + "filter": "فیلتر", + "delete": "حذف", + "edit": "ويرايش", + "view": "مشاهده", + "add_new_item": "افزودن مورد جدید", + "clear_all": "پاک کردن همه", + "showing": "نمایش داده شده", + "of": "از", + "actions": "اقدامات", + "subtotal": "ریز کل", + "discount": "تخفیف", + "fixed": "ثابت", + "percentage": "درصد", + "tax": "مالیات", + "total_amount": "مبلغ کل", + "bill_to": "پرداخت کننده", + "ship_to": "ارسال به", + "due": "سر رسید", + "draft": "پیش‌نویس", + "sent": "ارسال شده", + "all": "همه", + "select_all": "انتخاب همه", + "select_template": "انتخاب قالب", + "choose_file": "برای انتخاب فایل کلیک کنید", + "choose_template": "انتخاب قالب", + "choose": "انتخاب", + "remove": "حذف", + "select_a_status": "انتخاب وضعیت", + "select_a_tax": "انتخاب مالیات", + "search": "جستجو", + "are_you_sure": "آیا مطمئن هستید?", + "list_is_empty": "فهرست خالی است.", + "no_tax_found": "مالیاتی یافت نشد!", + "four_zero_four": "۴۰۴", + "you_got_lost": "اوپس! مثل اینکه گم شدید!", + "go_home": "به خانه برو", + "test_mail_conf": "تست تنظیمات ایمیل", + "send_mail_successfully": "ایمیل با موفقیت ارسال شد", + "setting_updated": "تنظیمات با موفقیت به روز رسانی شد", + "select_state": "انتخاب استان", + "select_country": "انتخاب کشور", + "select_city": "انتخاب شهر", + "street_1": "خیابان ۱", + "street_2": "خیابان 2", + "action_failed": "عملیات ناموفق بود", + "retry": "تلاش دوباره", + "choose_note": "انتخاب یادداشت", + "no_note_found": "یادداشتی پیدا نشد", + "insert_note": "درج یادداشت", + "copied_pdf_url_clipboard": "لینک PDF در حافظه کپی شد!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "مستندات", + "do_you_wish_to_continue": "مایلید ادامه دهید؟", + "note": "یادداشت", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" + }, + "dashboard": { + "select_year": "انتخاب سال", + "cards": { + "due_amount": "مبلغ قابل پرداخت", + "customers": "مشتریان", + "invoices": "صورت حساب‌ها", + "estimates": "برآوردها", + "payments": "Payments" + }, + "chart_info": { + "total_sales": "فروش ها", + "total_receipts": "رسیدها", + "total_expense": "هزینه ها", + "net_income": "درآمد خالص", + "year": "انتخاب سال" + }, + "monthly_chart": { + "title": "فروش و هزینه‌ها" + }, + "recent_invoices_card": { + "title": "فاکتورهای قابل پرداخت", + "due_on": "قابل پرداخت در", + "customer": "مشتری", + "amount_due": "مبلغ قابل پرداخت", + "actions": "اقدامات", + "view_all": "نمایش همه" + }, + "recent_estimate_card": { + "title": "آخرین تخمین‌ها", + "date": "تاریخ", + "customer": "مشتری", + "amount_due": "مبلغ قابل پرداخت", + "actions": "اقدامات", + "view_all": "مشاهده همه" + } + }, + "tax_types": { + "name": "نام", + "description": "توضیح", + "percent": "درصد", + "compound_tax": "مالیات ترکیبی" + }, + "global_search": { + "search": "جستجو...", + "customers": "مشتریان", + "users": "کاربران", + "no_results_found": "نتیجه‌ای یافت نشد" + }, + "company_switcher": { + "label": "SWITCH COMPANY", + "no_results_found": "نتیجه‌ای یافت نشد", + "add_new_company": "افزودن شرکت جدید", + "new_company": "شرکت جدید", + "created_message": "شرکت ایجاد شد." + }, + "dateRange": { + "today": "امروز", + "this_week": "هفته جاری", + "this_month": "ماه جاری", + "this_quarter": "سه ماهه جاری", + "this_year": "امسال", + "previous_week": "هفته قبل", + "previous_month": "ماه قبل", + "previous_quarter": "سه ماهه قبل", + "previous_year": "سال قبل", + "custom": "سفارشی" + }, + "customers": { + "title": "مشتریان", + "prefix": "پيشوند", + "add_customer": "افزودن مشتری", + "contacts_list": "لیست مشتریان", + "name": "نام", + "mail": "ایمیل", + "statement": "شرح", + "display_name": "نمایش نام", + "primary_contact_name": "اطلاعات تماس اصلی", + "contact_name": "نام مخاطب", + "amount_due": "مبلغ قابل پرداخت", + "email": "ایمیل", + "address": "آدرس", + "phone": "تلفن", + "website": "وب سایت", + "overview": "نمای کلی", + "invoice_prefix": "پیشوند صورتحساب", + "estimate_prefix": "Estimate Prefix", + "payment_prefix": "Payment Prefix", + "enable_portal": "فعال کردن پرتال", + "country": "كشور", + "state": "استان/ایالت", + "city": "شهر", + "zip_code": "کدپستی", + "added_on": "افزوده شده در", + "action": "عملیات", + "password": "رمز عبور", + "confirm_password": "Confirm Password", + "street_number": "خیابان و پلاک", + "primary_currency": "واحد پول اصلی", + "description": "توضیح", + "add_new_customer": "افزودن مشتری جدید", + "save_customer": "ذخیره‌ی مشتری", + "update_customer": "بروز رسانی مشتری", + "customer": "مشتری | مشتریان", + "new_customer": "مشتری جدید", + "edit_customer": "ویرایش مشتری", + "basic_info": "اطلاعات پایه", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", + "billing_address": "آدرس صورت حساب", + "shipping_address": "نشانی ارسال", + "copy_billing_address": "کپی از صورت حساب", + "no_customers": "هنوز مشتریی موجود نیست!", + "no_customers_found": "هیچ مشتری یافت نشد!", + "no_contact": "بدون مخاطب", + "no_contact_name": "بدون نام مشتری", + "list_of_customers": "این قسمت شامل لیست مشتریان است.", + "primary_display_name": "نام قابل نمایش", + "select_currency": "انتخاب واحد پول", + "select_a_customer": "انتخاب مشتری", + "type_or_click": "برای انتخاب تایپ و یا انتخاب کنید", + "new_transaction": "تراکنش جدید", + "no_matching_customers": "هیچ مشتری منطبقی وجود ندارد!", + "phone_number": "شماره تلفن", + "create_date": "تاریخ ایجاد", + "confirm_delete": "شما قادر به بازیابی این مشتری و کلیه فاکتورها ، برآورد ها و پرداخت های مربوطه نخواهید بود. | شما قادر به بازیابی این مشتریان و کلیه فاکتورها ، برآورد ها و پرداخت های مربوطه نخواهید بود.", + "created_message": "مشتری با موفقیت ایجاد شد", + "updated_message": "مشتری با موفقیت بروزرسانی شد", + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "مشتری با موفقیت حذف شد | مشتریان با موفقیت حذف شدند", + "edit_currency_not_allowed": "Cannot change currency once transactions created." + }, + "items": { + "title": "آیتم ها", + "items_list": "لیست اقلام", + "name": "نام", + "unit": "واحد", + "description": "توضیح", + "added_on": "افزوده شده در", + "price": "قیمت", + "date_of_creation": "تاریخ ایجاد", + "not_selected": "آیتمی انتخاب نشده است", + "action": "عملیات", + "add_item": "افزودن آیتم", + "save_item": "ذخیره آیتم", + "update_item": "بروزرسانی آیتم", + "item": "آیتم | آیتم ها", + "add_new_item": "افزودن آیتم جدید", + "new_item": "آیتم جدید", + "edit_item": "بروزرسانی آیتم", + "no_items": "هیچ آیتمی انتخاب نشده است!", + "list_of_items": "این قسمت شامل لیست آیتم ها می باشد.", + "select_a_unit": "واحد را انتخاب کنید", + "taxes": "مالیات", + "item_attached_message": "این آیتم در حال استفاده می باشد،امکان پاک کردن این آیتم نیست", + "confirm_delete": "شما نمی توانید این آیتم را بازیابی کنید | شما نمی توانید این آیتم ها را بازیابی کنید", + "created_message": "آیتم با موفقیت ایجاد شد", + "updated_message": "آیتم با موفقیت بروزرسانی شد", + "deleted_message": "آیتم با موفقیت حذف شد | آیتم ها با موفقیت حذف شد" + }, + "estimates": { + "title": "برآوردها", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", + "estimate": "برآورد | برآوردها", + "estimates_list": "لیست برآوردها", + "days": "{days} روز", + "months": "{months} ماه", + "years": "{years} سال", + "all": "همه موارد", + "paid": "پرداخت شده", + "unpaid": "پرداخت نشده", + "customer": "مشتری", + "ref_no": "شماره مرجع.", + "number": "شماره", + "amount_due": "مبلغ پرداختی", + "partially_paid": "پرداخت ناقص", + "total": "جمع کل", + "discount": "تخفیف", + "sub_total": "مجموع آیتم های فاکتور", + "estimate_number": "شماره برآورد", + "ref_number": "شماره مرجع", + "contact": "مخاطب", + "add_item": "افزودن یک آیتم", + "date": "تاریخ", + "due_date": "تاریخ سررسید", + "expiry_date": "تاریخ انقضا", + "status": "وضعیت", + "add_tax": "افزودن مالیات", + "amount": "مقدار", + "action": "عملیات", + "notes": "یادداشت ها", + "tax": "مالیات", + "estimate_template": "قالب", + "convert_to_invoice": "تبدیل به صورت حساب", + "mark_as_sent": "علامت گذاری به عنوان ارسال شده", + "send_estimate": "ارسال برآورد هزینه", + "resend_estimate": "ارسال مجدد برآورد هزینه", + "record_payment": "ثبت پرداخت", + "add_estimate": "اضافه کردن برآورد هزینه", + "save_estimate": "ذخیره برآورد هزینه", + "confirm_conversion": "از اطلاعات این برآورد برای ایجاد یک فاکتور جدید استفاده خواهد شد.", + "conversion_message": "فاکتور با موفقیت ایجاد شد", + "confirm_send_estimate": "این برآورد از طریق ایمیل برای مشتری ارسال می شود", + "confirm_mark_as_sent": "وضعیت این برآورد به ارسال شده تغییر پیدا می کند", + "confirm_mark_as_accepted": "وضعیت این برآورد به تایید شده تغییر پیدا می کند", + "confirm_mark_as_rejected": "وضعیت این برآورد به عدم تایید تغییر پیدا می کند", + "no_matching_estimates": "هیچ برآورد منطبقی وجود ندارد!", + "mark_as_sent_successfully": "وضعیت این برآورد به ارسال شده تغییر پیدا می کند", + "send_estimate_successfully": "برآورد با موفقیت ارسال شد", + "errors": { + "required": "فیلد مورد نیاز است" + }, + "accepted": "تأیید شد", + "rejected": "رد شده", + "expired": "Expired", + "sent": "فرستاده شد", + "draft": "پیش‌نویس", + "viewed": "Viewed", + "declined": "پذیرفته نشد", + "new_estimate": "New Estimate", + "add_new_estimate": "Add New Estimate", + "update_Estimate": "Update Estimate", + "edit_estimate": "Edit Estimate", + "items": "items", + "Estimate": "Estimate | Estimates", + "add_new_tax": "Add New Tax", + "no_estimates": "No estimates yet!", + "list_of_estimates": "This section will contain the list of estimates.", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "marked_as_accepted_message": "Estimate marked as accepted", + "marked_as_rejected_message": "Estimate marked as rejected", + "confirm_delete": "You will not be able to recover this Estimate | You will not be able to recover these Estimates", + "created_message": "Estimate created successfully", + "updated_message": "Estimate updated successfully", + "deleted_message": "Estimate deleted successfully | Estimates deleted successfully", + "something_went_wrong": "something went wrong", + "item": { + "title": "Item Title", + "description": "توضیحات", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + } + }, + "invoices": { + "title": "Invoices", + "download": "Download", + "pay_invoice": "Pay Invoice", + "invoices_list": "Invoices List", + "invoice_information": "Invoice Information", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "همه", + "paid": "پرداخت شده", + "unpaid": "پرداخت نشده", + "viewed": "Viewed", + "overdue": "Overdue", + "completed": "Completed", + "customer": "مشتری", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "جمع کل", + "discount": "تخفیف", + "sub_total": "Sub Total", + "invoice": "Invoice | Invoices", + "invoice_number": "Invoice Number", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "due_date": "Due Date", + "status": "Status", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "یادداشت‌ها", + "view": "View", + "send_invoice": "ارسال صورت‌حساب", + "resend_invoice": "ارسال مجدد صورت‌حساب", + "invoice_template": "قالب صورت‌حساب", + "conversion_message": "Invoice cloned successful", + "template": "انتخاب قالب", + "mark_as_sent": "علامت‌گذاری به عنوان ارسال‌شده", + "confirm_send_invoice": "این صورت‌حساب از طریق پست الکترونیک (ایمیل) برای مشتری ارسال خواهد شد", + "invoice_mark_as_sent": "وضعیت این صورت‌حساب به ارسال شده تغییر پیدا خواهد کرد", + "confirm_mark_as_accepted": "وضعیت این صورت‌حساب به تایید شده تغییر پیدا خواهد کرد", + "confirm_mark_as_rejected": "وضعیت این صورت‌حساب به عدم تایید تغییر پیدا خواهد کرد", + "confirm_send": "این صورت‌حساب از طریق پست الکترونیک (ایمیل) برای مشتری ارسال خواهد شد", + "invoice_date": "تاریخ صورتحساب", + "record_payment": "Record Payment", + "add_new_invoice": "افزودن صورت‌حساب جدید", + "update_expense": "بروزرسانی هزینه", + "edit_invoice": "ویرایش صورت‌حساب", + "new_invoice": "صورت‌حساب جدید", + "save_invoice": "Save Invoice", + "update_invoice": "Update Invoice", + "add_new_tax": "افزودن مالیات جدید", + "no_invoices": "No Invoices yet!", + "mark_as_rejected": "علامت‌گذاری به عنوان رد شده", + "mark_as_accepted": "علامت‌گذاری به عنوان تایید شده", + "list_of_invoices": "این قسمت شامل لیست صورت‌حساب‌ها است.", + "select_invoice": "انتخاب صورت‌حساب", + "no_matching_invoices": "There are no matching invoices!", + "mark_as_sent_successfully": "Invoice marked as sent successfully", + "invoice_sent_successfully": "Invoice sent successfully", + "cloned_successfully": "Invoice cloned successfully", + "clone_invoice": "Clone Invoice", + "confirm_clone": "This invoice will be cloned into a new Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "payment_attached_message": "One of the selected invoices already have a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal", + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Invoice created successfully", + "updated_message": "Invoice updated successfully", + "deleted_message": "Invoice deleted successfully | Invoices deleted successfully", + "marked_as_sent_message": "Invoice marked as sent successfully", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Invoice amount cannot be less than total paid amount for this Invoice. Please update the invoice or delete the associated payments to continue." + }, + "recurring_invoices": { + "title": "Recurring Invoices", + "invoices_list": "Recurring Invoices List", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Viewed", + "overdue": "Overdue", + "active": "Active", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, + "payments": { + "title": "Payments", + "payments_list": "Payments List", + "record_payment": "Record Payment", + "customer": "Customer", + "date": "Date", + "amount": "Amount", + "action": "Action", + "payment_number": "Payment Number", + "payment_mode": "Payment Mode", + "invoice": "Invoice", + "note": "Note", + "add_payment": "Add Payment", + "new_payment": "New Payment", + "edit_payment": "Edit Payment", + "view_payment": "View Payment", + "add_new_payment": "Add New Payment", + "send_payment_receipt": "Send Payment Receipt", + "send_payment": "Send Payment", + "save_payment": "Save Payment", + "update_payment": "Update Payment", + "payment": "Payment | Payments", + "no_payments": "No payments yet!", + "not_selected": "Not selected", + "no_invoice": "No invoice", + "no_matching_payments": "There are no matching payments!", + "list_of_payments": "This section will contain the list of payments.", + "select_payment_mode": "Select payment mode", + "confirm_mark_as_sent": "This estimate will be marked as sent", + "confirm_send_payment": "This payment will be sent via email to the customer", + "send_payment_successfully": "Payment sent successfully", + "something_went_wrong": "something went wrong", + "confirm_delete": "You will not be able to recover this Payment | You will not be able to recover these Payments", + "created_message": "Payment created successfully", + "updated_message": "Payment updated successfully", + "deleted_message": "Payment deleted successfully | Payments deleted successfully", + "invalid_amount_message": "Payment amount is invalid" + }, + "expenses": { + "title": "Expenses", + "expenses_list": "Expenses List", + "select_a_customer": "Select a customer", + "expense_title": "Title", + "customer": "Customer", + "currency": "Currency", + "contact": "Contact", + "category": "Category", + "from_date": "From Date", + "to_date": "To Date", + "expense_date": "Date", + "description": "Description", + "receipt": "Receipt", + "amount": "Amount", + "action": "Action", + "not_selected": "Not selected", + "note": "Note", + "category_id": "Category Id", + "date": "Date", + "add_expense": "Add Expense", + "add_new_expense": "Add New Expense", + "save_expense": "Save Expense", + "update_expense": "Update Expense", + "download_receipt": "Download Receipt", + "edit_expense": "Edit Expense", + "new_expense": "New Expense", + "expense": "Expense | Expenses", + "no_expenses": "No expenses yet!", + "list_of_expenses": "This section will contain the list of expenses.", + "confirm_delete": "You will not be able to recover this Expense | You will not be able to recover these Expenses", + "created_message": "Expense created successfully", + "updated_message": "Expense updated successfully", + "deleted_message": "Expense deleted successfully | Expenses deleted successfully", + "categories": { + "categories_list": "Categories List", + "title": "Title", + "name": "Name", + "description": "Description", + "amount": "Amount", + "actions": "Actions", + "add_category": "Add Category", + "new_category": "New Category", + "category": "Category | Categories", + "select_a_category": "Select a category" + } + }, + "login": { + "email": "Email", + "password": "Password", + "forgot_password": "Forgot Password?", + "or_signIn_with": "or Sign in with", + "login": "Login", + "register": "Register", + "reset_password": "Reset Password", + "password_reset_successfully": "Password Reset Successfully", + "enter_email": "Enter email", + "enter_password": "Enter Password", + "retype_password": "Retype Password" + }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, + "users": { + "title": "Users", + "users_list": "Users List", + "name": "Name", + "description": "Description", + "added_on": "Added On", + "date_of_creation": "Date Of Creation", + "action": "Action", + "add_user": "Add User", + "save_user": "Save User", + "update_user": "Update User", + "user": "User | Users", + "add_new_user": "Add New User", + "new_user": "New User", + "edit_user": "Edit User", + "no_users": "No users yet!", + "list_of_users": "This section will contain the list of users.", + "email": "Email", + "phone": "Phone", + "password": "Password", + "user_attached_message": "Cannot delete an item which is already in use", + "confirm_delete": "You will not be able to recover this User | You will not be able to recover these Users", + "created_message": "User created successfully", + "updated_message": "User updated successfully", + "deleted_message": "User deleted successfully | Users deleted successfully", + "select_company_role": "Select Role for {company}", + "companies": "Companies" + }, + "reports": { + "title": "Report", + "from_date": "From Date", + "to_date": "To Date", + "status": "Status", + "paid": "Paid", + "unpaid": "Unpaid", + "download_pdf": "Download PDF", + "view_pdf": "View PDF", + "update_report": "Update Report", + "report": "Report | Reports", + "profit_loss": { + "profit_loss": "Profit & Loss", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" + }, + "sales": { + "sales": "Sales", + "date_range": "Select Date Range", + "to_date": "To Date", + "from_date": "From Date", + "report_type": "Report Type" + }, + "taxes": { + "taxes": "Taxes", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" + }, + "errors": { + "required": "Field is required" + }, + "invoices": { + "invoice": "Invoice", + "invoice_date": "Invoice Date", + "due_date": "Due Date", + "amount": "Amount", + "contact_name": "Contact Name", + "status": "Status" + }, + "estimates": { + "estimate": "Estimate", + "estimate_date": "Estimate Date", + "due_date": "Due Date", + "estimate_number": "Estimate Number", + "ref_number": "Ref Number", + "amount": "Amount", + "contact_name": "Contact Name", + "status": "Status" + }, + "expenses": { + "expenses": "Expenses", + "category": "Category", + "date": "Date", + "amount": "Amount", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" + } + }, + "settings": { + "menu_title": { + "account_settings": "Account Settings", + "company_information": "Company Information", + "customization": "Customization", + "preferences": "Preferences", + "notifications": "Notifications", + "tax_types": "Tax Types", + "expense_category": "Expense Categories", + "update_app": "Update App", + "backup": "Backup", + "file_disk": "File Disk", + "custom_fields": "Custom Fields", + "payment_modes": "Payment Modes", + "notes": "Notes", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." + }, + "title": "Settings", + "setting": "Settings | Settings", + "general": "General", + "language": "Language", + "primary_currency": "Primary Currency", + "timezone": "Time Zone", + "date_format": "Date Format", + "currencies": { + "title": "Currencies", + "currency": "Currency | Currencies", + "currencies_list": "Currencies List", + "select_currency": "Select Currency", + "name": "Name", + "code": "Code", + "symbol": "Symbol", + "precision": "Precision", + "thousand_separator": "Thousand Separator", + "decimal_separator": "Decimal Separator", + "position": "Position", + "position_of_symbol": "Position Of Symbol", + "right": "Right", + "left": "Left", + "action": "Action", + "add_currency": "Add Currency" + }, + "mail": { + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Mail Password", + "username": "Mail Username", + "mail_config": "Mail Configuration", + "from_name": "From Mail Name", + "from_mail": "From Mail Address", + "encryption": "Mail Encryption", + "mail_config_desc": "Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc." + }, + "pdf": { + "title": "PDF Setting", + "footer_text": "Footer Text", + "pdf_layout": "PDF Layout" + }, + "company_info": { + "company_info": "Company info", + "company_name": "Company Name", + "company_logo": "Company Logo", + "section_description": "Information about your company that will be displayed on invoices, estimates and other documents created by Crater.", + "phone": "Phone", + "country": "Country", + "state": "State", + "city": "City", + "address": "Address", + "zip": "Zip", + "save": "Save", + "delete": "Delete", + "updated_message": "Company information updated successfully", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" + }, + "custom_fields": { + "title": "Custom Fields", + "section_description": "Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.", + "add_custom_field": "Add Custom Field", + "edit_custom_field": "Edit Custom Field", + "field_name": "Field Name", + "label": "Label", + "type": "Type", + "name": "Name", + "slug": "Slug", + "required": "Required", + "placeholder": "Placeholder", + "help_text": "Help Text", + "default_value": "Default Value", + "prefix": "Prefix", + "starting_number": "Starting Number", + "model": "Model", + "help_text_description": "Enter some text to help users understand the purpose of this custom field.", + "suffix": "Suffix", + "yes": "Yes", + "no": "No", + "order": "Order", + "custom_field_confirm_delete": "You will not be able to recover this Custom Field", + "already_in_use": "Custom Field is already in use", + "deleted_message": "Custom Field deleted successfully", + "options": "options", + "add_option": "Add Options", + "add_another_option": "Add another option", + "sort_in_alphabetical_order": "Sort in Alphabetical Order", + "add_options_in_bulk": "Add options in bulk", + "use_predefined_options": "Use Predefined Options", + "select_custom_date": "Select Custom Date", + "select_relative_date": "Select Relative Date", + "ticked_by_default": "Ticked by default", + "updated_message": "Custom Field updated successfully", + "added_message": "Custom Field added successfully", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." + }, + "customization": { + "customization": "customization", + "updated_message": "Company information updated successfully", + "save": "Save", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", + "invoices": { + "title": "Invoices", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", + "default_invoice_email_body": "Default Invoice Email Body", + "company_address_format": "Company Address Format", + "shipping_address_format": "Shipping Address Format", + "billing_address_format": "Billing Address Format", + "invoice_email_attachment": "Send invoices as attachments", + "invoice_email_attachment_setting_description": "Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." + }, + "estimates": { + "title": "Estimates", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", + "default_estimate_email_body": "Default Estimate Email Body", + "company_address_format": "Company Address Format", + "shipping_address_format": "Shipping Address Format", + "billing_address_format": "Billing Address Format", + "estimate_email_attachment": "Send estimates as attachments", + "estimate_email_attachment_setting_description": "Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" + }, + "payments": { + "title": "Payments", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", + "default_payment_email_body": "Default Payment Email Body", + "company_address_format": "Company Address Format", + "from_customer_address_format": "From Customer Address Format", + "payment_email_attachment": "Send payments as attachments", + "payment_email_attachment_setting_description": "Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.", + "payment_settings_updated": "Payment Settings updated successfully" + }, + "items": { + "title": "Items", + "units": "Units", + "add_item_unit": "Add Item Unit", + "edit_item_unit": "Edit Item Unit", + "unit_name": "Unit Name", + "item_unit_added": "Item Unit Added", + "item_unit_updated": "Item Unit Updated", + "item_unit_confirm_delete": "You will not be able to recover this Item unit", + "already_in_use": "Item Unit is already in use", + "deleted_message": "Item Unit deleted successfully" + }, + "notes": { + "title": "Notes", + "description": "Save time by creating notes and reusing them on your invoices, estimates & payments.", + "notes": "Notes", + "type": "Type", + "add_note": "Add Note", + "add_new_note": "Add New Note", + "name": "Name", + "edit_note": "Edit Note", + "note_added": "Note added successfully", + "note_updated": "Note Updated successfully", + "note_confirm_delete": "You will not be able to recover this Note", + "already_in_use": "Note is already in use", + "deleted_message": "Note deleted successfully" + } + }, + "account_settings": { + "profile_picture": "Profile Picture", + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password", + "account_settings": "Account Settings", + "save": "Save", + "section_description": "You can update your name, email & password using the form below.", + "updated_message": "Account Settings updated successfully" + }, + "user_profile": { + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password" + }, + "notification": { + "title": "Notifications", + "email": "Send Notifications to", + "description": "Which email notifications would you like to receive when something changes?", + "invoice_viewed": "Invoice viewed", + "invoice_viewed_desc": "When your customer views the invoice sent via crater dashboard.", + "estimate_viewed": "Estimate viewed", + "estimate_viewed_desc": "When your customer views the estimate sent via crater dashboard.", + "save": "Save", + "email_save_message": "Email saved successfully", + "please_enter_email": "Please Enter Email" + }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, + "tax_types": { + "title": "Tax Types", + "add_tax": "Add Tax", + "edit_tax": "Edit Tax", + "description": "You can add or Remove Taxes as you please. Crater supports Taxes on Individual Items as well as on the invoice.", + "add_new_tax": "Add New Tax", + "tax_settings": "Tax Settings", + "tax_per_item": "Tax Per Item", + "tax_name": "Tax Name", + "compound_tax": "Compound Tax", + "percent": "Percent", + "action": "Action", + "tax_setting_description": "Enable this if you want to add taxes to individual invoice items. By default, taxes are added directly to the invoice.", + "created_message": "Tax type created successfully", + "updated_message": "Tax type updated successfully", + "deleted_message": "Tax type deleted successfully", + "confirm_delete": "You will not be able to recover this Tax Type", + "already_in_use": "Tax is already in use" + }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, + "expense_category": { + "title": "Expense Categories", + "action": "Action", + "description": "Categories are required for adding expense entries. You can Add or Remove these categories according to your preference.", + "add_new_category": "Add New Category", + "add_category": "Add Category", + "edit_category": "Edit Category", + "category_name": "Category Name", + "category_description": "Description", + "created_message": "Expense Category created successfully", + "deleted_message": "Expense category deleted successfully", + "updated_message": "Expense category updated successfully", + "confirm_delete": "You will not be able to recover this Expense Category", + "already_in_use": "Category is already in use" + }, + "preferences": { + "currency": "Currency", + "default_language": "Default Language", + "time_zone": "Time Zone", + "fiscal_year": "Financial Year", + "date_format": "Date Format", + "discount_setting": "Discount Setting", + "discount_per_item": "Discount Per Item ", + "discount_setting_description": "Enable this if you want to add Discount to individual invoice items. By default, Discount is added directly to the invoice.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", + "save": "Save", + "preference": "Preference | Preferences", + "general_settings": "Default preferences for the system.", + "updated_message": "Preferences updated successfully", + "select_language": "Select Language", + "select_time_zone": "Select Time Zone", + "select_date_format": "Select Date Format", + "select_financial_year": "Select Financial Year", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" + }, + "update_app": { + "title": "Update App", + "description": "You can easily update Crater by checking for a new update by clicking the button below", + "check_update": "Check for updates", + "avail_update": "New Update available", + "next_version": "Next version", + "requirements": "Requirements", + "update": "Update Now", + "update_progress": "Update in progress...", + "progress_text": "It will just take a few minutes. Please do not refresh the screen or close the window before the update finishes", + "update_success": "App has been updated! Please wait while your browser window gets reloaded automatically.", + "latest_message": "No update available! You are on the latest version.", + "current_version": "Current Version", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "running_migrations": "Running Migrations", + "finishing_update": "Finishing Update", + "update_failed": "Update Failed", + "update_failed_text": "Sorry! Your update failed on : {step} step", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." + }, + "backup": { + "title": "Backup | Backups", + "description": "The backup is a zipfile that contains all files in the directories you specify along with a dump of your database", + "new_backup": "Add New Backup", + "create_backup": "Create Backup", + "select_backup_type": "Select Backup Type", + "backup_confirm_delete": "You will not be able to recover this Backup", + "path": "path", + "new_disk": "New Disk", + "created_at": "created at", + "size": "size", + "dropbox": "dropbox", + "local": "local", + "healthy": "healthy", + "amount_of_backups": "amount of backups", + "newest_backups": "newest backups", + "used_storage": "used storage", + "select_disk": "Select Disk", + "action": "Action", + "deleted_message": "Backup deleted successfully", + "created_message": "Backup created successfully", + "invalid_disk_credentials": "Invalid credential of selected disk" + }, + "disk": { + "title": "File Disk | File Disks", + "description": "By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.", + "created_at": "created at", + "dropbox": "dropbox", + "name": "Name", + "driver": "Driver", + "disk_type": "Type", + "disk_name": "Disk Name", + "new_disk": "Add New Disk", + "filesystem_driver": "Filesystem Driver", + "local_driver": "local Driver", + "local_root": "local Root", + "public_driver": "Public Driver", + "public_root": "Public Root", + "public_url": "Public URL", + "public_visibility": "Public Visibility", + "media_driver": "Media Driver", + "media_root": "Media Root", + "aws_driver": "AWS Driver", + "aws_key": "AWS Key", + "aws_secret": "AWS Secret", + "aws_region": "AWS Region", + "aws_bucket": "AWS Bucket", + "aws_root": "AWS Root", + "do_spaces_type": "Do Spaces type", + "do_spaces_key": "Do Spaces key", + "do_spaces_secret": "Do Spaces Secret", + "do_spaces_region": "Do Spaces Region", + "do_spaces_bucket": "Do Spaces Bucket", + "do_spaces_endpoint": "Do Spaces Endpoint", + "do_spaces_root": "Do Spaces Root", + "dropbox_type": "Dropbox Type", + "dropbox_token": "Dropbox Token", + "dropbox_key": "Dropbox Key", + "dropbox_secret": "Dropbox Secret", + "dropbox_app": "Dropbox App", + "dropbox_root": "Dropbox Root", + "default_driver": "Default Driver", + "is_default": "IS DEFAULT", + "set_default_disk": "Set Default Disk", + "set_default_disk_confirm": "This disk will be set as default and all the new PDFs will be saved on this disk", + "success_set_default_disk": "Disk set as default successfully", + "save_pdf_to_disk": "Save PDFs to Disk", + "disk_setting_description": " Enable this, if you wish to save a copy of each Invoice, Estimate & Payment Receipt PDF on your default disk automatically. Turning this option will decrease the load-time when viewing the PDFs.", + "select_disk": "Select Disk", + "disk_settings": "Disk Settings", + "confirm_delete": "Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater", + "action": "Action", + "edit_file_disk": "Edit File Disk", + "success_create": "Disk added successfully", + "success_update": "Disk updated successfully", + "error": "Disk addition failed", + "deleted_message": "File Disk deleted successfully", + "disk_variables_save_successfully": "Disk Configured Successfully", + "disk_variables_save_error": "Disk configuration failed.", + "invalid_disk_credentials": "Invalid credential of selected disk" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." + } + }, + "wizard": { + "account_info": "Account Information", + "account_info_desc": "Below details will be used to create the main Administrator account. Also you can change the details anytime after logging in.", + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password", + "save_cont": "Save & Continue", + "company_info": "Company Information", + "company_info_desc": "This information will be displayed on invoices. Note that you can edit this later on settings page.", + "company_name": "Company Name", + "company_logo": "Company Logo", + "logo_preview": "Logo Preview", + "preferences": "Company Preferences", + "preferences_desc": "Specify the default preferences for this company.", + "currency_set_alert": "The company's currency cannot be changed later.", + "country": "Country", + "state": "State", + "city": "City", + "address": "Address", + "street": "Street1 | Street2", + "phone": "Phone", + "zip_code": "Zip Code", + "go_back": "Go Back", + "currency": "Currency", + "language": "Language", + "time_zone": "Time Zone", + "fiscal_year": "Financial Year", + "date_format": "Date Format", + "from_address": "From Address", + "username": "Username", + "next": "Next", + "continue": "Continue", + "skip": "Skip", + "database": { + "database": "Site URL & Database", + "connection": "Database Connection", + "host": "Database Host", + "port": "Database Port", + "password": "Database Password", + "app_url": "App URL", + "app_domain": "App Domain", + "username": "Database Username", + "db_name": "Database Name", + "db_path": "Database Path", + "desc": "Create a database on your server and set the credentials using the form below." + }, + "permissions": { + "permissions": "Permissions", + "permission_confirm_title": "Are you sure you want to continue?", + "permission_confirm_desc": "Folder permission check failed", + "permission_desc": "Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions." + }, + "verify_domain": { + "title": "Domain Verification", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Verify Now", + "success": "Domain Verify Successfully.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verify And Continue" + }, + "mail": { + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Mail Password", + "username": "Mail Username", + "mail_config": "Mail Configuration", + "from_name": "From Mail Name", + "from_mail": "From Mail Address", + "encryption": "Mail Encryption", + "mail_config_desc": "Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc." + }, + "req": { + "system_req": "System Requirements", + "php_req_version": "Php (version {version} required)", + "check_req": "Check Requirements", + "system_req_desc": "Crater has a few server requirements. Make sure that your server has the required php version and all the extensions mentioned below." + }, + "errors": { + "migrate_failed": "Migrate Failed", + "database_variables_save_error": "Cannot write configuration to .env file. Please check its file permissions", + "mail_variables_save_error": "Email configuration failed.", + "connection_failed": "Database connection failed", + "database_should_be_empty": "Database should be empty" + }, + "success": { + "mail_variables_save_successfully": "Email configured successfully", + "database_variables_save_successfully": "Database configured successfully." + } + }, + "validation": { + "invalid_phone": "Invalid Phone Number", + "invalid_url": "Invalid url (ex: http://www.craterapp.com)", + "invalid_domain_url": "Invalid url (ex: craterapp.com)", + "required": "Field is required", + "email_incorrect": "Incorrect Email.", + "email_already_taken": "The email has already been taken.", + "email_does_not_exist": "User with given email doesn't exist", + "item_unit_already_taken": "This item unit name has already been taken", + "payment_mode_already_taken": "This payment mode name has already been taken", + "send_reset_link": "Send Reset Link", + "not_yet": "Not yet? Send it again", + "password_min_length": "Password must contain {count} characters", + "name_min_length": "Name must have at least {count} letters.", + "prefix_min_length": "Prefix must have at least {count} letters.", + "enter_valid_tax_rate": "Enter valid tax rate", + "numbers_only": "Numbers Only.", + "characters_only": "Characters Only.", + "password_incorrect": "Passwords must be identical", + "password_length": "Password must be {count} character long.", + "qty_must_greater_than_zero": "Quantity must be greater than zero.", + "price_greater_than_zero": "Price must be greater than zero.", + "payment_greater_than_zero": "Payment must be greater than zero.", + "payment_greater_than_due_amount": "Entered Payment is more than due amount of this invoice.", + "quantity_maxlength": "Quantity should not be greater than 20 digits.", + "price_maxlength": "Price should not be greater than 20 digits.", + "price_minvalue": "Price should be greater than 0.", + "amount_maxlength": "Amount should not be greater than 20 digits.", + "amount_minvalue": "Amount should be greater than 0.", + "discount_maxlength": "Discount should not be greater than max discount", + "description_maxlength": "Description should not be greater than 255 characters.", + "subject_maxlength": "Subject should not be greater than 100 characters.", + "message_maxlength": "Message should not be greater than 255 characters.", + "maximum_options_error": "Maximum of {max} options selected. First remove a selected option to select another.", + "notes_maxlength": "Notes should not be greater than 65,000 characters.", + "address_maxlength": "Address should not be greater than 255 characters.", + "ref_number_maxlength": "Ref Number should not be greater than 255 characters.", + "prefix_maxlength": "Prefix should not be greater than 5 characters.", + "something_went_wrong": "something went wrong", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" + }, + "pdf_estimate_label": "Estimate", + "pdf_estimate_number": "Estimate Number", + "pdf_estimate_date": "Estimate Date", + "pdf_estimate_expire_date": "Expiry date", + "pdf_invoice_label": "Invoice", + "pdf_invoice_number": "Invoice Number", + "pdf_invoice_date": "Invoice Date", + "pdf_invoice_due_date": "Due date", + "pdf_notes": "Notes", + "pdf_items_label": "Items", + "pdf_quantity_label": "Quantity", + "pdf_price_label": "Price", + "pdf_discount_label": "Discount", + "pdf_amount_label": "Amount", + "pdf_subtotal": "Subtotal", + "pdf_total": "Total", + "pdf_payment_label": "Payment", + "pdf_payment_receipt_label": "PAYMENT RECEIPT", + "pdf_payment_date": "Payment Date", + "pdf_payment_number": "Payment Number", + "pdf_payment_mode": "Payment Mode", + "pdf_payment_amount_received_label": "Amount Received", + "pdf_expense_report_label": "EXPENSES REPORT", + "pdf_total_expenses_label": "TOTAL EXPENSE", + "pdf_profit_loss_label": "PROFIT & LOSS REPORT", + "pdf_sales_customers_label": "Sales Customer Report", + "pdf_sales_items_label": "Sales Item Report", + "pdf_tax_summery_label": "Tax Summary Report", + "pdf_income_label": "INCOME", + "pdf_net_profit_label": "NET PROFIT", + "pdf_customer_sales_report": "Sales Report: By Customer", + "pdf_total_sales_label": "TOTAL SALES", + "pdf_item_sales_label": "Sales Report: By Item", + "pdf_tax_report_label": "TAX REPORT", + "pdf_total_tax_label": "TOTAL TAX", + "pdf_tax_types_label": "Tax Types", + "pdf_expenses_label": "Expenses", + "pdf_bill_to": "Bill to,", + "pdf_ship_to": "Ship to,", + "pdf_received_from": "Received from:", + "pdf_tax_label": "Tax" +} diff --git a/resources/scripts/locales/fi.json b/resources/scripts/locales/fi.json new file mode 100644 index 000000000..8c4275561 --- /dev/null +++ b/resources/scripts/locales/fi.json @@ -0,0 +1,1521 @@ +{ + "navigation": { + "dashboard": "Yhteenveto", + "customers": "Asiakkaat", + "items": "Tuotteet", + "invoices": "Laskut", + "recurring-invoices": "Recurring Invoices", + "expenses": "Kulut", + "estimates": "Tarjoukset", + "payments": "Maksut", + "reports": "Raportit", + "settings": "Asetukset", + "logout": "Kirjaudu ulos", + "users": "Käyttäjät", + "modules": "Modules" + }, + "general": { + "add_company": "Lisää Yritys", + "view_pdf": "Esikatsele PDF tiedostoa", + "copy_pdf_url": "Kopioi PDF tiedoston linkki", + "download_pdf": "Lataa PDF tiedosto", + "save": "Tallenna", + "create": "Luo", + "cancel": "Peruuta", + "update": "Päivitä", + "deselect": "Poista valinta", + "download": "Lataa", + "from_date": "Päivästä", + "to_date": "Päivään", + "from": "Lähettäjä", + "to": "Vastaanottaja", + "ok": "Ok", + "yes": "Yes", + "no": "No", + "sort_by": "Järjestä", + "ascending": "Nouseva", + "descending": "Laskeva", + "subject": "Aihe", + "body": "Sisältö", + "message": "Viesti", + "send": "Lähetä", + "preview": "Preview", + "go_back": "Palaa takaisin", + "back_to_login": "Takaisin sisäänkirjautumiseen?", + "home": "Koti", + "filter": "Suodatin", + "delete": "Poista", + "edit": "Muokkaa", + "view": "Katsele", + "add_new_item": "Lisää uusi tuote", + "clear_all": "Tyhjennä kaikki", + "showing": "Näytetään", + "of": "/", + "actions": "Toiminnot", + "subtotal": "VÄLISUMMA", + "discount": "ALENNUS", + "fixed": "Kiinteä", + "percentage": "Prosentti", + "tax": "VERO", + "total_amount": "KOKONAIS SUMMA", + "bill_to": "Laskutusosoite", + "ship_to": "Toimitusosoite", + "due": "Erääntyy", + "draft": "Luonnos", + "sent": "Lähetetty", + "all": "Kaikki", + "select_all": "Valitse kaikki", + "select_template": "Select Template", + "choose_file": "Klikkaa tästä valitaksesi tiedoston", + "choose_template": "Valitse pohja", + "choose": "Valitse", + "remove": "Poista", + "select_a_status": "Valitse tila", + "select_a_tax": "Valitse verokanta", + "search": "Etsi", + "are_you_sure": "Oletko varma?", + "list_is_empty": "Lista on tyhjä.", + "no_tax_found": "Verokantoja ei löytynyt!", + "four_zero_four": "404", + "you_got_lost": "Oho! Taisit eksyä!", + "go_home": "Palaa kotisivulle", + "test_mail_conf": "Testi sähköposti asetukset", + "send_mail_successfully": "Sähköposti lähetettiin onnistuneesti", + "setting_updated": "Asetukset päivitettiin onnistuneesti", + "select_state": "Valitse osavaltio", + "select_country": "Valitse maa", + "select_city": "Valitse kaupunki", + "street_1": "Osoite 1", + "street_2": "Osoite 2", + "action_failed": "Toiminta epäonnistui", + "retry": "Uudestaan", + "choose_note": "Valitse viesti", + "no_note_found": "Viestejä ei löytynyt", + "insert_note": "Lisää viesti", + "copied_pdf_url_clipboard": "Copied PDF url to clipboard!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Docs", + "do_you_wish_to_continue": "Do you wish to continue?", + "note": "Note", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" + }, + "dashboard": { + "select_year": "Valitse vuosi", + "cards": { + "due_amount": "Avoin summa", + "customers": "Asiakkaat", + "invoices": "Laskut", + "estimates": "Tarjoukset", + "payments": "Payments" + }, + "chart_info": { + "total_sales": "Myynti", + "total_receipts": "Suoritukset", + "total_expense": "Kulut", + "net_income": "Netto tulo", + "year": "Valitse vuosi" + }, + "monthly_chart": { + "title": "Myynti & Kulut" + }, + "recent_invoices_card": { + "title": "Erääntyvät laskut", + "due_on": "Erääntyy", + "customer": "Asiakas", + "amount_due": "Avoin summa", + "actions": "Toiminnot", + "view_all": "Katso kaikki" + }, + "recent_estimate_card": { + "title": "Viimeisimmät Tarjoukset", + "date": "Päiväys", + "customer": "Asiakas", + "amount_due": "Avoin summa", + "actions": "Toiminnot", + "view_all": "Katso kaikki" + } + }, + "tax_types": { + "name": "Nimi", + "description": "Kuvaus", + "percent": "Prosentti", + "compound_tax": "Yhdistetty vero" + }, + "global_search": { + "search": "Etsi...", + "customers": "Asiakkaat", + "users": "Henkilöt", + "no_results_found": "Ei löytynyt vastaavuuksia" + }, + "company_switcher": { + "label": "SWITCH COMPANY", + "no_results_found": "No Results Found", + "add_new_company": "Add new company", + "new_company": "New company", + "created_message": "Company created successfully" + }, + "dateRange": { + "today": "Today", + "this_week": "This Week", + "this_month": "This Month", + "this_quarter": "This Quarter", + "this_year": "This Year", + "previous_week": "Previous Week", + "previous_month": "Previous Month", + "previous_quarter": "Previous Quarter", + "previous_year": "Previous Year", + "custom": "Custom" + }, + "customers": { + "title": "Asiakkaat", + "prefix": "Prefix", + "add_customer": "Lisää Asiakas", + "contacts_list": "Asiakasluettelo", + "name": "Nimi", + "mail": "Sähköposti | Sähköpostit", + "statement": "Lausunto", + "display_name": "Näyttönimi", + "primary_contact_name": "Ensisijainen yhteyshenkilö", + "contact_name": "Yhteyshenkilö", + "amount_due": "Avoin saatava", + "email": "Sähköposti", + "address": "Osoite", + "phone": "Puhelin", + "website": "Websivu", + "overview": "Yleiskatsaus", + "invoice_prefix": "Invoice Prefix", + "estimate_prefix": "Estimate Prefix", + "payment_prefix": "Payment Prefix", + "enable_portal": "Ota portaali käyttöön", + "country": "Maa", + "state": "Osavaltio", + "city": "Kaupunki", + "zip_code": "Postinumero", + "added_on": "Lisätty", + "action": "Toiminta", + "password": "Salasana", + "confirm_password": "Confirm Password", + "street_number": "Katunumero", + "primary_currency": "Ensisijainen valuutta", + "description": "Kuvaus", + "add_new_customer": "Lisää uusi Asiakas", + "save_customer": "Tallenna Asiakas", + "update_customer": "Päivitä Asiakas", + "customer": "Asiakas | Asiakkaat", + "new_customer": "Uusi Asiakas", + "edit_customer": "Muokkaa Asiakasta", + "basic_info": "Perustiedot", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", + "billing_address": "Laskutusosoite", + "shipping_address": "Toimitusosoite", + "copy_billing_address": "Kopioi laskutusosoitteesta", + "no_customers": "Ei tallennettuja asiakkaita!", + "no_customers_found": "Asiakkaita ei löytynyt!", + "no_contact": "No contact", + "no_contact_name": "No contact name", + "list_of_customers": "Tämä osio sisältää asiakasluettelon.", + "primary_display_name": "Ensisijainen näyttönimi", + "select_currency": "Valitse valuutta", + "select_a_customer": "Valitse asiakas", + "type_or_click": "Kirjoita tai klikkaa valitaksesi", + "new_transaction": "Uusi transaktio", + "no_matching_customers": "Asiakas vastaavuuksia ei löytynyt!", + "phone_number": "Puhelinnumero", + "create_date": "Luontipäivä", + "confirm_delete": "Et voi palauttaa tätä asiakasta ja liittyviä laskuja, tarjouksia ja maksuja. | Et voi palauttaa näitä asiakkaita ja liittyviä laskuja, tarjouksia ja maksuja.", + "created_message": "Asiakas luotiin onnistuneesti", + "updated_message": "Asiakastiedot päivitettiin onnistuneesti", + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Asiakas poistettiin onnistuneesti | Asiakkaat poistettiin onnistuneesti", + "edit_currency_not_allowed": "Cannot change currency once transactions created." + }, + "items": { + "title": "Tuotteet", + "items_list": "Tuoteluettelo", + "name": "Tuotenimi", + "unit": "Yksikkö", + "description": "Kuvaus", + "added_on": "Lisätty", + "price": "Hinta", + "date_of_creation": "Luontipäivä", + "not_selected": "No item selected", + "action": "Toiminta", + "add_item": "Lisää tuote", + "save_item": "Tallenna tuote", + "update_item": "Päivitä tuote", + "item": "Tuote | Tuotteet", + "add_new_item": "Lisää uusi tuote", + "new_item": "Uusi tuote", + "edit_item": "Muokkaa tuotettä", + "no_items": "Ei tallennettuja tuotteita!", + "list_of_items": "Tämä osio sisältää luettelon tuotteista.", + "select_a_unit": "Valitse yksikkö", + "taxes": "Verot", + "item_attached_message": "Tuotettä joka on käytössä ei voi poistaa", + "confirm_delete": "Et voi palauttaa tätä tuotetta | Et voi palauttaa näitä tuotteita", + "created_message": "Tuote luotiin onnistuneesti", + "updated_message": "Tuote päivitettiin onnistuneesti", + "deleted_message": "Tuote poistettiin onnistuneesti | Tuotteet poistettiin onnistuneesti" + }, + "estimates": { + "title": "Tarjoukset", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", + "estimate": "Tarjous | Tarjoukset", + "estimates_list": "Tarjousluettelo", + "days": "{days} Päiviä", + "months": "{months} Kuukausi", + "years": "{years} Vuosi", + "all": "Kaikki", + "paid": "Maksetut", + "unpaid": "Maksamattomat", + "customer": "Asiakas", + "ref_no": "Viitteemme", + "number": "NUMERO", + "amount_due": "AVOIN SAATAVA", + "partially_paid": "Osittain maksettu", + "total": "Yhteensä", + "discount": "Alennus", + "sub_total": "Välisumma", + "estimate_number": "Tarjous numero", + "ref_number": "Asiakkaan viite", + "contact": "Yhteyshenkilö", + "add_item": "Lisää tuote", + "date": "Päiväys", + "due_date": "Eräpäivä", + "expiry_date": "Voimassaolo päivä", + "status": "Tila", + "add_tax": "Lisää Verokanta", + "amount": "Summa", + "action": "Toiminta", + "notes": "Viesti", + "tax": "ALV", + "estimate_template": "Malli", + "convert_to_invoice": "Konvertoi laskuksi", + "mark_as_sent": "Merkitse lähetetyksi", + "send_estimate": "Lähetä tarjous", + "resend_estimate": "Uudelleenlähetä tarjous", + "record_payment": "Kirjaa maksu", + "add_estimate": "Lisää Tarjous", + "save_estimate": "Tallenna Tarjous", + "confirm_conversion": "Tätä tarjousta käytetään laskun luomiseksi.", + "conversion_message": "Lasku luotiin onnistuneesti", + "confirm_send_estimate": "Tämä tarjous lähetetään sähköpostitse asiakkaalle", + "confirm_mark_as_sent": "Tämä tarjous merkitään lähetetyksi", + "confirm_mark_as_accepted": "Tämä tarjous merkitään hyväksytyksi", + "confirm_mark_as_rejected": "Tämä tarjous merkitään hylätyksi", + "no_matching_estimates": "Vastaavia tarjouksia ei löytynyt!", + "mark_as_sent_successfully": "Tarjous merkittiin onnistuneesti lähetetyksi", + "send_estimate_successfully": "Tarjous lähetettiin onnistuneesti", + "errors": { + "required": "Kenttä on pakollinen" + }, + "accepted": "Hyväksytty", + "rejected": "Rejected", + "expired": "Expired", + "sent": "Lähetetty", + "draft": "Luonnos", + "viewed": "Viewed", + "declined": "Hylätty", + "new_estimate": "Uusi Tarjous", + "add_new_estimate": "Lisää uusi tarjous", + "update_Estimate": "Päivitä tarjous", + "edit_estimate": "Muokkaa tarjousta", + "items": "Tuotteet", + "Estimate": "Tarjous | Tarjoukset", + "add_new_tax": "Lisää uusi verokanta", + "no_estimates": "Ei tallennettuja tarjouksia!", + "list_of_estimates": "Tämä osio sisältää luettelon tarjouksista.", + "mark_as_rejected": "Merkitse hylätyksi", + "mark_as_accepted": "Merkitse hyväksytyksi", + "marked_as_accepted_message": "Tarjous merkittiin hyväksytyksi", + "marked_as_rejected_message": "Tarjous merkittiin hylätyksi", + "confirm_delete": "Et voi palauttaa tätä tarjousta | Et voi palauttaa näitä tarjouksia", + "created_message": "Tarjous luotiin onnistuneesti", + "updated_message": "Tarjous päivitettiin onnistuneesti", + "deleted_message": "Tarjous poistettiin onnistuneesti | Tarjoukset poistettiin onnistuneesti", + "something_went_wrong": "jotain meni vikaan", + "item": { + "title": "Nikkeen otsikko", + "description": "Kuvaus", + "quantity": "Määrä", + "price": "Hinta", + "discount": "Alennus", + "total": "Yhteensä", + "total_discount": "Kokonaisalennus", + "sub_total": "Välisumma", + "tax": "ALV", + "amount": "Yhteensä veroton", + "select_an_item": "Kirjoita tai klikkaa valitaksesi tuotteen", + "type_item_description": "Kirjoita tuotteen kuvaus (valinnainen)" + } + }, + "invoices": { + "title": "Laskut", + "download": "Download", + "pay_invoice": "Pay Invoice", + "invoices_list": "Laskuluettelo", + "invoice_information": "Invoice Information", + "days": "{days} Päivä", + "months": "{months} Kuukausi", + "years": "{years} Vuosi", + "all": "Kaikki", + "paid": "Maksetut", + "unpaid": "Maksamattomat", + "viewed": "Viewed", + "overdue": "Overdue", + "completed": "Completed", + "customer": "Asiakas", + "paid_status": "MAKSUN TILA", + "ref_no": "Viitteemme", + "number": "NUMERO", + "amount_due": "AVOIN SUMMA", + "partially_paid": "Osittain maksettu", + "total": "Yhteensä", + "discount": "Alennus", + "sub_total": "Välisumma", + "invoice": "Lasku | Laskut", + "invoice_number": "Laskunumero", + "ref_number": "Asiakkaan viite", + "contact": "Yhteyshenkilö", + "add_item": "Lisää tuote", + "date": "Päiväys", + "due_date": "Eräpäivä", + "status": "Tila", + "add_tax": "Lisää verokanta", + "amount": "Yhteensä veroton", + "action": "Toiminta", + "notes": "Viesti", + "view": "Esikatsele", + "send_invoice": "Lähetä lasku", + "resend_invoice": "Uudelleen lähetä lasku", + "invoice_template": "Laskumalli", + "conversion_message": "Invoice cloned successful", + "template": "Malli", + "mark_as_sent": "Merkitse lähetetyksi", + "confirm_send_invoice": "Tämä lasku lähetetään sähköpostitse asiakkaalle", + "invoice_mark_as_sent": "Tämä lasku merkitään lähetetyksi", + "confirm_mark_as_accepted": "This invoice will be marked as Accepted", + "confirm_mark_as_rejected": "This invoice will be marked as Rejected", + "confirm_send": "Tämä lasku lähetetään sähköpostitse asiakkaalle", + "invoice_date": "Laskun päivämäärä", + "record_payment": "Kirjaa maksu", + "add_new_invoice": "Lisää uusi lasku", + "update_expense": "Päivitä kulut", + "edit_invoice": "Muokkaa laskua", + "new_invoice": "Uusi lasku", + "save_invoice": "Tallenna lasku", + "update_invoice": "Päivitä lasku", + "add_new_tax": "Lisää uusi verokanta", + "no_invoices": "Ei tallennettuja laskuja!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "Tämä osio sisältää luottelon laskuista.", + "select_invoice": "Valitse lasku", + "no_matching_invoices": "Vastaavia laskuja ei ole!", + "mark_as_sent_successfully": "Lasku merkitty lähetetyksi onnistuneesti", + "invoice_sent_successfully": "Invoice sent successfully", + "cloned_successfully": "Lasku kopioitu onnistuneesti", + "clone_invoice": "Kopioi lasku", + "confirm_clone": "Tämä lasku kopioidaan uudeksi laskuksi", + "item": { + "title": "Nimikkeen Otsikko", + "description": "Kuvaus", + "quantity": "Määrä", + "price": "Hinta", + "discount": "Alennus", + "total": "Yhteensä", + "total_discount": "Alennus yhteensä", + "sub_total": "Välisumma", + "tax": "ALV", + "amount": "Yhteensä veroton", + "select_an_item": "Kirjoita tai klikkaa valitaksesi tuotteen", + "type_item_description": "Kirjoita tuotteen lisäkuvaus (valinnainen)" + }, + "payment_attached_message": "Yksi valituista laskuista on linkitetty maksusuoritukseen. Varmista, että poistat maksusuorituksen ensin, tämän jälkeen voit poistaa varsinaisen laskun", + "confirm_delete": "Et voi palauttaa tätä laskua | Et voi palauttaa näitä laskuja", + "created_message": "Lasku luotiin onnistuneesti", + "updated_message": "Lasku päivitettiin onnistuneesti", + "deleted_message": "Lasku poistettiin onnistuneesti | Laskut poistettiin onnistuneesti", + "marked_as_sent_message": "Lasku merkittiin lähetetyksi onnistuneesti", + "something_went_wrong": "jotain meni vikaan", + "invalid_due_amount_message": "Laskun summa ei voi olla pienempi kuin maksettu summa laskusta. Päivitä lasku tai poista linkitetty maksusuoritus jatkaaksesi." + }, + "recurring_invoices": { + "title": "Recurring Invoices", + "invoices_list": "Recurring Invoices List", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Viewed", + "overdue": "Overdue", + "active": "Active", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, + "payments": { + "title": "Maksut", + "payments_list": "Maksuluettelo", + "record_payment": "Kirjaa maksu", + "customer": "Asiakas", + "date": "Päivämäärä", + "amount": "Summa", + "action": "Toiminta", + "payment_number": "Maksunumero", + "payment_mode": "Maksutapa", + "invoice": "Lasku", + "note": "Viesti", + "add_payment": "Lisää maksu", + "new_payment": "Uusi maksu", + "edit_payment": "Muokkaa maksua", + "view_payment": "Katso maksua", + "add_new_payment": "Lisää uusi maksu", + "send_payment_receipt": "Lähetä maksukuitti", + "send_payment": "Lähetä maksukuitti", + "save_payment": "Tallenna maksu", + "update_payment": "Päivitä maksu", + "payment": "Maksu | Maksut", + "no_payments": "Ei tallennettuja maksuja!", + "not_selected": "Not selected", + "no_invoice": "No invoice", + "no_matching_payments": "Vastaavia maksuja ei ole!", + "list_of_payments": "Tämä osio sisältää luettelon maksuista.", + "select_payment_mode": "Valitse maksutapa", + "confirm_mark_as_sent": "Tämä tarjous merkitään lähetetyksi", + "confirm_send_payment": "Tämä maksu lähetetään sähköpostilla asiakkaalle", + "send_payment_successfully": "Maksu lähetettiin onnistuneesti", + "something_went_wrong": "jotain meni vikaan", + "confirm_delete": "Et voi palauttaa tätä maksua | Et voi palauttaa näitä maksuja", + "created_message": "Maksu luotiin onnistuneesti", + "updated_message": "Maksu päivitettiin onnistuneesti", + "deleted_message": "Maksu poistettiin onnistuneesti | Maksut poistettiin onnistuneesti", + "invalid_amount_message": "Maksun summa ei ole oikein" + }, + "expenses": { + "title": "Kulut", + "expenses_list": "Kululuettelo", + "select_a_customer": "Valitse asiakas", + "expense_title": "Otsikko", + "customer": "Asiakas", + "currency": "Currency", + "contact": "Yhteyshenkilö", + "category": "Luokka", + "from_date": "Päivästä", + "to_date": "Päivään", + "expense_date": "Päivämäärä", + "description": "Kuvaus", + "receipt": "Kuitti", + "amount": "Summa", + "action": "Toiminta", + "not_selected": "Not selected", + "note": "viesti", + "category_id": "Luokan tunnus", + "date": "Päivämäärä", + "add_expense": "Lisää kulu", + "add_new_expense": "Lisää uusi kulu", + "save_expense": "Tallenna kulu", + "update_expense": "Päivitä kulu", + "download_receipt": "Lataa kuitti", + "edit_expense": "Muokkaa kulua", + "new_expense": "Uusi kulu", + "expense": "Kulu | Kulut", + "no_expenses": "Ei tallennettuja kuluja!", + "list_of_expenses": "Tämä osio sisältää listan kuluista.", + "confirm_delete": "Et voi palauttaa tätä kulua | Et voi palauttaa näitä kuluja", + "created_message": "Kulu luotiin onnistuneesti", + "updated_message": "Kulu päivitettiin onnistuneesti", + "deleted_message": "Kulu poistettiin onistuneesti | Kulut poistettiin onnistuneesti", + "categories": { + "categories_list": "Luokatluettelo", + "title": "Otsikko", + "name": "Nimi", + "description": "Kuvaus", + "amount": "Summa", + "actions": "Toiminnot", + "add_category": "Lisää luokka", + "new_category": "Uusi luokka", + "category": "Luokka | Luokat", + "select_a_category": "Valitse luokka" + } + }, + "login": { + "email": "Sähköposti", + "password": "Salasana", + "forgot_password": "Unohditko salasanan?", + "or_signIn_with": "Tai kirjaudu sisään", + "login": "Kirjaudu", + "register": "Rekisteröidy", + "reset_password": "Resetoi salasana", + "password_reset_successfully": "Salasana resetoitiin onnistuneesti", + "enter_email": "Syötä sähköposti", + "enter_password": "Syötä salasana", + "retype_password": "Kirjoita salasana uudelleen" + }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, + "users": { + "title": "Käyttäjät", + "users_list": "Käyttäjäluettelo", + "name": "Nimi", + "description": "Kuvaus", + "added_on": "Lisätty", + "date_of_creation": "Luontipäivä", + "action": "Toiminta", + "add_user": "Lisää käyttäjä", + "save_user": "Tallenna käyttäjä", + "update_user": "Päivitä käyttäjä", + "user": "Käyttäjä | Käyttäjät", + "add_new_user": "Lisää uusi käyttäjä", + "new_user": "Uusi käyttäjä", + "edit_user": "Muokkaa käyttäjää", + "no_users": "Ei tallennettuja käyttäjiä!", + "list_of_users": "Tämä osio sisältää listan käyttäjistä.", + "email": "Sähköposti", + "phone": "Puhelin", + "password": "Salasana", + "user_attached_message": "Käytössä olevaa käyttäjää ei voi poistaa", + "confirm_delete": "Et voi palauttaa tätä käyttäjää | Et voi palauttaa näitä käyttäjiä", + "created_message": "Käyttäjä luotiin onnistuneesti", + "updated_message": "Käyttäjä päivitettiin onnistuneesti", + "deleted_message": "Käyttäjä poistettiin onnistuneesti | Käyttäjä poistettiin onnistuneesti", + "select_company_role": "Select Role for {company}", + "companies": "Companies" + }, + "reports": { + "title": "Raportti", + "from_date": "Päivästä", + "to_date": "Päivään", + "status": "Tila", + "paid": "Maksettu", + "unpaid": "Maksamattomat", + "download_pdf": "Lataa PDF", + "view_pdf": "Katso PDF", + "update_report": "Päivitä Raportti", + "report": "Raportti | Raportit", + "profit_loss": { + "profit_loss": "Tuloslaskelma", + "to_date": "Päivään", + "from_date": "Päivästä", + "date_range": "Valitse päivämäärä alue" + }, + "sales": { + "sales": "Myynti", + "date_range": "Valitse päivämäärä alue", + "to_date": "Päivään", + "from_date": "Päivästä", + "report_type": "Raporttityyppi" + }, + "taxes": { + "taxes": "Verot", + "to_date": "Päivään", + "from_date": "Päivästä", + "date_range": "Valitse päivämäärä alue" + }, + "errors": { + "required": "Kenttä on pakollinen" + }, + "invoices": { + "invoice": "Lasku", + "invoice_date": "Laskun päivämäärä", + "due_date": "Eräpäivä", + "amount": "Summa", + "contact_name": "Yhteyshenkilö", + "status": "Tila" + }, + "estimates": { + "estimate": "Tarjous", + "estimate_date": "Tarjouksen päivämäärä", + "due_date": "Eräpäivä", + "estimate_number": "Tarjousnumero", + "ref_number": "Asiakkaan viite", + "amount": "Summa", + "contact_name": "Yhteyshenkilö", + "status": "Tila" + }, + "expenses": { + "expenses": "Kulut", + "category": "Luokka", + "date": "Päiväys", + "amount": "Summa", + "to_date": "Päivään", + "from_date": "Päivästä", + "date_range": "Valitse päivämäärä alue" + } + }, + "settings": { + "menu_title": { + "account_settings": "Tiliasetukset", + "company_information": "Yritystiedot", + "customization": "Räätälöinti", + "preferences": "Suositukset", + "notifications": "Ilmoitukset", + "tax_types": "Verokannat", + "expense_category": "Kululuokat", + "update_app": "Päivitä ohjelma", + "backup": "Varmuuskopio", + "file_disk": "Levytiedosto", + "custom_fields": "Räätälöidyt kentät", + "payment_modes": "Maksutavat", + "notes": "Viestit", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." + }, + "title": "Asetukset", + "setting": "Asetus | Asetukset", + "general": "Yleiset", + "language": "Kieli", + "primary_currency": "Ensisijainen valuutta", + "timezone": "Aikavyöhyke", + "date_format": "Päivämäärä muoto", + "currencies": { + "title": "Valuutat", + "currency": "Valuutta | Valuutat", + "currencies_list": "Valuuttaluettelo", + "select_currency": "Valitse valuutta", + "name": "Nimi", + "code": "Koodi", + "symbol": "Symboli", + "precision": "Tarkkuus", + "thousand_separator": "Tuhaterotin", + "decimal_separator": "Desimaalierotin", + "position": "Paikka", + "position_of_symbol": "Symbolin paikka", + "right": "Oikealla", + "left": "Vasemmalla", + "action": "Toiminta", + "add_currency": "Lisää valuutta" + }, + "mail": { + "host": "Sähköpostipalvelimen Host nimi", + "port": "Sähköpostipalvelimen portti", + "driver": "Sähköpostiajuri", + "secret": "Salaus", + "mailgun_secret": "Mailgun salaus", + "mailgun_domain": "Verkkotunnus", + "mailgun_endpoint": "Mailgun päätepiste", + "ses_secret": "SES salaus", + "ses_key": "SES avain", + "password": "Sähköpostin salasana", + "username": "Sähköpostin käyttäjänimi", + "mail_config": "Sähköposti asetukset", + "from_name": "Lähettäjän sähköposti nimi", + "from_mail": "Lähettäjän sähköpostiosoite", + "encryption": "Sähköposti salaus", + "mail_config_desc": "Alla olevalla lomakkeella luodaan sähköpostiasetukset sähköpostien lähettämistä varten. Voit myös asettaa kolmansien osapuolien palvelut käyttöön, kuten Sendgrid, SES jne." + }, + "pdf": { + "title": "PDF Asetukset", + "footer_text": "Alaotsikko teksti", + "pdf_layout": "PDF asettelu" + }, + "company_info": { + "company_info": "Yritystiedot", + "company_name": "Yrityksen nimi", + "company_logo": "Yrityksen logo", + "section_description": "Yrityksesi tiedot jotka näytetään laskulla, tarjouksella ja muilla dokumenteilla luotuna Crater:in toimesta.", + "phone": "Puhelin", + "country": "Maa", + "state": "Osavaltio", + "city": "Kaupunki", + "address": "Osoite", + "zip": "Postinumero", + "save": "Tallenna", + "delete": "Delete", + "updated_message": "Yrityksen tiedot päivitettiin onnistuneesti", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" + }, + "custom_fields": { + "title": "Räätälöidyt kentät", + "section_description": "Räätälöi laskut, tarjoukset ja maksukuitit omilla kentillä. Varmista, että käytät allaolevia kenttiä osoite muotoilussa räätälöinti asetus sivulla.", + "add_custom_field": "Lisää räätälöity kenttä", + "edit_custom_field": "Muokkaa räätälöityä kenttää", + "field_name": "Kentän nimi", + "label": "Otsake", + "type": "Tyyppi", + "name": "Nimi", + "slug": "Slug", + "required": "Vaaditaan", + "placeholder": "Paikanpitäjä", + "help_text": "Vihje teksti", + "default_value": "Oletusarvo", + "prefix": "Etuliite", + "starting_number": "Aloitusnumero", + "model": "Malli", + "help_text_description": "Lisää tekstiä helpottamaan käyttäjää ymmärtämään räätälöidyn kentän tarkoitus.", + "suffix": "Liite", + "yes": "Kyllä", + "no": "Ei", + "order": "Järjestys", + "custom_field_confirm_delete": "Et voi palauttaa tätä räätälöityä kenttää", + "already_in_use": "Räätälöity kenttä on jo käytössä", + "deleted_message": "Räätälöity kenttä poistettiin onnistuneesti", + "options": "Vaihtoehdot", + "add_option": "Lisää vaihtoehtoja", + "add_another_option": "Lisää toinen vaihtoehto", + "sort_in_alphabetical_order": "Järjestä aakkosittain", + "add_options_in_bulk": "Lisää vaihtoehtoja kerralla", + "use_predefined_options": "Käytä määriteltyjä vaihtoehtoja", + "select_custom_date": "Valitse mukautettu päivämäärä", + "select_relative_date": "Valitse suhteellinen päivämäärä", + "ticked_by_default": "Valittu oletuksena", + "updated_message": "Räätälöity kenttä päivitettiin onnistuneesti", + "added_message": "räätälöity kenttä lisättiin onnistuneesti", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." + }, + "customization": { + "customization": "räätälöinti", + "updated_message": "Yrityksen tiedot päivitettiin onnistuneesti", + "save": "Tallenna", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", + "invoices": { + "title": "Laskut", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", + "default_invoice_email_body": "Vakioteksti sähköpostiin laskulle", + "company_address_format": "Yrityksen osoite muoto", + "shipping_address_format": "Toimitusosoitteen muoto", + "billing_address_format": "Laskutusosoitteen muoto", + "invoice_email_attachment": "Send invoices as attachments", + "invoice_email_attachment_setting_description": "Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." + }, + "estimates": { + "title": "Tarjoukset", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", + "default_estimate_email_body": "Vakioteksti sähköpostiin tarjoukselle", + "company_address_format": "Yrityksen osoite muoto", + "shipping_address_format": "Toimitusosoitteen muoto", + "billing_address_format": "Laskutusosoiteen muoto", + "estimate_email_attachment": "Send estimates as attachments", + "estimate_email_attachment_setting_description": "Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" + }, + "payments": { + "title": "Maksut", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", + "default_payment_email_body": "Vakioteksti sähköpostiin suoritukselle", + "company_address_format": "Yrityksen osoite muoto", + "from_customer_address_format": "Vastaanottajan osoitetieto kentät", + "payment_email_attachment": "Send payments as attachments", + "payment_email_attachment_setting_description": "Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.", + "payment_settings_updated": "Payment Settings updated successfully" + }, + "items": { + "title": "Tuotteet", + "units": "Yksiköt", + "add_item_unit": "Lisää tuotteen yksikkö", + "edit_item_unit": "Muokkaa tuotteen yksikköä", + "unit_name": "Yksikön nimi", + "item_unit_added": "Nimikkeen yksikkö lisätty", + "item_unit_updated": "Nimikkeen yksikkö päivitetty", + "item_unit_confirm_delete": "Et voi palauttaa tätä tuotteen yksikköä", + "already_in_use": "Nimikkeen yksikkö on jo käytössä", + "deleted_message": "Nimikkeen yksikkö poistettiin onnistuneesti" + }, + "notes": { + "title": "Viestit", + "description": "Säästä aikaa luomalla viestejä, joita voit käyttää laskuilla, tarjouksilla ja maksuissa.", + "notes": "Viestit", + "type": "Tyyppi", + "add_note": "Lisää viesti", + "add_new_note": "Lisää uusi viesti", + "name": "Nimi", + "edit_note": "Muokkaa viestiä", + "note_added": "Viesti lisätty onnistuneesti", + "note_updated": "Viesti päivitetty onnistuneesti", + "note_confirm_delete": "Et voi palauttaa tätä viestiä", + "already_in_use": "Viesti on jo käytössä", + "deleted_message": "Viesti poistettiin onnistuneesti" + } + }, + "account_settings": { + "profile_picture": "Profiili kuva", + "name": "Nimi", + "email": "Sähköposti", + "password": "Salasana", + "confirm_password": "Vahvista salasana", + "account_settings": "Tilin asetukset", + "save": "Tallenna", + "section_description": "Voit päivittää nimen, sähköpostin ja salasanan käyttäen allaolevaa lomaketta.", + "updated_message": "Tili asetukset päivitetty onnistuneesti" + }, + "user_profile": { + "name": "Nimi", + "email": "Sähköposti", + "password": "Salasana", + "confirm_password": "Vahvista salasana" + }, + "notification": { + "title": "Ilmoitus", + "email": "Lähetä ilmoitus vastaanottajalle", + "description": "Mitkä sähköposti ilmoitukset haluat vastaanottaa jos joku muuttuu?", + "invoice_viewed": "Lasku katsottu", + "invoice_viewed_desc": "Kun asiakas katsoo laskun, joka on lähetetty crater ohjauspanelin kautta.", + "estimate_viewed": "Tarjous katsottu", + "estimate_viewed_desc": "Kun asiakas katsoo tarjouksen, joka on lähetetty crater ohjauspanelin kautta.", + "save": "Tallenna", + "email_save_message": "Sähköposti tallennettu onnistuneesti", + "please_enter_email": "Syötä sähköpostiosoite" + }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, + "tax_types": { + "title": "ALV Verokannat", + "add_tax": "Lisää ALV verokanta", + "edit_tax": "Muokkaa ALV verokantaa", + "description": "Voit luoda tai poistaa ALV verokantoja tarvittaessa. Crater tukee laskurivikohtaista ALV:n esittämistä yhtä hyvin kuin näyttämistä koko laskulle.", + "add_new_tax": "Lisää uusi ALV verokanta", + "tax_settings": "ALV Verokanta asetukset", + "tax_per_item": "ALV per tuote", + "tax_name": "ALV Verokannan nimi", + "compound_tax": "Yhdistetty vero", + "percent": "Prosentti", + "action": "Toiminta", + "tax_setting_description": "Aktivoi tämä jos haluat näyttää ALV:n laskurivikohtaisesti. Oletuksena, verot lisätään suoraan loppusummaan.", + "created_message": "ALV Verokanta luotiin onnistuneesti", + "updated_message": "ALV Verokanta päivitettiin onnistuneesti", + "deleted_message": "ALV Verokanta poistettiin onnistuneesti", + "confirm_delete": "Et voi palauttaa tätä ALV verokantaa", + "already_in_use": "ALV Verokanta on jo käytössä" + }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, + "expense_category": { + "title": "Kululuokat", + "action": "Toiminta", + "description": "Luokkia tarvitaan kulujen syöttöön. Voit lisätä tai poistaa luokkia tarpeen mukaan.", + "add_new_category": "Lisää uusi luokka", + "add_category": "Lisää luokka", + "edit_category": "Muokkaa luokkaa", + "category_name": "Luokan nimi", + "category_description": "Kuvaus", + "created_message": "Kululuokka luotu onnistuneesti", + "deleted_message": "Kululuokka poistettiin onnistuneesti", + "updated_message": "Kululuokka päivitettiin onnistuneesti", + "confirm_delete": "Et voi palauttaa tätä kululuokkaa", + "already_in_use": "Luokka on jo käytössä" + }, + "preferences": { + "currency": "Valuutta", + "default_language": "Oletuskieli", + "time_zone": "Aikavyöhyke", + "fiscal_year": "Tilikausi", + "date_format": "Päivämäärä formaatti", + "discount_setting": "Alennusten määritys", + "discount_per_item": "Alennus per tuote ", + "discount_setting_description": "Aktivoi tämä jos haluat lisätä alennuksen rivikohtaisesti. Oletuksena, Alennus lisätään suoraan laskun kokonaissummaan.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", + "save": "Tallenna", + "preference": "Suositus | Suositukset", + "general_settings": "Oletus suositus järjestelmälle.", + "updated_message": "Suositukset päivitettiin onnistuneesti", + "select_language": "Valitse kieli", + "select_time_zone": "Valitse aikavyöhyke", + "select_date_format": "Valitse päivämäärä formaatti", + "select_financial_year": "Valitse tilikausi", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" + }, + "update_app": { + "title": "Päivitä ohjelma", + "description": "Voit helposti päivittää Crater ohjelman uuteen versioon klikkaamalla allaolevaa painiketta", + "check_update": "Tarkista uudet päivitykset", + "avail_update": "Uusi päivitys saatavilla", + "next_version": "Seuraava versio", + "requirements": "Vaatimukset", + "update": "Päivitä nyt", + "update_progress": "Päivitys menossa...", + "progress_text": "Se ottaa ainoastaan muutaman minuutin. Älä päivitä näyttöä tai sulje ikkunaa ennenkuin päivitys on valmis", + "update_success": "Ohjelma on päivitetty! Odota kunnes selaimen ikkuna päivittyy automaattisesti.", + "latest_message": "Ei päivitystä saatavilla! Sinulla on viimeisin versio.", + "current_version": "Nykyinen versio", + "download_zip_file": "Lataa ZIP tiedosto", + "unzipping_package": "Puretaan pakettia", + "copying_files": "Kopioi tiedostoja", + "deleting_files": "Deleting Unused files", + "running_migrations": "Suoritetaan migraatio", + "finishing_update": "Lopetetaan päivitys", + "update_failed": "Päivitys epäonnistui", + "update_failed_text": "Sorry! Päivityksesi epäonnistui : {step} vaiheessa", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." + }, + "backup": { + "title": "Varmuuskopio | Varmuuskopiot", + "description": "Varmuuskopio on ZIP-tiedosto, joka sisältää kaikki tiedostot hakemistoista jotka määrittelet tietokanta määrityksen mukana", + "new_backup": "Lisää uusi varmuuskopio", + "create_backup": "Luo Varmuuskopio", + "select_backup_type": "Valitse varmuuskopio tyyppi", + "backup_confirm_delete": "Et voi palauttaa tätä varmuuskopiota", + "path": "polku", + "new_disk": "Uusi levy", + "created_at": "luotu", + "size": "koko", + "dropbox": "Dropbox", + "local": "paikallinen", + "healthy": "kunto", + "amount_of_backups": "Varmuuskopioiden määrä", + "newest_backups": "uusimmat varmuuskopiot", + "used_storage": "käytetty tila", + "select_disk": "Valitse asema", + "action": "Toiminta", + "deleted_message": "Varmuuskopio poistettiin onnistuneesti", + "created_message": "Varmuuskopio luotiin onnistuneesti", + "invalid_disk_credentials": "Väärät käyttäjäasetukset valitulle levylle" + }, + "disk": { + "title": "Tiedostolevy | Tiedostolevyt", + "description": "Oletuksena, Crater käyttää paikallisia levyjä varmuuskopioiden, profiilikuvien ja muiden kuvien tallentamiseen. Voit määrittää useamman kuin yhden tallennus vaihtoehdoista, kuten DigitalOcean, S3 ja Dropbox mieltymystesi mukaan.", + "created_at": "luotu", + "dropbox": "Dropbox", + "name": "Nimi", + "driver": "Ohjain", + "disk_type": "Tyyppi", + "disk_name": "Levy nimi", + "new_disk": "Lisää uusi levy", + "filesystem_driver": "Tiedostojärjestelmä ohjain", + "local_driver": "paikallinen ohjain", + "local_root": "paikallinen juurihakemisto", + "public_driver": "Julkinen Ajuri", + "public_root": "Julkinen juurihakemisto", + "public_url": "Julkinen URL-osoite", + "public_visibility": "Julkinen Näkyvyys", + "media_driver": "Median Ajuri", + "media_root": "Median juurihakemisto", + "aws_driver": "AWS Ajuri", + "aws_key": "AWS avain", + "aws_secret": "AWS salaus", + "aws_region": "AWS regioona", + "aws_bucket": "AWS hakemisto", + "aws_root": "AWS juurihakemisto", + "do_spaces_type": "Do Spaces tyyppi", + "do_spaces_key": "Do Spaces avain", + "do_spaces_secret": "Do Spaces salaus", + "do_spaces_region": "Do Spaces regioona", + "do_spaces_bucket": "Do Spaces hakemisto", + "do_spaces_endpoint": "Do Spaces päätepiste", + "do_spaces_root": "Do Spaces juurihakemisto", + "dropbox_type": "Dropbox tyyppi", + "dropbox_token": "Dropbox tunnus", + "dropbox_key": "Dropbox avain", + "dropbox_secret": "Dropbox salaus", + "dropbox_app": "Dropbox sovellus", + "dropbox_root": "Dropbox juurihakemisto", + "default_driver": "Oletus Ajuri", + "is_default": "OLETUS", + "set_default_disk": "Aseta oletuslevy", + "set_default_disk_confirm": "This disk will be set as default and all the new PDFs will be saved on this disk", + "success_set_default_disk": "Levy määritettiin oletukseksi onnistuneesti", + "save_pdf_to_disk": "Tallenna PDF tiedostot levylle", + "disk_setting_description": " Aktivoi tämä, jos haluat tallentaa PDF kopiot laskuista, tarjouksista & maksukuiteista oletus leveylle automaattisesti. Käyttämällä tätä vaihtoehtoa tiedostojen latausaika nopeutuu kun esikatsellaan PDF tiedostoja.", + "select_disk": "Valitse levy", + "disk_settings": "Levyasetukset", + "confirm_delete": "Tämä ei vaikuta olemassaoleviin tiedostoihin & kansioihin valitulla levyllä, mutta leveymääritykset poistetaan Craterista", + "action": "Toiminta", + "edit_file_disk": "Muokkaa tiedostolevyä", + "success_create": "Levy lisättiin onistuneesti", + "success_update": "Levy päivitettiin onnistuneesti", + "error": "Levyn lisäys epäonnistui", + "deleted_message": "Tiedostolevy poistettiin onnistuneesti", + "disk_variables_save_successfully": "Levy määritettiin onnistuneesti", + "disk_variables_save_error": "Levyn määritys epäonnistui.", + "invalid_disk_credentials": "Virheelliset tunnistetiedot valitulle levylle" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." + } + }, + "wizard": { + "account_info": "Tilitiedot", + "account_info_desc": "Alla olevia tietoja käytetään pääkäyttäjän (Administraattori) luomiseksi. Voit päivittää tietoja koska tahansa sisäänkirjautumisen jälkeen.", + "name": "Nimi", + "email": "Sähköposti", + "password": "Salasana", + "confirm_password": "Varmista salasana", + "save_cont": "Tallenna & Jatka", + "company_info": "Yritystiedot", + "company_info_desc": "Tämä informaatio esitetään laskulla. Huomioi, että voit editoida näitä myöhemmin asetuksissa.", + "company_name": "Yrityksen nimi", + "company_logo": "Yrityksen logo", + "logo_preview": "Logon esikatselu", + "preferences": "Asetukset", + "preferences_desc": "Oletusasetukset järjestelmälle.", + "currency_set_alert": "The company's currency cannot be changed later.", + "country": "Maa", + "state": "Osavaltio", + "city": "Kaupunki", + "address": "Osoite", + "street": "Katuosoite1 | Katuosoite2", + "phone": "Puhelin", + "zip_code": "Postinumero", + "go_back": "Palaa takaisin", + "currency": "Valuutta", + "language": "Kieli", + "time_zone": "Aikavyöhyke", + "fiscal_year": "Tilikausi", + "date_format": "päivämäärä formaatti", + "from_address": "Lähettäjän osoite", + "username": "Käyttäjänimi", + "next": "Seuraava", + "continue": "Jatka", + "skip": "Ohita", + "database": { + "database": "Sivuston URL-osoite & Tietokanta", + "connection": "Tietokantayhteys", + "host": "Tietokannan Host nimi", + "port": "Tietokannan porttinumero", + "password": "tietokannan salasana", + "app_url": "Ohjelman URL-osoite", + "app_domain": "Ohjelman Domain nimi", + "username": "Tietokannan käyttäjä nimi", + "db_name": "Tietokannan nimi", + "db_path": "tietokannan hakemistopolku", + "desc": "Luo tietokanta serverillesi ja aseta käyttäjätiedot allaolevaan lomakkeeseen." + }, + "permissions": { + "permissions": "Käyttöoikeudet", + "permission_confirm_title": "Oletko varma, että haluat jatkaa?", + "permission_confirm_desc": "Hakemiston oikeuksien tarkistus epäonnistui", + "permission_desc": "Alla on luettelo kansion käyttöoikeuksista joita tarvitaan, että ohejlma toimisi. Jos käyttöoikeus tarkistus epäonnistui, varmista toimivuus päivittämällä hakemiston käyttöoikeudet." + }, + "verify_domain": { + "title": "Domain Verification", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Verify Now", + "success": "Domain Verify Successfully.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verify And Continue" + }, + "mail": { + "host": "Sähköpostiserverin Host nimi", + "port": "Sähköpostiserverin Portti numero", + "driver": "Sähköpostiajuri", + "secret": "Salaus", + "mailgun_secret": "Mailgun salaus", + "mailgun_domain": "Domain nimi", + "mailgun_endpoint": "Mailgun päätepiste", + "ses_secret": "SES salaus", + "ses_key": "SES avain", + "password": "Sähköpostin salasana", + "username": "Sähköpostin käyttäjänimi", + "mail_config": "Sähköpostimääritys", + "from_name": "Lähettäjän sähköposti nimi", + "from_mail": "Lähettäjän sähköpostiosoite", + "encryption": "Sähköpostin salaus", + "mail_config_desc": "Alla on lomake sähköpostiajurin määrittelyyn, että ohjelma voi lähettää sähköposteja. Voit myös määrittää kolmansien osapuolien tarjojien, SES jne." + }, + "req": { + "system_req": "Systeemivaatimukset", + "php_req_version": "Php (versio {version} vaaditaan)", + "check_req": "Tarkista vaatimukset", + "system_req_desc": "Craterissa on muutamia palvelimen vaatimuksia. Varmista, että palvelimellasi on vaadittu php versio ja kaikki liitännäiset mainittuna alla." + }, + "errors": { + "migrate_failed": "Migraatio epäonnistui", + "database_variables_save_error": "Määrityksiä ei voitu kirjoittaa .env tiedostoon. Tarkista tiedoston käyttöoikeudet", + "mail_variables_save_error": "Sähköposti määritys epäonnistui.", + "connection_failed": "Tietokantayhteys epäonnistui", + "database_should_be_empty": "Tietokannan pitäisi olla tyhjä" + }, + "success": { + "mail_variables_save_successfully": "Sähköposti määritettiin onnistuneesti", + "database_variables_save_successfully": "Tietokanta määritettiin onnistuneesti." + } + }, + "validation": { + "invalid_phone": "Puhelinnumeron muoto ei ole oikea", + "invalid_url": "Väärä www osoite (esim.: http://www.crater.com)", + "invalid_domain_url": "Väärä www osoite (ex: crater.com)", + "required": "Kenttä on pakollinen", + "email_incorrect": "Väärä sähköpostin muoto.", + "email_already_taken": "Tämä sähköposti on jo käytössä.", + "email_does_not_exist": "Käyttäjää tällä sähköpostiosoiteella ei löydy", + "item_unit_already_taken": "Tämä tuotteen yksikön nimi on jo käytössä", + "payment_mode_already_taken": "Tämä maksutavan nimi on jo käytössä", + "send_reset_link": "Lähetä resetointi linkki", + "not_yet": "Eikö tullut? Lähetä uudestaan", + "password_min_length": "Salasanan pitää sisältää {count} merkkiä", + "name_min_length": "Nimen pitää olla vähintäin {count} kirjainta.", + "prefix_min_length": "Prefix must have at least {count} letters.", + "enter_valid_tax_rate": "Syötä validi veroprosentti", + "numbers_only": "Numeroita ainoastaan.", + "characters_only": "Kirjaimia ainoastaan.", + "password_incorrect": "Salasanojen pitää olla identtiset", + "password_length": "Salasanan pitää olla vähintään {count} merkkiä pitkä.", + "qty_must_greater_than_zero": "Määrän pitää olla suurempi kuin 0.", + "price_greater_than_zero": "Hinnan pitää olla suurempi kuin 0.", + "payment_greater_than_zero": "Maksun pitää olla suurempi kuin 0.", + "payment_greater_than_due_amount": "Syötetty maksu on suurempi kuin tämän laskun avoin summa.", + "quantity_maxlength": "Määrän ei pitäisi olla suurempi kuin 20 numeroa.", + "price_maxlength": "Hinnan ei pitäisi olla suurempi kuin 20 numeroa.", + "price_minvalue": "Hinnan pitäisi olla suurempi kuin 0.", + "amount_maxlength": "Määrän ei pitäisi olla suurempi kuin 20 numeroa.", + "amount_minvalue": "Määrän pitäisi olla suurempi kuin 0.", + "discount_maxlength": "Discount should not be greater than max discount", + "description_maxlength": "Description should not be greater than 255 characters.", + "subject_maxlength": "Viestin otsikon ei pitäisi olla enemmän kuin 100 merkkiä.", + "message_maxlength": "Viesti ei saisi olla pidempi kuin 255 merkkiä.", + "maximum_options_error": "Maksimi määrä {max} valinnointa valittuna. Poista ensi valittu optio valitaksesi toisen.", + "notes_maxlength": "Notes should not be greater than 65,000 characters.", + "address_maxlength": "Osoiterivin pituus ei saisi ylittää 255 merkkiä.", + "ref_number_maxlength": "Asiakkaan viitteen pituus ei saisi ylittää 255 merkkiä.", + "prefix_maxlength": "Etuliitten pituus ei saisi ylittää 5 merkkiä.", + "something_went_wrong": "jotain meni pieleen", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" + }, + "pdf_estimate_label": "Tarjous", + "pdf_estimate_number": "Tarjousnumero", + "pdf_estimate_date": "Tarjouksen päiväys", + "pdf_estimate_expire_date": "Voimassaolo päivä", + "pdf_invoice_label": "Lasku", + "pdf_invoice_number": "Laskunumero", + "pdf_invoice_date": "Laskun päiväys", + "pdf_invoice_due_date": "Eräpäivä", + "pdf_notes": "Viesti", + "pdf_items_label": "Tuotenimi", + "pdf_quantity_label": "Määrä", + "pdf_price_label": "Hinta", + "pdf_discount_label": "Alennus", + "pdf_amount_label": "Yhteensä veroton", + "pdf_subtotal": "Välisumma", + "pdf_total": "Yhteensä", + "pdf_payment_label": "Payment", + "pdf_payment_receipt_label": "SUORITUKSEN KUITTI", + "pdf_payment_date": "Maksupäivä", + "pdf_payment_number": "Maksunumero", + "pdf_payment_mode": "Maksutapa", + "pdf_payment_amount_received_label": "Maksettu määrä", + "pdf_expense_report_label": "KULURAPORTTI", + "pdf_total_expenses_label": "KULUT YHTEENSÄ", + "pdf_profit_loss_label": "TULOSLASKELMA", + "pdf_sales_customers_label": "Sales Customer Report", + "pdf_sales_items_label": "Sales Item Report", + "pdf_tax_summery_label": "Tax Summary Report", + "pdf_income_label": "TULOT", + "pdf_net_profit_label": "NETTOTULO", + "pdf_customer_sales_report": "Myyntiraportti: Asiakkaittain", + "pdf_total_sales_label": "KOKONAISMYYNTI", + "pdf_item_sales_label": "Myyntiraportti: Nimikkeittäin", + "pdf_tax_report_label": "ALV RAPORTTI", + "pdf_total_tax_label": "ALV YHTEENSÄ", + "pdf_tax_types_label": "ALV Verokannat", + "pdf_expenses_label": "Kulut", + "pdf_bill_to": "Laskutetaan,", + "pdf_ship_to": "Toimitetaan,", + "pdf_received_from": "Vastaanotettu:", + "pdf_tax_label": "Tax" +} diff --git a/resources/scripts/locales/fr.json b/resources/scripts/locales/fr.json index 69c08a388..46c7169cf 100644 --- a/resources/scripts/locales/fr.json +++ b/resources/scripts/locales/fr.json @@ -4,67 +4,72 @@ "customers": "Clients", "items": "Articles", "invoices": "Factures", + "recurring-invoices": "Factures récurrentes", "expenses": "Dépenses", "estimates": "Devis", "payments": "Paiements", "reports": "Rapports", "settings": "Paramètres", - "logout": "Se déconnecter", - "users": "Utilisateurs" + "logout": "Déconnexion", + "users": "Utilisateurs", + "modules": "Modules" }, "general": { "add_company": "Ajouter une entreprise", - "view_pdf": "Voir PDF", + "view_pdf": "Afficher le PDF", "copy_pdf_url": "Copier l'URL du PDF", "download_pdf": "Télécharger le PDF", - "save": "Sauvegarder", + "save": "Enregistrer", "create": "Créer", "cancel": "Annuler", - "update": "Mise à jour", - "deselect": "Retirer", + "update": "Mettre à jour", + "deselect": "Enlever", "download": "Télécharger", - "from_date": "A partir de la date", - "to_date": "À ce jour", - "from": "De", - "to": "À", + "from_date": "Du", + "to_date": "Au", + "from": "Du", + "to": "Au", + "ok": "Ok", + "yes": "Oui", + "no": "Non", "sort_by": "Trier par", "ascending": "Ascendant", "descending": "Descendant", - "subject": "matière", - "body": "Corps du message", + "subject": "Objet", + "body": "Message", "message": "Message", "send": "Envoyer", + "preview": "Aperçu", "go_back": "Retourner", - "back_to_login": "Retour à l'écran de connexion ?", - "home": "Accueil", - "filter": "Filtre", - "delete": "Effacer", + "back_to_login": "Revenir à la page de connexion ?", + "home": "Tableau de bord", + "filter": "Filtrer", + "delete": "Supprimer", "edit": "Modifier", - "view": "Voir", - "add_new_item": "Ajoute un nouvel objet", - "clear_all": "Tout effacer", - "showing": "Montant", - "of": "de", + "view": "Afficher", + "add_new_item": "Ajouter une ligne", + "clear_all": "Tout supprimer", + "showing": "Affichage ", + "of": "sur", "actions": "Actions", "subtotal": "SOUS-TOTAL", "discount": "REMISE", - "fixed": "Fixée", + "fixed": "Fixe", "percentage": "Pourcentage", - "tax": "IMPÔT", - "total_amount": "MONTANT TOTAL", + "tax": "TAXE", + "total_amount": "TOTAL ", "bill_to": "Facturer à", - "ship_to": "Envoyez à", - "due": "Dû", + "ship_to": "Expédier à", + "due": "En cours", "draft": "Brouillon", "sent": "Envoyée", "all": "Tout", "select_all": "Tout sélectionner", + "select_template": "Modèle", "choose_file": "Cliquez ici pour choisir un fichier", "choose_template": "Choisissez un modèle", "choose": "Choisir", - "remove": "Retirer", - "powered_by": "Propulsé par", - "bytefury": "Bytefury", + "remove": "Supprimer", "select_a_status": "Sélectionnez un statut", "select_a_tax": "Sélectionnez une taxe", "search": "Rechercher", @@ -73,10 +78,10 @@ "no_tax_found": "Aucune taxe trouvée !", "four_zero_four": "404", "you_got_lost": "Oups! Vous vous êtes perdus!", - "go_home": "Retour à l'accueil", - "test_mail_conf": "Tester la configuration", - "send_mail_successfully": "Mail envoyé avec succès", - "setting_updated": "Paramètres mis à jour avec succès", + "go_home": "Retour au tableau de bord", + "test_mail_conf": "Envoyer un email de test", + "send_mail_successfully": "Email envoyé", + "setting_updated": "Paramètres mis à jour", "select_state": "Sélectionnez l'état", "select_country": "Choisissez le pays", "select_city": "Sélectionnez une ville", @@ -84,111 +89,150 @@ "street_2": "Rue # 2", "action_failed": "Action : échoué", "retry": "Réessayez", - "choose_note": "Choisissez une note", - "no_note_found": "Aucune note trouvée", - "insert_note": "Insérer une note" + "choose_note": "Choisissez une note de bas de page", + "no_note_found": "Aucune note de bas de page trouvée", + "insert_note": "Insérer une note", + "copied_pdf_url_clipboard": "L'adresse du PDF a été copiée.", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Documents", + "do_you_wish_to_continue": "Voulez-vous continuer ?", + "note": "Note de bas de page", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { "select_year": "Sélectionnez l'année", "cards": { - "due_amount": "Montant dû", + "due_amount": "Encours clients", "customers": "Clients", "invoices": "Factures", - "estimates": "Devis" + "estimates": "Devis", + "payments": "Payments" }, "chart_info": { "total_sales": "Ventes", - "total_receipts": "Reçus", + "total_receipts": "Recettes", "total_expense": "Dépenses", - "net_income": "Revenu net", + "net_income": "Résultat", "year": "Sélectionnez l'année" }, "monthly_chart": { "title": "Recettes et dépenses" }, "recent_invoices_card": { - "title": "Factures dûes", - "due_on": "Due le", + "title": "Factures en cours", + "due_on": "Échéance", "customer": "Client", - "amount_due": "Montant dû", + "amount_due": "Montant", "actions": "Actions", - "view_all": "Voir tout" + "view_all": "Tout afficher" }, "recent_estimate_card": { "title": "Devis récents", - "date": "Date", + "date": "Expiration", "customer": "Client", - "amount_due": "Montant dû", + "amount_due": "Montant", "actions": "Actions", - "view_all": "Voir tout" + "view_all": "Tout afficher" } }, "tax_types": { "name": "Nom", "description": "Description", - "percent": "Pourcent", - "compound_tax": "Taxe composée" + "percent": "Pourcentage", + "compound_tax": "Taxe empilée" }, "global_search": { - "search": "Rechercher...", - "customers": "Les clients", + "search": "Rechercher", + "customers": "Clients", "users": "Utilisateurs", "no_results_found": "Aucun résultat" }, + "company_switcher": { + "label": "CHANGER DE SOCIÉTÉ", + "no_results_found": "Aucun résultat", + "add_new_company": "Ajouter une société", + "new_company": "Nouvelle société", + "created_message": "Société créée" + }, + "dateRange": { + "today": "Aujourd'hui", + "this_week": "Cette semaine", + "this_month": "Ce mois", + "this_quarter": "Ce trimestre", + "this_year": "Cette année", + "previous_week": "Semaine précédente", + "previous_month": "Mois précédent", + "previous_quarter": "Trimestre précédent", + "previous_year": "Année précédente", + "custom": "Personnalisée" + }, "customers": { "title": "Clients", + "prefix": "Code client", "add_customer": "Ajouter un client", "contacts_list": "Liste de clients", "name": "Nom", "mail": "Email | Emails", - "statement": "Statement", - "display_name": "Statut et Nom de la société", - "primary_contact_name": "Nom du contact principal", - "contact_name": "Nom du contact", + "statement": "Déclaration", + "display_name": "Nom", + "primary_contact_name": "Contact principal", + "contact_name": "Contact", "amount_due": "Montant dû", "email": "Email", "address": "Adresse", "phone": "Téléphone", "website": "Site Internet", "overview": "Aperçu", + "invoice_prefix": "Préfixe de facture", + "estimate_prefix": "Préfixe des devis", + "payment_prefix": "Préfixe de paiement", "enable_portal": "Activer le portail", "country": "Pays", "state": "État", "city": "Ville", "zip_code": "Code postal", "added_on": "Ajouté le", - "action": "action", + "action": "Action", "password": "Mot de passe", + "confirm_password": "Confirmez le mot de passe", "street_number": "Numéro de rue", "primary_currency": "Devise principale", "description": "Description", - "add_new_customer": "Ajouter un nouveau client", - "save_customer": "Enregistrer le client", - "update_customer": "Mettre à jour le client", + "add_new_customer": "Ajouter un client", + "save_customer": "Enregistrer", + "update_customer": "Enregistrer", "customer": "Client | Clients", "new_customer": "Nouveau client", "edit_customer": "Modifier le client", "basic_info": "Informations de base", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", "billing_address": "Adresse de facturation", "shipping_address": "Adresse de livraison", "copy_billing_address": "Copier depuis l'adresse de facturation", "no_customers": "Vous n’avez pas encore de clients !", - "no_customers_found": "Aucun client !", - "no_contact": "No contact", - "no_contact_name": "No contact name", - "list_of_customers": "Cette section contiendra la liste des clients.", + "no_customers_found": "Aucun client", + "no_contact": "-", + "no_contact_name": "-", + "list_of_customers": "Ajoutez des clients et retrouvez-les ici.", "primary_display_name": "Nom d'affichage principal", "select_currency": "Sélectionnez la devise", "select_a_customer": "Sélectionnez un client", - "type_or_click": "Tapez ou cliquez pour sélectionner", - "new_transaction": "Nouvelle transaction", + "type_or_click": "Sélectionnez un article", + "new_transaction": "Ajouter une opération", "no_matching_customers": "Il n'y a aucun client correspondant !", "phone_number": "Numéro de téléphone", "create_date": "Date de création", "confirm_delete": "Vous ne pourrez pas récupérer ce client et les devis, factures et paiements associés. | Vous ne serez pas en mesure de récupérer ces clients et les devis, factures et paiements associés.", - "created_message": "Client créé avec succès", - "updated_message": "Client mis à jour avec succès", - "deleted_message": "Client supprimé avec succès | Les clients supprimés avec succès" + "created_message": "Client créé", + "updated_message": "Client mis à jour", + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Client supprimé | Clients supprimés", + "edit_currency_not_allowed": "Impossible de changer de devise une fois les transactions créées." }, "items": { "title": "Articles", @@ -199,45 +243,47 @@ "added_on": "Ajouté le", "price": "Prix", "date_of_creation": "Date de création", - "not_selected": "No item selected", - "action": "action", - "add_item": "Ajouter un article", - "save_item": "Enregistrer l'article", - "update_item": "Mettre à jour l'article", + "not_selected": "Aucun article sélectionné", + "action": "Action", + "add_item": "Nouvel article", + "save_item": "Enregistrer", + "update_item": "Enregistrer", "item": "Article | Articles", - "add_new_item": "Ajoute un nouvel objet", + "add_new_item": "Ajouter un article", "new_item": "Nouvel article", - "edit_item": "Modifier larticle", - "no_items": "Aucun article !", - "list_of_items": "Cette section contiendra la liste des éléments.", + "edit_item": "Modifier cet article", + "no_items": "Aucun article", + "list_of_items": "Ajoutez des articles et retrouvez-les ici", "select_a_unit": "Sélectionnez l'unité", "taxes": "Taxes", "item_attached_message": "Impossible de supprimer un article déjà utilisé", "confirm_delete": "Vous ne pourrez pas récupérer cet article | Vous ne pourrez pas récupérer ces objets", - "created_message": "Article créé avec succès", - "updated_message": "Article mis à jour avec succès", + "created_message": "Article créé", + "updated_message": "Article mis à jour", "deleted_message": "Article supprimé avec succès | Articles supprimés avec succès" }, "estimates": { "title": "Devis", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", "estimate": "Devis | Devis", "estimates_list": "Liste des devis", - "days": "jours jours", - "months": "mois mois", - "years": "années Année", - "all": "Tout", + "days": "{days} jours", + "months": "{months} mois", + "years": "{years} Année", + "all": "Tous", "paid": "Payé", "unpaid": "Non payé", "customer": "Client", "ref_no": "Réf.", "number": "N°", - "amount_due": "MONTANT DÛ", + "amount_due": "MONTANT", "partially_paid": "Partiellement payé", "total": "Total", "discount": "Remise", "sub_total": "Sous-total", "estimate_number": "N°", - "ref_number": "Numéro de référence", + "ref_number": "Référence", "contact": "Contact", "add_item": "Ajouter un article", "date": "Date", @@ -246,126 +292,136 @@ "status": "Statut", "add_tax": "Ajouter une taxe", "amount": "Montant", - "action": "action", - "notes": "Remarques", + "action": "Action", + "notes": "Notes de bas de page", "tax": "Taxe", "estimate_template": "Modèle de devis", "convert_to_invoice": "Convertir en facture", "mark_as_sent": "Marquer comme envoyé", - "send_estimate": "Envoyer le devis", + "send_estimate": "Envoyer par email", "resend_estimate": "Renvoyer le devis", "record_payment": "Enregistrer un paiement", - "add_estimate": "Ajouter un devis", - "save_estimate": "Sauvegarder le devis", - "confirm_conversion": "Vous souhaitez convertir ce devis en facture?", + "add_estimate": "Nouveau devis", + "save_estimate": "Enregistrer", + "confirm_conversion": "Ce devis sera utilisé pour créer une nouvelle facture.", "conversion_message": "Conversion réussie", - "confirm_send_estimate": "Ce devis sera envoyée par courrier électronique au client.", + "confirm_send_estimate": "Ce devis sera envoyée par email au client", "confirm_mark_as_sent": "Ce devis sera marqué comme envoyé", "confirm_mark_as_accepted": "Ce devis sera marqué comme accepté", "confirm_mark_as_rejected": "Ce devis sera marqué comme rejeté", "no_matching_estimates": "Aucune estimation correspondante !", - "mark_as_sent_successfully": "Devis marquée comme envoyée avec succès", - "send_estimate_successfully": "Devis envoyé avec succès", + "mark_as_sent_successfully": "Devis marqué comme envoyé", + "send_estimate_successfully": "Devis envoyé", "errors": { "required": "Champ requis" }, "accepted": "Accepté", - "rejected": "Rejected", + "rejected": "Refusé", + "expired": "Expired", "sent": "Envoyé", "draft": "Brouillon", + "viewed": "Viewed", "declined": "Refusé", "new_estimate": "Nouveau devis", - "add_new_estimate": "Ajouter un devis", - "update_Estimate": "Mise à jour du devis", - "edit_estimate": "Modifier le devis", + "add_new_estimate": "Nouveau devis", + "update_Estimate": "Enregistrer", + "edit_estimate": "Modifier ce devis", "items": "articles", "Estimate": "Devis | Devis", "add_new_tax": "Ajouter une taxe", - "no_estimates": "Aucune estimation pour le moment !", - "list_of_estimates": "Cette section contiendra la liste des devis.", + "no_estimates": "Aucun devis", + "list_of_estimates": "Ajoutez des clients et retrouvez-les ici", "mark_as_rejected": "Marquer comme rejeté", "mark_as_accepted": "Marquer comme accepté", "marked_as_accepted_message": "Devis marqué comme accepté", "marked_as_rejected_message": "Devis marqué comme rejeté", "confirm_delete": "Vous ne pourrez pas récupérer ce devis | Vous ne pourrez pas récupérer ces devis", - "created_message": "Devis créé avec succès", - "updated_message": "Devis mise à jour avec succès", + "created_message": "Devis créé", + "updated_message": "Devis mise à jour", "deleted_message": "Devis supprimé | Devis supprimés", "something_went_wrong": "quelque chose a mal tourné", "item": { "title": "Titre de l'article", "description": "Description", "quantity": "Quantité", - "price": "Prix unitaire", + "price": "Prix", "discount": "Remise", "total": "Total", "total_discount": "Remise totale", "sub_total": "Sous-total", "tax": "Taxe", "amount": "Montant", - "select_an_item": "Tapez ou cliquez pour sélectionner un article", + "select_an_item": "Sélectionnez un article", "type_item_description": "Taper la description de l'article (facultatif)" } }, "invoices": { "title": "Factures", + "download": "Download", + "pay_invoice": "Pay Invoice", "invoices_list": "Liste des factures", - "days": "jours jours", - "months": "mois mois", - "years": "years années", + "invoice_information": "Invoice Information", + "days": "{days} jours", + "months": "{months} mois", + "years": "{years} années", "all": "Toutes", - "paid": "Payé", - "unpaid": "Non payé", - "viewed": "Viewed", - "overdue": "Overdue", - "completed": "Completed", + "paid": "Payée", + "unpaid": "Non payée", + "viewed": "Consultée", + "overdue": "En retard", + "completed": "Payée", "customer": "CLIENT", - "paid_status": "STATUT DU PAIEMENT", + "paid_status": "État du paiement", "ref_no": "Réf.", "number": "N°", - "amount_due": "MONTANT DÛ", - "partially_paid": "Partiellement payé", + "amount_due": "MONTANT", + "partially_paid": "Partiellement payée", "total": "Total", "discount": "Remise", "sub_total": "Sous-total", "invoice": "Facture | Factures", - "invoice_number": "Numéro de facture", - "ref_number": "Numéro de référence", + "invoice_number": "N°", + "ref_number": "Référence", "contact": "Contact", - "add_item": "Ajouter un article", + "add_item": "Nouvel article", "date": "Date", "due_date": "Date d'échéance", "status": "Statut", "add_tax": "Ajouter une taxe", "amount": "Montant", - "action": "action", - "notes": "Remarques", - "view": "Voir", - "send_invoice": "Envoyer une facture", + "action": "Action", + "notes": "Notes de bas de page", + "view": "Afficher", + "send_invoice": "Envoyer par email", "resend_invoice": "Renvoyer la facture", "invoice_template": "Modèle de facture", + "conversion_message": "Facture clonée", "template": "Modèle", "mark_as_sent": "Marquer comme envoyée", "confirm_send_invoice": "Cette facture sera envoyée par email au client", "invoice_mark_as_sent": "Cette facture sera marquée comme envoyé", - "confirm_send": "Cette facture sera envoyée par courrier électronique au client.", - "invoice_date": "Date de facturation", + "confirm_mark_as_accepted": "Cette facture sera marquée comme acceptée", + "confirm_mark_as_rejected": "Cette facture sera marquée comme rejetée", + "confirm_send": "Cette facture sera envoyée par email au client", + "invoice_date": "Date", "record_payment": "Enregistrer un paiement", - "add_new_invoice": "Ajouter une facture", + "add_new_invoice": "Nouvelle facture", "update_expense": "Enregistrer la dépense", - "edit_invoice": "Modifier la facture", + "edit_invoice": "Modifier cette facture", "new_invoice": "Nouvelle facture", - "save_invoice": "Enregistrer la facture", - "update_invoice": "Mettre à jour la facture", + "save_invoice": "Enregistrer", + "update_invoice": "Enregistrer", "add_new_tax": "Ajouter une taxe", - "no_invoices": "Aucune facture pour le moment !", - "list_of_invoices": "Cette section contiendra la liste des factures.", + "no_invoices": "Aucune facture", + "mark_as_rejected": "Marquer comme rejetée", + "mark_as_accepted": "Marquer comme acceptée", + "list_of_invoices": "Ajoutez des factures et retrouvez-les ici", "select_invoice": "Sélectionnez facture", "no_matching_invoices": "Aucune facture correspondante !", - "mark_as_sent_successfully": "Facture marquée comme envoyée avec succès", - "invoice_sent_successfully": "Facture envoyée avec succès", - "cloned_successfully": "Facture clonée avec succès", - "clone_invoice": "Dupliquer la facture", + "mark_as_sent_successfully": "Facture marquée comme envoyée", + "invoice_sent_successfully": "Facture envoyée", + "cloned_successfully": "Facture clonée", + "clone_invoice": "Dupliquer", "confirm_clone": "Cette facture sera dupliquée dans une nouvelle facture", "item": { "title": "Titre de l'article", @@ -378,16 +434,126 @@ "sub_total": "Sous-total", "tax": "Taxe", "amount": "Montant", - "select_an_item": "Tapez ou cliquez pour sélectionner un élément", - "type_item_description": "Tapez la description de l'article (facultatif)" + "select_an_item": "Sélectionnez un article", + "type_item_description": "Saisissez une description (facultatif)" }, + "payment_attached_message": "Un paiement est lié à l'une des factures sélectionnées. Veuillez d'abord les supprimer, puis réessayez", "confirm_delete": "Vous ne pourrez pas récupérer cette facture | Vous ne pourrez pas récupérer ces factures", - "created_message": "Facture créée avec succès", - "updated_message": "Facture mise à jour avec succès", + "created_message": "Facture créée", + "updated_message": "Facture mise à jour", "deleted_message": "La facture a été supprimée | Les factures ont été supprimées", - "marked_as_sent_message": "Facture supprimée avec succès | Factures supprimées avec succès", + "marked_as_sent_message": "Facture supprimée | Factures supprimées", "something_went_wrong": "quelque chose a mal tourné", - "invalid_due_amount_message": "Le paiement entré est supérieur au montant total dû pour cette facture. Veuillez vérifier et réessayer" + "invalid_due_amount_message": "Le paiement entré est supérieur au montant total dû pour cette facture. Veuillez vérifier et réessayer." + }, + "recurring_invoices": { + "title": "Factures récurrentes", + "invoices_list": "Liste des factures récurrentes", + "days": "{days} jours", + "months": "{months} mois", + "years": "{years} ans", + "all": "Toutes", + "paid": "Payée", + "unpaid": "Non payée", + "viewed": "Consultée", + "overdue": "En retard", + "active": "Active", + "completed": "Payée", + "customer": "CLIENT", + "paid_status": "ÉTAT DU PAIEMENT", + "ref_no": "N° de REF.", + "number": "N°", + "amount_due": "MONTANT DÛ", + "partially_paid": "Partiellement payée", + "total": "Total", + "discount": "Remise", + "sub_total": "Sous-total", + "invoice": "Facture récurrente | Factures récurrentes", + "invoice_number": "N°", + "next_invoice_date": "Prochaine date de facturation", + "ref_number": "N° de référence", + "contact": "Contact", + "add_item": "Ajouter un article", + "date": "Date", + "limit_by": "Limiter par", + "limit_date": "Date limite", + "limit_count": "Nombre limite", + "count": "Nombre", + "status": "Statut", + "select_a_status": "Sélectionnez un statut", + "working": "Active", + "on_hold": "Suspendue", + "complete": "Payée", + "add_tax": "Ajouter une taxe", + "amount": "Montant", + "action": "Action", + "notes": "Notes de bas de page", + "view": "Afficher", + "basic_info": "Informations générales", + "send_invoice": "Envoyer la facture récurrente", + "auto_send": "Envoi automatique", + "resend_invoice": "Renvoyer la facture récurrente", + "invoice_template": "Modèle de facture récurrente", + "conversion_message": "Facture récurrente clonée", + "template": "Modèle", + "mark_as_sent": "Marquer comme envoyée", + "confirm_send_invoice": "Cette facture récurrente sera envoyée par email au client", + "invoice_mark_as_sent": "Cette facture récurrente sera marquée comme envoyée", + "confirm_send": "Cette facture récurrente sera envoyée par email au client", + "starts_at": "Date de début", + "due_date": "Date d'échéance", + "record_payment": "Enregister un paiement", + "add_new_invoice": "Nouvelle facture récurrente", + "update_expense": "Mettre à jour les dépenses", + "edit_invoice": "Modifier cette facture récurrente", + "new_invoice": "Nouvelle facture récurrente", + "send_automatically": "Envoyer automatiquement", + "send_automatically_desc": "Activez ceci si vous souhaitez envoyer la facture automatiquement au client lorsque celle-ci est créée.", + "save_invoice": "Enregistrer", + "update_invoice": "Modifier la facture récurrente", + "add_new_tax": "Ajouter une taxe", + "no_invoices": "Aucune facture récurrente pour le moment !", + "mark_as_rejected": "Marquer comme rejetée", + "mark_as_accepted": "Marquer comme accepté", + "list_of_invoices": "Ajoutez des factures récurrentes et retrouvez-les ici", + "select_invoice": "Sélectionnez la facture", + "no_matching_invoices": "Aucune facture récurrente correspondante", + "mark_as_sent_successfully": "Facture récurrente marquée comme envoyée", + "invoice_sent_successfully": "Facture récurrente envoyée", + "cloned_successfully": "Facture récurrente clonée", + "clone_invoice": "Dupliquer", + "confirm_clone": "Cette facture récurrente sera clonée dans une nouvelle facture récurrente", + "item": { + "title": "Nom", + "description": "Description", + "quantity": "Quantité", + "price": "Prix", + "discount": "Remise", + "total": "Total", + "total_discount": "Remise totale", + "sub_total": "Sous-total", + "tax": "Taxe", + "amount": "Montant", + "select_an_item": "Tapez ou cliquez pour sélectionner un article", + "type_item_description": "Description de l'article (facultatif)" + }, + "frequency": { + "title": "Fréquence", + "select_frequency": "Sélectionner la fréquence", + "minute": "Minute", + "hour": "Heure", + "day_month": "Jour du mois", + "month": "Mois", + "day_week": "Jour de la semaine" + }, + "confirm_delete": "Vous ne pourrez pas récupérer cette facture | Vous ne pourrez pas récupérer ces factures", + "created_message": "Facture récurrente créée", + "updated_message": "Facture récurrente mise à jour", + "deleted_message": "Facture récurrente supprimée", + "marked_as_sent_message": "Facture récurrente envoyée", + "user_email_does_not_exist": "L'email de l'utilisateur n'existe pas", + "something_went_wrong": "une erreur s’est produite", + "invalid_due_amount_message": "Le montant total de la facture récurrente ne peut pas être inférieur au montant total payé pour cette facture récurrente. Veuillez mettre à jour la facture ou supprimer les paiements associés pour continuer." }, "payments": { "title": "Paiements", @@ -396,35 +562,35 @@ "customer": "Client", "date": "Date", "amount": "Montant", - "action": "action", + "action": "Action", "payment_number": "N°", "payment_mode": "Mode de paiement", "invoice": "Facture", - "note": "Remarque", - "add_payment": "Ajouter un paiement", + "note": "Description", + "add_payment": "Nouveau paiement", "new_payment": "Nouveau paiement", - "edit_payment": "Modifier le paiement", - "view_payment": "Voir le paiement", - "add_new_payment": "Ajouter un paiement", + "edit_payment": "Modifier ce paiement", + "view_payment": "Afficher le paiement", + "add_new_payment": "Nouveau paiement", "send_payment_receipt": "Envoyer le reçu", - "send_payment": "Envoyer le paiement", - "save_payment": "Enregistrer le paiement", - "update_payment": "Mettre à jour le paiement", + "send_payment": "Envoyer par email", + "save_payment": "Enregistrer", + "update_payment": "Enregistrer", "payment": "Paiement | Paiements", - "no_payments": "Aucun paiement pour le moment !", - "not_selected": "Not selected", - "no_invoice": "No invoice", + "no_payments": "Aucun paiement", + "not_selected": "-", + "no_invoice": "Aucune facture", "no_matching_payments": "Il n'y a aucun paiement correspondant !", - "list_of_payments": "Cette section contiendra la liste des paiements", - "select_payment_mode": "Sélectionnez le moyen de paiement", + "list_of_payments": "Ajoutez des paiements et retrouvez-les ici", + "select_payment_mode": "Sélectionnez le mode de paiement", "confirm_mark_as_sent": "Ce devis sera marqué comme envoyé", "confirm_send_payment": "Ce paiement sera envoyé par email au client", - "send_payment_successfully": "Paiement envoyé avec succès", + "send_payment_successfully": "Paiement envoyé", "something_went_wrong": "quelque chose a mal tourné", "confirm_delete": "Vous ne pourrez pas récupérer ce paiement | Vous ne pourrez pas récupérer ces paiements", - "created_message": "Paiement créé avec succès", - "updated_message": "Paiement mis à jour avec succès", - "deleted_message": "Paiement supprimé avec succès | Paiements supprimés avec succès", + "created_message": "Paiement créé", + "updated_message": "Paiement mis à jour", + "deleted_message": "Paiement supprimé | Paiements supprimés", "invalid_amount_message": "Le montant du paiement est invalide" }, "expenses": { @@ -433,33 +599,34 @@ "select_a_customer": "Sélectionnez un client", "expense_title": "Titre", "customer": "Client", + "currency": "Devise", "contact": "Contact", "category": "Catégorie", - "from_date": "A partir de la date", - "to_date": "À ce jour", + "from_date": "Du", + "to_date": "Au", "expense_date": "Date", "description": "Description", "receipt": "Reçu", "amount": "Montant", - "action": "action", - "not_selected": "Not selected", - "note": "Remarque", + "action": "Action", + "not_selected": "-", + "note": "Description", "category_id": "Identifiant de catégorie", "date": "Date", - "add_expense": "Ajouter une dépense", - "add_new_expense": "Ajouter une nouvelle dépense", - "save_expense": "Enregistrer la dépense", - "update_expense": "Mettre à jour la dépense", + "add_expense": "Nouvelle dépense", + "add_new_expense": "Nouvelle dépense", + "save_expense": "Enregistrer", + "update_expense": "Enregistrer", "download_receipt": "Télécharger le reçu", - "edit_expense": "Modifier la dépense", + "edit_expense": "Modifier cette dépense", "new_expense": "Nouvelle dépense", "expense": "Dépense | Dépenses", - "no_expenses": "Pas de dépenses pour le moment !", - "list_of_expenses": "Cette section contiendra la liste des dépenses.", + "no_expenses": "Aucune dépense", + "list_of_expenses": "Ajoutez des dépenses et retrouvez-les ici", "confirm_delete": "Vous ne pourrez pas récupérer cette dépense | Vous ne pourrez pas récupérer ces dépenses", - "created_message": "Dépense créée avec succès", - "updated_message": "Dépense mise à jour avec succès", - "deleted_message": "Dépense supprimée avec succès | Dépenses supprimées avec succès", + "created_message": "Dépense créée", + "updated_message": "Dépense mise à jour", + "deleted_message": "Dépense supprimée | Dépenses supprimées", "categories": { "categories_list": "Liste des catégories", "title": "Titre", @@ -467,7 +634,7 @@ "description": "Description", "amount": "Montant", "actions": "Actions", - "add_category": "Ajouter une catégorie", + "add_category": "Nouvelle catégorie", "new_category": "Nouvelle catégorie", "category": "Catégorie | Catégories", "select_a_category": "Choisissez une catégorie" @@ -478,14 +645,59 @@ "password": "Mot de passe", "forgot_password": "Mot de passe oublié ?", "or_signIn_with": "ou connectez-vous avec", - "login": "S'identifier", + "login": "Se connecter", "register": "S'inscrire", "reset_password": "Réinitialiser le mot de passe", "password_reset_successfully": "Réinitialisation du mot de passe réussie", - "enter_email": "Entrer l'email", + "enter_email": "Entrez votre email", "enter_password": "Entrer le mot de passe", "retype_password": "Retaper le mot de passe" }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, "users": { "title": "Utilisateurs", "users_list": "Liste des utilisateurs", @@ -493,101 +705,108 @@ "description": "Description", "added_on": "Ajouté le", "date_of_creation": "Date de création", - "action": "action", - "add_user": "Ajouter un utilisateur", + "action": "Action", + "add_user": "Nouvel utilisateur", "save_user": "Enregistrer l'utilisateur", - "update_user": "Mettre à jour l'utilisateur", + "update_user": "Enregistrer", "user": "Utilisateur | Utilisateurs", - "add_new_user": "Ajouter un nouvel utilisateur", + "add_new_user": "Nouvel utilisateur", "new_user": "Nouvel utilisateur", - "edit_user": "Modifier l'utilisateur", - "no_users": "Pas encore d'utilisateurs !", - "list_of_users": "Cette section contiendra la liste des utilisateurs.", + "edit_user": "Modifier cet utilisateur", + "no_users": "Aucun utilisateur", + "list_of_users": "Ajoutez des utilisateurs et retrouvez-les ici", "email": "Email", "phone": "Téléphone", "password": "Mot de passe", "user_attached_message": "Impossible de supprimer un élément déjà utilisé", "confirm_delete": "Vous ne pourrez pas récupérer cet utilisateur | Vous ne pourrez pas récupérer ces utilisateurs", - "created_message": "L'utilisateur a été créé avec succès", - "updated_message": "L'utilisateur a bien été mis à jour", - "deleted_message": "Utilisateur supprimé avec succès | Utilisateur a bien été supprimé" + "created_message": "Utilisateur créé", + "updated_message": "Utilisateur mis à jour", + "deleted_message": "Utilisateur supprimé | Utilisateurs supprimés", + "select_company_role": "Sélectionner un rôle pour {company}", + "companies": "Sociétés" }, "reports": { "title": "Rapport", - "from_date": "À partir du", - "to_date": "Jusqu'au", + "from_date": "Du", + "to_date": "Au", "status": "Statut", "paid": "Payé", "unpaid": "Non payé", "download_pdf": "Télécharger le PDF", - "view_pdf": "Voir le PDF", - "update_report": "Mettre à jour le rapport", + "view_pdf": "Afficher le PDF", + "update_report": "Actualiser", "report": "Rapport | Rapports", "profit_loss": { - "profit_loss": "Bénéfices & Pertes", + "profit_loss": "Balance", "to_date": "Au", "from_date": "Du", - "date_range": "Sélectionner une plage de dates" + "date_range": "Période" }, "sales": { "sales": "Ventes", - "date_range": "Sélectionner une plage de dates", - "to_date": "À ce jour", - "from_date": "A partir de la date", - "report_type": "Type de rapport" + "date_range": "Période", + "to_date": "Au", + "from_date": "Du", + "report_type": "Trier" }, "taxes": { - "taxes": "Les taxes", - "to_date": "À ce jour", - "from_date": "À partir du", - "date_range": "Sélectionner une plage de dates" + "taxes": "Taxes", + "to_date": "Au", + "from_date": "Du", + "date_range": "Période" }, "errors": { "required": "Champ requis" }, "invoices": { "invoice": "Facture", - "invoice_date": "Date de facturation", + "invoice_date": "Date", "due_date": "Date déchéance", "amount": "Montant ", - "contact_name": "Nom du contact", + "contact_name": "Contact", "status": "Statut" }, "estimates": { "estimate": "Devis", - "estimate_date": "Date du devis", + "estimate_date": "Date", "due_date": "Date d'échéance", "estimate_number": "N°", - "ref_number": "Numéro de référence", + "ref_number": "Référence", "amount": "Montant", - "contact_name": "Nom du contact", + "contact_name": "Contact", "status": "Statut" }, "expenses": { "expenses": "Dépenses", - "category": "Catégorie", + "category": "Nom", "date": "Date", "amount": "Montant", - "to_date": "Jusqu'au", - "from_date": "À partir du", - "date_range": "Sélectionner une plage de dates" + "to_date": "Au", + "from_date": "Du", + "date_range": "Période" } }, "settings": { "menu_title": { - "account_settings": "Paramètres du compte", - "company_information": "Informations sur la société", + "account_settings": "Profil", + "company_information": "Coordonnées de la société", "customization": "Personnalisation", "preferences": "Préférences", "notifications": "Notifications", - "tax_types": "Types de taxe", - "expense_category": "Catégories de dépenses", - "update_app": "Mise à jour de l'application", + "tax_types": "Taxes", + "expense_category": "Catégories de dépense", + "update_app": "Mise à jour", "backup": "Sauvegarde", - "file_disk": "Espace de stockage", + "file_disk": "Stockage", "custom_fields": "Champs personnalisés", - "payment_modes": "Moyens de paiement", - "notes": "Remarques" + "payment_modes": "Modes de paiement", + "notes": "Notes de bas de page", + "exchange_rate": "Taux de change", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." }, "title": "Paramètres", "setting": "Paramètres | Paramètres", @@ -611,13 +830,13 @@ "position_of_symbol": "Position du symbole", "right": "Droite", "left": "Gauche", - "action": "action", + "action": "Action", "add_currency": "Ajouter une devise" }, "mail": { "host": "Adresse du serveur", "port": "Port", - "driver": "Pilote de courrier", + "driver": "Fournisseur", "secret": "Secret", "mailgun_secret": "Mailgun Secret", "mailgun_domain": "Domaine", @@ -626,11 +845,11 @@ "ses_key": "SES Key", "password": "Mot de passe", "username": "Nom d'utilisateur", - "mail_config": "Configuration des emails", + "mail_config": "Envoi d'emails", "from_name": "Nom de l'expéditeur", "from_mail": "Email de l'expéditeur", "encryption": "Chiffrement", - "mail_config_desc": "Vous pouvez modifier ci-dessous les paramètres d'envoi des emails. Vous pourrez modifier à tout moment." + "mail_config_desc": "Saisissez ici les paramètres d'envoi de votre boîte email, afin que l'application puisse envoyer des messages. Vous pouvez également utiliser un service tiers, comme Sendgrid par exemple." }, "pdf": { "title": "Paramètre PDF", @@ -638,35 +857,42 @@ "pdf_layout": "Mise en page PDF" }, "company_info": { - "company_info": "Information de l'entreprise", - "company_name": "Nom de l'entreprise", - "company_logo": "Logo de l'entreprise", - "section_description": "Informations sur votre entreprise qui figureront sur les factures, devis et autres documents créés par Crater.", + "company_info": "Coordonnées de la société", + "company_name": "Nom", + "company_logo": "Logo", + "section_description": "Saisissez ici les coordonnées de votre entreprise qui s'afficheront sur tous vos documents.", "phone": "Téléphone", "country": "Pays", "state": "État", "city": "Ville", "address": "Adresse", "zip": "Code postal", - "save": "Sauvegarder", - "updated_message": "Informations sur la société mises à jour avec succès" + "save": "Enregistrer", + "delete": "Supprimer", + "updated_message": "Informations sur la société mises à jour", + "delete_company": "Supprimer la société", + "delete_company_description": "Une fois votre société supprimée, vous perdrez définitivement toutes les données et fichiers qui lui sont associés.", + "are_you_absolutely_sure": "En êtes vous vraiment sûr?", + "delete_company_modal_desc": "Cette action ne peut pas être annulée. Cela supprimera définitivement {company} et toutes les données associées.", + "delete_company_modal_label": "Veuillez saisir {company} pour confirmer" }, "custom_fields": { "title": "Champs personnalisés", - "section_description": "Personnalisez vos factures, devis et reçus de paiement avec vos propres champs. Assurez-vous d'utiliser les champs ajoutés ci-dessous sur les formats d'adresse sur la page des paramètres de personnalisation.", + "section_description": "Personnalisez vos factures, devis et reçus de paiement avec vos propres champs. Vous pouvez les utiliser dans les formats d'adresse ou dans les notes de bas de page.", "add_custom_field": "Ajouter un champ personnalisé", - "edit_custom_field": "Modifier un champ personnalisé", + "edit_custom_field": "Modifier ce champ personnalisé", "field_name": "Nom du champs", "label": "Étiquette", "type": "Type ", "name": "Nom", + "slug": "Jeton", "required": "Obligatoire", - "placeholder": "Espace réservé", + "placeholder": "Indication", "help_text": "Texte d'aide", "default_value": "Valeur par défaut", "prefix": "Préfixe", "starting_number": "Numéro de départ", - "model": "Modèle", + "model": "Appliquer à", "help_text_description": "Saisissez du texte pour aider les utilisateurs à comprendre l'objectif de ce champ personnalisé.", "suffix": "Suffixe", "yes": "Oui", @@ -674,7 +900,7 @@ "order": "Ordre", "custom_field_confirm_delete": "Vous ne pourrez pas récupérer ce champ personnalisé", "already_in_use": "Le champ personnalisé est déjà utilisé", - "deleted_message": "Champ personnalisé supprimé avec succès", + "deleted_message": "Champ personnalisé supprimé", "options": "les options", "add_option": "Ajouter des options", "add_another_option": "Ajouter une autre option", @@ -684,113 +910,132 @@ "select_custom_date": "Sélectionnez une date personnalisée", "select_relative_date": "Sélectionnez la date relative", "ticked_by_default": "Coché par défaut", - "updated_message": "Champ personnalisé mis à jour avec succès", - "added_message": "Champ personnalisé ajouté avec succès" + "updated_message": "Champ personnalisé mis à jour", + "added_message": "Champ personnalisé ajouté", + "press_enter_to_add": "Appuyez sur Entrée pour ajouter une nouvelle option", + "model_in_use": "Impossible de mettre à jour le modèle pour les champs qui sont déjà utilisés.", + "type_in_use": "Impossible de mettre à jour le type des champs déjà utilisés." }, "customization": { "customization": "Personnalisation", - "save": "Sauvegarder", - "addresses": { - "title": "Adresses", - "section_description": "Vous pouvez définir le format de l'adresse de facturation et de livraison du client (affiché en PDF uniquement). ", - "customer_billing_address": "Adresse de paiement", - "customer_shipping_address": "Adresse de livraison", - "company_address": "Adresse de l'entreprise", - "insert_fields": "Ajouter des champs", - "contact": "Contact", - "address": "Adresse", - "display_name": "Nom", - "primary_contact_name": "Nom du contact principal", - "email": "Email", - "website": "Site Internet", - "name": "Nom", - "country": "Pays", - "state": "Etat", - "city": "Ville", - "company_name": "Nom de l'entreprise", - "address_street_1": "Rue", - "address_street_2": "Complément", - "phone": "Téléphone", - "zip_code": "Code postal", - "address_setting_updated": "Adresse mise à jour avec succès" - }, - "updated_message": "Informations de l'entreprise mises à jour", + "updated_message": "Informations la société mises à jour", + "save": "Enregistrer", + "insert_fields": "Insérer des champs", + "learn_custom_format": "Apprenez à utiliser le format personnalisé", + "add_new_component": "Ajouter un composant", + "component": "Composant", + "Parameter": "Paramètre", + "series": "Texte", + "series_description": "Un texte statique qui peut faire jusqu'à quatre caractères.", + "series_param_label": "Texte", + "delimiter": "Séparateur", + "delimiter_description": "Un caractère servant à séparer deux composants. Par exemple, un trait d'union", + "delimiter_param_label": "Caractère", + "date_format": "Date", + "date_format_description": "Une date qui peut formatée. Par exemple, \"Y\" affichera l'année en cours.", + "date_format_param_label": "Format", + "sequence": "Suite", + "sequence_description": "Génère un numéro de facture unique. Vous pouvez indiquer le nombre de chiffres à utiliser.", + "sequence_param_label": "Longueur", + "customer_series": "Code client", + "customer_series_description": "Un code unique à chaque client, qui peut être indiqué dans les paramètres du client.", + "customer_sequence": "Numéro client", + "customer_sequence_description": "Un numéro de client unique.", + "customer_sequence_param_label": "Longueur", + "random_sequence": "Suite aléatoire", + "random_sequence_description": "Suite alphanumérique aléatoire.\nVous pouvez spécifier le nombre de caractère.", + "random_sequence_param_label": "Longueur", "invoices": { "title": "Factures", - "notes": "Remarques", - "invoice_prefix": "Préfixe", - "default_invoice_email_body": "Corps de l'e-mail de la facture par défaut", - "invoice_settings": "Paramètres", - "autogenerate_invoice_number": "Générer automatiquement le numéro de facture", - "autogenerate_invoice_number_desc": "Désactivez cette option si vous ne souhaitez pas générer automatiquement les numéros de facture à chaque fois que vous en créez une nouvelle.", - "enter_invoice_prefix": "Ajouter le préfixe de facture", - "terms_and_conditions": "Termes et conditions", - "company_address_format": "Format d'adresse de l'entreprise", - "shipping_address_format": "Format d'adresse d'expédition", - "billing_address_format": "Format d'adresse de facturation", - "invoice_settings_updated": "Paramètres de facturation mis à jour" + "invoice_number_format": "Format de numéro", + "invoice_number_format_description": "Personnalisez la structure de vos numéros de facture.", + "preview_invoice_number": "Aperçu", + "due_date": "Date d'échéance", + "due_date_description": "Indiquez si la date d'échéance doit être automatiquement définie lorsque vous créez une facture.", + "due_date_days": "Nombre de jours avant l'échéance de la facture", + "set_due_date_automatically": "Remplir automatiquement la date d'échéance", + "set_due_date_automatically_description": "Activez cette option si vous souhaitez définir automatiquement la date d'échéance lors de la création d'une facture.", + "default_formats": "Modèles", + "default_formats_description": "Modifiez ci-dessous les formats d'adresse ou l'email utilisé lors de la création d'une facture.", + "default_invoice_email_body": "Modèle d'email", + "company_address_format": "Adresse de la société", + "shipping_address_format": "Adresse d'expédition", + "billing_address_format": "Adresse de facturation", + "invoice_email_attachment": "Envoyer les factures en pièces jointes", + "invoice_email_attachment_setting_description": "Activez cette option si vous souhaitez envoyer les factures en pièces jointes. Le bouton \"Afficher la facture\" n'apparaîtra plus dans l'email.", + "invoice_settings_updated": "Paramètres de facturation mis à jour", + "retrospective_edits": "Édition à postériori", + "allow": "Autoriser", + "disable_on_invoice_partial_paid": "Désactiver après l'enregistrement d'un paiement partiel", + "disable_on_invoice_paid": "Désactiver après l'enregistrement du paiement intégral", + "disable_on_invoice_sent": "Désactiver après l'envoi de la facture", + "retrospective_edits_description": "Vous pouvez empêcher la modification de factures lorsque un paiement est effectué, pour être en conformité avec la loi de certains pays." }, "estimates": { "title": "Devis", - "estimate_prefix": "Préfixe des devis", - "default_estimate_email_body": "Corps de l'e-mail estimé par défaut", - "estimate_settings": "Paramètre", - "autogenerate_estimate_number": "Générer automatiquement le numéro de devis", - "estimate_setting_description": "Désactivez cette option si vous ne souhaitez pas générer automatiquement les numéros de devis à chaque fois que vous en créez un nouveau.", - "enter_estimate_prefix": "Entrez le préfixe d'estimation", - "estimate_setting_updated": "Paramètres de devis mis à jour", - "company_address_format": "Format d'adresse de l'entreprise", - "billing_address_format": "Format d'adresse de facturation", - "shipping_address_format": "Format d'adresse d'expédition" + "estimate_number_format": "Format de numéro", + "estimate_number_format_description": "Personnalisez la structure de vos numéros de devis.", + "preview_estimate_number": "Aperçu", + "expiry_date": "Date d'expiration", + "expiry_date_description": "Indiquez si la date d'échéance doit être automatiquement définie lorsque vous créez un devis.", + "expiry_date_days": "Le devis expire après les jours", + "set_expiry_date_automatically": "Définir automatiquement la date d'expiration", + "set_expiry_date_automatically_description": "Activez cette option si vous souhaitez définir automatiquement la date d'échéance lors de la création d'un devis.", + "default_formats": "Formats par défaut", + "default_formats_description": "Modifiez ci-dessous les formats d'adresse ou l'email utilisé lors de la création d'un devis.", + "default_estimate_email_body": "Modèle d'email", + "company_address_format": "Adresse de la société", + "shipping_address_format": "Adresse d'expédition", + "billing_address_format": "Adresse de facturation", + "estimate_email_attachment": "Envoyer les devis en pièces jointes", + "estimate_email_attachment_setting_description": "Activez cette option si vous souhaitez envoyer les devis en pièces jointes. Le bouton \"Afficher le devis\" n'apparaîtra plus dans l'email.", + "estimate_settings_updated": "Paramètres de devis mis à jour", + "convert_estimate_options": "Conversion du devis", + "convert_estimate_description": "Indiquez quoi faire du devis après sa conversion en facture.", + "no_action": "Ne rien faire", + "delete_estimate": "Supprimer le devis", + "mark_estimate_as_accepted": "Marquer le devis comme accepté" }, "payments": { "title": "Paiements", - "description": "Modes de transaction pour les paiements", - "payment_prefix": "Préfixe", - "default_payment_email_body": "Corps de l'e-mail de paiement par défaut", - "payment_settings": "Paramètres", - "autogenerate_payment_number": "Générer automatiquement le numéro de paiement", - "payment_setting_description": "Désactivez cette option si vous ne souhaitez pas générer automatiquement les numéros de paiement à chaque fois que vous en créez un nouveau.", - "enter_payment_prefix": "Entrez le préfixe de paiement", - "payment_setting_updated": "Les paramètres de paiement ont bien été mis à jour", - "payment_modes": "Moyens de paiement", - "add_payment_mode": "Ajouter un mode de paiement", - "edit_payment_mode": "Modifier le moyen de paiement", - "mode_name": "Nom", - "payment_mode_added": "Moyen de paiement ajouté", - "payment_mode_updated": "Moyen de paiement mis à jour", - "payment_mode_confirm_delete": "Êtes-vous sur de supprimer ce moyen de paiement", - "already_in_use": "Ce moyen de paiement existe déjà", - "deleted_message": "Moyen de paiement supprimé avec succès", - "company_address_format": "Format d'adresse de l'entreprise", - "from_customer_address_format": "À partir du format d'adresse client" + "payment_number_format": "Format de numéro", + "payment_number_format_description": "Personnalisez la structure de vos numéros de reçu de paiement.", + "preview_payment_number": "Aperçu", + "default_formats": "Formats par défaut", + "default_formats_description": "Modifiez ci-dessous les formats d'adresse ou l'email utilisé lors de la création d'un reçu de paiement.", + "default_payment_email_body": "Modèle d'email", + "company_address_format": "Adresse de la société", + "from_customer_address_format": "Adresse de facturation", + "payment_email_attachment": "Envoyer les reçus de paiement en pièces jointes", + "payment_email_attachment_setting_description": "Activez cette option si vous souhaitez envoyer les devis en pièces jointes. Le bouton \"Afficher le reçu de paiement\" n'apparaîtra plus dans l'email.", + "payment_settings_updated": "Paramètres mis à jour" }, "items": { "title": "Articles", "units": "Unités", "add_item_unit": "Ajouter une unité", - "edit_item_unit": "Modifier l'unité d'élément", + "edit_item_unit": "Modifier cette unité", "unit_name": "Nom", "item_unit_added": "Unité ajoutée", "item_unit_updated": "Unité mis à jour", "item_unit_confirm_delete": "Êtes-vous sur de supprimer cette unité ?", "already_in_use": "Cette unité existe déjà", - "deleted_message": "Unité supprimée avec succès" + "deleted_message": "Unité supprimée" }, "notes": { - "title": "Remarques", - "description": "Gagnez du temps en créant des notes et en les réutilisant sur vos factures, devis et paiements.", - "notes": "Remarques", + "title": "Notes de bas de page", + "description": "Créez des notes de bas de page réutilisable sur vos factures, devis et paiements.", + "notes": "Note de bas de page", "type": "Type ", - "add_note": "Ajouter une note", - "add_new_note": "Ajouter une nouvelle note", + "add_note": "Nouvelle note de bas de page", + "add_new_note": "Ajouter une note de bas de page", "name": "Nom", - "edit_note": "Modifier la note", - "note_added": "Note ajoutée", - "note_updated": "Note mise à jour", - "note_confirm_delete": "Vous ne pourrez pas récupérer cette note", - "already_in_use": "La note est déjà utilisée", - "deleted_message": "Note supprimée avec succès" + "edit_note": "Modifier cette note de bas de page", + "note_added": "Note de bas de page ajoutée", + "note_updated": "Note de bas de page mise à jour", + "note_confirm_delete": "Vous ne pourrez pas récupérer cette note de bas de page", + "already_in_use": "La note de bas de page est déjà utilisée", + "deleted_message": "Note de bas de page supprimée" } }, "account_settings": { @@ -799,10 +1044,10 @@ "email": "Email", "password": "Mot de passe", "confirm_password": "Confirmez le mot de passe", - "account_settings": "Paramètres du compte", - "save": "Sauvegarder", - "section_description": "Vous pouvez mettre à jour votre nom, votre email et votre mot de passe en utilisant le formulaire ci-dessous.", - "updated_message": "Paramètres du compte mis à jour avec succès" + "account_settings": "Profil", + "save": "Enregistrer", + "section_description": "Mettez à jour ici vos paramètres de compte, tels que votre nom, votre email ou votre mot de passe.", + "updated_message": "Profil mis à jour" }, "user_profile": { "name": "Nom", @@ -811,48 +1056,111 @@ "confirm_password": "Confirmez le mot de passe" }, "notification": { - "title": "Notification", + "title": "Notifications", "email": "Envoyer des notifications à", - "description": "Quelles notifications par courrier électronique souhaitez-vous recevoir lorsque quelque chose change?", + "description": "Définissez ici les notifications que vous souhaitez recevoir par email.", "invoice_viewed": "Facture consultée", "invoice_viewed_desc": "Lorsque le client visualise la facture envoyée via le tableau de bord de Neptune.", "estimate_viewed": "Devis consulté", "estimate_viewed_desc": "Lorsque le client visualise le devis envoyé via le tableau de bord de Neptune.", - "save": "Sauvegarder", - "email_save_message": "Email enregistré avec succès", + "save": "Enregistrer", + "email_save_message": "Email enregistré", "please_enter_email": "Veuillez entrer un email" }, + "roles": { + "title": "Rôles", + "description": "Gérer les rôles & autorisations de cette société", + "save": "Enregistrer", + "add_new_role": "Ajouter un rôle", + "role_name": "Nom", + "added_on": "Ajouté le", + "add_role": "Ajouter un rôle", + "edit_role": "Modifier ce rôle", + "name": "Nom", + "permission": "Autorisation | Autorisations", + "select_all": "Tout sélectionner", + "none": "Aucun", + "confirm_delete": "Vous ne pourrez pas récupérer ce rôle", + "created_message": "Rôle créé", + "updated_message": "Rôle mis à jour", + "deleted_message": "Rôle supprimé", + "already_in_use": "Le rôle est déjà utilisé" + }, + "exchange_rate": { + "exchange_rate": "Taux de change", + "title": "Résoudre les problèmes de taux de change", + "description": "Veuillez entrez le taux de change pour toutes les devises mentionnées ci-dessous pour calculer les totaux en {currency}.", + "drivers": "Fournisseurs", + "new_driver": "Ajouter un fournisseur", + "edit_driver": "Modifier ce fournisseur", + "select_driver": "Sélectionner un fournisseur", + "update": "sélectionner le taux de change ", + "providers_description": "Configurez vos fournisseurs de taux de change ici pour récupérer automatiquement le dernier taux de change sur les transactions.", + "key": "Clé d'API", + "name": "Nom", + "driver": "Fournisseur", + "is_default": "PAR DÉFAUT", + "currency": "Devises", + "exchange_rate_confirm_delete": "Vous ne pourrez pas récupérer ce fournisseur", + "created_message": "Fournisseur créé", + "updated_message": "Fournisseur mis à jour", + "deleted_message": "Fournisseur supprimé", + "error": "Vous ne pouvez pas supprimer le fournisseur actif", + "default_currency_error": "Cette devise est déjà affectée à un fournisseur", + "exchange_help_text": "Veuillez entrer le taux de change pour convertir {currency} en {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Serveur", + "url": "URL", + "active": "Actif", + "currency_help_text": "Ce fournisseur ne sera utilisé que pour les devises sélectionnées ci-dessus", + "currency_in_used": "Les devises suivantes sont déjà affectées à un autre fournisseur. Veuillez désélectionner ces devises pour réactiver ce fournisseur." + }, "tax_types": { - "title": "Types de taxe", + "title": "Taxes", "add_tax": "Ajouter une taxe", - "edit_tax": "Modifier la taxe", - "description": "Vous pouvez ajouter ou supprimer des taxes à votre guise. Crater prend en charge les taxes sur les articles individuels ainsi que sur la facture.", - "add_new_tax": "Ajouter une nouvelle taxe", + "edit_tax": "Modifier cette taxe", + "description": "Ajoutez ou supprimez ici des taxes, et choisissez si elles s'appliquent individuellement aux articles ou au montant total.", + "add_new_tax": "Nouvelle taxe", "tax_settings": "Paramètres de taxe", "tax_per_item": "Taxe par article", - "tax_name": "Nom de la taxe", - "compound_tax": "Taxe composée", + "tax_name": "Nom", + "compound_tax": "Taxe empilée", "percent": "Pourcentage", "action": "action", "tax_setting_description": "Activez cette option si vous souhaitez ajouter des taxes à des postes de facture individuels. Par défaut, les taxes sont ajoutées directement à la facture.", - "created_message": "Type de taxe créé avec succès", - "updated_message": "Type de taxe mis à jour avec succès", - "deleted_message": "Type de taxe supprimé avec succès", + "created_message": "Taxe créée", + "updated_message": "Taxe mise à jour", + "deleted_message": "Taxe supprimée", "confirm_delete": "Vous ne pourrez pas récupérer ce type de taxe", "already_in_use": "La taxe est déjà utilisée" }, + "payment_modes": { + "title": "Moyens de paiement", + "description": "Indiquez les différents moyen de paiement que vous utilisez", + "add_payment_mode": "Ajouter un mode de paiement", + "edit_payment_mode": "Modifier le mode de paiement", + "mode_name": "Nom", + "payment_mode_added": "Mode de paiement ajouté", + "payment_mode_updated": "Mode de paiement mis à jour", + "payment_mode_confirm_delete": "Vous ne pourrez pas récupérer ce mode de paiement", + "already_in_use": "Le mode de paiement est déjà utilisé", + "deleted_message": "Mode de paiement supprimé" + }, "expense_category": { - "title": "Catégories de dépenses", + "title": "Catégories de dépense", "action": "action", - "description": "Des catégories sont requises pour ajouter des entrées de dépenses. Vous pouvez ajouter ou supprimer ces catégories selon vos préférences.", - "add_new_category": "Ajouter une nouvelle catégorie", - "add_category": "Ajouter une catégorie", - "edit_category": "Modifier la catégorie", - "category_name": "Nom de catégorie", + "description": "Ajoutez ou supprimez ici des catégories de dépense.", + "add_new_category": "Ajouter une catégorie", + "add_category": "Nouvelle catégorie", + "edit_category": "Modifier cette catégorie", + "category_name": "Nom", "category_description": "Description", - "created_message": "Catégorie de dépenses créée avec succès", - "deleted_message": "La catégorie de dépenses a été supprimée avec succès", - "updated_message": "Catégorie de dépenses mise à jour avec succès", + "created_message": "Catégorie de dépenses créée", + "deleted_message": "Catégorie de dépenses supprimée", + "updated_message": "Catégorie de dépenses mise à jour", "confirm_delete": "Vous ne pourrez pas récupérer cette catégorie de dépenses", "already_in_use": "La catégorie est déjà utilisée" }, @@ -864,46 +1172,57 @@ "date_format": "Format de date", "discount_setting": "Réglage de remise", "discount_per_item": "Remise par article", - "discount_setting_description": "Activez cette option si vous souhaitez ajouter une remise à des postes de facture individuels. Par défaut, les remises sont ajoutées directement à la facture.", - "save": "Sauvegarder", + "discount_setting_description": "Activez cette option si vous souhaitez détailler les remises par article. Par défaut, les remises sont ajoutées au sous-total.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", + "save": "Enregistrer", "preference": "Préférence | Préférences", - "general_settings": "Préférences par défaut pour le système.", - "updated_message": "Préférences mises à jour avec succès", + "general_settings": "Modifiez ici les paramètres globaux de Crater.", + "updated_message": "Préférences mises à jour", "select_language": "Choisir la langue", "select_time_zone": "Sélectionnez le fuseau horaire", "select_date_format": "Sélectionnez le format de date", - "select_financial_year": "sélectionner lexercice" + "select_financial_year": "Exercice fiscal", + "recurring_invoice_status": "Statut de la facture récurrente", + "create_status": "Créer un statut", + "active": "Actif", + "on_hold": "En attente", + "update_status": "Mettre à jour le statut", + "completed": "Terminé", + "company_currency_unchangeable": "La devise de la société ne peut pas être modifiée" }, "update_app": { - "title": "Mise à jour de l'application", - "description": "Vous pouvez facilement mettre à jour Crater en cliquant sur le bouton ci-dessous", - "check_update": "Vérifier les mises à jour", + "title": "Mise à jour", + "description": "Mettez simplement Crater à jour en cliquant sur le bouton ci-dessous.", + "check_update": "Rechercher des mises à jour", "avail_update": "Nouvelle mise à jour disponible", "next_version": "Version suivante", "requirements": "Spécifications requises", "update": "Mettre à jour maintenant", "update_progress": "Mise à jour en cours...", "progress_text": "Cela ne prendra que quelques minutes. Veuillez ne pas actualiser ou fermer la fenêtre avant la fin de la mise à jour", - "update_success": "App a été mis à jour ! Veuillez patienter pendant le rechargement automatique de la fenêtre de votre navigateur.", - "latest_message": "Pas de mise a jour disponible ! Vous êtes sur la dernière version.", + "update_success": "L'application a été mise à jour. Veuillez patienter pendant le rechargement de la fenêtre de votre navigateur.", + "latest_message": "Bravo, vous êtes à jour.", "current_version": "Version actuelle", "download_zip_file": "Télécharger le fichier ZIP", "unzipping_package": "Dézipper le package", "copying_files": "Copie de fichiers en cours", + "deleting_files": "Supprimer les fichiers inutilisés", "running_migrations": "Migrations en cours", "finishing_update": "Finalisation de la mise à jour", "update_failed": "Échec de la mise à jour", - "update_failed_text": "Désolé ! Votre mise à jour a échoué à: {step} étape" + "update_failed_text": "Désolé ! Votre mise à jour a échoué à: {step} étape", + "update_warning": "Cet utilitaire va écraser tous les fichiers et templates de l'application. Veuillez faire une sauvegarde de vos templates et de la base de donnée avant de faire la mise à jour." }, "backup": { "title": "Sauvegarde | Sauvegardes", - "description": "La sauvegarde est un fichier ZIP qui contient tous les fichiers des répertoires que vous spécifiez, ainsi qu'un export de la base de données", - "new_backup": "Ajouter une nouvelle sauvegarde", + "description": "Gérez ici vos sauvegardes. Crater créée un fichiez ZIP contenant vos fichiers et un export de la base de données.", + "new_backup": "Faire une sauvegarde", "create_backup": "Créer une sauvegarde", - "select_backup_type": "Sélectionnez le type de sauvegarde", + "select_backup_type": "Type de sauvegarde", "backup_confirm_delete": "Vous ne pourrez pas récupérer cette sauvegarde", "path": "chemin", - "new_disk": "Nouvel espace de stockage", + "new_disk": "Nouveau stockage", "created_at": "créé à", "size": "taille", "dropbox": "dropbox", @@ -912,32 +1231,32 @@ "amount_of_backups": "nombre de sauvegardes", "newest_backups": "dernières sauvegardes", "used_storage": "Stockage utilisé", - "select_disk": "Sélectionnez l'espace de stockage", - "action": "action", - "deleted_message": "Sauvegarde supprimée avec succès", - "created_message": "Sauvegarde créée avec succès", + "select_disk": "Emplacement", + "action": "Action", + "deleted_message": "Sauvegarde supprimée", + "created_message": "Sauvegarde créée", "invalid_disk_credentials": "Informations d'identification invalides de l'espace de stockage" }, "disk": { - "title": "Espace de stockage | Espaces de stockage", - "description": "Par défaut, Crater utilisera votre disque local pour enregistrer les sauvegardes, l'avatar et d'autres fichiers image. Vous pouvez configurer plusieurs pilotes de disque comme DigitalOcean, S3 et Dropbox selon vos préférences.", + "title": "Stockage | Stockages", + "description": "Crater utilise par défaut votre disque local pour stocker les sauvegardes, les avatar et d'autres fichiers image. Vous pouvez configurer d'autres comptes de stockage, comme DigitalOcean, S3 et Dropbox.", "created_at": "créé à", "dropbox": "dropbox", "name": "Nom", - "driver": "Pilote", + "driver": "Compte de stockage", "disk_type": "Type ", "disk_name": "Nom", - "new_disk": "Ajouter un nouvel espace de stockage", - "filesystem_driver": "Pilote du système de fichiers", - "local_driver": "Pilote local", - "local_root": "Répertoire local", - "public_driver": "Pilote public", + "new_disk": "Ajouter un espace de stockage", + "filesystem_driver": "Fournisseur", + "local_driver": "stockage local", + "local_root": "répertoire local", + "public_driver": "Stockage public", "public_root": "Répertoire public", "public_url": "URL publique", "public_visibility": "Visibilité publique", - "media_driver": "Pilote multimédia", + "media_driver": "Stockage multimédia", "media_root": "Répertoire média", - "aws_driver": "Pilote AWS", + "aws_driver": "AWS", "aws_key": "AWS Key", "aws_secret": "AWS Secret", "aws_region": "Région AWS", @@ -959,21 +1278,34 @@ "default_driver": "Fournisseur par défaut", "is_default": "Par défaut", "set_default_disk": "Définir l'espace par défaut", - "success_set_default_disk": "L'espace par défaut défini avec succès", + "set_default_disk_confirm": "Cet espace sera utilisé par défaut pour l'enregistrement des PDF", + "success_set_default_disk": "Stockage par défaut mis à jour", "save_pdf_to_disk": "Enregistrer les PDF sur le disque", "disk_setting_description": "Activez cette option si vous souhaitez enregistrer automatiquement une copie de chaque facture, devis et reçu de paiement PDF sur votre disque par défaut. L'activation de cette option réduira le temps de chargement lors de l'affichage des PDF.", - "select_disk": "Sélectionnez le stockage", + "select_disk": "Emplacement", "disk_settings": "Paramètres de stockage", "confirm_delete": "Vos fichiers et dossiers existants sur le disque spécifié ne seront pas affectés, mais la configuration de votre disque sera supprimée de Crater", - "action": "action", - "edit_file_disk": "Modifier le disque de fichiers", - "success_create": "Disque ajouté avec succès", - "success_update": "Disque mis à jour avec succès", + "action": "Action", + "edit_file_disk": "Modifier cet espace de stockage", + "success_create": "Stockage ajouté", + "success_update": "Stockage mis à jour", "error": "L'ajout de disque a échoué", "deleted_message": "Stockage supprimé", - "disk_variables_save_successfully": "Stockage configuré avec succès", + "disk_variables_save_successfully": "Stockage configuré", "disk_variables_save_error": "La configuration du stockage a échoué.", "invalid_disk_credentials": "Informations d'identification non valides du stockage sélectionné" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { @@ -984,13 +1316,14 @@ "password": "Mot de passe", "confirm_password": "Confirmez le mot de passe", "save_cont": "Enregistrer et poursuivre", - "company_info": "Informations sur la société", + "company_info": "Coordonnées de la société", "company_info_desc": "Ces informations seront affichées sur les factures. Notez que vous pouvez éditer ceci plus tard sur la page des paramètres.", - "company_name": "Nom de l'entreprise", - "company_logo": "Logo de l'entreprise", - "logo_preview": "Aperçu du logo", + "company_name": "Nom", + "company_logo": "Logo", + "logo_preview": "Aperçu", "preferences": "Préférences", "preferences_desc": "Préférences par défaut du système.", + "currency_set_alert": "La devise ne pourra pas être changé.", "country": "Pays", "state": "État", "city": "Ville", @@ -1028,6 +1361,15 @@ "permission_confirm_desc": "La vérification des permissions du dossier a échoué", "permission_desc": "Vous trouverez ci-dessous la liste des permissions de dossier requises pour le fonctionnement de l'application. Si la vérification des permissions échoue, veillez mettre à jour vos permissions de dossier." }, + "verify_domain": { + "title": "Vérification du domaine", + "desc": "Crater utilise l'authentification basée sur la session qui nécessite une vérification du domaine pour des raisons de sécurité. Veuillez saisir le domaine sur lequel vous allez accéder à votre application web.", + "app_domain": "Domaine de l'application", + "verify_now": "Vérifier maintenant", + "success": "Vérification du domaine réussie.", + "failed": "La vérification du domaine a échoué. Veuillez entrer un nom de domaine valide.", + "verify_and_continue": "Vérifier et continuer" + }, "mail": { "host": "Serveur email", "port": "Port", @@ -1040,7 +1382,7 @@ "ses_key": "Key", "password": "Mot de passe", "username": "Nom d'utilisateur", - "mail_config": "Configuration des emails", + "mail_config": "Envoi d'emails", "from_name": "Nom de messagerie", "from_mail": "Email de l'expéditeur", "encryption": "Chiffrement des emails", @@ -1060,24 +1402,25 @@ "database_should_be_empty": "La base de données devrait être vide" }, "success": { - "mail_variables_save_successfully": "Email configuré avec succès", - "database_variables_save_successfully": "Base de données configurée avec succès." + "mail_variables_save_successfully": "Email configuré", + "database_variables_save_successfully": "Base de données configurée." } }, "validation": { "invalid_phone": "Numéro de téléphone invalide", - "invalid_url": "URL invalide (ex: http://www.craterapp.com)", - "invalid_domain_url": "URL invalide (ex: craterapp.com)", + "invalid_url": "URL invalide (ex: http://www.crater.com)", + "invalid_domain_url": "URL invalide (ex: crater.com)", "required": "Champ requis", "email_incorrect": "Adresse Email incorrecte.", - "email_already_taken": "Un compte est déjà associé à cette adresse e-mail.", + "email_already_taken": "Un compte est déjà associé à cette adresse email.", "email_does_not_exist": "Cet utilisateur n'existe pas", "item_unit_already_taken": "Cette unité est déjà été utilisée", "payment_mode_already_taken": "Ce moyen de paiement est déjà utilisé", "send_reset_link": "Envoyer le lien de réinitialisation", "not_yet": "Pas encore reçu ? Réessayer", - "password_min_length": "Le mot de passe doit contenir {nombre} caractères", - "name_min_length": "Le nom doit avoir au moins {count} lettres.", + "password_min_length": "Le mot de passe doit contenir au moins {count} caractères", + "name_min_length": "Le nom doit comporter au moins {count} lettres.", + "prefix_min_length": "Le préfixe doit faire au moins {count} lettres.", "enter_valid_tax_rate": "Entrez un taux de taxe valide", "numbers_only": "Chiffres uniquement.", "characters_only": "Caractères seulement.", @@ -1092,55 +1435,87 @@ "price_minvalue": "Le prix doit être supérieur à 0.", "amount_maxlength": "Le montant ne doit pas dépasser 20 chiffres.", "amount_minvalue": "Le montant doit être supérieur à 0.", + "discount_maxlength": "La remise ne doit pas être supérieure à la remise maximale", "description_maxlength": "La description ne doit pas dépasser 255 caractères.", "subject_maxlength": "L'objet ne doit pas dépasser 100 caractères.", "message_maxlength": "Le message ne doit pas dépasser 255 caractères.", "maximum_options_error": "Maximum de {max} options sélectionnées. Commencez par supprimer une option sélectionnée pour en sélectionner une autre.", - "notes_maxlength": "Les notes ne doivent pas dépasser 255 caractères.", + "notes_maxlength": "Les notes de bas de page ne doivent pas dépasser 255 caractères.", "address_maxlength": "L'adresse ne doit pas dépasser 255 caractères.", "ref_number_maxlength": "Le numéro de référence ne doit pas dépasser 255 caractères.", "prefix_maxlength": "Le préfixe ne doit pas dépasser 5 caractères.", - "something_went_wrong": "quelque chose a mal tourné" + "something_went_wrong": "quelque chose a mal tourné", + "number_length_minvalue": "Ce nombre doit être supérieur à 0", + "at_least_one_ability": "Veuillez sélectionner au moins une autorisation.", + "valid_driver_key": "Veuillez saisir une clé {driver} valide.", + "valid_exchange_rate": "Veuillez saisir un taux de change valide.", + "company_name_not_same": "Le nom de la société doit correspondre au nom fourni." + }, + "errors": { + "starter_plan": "Cette fonctionnalité est disponible à partir du plan Starter.", + "invalid_provider_key": "Veuillez entrer une clé d'API valide du fournisseur.", + "estimate_number_used": "Ce numéro de devis est déjà utilisé.", + "invoice_number_used": "Ce numéro de facture est déjà utilisé.", + "payment_attached": "Cette facture est liée à un reçu de paiement. Veuillez d'abord le supprimer avant de poursuivre.", + "payment_number_used": "Ce numéro de paiement est déjà utilisé.", + "name_already_taken": "Ce nom est déjà pris.", + "receipt_does_not_exist": "Le reçu n'existe pas.", + "customer_cannot_be_changed_after_payment_is_added": "Le client ne peut pas être modifié après l'ajout du paiement", + "invalid_credentials": "Identifiants invalides.", + "not_allowed": "Non autorisé", + "login_invalid_credentials": "Ces identifiants ne correspondent pas à nos enregistrements.", + "enter_valid_cron_format": "Veuillez entrer une tâche Cron valide", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, "pdf_estimate_label": "Devis", "pdf_estimate_number": "N°", - "pdf_estimate_date": "Date du devis", + "pdf_estimate_date": "Date", "pdf_estimate_expire_date": "Date d'expiration", "pdf_invoice_label": "Facture", - "pdf_invoice_number": "Numéro de facture", + "pdf_invoice_number": "Numéro", "pdf_invoice_date": "Date", "pdf_invoice_due_date": "Date d’échéance", - "pdf_notes": "Remarques", + "pdf_notes": "Notes de bas de page", "pdf_items_label": "Articles", "pdf_quantity_label": "Quantité", - "pdf_price_label": "Prix unitaire", + "pdf_price_label": "Prix", "pdf_discount_label": "Remise", "pdf_amount_label": "Montant", "pdf_subtotal": "Sous-total", - "pdf_total": "Total", + "pdf_total": "Total TTC", "pdf_payment_label": "Paiement", "pdf_payment_receipt_label": "Reçu de paiement", "pdf_payment_date": "Date de paiement", - "pdf_payment_number": "N°", + "pdf_payment_number": "Numéro", "pdf_payment_mode": "Moyen de paiement", "pdf_payment_amount_received_label": "Montant reçu", "pdf_expense_report_label": "RAPPORT DE DÉPENSES", "pdf_total_expenses_label": "TOTAL DES DÉPENSES", - "pdf_profit_loss_label": "RAPPORT DES BÉNÉFICES ET DES PERTES", - "pdf_sales_customers_label": "Rapport sur les ventes des clients", - "pdf_sales_items_label": "Rapport d'articles de vente", - "pdf_tax_summery_label": "Rapport de synthèse sur les impôts", + "pdf_profit_loss_label": "RECETTES ET DÉPENSES", + "pdf_sales_customers_label": "Rapport de vente client", + "pdf_sales_items_label": "Rapport de vente par articles", + "pdf_tax_summery_label": "Rapport de résumé fiscal", "pdf_income_label": "REVENU", - "pdf_net_profit_label": "BÉNÉFICE NET", + "pdf_net_profit_label": "RÉSULTAT", "pdf_customer_sales_report": "Rapport de ventes : par client", "pdf_total_sales_label": "TOTAL DES VENTES", "pdf_item_sales_label": "Rapport des ventes : par article", - "pdf_tax_report_label": "RAPPORT DES TAXES", - "pdf_total_tax_label": "TOTAL DES TAXES", - "pdf_tax_types_label": "Types de taxe", + "pdf_tax_report_label": "TAXES", + "pdf_total_tax_label": "TOTAL", + "pdf_tax_types_label": "Taxe", "pdf_expenses_label": "Dépenses", - "pdf_bill_to": "Facturer à :", - "pdf_ship_to": "Envoyer à :", + "pdf_bill_to": "Facturer à", + "pdf_ship_to": "Expédier à", "pdf_received_from": "Reçu de :", - "pdf_tax_label": "Tax" + "pdf_tax_label": "Taxe" } diff --git a/resources/scripts/locales/hi.json b/resources/scripts/locales/hi.json index 4113ec52d..4d92060b2 100644 --- a/resources/scripts/locales/hi.json +++ b/resources/scripts/locales/hi.json @@ -1,313 +1,454 @@ { "navigation": { "dashboard": "डैशबोर्ड", - "customers": "Customers", - "items": "Items", - "invoices": "Invoices", - "expenses": "Expenses", - "estimates": "Estimates", - "payments": "Payments", - "reports": "Reports", - "settings": "Settings", - "logout": "Logout", - "users": "Users" + "customers": "ग्राहक", + "items": "चीज़ें", + "invoices": "चालान", + "recurring-invoices": "Recurring Invoices", + "expenses": "लागत", + "estimates": "अनुमान", + "payments": "भुगतान", + "reports": "रिपोर्ट", + "settings": "समायोजन", + "logout": "लॉग आउट", + "users": "कर्मचारी", + "modules": "Modules" }, "general": { - "add_company": "Add Company", - "view_pdf": "View PDF", - "copy_pdf_url": "Copy PDF Url", - "download_pdf": "Download PDF", - "save": "Save", - "create": "Create", - "cancel": "Cancel", - "update": "Update", - "deselect": "Deselect", - "download": "Download", - "from_date": "From Date", - "to_date": "To Date", - "from": "From", - "to": "To", - "sort_by": "Sort By", - "ascending": "Ascending", - "descending": "Descending", - "subject": "Subject", - "body": "Body", - "message": "Message", - "send": "Send", - "go_back": "Go Back", - "back_to_login": "Back to Login?", - "home": "Home", - "filter": "Filter", - "delete": "Delete", - "edit": "Edit", - "view": "View", - "add_new_item": "Add New Item", - "clear_all": "Clear All", - "showing": "Showing", - "of": "of", - "actions": "Actions", - "subtotal": "SUBTOTAL", - "discount": "DISCOUNT", - "fixed": "Fixed", - "percentage": "Percentage", - "tax": "TAX", - "total_amount": "TOTAL AMOUNT", - "bill_to": "Bill to", - "ship_to": "Ship to", - "due": "Due", - "draft": "Draft", - "sent": "Sent", - "all": "All", - "select_all": "Select All", - "choose_file": "Click here to choose a file", - "choose_template": "Choose a template", - "choose": "Choose", - "remove": "Remove", - "select_a_status": "Select a status", - "select_a_tax": "Select a tax", - "search": "Search", - "are_you_sure": "Are you sure?", - "list_is_empty": "List is empty.", - "no_tax_found": "No tax found!", - "four_zero_four": "404", - "you_got_lost": "Whoops! You got Lost!", - "go_home": "Go Home", - "test_mail_conf": "Test Mail Configuration", - "send_mail_successfully": "Mail sent successfully", - "setting_updated": "Setting updated successfully", - "select_state": "Select state", - "select_country": "Select Country", - "select_city": "Select City", - "street_1": "Street 1", - "street_2": "Street 2", - "action_failed": "Action Failed", - "retry": "Retry", - "choose_note": "Choose Note", - "no_note_found": "No Note Found", - "insert_note": "Insert Note" + "add_company": "कंपनी जोड़ें", + "view_pdf": "पीडीएफ देखें", + "copy_pdf_url": "पीडीएफ यूआरएल कॉपी करें", + "download_pdf": "पीडीऍफ़ डाउनलोड करें", + "save": "सुरक्षित करें", + "create": "बनाएँ", + "cancel": "रद्द", + "update": "अपडेट करें", + "deselect": "अचयनित", + "download": "डाउनलोड", + "from_date": "इस तारीख से", + "to_date": "इस तारीख तक", + "from": "से", + "to": "के लिये", + "ok": "Ok", + "yes": "Yes", + "no": "No", + "sort_by": "इसके अनुसार क्रमबद्ध करें", + "ascending": "आरोही", + "descending": "उतरते", + "subject": "विषय", + "body": "बॉडी", + "message": "संदेश", + "send": "भेजे", + "preview": "Preview", + "go_back": "पिचे जाओ", + "back_to_login": "लॉगिन पर वापस जाएं", + "home": "होम", + "filter": "फिल्टर", + "delete": "हटाए", + "edit": "संपादित", + "view": "देखे", + "add_new_item": "नए सामान को जोड़ो", + "clear_all": "सभी साफ करें", + "showing": "दिखाना", + "of": "का", + "actions": "क्रियाएँ", + "subtotal": "उप कुल", + "discount": "छूट", + "fixed": "तय", + "percentage": "प्रतिशत", + "tax": "कर", + "total_amount": "कुल राशि", + "bill_to": "के नाम बिल करें:", + "ship_to": "यहां भेजें", + "due": "बाकी", + "draft": "प्रारूप", + "sent": "भेजा गया", + "all": "सभी", + "select_all": "सभी चुनें", + "select_template": "Select Template", + "choose_file": "फ़ाइल चुनने के लिए यहां क्लिक करें", + "choose_template": "एक टेम्पलेट चुनें", + "choose": "चुनें", + "remove": "निकालें", + "select_a_status": "स्टेटस चुनें", + "select_a_tax": "एक टैक्स चुनें", + "search": "खोजें", + "are_you_sure": "क्या आप सुनिश्चित हैं?", + "list_is_empty": "सूची खाली है...", + "no_tax_found": "कोई टैक्स नहीं मिला!", + "four_zero_four": "४0४", + "you_got_lost": "ओह! आप खो गए!", + "go_home": "मुख्य पृष्ठ पर जाएँ", + "test_mail_conf": "मेल विन्यास", + "send_mail_successfully": "सफलतापूर्वक प्रेषित", + "setting_updated": "सेटिंग सफलतापूर्वक अपडेट की गई", + "select_state": "राज्य चुनें...", + "select_country": "देश चुनें", + "select_city": "शहर चुनें", + "street_1": "स्ट्रीट 1", + "street_2": "स्ट्रीट 2", + "action_failed": "क्रिया: विफल रही है", + "retry": "पुन: प्रयास करें", + "choose_note": "नोट चुनें", + "no_note_found": "कोई नोट नहीं मिला", + "insert_note": "टिप्पणी डालें...", + "copied_pdf_url_clipboard": "पीडीएफ यूआरएल\nको क्लिपबोर्ड पर कॉपी किया गया!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Docs", + "do_you_wish_to_continue": "Do you wish to continue?", + "note": "Note", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { - "select_year": "Select year", + "select_year": "वर्ष चुनें", "cards": { - "due_amount": "Amount Due", - "customers": "Customers", - "invoices": "Invoices", - "estimates": "Estimates" + "due_amount": "देय राशि", + "customers": "ग्राहक", + "invoices": "चालान", + "estimates": "अनुमान", + "payments": "Payments" }, "chart_info": { - "total_sales": "Sales", - "total_receipts": "Receipts", - "total_expense": "Expenses", - "net_income": "Net Income", - "year": "Select year" + "total_sales": "बिक्री", + "total_receipts": "रसीदें", + "total_expense": "खर्चे", + "net_income": "शुद्ध आय", + "year": "वर्ष चुनें" }, "monthly_chart": { - "title": "Sales & Expenses" + "title": "बिक्री और व्यय" }, "recent_invoices_card": { - "title": "Due Invoices", - "due_on": "Due On", - "customer": "Customer", - "amount_due": "Amount Due", - "actions": "Actions", - "view_all": "View All" + "title": "देय चालान", + "due_on": "को देय", + "customer": "ग्राहक", + "amount_due": "देय राशि", + "actions": "क्रियाएँ", + "view_all": "सभी देखें" }, "recent_estimate_card": { - "title": "Recent Estimates", - "date": "Date", - "customer": "Customer", - "amount_due": "Amount Due", - "actions": "Actions", - "view_all": "View All" + "title": "हाली के अनुमान", + "date": "दिनांक", + "customer": "ग्राहक", + "amount_due": "देय राशि", + "actions": "क्रियाएँ", + "view_all": "सभी देखें" } }, "tax_types": { - "name": "Name", - "description": "Description", - "percent": "Percent", - "compound_tax": "Compound Tax" + "name": "नाम", + "description": "विवरण", + "percent": "प्रतिशत", + "compound_tax": "यौगिक कर" }, "global_search": { - "search": "Search...", - "customers": "Customers", - "users": "Users", - "no_results_found": "No Results Found" + "search": "खोज़े...", + "customers": "ग्राहक", + "users": "कर्मचारी", + "no_results_found": "कोई परिणाम नहीं मिला" + }, + "company_switcher": { + "label": "SWITCH COMPANY", + "no_results_found": "No Results Found", + "add_new_company": "Add new company", + "new_company": "New company", + "created_message": "Company created successfully" + }, + "dateRange": { + "today": "Today", + "this_week": "This Week", + "this_month": "This Month", + "this_quarter": "This Quarter", + "this_year": "This Year", + "previous_week": "Previous Week", + "previous_month": "Previous Month", + "previous_quarter": "Previous Quarter", + "previous_year": "Previous Year", + "custom": "Custom" }, "customers": { - "title": "Customers", - "add_customer": "Add Customer", - "contacts_list": "Customer List", - "name": "Name", - "mail": "Mail | Mails", - "statement": "Statement", - "display_name": "Display Name", - "primary_contact_name": "Primary Contact Name", - "contact_name": "Contact Name", - "amount_due": "Amount Due", - "email": "Email", - "address": "Address", - "phone": "Phone", - "website": "Website", - "overview": "Overview", - "enable_portal": "Enable Portal", - "country": "Country", - "state": "State", - "city": "City", - "zip_code": "Zip Code", - "added_on": "Added On", - "action": "Action", - "password": "Password", - "street_number": "Street Number", - "primary_currency": "Primary Currency", - "description": "Description", - "add_new_customer": "Add New Customer", - "save_customer": "Save Customer", - "update_customer": "Update Customer", - "customer": "Customer | Customers", - "new_customer": "New Customer", - "edit_customer": "Edit Customer", - "basic_info": "Basic Info", - "billing_address": "Billing Address", - "shipping_address": "Shipping Address", - "copy_billing_address": "Copy from Billing", - "no_customers": "No customers yet!", - "no_customers_found": "No customers found!", - "no_contact": "No contact", - "no_contact_name": "No contact name", - "list_of_customers": "This section will contain the list of customers.", - "primary_display_name": "Primary Display Name", - "select_currency": "Select currency", - "select_a_customer": "Select a customer", - "type_or_click": "Type or click to select", - "new_transaction": "New Transaction", - "no_matching_customers": "There are no matching customers!", - "phone_number": "Phone Number", - "create_date": "Create Date", - "confirm_delete": "You will not be able to recover this customer and all the related Invoices, Estimates and Payments. | You will not be able to recover these customers and all the related Invoices, Estimates and Payments.", - "created_message": "Customer created successfully", - "updated_message": "Customer updated successfully", - "deleted_message": "Customer deleted successfully | Customers deleted successfully" + "title": "ग्राहक", + "prefix": "Prefix", + "add_customer": "ग्राहक जोड़ें", + "contacts_list": "ग्राहक सूची", + "name": "नाम", + "mail": "संदेश | संदेशों", + "statement": "बयान", + "display_name": "प्रदर्शित होने वाला नाम", + "primary_contact_name": "प्राथमिक संपर्क नाम", + "contact_name": "संपर्क नाम", + "amount_due": "देय राशि", + "email": "ईमेल", + "address": "पता", + "phone": "फ़ोन", + "website": "वेबसाइट", + "overview": "अवलोकन", + "invoice_prefix": "Invoice Prefix", + "estimate_prefix": "Estimate Prefix", + "payment_prefix": "Payment Prefix", + "enable_portal": "पोर्टल सक्षम करें", + "country": "देश", + "state": "राज्य", + "city": "शहर", + "zip_code": "पिन कोड", + "added_on": "पर जोड़ा", + "action": "कार्य", + "password": "पासवर्ड", + "confirm_password": "Confirm Password", + "street_number": "गली संख्या", + "primary_currency": "प्राथमिक मुद्रा", + "description": "विवरण", + "add_new_customer": "ग्राहक जोड़ें", + "save_customer": "ग्राहक संचित करे", + "update_customer": "ग्राहक अद्यतन करे", + "customer": "ग्राहक | ग्राहकों", + "new_customer": "नए ग्राहक", + "edit_customer": "ग्राहक संपादित करें", + "basic_info": "आधारभूत जानकारी", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", + "billing_address": "बिल भेजने का पता", + "shipping_address": "शिपिंग पता", + "copy_billing_address": "बिलिंग से प्रतिलिपि", + "no_customers": "अभी तक ग्राहक नहीं हैं", + "no_customers_found": "अभी तक कोई ग्राहक नहीं मिला", + "no_contact": "कोई संपर्क नहीं", + "no_contact_name": "कोई संपर्क नाम नहीं", + "list_of_customers": "इस खंड में वस्तुओं की सूची होगी।", + "primary_display_name": "प्राथमिक प्रदर्शन नाम", + "select_currency": "मुद्रा चुनें", + "select_a_customer": "एक ग्राहक चुनें", + "type_or_click": "चुनने के लिए टाइप करें या क्लिक करें", + "new_transaction": "नया लेनदेन", + "no_matching_customers": "कोई मेल खाने वाले ग्राहक नहीं हैं!", + "phone_number": "फोन नंबर", + "create_date": "निर्माण तिथि", + "confirm_delete": "आप इस ग्राहक और सभी संबंधित चालानों, अनुमानों और भुगतानों को पुनर्प्राप्त नहीं कर पाएंगे। | आप इन ग्राहकों और सभी संबंधित चालानों, अनुमानों और भुगतानों को पुनर्प्राप्त नहीं कर पाएंगे।", + "created_message": "सफलतापूर्वक प्रेषित", + "updated_message": "सफलतापूर्वक प्रेषित", + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "ग्राहक सफलतापूर्वक हटा दिया गया | ग्राहक सफलतापूर्वक हटा दिए गए", + "edit_currency_not_allowed": "Cannot change currency once transactions created." }, "items": { - "title": "Items", - "items_list": "Items List", - "name": "Name", - "unit": "Unit", - "description": "Description", - "added_on": "Added On", - "price": "Price", - "date_of_creation": "Date Of Creation", - "not_selected": "No item selected", - "action": "Action", - "add_item": "Add Item", - "save_item": "Save Item", - "update_item": "Update Item", - "item": "Item | Items", - "add_new_item": "Add New Item", - "new_item": "New Item", - "edit_item": "Edit Item", - "no_items": "No items yet!", - "list_of_items": "This section will contain the list of items.", - "select_a_unit": "select unit", - "taxes": "Taxes", - "item_attached_message": "Cannot delete an item which is already in use", - "confirm_delete": "You will not be able to recover this Item | You will not be able to recover these Items", - "created_message": "Item created successfully", - "updated_message": "Item updated successfully", - "deleted_message": "Item deleted successfully | Items deleted successfully" + "title": "चीज़ें", + "items_list": "आइटम सूची", + "name": "नाम", + "unit": "यूनिट", + "description": "विवरण", + "added_on": "पर जोड़ा", + "price": "मूल्य", + "date_of_creation": "निर्माण की तारीख", + "not_selected": "कोई आइटम नहीं चुना गया", + "action": "कार्रवाई", + "add_item": "वस्तु जोड़ें", + "save_item": "आइटम सहेजें", + "update_item": "अद्यतन आइटम", + "item": "मद | आइटम", + "add_new_item": "नए सामान को जोड़ो", + "new_item": "नई वस्तु!", + "edit_item": "आइटम संपादित करें", + "no_items": "अभी तक कोई आइटम नहीं!", + "list_of_items": "इस खंड में वस्तुओं की सूची होगी।", + "select_a_unit": "इकाई का चयन करें", + "taxes": "करों", + "item_attached_message": "पहले से उपयोग में आने वाली वस्तु को हटा नहीं सकता", + "confirm_delete": "आप इस मद को पुनर्प्राप्त नहीं कर पाएंगे | आप इन वस्तुओं को पुनर्प्राप्त नहीं कर पाएंगे", + "created_message": "सफलतापूर्वक प्रेषित किया गया है", + "updated_message": "अद्यतन सफलतापूर्ण हो गया", + "deleted_message": "ग्राहक सफलतापूर्वक हटा दिया गया | ग्राहक सफलतापूर्वक हटा दिए गए" }, "estimates": { - "title": "Estimates", - "estimate": "Estimate | Estimates", - "estimates_list": "Estimates List", - "days": "{days} Days", - "months": "{months} Month", - "years": "{years} Year", - "all": "All", - "paid": "Paid", - "unpaid": "Unpaid", - "customer": "CUSTOMER", - "ref_no": "REF NO.", - "number": "NUMBER", - "amount_due": "AMOUNT DUE", - "partially_paid": "Partially Paid", - "total": "Total", - "discount": "Discount", - "sub_total": "Sub Total", - "estimate_number": "Estimate Number", - "ref_number": "Ref Number", - "contact": "Contact", - "add_item": "Add an Item", - "date": "Date", - "due_date": "Due Date", - "expiry_date": "Expiry Date", - "status": "Status", - "add_tax": "Add Tax", - "amount": "Amount", - "action": "Action", - "notes": "Notes", - "tax": "Tax", - "estimate_template": "Template", - "convert_to_invoice": "Convert to Invoice", - "mark_as_sent": "Mark as Sent", - "send_estimate": "Send Estimate", - "resend_estimate": "Resend Estimate", - "record_payment": "Record Payment", - "add_estimate": "Add Estimate", - "save_estimate": "Save Estimate", - "confirm_conversion": "This estimate will be used to create a new Invoice.", - "conversion_message": "Invoice created successful", - "confirm_send_estimate": "This estimate will be sent via email to the customer", - "confirm_mark_as_sent": "This estimate will be marked as sent", - "confirm_mark_as_accepted": "This estimate will be marked as Accepted", - "confirm_mark_as_rejected": "This estimate will be marked as Rejected", - "no_matching_estimates": "There are no matching estimates!", - "mark_as_sent_successfully": "Estimate marked as sent successfully", - "send_estimate_successfully": "Estimate sent successfully", + "title": "अनुमान", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", + "estimate": "अनुमान | अनुमान", + "estimates_list": "अनुमान सूची", + "days": "{days} दिनों", + "months": "{months} महीने", + "years": "{years} साल", + "all": "सब", + "paid": "प्रदत्त", + "unpaid": "अवैतनिक", + "customer": "ग्राहक", + "ref_no": "प्रसंग संख्या", + "number": "संख्या", + "amount_due": "देय राशि", + "partially_paid": "आंशिक रूप से भुगतान किया", + "total": "कुल", + "discount": "छूट", + "sub_total": "उप योग", + "estimate_number": "अनुमान संख्या", + "ref_number": "प्रसंग संख्या", + "contact": "संपर्क", + "add_item": "आइटम जोड़ें", + "date": "दिनांक", + "due_date": "नियत तारीख", + "expiry_date": "समाप्ति तिथि", + "status": "स्थिति", + "add_tax": "कर जोड़ें", + "amount": "राशि", + "action": "कार्य", + "notes": "नोट्स", + "tax": "कर", + "estimate_template": "टेम्प्लेट", + "convert_to_invoice": "चालान में कनवर्ट करें", + "mark_as_sent": "पढ़ा चिह्नित करें", + "send_estimate": "अनुमान भेजें", + "resend_estimate": "अनुमान फिर से भेजें", + "record_payment": "रिकॉर्ड भुगतान", + "add_estimate": "अनुमान जोड़ें", + "save_estimate": "अनुमान बचाएं", + "confirm_conversion": "इस अनुमान का उपयोग एक नया चालान बनाने के लिए किया जाएगा।", + "conversion_message": "चालान सफल बनाया गया", + "confirm_send_estimate": "यह अनुमान ग्राहक को ईमेल के माध्यम से भेजा जाएगा", + "confirm_mark_as_sent": "इस अनुमान को भेजा गया के रूप में चिह्नित किया जाएगा", + "confirm_mark_as_accepted": "इस अनुमान को स्वीकृत के रूप में चिह्नित किया जाएगा", + "confirm_mark_as_rejected": "इस अनुमान को अस्वीकृत के रूप में चिह्नित किया जाएगा", + "no_matching_estimates": "कोई मिलान अनुमान नहीं हैं!", + "mark_as_sent_successfully": "अनुमान को सफलतापूर्वक भेजा गया के रूप में चिह्नित किया गया", + "send_estimate_successfully": "अनुमान सफलतापूर्वक भेजा गया", "errors": { - "required": "Field is required" + "required": "यह जानकारी जरुरी है" }, - "accepted": "Accepted", - "rejected": "Rejected", - "sent": "Sent", - "draft": "Draft", - "declined": "Declined", - "new_estimate": "New Estimate", - "add_new_estimate": "Add New Estimate", - "update_Estimate": "Update Estimate", - "edit_estimate": "Edit Estimate", - "items": "items", - "Estimate": "Estimate | Estimates", - "add_new_tax": "Add New Tax", - "no_estimates": "No estimates yet!", - "list_of_estimates": "This section will contain the list of estimates.", - "mark_as_rejected": "Mark as rejected", - "mark_as_accepted": "Mark as accepted", - "marked_as_accepted_message": "Estimate marked as accepted", - "marked_as_rejected_message": "Estimate marked as rejected", - "confirm_delete": "You will not be able to recover this Estimate | You will not be able to recover these Estimates", - "created_message": "Estimate created successfully", - "updated_message": "Estimate updated successfully", - "deleted_message": "Estimate deleted successfully | Estimates deleted successfully", - "something_went_wrong": "something went wrong", + "accepted": "स्वीकृत", + "rejected": "अस्वीकृत", + "expired": "Expired", + "sent": "भेजा गया", + "draft": "प्रारूप", + "viewed": "Viewed", + "declined": "नामंज़ूर किया गया", + "new_estimate": "नया अनुमान", + "add_new_estimate": "नया अनुमान जोड़ें", + "update_Estimate": "अद्यतन अनुमान", + "edit_estimate": "अनुमान संपादित करें", + "items": "चीज़ें", + "Estimate": "अनुमान | अनुमान", + "add_new_tax": "नया टैक्स जोड़ें", + "no_estimates": "अभी तक कोई अनुमान नहीं!", + "list_of_estimates": "इस खंड में अनुमानों की सूची होगी।", + "mark_as_rejected": "अस्वीकृत के रूप में चिह्नित करें", + "mark_as_accepted": "पूर्ण के रूप में चिह्नित करें", + "marked_as_accepted_message": "अनुमान स्वीकृत के रूप में चिह्नित", + "marked_as_rejected_message": "अनुमान को अस्वीकृत के रूप में चिह्नित किया गया", + "confirm_delete": "आप इस अनुमान की वसूली नहीं कर पाएंगे | आप इन अनुमानों को पुनर्प्राप्त नहीं कर पाएंगे", + "created_message": "अनुमान सफलतापूर्वक बनाया गया", + "updated_message": "अनुमान सफलतापूर्वक अपडेट किया गया", + "deleted_message": "अनुमान सफलतापूर्वक हटाया गया | अनुमान सफलतापूर्वक हटा दिए गए", + "something_went_wrong": "कुछ गलत हो गया", "item": { - "title": "Item Title", - "description": "Description", - "quantity": "Quantity", - "price": "Price", - "discount": "Discount", - "total": "Total", - "total_discount": "Total Discount", - "sub_total": "Sub Total", - "tax": "Tax", - "amount": "Amount", - "select_an_item": "Type or click to select an item", - "type_item_description": "Type Item Description (optional)" + "title": "मद शीर्षक", + "description": "विवरण", + "quantity": "मात्रा", + "price": "मूल्य", + "discount": "छूट", + "total": "कुल", + "total_discount": "कुल छूट", + "sub_total": "उप राशि", + "tax": "टॅक्स", + "amount": "राशि", + "select_an_item": "चुनने के लिए टाइप करें या क्लिक करें", + "type_item_description": "आइटम विवरण टाइप करें (वैकल्पिक)" } }, "invoices": { - "title": "Invoices", - "invoices_list": "Invoices List", + "title": "चालान", + "download": "Download", + "pay_invoice": "Pay Invoice", + "invoices_list": "चालान सूची", + "invoice_information": "Invoice Information", + "days": "{days} दिनों", + "months": "{months} महीने", + "years": "{years} साल", + "all": "सभी", + "paid": "प्रदत्त", + "unpaid": "अवैतनिक", + "viewed": "देखा गया", + "overdue": "अतिदेय", + "completed": "पूर्ण", + "customer": "ग्राहक", + "paid_status": "भुगतान की स्थिति", + "ref_no": "प्रसंग संख्या।", + "number": "संख्या", + "amount_due": "देय राशि", + "partially_paid": "आंशिक रूप से भुगतान किया", + "total": "कुल", + "discount": "Discount", + "sub_total": "उप राशि", + "invoice": "चालान | चालान", + "invoice_number": "इनवॉयस संख्या:", + "ref_number": "प्रसंग संख्या", + "contact": "संपर्क", + "add_item": "आइटम जोड़ें", + "date": "दिनांक", + "due_date": "अन्तिम तिथि", + "status": "स्थिति", + "add_tax": "कर जोड़ें", + "amount": "राशि", + "action": "कार्य", + "notes": "नोट्स", + "view": "देखे", + "send_invoice": "चालान भेजें", + "resend_invoice": "चालान फिर से भेजें", + "invoice_template": "चालान टेम्पलेट", + "conversion_message": "Invoice cloned successful", + "template": "टेम्प्लेट", + "mark_as_sent": "भेजे गए के रूप में चिह्नित करें", + "confirm_send_invoice": "यह चालान ग्राहक को ईमेल के माध्यम से भेजा जाएगा", + "invoice_mark_as_sent": "यह चालान भेजा के रूप में चिह्नित किया जाएगा", + "confirm_mark_as_accepted": "This invoice will be marked as Accepted", + "confirm_mark_as_rejected": "This invoice will be marked as Rejected", + "confirm_send": "यह चालान ग्राहक को ईमेल के माध्यम से भेजा जाएगा", + "invoice_date": "चालान की तारीख", + "record_payment": "रिकॉर्ड भुगतान", + "add_new_invoice": "नया चालान", + "update_expense": "अद्यतन व्यय", + "edit_invoice": "चालान संपादित करें", + "new_invoice": "नया चालान", + "save_invoice": "चालान सहेजें", + "update_invoice": "चालान संपादित करें", + "add_new_tax": "नया टैक्स जोड़ें", + "no_invoices": "अभी तक कोई चालान नहीं!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "इस खंड में वस्तुओं की सूची होगी।", + "select_invoice": "चालान का चयन करें", + "no_matching_invoices": "कोई मेल खाने वाले ग्राहक नहीं हैं!", + "mark_as_sent_successfully": "चालान को सफलतापूर्वक भेजा गया के रूप में चिह्नित किया गया", + "invoice_sent_successfully": "Invoice sent successfully", + "cloned_successfully": "चालान सफलतापूर्वक क्लोन किया गया", + "clone_invoice": "क्लोन चालान", + "confirm_clone": "यह चालान एक नए चालान में क्लोन किया जाएगा", + "item": { + "title": "मद शीर्षक", + "description": "विवरण", + "quantity": "मात्रा", + "price": "मूल्य", + "discount": "छूट", + "total": "कुल", + "total_discount": "कुल बचत", + "sub_total": "उप राशि", + "tax": "टॅक्स", + "amount": "राशि", + "select_an_item": "चुनने के लिए टाइप करें या क्लिक करें", + "type_item_description": "आइटम विवरण टाइप करें (वैकल्पिक)" + }, + "payment_attached_message": "चयनित चालानों में से एक में पहले से ही भुगतान संलग्न है। निष्कासन के साथ आगे बढ़ने के लिए पहले संलग्न भुगतानों को हटाना सुनिश्चित करें", + "confirm_delete": "आप इस चालान को पुनर्प्राप्त नहीं कर पाएंगे | आप इन चालानों को पुनर्प्राप्त नहीं कर पाएंगे", + "created_message": "चालान सफलतापूर्वक बनाया गया", + "updated_message": "चालान सफलतापूर्वक अपडेट किया गया", + "deleted_message": "चालान सफलतापूर्वक हटाया गया | चालान सफलतापूर्वक हटा दिए गए", + "marked_as_sent_message": "अनुमान को सफलतापूर्वक भेजा गया के रूप में चिह्नित किया गया", + "something_went_wrong": "कुछ गलत हो गया", + "invalid_due_amount_message": "कुल चालान राशि इस चालान के लिए कुल भुगतान की गई राशि से कम नहीं हो सकती है। जारी रखने के लिए कृपया इनवॉइस अपडेट करें या संबद्ध भुगतानों को हटा दें।" + }, + "recurring_invoices": { + "title": "Recurring Invoices", + "invoices_list": "Recurring Invoices List", "days": "{days} Days", "months": "{months} Month", "years": "{years} Year", @@ -316,6 +457,7 @@ "unpaid": "Unpaid", "viewed": "Viewed", "overdue": "Overdue", + "active": "Active", "completed": "Completed", "customer": "CUSTOMER", "paid_status": "PAID STATUS", @@ -326,45 +468,61 @@ "total": "Total", "discount": "Discount", "sub_total": "Sub Total", - "invoice": "Invoice | Invoices", - "invoice_number": "Invoice Number", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", "ref_number": "Ref Number", "contact": "Contact", "add_item": "Add an Item", "date": "Date", - "due_date": "Due Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", "add_tax": "Add Tax", "amount": "Amount", "action": "Action", "notes": "Notes", "view": "View", - "send_invoice": "Send Invoice", - "resend_invoice": "Resend Invoice", - "invoice_template": "Invoice Template", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", "template": "Template", "mark_as_sent": "Mark as sent", - "confirm_send_invoice": "This invoice will be sent via email to the customer", - "invoice_mark_as_sent": "This invoice will be marked as sent", - "confirm_send": "This invoice will be sent via email to the customer", - "invoice_date": "Invoice Date", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", "record_payment": "Record Payment", - "add_new_invoice": "Add New Invoice", + "add_new_invoice": "Add New Recurring Invoice", "update_expense": "Update Expense", - "edit_invoice": "Edit Invoice", - "new_invoice": "New Invoice", - "save_invoice": "Save Invoice", - "update_invoice": "Update Invoice", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", "add_new_tax": "Add New Tax", - "no_invoices": "No Invoices yet!", - "list_of_invoices": "This section will contain the list of invoices.", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", "select_invoice": "Select Invoice", - "no_matching_invoices": "There are no matching invoices!", - "mark_as_sent_successfully": "Invoice marked as sent successfully", - "invoice_sent_successfully": "Invoice sent successfully", - "cloned_successfully": "Invoice cloned successfully", - "clone_invoice": "Clone Invoice", - "confirm_clone": "This invoice will be cloned into a new Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", "item": { "title": "Item Title", "description": "Description", @@ -379,218 +537,281 @@ "select_an_item": "Type or click to select an item", "type_item_description": "Type Item Description (optional)" }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", - "created_message": "Invoice created successfully", - "updated_message": "Invoice updated successfully", - "deleted_message": "Invoice deleted successfully | Invoices deleted successfully", - "marked_as_sent_message": "Invoice marked as sent successfully", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", "something_went_wrong": "something went wrong", - "invalid_due_amount_message": "Total Invoice amount cannot be less than total paid amount for this Invoice. Please update the invoice or delete the associated payments to continue." + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." }, "payments": { - "title": "Payments", - "payments_list": "Payments List", - "record_payment": "Record Payment", - "customer": "Customer", - "date": "Date", - "amount": "Amount", - "action": "Action", - "payment_number": "Payment Number", - "payment_mode": "Payment Mode", - "invoice": "Invoice", - "note": "Note", - "add_payment": "Add Payment", - "new_payment": "New Payment", - "edit_payment": "Edit Payment", - "view_payment": "View Payment", - "add_new_payment": "Add New Payment", - "send_payment_receipt": "Send Payment Receipt", - "send_payment": "Send Payment", - "save_payment": "Save Payment", - "update_payment": "Update Payment", - "payment": "Payment | Payments", - "no_payments": "No payments yet!", - "not_selected": "Not selected", - "no_invoice": "No invoice", - "no_matching_payments": "There are no matching payments!", - "list_of_payments": "This section will contain the list of payments.", - "select_payment_mode": "Select payment mode", + "title": "भुगतान", + "payments_list": "भुगतान सूची", + "record_payment": "रिकॉर्ड भुगतान", + "customer": "ग्राहक", + "date": "दिनांक", + "amount": "राशि", + "action": "कार्य", + "payment_number": "भुगतान संख्या", + "payment_mode": "भुगतान का प्रकार", + "invoice": "चालान", + "note": "नोट", + "add_payment": "भुगतान जोड़ें", + "new_payment": "नया भुगतान", + "edit_payment": "भुगतान संपादित करें", + "view_payment": "भुगतान देखें", + "add_new_payment": "नया भुगतान जोड़ें", + "send_payment_receipt": "भुगतान रसीद भेजें", + "send_payment": "भुगतान भेजें", + "save_payment": "भुगतान सहेजें", + "update_payment": "भुगतान संपादित करें", + "payment": "भुगतान | भुगतान", + "no_payments": "अभी तक कोई भुगतान नहीं!", + "not_selected": "नहीं चुने गए", + "no_invoice": "कोई चालान नहीं", + "no_matching_payments": "कोई मिलान भुगतान नहीं हैं!", + "list_of_payments": "इस खंड में भुगतान की सूची होगी।", + "select_payment_mode": "भुगतान मोड चुनें", "confirm_mark_as_sent": "This estimate will be marked as sent", - "confirm_send_payment": "This payment will be sent via email to the customer", - "send_payment_successfully": "Payment sent successfully", - "something_went_wrong": "something went wrong", - "confirm_delete": "You will not be able to recover this Payment | You will not be able to recover these Payments", - "created_message": "Payment created successfully", - "updated_message": "Payment updated successfully", - "deleted_message": "Payment deleted successfully | Payments deleted successfully", - "invalid_amount_message": "Payment amount is invalid" + "confirm_send_payment": "यह भुगतान ग्राहक को ईमेल के माध्यम से भेजा जाएगा", + "send_payment_successfully": "भुगतान सफलतापूर्वक भेजा गया", + "something_went_wrong": "कुछ गलत हो गया", + "confirm_delete": "आप इस भुगतान को पुनर्प्राप्त नहीं कर पाएंगे | आप इन भुगतानों को पुनर्प्राप्त नहीं कर पाएंगे", + "created_message": "भुगतान सफलतापूर्वक बनाया गया", + "updated_message": "भुगतान सफलतापूर्वक अपडेट किया गया", + "deleted_message": "भुगतान सफलतापूर्वक हटाया गया | भुगतान सफलतापूर्वक हटा दिए गए", + "invalid_amount_message": "भुगतान राशि अमान्य है" }, "expenses": { - "title": "Expenses", - "expenses_list": "Expenses List", - "select_a_customer": "Select a customer", - "expense_title": "Title", - "customer": "Customer", - "contact": "Contact", - "category": "Category", - "from_date": "From Date", - "to_date": "To Date", - "expense_date": "Date", - "description": "Description", - "receipt": "Receipt", - "amount": "Amount", - "action": "Action", - "not_selected": "Not selected", - "note": "Note", - "category_id": "Category Id", - "date": "Date", - "add_expense": "Add Expense", - "add_new_expense": "Add New Expense", - "save_expense": "Save Expense", - "update_expense": "Update Expense", - "download_receipt": "Download Receipt", - "edit_expense": "Edit Expense", - "new_expense": "New Expense", - "expense": "Expense | Expenses", - "no_expenses": "No expenses yet!", - "list_of_expenses": "This section will contain the list of expenses.", - "confirm_delete": "You will not be able to recover this Expense | You will not be able to recover these Expenses", - "created_message": "Expense created successfully", - "updated_message": "Expense updated successfully", - "deleted_message": "Expense deleted successfully | Expenses deleted successfully", + "title": "व्यय", + "expenses_list": "व्यय सूची", + "select_a_customer": "एक ग्राहक चुनें", + "expense_title": "शीर्षक", + "customer": "ग्राहक", + "currency": "Currency", + "contact": "संपर्क", + "category": "वर्ग", + "from_date": "इस तारीख से", + "to_date": "इस तारीख तक", + "expense_date": "दिनांक", + "description": "विवरण", + "receipt": "रसीद", + "amount": "राशि", + "action": "कार्य", + "not_selected": "नहीं चुने गए", + "note": "ध्यान दें", + "category_id": "वर्ग आइडी", + "date": "दिनांक", + "add_expense": "खर्च जोड़ें", + "add_new_expense": "नया खर्च जोड़ें", + "save_expense": "खर्च बचाएं", + "update_expense": "अद्यतन व्यय", + "download_receipt": "रसीद डाउनलोड करें", + "edit_expense": "व्यय संपादित करें", + "new_expense": "नया खर्च", + "expense": "व्यय | व्यय", + "no_expenses": "अभी तक कोई खर्च नहीं!", + "list_of_expenses": "इस खंड में खर्चों की सूची होगी।", + "confirm_delete": "आप इस खर्चे की वसूली नहीं कर पाएंगे | आप इन खर्चों की वसूली नहीं कर पाएंगे", + "created_message": "व्यय सफलतापूर्वक बनाया गया", + "updated_message": "व्यय सफलतापूर्वक अपडेट किया गया", + "deleted_message": "व्यय सफलतापूर्वक हटाया गया | खर्चे सफलतापूर्वक मिटाए गए", "categories": { - "categories_list": "Categories List", - "title": "Title", - "name": "Name", - "description": "Description", - "amount": "Amount", - "actions": "Actions", - "add_category": "Add Category", - "new_category": "New Category", - "category": "Category | Categories", - "select_a_category": "Select a category" + "categories_list": "श्रेणियाँ सूची", + "title": "शीर्षक", + "name": "नाम", + "description": "विवरण", + "amount": "राशि", + "actions": "कार्रवाई", + "add_category": "वर्ग जोड़ें", + "new_category": "नया वर्ग", + "category": "श्रेणी | श्रेणियाँ", + "select_a_category": "एक श्रेणी चुनें" } }, "login": { - "email": "Email", - "password": "Password", - "forgot_password": "Forgot Password?", - "or_signIn_with": "or Sign in with", - "login": "Login", - "register": "Register", - "reset_password": "Reset Password", - "password_reset_successfully": "Password Reset Successfully", - "enter_email": "Enter email", - "enter_password": "Enter Password", - "retype_password": "Retype Password" + "email": "ईमेल", + "password": "पासवर्ड", + "forgot_password": "पासवर्ड भूल गए?", + "or_signIn_with": "या इसके साथ साइन इन करें", + "login": "प्रवेश", + "register": "रजिस्टर करें", + "reset_password": "पासवर्ड रीसेट करें", + "password_reset_successfully": "पासवर्ड रीसेट सफलतापूर्वक", + "enter_email": "ईमेल दर्ज करें", + "enter_password": "पासवर्ड दर्ज करें", + "retype_password": "पासवर्ड पुन: लिखें" + }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" }, "users": { - "title": "Users", - "users_list": "Users List", - "name": "Name", - "description": "Description", - "added_on": "Added On", - "date_of_creation": "Date Of Creation", - "action": "Action", - "add_user": "Add User", - "save_user": "Save User", - "update_user": "Update User", - "user": "User | Users", - "add_new_user": "Add New User", - "new_user": "New User", - "edit_user": "Edit User", - "no_users": "No users yet!", - "list_of_users": "This section will contain the list of users.", - "email": "Email", - "phone": "Phone", - "password": "Password", - "user_attached_message": "Cannot delete an item which is already in use", - "confirm_delete": "You will not be able to recover this User | You will not be able to recover these Users", - "created_message": "User created successfully", - "updated_message": "User updated successfully", - "deleted_message": "User deleted successfully | User deleted successfully" + "title": "उपयोगकर्ताओं", + "users_list": "उपयोगकर्ता सूची", + "name": "नाम", + "description": "विवरण", + "added_on": "पर जोड़ा", + "date_of_creation": "निर्माण की तारीख", + "action": "कार्य", + "add_user": "उपयोगकर्ता जोड़ें", + "save_user": "उपयोगकर्ता को सहेजें", + "update_user": "अद्यतन उपयोगकर्ता", + "user": "उपयोगकर्ता | उपयोगकर्ताओं", + "add_new_user": "नए उपयोगकर्ता को जोड़ें", + "new_user": "नया उपयोगकर्ता", + "edit_user": "यूजर को संपादित करो", + "no_users": "अभी तक कोई उपयोगकर्ता नहीं!", + "list_of_users": "इस खंड में वस्तुओं की सूची होगी।", + "email": "ईमेल", + "phone": "फ़ोन", + "password": "पासवर्ड", + "user_attached_message": "पहले से उपयोग में आने वाली वस्तु को हटा नहीं सकता", + "confirm_delete": "आप इस उपयोगकर्ता को पुनर्प्राप्त नहीं कर पाएंगे | आप इन उपयोगकर्ताओं को पुनर्प्राप्त नहीं कर पाएंगे", + "created_message": "उपयोगकर्ता सफलतापूर्वक बनाया गया", + "updated_message": "उपयोगकर्ता सफलतापूर्वक अपडेट किया गया", + "deleted_message": "उपयोगकर्ता सफलतापूर्वक हटाया गया | उपयोगकर्ता सफलतापूर्वक हटा दिया गया", + "select_company_role": "Select Role for {company}", + "companies": "Companies" }, "reports": { - "title": "Report", - "from_date": "From Date", - "to_date": "To Date", - "status": "Status", - "paid": "Paid", - "unpaid": "Unpaid", - "download_pdf": "Download PDF", - "view_pdf": "View PDF", - "update_report": "Update Report", - "report": "Report | Reports", + "title": "रिपोर्ट", + "from_date": "इस तारीख से", + "to_date": "इस तारीख तक", + "status": "स्थिति", + "paid": "भुगतान किया", + "unpaid": "अवैतनिक", + "download_pdf": "पीडीऍफ़ डाउनलोड करें", + "view_pdf": "पीडीएफ देखें", + "update_report": "रिपोर्ट अपडेट करें", + "report": "रिपोर्ट | रिपोर्टों", "profit_loss": { - "profit_loss": "Profit & Loss", - "to_date": "To Date", - "from_date": "From Date", - "date_range": "Select Date Range" + "profit_loss": "लाभ हानि", + "to_date": "इस तारीख तक", + "from_date": "इस तारीख से", + "date_range": "दिनांक सीमा चुनें" }, "sales": { - "sales": "Sales", - "date_range": "Select Date Range", - "to_date": "To Date", - "from_date": "From Date", - "report_type": "Report Type" + "sales": "बिक्री", + "date_range": "दिनांक सीमा चुनें", + "to_date": "इस तारीख तक", + "from_date": "इस तारीख से", + "report_type": "रिपोर्ट का प्रकार" }, "taxes": { - "taxes": "Taxes", - "to_date": "To Date", - "from_date": "From Date", - "date_range": "Select Date Range" + "taxes": "करों", + "to_date": "इस तारीख तक", + "from_date": "इस तारीख से", + "date_range": "दिनांक सीमा चुनें" }, "errors": { - "required": "Field is required" + "required": "यह जानकारी जरुरी है" }, "invoices": { - "invoice": "Invoice", - "invoice_date": "Invoice Date", - "due_date": "Due Date", - "amount": "Amount", - "contact_name": "Contact Name", - "status": "Status" + "invoice": "चालान", + "invoice_date": "चालान की तारीख", + "due_date": "नियत तारीख", + "amount": "राशि", + "contact_name": "संपर्क नाम", + "status": "स्थिति" }, "estimates": { - "estimate": "Estimate", - "estimate_date": "Estimate Date", - "due_date": "Due Date", - "estimate_number": "Estimate Number", - "ref_number": "Ref Number", - "amount": "Amount", - "contact_name": "Contact Name", - "status": "Status" + "estimate": "अनुमान", + "estimate_date": "अनुमान तिथि", + "due_date": "नियत तारीख", + "estimate_number": "अनुमान संख्या", + "ref_number": "प्रसंग संख्या", + "amount": "राशि", + "contact_name": "संपर्क नाम", + "status": "स्थिति" }, "expenses": { - "expenses": "Expenses", - "category": "Category", - "date": "Date", - "amount": "Amount", - "to_date": "To Date", - "from_date": "From Date", - "date_range": "Select Date Range" + "expenses": "लागत", + "category": "वर्ग", + "date": "दिनांक", + "amount": "राशि", + "to_date": "इस तारीख तक", + "from_date": "इस तारीख से", + "date_range": "दिनांक सीमा चुनें" } }, "settings": { "menu_title": { - "account_settings": "Account Settings", - "company_information": "Company Information", - "customization": "Customization", - "preferences": "Preferences", - "notifications": "Notifications", - "tax_types": "Tax Types", - "expense_category": "Expense Categories", - "update_app": "Update App", - "backup": "Backup", - "file_disk": "File Disk", - "custom_fields": "Custom Fields", - "payment_modes": "Payment Modes", - "notes": "Notes" + "account_settings": "खाता सेटिंग", + "company_information": "कंपनी जानकारी", + "customization": "अनुकूलन", + "preferences": "प्राथमिकतायें", + "notifications": "सूचनाएँ", + "tax_types": "कर प्रकार", + "expense_category": "व्यय श्रेणियां", + "update_app": "ऐप अपडेट करें", + "backup": "बैकअप", + "file_disk": "फ़ाइल डिस्क", + "custom_fields": "कस्टम फील्ड्स", + "payment_modes": "भुगतान के प्रकार", + "notes": "नोट्स", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" }, - "title": "Settings", - "setting": "Settings | Settings", - "general": "General", - "language": "Language", + "address_information": { + "section_description": " You can update Your Address information using form below." + }, + "title": "समायोजन", + "setting": "सेटिंग्स | समायोजन", + "general": "सामान्य", + "language": "भाषा", "primary_currency": "Primary Currency", "timezone": "Time Zone", "date_format": "Date Format", @@ -647,7 +868,13 @@ "address": "Address", "zip": "Zip", "save": "Save", - "updated_message": "Company information updated successfully" + "delete": "Delete", + "updated_message": "Company information updated successfully", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" }, "custom_fields": { "title": "Custom Fields", @@ -658,6 +885,7 @@ "label": "Label", "type": "Type", "name": "Name", + "slug": "Slug", "required": "Required", "placeholder": "Placeholder", "help_text": "Help Text", @@ -683,85 +911,104 @@ "select_relative_date": "Select Relative Date", "ticked_by_default": "Ticked by default", "updated_message": "Custom Field updated successfully", - "added_message": "Custom Field added successfully" + "added_message": "Custom Field added successfully", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." }, "customization": { "customization": "customization", - "save": "Save", - "addresses": { - "title": "Addresses", - "section_description": "You can set Customer Billing Address and Customer Shipping Address Format (Displayed in PDF only). ", - "customer_billing_address": "Customer Billing Address", - "customer_shipping_address": "Customer Shipping Address", - "company_address": "Company Address", - "insert_fields": "Insert Fields", - "contact": "Contact", - "address": "Address", - "display_name": "Display Name", - "primary_contact_name": "Primary Contact Name", - "email": "Email", - "website": "Website", - "name": "Name", - "country": "Country", - "state": "State", - "city": "City", - "company_name": "Company Name", - "address_street_1": "Address Street 1", - "address_street_2": "Address Street 2", - "phone": "Phone", - "zip_code": "Zip Code", - "address_setting_updated": "Address Setting updated successfully" - }, "updated_message": "Company information updated successfully", + "save": "Save", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", "invoices": { "title": "Invoices", - "notes": "Notes", - "invoice_prefix": "Invoice Prefix", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", "default_invoice_email_body": "Default Invoice Email Body", - "invoice_settings": "Invoice Settings", - "autogenerate_invoice_number": "Auto-generate Invoice Number", - "autogenerate_invoice_number_desc": "Disable this, If you don't wish to auto-generate invoice numbers each time you create a new invoice.", - "enter_invoice_prefix": "Enter invoice prefix", - "terms_and_conditions": "Terms and Conditions", "company_address_format": "Company Address Format", "shipping_address_format": "Shipping Address Format", "billing_address_format": "Billing Address Format", - "invoice_settings_updated": "Invoice Setting updated successfully" + "invoice_email_attachment": "Send invoices as attachments", + "invoice_email_attachment_setting_description": "Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." }, "estimates": { "title": "Estimates", - "estimate_prefix": "Estimate Prefix", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", "default_estimate_email_body": "Default Estimate Email Body", - "estimate_settings": "Estimate Settings", - "autogenerate_estimate_number": "Auto-generate Estimate Number", - "estimate_setting_description": "Disable this, If you don't wish to auto-generate estimate numbers each time you create a new estimate.", - "enter_estimate_prefix": "Enter estmiate prefix", - "estimate_setting_updated": "Estimate Setting updated successfully", "company_address_format": "Company Address Format", + "shipping_address_format": "Shipping Address Format", "billing_address_format": "Billing Address Format", - "shipping_address_format": "Shipping Address Format" + "estimate_email_attachment": "Send estimates as attachments", + "estimate_email_attachment_setting_description": "Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" }, "payments": { "title": "Payments", - "description": "Modes of transaction for payments", - "payment_prefix": "Payment Prefix", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", "default_payment_email_body": "Default Payment Email Body", - "payment_settings": "Payment Settings", - "autogenerate_payment_number": "Auto-generate Payment Number", - "payment_setting_description": "Disable this, If you don't wish to auto-generate payment numbers each time you create a new payment.", - "enter_payment_prefix": "Enter Payment Prefix", - "payment_setting_updated": "Payment Setting updated successfully", - "payment_modes": "Payment Modes", - "add_payment_mode": "Add Payment Mode", - "edit_payment_mode": "Edit Payment Mode", - "mode_name": "Mode Name", - "payment_mode_added": "Payment Mode Added", - "payment_mode_updated": "Payment Mode Updated", - "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", - "already_in_use": "Payment Mode is already in use", - "deleted_message": "Payment Mode deleted successfully", "company_address_format": "Company Address Format", - "from_customer_address_format": "From Customer Address Format" + "from_customer_address_format": "From Customer Address Format", + "payment_email_attachment": "Send payments as attachments", + "payment_email_attachment_setting_description": "Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.", + "payment_settings_updated": "Payment Settings updated successfully" }, "items": { "title": "Items", @@ -809,7 +1056,7 @@ "confirm_password": "Confirm Password" }, "notification": { - "title": "Notification", + "title": "Notifications", "email": "Send Notifications to", "description": "Which email notifications would you like to receive when something changes?", "invoice_viewed": "Invoice viewed", @@ -820,6 +1067,57 @@ "email_save_message": "Email saved successfully", "please_enter_email": "Please Enter Email" }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, "tax_types": { "title": "Tax Types", "add_tax": "Add Tax", @@ -839,6 +1137,18 @@ "confirm_delete": "You will not be able to recover this Tax Type", "already_in_use": "Tax is already in use" }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, "expense_category": { "title": "Expense Categories", "action": "Action", @@ -863,6 +1173,8 @@ "discount_setting": "Discount Setting", "discount_per_item": "Discount Per Item ", "discount_setting_description": "Enable this if you want to add Discount to individual invoice items. By default, Discount is added directly to the invoice.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", "save": "Save", "preference": "Preference | Preferences", "general_settings": "Default preferences for the system.", @@ -870,7 +1182,14 @@ "select_language": "Select Language", "select_time_zone": "Select Time Zone", "select_date_format": "Select Date Format", - "select_financial_year": "Select Financial Year" + "select_financial_year": "Select Financial Year", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" }, "update_app": { "title": "Update App", @@ -888,10 +1207,12 @@ "download_zip_file": "Download ZIP file", "unzipping_package": "Unzipping Package", "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", "running_migrations": "Running Migrations", "finishing_update": "Finishing Update", "update_failed": "Update Failed", - "update_failed_text": "Sorry! Your update failed on : {step} step" + "update_failed_text": "Sorry! Your update failed on : {step} step", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." }, "backup": { "title": "Backup | Backups", @@ -973,6 +1294,18 @@ "disk_variables_save_successfully": "Disk Configured Successfully", "disk_variables_save_error": "Disk configuration failed.", "invalid_disk_credentials": "Invalid credential of selected disk" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { @@ -988,8 +1321,9 @@ "company_name": "Company Name", "company_logo": "Company Logo", "logo_preview": "Logo Preview", - "preferences": "Preferences", - "preferences_desc": "Default preferences for the system.", + "preferences": "Company Preferences", + "preferences_desc": "Specify the default preferences for this company.", + "currency_set_alert": "The company's currency cannot be changed later.", "country": "Country", "state": "State", "city": "City", @@ -1027,6 +1361,15 @@ "permission_confirm_desc": "Folder permission check failed", "permission_desc": "Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions." }, + "verify_domain": { + "title": "Domain Verification", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Verify Now", + "success": "Domain Verify Successfully.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verify And Continue" + }, "mail": { "host": "Mail Host", "port": "Mail Port", @@ -1077,20 +1420,22 @@ "not_yet": "Not yet? Send it again", "password_min_length": "Password must contain {count} characters", "name_min_length": "Name must have at least {count} letters.", + "prefix_min_length": "Prefix must have at least {count} letters.", "enter_valid_tax_rate": "Enter valid tax rate", - "numbers_only": "Numbers Only.", - "characters_only": "Characters Only.", - "password_incorrect": "Passwords must be identical", - "password_length": "Password must be {count} character long.", - "qty_must_greater_than_zero": "Quantity must be greater than zero.", - "price_greater_than_zero": "Price must be greater than zero.", - "payment_greater_than_zero": "Payment must be greater than zero.", - "payment_greater_than_due_amount": "Entered Payment is more than due amount of this invoice.", - "quantity_maxlength": "Quantity should not be greater than 20 digits.", - "price_maxlength": "Price should not be greater than 20 digits.", - "price_minvalue": "Price should be greater than 0.", - "amount_maxlength": "Amount should not be greater than 20 digits.", - "amount_minvalue": "Amount should be greater than 0.", + "numbers_only": "केवल आंकड़े।", + "characters_only": "केवल वर्ण।", + "password_incorrect": "पासवर्ड एक जैसे होना चाहिए", + "password_length": "पासवर्ड कम से कम {count} अक्षर लंबा होना चाहिए!", + "qty_must_greater_than_zero": "मात्रा शून्य से अधिक होनी चाहिए।", + "price_greater_than_zero": "मात्रा शून्य से अधिक होनी चाहिए।", + "payment_greater_than_zero": "भुगतान शून्य से अधिक होना चाहिए।", + "payment_greater_than_due_amount": "दर्ज किया गया भुगतान इस चालान की देय राशि से अधिक है।", + "quantity_maxlength": "मात्रा 20 अंकों से अधिक नहीं होनी चाहिए।", + "price_maxlength": "मात्रा 20 अंकों से अधिक नहीं होनी चाहिए।", + "price_minvalue": "मात्रा शून्य से अधिक होनी चाहिए।", + "amount_maxlength": "राशि 20 अंकों से अधिक नहीं होनी चाहिए।", + "amount_minvalue": "राशि शून्य से अधिक होनी चाहिए।", + "discount_maxlength": "Discount should not be greater than max discount", "description_maxlength": "Description should not be greater than 255 characters.", "subject_maxlength": "Subject should not be greater than 100 characters.", "message_maxlength": "Message should not be greater than 255 characters.", @@ -1099,7 +1444,38 @@ "address_maxlength": "Address should not be greater than 255 characters.", "ref_number_maxlength": "Ref Number should not be greater than 255 characters.", "prefix_maxlength": "Prefix should not be greater than 5 characters.", - "something_went_wrong": "something went wrong" + "something_went_wrong": "something went wrong", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, "pdf_estimate_label": "Estimate", "pdf_estimate_number": "Estimate Number", diff --git a/resources/scripts/locales/hr.json b/resources/scripts/locales/hr.json new file mode 100644 index 000000000..46a82aadf --- /dev/null +++ b/resources/scripts/locales/hr.json @@ -0,0 +1,1149 @@ +{ + "navigation": { + "dashboard": "Upravljačka Ploča", + "customers": "Klijenti", + "items": "Stavke", + "invoices": "Fakture", + "expenses": "Rashodi", + "estimates": "Ponude", + "payments": "Uplate", + "reports": "Izvještaji", + "settings": "Postavke", + "logout": "Odjava", + "users": "Korisnici" + }, + "general": { + "add_company": "Dodaj tvrtku", + "view_pdf": "Pogledaj PDF", + "copy_pdf_url": "Kopiraj PDF link", + "download_pdf": "Preuzmi PDF", + "save": "Spremi", + "create": "Kreiraj", + "cancel": "Otkaži", + "update": "Ažuriraj", + "deselect": "Poništi izbor", + "download": "Preuzmi", + "from_date": "Od Datuma", + "to_date": "Do Datuma", + "from": "Pošiljatelj", + "to": "Primatelj", + "sort_by": "Posloži Po", + "ascending": "Rastuće", + "descending": "Padajuće", + "subject": "Predmet", + "body": "Tijelo", + "message": "Poruka", + "send": "Pošalji", + "go_back": "Natrag", + "back_to_login": "Natrag na prijavu?", + "home": "Početna", + "filter": "Filter", + "delete": "Obriši", + "edit": "Izmjeni", + "view": "Pogledaj", + "add_new_item": "Dodaj novu stavku", + "clear_all": "Izbriši sve", + "showing": "Prikazujem", + "of": "od", + "actions": "Radnje", + "subtotal": "UKUPNO", + "discount": "POPUST", + "fixed": "Fiksno", + "percentage": "Postotak", + "tax": "POREZ", + "total_amount": "UKUPAN IZNOS", + "bill_to": "Dokument za", + "ship_to": "Isporučiti za", + "due": "Dužan", + "draft": "U izradi", + "sent": "Poslano", + "all": "Sve", + "select_all": "Izaberi sve", + "choose_file": "Klikni ovdje da izabereš fajl", + "choose_template": "Izaberi predložak", + "choose": "Izaberi", + "remove": "Ukloni", + "powered_by": "Powered by", + "bytefury": "Bytefury", + "select_a_status": "Izaberi status", + "select_a_tax": "Izaberi porez", + "search": "Pretraga", + "are_you_sure": "Jeste li sigurni?", + "list_is_empty": "Popis je prazna.", + "no_tax_found": "Porez nije pronađen!", + "four_zero_four": "404", + "you_got_lost": "Ups! Izgubio si se!", + "go_home": "Idi na početnu stranicu", + "test_mail_conf": "Testiraj postavke Pošte", + "send_mail_successfully": "Pošta uspješno poslana", + "setting_updated": "Postavke uspješno ažurirane", + "select_state": "Odaberi saveznu državu", + "select_country": "Odaberi državu", + "select_city": "Odaberi grad", + "street_1": "Adresa 1", + "street_2": "Adresa 2", + "action_failed": "Radnja nije uspjela", + "retry": "Pokušaj ponovo", + "choose_note": "Odaberi napomenu", + "no_note_found": "Ne postoje spremljene napomene", + "insert_note": "Unesi bilješku", + "copied_pdf_url_clipboard": "Link do PDF fajla kopiran!" + }, + "dashboard": { + "select_year": "Odaberi godinu", + "cards": { + "due_amount": "Dužan iznos", + "customers": "Klijenti", + "invoices": "Računi", + "estimates": "Ponude" + }, + "chart_info": { + "total_sales": "Prodaja", + "total_receipts": "Računi", + "total_expense": "Rashodi", + "net_income": "Prihod NETO", + "year": "Odaberi godinu" + }, + "monthly_chart": { + "title": "Prodaja & Rashodi" + }, + "recent_invoices_card": { + "title": "Dospijele fakture", + "due_on": "Datum dospijeća", + "customer": "Klijent", + "amount_due": "Iznos dospijeća", + "actions": "Akcije", + "view_all": "Pogledaj sve" + }, + "recent_estimate_card": { + "title": "Nedavne ponude", + "date": "Datum", + "customer": "Klijent", + "amount_due": "Iznos dospijeća", + "actions": "Akcije", + "view_all": "Pogledaj sve" + } + }, + "tax_types": { + "name": "Naziv", + "description": "Opis", + "percent": "Postotak", + "compound_tax": "Složeni porez" + }, + "global_search": { + "search": "Pretraga...", + "customers": "Klijenti", + "users": "Korisnici", + "no_results_found": "Nema rezultata" + }, + "customers": { + "title": "Klijenti", + "add_customer": "Dodaj Klijenta", + "contacts_list": "Popis klijenata", + "name": "Naziv", + "mail": "Mail | Mail-ovi", + "statement": "Izjava", + "display_name": "Naziv koji se prikazuje", + "primary_contact_name": "Primarna kontakt osoba", + "contact_name": "Naziv kontakt osobe", + "amount_due": "Iznos dospijeća", + "email": "Email", + "address": "Adresa", + "phone": "Telefon", + "website": "Web stranica", + "overview": "Pregled", + "enable_portal": "Uključi portal", + "country": "Država", + "state": "Županija", + "city": "Grad", + "zip_code": "Poštanski broj", + "added_on": "Datum dodavanja", + "action": "Radnja", + "password": "Lozinka", + "street_number": "Broj ulice", + "primary_currency": "Primarna valuta", + "description": "Opis", + "add_new_customer": "Dodaj Novog Klijenta", + "save_customer": "Spremi klijenta", + "update_customer": "Ažuriraj klijenta", + "customer": "Klijent | Klijenti", + "new_customer": "Novi klijent", + "edit_customer": "Izmjeni klijenta", + "basic_info": "Osnovne informacije", + "billing_address": "Adresa za naplatu", + "shipping_address": "Adresa za dostavu", + "copy_billing_address": "Kopiraj iz adrese za naplatu", + "no_customers": "Još uvijek nema klijenata!", + "no_customers_found": "Klijenti nisu pronađeni!", + "no_contact": "Nema kontakta", + "no_contact_name": "Nema imena kontakta", + "list_of_customers": "Sekcija sadrži popis klijenata.", + "primary_display_name": "Primarni naziv koji se prikazuje", + "select_currency": "Odaberi valutu", + "select_a_customer": "Odaberi klijenta", + "type_or_click": "Unesi tekst ili klikni za odabir", + "new_transaction": "Nova transakcija", + "no_matching_customers": "Nije pronađeno!", + "phone_number": "Broj telefona", + "create_date": "Datum kreiranja", + "confirm_delete": "Nećete moći vratiti klijenta, sve njegove Fakture, Ponude i Uplate. | Nećete moći vratiti odabrane klijente, sve njihove Fakture, Ponude i Uplate.", + "created_message": "Klijent uspješno kreiran", + "updated_message": "Klijent uspješno ažuriran", + "deleted_message": "Klijent uspješno obrisan | Klijenti uspješno obrisani" + }, + "items": { + "title": "Stavke", + "items_list": "Popis stavki", + "name": "Naziv", + "unit": "Jedinica", + "description": "Opis", + "added_on": "Datum dodavanja", + "price": "Cijena", + "date_of_creation": "Datum kreiranja", + "not_selected": "Nema odabrane stavke", + "action": "Radnje", + "add_item": "Dodaj Stavku", + "save_item": "Spremi Stavku", + "update_item": "Ažuriraj Stavku", + "item": "Stavka | Stavke", + "add_new_item": "Dodaj novu stavku", + "new_item": "Nova stavka", + "edit_item": "Izmjeni stavku", + "no_items": "Još uvijek nema stavki!", + "list_of_items": "Ova sekcija sadrži popis stavki.", + "select_a_unit": "odaberi jedinicu", + "taxes": "Porezi", + "item_attached_message": "Nije dozvoljeno brisanje stavke koja se koristi", + "confirm_delete": "Nećeš moći vratiti ovu Stavku | Nećeš moći vratiti ove Stavke", + "created_message": "Stavka uspješno kreirana", + "updated_message": "Stavka uspješno ažurirana", + "deleted_message": "Stavka uspješno obrisana | Stavke uspješno obrisane" + }, + "estimates": { + "title": "Ponude", + "estimate": "Ponuda | Ponude", + "estimates_list": "Popis ponuda", + "days": "{days} Dan", + "months": "{months} Mjesec", + "years": "{years} Godina", + "all": "Sve", + "paid": "Plaćeno", + "unpaid": "Neplaćeno", + "customer": "KLIJENT", + "ref_no": "POZIV NA BROJ", + "number": "BROJ", + "amount_due": "IZNOS DOSPIJEĆA", + "partially_paid": "Djelomično Plaćeno", + "total": "Ukupno za plaćanje", + "discount": "Popust", + "sub_total": "Osnovica za obračun PDV-a", + "estimate_number": "Broj ponude", + "ref_number": "Poziv na broj", + "contact": "Kontakt", + "add_item": "Dodaj stavku", + "date": "Datum", + "due_date": "Datum Dospijeća", + "expiry_date": "Datum Isteka", + "status": "Status", + "add_tax": "Dodaj Porez", + "amount": "Iznos", + "action": "Radnja", + "notes": "Napomena", + "tax": "Porez", + "estimate_template": "Predložak", + "convert_to_invoice": "Pretvori u Fakturu", + "mark_as_sent": "Označi kao Poslano", + "send_estimate": "Pošalji Ponudu", + "resend_estimate": "Ponovo pošalji Ponudu", + "record_payment": "Unesi uplatu", + "add_estimate": "Dodaj Ponudu", + "save_estimate": "Spremi Ponudu", + "confirm_conversion": "Detalji ove Ponude će biti iskorišteni za pravljenje Fakture.", + "conversion_message": "Faktura uspješno kreirana", + "confirm_send_estimate": "Ova Ponuda će biti poslana putem Email-a klijentu", + "confirm_mark_as_sent": "Ova Ponuda će biti označena kao Poslana", + "confirm_mark_as_accepted": "Ova Ponuda će biti označena kao Prihvaćena", + "confirm_mark_as_rejected": "Ova Ponuda će biti označena kao Odbijena", + "no_matching_estimates": "Ne postoji odgovarajuća ponuda!", + "mark_as_sent_successfully": "Ponuda uspješno označena kao Poslana", + "send_estimate_successfully": "Ponuda uspješno poslana", + "errors": { + "required": "Obvezno polje!" + }, + "accepted": "Prihvaćeno", + "rejected": "Odbijeno", + "sent": "Poslano", + "draft": "U izradi", + "declined": "Odbijeno", + "new_estimate": "Nova Ponuda", + "add_new_estimate": "Dodaj novu Ponudu", + "update_Estimate": "Ažuriraj Ponudu", + "edit_estimate": "Izmjeni Ponudu", + "items": "stavke", + "Estimate": "Ponuda | Ponude", + "add_new_tax": "Dodaj novi Porez", + "no_estimates": "Još uvijek nema Ponuda!", + "list_of_estimates": "Ova sekcija sadrži popis Ponuda.", + "mark_as_rejected": "Označi kao odbijeno", + "mark_as_accepted": "Označi kao prihvaćeno", + "marked_as_accepted_message": "Ponuda označena kao prihvaćena", + "marked_as_rejected_message": "Ponuda označena kao odbijena", + "confirm_delete": "Nećeš moći vratiti ovu Ponudu | Nećeš moći vratiti ove Ponude", + "created_message": "Ponuda uspješno kreirana", + "updated_message": "Ponuda uspješno ažurirana", + "deleted_message": "Ponuda uspješno obrisana | Ponude uspješno obrisane", + "something_went_wrong": "nešto je krenulo naopako", + "item": { + "title": "Naziv stavke", + "description": "Opis", + "quantity": "Količina", + "price": "Cijena", + "discount": "Popust", + "total": "Ukupno za plaćanje", + "total_discount": "Ukupan popust", + "sub_total": "Ukupno", + "tax": "Porez", + "amount": "Iznos", + "select_an_item": "Unesi tekst ili klikni da izabereš", + "type_item_description": "Unesi opis Stavke (nije obavezno)" + } + }, + "invoices": { + "title": "Fakture", + "invoices_list": "Popis Faktura", + "days": "{days} dan", + "months": "{months} Mjesec", + "years": "{years} Godina", + "all": "Sve", + "paid": "Plaćeno", + "unpaid": "Neplaćeno", + "viewed": "Pregledano", + "overdue": "Zakašnjenje", + "completed": "Izvršeno", + "customer": "KLIJENT", + "paid_status": "STATUS UPLATE", + "ref_no": "POZIV NA BROJ", + "number": "BROJ", + "amount_due": "IZNOS DOSPIJEĆA", + "partially_paid": "Djelomično plaćeno", + "total": "Ukupno za plaćanje", + "discount": "Popust", + "sub_total": "Osnovica za obračun PDV-a", + "invoice": "Faktura | Fakture", + "invoice_number": "Broj Fakture", + "ref_number": "Poziv na broj", + "contact": "Kontakt", + "add_item": "Dodaj Stavku", + "date": "Datum", + "due_date": "Datum Dospijeća", + "status": "Status", + "add_tax": "Dodaj Porez", + "amount": "Iznos", + "action": "Radnja", + "notes": "Napomena", + "view": "Pogledaj", + "send_invoice": "Pošalji Fakturu", + "resend_invoice": "Ponovo pošalji Fakturu", + "invoice_template": "Predložak Fakture", + "template": "Predložak", + "mark_as_sent": "Označi kao Poslano", + "confirm_send_invoice": "Ova Faktura će biti poslana putem Email-a klijentu", + "invoice_mark_as_sent": "Ova Faktura će biti označena kao poslana", + "confirm_send": "Ova Faktura će biti poslana putem Email-a klijentu", + "invoice_date": "Datum Fakture", + "record_payment": "Unesi Uplatu", + "add_new_invoice": "Dodaj novu Fakturu", + "update_expense": "Ažuriraj Rashod", + "edit_invoice": "Izmjeni Fakturu", + "new_invoice": "Nova Faktura", + "save_invoice": "Spremi Fakturu", + "update_invoice": "Ažuriraj Fakturu", + "add_new_tax": "Dodaj novi Porez", + "no_invoices": "Još uvijek nema Faktura!", + "list_of_invoices": "Ova sekcija sadrži popis Faktura.", + "select_invoice": "Odaberi Fakturu", + "no_matching_invoices": "Ne postoje Fakture koje odgovaraju pretrazi!", + "mark_as_sent_successfully": "Faktura uspješno označena kao Poslana", + "invoice_sent_successfully": "Faktura uspješno poslana", + "cloned_successfully": "Uspješno napravljen duplikat Fakture", + "clone_invoice": "Napravi duplikat", + "confirm_clone": "Ova Faktura će biti duplikat nove Fakture", + "item": { + "title": "Naziv Stavke", + "description": "Opis", + "quantity": "Količina", + "price": "Cijena", + "discount": "Popust", + "total": "Ukupno za plaćanje", + "total_discount": "Ukupan popust", + "sub_total": "Ukupno", + "tax": "Porez", + "amount": "Iznos", + "select_an_item": "Unesi tekst ili klikni da izabereš", + "type_item_description": "Unesi opis Stavke (nije obavezno)" + }, + "confirm_delete": "Nećeš moći vratiti ovu Fakturu | Nećeš moći vratiti ove Fakture", + "created_message": "Faktura uspješno kreirana", + "updated_message": "Faktura uspješno ažurirana", + "deleted_message": "Faktura uspješno obrisana | Fakture uspješno obrisane", + "marked_as_sent_message": "Faktura označena kao uspješno poslana", + "something_went_wrong": "nešto je krenulo naopako", + "invalid_due_amount_message": "Ukupan iznos za plaćanje na fakturi ne može biti manji od iznosa uplate za ovu fakturu. Molim Vas ažurirajte fakturu ili obrišite uplate koje su povezane sa ovom fakturom da bi nastavili." + }, + "payments": { + "title": "Uplate", + "payments_list": "Popis uplata", + "record_payment": "Unesi Uplatu", + "customer": "Klijent", + "date": "Datum", + "amount": "Iznos", + "action": "Radnja", + "payment_number": "Broj uplate", + "payment_mode": "Način plaćanja", + "invoice": "Faktura", + "note": "Napomena", + "add_payment": "Dodaj Uplatu", + "new_payment": "Nova Uplata", + "edit_payment": "Izmjeni Uplatu", + "view_payment": "Pogledaj Uplatu", + "add_new_payment": "Dodaj Novu Uplatu", + "send_payment_receipt": "Pošalji potvrdu o uplati", + "send_payment": "Pošalji Uplatu", + "save_payment": "Spremi Uplatu", + "update_payment": "Ažuriraj Uplatu", + "payment": "Uplata | Uplate", + "no_payments": "Još uvijek nema uplata!", + "not_selected": "Nije odabrano", + "no_invoice": "Nema fakture", + "no_matching_payments": "Ne postoje uplate koje odgovaraju pretrazi!", + "list_of_payments": "Ova sekcija sadrži popis uplata.", + "select_payment_mode": "Odaberi način plaćanja", + "confirm_mark_as_sent": "Ovo plaćanje će biti označeno kao Poslano", + "confirm_send_payment": "Ovo plaćanje će biti poslano putem Email-a klijentu", + "send_payment_successfully": "Plaćanje uspješno poslano", + "something_went_wrong": "nešto je krenulo naopako", + "confirm_delete": "Nećeš moći vratiti ovu Uplatu | Nećeš moći vratiti ove Uplate", + "created_message": "Uplata uspješno kreirana", + "updated_message": "Uplata uspješno ažurirana", + "deleted_message": "Uplata uspješno obrisana | Uplate uspješno obrisane", + "invalid_amount_message": "Iznos Uplate je pogrešan" + }, + "expenses": { + "title": "Rashodi", + "expenses_list": "Popis Rashoda", + "select_a_customer": "Odaberi klijenta", + "expense_title": "Naslov", + "customer": "Klijent", + "contact": "Kontakt", + "category": "Kategorija", + "from_date": "Datum od", + "to_date": "Datum do", + "expense_date": "Datum", + "description": "Opis", + "receipt": "Račun", + "amount": "Iznos", + "action": "Radnja", + "not_selected": "Nije odabrano", + "note": "Napomena", + "category_id": "ID kategorije", + "date": "Datum", + "add_expense": "Dodaj Rashod", + "add_new_expense": "Dodaj Novi Rashod", + "save_expense": "Spremi Rashod", + "update_expense": "Ažuriraj Rashod", + "download_receipt": "Preuzmi Račun", + "edit_expense": "Izmjeni Rashod", + "new_expense": "Novi Rashod", + "expense": "Rashod | Rashodi", + "no_expenses": "Još uvijek nema rashoda!", + "list_of_expenses": "Ova sekcija sadrži popis rashoda.", + "confirm_delete": "Nećeš moći vratiti ovaj Rashod | Nećeš moći vratiti ove Rashode", + "created_message": "Rashod uspješno kreiran", + "updated_message": "Rashod uspješno ažuriran", + "deleted_message": "Rashod uspješno obrisan | Rashodi uspješno obrisani", + "categories": { + "categories_list": "Popis Kategorija", + "title": "Naslov", + "name": "Naziv", + "description": "Opis", + "amount": "Iznos", + "actions": "Radnje", + "add_category": "Dodaj Kategoriju", + "new_category": "Nova Kategorija", + "category": "Kategorija | Kategorije", + "select_a_category": "Izaberi kategoriju" + } + }, + "login": { + "email": "Email", + "password": "Lozinka", + "forgot_password": "Zaboravili ste lozinku?", + "or_signIn_with": "ili se prijavite sa", + "login": "Prijava", + "register": "Registracija", + "reset_password": "Resetiraj lozinku", + "password_reset_successfully": "Lozinka Uspješno Resetiranja", + "enter_email": "Unesi email", + "enter_password": "Unesi lozinku", + "retype_password": "Ponovo unesi lozinku" + }, + "users": { + "title": "Korisnici", + "users_list": "Popis korisnika", + "name": "Ime i prezime", + "description": "Opis", + "added_on": "Datum dodavanja", + "date_of_creation": "Datum kreiranja", + "action": "Radnja", + "add_user": "Dodaj Korisnika", + "save_user": "Spremi Korisnika", + "update_user": "Ažuriraj Korisnika", + "user": "Korisnik | Korisnici", + "add_new_user": "Dodaj novog korisnika", + "new_user": "Novi Korisnik", + "edit_user": "Izmjeni Korisnika", + "no_users": "Još uvijek nema korisnika!", + "list_of_users": "Ova sekcija sadrži popis korisnika.", + "email": "Email", + "phone": "Broj telefona", + "password": "Lozinka", + "user_attached_message": "Ne možete obrisati stavku koja je već u upotrebi", + "confirm_delete": "Nećeš moći vratiti ovog Korisnika | Nećeš moći vratiti ove Korisnike", + "created_message": "Korisnik uspješno napravljen", + "updated_message": "Korisnik uspješno ažuriran", + "deleted_message": "Korisnik uspješno obrisan | Korisnici uspješno obrisani" + }, + "reports": { + "title": "Izvještaj", + "from_date": "Datum od", + "to_date": "Datum do", + "status": "Status", + "paid": "Plaćeno", + "unpaid": "Neplaćeno", + "download_pdf": "Preuzmi PDF", + "view_pdf": "Pogledaj PDF", + "update_report": "Ažuriraj Izvještaj", + "report": "Izvještaj | Izvještaji", + "profit_loss": { + "profit_loss": "Prihod & Rashod", + "to_date": "Datum do", + "from_date": "Datum od", + "date_range": "Izaberi raspon datuma" + }, + "sales": { + "sales": "Prodaja", + "date_range": "Izaberi raspon datuma", + "to_date": "Datum do", + "from_date": "Datum od", + "report_type": "Vrsta Izveštaja" + }, + "taxes": { + "taxes": "Porezi", + "to_date": "Datum do", + "from_date": "Datum od", + "date_range": "Izaberi raspon datuma" + }, + "errors": { + "required": "Polje je obavezno" + }, + "invoices": { + "invoice": "Faktura", + "invoice_date": "Datum Fakture", + "due_date": "Datum Dospijeća", + "amount": "Iznos", + "contact_name": "Ime Kontakta", + "status": "Status" + }, + "estimates": { + "estimate": "Ponuda", + "estimate_date": "Datum Ponude", + "due_date": "Datum Dospijeća", + "estimate_number": "Broj Ponude", + "ref_number": "Poziv na broj", + "amount": "Iznos", + "contact_name": "Ime Kontakta", + "status": "Status" + }, + "expenses": { + "expenses": "Rashodi", + "category": "Kategorija", + "date": "Datum", + "amount": "Iznos", + "to_date": "Datum do", + "from_date": "Datum od", + "date_range": "Izaberi raspon datuma" + } + }, + "settings": { + "menu_title": { + "account_settings": "Postavke Naloga", + "company_information": "Podaci o firmi", + "customization": "Prilagođavanje", + "preferences": "Preference", + "notifications": "Obavještenja", + "tax_types": "Vrste Poreza", + "expense_category": "Kategorije Rashoda", + "update_app": "Ažuriraj Aplikaciju", + "backup": "Backup", + "file_disk": "File Disk", + "custom_fields": "Prilagođena polja", + "payment_modes": "Način plaćanja", + "notes": "Napomene" + }, + "title": "Postavke", + "setting": "Postavke | Postavke", + "general": "Opće", + "language": "Jezik", + "primary_currency": "Primarna Valuta", + "timezone": "Vremenska Zona", + "date_format": "Format Datuma", + "currencies": { + "title": "Valute", + "currency": "Valuta | Valute", + "currencies_list": "Popis Valuta", + "select_currency": "Odaberi Valutu", + "name": "Naziv", + "code": "Kod", + "symbol": "Simbol", + "precision": "Preciznost", + "thousand_separator": "Separator za tisuće", + "decimal_separator": "Separator za decimale", + "position": "Pozicija", + "position_of_symbol": "Pozicija simbola", + "right": "Desno", + "left": "Lijevo", + "action": "Radnja", + "add_currency": "Dodaj Valutu" + }, + "mail": { + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Lozinka", + "mailgun_secret": "Mailgun Lozinka", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Lozinka", + "ses_key": "SES Ključ", + "password": "Mail Lozinka", + "username": "Mail Korisničko Ime", + "mail_config": "Mail Postavke", + "from_name": "Naziv pošiljaoca", + "from_mail": "E-mail adresa pošiljaoca", + "encryption": "E-mail enkripcija", + "mail_config_desc": "Ispod se nalazi forma za podešavanje E-mail drajvera za slanje pošte iz aplikacije. Takođe možete podesiti provajdere treće strane kao Sendgrid, SES itd." + }, + "pdf": { + "title": "PDF Postavke", + "footer_text": "Tekstualno zaglavlje na dnu strane", + "pdf_layout": "PDF Raspored" + }, + "company_info": { + "company_info": "Podaci o firmi", + "company_name": "Naziv firme", + "company_logo": "Logo firme", + "section_description": "Informacije o Vašoj firmi će biti prikazane na fakturama, ponudama i drugim dokumentima koji se prave u ovoj aplikaciji.", + "phone": "Telefon", + "country": "Država", + "state": "Županija", + "city": "Grad", + "address": "Adresa", + "zip": "Poštanski broj", + "save": "Spremi", + "updated_message": "Podaci o firmi uspješno spremljeni" + }, + "custom_fields": { + "title": "Prilagođena polja", + "section_description": "Prilagodite vaše Fakture, Ponude i Uplate sa svojim poljima. Koristite polja navedena niže na formatu adrese na stranici Postavke/Prilagođavanje.", + "add_custom_field": "Dodaj prilagođeno polje", + "edit_custom_field": "Izmjeni prilagođeno polje", + "field_name": "Naziv polja", + "label": "Oznaka", + "type": "Vrsta", + "name": "Naziv", + "required": "Obavezno", + "placeholder": "Opis polja (Placeholder)", + "help_text": "Pomoćni tekst", + "default_value": "Zadana vrijednost", + "prefix": "Prefiks", + "starting_number": "Početni broj", + "model": "Model", + "help_text_description": "Unesite opis koji će pomoći korisnicima razumjeti svrhu ovog prilagođenog polja.", + "suffix": "Sufiks", + "yes": "Da", + "no": "Ne", + "order": "Redosljed", + "custom_field_confirm_delete": "Nećeš moći vratiti ovo prilagođeno polje", + "already_in_use": "Prilagođeno polje je već u uporabi", + "deleted_message": "Prilagođeno polje je uspješno obrisano", + "options": "opcije", + "add_option": "Dodaj opcije", + "add_another_option": "Dodaj još jednu opciju", + "sort_in_alphabetical_order": "Poredaj po Abecedi", + "add_options_in_bulk": "Grupno dodavanje opcija", + "use_predefined_options": "Koristi predefinirane opcije", + "select_custom_date": "Odaberi datum", + "select_relative_date": "Odaberi relativan datum", + "ticked_by_default": "Zadano odabrano", + "updated_message": "Prilagođeno polje uspješno ažurirano", + "added_message": "Prilagođeno polje uspješno dodato" + }, + "customization": { + "customization": "prilagođavanje", + "save": "Spremi", + "addresses": { + "title": "Adrese", + "section_description": "Možete podesiti format adrese klijenta za naplatu i adrese klijenta za dostavu (Prikazano samo u PDF-u)", + "customer_billing_address": "Adresa za naplatu klijentu", + "customer_shipping_address": "Adresa za dostavu klijentu", + "company_address": "Adresa Firme", + "insert_fields": "Dodaj Polja", + "contact": "Kontakt", + "address": "Adresa", + "display_name": "Naziv koji se prikazuje", + "primary_contact_name": "Primarna kontakt osoba", + "email": "Email", + "website": "Web stranica", + "name": "Naziv", + "country": "Država", + "state": "Županija", + "city": "Grad", + "company_name": "Naziv Firme", + "address_street_1": "Adresa 1", + "address_street_2": "Adresa 2", + "phone": "Telefon", + "zip_code": "Poštanski broj", + "address_setting_updated": "Postavke adrese uspješno ažurirano" + }, + "updated_message": "Podaci o firmi su uspješno ažurirani", + "invoices": { + "title": "Fakture", + "notes": "Napomene", + "invoice_prefix": "Prefiks faktura", + "default_invoice_email_body": "Zadani sadržaj email-a za Fakture", + "invoice_settings": "Postavke za fakture", + "autogenerate_invoice_number": "Automatski-generiraj broj fakture", + "autogenerate_invoice_number_desc": "Onemogući ovo. Ako ne želite automatski-generirane brojeve kod izrade nove fakture.", + "enter_invoice_prefix": "Unesite prefiks fakture", + "terms_and_conditions": "Uvjeti Korištenja", + "company_address_format": "Format adrese firme", + "shipping_address_format": "Format adrese za dostavu firme", + "billing_address_format": "Format adrese za naplatu firme", + "invoice_settings_updated": "Postavke fakture uspješno spremljene" + }, + "estimates": { + "title": "Ponude", + "estimate_prefix": "Prefiks ponuda", + "default_estimate_email_body": "Zadani sadržaj email-a za Ponude", + "estimate_settings": "Postavke za ponude", + "autogenerate_estimate_number": "Automatski-generiraj broj ponude", + "estimate_setting_description": "Onemogući ovo ako ne želite automatski-generirati broj ponude kada pravite novu ponudu.", + "enter_estimate_prefix": "Unesite prefiks ponude", + "estimate_setting_updated": "Postavke ponuda uspješno spremljene", + "company_address_format": "Format adrese firme", + "billing_address_format": "Format adrese za naplatu firme", + "shipping_address_format": "Format adrese za dostavu firme" + }, + "payments": { + "title": "Uplate", + "description": "Način plaćanja", + "payment_prefix": "Prefiks uplata", + "default_payment_email_body": "Zadani sadržaj email-a za potvrdu o plaćanju (račun)", + "payment_settings": "Postavke za plaćanja", + "autogenerate_payment_number": "Automatski-generiraj broj uplate", + "payment_setting_description": "Onemogući ovo ako ne želite automatski-generirati broj uplate kada pravite novu uplatu.", + "enter_payment_prefix": "Unesite prefiks uplate", + "payment_setting_updated": "Postavke plaćanja uspješno spremljene", + "payment_modes": "Način Plaćanja", + "add_payment_mode": "Dodaj način plaćanja", + "edit_payment_mode": "Izmjeni način plaćanja", + "mode_name": "Način plaćanja", + "payment_mode_added": "Način plaćanja dodan", + "payment_mode_updated": "Način plaćanja ažuriran", + "payment_mode_confirm_delete": "Nećeš moći vratiti ovaj Način Plaćanja", + "already_in_use": "Način plaćanja se već koristi", + "deleted_message": "Način plaćanja uspješno obrisan", + "company_address_format": "Format adrese firme", + "from_customer_address_format": "Format adrese klijenta" + }, + "items": { + "title": "Stavke", + "units": "Jedinice", + "add_item_unit": "Dodaj jedinicu stavke", + "edit_item_unit": "Izmjeni jedinicu stavke", + "unit_name": "Naziv jedinice", + "item_unit_added": "Jedinica stavke dodana", + "item_unit_updated": "Jedinica stavke ažurirana", + "item_unit_confirm_delete": "Nećeš moći vratiti ovu jedinicu stavke", + "already_in_use": "Jedinica stavke se već koristi", + "deleted_message": "Jedinica stavke uspješno obrisana" + }, + "notes": { + "title": "Napomene", + "description": "Uštedite vrijeme praveći napomene i koristeći ih na fakturama, ponudama i uplatama.", + "notes": "Napomene", + "type": "Vrsta", + "add_note": "Dodaj Napomenu", + "add_new_note": "Dodaj novu Napomenu", + "name": "Naziv", + "edit_note": "Izmjeni Napomenu", + "note_added": "Napomena uspješno dodana", + "note_updated": "Napomena uspješno ažurirana", + "note_confirm_delete": "Nećeš moći vratiti ovu Napomenu", + "already_in_use": "Napomena se već koristi", + "deleted_message": "Napomena uspješno obrisana" + } + }, + "account_settings": { + "profile_picture": "Profilna slika", + "name": "Ime i prezime", + "email": "Email", + "password": "Lozinka", + "confirm_password": "Potvrdi lozinku", + "account_settings": "Postavke računa", + "save": "Spremi", + "section_description": "Možete ažurirati Vaše ime i prezime, email i lozinku koristeći formu niže.", + "updated_message": "Postavke računa uspješno ažurirane" + }, + "user_profile": { + "name": "Ime i prezime", + "email": "Email", + "password": "Lozinka", + "confirm_password": "Potvrdi lozinku" + }, + "notification": { + "title": "Obavijesti", + "email": "Šalji obavijesti na", + "description": "Koje email obavijesti želite dobiti kada se nešto promijeni?", + "invoice_viewed": "Faktura pogledana", + "invoice_viewed_desc": "Kada klijent pogleda fakturu koja je poslana putem ove aplikacije.", + "estimate_viewed": "Ponuda gledana", + "estimate_viewed_desc": "Kada klijent pogleda ponudu koja je poslana putem ove aplikacije.", + "save": "Spremi", + "email_save_message": "Email uspješno sačuvan", + "please_enter_email": "Molim Vas unesite E-mail" + }, + "tax_types": { + "title": "Vrste Poreza", + "add_tax": "Dodaj Porez", + "edit_tax": "Izmjeni Porez", + "description": "Možete dodati ili ukloniti porez. Ova aplikacija podržava porez, kako na individualnim stavkama tako i na fakturi/ponudi.", + "add_new_tax": "Dodaj Novi Porez", + "tax_settings": "Postavke Poreza", + "tax_per_item": "Porez po Stavkama", + "tax_name": "Naziv Poreza", + "compound_tax": "Složeni Porez", + "percent": "Postotak", + "action": "Radnja", + "tax_setting_description": "Izaberite ovo ako želite dodati porez na individualne stavke. Zadano ponašanje je da je porez dodan direktno na fakturu.", + "created_message": "Vrsta poreza uspješno kreirana", + "updated_message": "Vrsta poreza uspješno ažurirana", + "deleted_message": "Vrsta poreza uspješno obrisana", + "confirm_delete": "Nećete moći vratiti Vrstu Poreza", + "already_in_use": "Porez se već koristi" + }, + "expense_category": { + "title": "Kategorija Rashoda", + "action": "Radnja", + "description": "Kategorije su obavezne za dodavanje rashoda. Možeš dodati ili obrisati kategorije.", + "add_new_category": "Dodaj novu kategoriju", + "add_category": "Dodaj kategoriju", + "edit_category": "Izmjeni kategoriju", + "category_name": "Naziv kategorije", + "category_description": "Opis", + "created_message": "Kategorija rashoda je uspješno kreirana", + "deleted_message": "Kategorija rashoda je uspješno izbrisana", + "updated_message": "Kategorija rashoda je uspješno ažurirana", + "confirm_delete": "Nećeš moći vratiti ovu kategoriju rashoda", + "already_in_use": "Kategorija se već koristi" + }, + "preferences": { + "currency": "Valuta", + "default_language": "Jezik", + "time_zone": "Vremenska Zona", + "fiscal_year": "Financijska Godina", + "date_format": "Format datuma", + "discount_setting": "Postavke popusta", + "discount_per_item": "Popust po stavkama", + "discount_setting_description": "Izaberite ovo ako želite dodati Popust na individualne stavke. Zadana vrijednost je da je Popust dodan direktno na fakturu.", + "save": "Spremi", + "preference": "Preferencija | Preferencije", + "general_settings": "Zadane postavke za sistem", + "updated_message": "Preferencije uspješno ažurirane", + "select_language": "Izaberi Jezik", + "select_time_zone": "Izaberi Vremensku Zonu", + "select_date_format": "Izaberi Format Datuma", + "select_financial_year": "Izaberi Financijsku Godinu" + }, + "update_app": { + "title": "Ažuriraj aplikaciju", + "description": "Lako možeš ažurirati Crater tako da napraviš provjeru novih verzija klikom na polje ispod", + "check_update": "Provjeri ažuriranost", + "avail_update": "Dostupna je nova verzija", + "next_version": "Sljedeća verzija", + "requirements": "Zahtjevi", + "update": "Ažuriraj sada", + "update_progress": "Ažuriranje je u toku...", + "progress_text": "Trajanje je svega par minuta. Nemojte osviježavati ili zatvoriti stranicu dok ažuriranje ne bude gotovo", + "update_success": "Aplikacija je ažurirana! Molim Vas pričekajte da se stranica automatski osvježi.", + "latest_message": "Nema nove verzije! Ažurirana posljednja verzija.", + "current_version": "Trenutna verzija", + "download_zip_file": "Preuzmi ZIP paket", + "unzipping_package": "Raspakiranje paketa", + "copying_files": "Kopiranje datoteka", + "deleting_files": "Brisanje fajlova koji nisu u upotrebi", + "running_migrations": "Migracije u toku", + "finishing_update": "Završavanje ažuriranja", + "update_failed": "Neuspešno ažuriranje", + "update_failed_text": "Žao mi je! Tvoje ažuriranje nije uspelo na koraku broj: {step} korak" + }, + "backup": { + "title": "Sigurnosna kopija | Sigurnosne kopije", + "description": "Backup je zip arhiv koji sadrži sve fajlove iz foldera koje ste naveli, također sadrži sigurnosnu kopiju baze podataka.", + "new_backup": "Dodaj novi Backup", + "create_backup": "Napravi Backup", + "select_backup_type": "Izaberi tip Backupa", + "backup_confirm_delete": "Nećeš moći vratiti ovaj Backup", + "path": "putanja", + "new_disk": "Novi Disk", + "created_at": "datum kreiranja", + "size": "veličina", + "dropbox": "dropbox", + "local": "lokalni", + "healthy": "zdrav", + "amount_of_backups": "broj backupa", + "newest_backups": "najnoviji backupi", + "used_storage": "korišteno skladište", + "select_disk": "Izaberi Disk", + "action": "Radnja", + "deleted_message": "Backup uspješno obrisan", + "created_message": "Backup uspješno napravljen", + "invalid_disk_credentials": "Pogrešne akreditacije za odabrani disk" + }, + "disk": { + "title": "File Disk | File Disks", + "description": "Zadano ponašanje je da Crater koristi lokalni disk za čuvanje backupa, avatara i ostalih slika. Možete podesiti više od jednog disk drajvera od provajdera poput DigitalOcean, S3 i Dropbox po vašoj želji.", + "created_at": "datum kreiranja", + "dropbox": "dropbox", + "name": "Naziv", + "driver": "Drajver", + "disk_type": "Vrsta", + "disk_name": "Naziv Diska", + "new_disk": "Dodaj novi Disk", + "filesystem_driver": "Filesystem Driver", + "local_driver": "lokalni Drajver", + "local_root": "local Root", + "public_driver": "Public Driver", + "public_root": "Public Root", + "public_url": "Public URL", + "public_visibility": "Public Visibility", + "media_driver": "Media Driver", + "media_root": "Media Root", + "aws_driver": "AWS Driver", + "aws_key": "AWS Key", + "aws_secret": "AWS Secret", + "aws_region": "AWS Region", + "aws_bucket": "AWS Bucket", + "aws_root": "AWS Root", + "do_spaces_type": "Do Spaces type", + "do_spaces_key": "Do Spaces key", + "do_spaces_secret": "Do Spaces Secret", + "do_spaces_region": "Do Spaces Region", + "do_spaces_bucket": "Do Spaces Bucket", + "do_spaces_endpoint": "Do Spaces Endpoint", + "do_spaces_root": "Do Spaces Root", + "dropbox_type": "Dropbox Type", + "dropbox_token": "Dropbox Token", + "dropbox_key": "Dropbox Key", + "dropbox_secret": "Dropbox Secret", + "dropbox_app": "Dropbox App", + "dropbox_root": "Dropbox Root", + "default_driver": "Zadani Drajver", + "is_default": "DA LI JE ZADAN", + "set_default_disk": "Postavi zadani Disk", + "set_default_disk_confirm": "Ovaj disk će biti postavljen kao zadani i svi novi PDF fajlovi će biti sačuvani na ovom disku", + "success_set_default_disk": "Disk je uspješno postavljen kao zadani", + "save_pdf_to_disk": "Spremi PDF fajlove na Disk", + "disk_setting_description": " Uključite ovo ako želite da spremite kopiju PDF fajla svake Fakture, Ponude i Uplate na vaš zadani disk automatski. Uključivanjem ove opcije smanjujete vrijeme učitavanja pregleda PDF fajlova.", + "select_disk": "Izaberi Disk", + "disk_settings": "Disk Postavke", + "confirm_delete": "Ovo neće utjecati na vaše postojeće fajlove i foldere na navedenom disku, ali će se konfiguracija vašeg diska izbrisati iz Cratera.", + "action": "Radnja", + "edit_file_disk": "Izmjeni File Disk", + "success_create": "Disk uspješno dodan", + "success_update": "Disk uspješno ažuriran", + "error": "Dodavanje diska nije uspelo", + "deleted_message": "File Disk uspješno obrisan", + "disk_variables_save_successfully": "Disk uspješno podešen", + "disk_variables_save_error": "Postavljanje diska nije uspjelo.", + "invalid_disk_credentials": "Pogrešne akreditacije za navedeni disk" + } + }, + "wizard": { + "account_info": "Informacije o računu", + "account_info_desc": "Detalji u nastavku koriste se za kreiranje glavnog administratorskog računa. Moguće ih je izmjeniti u bilo kada nakon prijavljivanja.", + "name": "Naziv", + "email": "E-mail", + "password": "Lozinka", + "confirm_password": "Potvrdi lozinku", + "save_cont": "Spremi & Nastavi", + "company_info": "Informacije o firmi", + "company_info_desc": "Ove informacije će biti prikazane na fakturama. Moguće ih je izmjeniti kasnije u postavkama.", + "company_name": "Naziv firme", + "company_logo": "Logo firme", + "logo_preview": "Pregled logotipa", + "preferences": "Preference", + "preferences_desc": "Zadane Preference za sistem", + "country": "Država", + "state": "Županija", + "city": "Grad", + "address": "Adresa", + "street": "Ulica1 | Ulica2", + "phone": "Telefon", + "zip_code": "Poštanski broj", + "go_back": "Vrati se nazad", + "currency": "Valuta", + "language": "Jezik", + "time_zone": "Vremenska zona", + "fiscal_year": "Financijska godina", + "date_format": "Format datuma", + "from_address": "Adresa pošiljaoca", + "username": "Korisničko ime", + "next": "Sljedeće", + "continue": "Nastavi", + "skip": "Preskoči", + "database": { + "database": "URL stranice & baze podataka", + "connection": "Veza baze podataka", + "host": "Host baze podataka", + "port": "Port baze podataka", + "password": "Lozinka baze podataka", + "app_url": "URL aplikacije", + "app_domain": "Domen aplikacije", + "username": "Korisničko ime baze podataka", + "db_name": "Naziv baze podataka", + "db_path": "Putanja do baze", + "desc": "Kreiraj bazu podataka na svom serveru i postavi akreditacije prateći obrazac u nastavku." + }, + "permissions": { + "permissions": "Dozvole", + "permission_confirm_title": "Da li ste sigurni da želite nastaviti?", + "permission_confirm_desc": "Provjera dozvola za foldere nije uspjela", + "permission_desc": "U nastavku se nalazi popis dozvola za foldere koji su nužni kako bi alikacija radila. Ukoliko provjera dozvola ne uspije, ažuriraj svoj popis dozvola za te foldere." + }, + "mail": { + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail drajver", + "secret": "Lozinka", + "mailgun_secret": "Mailgun Lozinka", + "mailgun_domain": "Domen", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Lozinka", + "ses_key": "SES Ključ", + "password": "Lozinka za e-mail", + "username": "Koristničko ime za e-mail", + "mail_config": "E-mail konfiguracija", + "from_name": "Naziv pošiljatelja", + "from_mail": "E-mail adresa pošiljatelja", + "encryption": "E-mail enkripcija", + "mail_config_desc": "Ispod se nalazi forma za postavljanje E-mail drajvera za slanje pošte iz aplikacije. Također možete podesiti provajdere treće strane kao Sendgrid, SES itd." + }, + "req": { + "system_req": "Sistemski zahtjevi", + "php_req_version": "Zahtjeva PHP verziju {version} ", + "check_req": "Provjeri zahtjeve", + "system_req_desc": "Crater ima nekoliko zahtjeva za server. Provjeri da li tvoj server ima potrebnu verziju PHP-a i sva navedena proširenja navedena u nastavku" + }, + "errors": { + "migrate_failed": "Neuspješno migriranje", + "database_variables_save_error": "Konfiguraciju nije moguće zapisati u .env datoteku. Provjeri dozvole za datoteku", + "mail_variables_save_error": "E-mail konfiguracija neuspješna", + "connection_failed": "Neuspješno povezivanje s bazom podataka", + "database_should_be_empty": "Baza podataka treba biti prazna" + }, + "success": { + "mail_variables_save_successfully": "E-mail je uspješno konfiguriran", + "database_variables_save_successfully": "Baza podataka je uspješno konfigurirana" + } + }, + "validation": { + "invalid_phone": "Pogrešan Broj Telefona", + "invalid_url": "Nevažeći URL (primer: http://www.craterapp.com)", + "invalid_domain_url": "Pogrešan URL (primjer: craterapp.com)", + "required": "Obavezno polje", + "email_incorrect": "Pogrešan E-mail", + "email_already_taken": "Navedeni E-mail je zauzet", + "email_does_not_exist": "Korisnik sa navedenom e-mail adresom ne postoji", + "item_unit_already_taken": "Naziv ove jedinice stavke je zauzet", + "payment_mode_already_taken": "Naziv ovog načina plaćanja je zauzet", + "send_reset_link": "Pošalji link za reset", + "not_yet": "Još uvijek ništa? Pošalji ponovno", + "password_min_length": "Lozinka mora imati {count} znakova", + "name_min_length": "Naziv mora imati najmanje {count} slova", + "enter_valid_tax_rate": "Unesite odgovarajuću poreznu stopu", + "numbers_only": "Mogu se unositi samo brojevi", + "characters_only": "Mogu se unositi samo znakovi", + "password_incorrect": "Lozinka mora biti identična", + "password_length": "Lozinka mora imati {count} znakova", + "qty_must_greater_than_zero": "Količina mora biti veća od 0.", + "price_greater_than_zero": "Cijena mora biti veća od 0", + "payment_greater_than_zero": "Uplata mora biti veća od 0", + "payment_greater_than_due_amount": "Unesena uplata je veća od dospijeća iznosa ove fakture", + "quantity_maxlength": "Količina ne može imati više od 20 znakova", + "price_maxlength": "Cijena ne može imati više od 20 znakova", + "price_minvalue": "Cijena mora biti veća od 0", + "amount_maxlength": "Iznos ne može da ima više od 20 znakova", + "amount_minvalue": "Iznos mora biti veći od 0", + "description_maxlength": "Opis ne može imati više od 65,000 znakova", + "subject_maxlength": "Predmet ne može imati više od 100 znakova", + "message_maxlength": "Poruka ne može imati više od 255 znakova", + "maximum_options_error": "Maksimalan broj opcija je izabran. Prvo uklonite izabranu opciju da bi izabrali drugu", + "notes_maxlength": "Napomena ne može imati više od 65,000 znakova", + "address_maxlength": "Adresa ne može imati više od 255 znakova", + "ref_number_maxlength": "Poziv na broj ne može imati više od 225 znakova", + "prefix_maxlength": "Prefiks ne može imati više od 5 znakova", + "something_went_wrong": "nešto je krenulo naopako" + }, + "pdf_estimate_label": "Ponuda", + "pdf_estimate_number": "Broj Ponude", + "pdf_estimate_date": "Datum Ponude", + "pdf_estimate_expire_date": "Datum isteka Ponude", + "pdf_invoice_label": "Faktura", + "pdf_invoice_number": "Broj Fakture", + "pdf_invoice_date": "Datum Fakture", + "pdf_invoice_due_date": "Datum dospijeća Fakture", + "pdf_notes": "Napomena", + "pdf_items_label": "Stavke", + "pdf_quantity_label": "Količina", + "pdf_price_label": "Cijena", + "pdf_discount_label": "Popust", + "pdf_amount_label": "Iznos", + "pdf_subtotal": "Osnovica za obračun PDV-a", + "pdf_total": "Ukupan iznos", + "pdf_payment_label": "Plaćanje", + "pdf_payment_receipt_label": "POTVRDA O UPLATI", + "pdf_payment_date": "Datum Uplate", + "pdf_payment_number": "Broj Uplate", + "pdf_payment_mode": "Način Plaćanja", + "pdf_payment_amount_received_label": "Iznos Uplate", + "pdf_expense_report_label": "IZVJEŠTAJ O RASHODIMA", + "pdf_total_expenses_label": "RASHODI UKUPNO", + "pdf_profit_loss_label": "IZVEJŠTAJ O PRIHODIMA I RASHODIMA", + "pdf_sales_customers_label": "Izvještaj Prodaje po Strankama", + "pdf_sales_items_label": "Izvještaj Prodaje po Stavkama", + "pdf_tax_summery_label": "Izvještaj Poreza", + "pdf_income_label": "PRIHOD", + "pdf_net_profit_label": "NETO PROFIT", + "pdf_customer_sales_report": "Izvještaj o Prodaji: Po Klijentu", + "pdf_total_sales_label": "PRODAJA UKUPNO", + "pdf_item_sales_label": "Izvještaj o Prodaji: Po Stavci", + "pdf_tax_report_label": "IZVEŠTAJ O POREZIMA", + "pdf_total_tax_label": "UKUPNO POREZ", + "pdf_tax_types_label": "Vrsta Poreza", + "pdf_expenses_label": "Rashodi", + "pdf_bill_to": "Račun za,", + "pdf_ship_to": "Isporučiti za,", + "pdf_received_from": "Poslat od strane:", + "pdf_tax_label": "Porez" +} diff --git a/resources/scripts/locales/id.json b/resources/scripts/locales/id.json new file mode 100644 index 000000000..41527cd38 --- /dev/null +++ b/resources/scripts/locales/id.json @@ -0,0 +1,1521 @@ +{ + "navigation": { + "dashboard": "Dasbor", + "customers": "Pelanggan", + "items": "Barang", + "invoices": "Faktur", + "recurring-invoices": "Faktur Langganan", + "expenses": "Pengeluaran", + "estimates": "Perkiraan", + "payments": "Pembayaran", + "reports": "Laporan", + "settings": "Pengaturan", + "logout": "Keluar", + "users": "Pengguna", + "modules": "Modules" + }, + "general": { + "add_company": "Tambahkan Perusahaan", + "view_pdf": "Lihat PDF", + "copy_pdf_url": "Salin URL PDF", + "download_pdf": "Unduh PDF", + "save": "Simpan", + "create": "Buat", + "cancel": "Batal", + "update": "Perbarui", + "deselect": "Hapus pilihan", + "download": "Unduh", + "from_date": "Dari tanggal", + "to_date": "Sampai tanggal", + "from": "Dari", + "to": "Untuk", + "ok": "Oke", + "yes": "Ya", + "no": "Tidak", + "sort_by": "Urutkan Berdasarkan", + "ascending": "Sortir naik", + "descending": "Sortir turun", + "subject": "Perihal", + "body": "Body", + "message": "Pesan", + "send": "Kirim", + "preview": "Pratinjau", + "go_back": "Kembali", + "back_to_login": "Kembali untuk masuk?", + "home": "Beranda", + "filter": "Sortir", + "delete": "Hapus", + "edit": "Ubah", + "view": "Tampilan", + "add_new_item": "Tambahkan Item Baru", + "clear_all": "Hapus semua", + "showing": "Menampilkan", + "of": "dari", + "actions": "Aksi", + "subtotal": "Subtotal", + "discount": "Potongan", + "fixed": "Tetap", + "percentage": "Persentase", + "tax": "Pajak", + "total_amount": "Jumlah Total", + "bill_to": "Ditagih kepada", + "ship_to": "Dikirim ke", + "due": "Batas Waktu", + "draft": "Draf", + "sent": "Kirim", + "all": "Semuanya", + "select_all": "Pilih Semua", + "select_template": "Pilih Template", + "choose_file": "Klik disini untuk memilih file", + "choose_template": "Pilih template", + "choose": "Pilih", + "remove": "Hapus", + "select_a_status": "Pilih status", + "select_a_tax": "Pilih pajak", + "search": "Cari", + "are_you_sure": "Apakah Anda yakin?", + "list_is_empty": "Daftar kosong.", + "no_tax_found": "Tidak ada pajak!", + "four_zero_four": "404", + "you_got_lost": "Whoops! Kamu akan kehilangan kesempatan ini!", + "go_home": "Kembali ke Beranda", + "test_mail_conf": "Pengujian konfigurasi email", + "send_mail_successfully": "Email berhasil dikirim", + "setting_updated": "Pengaturan berhasil disimpan", + "select_state": "Pilih Provinsi", + "select_country": "Pilih Negara", + "select_city": "Pilih kota", + "street_1": "Jalan 1", + "street_2": "Jalan 2", + "action_failed": "Aksi gagal", + "retry": "Coba lagi", + "choose_note": "Pilih catatan", + "no_note_found": "Tidak ada catatan yang ditemukan", + "insert_note": "Sisipkan Catatan", + "copied_pdf_url_clipboard": "URL file PDF disalin ke clipboard!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Dokumen", + "do_you_wish_to_continue": "Apakah anda ingin melanjutkan?", + "note": "Catatan", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" + }, + "dashboard": { + "select_year": "Pilih tahun", + "cards": { + "due_amount": "Jumlah yang harus dibayar", + "customers": "Pelanggan", + "invoices": "Faktur", + "estimates": "Perkiraan", + "payments": "Payments" + }, + "chart_info": { + "total_sales": "Penjualan", + "total_receipts": "Tanda terima", + "total_expense": "Pengeluaran", + "net_income": "Pemasukan Bersih", + "year": "Pilih tahun" + }, + "monthly_chart": { + "title": "Penjualan & Pengeluaran" + }, + "recent_invoices_card": { + "title": "Tagihan Jatuh Tempo", + "due_on": "Jatuh Tempo", + "customer": "Pelanggan", + "amount_due": "Jumlah yang harus dibayar", + "actions": "Aksi", + "view_all": "Lihat semua" + }, + "recent_estimate_card": { + "title": "Perkiraan", + "date": "Tanggal", + "customer": "Pelanggan", + "amount_due": "Jumlah yang harus dibayar", + "actions": "Aksi", + "view_all": "Lihat semua" + } + }, + "tax_types": { + "name": "Nama", + "description": "Deskripsi", + "percent": "Persen", + "compound_tax": "Pajak majemuk" + }, + "global_search": { + "search": "Cari...", + "customers": "Pelanggan", + "users": "Pengguna", + "no_results_found": "Hasil Tidak Ditemukan" + }, + "company_switcher": { + "label": "Ganti Perusahaan", + "no_results_found": "Hasil Tidak Ditemukan", + "add_new_company": "Tambah perusahaan baru", + "new_company": "Perusahaan baru", + "created_message": "Perusahaan telah berhasil dibuat" + }, + "dateRange": { + "today": "Hari Ini", + "this_week": "Minggu Ini", + "this_month": "Bulan Ini", + "this_quarter": "Kuartal Ini", + "this_year": "Tahun Ini", + "previous_week": "Minggu Sebelumnya", + "previous_month": "Bulan Sebelumnya", + "previous_quarter": "Kuartal Sebelumnya", + "previous_year": "Tahun Sebelumnya", + "custom": "Kustom" + }, + "customers": { + "title": "Pelanggan", + "prefix": "Awalan", + "add_customer": "Tambah Pelanggan", + "contacts_list": "Daftar Pelanggan", + "name": "Nama", + "mail": "Surel | Surel", + "statement": "Pernyataan", + "display_name": "Nama yang Ditampilkan", + "primary_contact_name": "Nama Kontak Utama", + "contact_name": "Nama Kontak", + "amount_due": "Jumlah yang harus dibayar", + "email": "Email", + "address": "Alamat", + "phone": "Telepon", + "website": "Situs Web", + "overview": "Tinjauan", + "invoice_prefix": "Awalan Pajak", + "estimate_prefix": "Awalan Perkiraan", + "payment_prefix": "Awalan Pembayaran", + "enable_portal": "Mengaktifkan Portal", + "country": "Negara", + "state": "Provinsi", + "city": "Kota", + "zip_code": "Kode Pos", + "added_on": "Ditambahkan Pada", + "action": "Aksi", + "password": "Kata Sandi", + "confirm_password": "Konfirmasi Kata Sandi", + "street_number": "Nomor jalan", + "primary_currency": "Mata Uang Utama", + "description": "Deskripsi", + "add_new_customer": "Tambah Pelanggan Baru", + "save_customer": "Simpan Pelanggan", + "update_customer": "Perbarui Pelanggan", + "customer": "Pelanggan", + "new_customer": "Pelanggan Baru", + "edit_customer": "Ubah Pelanggan", + "basic_info": "Info dasar", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", + "billing_address": "Alamat Tagihan", + "shipping_address": "Alamat Pengiriman", + "copy_billing_address": "Menyalin dari Tagihan", + "no_customers": "Belum ada pelanggan!", + "no_customers_found": "Pelanggan tidak ditemukan!", + "no_contact": "Tidak ada kontak", + "no_contact_name": "Tidak ada nama kontak", + "list_of_customers": "Bagian ini akan memuat daftar pelanggan.", + "primary_display_name": "Tampilan nama utama", + "select_currency": "Pilih mata uang", + "select_a_customer": "Pilih pelanggan", + "type_or_click": "Ketik atau klik untuk memilih", + "new_transaction": "Transaksi Baru", + "no_matching_customers": "Pelanggan tidak ditemukan!", + "phone_number": "Nomor Telepon", + "create_date": "Buat Tanggal", + "confirm_delete": "Anda tidak akan dapat mengembalikan pelanggan dan semua tagihan terkait. | Anda tidak akan dapat mengembalikan pelanggan dan semua Tagihan terkait, Penawaran dan Pembayaran.", + "created_message": "Pelanggan berhasil dibuat", + "updated_message": "Pelanggan berhasil diperbarui", + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Pelanggan berhasil dihapus", + "edit_currency_not_allowed": "Ketika transaksi telah dibuat, mata uang tidak dapat dirubah." + }, + "items": { + "title": "Barang", + "items_list": "Daftar Barang", + "name": "Nama", + "unit": "Satuan", + "description": "Deskripsi", + "added_on": "Ditambahkan Pada", + "price": "Harga", + "date_of_creation": "Tanggal pembuatan", + "not_selected": "Tidak ada barang yang dipilih", + "action": "Aksi", + "add_item": "Tambah Barang", + "save_item": "Simpan Barang", + "update_item": "Perbarui Barang", + "item": "Barang", + "add_new_item": "Tambahkan Item Baru", + "new_item": "Item Baru", + "edit_item": "Sunting Item", + "no_items": "Belum ada item!", + "list_of_items": "Bagian ini akan memuat daftar item.", + "select_a_unit": "pilih unit", + "taxes": "Pajak", + "item_attached_message": "Item yang sudah digunakan tidak dapat dihapus", + "confirm_delete": "Anda tidak dapat mengembalikan item ini | Anda tidak dapat mengembalikan item ini", + "created_message": "Item berhasil dibuat", + "updated_message": "Item berhasil diperbarui", + "deleted_message": "Item berhasil dihapus | Item berhasil dihapus" + }, + "estimates": { + "title": "Perkiraan", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", + "estimate": "Estimasi", + "estimates_list": "Daftar Penawaran", + "days": "{days} Hari", + "months": "{months} Bulan", + "years": "{years} Tahun", + "all": "Semuanya", + "paid": "Lunas", + "unpaid": "Belum lunas", + "customer": "PELANGGAN", + "ref_no": "REF NO.", + "number": "NOMOR", + "amount_due": "Jumlah yang harus dibayar", + "partially_paid": "Pembayaran Sebagian", + "total": "Total", + "discount": "Diskon", + "sub_total": "Sub Total", + "estimate_number": "Nomor Penawaran", + "ref_number": "Nomor Ref", + "contact": "Kontak", + "add_item": "Tambah Barang", + "date": "Tanggal", + "due_date": "Tanggal Jatuh Tempo", + "expiry_date": "Tanggal Kadaluarsa", + "status": "Status", + "add_tax": "Tambah Pajak", + "amount": "Jumlah", + "action": "Aksi", + "notes": "Catatan", + "tax": "Pajak", + "estimate_template": "Template", + "convert_to_invoice": "Ubah menjadi faktur", + "mark_as_sent": "Tandai sebagai Terkirim", + "send_estimate": "Kirim Penawaran", + "resend_estimate": "Kirim Ulang Penawaran", + "record_payment": "Rekam Pembayaran", + "add_estimate": "Tambah Penawaran", + "save_estimate": "Simpan Penawaran", + "confirm_conversion": "Penawaran ini akan dibuat menjadi faktur baru.", + "conversion_message": "Faktur berhasil dibuat", + "confirm_send_estimate": "Penawaran ini akan dikirim ke pelanggam melalui email", + "confirm_mark_as_sent": "Penawaran ini akan ditandai telah dikirim", + "confirm_mark_as_accepted": "Penawaran ini akan ditandai telah diterima", + "confirm_mark_as_rejected": "Penawaran ini akan ditandai telah ditolak", + "no_matching_estimates": "Penawaran tidak ditemukan!", + "mark_as_sent_successfully": "Tandai Faktur berhasil dikirim", + "send_estimate_successfully": "Penawaran berhasil dikirim", + "errors": { + "required": "Wajib diisi" + }, + "accepted": "Diterima", + "rejected": "Ditolak", + "expired": "Expired", + "sent": "Terkirim", + "draft": "Draf", + "viewed": "Viewed", + "declined": "Ditolak", + "new_estimate": "Penawaran Baru", + "add_new_estimate": "Tambah Penawaran Baru", + "update_Estimate": "Perbarui Penawaran", + "edit_estimate": "Sunting Penawaran", + "items": "barang", + "Estimate": "Estimasi", + "add_new_tax": "Tambah Pajak Baru", + "no_estimates": "Belum Ada Penawaran!", + "list_of_estimates": "Bagian ini akan memuat daftar penawaran.", + "mark_as_rejected": "Ditandai telah ditolak", + "mark_as_accepted": "Ditandai telah diterima", + "marked_as_accepted_message": "Tandai Penawaran diterima", + "marked_as_rejected_message": "Tandai Penawaran ditolak", + "confirm_delete": "Anda tidak dapat mengembalikan penawaran ini | Anda tidak dapat mengembalikan penawaran ini", + "created_message": "Penawaran berhasil dibuat", + "updated_message": "Penawaran berhasil diperbarui", + "deleted_message": "Penawaran berhasil dihapus | Penawaran berhasil dihapus", + "something_went_wrong": "terjadi kesalahan", + "item": { + "title": "Judul item", + "description": "Deskripsi", + "quantity": "Kuantitas", + "price": "Harga", + "discount": "Diskon", + "total": "Total", + "total_discount": "Total Diskon", + "sub_total": "Sub Total", + "tax": "Pajak", + "amount": "Jumlah", + "select_an_item": "Ketik atau klik untuk memilih", + "type_item_description": "Ketik Deskripsi Item (opsional)" + } + }, + "invoices": { + "title": "Faktur", + "download": "Download", + "pay_invoice": "Pay Invoice", + "invoices_list": "Daftar Faktur", + "invoice_information": "Invoice Information", + "days": "{days} Hari", + "months": "{months} Bulan", + "years": "{years} Tahun", + "all": "Semuanya", + "paid": "Lunas", + "unpaid": "Belum lunas", + "viewed": "Dilihat", + "overdue": "Lewat jatuh tempo", + "completed": "Selesai", + "customer": "PELANGGAN", + "paid_status": "STATUS PEMBAYARAN", + "ref_no": "REF NO.", + "number": "NOMOR", + "amount_due": "Jumlah yang harus dibayar", + "partially_paid": "Pembayaran Sebagian", + "total": "Total", + "discount": "Diskon", + "sub_total": "Sub Total", + "invoice": "Faktur | Faktur", + "invoice_number": "Nomor Faktur", + "ref_number": "Nomor Ref", + "contact": "Kontak", + "add_item": "Tambah Barang", + "date": "Tanggal", + "due_date": "Tanggal Jatuh Tempo", + "status": "Status", + "add_tax": "Tambah Pajak", + "amount": "Jumlah", + "action": "Aksi", + "notes": "Catatan", + "view": "Tampilan", + "send_invoice": "Kirim Faktur", + "resend_invoice": "Kirim ulang faktur", + "invoice_template": "Template Faktur", + "conversion_message": "Faktur berhasil digandakan", + "template": "Pilih Template", + "mark_as_sent": "Tandai sebagai Terkirim", + "confirm_send_invoice": "Penawaran ini akan dikirim ke pelanggam melalui email", + "invoice_mark_as_sent": "Penawaran ini akan ditandai telah dikirim", + "confirm_mark_as_accepted": "Penawaran ini akan ditandai telah diterima", + "confirm_mark_as_rejected": "Penawaran ini akan ditandai telah ditolak", + "confirm_send": "Faktur ini akan dikirim ke pelanggam melalui email", + "invoice_date": "Tanggal Faktur", + "record_payment": "Rekam Pembayaran", + "add_new_invoice": "Tambah Faktur Baru", + "update_expense": "Memperbarui Biaya", + "edit_invoice": "Sunting Faktur", + "new_invoice": "Faktur Baru", + "save_invoice": "Simpan Faktur", + "update_invoice": "Sunting Faktur", + "add_new_tax": "Tambah Pajak Baru", + "no_invoices": "Belum Ada Faktur!", + "mark_as_rejected": "Ditandai telah ditolak", + "mark_as_accepted": "Ditandai telah diterima", + "list_of_invoices": "Bagian ini akan memuat daftar Faktur.", + "select_invoice": "Pilih Faktur", + "no_matching_invoices": "Faktur tidak ditemukan!", + "mark_as_sent_successfully": "Tandai Faktur berhasil dikirim", + "invoice_sent_successfully": "Faktur berhasil dikirim", + "cloned_successfully": "Faktur berhasil digandakan", + "clone_invoice": "Gandakan Faktur", + "confirm_clone": "Faktur ini akan dikloning menjadi Faktur Faktur baru", + "item": { + "title": "Judul item", + "description": "Deskripsi", + "quantity": "Kuantitas", + "price": "Harga", + "discount": "Diskon", + "total": "Total", + "total_discount": "Total Diskon", + "sub_total": "Sub Total", + "tax": "Pajak", + "amount": "Jumlah", + "select_an_item": "Ketik atau klik untuk memilih", + "type_item_description": "Ketik Deskripsi Item (opsional)" + }, + "payment_attached_message": "One of the selected invoices already have a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal", + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Invoice created successfully", + "updated_message": "Invoice updated successfully", + "deleted_message": "Invoice deleted successfully | Invoices deleted successfully", + "marked_as_sent_message": "Invoice marked as sent successfully", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Invoice amount cannot be less than total paid amount for this Invoice. Please update the invoice or delete the associated payments to continue." + }, + "recurring_invoices": { + "title": "Recurring Invoices", + "invoices_list": "Recurring Invoices List", + "days": "{days} Hari", + "months": "{months} Bulan", + "years": "{years} Tahun", + "all": "Semuanya", + "paid": "Lunas", + "unpaid": "Belum lunas", + "viewed": "Dilihat", + "overdue": "Overdue", + "active": "Aktif", + "completed": "Selesai", + "customer": "PELANGGAN", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NOMOR", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Diskon", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Kontak", + "add_item": "Tambah Barang", + "date": "Tanggal", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Pilih status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Selesai", + "add_tax": "Tambah Pajak", + "amount": "Jumlah", + "action": "Aksi", + "notes": "Catatan", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Tanggal Mulai", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Tambah Pajak Baru", + "no_invoices": "Belum ada Faktur Berulang!", + "mark_as_rejected": "Ditandai telah ditolak", + "mark_as_accepted": "Ditandai telah diterima", + "list_of_invoices": "Bagian ini akan memuat daftar Faktur Berulang.", + "select_invoice": "Pilih Faktur", + "no_matching_invoices": "Faktur Berulang tidak ditemukan!", + "mark_as_sent_successfully": "Tandai Faktur Berulang sebagai berhasil dikirim", + "invoice_sent_successfully": "Faktur Berulang berhasil dikirim", + "cloned_successfully": "Faktur Berulang berhasil digandakan", + "clone_invoice": "Gandakan Faktur Berulang", + "confirm_clone": "Faktur Berulang ini akan digandakan menjadi Faktur Berulang yang baru", + "item": { + "title": "Judul item", + "description": "Deskripsi", + "quantity": "Kuantitas", + "price": "Harga", + "discount": "Diskon", + "total": "Total", + "total_discount": "Total Diskon", + "sub_total": "Sub Total", + "tax": "Pajak", + "amount": "Jumlah", + "select_an_item": "Ketik atau klik untuk memilih item", + "type_item_description": "Deskripsi permintaan (opsional)" + }, + "frequency": { + "title": "Frekuensi", + "select_frequency": "Pilih Frekuensi", + "minute": "Menit", + "hour": "Jam", + "day_month": "Hari dalam bulan", + "month": "Bulan", + "day_week": "Hari dalam minggu" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, + "payments": { + "title": "Pembayaran", + "payments_list": "Daftar Pembayaran", + "record_payment": "Record Payment", + "customer": "Pelanggan", + "date": "Tanggal", + "amount": "Jumlah", + "action": "Aksi", + "payment_number": "Nomor Pembayaran", + "payment_mode": "Mode Pembayaran", + "invoice": "Faktur", + "note": "Catatan", + "add_payment": "Tambah Pembayaran", + "new_payment": "Pembayaran Baru", + "edit_payment": "Edit Payment", + "view_payment": "View Payment", + "add_new_payment": "Add New Payment", + "send_payment_receipt": "Send Payment Receipt", + "send_payment": "Send Payment", + "save_payment": "Save Payment", + "update_payment": "Update Payment", + "payment": "Pembayaran", + "no_payments": "No payments yet!", + "not_selected": "Tidak dipilih", + "no_invoice": "Tidak ada faktur", + "no_matching_payments": "There are no matching payments!", + "list_of_payments": "This section will contain the list of payments.", + "select_payment_mode": "Select payment mode", + "confirm_mark_as_sent": "This estimate will be marked as sent", + "confirm_send_payment": "This payment will be sent via email to the customer", + "send_payment_successfully": "Payment sent successfully", + "something_went_wrong": "something went wrong", + "confirm_delete": "You will not be able to recover this Payment | You will not be able to recover these Payments", + "created_message": "Payment created successfully", + "updated_message": "Payment updated successfully", + "deleted_message": "Payment deleted successfully | Payments deleted successfully", + "invalid_amount_message": "Payment amount is invalid" + }, + "expenses": { + "title": "Pengeluaran", + "expenses_list": "Daftar Pengeluaran", + "select_a_customer": "Pilih pelanggan", + "expense_title": "Judul", + "customer": "Pelanggan", + "currency": "Mata Uang", + "contact": "Kontak", + "category": "Kategori", + "from_date": "Dari Tanggal", + "to_date": "Sampai Tanggal", + "expense_date": "Tanggal", + "description": "Deskripsi", + "receipt": "Receipt", + "amount": "Jumlah", + "action": "Aksi", + "not_selected": "Tidak dipilih", + "note": "Catatan", + "category_id": "Category Id", + "date": "Tanggal", + "add_expense": "Add Expense", + "add_new_expense": "Add New Expense", + "save_expense": "Save Expense", + "update_expense": "Update Expense", + "download_receipt": "Download Receipt", + "edit_expense": "Edit Expense", + "new_expense": "New Expense", + "expense": "Expense | Expenses", + "no_expenses": "No expenses yet!", + "list_of_expenses": "This section will contain the list of expenses.", + "confirm_delete": "You will not be able to recover this Expense | You will not be able to recover these Expenses", + "created_message": "Expense created successfully", + "updated_message": "Expense updated successfully", + "deleted_message": "Expense deleted successfully | Expenses deleted successfully", + "categories": { + "categories_list": "Categories List", + "title": "Title", + "name": "Name", + "description": "Description", + "amount": "Amount", + "actions": "Actions", + "add_category": "Add Category", + "new_category": "New Category", + "category": "Category | Categories", + "select_a_category": "Select a category" + } + }, + "login": { + "email": "Email", + "password": "Password", + "forgot_password": "Forgot Password?", + "or_signIn_with": "or Sign in with", + "login": "Masuk", + "register": "Daftar", + "reset_password": "Atur Ulang Kata Sandi", + "password_reset_successfully": "Password Reset Successfully", + "enter_email": "Masukkan email", + "enter_password": "Masukkan Kata Sandi", + "retype_password": "Retype Password" + }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, + "users": { + "title": "Users", + "users_list": "Users List", + "name": "Name", + "description": "Description", + "added_on": "Added On", + "date_of_creation": "Date Of Creation", + "action": "Action", + "add_user": "Add User", + "save_user": "Save User", + "update_user": "Update User", + "user": "User | Users", + "add_new_user": "Add New User", + "new_user": "New User", + "edit_user": "Edit User", + "no_users": "No users yet!", + "list_of_users": "This section will contain the list of users.", + "email": "Email", + "phone": "Telepon", + "password": "Kata Sandi", + "user_attached_message": "Cannot delete an item which is already in use", + "confirm_delete": "You will not be able to recover this User | You will not be able to recover these Users", + "created_message": "User created successfully", + "updated_message": "User updated successfully", + "deleted_message": "User deleted successfully | Users deleted successfully", + "select_company_role": "Select Role for {company}", + "companies": "Companies" + }, + "reports": { + "title": "Report", + "from_date": "From Date", + "to_date": "To Date", + "status": "Status", + "paid": "Paid", + "unpaid": "Unpaid", + "download_pdf": "Download PDF", + "view_pdf": "View PDF", + "update_report": "Update Report", + "report": "Report | Reports", + "profit_loss": { + "profit_loss": "Profit & Loss", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" + }, + "sales": { + "sales": "Sales", + "date_range": "Select Date Range", + "to_date": "To Date", + "from_date": "From Date", + "report_type": "Report Type" + }, + "taxes": { + "taxes": "Taxes", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" + }, + "errors": { + "required": "Field is required" + }, + "invoices": { + "invoice": "Invoice", + "invoice_date": "Invoice Date", + "due_date": "Due Date", + "amount": "Amount", + "contact_name": "Contact Name", + "status": "Status" + }, + "estimates": { + "estimate": "Estimate", + "estimate_date": "Estimate Date", + "due_date": "Due Date", + "estimate_number": "Estimate Number", + "ref_number": "Ref Number", + "amount": "Amount", + "contact_name": "Contact Name", + "status": "Status" + }, + "expenses": { + "expenses": "Expenses", + "category": "Category", + "date": "Date", + "amount": "Amount", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" + } + }, + "settings": { + "menu_title": { + "account_settings": "Account Settings", + "company_information": "Company Information", + "customization": "Customization", + "preferences": "Preferences", + "notifications": "Notifications", + "tax_types": "Tax Types", + "expense_category": "Expense Categories", + "update_app": "Update App", + "backup": "Backup", + "file_disk": "File Disk", + "custom_fields": "Custom Fields", + "payment_modes": "Payment Modes", + "notes": "Notes", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." + }, + "title": "Settings", + "setting": "Settings | Settings", + "general": "General", + "language": "Language", + "primary_currency": "Primary Currency", + "timezone": "Time Zone", + "date_format": "Date Format", + "currencies": { + "title": "Currencies", + "currency": "Currency | Currencies", + "currencies_list": "Currencies List", + "select_currency": "Select Currency", + "name": "Name", + "code": "Code", + "symbol": "Symbol", + "precision": "Precision", + "thousand_separator": "Thousand Separator", + "decimal_separator": "Decimal Separator", + "position": "Position", + "position_of_symbol": "Position Of Symbol", + "right": "Right", + "left": "Left", + "action": "Action", + "add_currency": "Add Currency" + }, + "mail": { + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Mail Password", + "username": "Mail Username", + "mail_config": "Mail Configuration", + "from_name": "From Mail Name", + "from_mail": "From Mail Address", + "encryption": "Mail Encryption", + "mail_config_desc": "Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc." + }, + "pdf": { + "title": "PDF Setting", + "footer_text": "Footer Text", + "pdf_layout": "PDF Layout" + }, + "company_info": { + "company_info": "Company info", + "company_name": "Company Name", + "company_logo": "Company Logo", + "section_description": "Information about your company that will be displayed on invoices, estimates and other documents created by Crater.", + "phone": "Phone", + "country": "Country", + "state": "State", + "city": "City", + "address": "Address", + "zip": "Zip", + "save": "Save", + "delete": "Delete", + "updated_message": "Company information updated successfully", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" + }, + "custom_fields": { + "title": "Custom Fields", + "section_description": "Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.", + "add_custom_field": "Add Custom Field", + "edit_custom_field": "Edit Custom Field", + "field_name": "Field Name", + "label": "Label", + "type": "Type", + "name": "Name", + "slug": "Slug", + "required": "Required", + "placeholder": "Placeholder", + "help_text": "Help Text", + "default_value": "Default Value", + "prefix": "Prefix", + "starting_number": "Starting Number", + "model": "Model", + "help_text_description": "Enter some text to help users understand the purpose of this custom field.", + "suffix": "Suffix", + "yes": "Yes", + "no": "No", + "order": "Order", + "custom_field_confirm_delete": "You will not be able to recover this Custom Field", + "already_in_use": "Custom Field is already in use", + "deleted_message": "Custom Field deleted successfully", + "options": "options", + "add_option": "Add Options", + "add_another_option": "Add another option", + "sort_in_alphabetical_order": "Sort in Alphabetical Order", + "add_options_in_bulk": "Add options in bulk", + "use_predefined_options": "Use Predefined Options", + "select_custom_date": "Select Custom Date", + "select_relative_date": "Select Relative Date", + "ticked_by_default": "Ticked by default", + "updated_message": "Custom Field updated successfully", + "added_message": "Custom Field added successfully", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." + }, + "customization": { + "customization": "customization", + "updated_message": "Company information updated successfully", + "save": "Save", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", + "invoices": { + "title": "Invoices", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", + "default_invoice_email_body": "Default Invoice Email Body", + "company_address_format": "Company Address Format", + "shipping_address_format": "Shipping Address Format", + "billing_address_format": "Billing Address Format", + "invoice_email_attachment": "Send invoices as attachments", + "invoice_email_attachment_setting_description": "Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." + }, + "estimates": { + "title": "Estimates", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", + "default_estimate_email_body": "Default Estimate Email Body", + "company_address_format": "Company Address Format", + "shipping_address_format": "Shipping Address Format", + "billing_address_format": "Billing Address Format", + "estimate_email_attachment": "Send estimates as attachments", + "estimate_email_attachment_setting_description": "Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" + }, + "payments": { + "title": "Payments", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", + "default_payment_email_body": "Default Payment Email Body", + "company_address_format": "Company Address Format", + "from_customer_address_format": "From Customer Address Format", + "payment_email_attachment": "Send payments as attachments", + "payment_email_attachment_setting_description": "Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.", + "payment_settings_updated": "Payment Settings updated successfully" + }, + "items": { + "title": "Items", + "units": "Units", + "add_item_unit": "Add Item Unit", + "edit_item_unit": "Edit Item Unit", + "unit_name": "Unit Name", + "item_unit_added": "Item Unit Added", + "item_unit_updated": "Item Unit Updated", + "item_unit_confirm_delete": "You will not be able to recover this Item unit", + "already_in_use": "Item Unit is already in use", + "deleted_message": "Item Unit deleted successfully" + }, + "notes": { + "title": "Notes", + "description": "Save time by creating notes and reusing them on your invoices, estimates & payments.", + "notes": "Notes", + "type": "Type", + "add_note": "Add Note", + "add_new_note": "Add New Note", + "name": "Name", + "edit_note": "Edit Note", + "note_added": "Note added successfully", + "note_updated": "Note Updated successfully", + "note_confirm_delete": "You will not be able to recover this Note", + "already_in_use": "Note is already in use", + "deleted_message": "Note deleted successfully" + } + }, + "account_settings": { + "profile_picture": "Profile Picture", + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password", + "account_settings": "Account Settings", + "save": "Save", + "section_description": "You can update your name, email & password using the form below.", + "updated_message": "Account Settings updated successfully" + }, + "user_profile": { + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password" + }, + "notification": { + "title": "Notifications", + "email": "Send Notifications to", + "description": "Which email notifications would you like to receive when something changes?", + "invoice_viewed": "Invoice viewed", + "invoice_viewed_desc": "When your customer views the invoice sent via crater dashboard.", + "estimate_viewed": "Estimate viewed", + "estimate_viewed_desc": "When your customer views the estimate sent via crater dashboard.", + "save": "Save", + "email_save_message": "Email saved successfully", + "please_enter_email": "Please Enter Email" + }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, + "tax_types": { + "title": "Tax Types", + "add_tax": "Add Tax", + "edit_tax": "Edit Tax", + "description": "You can add or Remove Taxes as you please. Crater supports Taxes on Individual Items as well as on the invoice.", + "add_new_tax": "Add New Tax", + "tax_settings": "Tax Settings", + "tax_per_item": "Tax Per Item", + "tax_name": "Tax Name", + "compound_tax": "Compound Tax", + "percent": "Percent", + "action": "Action", + "tax_setting_description": "Enable this if you want to add taxes to individual invoice items. By default, taxes are added directly to the invoice.", + "created_message": "Tax type created successfully", + "updated_message": "Tax type updated successfully", + "deleted_message": "Tax type deleted successfully", + "confirm_delete": "You will not be able to recover this Tax Type", + "already_in_use": "Tax is already in use" + }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, + "expense_category": { + "title": "Expense Categories", + "action": "Action", + "description": "Categories are required for adding expense entries. You can Add or Remove these categories according to your preference.", + "add_new_category": "Add New Category", + "add_category": "Add Category", + "edit_category": "Edit Category", + "category_name": "Category Name", + "category_description": "Description", + "created_message": "Expense Category created successfully", + "deleted_message": "Expense category deleted successfully", + "updated_message": "Expense category updated successfully", + "confirm_delete": "You will not be able to recover this Expense Category", + "already_in_use": "Category is already in use" + }, + "preferences": { + "currency": "Currency", + "default_language": "Default Language", + "time_zone": "Time Zone", + "fiscal_year": "Financial Year", + "date_format": "Date Format", + "discount_setting": "Discount Setting", + "discount_per_item": "Discount Per Item ", + "discount_setting_description": "Enable this if you want to add Discount to individual invoice items. By default, Discount is added directly to the invoice.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", + "save": "Save", + "preference": "Preference | Preferences", + "general_settings": "Default preferences for the system.", + "updated_message": "Preferences updated successfully", + "select_language": "Select Language", + "select_time_zone": "Select Time Zone", + "select_date_format": "Select Date Format", + "select_financial_year": "Select Financial Year", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" + }, + "update_app": { + "title": "Update App", + "description": "You can easily update Crater by checking for a new update by clicking the button below", + "check_update": "Check for updates", + "avail_update": "New Update available", + "next_version": "Next version", + "requirements": "Requirements", + "update": "Update Now", + "update_progress": "Update in progress...", + "progress_text": "It will just take a few minutes. Please do not refresh the screen or close the window before the update finishes", + "update_success": "App has been updated! Please wait while your browser window gets reloaded automatically.", + "latest_message": "No update available! You are on the latest version.", + "current_version": "Current Version", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "running_migrations": "Running Migrations", + "finishing_update": "Finishing Update", + "update_failed": "Update Failed", + "update_failed_text": "Sorry! Your update failed on : {step} step", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." + }, + "backup": { + "title": "Backup | Backups", + "description": "The backup is a zipfile that contains all files in the directories you specify along with a dump of your database", + "new_backup": "Add New Backup", + "create_backup": "Create Backup", + "select_backup_type": "Select Backup Type", + "backup_confirm_delete": "You will not be able to recover this Backup", + "path": "path", + "new_disk": "New Disk", + "created_at": "created at", + "size": "size", + "dropbox": "dropbox", + "local": "local", + "healthy": "healthy", + "amount_of_backups": "amount of backups", + "newest_backups": "newest backups", + "used_storage": "used storage", + "select_disk": "Select Disk", + "action": "Action", + "deleted_message": "Backup deleted successfully", + "created_message": "Backup created successfully", + "invalid_disk_credentials": "Invalid credential of selected disk" + }, + "disk": { + "title": "File Disk | File Disks", + "description": "By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.", + "created_at": "created at", + "dropbox": "dropbox", + "name": "Name", + "driver": "Driver", + "disk_type": "Type", + "disk_name": "Disk Name", + "new_disk": "Add New Disk", + "filesystem_driver": "Filesystem Driver", + "local_driver": "local Driver", + "local_root": "local Root", + "public_driver": "Public Driver", + "public_root": "Public Root", + "public_url": "Public URL", + "public_visibility": "Public Visibility", + "media_driver": "Media Driver", + "media_root": "Media Root", + "aws_driver": "AWS Driver", + "aws_key": "AWS Key", + "aws_secret": "AWS Secret", + "aws_region": "AWS Region", + "aws_bucket": "AWS Bucket", + "aws_root": "AWS Root", + "do_spaces_type": "Do Spaces type", + "do_spaces_key": "Do Spaces key", + "do_spaces_secret": "Do Spaces Secret", + "do_spaces_region": "Do Spaces Region", + "do_spaces_bucket": "Do Spaces Bucket", + "do_spaces_endpoint": "Do Spaces Endpoint", + "do_spaces_root": "Do Spaces Root", + "dropbox_type": "Dropbox Type", + "dropbox_token": "Dropbox Token", + "dropbox_key": "Dropbox Key", + "dropbox_secret": "Dropbox Secret", + "dropbox_app": "Dropbox App", + "dropbox_root": "Dropbox Root", + "default_driver": "Default Driver", + "is_default": "IS DEFAULT", + "set_default_disk": "Set Default Disk", + "set_default_disk_confirm": "This disk will be set as default and all the new PDFs will be saved on this disk", + "success_set_default_disk": "Disk set as default successfully", + "save_pdf_to_disk": "Save PDFs to Disk", + "disk_setting_description": " Enable this, if you wish to save a copy of each Invoice, Estimate & Payment Receipt PDF on your default disk automatically. Turning this option will decrease the load-time when viewing the PDFs.", + "select_disk": "Select Disk", + "disk_settings": "Disk Settings", + "confirm_delete": "Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater", + "action": "Action", + "edit_file_disk": "Edit File Disk", + "success_create": "Disk added successfully", + "success_update": "Disk updated successfully", + "error": "Disk addition failed", + "deleted_message": "File Disk deleted successfully", + "disk_variables_save_successfully": "Disk Configured Successfully", + "disk_variables_save_error": "Disk configuration failed.", + "invalid_disk_credentials": "Invalid credential of selected disk" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." + } + }, + "wizard": { + "account_info": "Account Information", + "account_info_desc": "Below details will be used to create the main Administrator account. Also you can change the details anytime after logging in.", + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password", + "save_cont": "Save & Continue", + "company_info": "Company Information", + "company_info_desc": "This information will be displayed on invoices. Note that you can edit this later on settings page.", + "company_name": "Company Name", + "company_logo": "Company Logo", + "logo_preview": "Logo Preview", + "preferences": "Company Preferences", + "preferences_desc": "Specify the default preferences for this company.", + "currency_set_alert": "The company's currency cannot be changed later.", + "country": "Country", + "state": "State", + "city": "City", + "address": "Address", + "street": "Street1 | Street2", + "phone": "Phone", + "zip_code": "Zip Code", + "go_back": "Go Back", + "currency": "Currency", + "language": "Language", + "time_zone": "Time Zone", + "fiscal_year": "Financial Year", + "date_format": "Date Format", + "from_address": "From Address", + "username": "Username", + "next": "Next", + "continue": "Continue", + "skip": "Skip", + "database": { + "database": "Site URL & Database", + "connection": "Database Connection", + "host": "Database Host", + "port": "Database Port", + "password": "Database Password", + "app_url": "App URL", + "app_domain": "App Domain", + "username": "Database Username", + "db_name": "Database Name", + "db_path": "Database Path", + "desc": "Create a database on your server and set the credentials using the form below." + }, + "permissions": { + "permissions": "Permissions", + "permission_confirm_title": "Are you sure you want to continue?", + "permission_confirm_desc": "Folder permission check failed", + "permission_desc": "Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions." + }, + "verify_domain": { + "title": "Domain Verification", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Verify Now", + "success": "Domain Verify Successfully.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verify And Continue" + }, + "mail": { + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Mail Password", + "username": "Mail Username", + "mail_config": "Mail Configuration", + "from_name": "From Mail Name", + "from_mail": "From Mail Address", + "encryption": "Mail Encryption", + "mail_config_desc": "Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc." + }, + "req": { + "system_req": "System Requirements", + "php_req_version": "Php (version {version} required)", + "check_req": "Check Requirements", + "system_req_desc": "Crater has a few server requirements. Make sure that your server has the required php version and all the extensions mentioned below." + }, + "errors": { + "migrate_failed": "Migrate Failed", + "database_variables_save_error": "Cannot write configuration to .env file. Please check its file permissions", + "mail_variables_save_error": "Email configuration failed.", + "connection_failed": "Database connection failed", + "database_should_be_empty": "Database should be empty" + }, + "success": { + "mail_variables_save_successfully": "Email configured successfully", + "database_variables_save_successfully": "Database configured successfully." + } + }, + "validation": { + "invalid_phone": "Invalid Phone Number", + "invalid_url": "Invalid url (ex: http://www.craterapp.com)", + "invalid_domain_url": "Invalid url (ex: craterapp.com)", + "required": "Field is required", + "email_incorrect": "Incorrect Email.", + "email_already_taken": "The email has already been taken.", + "email_does_not_exist": "User with given email doesn't exist", + "item_unit_already_taken": "This item unit name has already been taken", + "payment_mode_already_taken": "This payment mode name has already been taken", + "send_reset_link": "Send Reset Link", + "not_yet": "Not yet? Send it again", + "password_min_length": "Password must contain {count} characters", + "name_min_length": "Name must have at least {count} letters.", + "prefix_min_length": "Prefix must have at least {count} letters.", + "enter_valid_tax_rate": "Enter valid tax rate", + "numbers_only": "Numbers Only.", + "characters_only": "Characters Only.", + "password_incorrect": "Passwords must be identical", + "password_length": "Password must be {count} character long.", + "qty_must_greater_than_zero": "Quantity must be greater than zero.", + "price_greater_than_zero": "Price must be greater than zero.", + "payment_greater_than_zero": "Payment must be greater than zero.", + "payment_greater_than_due_amount": "Entered Payment is more than due amount of this invoice.", + "quantity_maxlength": "Quantity should not be greater than 20 digits.", + "price_maxlength": "Price should not be greater than 20 digits.", + "price_minvalue": "Price should be greater than 0.", + "amount_maxlength": "Amount should not be greater than 20 digits.", + "amount_minvalue": "Amount should be greater than 0.", + "discount_maxlength": "Discount should not be greater than max discount", + "description_maxlength": "Description should not be greater than 255 characters.", + "subject_maxlength": "Subject should not be greater than 100 characters.", + "message_maxlength": "Message should not be greater than 255 characters.", + "maximum_options_error": "Maximum of {max} options selected. First remove a selected option to select another.", + "notes_maxlength": "Notes should not be greater than 65,000 characters.", + "address_maxlength": "Address should not be greater than 255 characters.", + "ref_number_maxlength": "Ref Number should not be greater than 255 characters.", + "prefix_maxlength": "Prefix should not be greater than 5 characters.", + "something_went_wrong": "something went wrong", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" + }, + "pdf_estimate_label": "Estimate", + "pdf_estimate_number": "Estimate Number", + "pdf_estimate_date": "Estimate Date", + "pdf_estimate_expire_date": "Expiry date", + "pdf_invoice_label": "Invoice", + "pdf_invoice_number": "Invoice Number", + "pdf_invoice_date": "Invoice Date", + "pdf_invoice_due_date": "Due date", + "pdf_notes": "Notes", + "pdf_items_label": "Items", + "pdf_quantity_label": "Quantity", + "pdf_price_label": "Price", + "pdf_discount_label": "Discount", + "pdf_amount_label": "Amount", + "pdf_subtotal": "Subtotal", + "pdf_total": "Total", + "pdf_payment_label": "Payment", + "pdf_payment_receipt_label": "PAYMENT RECEIPT", + "pdf_payment_date": "Payment Date", + "pdf_payment_number": "Payment Number", + "pdf_payment_mode": "Payment Mode", + "pdf_payment_amount_received_label": "Amount Received", + "pdf_expense_report_label": "EXPENSES REPORT", + "pdf_total_expenses_label": "TOTAL EXPENSE", + "pdf_profit_loss_label": "PROFIT & LOSS REPORT", + "pdf_sales_customers_label": "Sales Customer Report", + "pdf_sales_items_label": "Sales Item Report", + "pdf_tax_summery_label": "Tax Summary Report", + "pdf_income_label": "INCOME", + "pdf_net_profit_label": "NET PROFIT", + "pdf_customer_sales_report": "Sales Report: By Customer", + "pdf_total_sales_label": "TOTAL SALES", + "pdf_item_sales_label": "Sales Report: By Item", + "pdf_tax_report_label": "TAX REPORT", + "pdf_total_tax_label": "TOTAL TAX", + "pdf_tax_types_label": "Tax Types", + "pdf_expenses_label": "Expenses", + "pdf_bill_to": "Bill to,", + "pdf_ship_to": "Ship to,", + "pdf_received_from": "Received from:", + "pdf_tax_label": "Tax" +} diff --git a/resources/scripts/locales/it.json b/resources/scripts/locales/it.json index cc7fd3edd..9237c63aa 100644 --- a/resources/scripts/locales/it.json +++ b/resources/scripts/locales/it.json @@ -1,39 +1,45 @@ { "navigation": { - "dashboard": "Dashboard", + "dashboard": "Pannello di controllo", "customers": "Clienti", "items": "Commesse", "invoices": "Fatture", + "recurring-invoices": "Fatture ricorrenti", "expenses": "Spese", "estimates": "Preventivi", "payments": "Pagamenti", - "reports": "Reports", + "reports": "Rapporti", "settings": "Configurazione", - "logout": "Logout", - "users": "Users" + "logout": "Disconnessione", + "users": "Utenti", + "modules": "Modules" }, "general": { - "add_company": "Add Company", + "add_company": "Aggiungi azienda", "view_pdf": "Vedi PDF", - "copy_pdf_url": "Copy PDF Url", + "copy_pdf_url": "Copia URL PDF", "download_pdf": "Scarica PDF", "save": "Salva", - "create": "Create", + "create": "Crea", "cancel": "Elimina", "update": "Aggiorna", "deselect": "Deseleziona", - "download": "Download", + "download": "Scarica", "from_date": "Dalla Data", "to_date": "Alla Data", "from": "Da", "to": "A", + "ok": "Ok", + "yes": "Sì", + "no": "No", "sort_by": "Ordina per", "ascending": "Crescente", "descending": "Decrescente", "subject": "Oggetto", "body": "Corpo", "message": "Messaggio", - "send": "Send", + "send": "Invia", + "preview": "Anteprima", "go_back": "Torna indietro", "back_to_login": "Torna al Login?", "home": "Home", @@ -43,7 +49,7 @@ "view": "Visualizza", "add_new_item": "Aggiungi nuova Commessa", "clear_all": "Pulisci tutto", - "showing": "Showing", + "showing": "Visualizzo", "of": "di", "actions": "Azioni", "subtotal": "SUBTOTALE", @@ -59,18 +65,17 @@ "sent": "Inviata", "all": "Tutte", "select_all": "Seleziona tutto", + "select_template": "Seleziona Template", "choose_file": "Clicca per selezionare un file", "choose_template": "Scegli un modello", "choose": "Scegli", "remove": "Rimuovi", - "powered_by": "Prodotto da", - "bytefury": "Bytefury", "select_a_status": "Seleziona uno Stato", - "select_a_tax": "Seleziona una Tassa", + "select_a_tax": "Seleziona imposta", "search": "Cerca", "are_you_sure": "Sei sicuro/a?", "list_is_empty": "La lista è vuota.", - "no_tax_found": "Nessuna Tassa trovata!", + "no_tax_found": "Nessuna imposta trovata!", "four_zero_four": "404", "you_got_lost": "Hoops! Ti sei perso", "go_home": "Vai alla Home", @@ -83,10 +88,18 @@ "street_1": "Indirizzo 1", "street_2": "Indirizzo 2", "action_failed": "Errore", - "retry": "Retry", - "choose_note": "Choose Note", - "no_note_found": "No Note Found", - "insert_note": "Insert Note" + "retry": "Riprova", + "choose_note": "Scegli Nota", + "no_note_found": "Nessuna Nota Trovata", + "insert_note": "Inserisci Nota", + "copied_pdf_url_clipboard": "Url PDF copiato negli appunti!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Documenti", + "do_you_wish_to_continue": "Vuoi continuare?", + "note": "Nota", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { "select_year": "Seleziona anno", @@ -94,7 +107,8 @@ "due_amount": "Somma dovuta", "customers": "Clienti", "invoices": "Fatture", - "estimates": "Preventivi" + "estimates": "Preventivi", + "payments": "Payments" }, "chart_info": { "total_sales": "Vendite", @@ -127,22 +141,42 @@ "name": "Nome", "description": "Descrizione", "percent": "Percento", - "compound_tax": "Tassa composta" + "compound_tax": "Imposta composta" }, "global_search": { - "search": "Search...", + "search": "Cerca...", "customers": "Clienti", - "users": "Users", - "no_results_found": "No Results Found" + "users": "Utenti", + "no_results_found": "Nessun Risultato Trovato" + }, + "company_switcher": { + "label": "CAMBIA AZIENDA", + "no_results_found": "Nessun Risultato Trovato", + "add_new_company": "Aggiungi una nuova azienda", + "new_company": "Nuova Azienda", + "created_message": "Azienda creata con successo" + }, + "dateRange": { + "today": "Oggi", + "this_week": "Questa Settimana", + "this_month": "Questo mese", + "this_quarter": "Questo Trimestre", + "this_year": "Anno corrente", + "previous_week": "Settimana precedente", + "previous_month": "Mese precedente", + "previous_quarter": "Trimestre Precedente", + "previous_year": "Anno Precedente", + "custom": "Personalizzato" }, "customers": { "title": "Clienti", + "prefix": "Prefisso", "add_customer": "Aggiungi cliente", "contacts_list": "Lista clienti", "name": "Nome", "mail": "Mail | Mails", - "statement": "Statement", - "display_name": "Mostra nome", + "statement": "Dichiarazione", + "display_name": "Nome Visibile", "primary_contact_name": "Riferimento", "contact_name": "Nome Contatto", "amount_due": "Ammontare dovuto", @@ -150,15 +184,19 @@ "address": "Indirizzo", "phone": "Telefono", "website": "Sito web", - "overview": "Overview", - "enable_portal": "Enable Portal", + "overview": "Panoramica", + "invoice_prefix": "Prefisso Fattura", + "estimate_prefix": "Prefisso Preventivi", + "payment_prefix": "Prefisso Pagamento", + "enable_portal": "Abilita Portale", "country": "Paese", - "state": "Stato", + "state": "Provincia", "city": "Città", "zip_code": "Codice Postale", "added_on": "Aggiunto il", "action": "Azione", "password": "Password", + "confirm_password": "Conferma Password", "street_number": "Numero Civico", "primary_currency": "Valùta Principale", "description": "Descrizione", @@ -169,13 +207,17 @@ "new_customer": "Nuovo cliente", "edit_customer": "Modifica Cliente", "basic_info": "Informazioni", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", "billing_address": "Indirizzo di Fatturazione", "shipping_address": "Indirizzo di Spedizione", "copy_billing_address": "Copia da Fatturazione", "no_customers": "Ancora nessun Cliente!", "no_customers_found": "Nessun cliente trovato!", - "no_contact": "No contact", - "no_contact_name": "No contact name", + "no_contact": "Nessun contatto", + "no_contact_name": "Nessun nome del contatto", "list_of_customers": "Qui ci sarà la lista dei tuoi clienti", "primary_display_name": "Mostra il Nome Principale", "select_currency": "Selezione Valùta", @@ -188,7 +230,9 @@ "confirm_delete": "Non sarai in grado di recuperare questo cliente e tutte le relative fatture, stime e pagamenti. | Non sarai in grado di recuperare questi clienti e tutte le relative fatture, stime e pagamenti.", "created_message": "Cliente creato con successo", "updated_message": "Cliente aggiornato con successo", - "deleted_message": "Cliente cancellato con successo | Clienti cancellati con successo" + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Cliente cancellato con successo | Clienti cancellati con successo", + "edit_currency_not_allowed": "Impossibile cambiare valuta, dopo aver creato transazioni." }, "items": { "title": "Commesse", @@ -199,7 +243,7 @@ "added_on": "Aggiunto il", "price": "Prezzo", "date_of_creation": "Data di creazione", - "not_selected": "No item selected", + "not_selected": "Nessun elemento selezionato", "action": "Azione", "add_item": "Aggiungi Commessa", "save_item": "Salva", @@ -220,6 +264,8 @@ }, "estimates": { "title": "Preventivi", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", "estimate": "Preventivo | Preventivi", "estimates_list": "Lista Preventivi", "days": "{days} Giorni", @@ -253,7 +299,7 @@ "convert_to_invoice": "Converti in Fattura", "mark_as_sent": "Segna come Inviata", "send_estimate": "Invia preventivo", - "resend_estimate": "Resend Estimate", + "resend_estimate": "Reinvia Preventivo", "record_payment": "Registra Pagamento", "add_estimate": "Aggiungi Preventivo", "save_estimate": "Salva Preventivo", @@ -270,9 +316,11 @@ "required": "Campo obbligatorio" }, "accepted": "Accettato", - "rejected": "Rejected", + "rejected": "Rifiutato", + "expired": "Expired", "sent": "Inviato", "draft": "Bozza", + "viewed": "Viewed", "declined": "Rifiutato", "new_estimate": "Nuovo Preventivo", "add_new_estimate": "Crea Nuovo Preventivo", @@ -309,16 +357,19 @@ }, "invoices": { "title": "Fatture", + "download": "Download", + "pay_invoice": "Pay Invoice", "invoices_list": "Lista Fatture", + "invoice_information": "Invoice Information", "days": "{days} Giorni", "months": "{months} Mese", "years": "{years} Anno", "all": "Tutti", "paid": "Pagato", - "unpaid": "Insoluto", - "viewed": "Viewed", - "overdue": "Overdue", - "completed": "Completed", + "unpaid": "Insoluta", + "viewed": "Visualizzato", + "overdue": "Scaduta", + "completed": "Completata", "customer": "CLIENTE", "paid_status": "STATO DI PAGAMENTO", "ref_no": "RIF N.", @@ -342,12 +393,15 @@ "notes": "Note", "view": "Vedi", "send_invoice": "Invia Fattura", - "resend_invoice": "Resend Invoice", + "resend_invoice": "Reinvia Fattura", "invoice_template": "Modello Fattura", + "conversion_message": "Fattura duplicata con successo", "template": "Modello", "mark_as_sent": "Segna come inviata", "confirm_send_invoice": "Questa fattura sarà inviata via Mail al Cliente", "invoice_mark_as_sent": "Questa fattura sarà contrassegnata come inviata", + "confirm_mark_as_accepted": "Questa fattura verrà contrassegnata come Accettata", + "confirm_mark_as_rejected": "Questa fattura sarà contrassegnata come Rifiutata", "confirm_send": "Questa fattura sarà inviata via Mail al Cliente", "invoice_date": "Data fattura", "record_payment": "Registra Pagamento", @@ -359,11 +413,13 @@ "update_invoice": "Aggiorna Fattura", "add_new_tax": "Aggiungi tassa/imposta", "no_invoices": "Ancora nessuna fattura!", + "mark_as_rejected": "Segna come rifiutata", + "mark_as_accepted": "Segna come accettata", "list_of_invoices": "Questa sezione conterrà la lista delle Fatture.", "select_invoice": "Seleziona Fattura", "no_matching_invoices": "Nessuna fattura trovata!", "mark_as_sent_successfully": "Fattura contassegnata come inviata con successo", - "invoice_sent_successfully": "Fattura inviata con successo", + "invoice_sent_successfully": "Fattura inviata correttamente", "cloned_successfully": "Fattura copiata con successo", "clone_invoice": "Clona Fattura", "confirm_clone": "Questa fattura verrà clonata in una nuova fattura", @@ -381,6 +437,7 @@ "select_an_item": "Scrivi o clicca per selezionare un item", "type_item_description": "Scrivi una descrizione (opzionale)" }, + "payment_attached_message": "Una delle fatture selezionate ha già associato un pagamento. Assicurati di eliminare il pagamento associato prima di procedere con la rimozione", "confirm_delete": "Non potrai recuperare la Fattura cancellata | Non potrai recuperare le Fatture cancellate", "created_message": "Fattura creata con successo", "updated_message": "Fattura aggiornata con successo", @@ -389,6 +446,115 @@ "something_went_wrong": "Si è verificato un errore", "invalid_due_amount_message": "L'ammontare totale della fattura non può essere inferiore all'ammontare totale pagato per questa fattura. Modifica la fattura o cancella i pagamenti associati per continuare." }, + "recurring_invoices": { + "title": "Fatture ricorrenti", + "invoices_list": "Elenco Fatture ricorrenti", + "days": "{days} Giorni", + "months": "{months} Mese", + "years": "{years} Anno", + "all": "Tutte", + "paid": "Pagata", + "unpaid": "Non Pagata", + "viewed": "Vista", + "overdue": "In ritardo", + "active": "Attiva", + "completed": "Completata", + "customer": "CLIENTE", + "paid_status": "STATO DI PAGAMENTO", + "ref_no": "Riferimento #", + "number": "NUMERO", + "amount_due": "AMMONTARE DOVUTO", + "partially_paid": "Parzialmente Pagata", + "total": "Totale", + "discount": "Sconto", + "sub_total": "Totale Parziale", + "invoice": "Fattura Ricorrente | Fatture Ricorrenti", + "invoice_number": "Numero Della Fattura Ricorrente", + "next_invoice_date": "Data Prossima Fattura", + "ref_number": "Numero di Rif.", + "contact": "Contatto", + "add_item": "Aggiungi un elemento", + "date": "Data", + "limit_by": "Limita per", + "limit_date": "Data limite", + "limit_count": "Conteggio Limite", + "count": "Conteggio", + "status": "Stato", + "select_a_status": "Seleziona uno Stato", + "working": "Elaborando", + "on_hold": "In sospeso", + "complete": "Completate", + "add_tax": "Aggiungi imposta", + "amount": "Quantità", + "action": "Azione", + "notes": "Note", + "view": "Visualizza", + "basic_info": "Info Di Base", + "send_invoice": "Invia Fattura Ricorrente", + "auto_send": "Invio automatico", + "resend_invoice": "Reinvia Fattura Ricorrente", + "invoice_template": "Template Fattura Ricorrente", + "conversion_message": "Fattura duplicata con successo", + "template": "Template", + "mark_as_sent": "Segna come inviata", + "confirm_send_invoice": "Questa fattura ricorrente verrà inviata via email al cliente", + "invoice_mark_as_sent": "Questa fattura sarà contrassegnata come inviata", + "confirm_send": "Questa fattura ricorrente verrà inviata via e-mail al cliente", + "starts_at": "Data Inzio", + "due_date": "Data di scadenza fattura", + "record_payment": "Registra Pagamento", + "add_new_invoice": "Nuova Fattura ricorrente", + "update_expense": "Aggiorna Spesa", + "edit_invoice": "Modifica Fattura Ricorrente", + "new_invoice": "Nuova Fattura Ricorrente", + "send_automatically": "Invia automaticamente", + "send_automatically_desc": "Abilitare questa opzione, se si desidera inviare automaticamente la fattura al cliente quando viene creata.", + "save_invoice": "Salva Fattura Ricorrente", + "update_invoice": "Aggiorna Fattura Ricorrente", + "add_new_tax": "Aggiungi una nuova tassa/imposta", + "no_invoices": "Ancora nessuna Fattura Ricorrente!", + "mark_as_rejected": "Segna come rifiutata", + "mark_as_accepted": "Segna come accettata", + "list_of_invoices": "Questa sezione conterrà l'elenco delle fatture ricorrenti.", + "select_invoice": "Seleziona Fattura", + "no_matching_invoices": "Nessuna fattura trovata!", + "mark_as_sent_successfully": "Fattura contassegnata come inviata con successo", + "invoice_sent_successfully": "Fattura inviata con successo", + "cloned_successfully": "Fattura copiata con successo", + "clone_invoice": "Duplica Fattura Ricorrente", + "confirm_clone": "Questa fattura ricorrente verrà clonata in una nuova fattura ricorrente", + "item": { + "title": "Titolo Articolo", + "description": "Descrizione", + "quantity": "Quantità", + "price": "Prezzo", + "discount": "Sconto", + "total": "Totale", + "total_discount": "Sconto Totale", + "sub_total": "Totale Parziale", + "tax": "Tassa", + "amount": "Importo", + "select_an_item": "Digita o clicca per selezionare un elemento", + "type_item_description": "Tipo Descrizione Articolo (Opzionale)" + }, + "frequency": { + "title": "Frequenza", + "select_frequency": "Seleziona Frequenza", + "minute": "Minuto", + "hour": "Ora", + "day_month": "Giorno del mese", + "month": "Mese", + "day_week": "Giorno della settimana" + }, + "confirm_delete": "Non sarai in grado di recuperare questa fattura | Non sarai in grado di recuperare queste fatture", + "created_message": "Fattura ricorrente creata con successo", + "updated_message": "Fattura ricorrente aggiornata correttamente", + "deleted_message": "Fattura ricorrente eliminata con successo | Fatture ricorrenti eliminate con successo", + "marked_as_sent_message": "Fattura ricorrente contrassegnata come inviata correttamente", + "user_email_does_not_exist": "L'e-mail dell'utente non esiste", + "something_went_wrong": "qualcosa è andato storto", + "invalid_due_amount_message": "L'importo totale delle fatture ricorrenti non può essere inferiore all'importo totale pagato per questa fattura ricorrente. Si prega di aggiornare la fattura o eliminare i pagamenti associati per continuare." + }, "payments": { "title": "Pagamenti", "payments_list": "Lista Pagamenti", @@ -412,8 +578,8 @@ "update_payment": "Aggiorna pagamento", "payment": "Pagamento | Pagamenti", "no_payments": "Ancora nessun pagamento!", - "not_selected": "Not selected", - "no_invoice": "No invoice", + "not_selected": "Non Selezionato", + "no_invoice": "Nessuna fattura", "no_matching_payments": "Non ci sono pagamenti!", "list_of_payments": "Questa sezione conterrà la lista dei pagamenti.", "select_payment_mode": "Seleziona modalità di pagamento", @@ -433,6 +599,7 @@ "select_a_customer": "Seleziona Cliente", "expense_title": "Titolo", "customer": "Cliente", + "currency": "Valuta", "contact": "Contatto", "category": "Categoria", "from_date": "Dalla Data", @@ -442,7 +609,7 @@ "receipt": "Ricevuta", "amount": "Ammontare", "action": "Azione", - "not_selected": "Not selected", + "not_selected": "Non selezionata", "note": "Nota", "category_id": "Id categoria", "date": "Data Spesa", @@ -478,7 +645,7 @@ "password": "Password", "forgot_password": "Password dimenticata?", "or_signIn_with": "o fai login con", - "login": "Login", + "login": "Accedi", "register": "Registrati", "reset_password": "Resetta Password", "password_reset_successfully": "Password Resettata con successo", @@ -486,34 +653,81 @@ "enter_password": "Inserisci Password", "retype_password": "Ridigita Password" }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, "users": { - "title": "Users", - "users_list": "Users List", + "title": "Utenti", + "users_list": "Lista Utenti", "name": "Nome", "description": "Descrizione", "added_on": "Aggiunto il", "date_of_creation": "Data di creazione", "action": "Azione", - "add_user": "Add User", - "save_user": "Save User", - "update_user": "Update User", - "user": "User | Users", - "add_new_user": "Add New User", - "new_user": "New User", - "edit_user": "Edit User", - "no_users": "No users yet!", - "list_of_users": "This section will contain the list of users.", + "add_user": "Aggiungi Utente", + "save_user": "Salva Utente", + "update_user": "Aggiorna Utente", + "user": "Utente | Utenti", + "add_new_user": "Aggiungi Nuovo Utente", + "new_user": "Nuovo Utente", + "edit_user": "Modifica Utente", + "no_users": "Ancora nessun utente!", + "list_of_users": "Questa sezione conterrà l'elenco degli utenti.", "email": "Email", "phone": "Telefono", "password": "Password", "user_attached_message": "Non puoi eliminare una Commessa che è già attiva", - "confirm_delete": "You will not be able to recover this User | You will not be able to recover these Users", - "created_message": "User created successfully", - "updated_message": "User updated successfully", - "deleted_message": "User deleted successfully | User deleted successfully" + "confirm_delete": "Non sarai in grado di recuperare questo utente | Non sarai in grado di recuperare questi utenti", + "created_message": "Utente creato correttamente", + "updated_message": "Utente aggiornato correttamente", + "deleted_message": "Utente eliminato con successo | Utenti eliminati con successo", + "select_company_role": "Seleziona ruolo per {company}", + "companies": "Aziende" }, "reports": { - "title": "Report", + "title": "Segnala", "from_date": "Da", "to_date": "A", "status": "Stato", @@ -522,7 +736,7 @@ "download_pdf": "Scarica PDF", "view_pdf": "Vedi PDF", "update_report": "Aggiorna Report", - "report": "Report | Reports", + "report": "Segnalazione | Segnalazioni", "profit_loss": { "profit_loss": "Guadagni & Perdite", "to_date": "A", @@ -580,21 +794,26 @@ "customization": "Personalizzazione", "preferences": "Opzioni", "notifications": "Notifiche", - "tax_types": "Tupi di Tasse", + "tax_types": "Tipi di Imposte", "expense_category": "Categorie di spesa", "update_app": "Aggiorna App", "backup": "Backup", - "file_disk": "File Disk", + "file_disk": "Disco File", "custom_fields": "Campi personalizzati", - "payment_modes": "Payment Modes", - "notes": "Note" + "payment_modes": "Modalità di Pagamento", + "notes": "Note", + "exchange_rate": "Tasso di cambio", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." }, "title": "Impostazioni", "setting": "Opzione | Impostazioni", "general": "Generale", "language": "Lingua", "primary_currency": "Valuta Principale", - "timezone": "Time Zone", + "timezone": "Fuso Orario", "date_format": "Formato data", "currencies": { "title": "Valute", @@ -615,17 +834,17 @@ "add_currency": "Aggiungi Valùta" }, "mail": { - "host": "Mail Host", + "host": "Host Mail", "port": "Mail - Porta", - "driver": "Mail Driver", - "secret": "Secret", - "mailgun_secret": "Mailgun Secret", - "mailgun_domain": "Domain", - "mailgun_endpoint": "Mailgun Endpoint", - "ses_secret": "SES Secret", - "ses_key": "SES Key", - "password": "Mail Password", - "username": "Mail Username", + "driver": "Driver Mail", + "secret": "Segreto", + "mailgun_secret": "Segreto Mailgun", + "mailgun_domain": "Dominio", + "mailgun_endpoint": "Endpoint Mailgun", + "ses_secret": "Segreto SES", + "ses_key": "Chiave SES", + "password": "Password Email", + "username": "Nome Utente Email", "mail_config": "Configurazione Mail", "from_name": "Nome Mittente Mail", "from_mail": "Indirizzo Mittente Mail", @@ -644,22 +863,29 @@ "section_description": "Informazioni sulla tua azienda che saranno mostrate in fattura, preventivi ed altri documenti creati dell'applicazione.", "phone": "Telefono", "country": "Paese", - "state": "Stato", + "state": "Provincia", "city": "Città", "address": "Indirizzo", "zip": "CAP", "save": "Salva", - "updated_message": "Informazioni Azienda aggiornate con successo." + "delete": "Elimina", + "updated_message": "Informazioni Azienda aggiornate con successo.", + "delete_company": "Elimina Azienda", + "delete_company_description": "Una volta eliminata la tua azienda, perderai tutti i dati e i file associati in modo permanente.", + "are_you_absolutely_sure": "Sei assolutamente sicuro?", + "delete_company_modal_desc": "Questa azione non può essere annullata. Questo eliminerà definitivamente {company} e tutti i suoi dati associati.", + "delete_company_modal_label": "Digita {company} per confermare" }, "custom_fields": { "title": "Campi personalizzati", - "section_description": "Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.", + "section_description": "Personalizza le tue fatture, preventivi e ricevute di pagamento con i tuoi campi. Assicurati di utilizzare i campi aggiunti qui sotto nei campi della pagina Personalizzazione delle impostazioni.", "add_custom_field": "Aggiungi campo personalizzato", "edit_custom_field": "Modifica campo personalizzato", "field_name": "Nome campo", "label": "Etichetta", "type": "genere", "name": "Nome", + "slug": "URL personalizzato", "required": "Necessaria", "placeholder": "segnaposto", "help_text": "Testo guida", @@ -685,85 +911,104 @@ "select_relative_date": "Seleziona la data relativa", "ticked_by_default": "Contrassegnato per impostazione predefinita", "updated_message": "Campo personalizzato aggiornato correttamente", - "added_message": "Campo personalizzato aggiunto correttamente" + "added_message": "Campo personalizzato aggiunto correttamente", + "press_enter_to_add": "Premi Invio per aggiungere una nuova opzione", + "model_in_use": "Impossibile aggiornare il modello per i campi già in uso.", + "type_in_use": "Impossibile aggiornare il tipo per i campi già in uso." }, "customization": { "customization": "personalizzazione", - "save": "Salva", - "addresses": { - "title": "Indirizzi", - "section_description": "Puoi settare l'indirizzo di fatturazione del Cliente e/o il formato dell'indirizzo di spedizione (Mostrato solo sul PDF). ", - "customer_billing_address": "Indirizzo Fatturazione Cliente", - "customer_shipping_address": "Indirizzo spedizione Cliente", - "company_address": "Indirizzo Azienda", - "insert_fields": "Inserisci Campi", - "contact": "Contatto", - "address": "Indirizzo", - "display_name": "Mostra nome", - "primary_contact_name": "Nome contatto primario", - "email": "Email", - "website": "Sito web", - "name": "Nome", - "country": "Paese", - "state": "Stato", - "city": "Città", - "company_name": "Nome Azienda", - "address_street_1": "Indirizzo 1", - "address_street_2": "Indirizzo 2", - "phone": "Telefono", - "zip_code": "CAP/ZIP Code", - "address_setting_updated": "Indirizzo aggiornato con Successo" - }, "updated_message": "Info azienda aggiornate con successo", + "save": "Salva", + "insert_fields": "Inserisci Campi", + "learn_custom_format": "Impara come utilizzare il formato personalizzato", + "add_new_component": "Aggiungi un componente", + "component": "Componente", + "Parameter": "Parametro", + "series": "Serie", + "series_description": "Per impostare un prefisso statico / postfix come 'INV' attraverso la tua azienda. Supporta la lunghezza del personaggio fino a 4 caratteri.", + "series_param_label": "Valore Serie", + "delimiter": "Delimitatore", + "delimiter_description": "Singolo carattere per specificare il confine tra 2 componenti separati. Per impostazione predefinita è impostato a -", + "delimiter_param_label": "Valore Delimitatore", + "date_format": "Formato data", + "date_format_description": "Un campo di data e ora locale che accetta un parametro di formato. Il formato predefinito: 'Y' rende l'anno corrente.", + "date_format_param_label": "Formato", + "sequence": "Sequenza", + "sequence_description": "Sequenza numerica nella tua azienda. Puoi specificare la lunghezza sul parametro specificato.", + "sequence_param_label": "Lunghezza Sequenza", + "customer_series": "Serie Cliente", + "customer_series_description": "Per impostare un prefisso/postfix diverso per ogni cliente.", + "customer_sequence": "Sequenza Cliente", + "customer_sequence_description": "Sequenza consecutiva di numeri per ogni vostro cliente.", + "customer_sequence_param_label": "Lunghezza Sequenza", + "random_sequence": "Sequenza Casuale", + "random_sequence_description": "Stringa alfanumerica casuale. Puoi specificare la lunghezza sul parametro dato.", + "random_sequence_param_label": "Lunghezza Sequenza", "invoices": { "title": "Fatture", - "notes": "Note", - "invoice_prefix": "Prefisso Fattura", - "default_invoice_email_body": "Default Invoice Email Body", - "invoice_settings": "Impostazioni fattura", - "autogenerate_invoice_number": "Auto genera numero di fattura", - "autogenerate_invoice_number_desc": "Disabilita, se non vuoi auto-generare i numeri delle fatture ogni volta che crei una nuova fattura.", - "enter_invoice_prefix": "Inserisci prefisso fattura", - "terms_and_conditions": "Termini e Condizioni", - "company_address_format": "Company Address Format", - "shipping_address_format": "Shipping Address Format", - "billing_address_format": "Billing Address Format", - "invoice_settings_updated": "Impostazioni fatture aggiornate con successo" + "invoice_number_format": "Formato Numero Fattura", + "invoice_number_format_description": "Personalizza il modo in cui il numero di fattura viene generato automaticamente quando crei una nuova fattura.", + "preview_invoice_number": "Anteprima Numero Fattura", + "due_date": "Data di pagamento", + "due_date_description": "Specificare come la data di scadenza viene impostata automaticamente quando si crea una fattura.", + "due_date_days": "Scadenza dopo (giorni)", + "set_due_date_automatically": "Imposta Data Di Scadenza Automaticamente", + "set_due_date_automatically_description": "Abilita questa opzione se vuoi impostare automaticamente la data di scadenza quando crei una nuova fattura.", + "default_formats": "Formato predefinito", + "default_formats_description": "Sotto i formati dati vengono utilizzati per riempire automaticamente i campi alla creazione della fattura.", + "default_invoice_email_body": "Corpo Email Fattura Predefinito", + "company_address_format": "Formato Indirizzo Azienda", + "shipping_address_format": "Formato Indirizzo Di Spedizione", + "billing_address_format": "Formato Indirizzo Fatturazione", + "invoice_email_attachment": "Invia fatture come allegati", + "invoice_email_attachment_setting_description": "Abilita questa opzione se vuoi inviare fatture come allegati email. Si prega di notare che il pulsante 'Visualizza fattura' nelle email non verrà più visualizzato quando ciò viene abilitato.", + "invoice_settings_updated": "Impostazioni fatture aggiornate con successo", + "retrospective_edits": "Modifica Retrospettiva", + "allow": "Permetti", + "disable_on_invoice_partial_paid": "Disabilita dopo la registrazione del pagamento parziale", + "disable_on_invoice_paid": "Disabilita dopo la registrazione del pagamento parziale", + "disable_on_invoice_sent": "Disabilita dopo l'invio della fattura", + "retrospective_edits_description": " In base alle leggi del tuo paese o alle tue preferenze, puoi limitare gli utenti dalla modifica delle fatture finalizzate." }, "estimates": { "title": "Preventivi", - "estimate_prefix": "Prefisso Preventivi", - "default_estimate_email_body": "Default Estimate Email Body", - "estimate_settings": "Impostazioni Preventivi", - "autogenerate_estimate_number": "Auto-genera Numero di preventivo", - "estimate_setting_description": "Disabilita, se non vuoi autogenerare il numero di preventivo ogni volta che ne viene creato uno nuovo.", - "enter_estimate_prefix": "Inserisci prefisso preventivo", - "estimate_setting_updated": "Impostazioni preventivi aggiornate con successo", - "company_address_format": "Company Address Format", - "billing_address_format": "Billing Address Format", - "shipping_address_format": "Shipping Address Format" + "estimate_number_format": "Formato del Numero di Serie", + "estimate_number_format_description": "Personalizza il modo in cui il numero di fattura viene generato automaticamente quando crei una nuova fattura.", + "preview_estimate_number": "Anteprima Numero Preventivo", + "expiry_date": "Data di scadenza", + "expiry_date_description": "Specificare come la data di scadenza viene impostata automaticamente quando si crea una fattura.", + "expiry_date_days": "Stima Scade dopo giorni", + "set_expiry_date_automatically": "Imposta Data Di Scadenza Automaticamente", + "set_expiry_date_automatically_description": "Abilita questa opzione se vuoi impostare automaticamente la data di scadenza quando crei una nuova fattura.", + "default_formats": "Formato predefinito", + "default_formats_description": "Sotto i formati dati vengono utilizzati per riempire automaticamente i campi alla creazione della fattura.", + "default_estimate_email_body": "Corpo Email Preventivo Predefinito", + "company_address_format": "Formato Indirizzo Azienda", + "shipping_address_format": "Formato Indirizzo Spedizione", + "billing_address_format": "Formato Indirizzo Fatturazione", + "estimate_email_attachment": "Invia stime come allegati", + "estimate_email_attachment_setting_description": "Abilita questa opzione se vuoi inviare fatture come allegati email. Si prega di notare che il pulsante 'Visualizza fattura' nelle email non verrà più visualizzato quando ciò viene abilitato.", + "estimate_settings_updated": "Impostazioni preventivi aggiornate con successo", + "convert_estimate_options": "Preventivo Converti Azione", + "convert_estimate_description": "Specificare cosa succede al preventivo dopo che viene convertito in una fattura.", + "no_action": "Nessuna azione", + "delete_estimate": "Elimina preventivo", + "mark_estimate_as_accepted": "Segna preventivo come accettato" }, "payments": { "title": "Pagamenti", - "description": "Modes of transaction for payments", - "payment_prefix": "Prefisso Pagamento", - "default_payment_email_body": "Default Payment Email Body", - "payment_settings": "Impostazioni Pagamento", - "autogenerate_payment_number": "Auto genera il numero di Pagamento", - "payment_setting_description": "Disabilita, se non vuoi autogenerare il numero di pagamento ogni volta che ne viene creato uno nuovo.", - "enter_payment_prefix": "Inserisci prefisso di pagamento", - "payment_setting_updated": "Impostazioni di pagamento aggiornate con successo", - "payment_modes": "Payment Modes", - "add_payment_mode": "Aggiungi modalità di pagamento", - "edit_payment_mode": "Modifica modalità di pagamento", - "mode_name": "Nome modalità", - "payment_mode_added": "Modalità di pagamento aggiunta", - "payment_mode_updated": "Modalità di pagamento aggiornata", - "payment_mode_confirm_delete": "Non potrai ripristinare la modalità di pagamento", - "already_in_use": "Modalità di pagamento già in uso", - "deleted_message": "Payment Mode deleted successfully", - "company_address_format": "Company Address Format", - "from_customer_address_format": "From Customer Address Format" + "payment_number_format": "Formato Numero Pagamento", + "payment_number_format_description": "Personalizza il modo in cui il numero di fattura viene generato automaticamente quando crei una nuova fattura.", + "preview_payment_number": "Anteprima Numero Di Pagamento", + "default_formats": "Formato predefinito", + "default_formats_description": "Sotto i formati dati vengono utilizzati per riempire automaticamente i campi alla creazione della fattura.", + "default_payment_email_body": "Corpo Email Pagamento Predefinito", + "company_address_format": "Formato Indirizzo Azienda", + "from_customer_address_format": "Dal Formato Indirizzo Cliente", + "payment_email_attachment": "Invia stime come allegati", + "payment_email_attachment_setting_description": "Abilita questa opzione se vuoi inviare fatture come allegati email. Si prega di notare che il pulsante 'Visualizza fattura' nelle email non verrà più visualizzato quando ciò viene abilitato.", + "payment_settings_updated": "Impostazioni di pagamento aggiornate con successo" }, "items": { "title": "Commesse", @@ -779,18 +1024,18 @@ }, "notes": { "title": "Note", - "description": "Save time by creating notes and reusing them on your invoices, estimates & payments.", + "description": "Risparmia tempo creando note e riutilizzandole sulle tue fatture, preventivi e pagamenti.", "notes": "Note", "type": "genere", - "add_note": "Add Note", - "add_new_note": "Add New Note", + "add_note": "Aggiungi Nota", + "add_new_note": "Aggiungi nuova nota", "name": "Nome", - "edit_note": "Edit Note", - "note_added": "Note added successfully", - "note_updated": "Note Updated successfully", - "note_confirm_delete": "You will not be able to recover this Note", - "already_in_use": "Note is already in use", - "deleted_message": "Note deleted successfully" + "edit_note": "Modifica nota", + "note_added": "Nota aggiunta correttamente", + "note_updated": "Nota aggiornata correttamente", + "note_confirm_delete": "Non sarà possibile recuperare questa nota", + "already_in_use": "Nota già in uso", + "deleted_message": "Nota eliminata con successo" } }, "account_settings": { @@ -822,8 +1067,59 @@ "email_save_message": "Email salvata con successo", "please_enter_email": "Inserisci Email" }, + "roles": { + "title": "Ruoli", + "description": "Gestisci i ruoli e i permessi di questa azienda", + "save": "Salva", + "add_new_role": "Aggiungi Nuovo Ruolo", + "role_name": "Nome Ruolo", + "added_on": "Aggiunto il", + "add_role": "Aggiungi Ruolo", + "edit_role": "Modifica Ruolo", + "name": "Nome", + "permission": "Permesso | Permessi", + "select_all": "Seleziona tutto", + "none": "Nessuno", + "confirm_delete": "Non sarai in grado di recuperare questo ruolo", + "created_message": "Utente creato correttamente", + "updated_message": "Ruolo aggiornato correttamente", + "deleted_message": "Ruolo eliminato con successo", + "already_in_use": "Ruolo già in uso" + }, + "exchange_rate": { + "exchange_rate": "Tasso di cambio", + "title": "Correggi i problemi di cambio valuta", + "description": "Inserisci il tasso di cambio di tutte le valute menzionate di seguito per aiutare il Cratere a calcolare correttamente gli importi in {currency}.", + "drivers": "Drivers", + "new_driver": "Aggiungi Nuovo Fornitore", + "edit_driver": "Modifica Fornitore", + "select_driver": "Seleziona Driver", + "update": "seleziona il tasso di cambio ", + "providers_description": "Configura qui i tuoi fornitori di tassi di cambio per recuperare automaticamente l'ultimo tasso di cambio sulle transazioni.", + "key": "API Key", + "name": "Nome", + "driver": "Driver", + "is_default": "É PREDEFINITO", + "currency": "Valute", + "exchange_rate_confirm_delete": "Non sarà possibile recuperare questo driver", + "created_message": "Fornitore creato con successo", + "updated_message": "Provider Aggiornato Con Successo", + "deleted_message": "Provider Eliminato Con Successo", + "error": " Impossibile Eliminare Il Driver Attivo", + "default_currency_error": "Questa valuta è già utilizzata in uno dei Provider Attivi", + "exchange_help_text": "Inserisci il tasso di cambio da {currency} a {baseCurrency}", + "currency_freak": "Valuta Freak", + "currency_layer": "Livello Valuta", + "open_exchange_rate": "Tasso Di Cambio Aperto", + "currency_converter": "Convertitore Valuta", + "server": "Server", + "url": "Indirizzo", + "active": "Attivo", + "currency_help_text": "Questo provider sarà utilizzato solo sulle valute sopra selezionate", + "currency_in_used": "Le seguenti valute sono già attive su un altro provider. Si prega di rimuovere queste valute dalla selezione per attivare nuovamente questo provider." + }, "tax_types": { - "title": "Tipi di Imposta", + "title": "Tipi di Imposte", "add_tax": "Aggiungi Imposta", "edit_tax": "Modifica imposta", "description": "Puoi aggiongere e rimuovere imposte a piacimento. Vengono supportate Tasse differenti per prodotti/servizi specifici esattamento come per le fatture.", @@ -841,6 +1137,18 @@ "confirm_delete": "Non potrai ripristinare questo tipo di imposta", "already_in_use": "Imposta già in uso" }, + "payment_modes": { + "title": "Modalità di pagamento", + "description": "Modalità di transazione per i pagamenti", + "add_payment_mode": "Aggiungi modalità di pagamento", + "edit_payment_mode": "Modifica modalità di pagamento", + "mode_name": "Nome modalità", + "payment_mode_added": "Modalità di pagamento aggiunta", + "payment_mode_updated": "Modalità di pagamento aggiornata", + "payment_mode_confirm_delete": "Non potrai ripristinare la modalità di pagamento", + "already_in_use": "Modalità di pagamento già in uso", + "deleted_message": "Modalità di pagamento eliminata con successo" + }, "expense_category": { "title": "Categorie di spesa", "action": "Azione", @@ -858,21 +1166,30 @@ }, "preferences": { "currency": "Valùta", - "default_language": "Default Language", - "time_zone": "Time Zone", + "default_language": "Lingua predefinita", + "time_zone": "Fuso Orario", "fiscal_year": "Anno finanziario", "date_format": "Formato Data", "discount_setting": "Impostazione Sconto", "discount_per_item": "Sconto Per Item ", "discount_setting_description": "Abilita se vuoi aggiungere uno sconto ad uno specifica fattura. Di default, lo sconto è aggiunto direttamente in fattura.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", "save": "Salva", "preference": "Preferenza | Preferenze", "general_settings": "Impostazioni di default del sistema.", "updated_message": "Preferenze aggiornate con successo", "select_language": "seleziona lingua", "select_time_zone": "Seleziona Time Zone", - "select_date_format": "Select Date Format", - "select_financial_year": "Seleziona anno finanziario" + "select_date_format": "Seleziona Formato Data", + "select_financial_year": "Seleziona anno finanziario", + "recurring_invoice_status": "Stato Fattura Ricorrente", + "create_status": "Crea stato", + "active": "Attivo", + "on_hold": "In sospeso", + "update_status": "Aggiorna stato", + "completed": "Completato", + "company_currency_unchangeable": "La valuta dell'azienda non può essere cambiata" }, "update_app": { "title": "Aggiorna App", @@ -880,7 +1197,7 @@ "check_update": "Controllo aggiornamenti", "avail_update": "Aggiornamento disponibile", "next_version": "Versione successiva", - "requirements": "Requirements", + "requirements": "Requisiti", "update": "Aggiorna ora", "update_progress": "Aggiornamento in corso...", "progress_text": "Sarà necessario qualche minuto. Per favore non aggiornare la pagina e non chiudere la finestra prima che l'aggiornamento sia completato", @@ -890,90 +1207,105 @@ "download_zip_file": "Scarica il file ZIP", "unzipping_package": "Pacchetto di decompressione", "copying_files": "Copia dei file", + "deleting_files": "Eliminazione dei file inutilizzati", "running_migrations": "Esecuzione delle migrazioni", "finishing_update": "Aggiornamento di finitura", "update_failed": "Aggiornamento non riuscito", - "update_failed_text": "Scusate! L'aggiornamento non è riuscito il: passaggio {step}" + "update_failed_text": "Scusate! L'aggiornamento non è riuscito il: passaggio {step}", + "update_warning": "Tutti i file dell'applicazione e i file di modello predefiniti verranno sovrascritti quando si aggiorna l'applicazione utilizzando questa utility. Si prega di fare un backup dei modelli e del database prima di aggiornare." }, "backup": { "title": "Backup | Backups", - "description": "The backup is a zipfile that contains all files in the directories you specify along with a dump of your database", - "new_backup": "Add New Backup", - "create_backup": "Create Backup", - "select_backup_type": "Select Backup Type", - "backup_confirm_delete": "You will not be able to recover this Backup", - "path": "path", - "new_disk": "New Disk", - "created_at": "created at", - "size": "size", + "description": "Il backup è un file zip che contiene tutti i file nelle cartelle specificate con un dump del vostro database", + "new_backup": "Nuovo Backup", + "create_backup": "Crea Backup", + "select_backup_type": "Scegli tipo di backup", + "backup_confirm_delete": "Non sarà possibile recuperare questo backup", + "path": "percorso", + "new_disk": "Nuovo Disco", + "created_at": "creato il", + "size": "dimensioni", "dropbox": "dropbox", - "local": "local", - "healthy": "healthy", - "amount_of_backups": "amount of backups", - "newest_backups": "newest backups", - "used_storage": "used storage", - "select_disk": "Select Disk", + "local": "locale", + "healthy": "sano", + "amount_of_backups": "quantità di backup", + "newest_backups": "backup più recenti", + "used_storage": "spazio utilizzato", + "select_disk": "Seleziona Disco", "action": "Azione", - "deleted_message": "Backup deleted successfully", - "created_message": "Backup created successfully", - "invalid_disk_credentials": "Invalid credential of selected disk" + "deleted_message": "Backup eliminato con successo", + "created_message": "Backup creato con successo", + "invalid_disk_credentials": "Credenziali del disco selezionato non valide" }, "disk": { - "title": "File Disk | File Disks", - "description": "By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.", - "created_at": "created at", + "title": "Disco File | Dischi File", + "description": "Per impostazione predefinita, Crater utilizzerà il disco locale per salvare backup, avatar e altri file di immagine. Puoi configurare più di un driver disco come DigitalOcean, S3 e Dropbox in base alle tue preferenze.", + "created_at": "creato il", "dropbox": "dropbox", "name": "Nome", "driver": "Driver", "disk_type": "genere", - "disk_name": "Disk Name", - "new_disk": "Add New Disk", - "filesystem_driver": "Filesystem Driver", - "local_driver": "local Driver", - "local_root": "local Root", - "public_driver": "Public Driver", - "public_root": "Public Root", - "public_url": "Public URL", - "public_visibility": "Public Visibility", - "media_driver": "Media Driver", + "disk_name": "Nome Disco", + "new_disk": "Aggiungi Nuovo Disco", + "filesystem_driver": "Driver Filesystem", + "local_driver": "driver locale", + "local_root": "radice locale", + "public_driver": "Driver Pubblico", + "public_root": "Root Pubblica", + "public_url": "Url Pubblico", + "public_visibility": "Visibilità Pubblica", + "media_driver": "Driver Media", "media_root": "Media Root", - "aws_driver": "AWS Driver", - "aws_key": "AWS Key", - "aws_secret": "AWS Secret", - "aws_region": "AWS Region", - "aws_bucket": "AWS Bucket", - "aws_root": "AWS Root", - "do_spaces_type": "Do Spaces type", - "do_spaces_key": "Do Spaces key", - "do_spaces_secret": "Do Spaces Secret", - "do_spaces_region": "Do Spaces Region", - "do_spaces_bucket": "Do Spaces Bucket", - "do_spaces_endpoint": "Do Spaces Endpoint", - "do_spaces_root": "Do Spaces Root", - "dropbox_type": "Dropbox Type", - "dropbox_token": "Dropbox Token", - "dropbox_key": "Dropbox Key", - "dropbox_secret": "Dropbox Secret", - "dropbox_app": "Dropbox App", - "dropbox_root": "Dropbox Root", - "default_driver": "Default Driver", - "is_default": "IS DEFAULT", - "set_default_disk": "Set Default Disk", - "success_set_default_disk": "Disk set as default successfully", - "save_pdf_to_disk": "Save PDFs to Disk", - "disk_setting_description": " Enable this, if you wish to save a copy of each Invoice, Estimate & Payment Receipt PDF on your default disk automatically. Turning this option will decrease the load-time when viewing the PDFs.", - "select_disk": "Select Disk", - "disk_settings": "Disk Settings", - "confirm_delete": "Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater", + "aws_driver": "Driver AWS", + "aws_key": "Chiave AWS", + "aws_secret": "Segreto AWS", + "aws_region": "Regione AWS", + "aws_bucket": "Bucket AWS", + "aws_root": "Root AWS", + "do_spaces_type": "tipo Do Spaces", + "do_spaces_key": "chiave Do Spaces", + "do_spaces_secret": "segreto Do Spaces", + "do_spaces_region": "regione Do Spaces", + "do_spaces_bucket": "bucket Do Spaces", + "do_spaces_endpoint": "endpoint Do Spaces", + "do_spaces_root": "root Do Spaces", + "dropbox_type": "Tipo Dropbox", + "dropbox_token": "Token Dropbox", + "dropbox_key": "Chiave Dropbox", + "dropbox_secret": "Segreto Dropbox", + "dropbox_app": "App Dropbox", + "dropbox_root": "Root Dropbox", + "default_driver": "Driver Predefinito", + "is_default": "È DEFAULT", + "set_default_disk": "Imposta Disco Predefinito", + "set_default_disk_confirm": "Questo disco sarà impostato come predefinito e tutti i nuovi PDF saranno salvati su questo disco", + "success_set_default_disk": "Disco impostato come predefinito correttamente", + "save_pdf_to_disk": "Salva i PDF su disco", + "disk_setting_description": " Abilita questa opzione, se vuoi salvare automaticamente una copia di ogni PDF Fattura, Preventivo e Ricevuta di Pagamento sul tuo disco predefinito. Attivare questa opzione diminuirà il tempo di caricamento durante la visualizzazione dei PDF.", + "select_disk": "Seleziona Disco", + "disk_settings": "Impostazioni Disco", + "confirm_delete": "I file e le cartelle esistenti nel disco specificato non saranno toccati, ma la configurazione del disco sarà eliminata dal Crater", "action": "Azione", - "edit_file_disk": "Edit File Disk", - "success_create": "Disk added successfully", - "success_update": "Disk updated successfully", - "error": "Disk addition failed", - "deleted_message": "File Disk deleted successfully", - "disk_variables_save_successfully": "Disk Configured Successfully", - "disk_variables_save_error": "Disk configuration failed.", - "invalid_disk_credentials": "Invalid credential of selected disk" + "edit_file_disk": "Modifica Disco File", + "success_create": "Disco aggiunto correttamente", + "success_update": "Disco aggiornato correttamente", + "error": "Aggiunta del disco fallita", + "deleted_message": "Disco file eliminato con successo", + "disk_variables_save_successfully": "Disco Configurato Con successo", + "disk_variables_save_error": "Configurazione disco fallita.", + "invalid_disk_credentials": "Credenziali del disco selezionato non valide" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { @@ -991,8 +1323,9 @@ "logo_preview": "Anteprima Logo", "preferences": "Impostazioni", "preferences_desc": "Impostazioni di default del sistema.", + "currency_set_alert": "La valuta dell'azienda non può essere modificata più tardi.", "country": "Paese", - "state": "Stato", + "state": "Provincia", "city": "Città", "address": "Indirizzo", "street": "Indirizzo1 | Indirizzo2", @@ -1001,25 +1334,25 @@ "go_back": "Torna indietro", "currency": "Valùta", "language": "Lingua", - "time_zone": "Time Zone", + "time_zone": "Fuso Orario", "fiscal_year": "Anno Finanziario", "date_format": "Formato Date", "from_address": "Indirizzo - Da", - "username": "Username", + "username": "Nome utente", "next": "Successivo", "continue": "Continua", "skip": "Salta", "database": { "database": "URL del sito & database", "connection": "Connessione Database", - "host": "Database Host", + "host": "Host Database", "port": "Database - Porta", - "password": "Database Password", - "app_url": "App URL", - "app_domain": "App Domain", - "username": "Database Username", + "password": "Password Database", + "app_url": "URL dell'App", + "app_domain": "Dominio App", + "username": "Nome Utente del Database", "db_name": "Database Nome", - "db_path": "Database Path", + "db_path": "Percorso del database", "desc": "Crea un database sul tuo server e setta le credenziali usando il form qui sotto." }, "permissions": { @@ -1028,18 +1361,27 @@ "permission_confirm_desc": "Controllo sui permessi Cartelle, fallito", "permission_desc": "Qui sotto la lista dei permessi richiesti per far funzionare correttamente l'App. Se il controllo dei permessi fallisce, assicurati di aggiornare/modificare i permessi sulle cartelle." }, + "verify_domain": { + "title": "Verifica Dominio", + "desc": "Crater utilizza l'autenticazione basata su sessione, che richiede la verifica del dominio per scopi di sicurezza. Inserisci il dominio su cui accederai alla tua applicazione web.", + "app_domain": "Dominio App", + "verify_now": "Verifica Ora", + "success": "Dominio Verificato Con Successo.", + "failed": "Verifica del dominio fallita. Inserisci un nome di dominio valido.", + "verify_and_continue": "Verifica e continua" + }, "mail": { - "host": "Mail Host", + "host": "Host Mail", "port": "Mail - Porta", - "driver": "Mail Driver", - "secret": "Secret", - "mailgun_secret": "Mailgun Secret", - "mailgun_domain": "Domain", - "mailgun_endpoint": "Mailgun Endpoint", - "ses_secret": "SES Secret", - "ses_key": "SES Key", - "password": "Mail Password", - "username": "Mail Username", + "driver": "Driver Mail", + "secret": "Segreto", + "mailgun_secret": "Segreto Mailgun", + "mailgun_domain": "Dominio", + "mailgun_endpoint": "Endpoint Mailgun", + "ses_secret": "Segreto SES", + "ses_key": "Chiave SES", + "password": "Password Email", + "username": "Nome Utente Email", "mail_config": "Configurazione Mail", "from_name": "Nome mittente mail", "from_mail": "Indirizzo mittente mail", @@ -1053,11 +1395,11 @@ "system_req_desc": "Crater ha alcuni requisiti di sistema. Assicurati che il server ha la versione di php richiesta e tutte le estensioni necessarie." }, "errors": { - "migrate_failed": "Migrate Failed", - "database_variables_save_error": "Cannot write configuration to .env file. Please check its file permissions", - "mail_variables_save_error": "Email configuration failed.", - "connection_failed": "Database connection failed", - "database_should_be_empty": "Database should be empty" + "migrate_failed": "Migrazione Fallita", + "database_variables_save_error": "Impossibile scrivere la configurazione nel file .env. Si prega di controllare i permessi dei file", + "mail_variables_save_error": "Configurazione email fallita.", + "connection_failed": "Connessione al Database fallita", + "database_should_be_empty": "Il database dovrebbe essere vuoto" }, "success": { "mail_variables_save_successfully": "Email configurata con successo", @@ -1066,8 +1408,8 @@ }, "validation": { "invalid_phone": "Numero di telefono invalido", - "invalid_url": "URL non valido (es: http://www.craterapp.com)", - "invalid_domain_url": "URL non valido (es: craterapp.com)", + "invalid_url": "URL non valido (es: http://www.crater.com)", + "invalid_domain_url": "URL non valido (es: crater.com)", "required": "Campo obbligatorio", "email_incorrect": "Email non corretta.", "email_already_taken": "Email già in uso.", @@ -1078,6 +1420,7 @@ "not_yet": "Non ancora? Invia di nuovo", "password_min_length": "La password deve contenere {count} caratteri", "name_min_length": "Il nome deve avere almeno {count} lettere.", + "prefix_min_length": "Il prefisso deve contenere almeno {count} lettere.", "enter_valid_tax_rate": "Inserisci un tasso di imposta valido", "numbers_only": "Solo numeri.", "characters_only": "Solo caratteri.", @@ -1092,6 +1435,7 @@ "price_minvalue": "Il prezzo deve essere maggiore di 0.", "amount_maxlength": "La somma non deve contenere più di 20 cifre.", "amount_minvalue": "La somma deve essere maggiore di 0.", + "discount_maxlength": "Lo sconto non deve essere superiore allo sconto massimo", "description_maxlength": "La Descrizione non deve superare i 255 caratteri.", "subject_maxlength": "L'Oggetto non deve superare i 100 caratter.", "message_maxlength": "Il messaggio non può superare i 255 caratteri.", @@ -1100,47 +1444,78 @@ "address_maxlength": "L'Indirizzo non può eccedere i 255 caratteri.", "ref_number_maxlength": "Il Numero di Riferimento non può superare i 255 caratteri.", "prefix_maxlength": "Il Prefisso non può superare i 5 caratteri.", - "something_went_wrong": "Si è verificato un errore" + "something_went_wrong": "Si è verificato un errore", + "number_length_minvalue": "La lunghezza del numero deve essere maggiore di 0", + "at_least_one_ability": "Seleziona almeno un permesso.", + "valid_driver_key": "Inserisci una chiave {driver} valida.", + "valid_exchange_rate": "Inserisci un tasso di cambio valido.", + "company_name_not_same": "Il nome dell'azienda deve corrispondere al nome indicato." + }, + "errors": { + "starter_plan": "Questa funzione è disponibile dal piano Starter, in poi!", + "invalid_provider_key": "Inserisci una API Key valida per il Fornitore.", + "estimate_number_used": "Il numero stimato è già stato preso.", + "invoice_number_used": "Il numero della fattura è già stato utilizzato.", + "payment_attached": "Una delle fatture selezionate ha già associato un pagamento. Assicurati di eliminare il pagamento associato prima di procedere con la rimozione.", + "payment_number_used": "Questa modalità di pagamento è già stata inserita.", + "name_already_taken": "Questo Nome esiste giá.", + "receipt_does_not_exist": "La ricevuta non esiste.", + "customer_cannot_be_changed_after_payment_is_added": "Il cliente non può essere modificato dopo aver aggiunto il pagamento", + "invalid_credentials": "Credenziali non valide", + "not_allowed": "Non Consentito", + "login_invalid_credentials": "Queste credenziali non corrispondono ai nostri record.", + "enter_valid_cron_format": "Inserisci un formato cron valido", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, "pdf_estimate_label": "Preventivo", "pdf_estimate_number": "Preventivo Numero", "pdf_estimate_date": "Data preventivo", - "pdf_estimate_expire_date": "Expiry date", + "pdf_estimate_expire_date": "Data di scadenza", "pdf_invoice_label": "Fattura", "pdf_invoice_number": "Numero Fattura", "pdf_invoice_date": "Data fattura", - "pdf_invoice_due_date": "Due date", + "pdf_invoice_due_date": "Data di pagamento", "pdf_notes": "Note", "pdf_items_label": "Commesse", "pdf_quantity_label": "Quantità", "pdf_price_label": "Prezzo", "pdf_discount_label": "Sconto", "pdf_amount_label": "Ammontare", - "pdf_subtotal": "Subtotal", + "pdf_subtotal": "Parziale", "pdf_total": "Totale", - "pdf_payment_label": "Payment", - "pdf_payment_receipt_label": "PAYMENT RECEIPT", - "pdf_payment_date": "Payment Date", + "pdf_payment_label": "Pagamento", + "pdf_payment_receipt_label": "RICEVUTA DI PAGAMENTO", + "pdf_payment_date": "Data di pagamento", "pdf_payment_number": "Numero di pagamento", "pdf_payment_mode": "Modalità di Pagamento", - "pdf_payment_amount_received_label": "Amount Received", - "pdf_expense_report_label": "EXPENSES REPORT", - "pdf_total_expenses_label": "TOTAL EXPENSE", - "pdf_profit_loss_label": "PROFIT & LOSS REPORT", - "pdf_sales_customers_label": "Sales Customer Report", - "pdf_sales_items_label": "Sales Item Report", - "pdf_tax_summery_label": "Tax Summary Report", - "pdf_income_label": "INCOME", - "pdf_net_profit_label": "NET PROFIT", - "pdf_customer_sales_report": "Sales Report: By Customer", - "pdf_total_sales_label": "TOTAL SALES", - "pdf_item_sales_label": "Sales Report: By Item", - "pdf_tax_report_label": "TAX REPORT", - "pdf_total_tax_label": "TOTAL TAX", + "pdf_payment_amount_received_label": "Importo Ricevuto", + "pdf_expense_report_label": "RELAZIONE SPESE", + "pdf_total_expenses_label": "TOTALE SPESE", + "pdf_profit_loss_label": "RELAZIONE PROFITTO E PERDITE", + "pdf_sales_customers_label": "Report Vendite Clienti", + "pdf_sales_items_label": "Rapporto vendite", + "pdf_tax_summery_label": "Rapporto Riepilogo Tasse", + "pdf_income_label": "REDDITO", + "pdf_net_profit_label": "PROFITTO NETTO", + "pdf_customer_sales_report": "Relazione Vendite: Per Cliente", + "pdf_total_sales_label": "TOTALE VENDITE", + "pdf_item_sales_label": "Relazione Vendite: Per Articolo", + "pdf_tax_report_label": "RELAZIONE FISCALE", + "pdf_total_tax_label": "TOTALE IMPOSTA", "pdf_tax_types_label": "Tipi di Imposta", "pdf_expenses_label": "Uscite", "pdf_bill_to": "Fattura a,", "pdf_ship_to": "Invia a,", - "pdf_received_from": "Received from:", - "pdf_tax_label": "imposta" + "pdf_received_from": "Ricevuto da:", + "pdf_tax_label": "Tassa" } diff --git a/resources/scripts/locales/ja.json b/resources/scripts/locales/ja.json index 60dd40e14..f16b6cf2a 100644 --- a/resources/scripts/locales/ja.json +++ b/resources/scripts/locales/ja.json @@ -1,1155 +1,1521 @@ { "navigation": { - "dashboard": "ダッシュボード", - "customers": "お客様", - "items": "アイテム", - "invoices": "請求書", - "expenses": "経費", - "estimates": "見積り", - "payments": "支払い", - "reports": "レポート", - "settings": "設定", - "logout": "ログアウト", - "users": "ユーザー" + "dashboard": "Dashboard", + "customers": "Customers", + "items": "Items", + "invoices": "Invoices", + "recurring-invoices": "Recurring Invoices", + "expenses": "Expenses", + "estimates": "Estimates", + "payments": "Payments", + "reports": "Reports", + "settings": "Settings", + "logout": "Logout", + "users": "Users", + "modules": "Modules" }, "general": { - "add_company": "会社を追加", - "view_pdf": "PDFを見る", - "copy_pdf_url": "PDFURLをコピーする", - "download_pdf": "PDFをダウンロード", - "save": "セーブ", - "create": "作成する", - "cancel": "キャンセル", - "update": "更新", - "deselect": "選択を解除", - "download": "ダウンロード", - "from_date": "日付から", - "to_date": "現在まで", - "from": "から", - "to": "に", - "sort_by": "並び替え", - "ascending": "上昇", - "descending": "降順", - "subject": "件名", - "body": "体", - "message": "メッセージ", - "send": "送信", - "go_back": "戻る", - "back_to_login": "ログインに戻る?", - "home": "ホームホーム", - "filter": "フィルタ", - "delete": "削除", - "edit": "編集", - "view": "見る", - "add_new_item": "新しいアイテムを追加する", - "clear_all": "すべてクリア", - "showing": "表示中", - "of": "の", - "actions": "行動", - "subtotal": "小計", - "discount": "ディスカウント", - "fixed": "修繕", - "percentage": "パーセンテージ", - "tax": "税金", - "total_amount": "合計金額", - "bill_to": "請求書送付先", - "ship_to": "送り先", - "due": "期限", - "draft": "ドラフト", - "sent": "送信済み", - "all": "すべて", - "select_all": "すべて選択", - "choose_file": "ファイルを選択するには、ここをクリックしてください", - "choose_template": "テンプレートを選択してください", - "choose": "選択", - "remove": "削除する", - "powered_by": "搭載", - "bytefury": "Bytefury", - "select_a_status": "ステータスを選択", - "select_a_tax": "税金を選択してください", - "search": "探す", - "are_you_sure": "本気ですか?", - "list_is_empty": "リストは空です。", - "no_tax_found": "税金が見つかりません!", + "add_company": "Add Company", + "view_pdf": "View PDF", + "copy_pdf_url": "Copy PDF Url", + "download_pdf": "Download PDF", + "save": "Save", + "create": "Create", + "cancel": "Cancel", + "update": "Update", + "deselect": "Deselect", + "download": "Download", + "from_date": "From Date", + "to_date": "To Date", + "from": "From", + "to": "To", + "ok": "Ok", + "yes": "Yes", + "no": "No", + "sort_by": "Sort By", + "ascending": "Ascending", + "descending": "Descending", + "subject": "Subject", + "body": "Body", + "message": "Message", + "send": "Send", + "preview": "Preview", + "go_back": "Go Back", + "back_to_login": "Back to Login?", + "home": "Home", + "filter": "Filter", + "delete": "Delete", + "edit": "Edit", + "view": "View", + "add_new_item": "Add New Item", + "clear_all": "Clear All", + "showing": "Showing", + "of": "of", + "actions": "Actions", + "subtotal": "SUBTOTAL", + "discount": "DISCOUNT", + "fixed": "Fixed", + "percentage": "Percentage", + "tax": "TAX", + "total_amount": "TOTAL AMOUNT", + "bill_to": "Bill to", + "ship_to": "Ship to", + "due": "Due", + "draft": "Draft", + "sent": "Sent", + "all": "All", + "select_all": "Select All", + "select_template": "Select Template", + "choose_file": "Click here to choose a file", + "choose_template": "Choose a template", + "choose": "Choose", + "remove": "Remove", + "select_a_status": "Select a status", + "select_a_tax": "Select a tax", + "search": "Search", + "are_you_sure": "Are you sure?", + "list_is_empty": "List is empty.", + "no_tax_found": "No tax found!", "four_zero_four": "404", - "you_got_lost": "おっと!あなたは迷子になりました!", - "go_home": "家に帰る", - "test_mail_conf": "メール構成のテスト", - "send_mail_successfully": "メールは正常に送信されました", - "setting_updated": "設定が正常に更新されました", - "select_state": "状態を選択", - "select_country": "国を選択", - "select_city": "都市を選択", - "street_1": "ストリート1", - "street_2": "2丁目", - "action_failed": "アクションが失敗しました", - "retry": "リトライ", - "choose_note": "注を選択", - "no_note_found": "メモが見つかりません", - "insert_note": "メモを挿入", - "copied_pdf_url_clipboard": "PDFのURLをクリップボードにコピーしました!" + "you_got_lost": "Whoops! You got Lost!", + "go_home": "Go Home", + "test_mail_conf": "Test Mail Configuration", + "send_mail_successfully": "Mail sent successfully", + "setting_updated": "Setting updated successfully", + "select_state": "Select state", + "select_country": "Select Country", + "select_city": "Select City", + "street_1": "Street 1", + "street_2": "Street 2", + "action_failed": "Action Failed", + "retry": "Retry", + "choose_note": "Choose Note", + "no_note_found": "No Note Found", + "insert_note": "Insert Note", + "copied_pdf_url_clipboard": "Copied PDF url to clipboard!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Docs", + "do_you_wish_to_continue": "Do you wish to continue?", + "note": "Note", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { - "select_year": "年を選択", + "select_year": "Select year", "cards": { - "due_amount": "料金", - "customers": "お客様", - "invoices": "請求書", - "estimates": "見積り" + "due_amount": "Amount Due", + "customers": "Customers", + "invoices": "Invoices", + "estimates": "Estimates", + "payments": "Payments" }, "chart_info": { - "total_sales": "販売", - "total_receipts": "領収書", - "total_expense": "経費", - "net_income": "当期純利益", - "year": "年を選択" + "total_sales": "Sales", + "total_receipts": "Receipts", + "total_expense": "Expenses", + "net_income": "Net Income", + "year": "Select year" }, "monthly_chart": { - "title": "販売" + "title": "Sales & Expenses" }, "recent_invoices_card": { - "title": "期日請求書", - "due_on": "期限", - "customer": "お客様", - "amount_due": "料金", - "actions": "行動", - "view_all": "すべて表示" + "title": "Due Invoices", + "due_on": "Due On", + "customer": "Customer", + "amount_due": "Amount Due", + "actions": "Actions", + "view_all": "View All" }, "recent_estimate_card": { - "title": "最近の見積もり", - "date": "日付", - "customer": "お客様", - "amount_due": "料金", - "actions": "行動", - "view_all": "すべて表示" + "title": "Recent Estimates", + "date": "Date", + "customer": "Customer", + "amount_due": "Amount Due", + "actions": "Actions", + "view_all": "View All" } }, "tax_types": { - "name": "名前", - "description": "説明", - "percent": "パーセント", - "compound_tax": "複合税" + "name": "Name", + "description": "Description", + "percent": "Percent", + "compound_tax": "Compound Tax" }, "global_search": { - "search": "探す...", - "customers": "お客様", - "users": "ユーザー", - "no_results_found": "結果が見つかりません" + "search": "Search...", + "customers": "Customers", + "users": "Users", + "no_results_found": "No Results Found" + }, + "company_switcher": { + "label": "SWITCH COMPANY", + "no_results_found": "No Results Found", + "add_new_company": "Add new company", + "new_company": "New company", + "created_message": "Company created successfully" + }, + "dateRange": { + "today": "Today", + "this_week": "This Week", + "this_month": "This Month", + "this_quarter": "This Quarter", + "this_year": "This Year", + "previous_week": "Previous Week", + "previous_month": "Previous Month", + "previous_quarter": "Previous Quarter", + "previous_year": "Previous Year", + "custom": "Custom" }, "customers": { - "title": "お客様", - "add_customer": "顧客を追加", - "contacts_list": "顧客リスト", - "name": "名前", - "mail": "メール|メール", - "statement": "ステートメント", - "display_name": "表示名", - "primary_contact_name": "主な連絡先名", - "contact_name": "連絡先", - "amount_due": "料金", - "email": "Eメール", - "address": "住所", - "phone": "電話", - "website": "ウェブサイト", - "overview": "概要概要", - "enable_portal": "ポータルを有効にする", - "country": "国", - "state": "状態", - "city": "市", - "zip_code": "郵便番号", - "added_on": "追加された", - "action": "アクション", - "password": "パスワード", - "street_number": "街路番号", - "primary_currency": "一次通貨", - "description": "説明", - "add_new_customer": "新規顧客の追加", - "save_customer": "顧客を救う", - "update_customer": "顧客の更新", - "customer": "顧客|お客様", - "new_customer": "新規顧客", - "edit_customer": "顧客の編集", - "basic_info": "基本情報", - "billing_address": "請求先住所", - "shipping_address": "お届け先の住所", - "copy_billing_address": "請求からコピー", - "no_customers": "まだお客様はいません!", - "no_customers_found": "顧客が見つかりません!", - "no_contact": "接触無し", - "no_contact_name": "連絡先名なし", - "list_of_customers": "このセクションには、顧客のリストが含まれます。", - "primary_display_name": "一次表示名", - "select_currency": "通貨を選択", - "select_a_customer": "顧客を選択する", - "type_or_click": "入力またはクリックして選択", - "new_transaction": "新しいトランザクション", - "no_matching_customers": "一致する顧客はありません!", - "phone_number": "電話番号", - "create_date": "日付を作成します", - "confirm_delete": "この顧客および関連するすべての請求書、見積もり、および支払いを回収することはできません。 |これらの顧客および関連するすべての請求書、見積もり、支払いを回収することはできません。", - "created_message": "顧客が正常に作成されました", - "updated_message": "お客様が正常に更新されました", - "deleted_message": "お客様が正常に削除されました|顧客は正常に削除されました" + "title": "Customers", + "prefix": "Prefix", + "add_customer": "Add Customer", + "contacts_list": "Customer List", + "name": "Name", + "mail": "Mail | Mails", + "statement": "Statement", + "display_name": "Display Name", + "primary_contact_name": "Primary Contact Name", + "contact_name": "Contact Name", + "amount_due": "Amount Due", + "email": "Email", + "address": "Address", + "phone": "Phone", + "website": "Website", + "overview": "Overview", + "invoice_prefix": "Invoice Prefix", + "estimate_prefix": "Estimate Prefix", + "payment_prefix": "Payment Prefix", + "enable_portal": "Enable Portal", + "country": "Country", + "state": "State", + "city": "City", + "zip_code": "Zip Code", + "added_on": "Added On", + "action": "Action", + "password": "Password", + "confirm_password": "Confirm Password", + "street_number": "Street Number", + "primary_currency": "Primary Currency", + "description": "Description", + "add_new_customer": "Add New Customer", + "save_customer": "Save Customer", + "update_customer": "Update Customer", + "customer": "Customer | Customers", + "new_customer": "New Customer", + "edit_customer": "Edit Customer", + "basic_info": "Basic Info", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", + "billing_address": "Billing Address", + "shipping_address": "Shipping Address", + "copy_billing_address": "Copy from Billing", + "no_customers": "No customers yet!", + "no_customers_found": "No customers found!", + "no_contact": "No contact", + "no_contact_name": "No contact name", + "list_of_customers": "This section will contain the list of customers.", + "primary_display_name": "Primary Display Name", + "select_currency": "Select currency", + "select_a_customer": "Select a customer", + "type_or_click": "Type or click to select", + "new_transaction": "New Transaction", + "no_matching_customers": "There are no matching customers!", + "phone_number": "Phone Number", + "create_date": "Create Date", + "confirm_delete": "You will not be able to recover this customer and all the related Invoices, Estimates and Payments. | You will not be able to recover these customers and all the related Invoices, Estimates and Payments.", + "created_message": "Customer created successfully", + "updated_message": "Customer updated successfully", + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Customer deleted successfully | Customers deleted successfully", + "edit_currency_not_allowed": "Cannot change currency once transactions created." }, "items": { - "title": "アイテム", - "items_list": "アイテムリスト", - "name": "名前", - "unit": "単位", - "description": "説明", - "added_on": "追加された", - "price": "価格", - "date_of_creation": "作成日", - "not_selected": "アイテムが選択されていません", - "action": "アクション", - "add_item": "アイテムを追加", - "save_item": "アイテムを保存", - "update_item": "アイテムの更新", - "item": "アイテム|アイテム", - "add_new_item": "新しいアイテムを追加する", - "new_item": "新商品", - "edit_item": "アイテムの編集", - "no_items": "まだアイテムはありません!", - "list_of_items": "このセクションには、アイテムのリストが含まれます。", - "select_a_unit": "ユニットを選択", - "taxes": "税金", - "item_attached_message": "すでに使用中のアイテムは削除できません", - "confirm_delete": "このアイテムを回復することはできません|これらのアイテムを回復することはできません", - "created_message": "アイテムが正常に作成されました", - "updated_message": "アイテムが正常に更新されました", - "deleted_message": "アイテムが正常に削除されました|アイテムが正常に削除されました" + "title": "Items", + "items_list": "Items List", + "name": "Name", + "unit": "Unit", + "description": "Description", + "added_on": "Added On", + "price": "Price", + "date_of_creation": "Date Of Creation", + "not_selected": "No item selected", + "action": "Action", + "add_item": "Add Item", + "save_item": "Save Item", + "update_item": "Update Item", + "item": "Item | Items", + "add_new_item": "Add New Item", + "new_item": "New Item", + "edit_item": "Edit Item", + "no_items": "No items yet!", + "list_of_items": "This section will contain the list of items.", + "select_a_unit": "select unit", + "taxes": "Taxes", + "item_attached_message": "Cannot delete an item which is already in use", + "confirm_delete": "You will not be able to recover this Item | You will not be able to recover these Items", + "created_message": "Item created successfully", + "updated_message": "Item updated successfully", + "deleted_message": "Item deleted successfully | Items deleted successfully" }, "estimates": { - "title": "見積り", - "estimate": "見積もり|見積り", - "estimates_list": "見積もりリスト", - "days": "{days}日", - "months": "{months}月", - "years": "{years}年", - "all": "すべて", - "paid": "有料", - "unpaid": "未払い", - "customer": "お客様", - "ref_no": "参照番号", - "number": "数", - "amount_due": "料金", - "partially_paid": "部分的に支払われた", - "total": "合計", - "discount": "ディスカウント", - "sub_total": "小計", - "estimate_number": "見積もり番号", - "ref_number": "参照番号", - "contact": "連絡先", - "add_item": "アイテムを追加する", - "date": "日付", - "due_date": "期日", - "expiry_date": "有効期限", - "status": "状態", - "add_tax": "税金を追加する", - "amount": "量", - "action": "アクション", - "notes": "ノート", - "tax": "税金", - "estimate_template": "テンプレート", - "convert_to_invoice": "請求書に変換", - "mark_as_sent": "送信済みとしてマーク", - "send_estimate": "見積もりを送信", - "resend_estimate": "見積もりを再送", - "record_payment": "支払いの記録", - "add_estimate": "見積もりを追加", - "save_estimate": "見積もりを保存", - "confirm_conversion": "この見積もりは、新しい請求書を作成するために使用されます。", - "conversion_message": "請求書が正常に作成されました", - "confirm_send_estimate": "この見積もりは、電子メールでお客様に送信されます", - "confirm_mark_as_sent": "この見積もりは送信済みとしてマークされます", - "confirm_mark_as_accepted": "この見積もりは承認済みとしてマークされます", - "confirm_mark_as_rejected": "この見積もりは拒否としてマークされます", - "no_matching_estimates": "一致する見積もりはありません!", - "mark_as_sent_successfully": "正常に送信されたとマークされた見積もり", - "send_estimate_successfully": "見積もりは正常に送信されました", + "title": "Estimates", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", + "estimate": "Estimate | Estimates", + "estimates_list": "Estimates List", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "customer": "CUSTOMER", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "estimate_number": "Estimate Number", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "due_date": "Due Date", + "expiry_date": "Expiry Date", + "status": "Status", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "tax": "Tax", + "estimate_template": "Template", + "convert_to_invoice": "Convert to Invoice", + "mark_as_sent": "Mark as Sent", + "send_estimate": "Send Estimate", + "resend_estimate": "Resend Estimate", + "record_payment": "Record Payment", + "add_estimate": "Add Estimate", + "save_estimate": "Save Estimate", + "confirm_conversion": "This estimate will be used to create a new Invoice.", + "conversion_message": "Invoice created successful", + "confirm_send_estimate": "This estimate will be sent via email to the customer", + "confirm_mark_as_sent": "This estimate will be marked as sent", + "confirm_mark_as_accepted": "This estimate will be marked as Accepted", + "confirm_mark_as_rejected": "This estimate will be marked as Rejected", + "no_matching_estimates": "There are no matching estimates!", + "mark_as_sent_successfully": "Estimate marked as sent successfully", + "send_estimate_successfully": "Estimate sent successfully", "errors": { - "required": "フィールドは必須項目です" + "required": "Field is required" }, - "accepted": "承認済み", - "rejected": "拒否されました", - "sent": "送信済み", - "draft": "ドラフト", - "declined": "辞退", - "new_estimate": "新しい見積もり", - "add_new_estimate": "新しい見積もりを追加", - "update_Estimate": "見積もりを更新", - "edit_estimate": "見積もりの編集", - "items": "アイテム", - "Estimate": "見積もり|見積り", - "add_new_tax": "新しい税金を追加する", - "no_estimates": "まだ見積もりはありません!", - "list_of_estimates": "このセクションには、見積もりのリストが含まれます。", - "mark_as_rejected": "拒否済みとしてマーク", - "mark_as_accepted": "承認済みとしてマーク", - "marked_as_accepted_message": "承認済みとしてマークされた見積もり", - "marked_as_rejected_message": "拒否としてマークされた見積もり", - "confirm_delete": "この見積もりを回復することはできません|これらの見積もりを復元することはできません", - "created_message": "見積もりが正常に作成されました", - "updated_message": "見積もりが正常に更新されました", - "deleted_message": "推定は正常に削除されました|推定値は正常に削除されました", - "something_went_wrong": "何かがうまくいかなかった", + "accepted": "Accepted", + "rejected": "Rejected", + "expired": "Expired", + "sent": "Sent", + "draft": "Draft", + "viewed": "Viewed", + "declined": "Declined", + "new_estimate": "New Estimate", + "add_new_estimate": "Add New Estimate", + "update_Estimate": "Update Estimate", + "edit_estimate": "Edit Estimate", + "items": "items", + "Estimate": "Estimate | Estimates", + "add_new_tax": "Add New Tax", + "no_estimates": "No estimates yet!", + "list_of_estimates": "This section will contain the list of estimates.", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "marked_as_accepted_message": "Estimate marked as accepted", + "marked_as_rejected_message": "Estimate marked as rejected", + "confirm_delete": "You will not be able to recover this Estimate | You will not be able to recover these Estimates", + "created_message": "Estimate created successfully", + "updated_message": "Estimate updated successfully", + "deleted_message": "Estimate deleted successfully | Estimates deleted successfully", + "something_went_wrong": "something went wrong", "item": { - "title": "アイテムタイトル", - "description": "説明", - "quantity": "量", - "price": "価格", - "discount": "ディスカウント", - "total": "合計", - "total_discount": "合計割引", - "sub_total": "小計", - "tax": "税金", - "amount": "量", - "select_an_item": "入力またはクリックしてアイテムを選択します", - "type_item_description": "タイプアイテム説明(オプション)" + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" } }, "invoices": { - "title": "請求書", - "invoices_list": "請求書リスト", - "days": "{days}日", - "months": "{months}月", - "years": "{years}年", - "all": "すべて", - "paid": "有料", - "unpaid": "未払い", - "viewed": "閲覧済み", - "overdue": "延滞", - "completed": "完了", - "customer": "お客様", - "paid_status": "有料ステータス", - "ref_no": "参照番号", - "number": "数", - "amount_due": "料金", - "partially_paid": "部分的に支払われた", - "total": "合計", - "discount": "ディスカウント", - "sub_total": "小計", - "invoice": "請求書|請求書", - "invoice_number": "請求書番号", - "ref_number": "参照番号", - "contact": "連絡先", - "add_item": "アイテムを追加する", - "date": "日付", - "due_date": "期日", - "status": "状態", - "add_tax": "税金を追加する", - "amount": "量", - "action": "アクション", - "notes": "ノート", - "view": "見る", - "send_invoice": "請求書を送ります", - "resend_invoice": "請求書を再送する", - "invoice_template": "請求書テンプレート", - "template": "テンプレート", - "mark_as_sent": "送信済みとしてマーク", - "confirm_send_invoice": "この請求書はメールでお客様に送信されます", - "invoice_mark_as_sent": "この請求書は送信済みとしてマークされます", - "confirm_send": "この請求書はメールでお客様に送信されます", - "invoice_date": "請求書の日付", - "record_payment": "支払いの記録", - "add_new_invoice": "新しい請求書を追加する", - "update_expense": "経費の更新", - "edit_invoice": "請求書の編集", - "new_invoice": "新しい請求書", - "save_invoice": "請求書を保存する", - "update_invoice": "請求書を更新する", - "add_new_tax": "新しい税金を追加する", - "no_invoices": "請求書はまだありません!", - "list_of_invoices": "このセクションには、請求書のリストが含まれます。", - "select_invoice": "請求書を選択", - "no_matching_invoices": "一致する請求書はありません!", - "mark_as_sent_successfully": "正常に送信済みとしてマークされた請求書", - "invoice_sent_successfully": "請求書は正常に送信されました", - "cloned_successfully": "請求書のクローンが正常に作成されました", - "clone_invoice": "クローン請求書", - "confirm_clone": "この請求書は新しい請求書に複製されます", + "title": "Invoices", + "download": "Download", + "pay_invoice": "Pay Invoice", + "invoices_list": "Invoices List", + "invoice_information": "Invoice Information", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Viewed", + "overdue": "Overdue", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Invoice | Invoices", + "invoice_number": "Invoice Number", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "due_date": "Due Date", + "status": "Status", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "send_invoice": "Send Invoice", + "resend_invoice": "Resend Invoice", + "invoice_template": "Invoice Template", + "conversion_message": "Invoice cloned successful", + "template": "Select Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This invoice will be marked as sent", + "confirm_mark_as_accepted": "This invoice will be marked as Accepted", + "confirm_mark_as_rejected": "This invoice will be marked as Rejected", + "confirm_send": "This invoice will be sent via email to the customer", + "invoice_date": "Invoice Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Invoice", + "new_invoice": "New Invoice", + "save_invoice": "Save Invoice", + "update_invoice": "Update Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching invoices!", + "mark_as_sent_successfully": "Invoice marked as sent successfully", + "invoice_sent_successfully": "Invoice sent successfully", + "cloned_successfully": "Invoice cloned successfully", + "clone_invoice": "Clone Invoice", + "confirm_clone": "This invoice will be cloned into a new Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "payment_attached_message": "One of the selected invoices already have a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal", + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Invoice created successfully", + "updated_message": "Invoice updated successfully", + "deleted_message": "Invoice deleted successfully | Invoices deleted successfully", + "marked_as_sent_message": "Invoice marked as sent successfully", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Invoice amount cannot be less than total paid amount for this Invoice. Please update the invoice or delete the associated payments to continue." + }, + "recurring_invoices": { + "title": "Recurring Invoices", + "invoices_list": "Recurring Invoices List", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Viewed", + "overdue": "Overdue", + "active": "Active", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", "item": { - "title": "アイテムタイトル", - "description": "説明", - "quantity": "量", - "price": "価格", - "discount": "ディスカウント", - "total": "合計", - "total_discount": "合計割引", - "sub_total": "小計", - "tax": "税金", - "amount": "量", - "select_an_item": "入力またはクリックしてアイテムを選択します", - "type_item_description": "タイプアイテム説明(オプション)" + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" }, - "confirm_delete": "この請求書を回収することはできません|これらの請求書を回収することはできません。", - "created_message": "請求書が正常に作成されました", - "updated_message": "請求書が正常に更新されました", - "deleted_message": "請求書が正常に削除されました|請求書は正常に削除されました", - "marked_as_sent_message": "正常に送信済みとしてマークされた請求書", - "something_went_wrong": "何かがうまくいかなかった", - "invalid_due_amount_message": "請求書の合計金額は、この請求書の支払い総額より少なくすることはできません。続行するには、請求書を更新するか、関連する支払いを削除してください。" + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." }, "payments": { - "title": "支払い", - "payments_list": "支払いリスト", - "record_payment": "支払いの記録", - "customer": "お客様", - "date": "日付", - "amount": "量", - "action": "アクション", - "payment_number": "支払い番号", - "payment_mode": "支払いモード", - "invoice": "請求書", - "note": "注意", - "add_payment": "支払いを追加する", - "new_payment": "新規支払い", - "edit_payment": "支払いの編集", - "view_payment": "支払いを表示", - "add_new_payment": "新しい支払いを追加する", - "send_payment_receipt": "領収書を送る", - "send_payment": "支払いを送る", - "save_payment": "支払いを節約する", - "update_payment": "支払いの更新", - "payment": "支払い|支払い", - "no_payments": "まだ支払いはありません!", - "not_selected": "選択されていない", - "no_invoice": "請求書なし", - "no_matching_payments": "一致する支払いはありません!", - "list_of_payments": "このセクションには、支払いのリストが含まれます。", - "select_payment_mode": "支払いモードを選択します", - "confirm_mark_as_sent": "この見積もりは送信済みとしてマークされます", - "confirm_send_payment": "この支払いは電子メールで顧客に送信されます", - "send_payment_successfully": "支払いが正常に送信されました", - "something_went_wrong": "何かがうまくいかなかった", - "confirm_delete": "この支払いを回収することはできません|これらの支払いを回収することはできません", - "created_message": "支払いが正常に作成されました", - "updated_message": "支払いが正常に更新されました", - "deleted_message": "支払いが正常に削除されました|支払いが正常に削除されました", - "invalid_amount_message": "お支払い金額が無効です" + "title": "Payments", + "payments_list": "Payments List", + "record_payment": "Record Payment", + "customer": "Customer", + "date": "Date", + "amount": "Amount", + "action": "Action", + "payment_number": "Payment Number", + "payment_mode": "Payment Mode", + "invoice": "Invoice", + "note": "Note", + "add_payment": "Add Payment", + "new_payment": "New Payment", + "edit_payment": "Edit Payment", + "view_payment": "View Payment", + "add_new_payment": "Add New Payment", + "send_payment_receipt": "Send Payment Receipt", + "send_payment": "Send Payment", + "save_payment": "Save Payment", + "update_payment": "Update Payment", + "payment": "Payment | Payments", + "no_payments": "No payments yet!", + "not_selected": "Not selected", + "no_invoice": "No invoice", + "no_matching_payments": "There are no matching payments!", + "list_of_payments": "This section will contain the list of payments.", + "select_payment_mode": "Select payment mode", + "confirm_mark_as_sent": "This estimate will be marked as sent", + "confirm_send_payment": "This payment will be sent via email to the customer", + "send_payment_successfully": "Payment sent successfully", + "something_went_wrong": "something went wrong", + "confirm_delete": "You will not be able to recover this Payment | You will not be able to recover these Payments", + "created_message": "Payment created successfully", + "updated_message": "Payment updated successfully", + "deleted_message": "Payment deleted successfully | Payments deleted successfully", + "invalid_amount_message": "Payment amount is invalid" }, "expenses": { - "title": "経費", - "expenses_list": "経費リスト", - "select_a_customer": "顧客を選択する", - "expense_title": "題名", - "customer": "お客様", - "contact": "連絡先", - "category": "カテゴリー", - "from_date": "日付から", - "to_date": "現在まで", - "expense_date": "日付", - "description": "説明", - "receipt": "領収書", - "amount": "量", - "action": "アクション", - "not_selected": "選択されていない", - "note": "注意", - "category_id": "カテゴリID", - "date": "日付", - "add_expense": "経費を追加する", - "add_new_expense": "新しい経費を追加する", - "save_expense": "経費を節約", - "update_expense": "経費の更新", - "download_receipt": "領収書をダウンロード", - "edit_expense": "経費の編集", - "new_expense": "新しい経費", - "expense": "経費|経費", - "no_expenses": "まだ費用はかかりません!", - "list_of_expenses": "このセクションには、経費のリストが含まれます。", - "confirm_delete": "この費用を回収することはできません|これらの費用を回収することはできません。", - "created_message": "経費が正常に作成されました", - "updated_message": "経費が正常に更新されました", - "deleted_message": "経費が正常に削除されました|経費は正常に削除されました", + "title": "Expenses", + "expenses_list": "Expenses List", + "select_a_customer": "Select a customer", + "expense_title": "Title", + "customer": "Customer", + "currency": "Currency", + "contact": "Contact", + "category": "Category", + "from_date": "From Date", + "to_date": "To Date", + "expense_date": "Date", + "description": "Description", + "receipt": "Receipt", + "amount": "Amount", + "action": "Action", + "not_selected": "Not selected", + "note": "Note", + "category_id": "Category Id", + "date": "Date", + "add_expense": "Add Expense", + "add_new_expense": "Add New Expense", + "save_expense": "Save Expense", + "update_expense": "Update Expense", + "download_receipt": "Download Receipt", + "edit_expense": "Edit Expense", + "new_expense": "New Expense", + "expense": "Expense | Expenses", + "no_expenses": "No expenses yet!", + "list_of_expenses": "This section will contain the list of expenses.", + "confirm_delete": "You will not be able to recover this Expense | You will not be able to recover these Expenses", + "created_message": "Expense created successfully", + "updated_message": "Expense updated successfully", + "deleted_message": "Expense deleted successfully | Expenses deleted successfully", "categories": { - "categories_list": "カテゴリリスト", - "title": "題名", - "name": "名前", - "description": "説明", - "amount": "量", - "actions": "行動", - "add_category": "カテゴリを追加", - "new_category": "新たなカテゴリー", - "category": "カテゴリ|カテゴリ", - "select_a_category": "カテゴリーを選ぶ" + "categories_list": "Categories List", + "title": "Title", + "name": "Name", + "description": "Description", + "amount": "Amount", + "actions": "Actions", + "add_category": "Add Category", + "new_category": "New Category", + "category": "Category | Categories", + "select_a_category": "Select a category" } }, "login": { - "email": "Eメール", - "password": "パスワード", - "forgot_password": "パスワードをお忘れですか?", - "or_signIn_with": "またはでサインイン", - "login": "ログイン", - "register": "登録", - "reset_password": "パスワードを再設定する", - "password_reset_successfully": "パスワードが正常にリセットされました", - "enter_email": "メールアドレスを入力して", - "enter_password": "パスワードを入力する", - "retype_password": "パスワードを再入力してください" + "email": "Email", + "password": "Password", + "forgot_password": "Forgot Password?", + "or_signIn_with": "or Sign in with", + "login": "Login", + "register": "Register", + "reset_password": "Reset Password", + "password_reset_successfully": "Password Reset Successfully", + "enter_email": "Enter email", + "enter_password": "Enter Password", + "retype_password": "Retype Password" + }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" }, "users": { - "title": "ユーザー", - "users_list": "ユーザーリスト", - "name": "名前", - "description": "説明", - "added_on": "追加された", - "date_of_creation": "作成日", - "action": "アクション", - "add_user": "ユーザーを追加する", - "save_user": "ユーザーを保存", - "update_user": "ユーザーの更新", - "user": "ユーザー|ユーザー", - "add_new_user": "新しいユーザーを追加", - "new_user": "新しいユーザー", - "edit_user": "ユーザーの編集", - "no_users": "まだユーザーはいません!", - "list_of_users": "このセクションには、ユーザーのリストが含まれます。", - "email": "Eメール", - "phone": "電話", - "password": "パスワード", - "user_attached_message": "すでに使用中のアイテムは削除できません", - "confirm_delete": "このユーザーを回復することはできません|これらのユーザーを回復することはできません", - "created_message": "ユーザーが正常に作成されました", - "updated_message": "ユーザーが正常に更新されました", - "deleted_message": "ユーザーが正常に削除されました|ユーザーが正常に削除されました" + "title": "Users", + "users_list": "Users List", + "name": "Name", + "description": "Description", + "added_on": "Added On", + "date_of_creation": "Date Of Creation", + "action": "Action", + "add_user": "Add User", + "save_user": "Save User", + "update_user": "Update User", + "user": "User | Users", + "add_new_user": "Add New User", + "new_user": "New User", + "edit_user": "Edit User", + "no_users": "No users yet!", + "list_of_users": "This section will contain the list of users.", + "email": "Email", + "phone": "Phone", + "password": "Password", + "user_attached_message": "Cannot delete an item which is already in use", + "confirm_delete": "You will not be able to recover this User | You will not be able to recover these Users", + "created_message": "User created successfully", + "updated_message": "User updated successfully", + "deleted_message": "User deleted successfully | Users deleted successfully", + "select_company_role": "Select Role for {company}", + "companies": "Companies" }, "reports": { - "title": "報告する", - "from_date": "日付から", - "to_date": "現在まで", - "status": "状態", - "paid": "有料", - "unpaid": "未払い", - "download_pdf": "PDFをダウンロード", - "view_pdf": "PDFを見る", - "update_report": "レポートの更新", - "report": "レポート|レポート", + "title": "Report", + "from_date": "From Date", + "to_date": "To Date", + "status": "Status", + "paid": "Paid", + "unpaid": "Unpaid", + "download_pdf": "Download PDF", + "view_pdf": "View PDF", + "update_report": "Update Report", + "report": "Report | Reports", "profit_loss": { - "profit_loss": "利益", - "to_date": "現在まで", - "from_date": "日付から", - "date_range": "日付範囲を選択" + "profit_loss": "Profit & Loss", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" }, "sales": { - "sales": "販売", - "date_range": "日付範囲を選択", - "to_date": "現在まで", - "from_date": "日付から", - "report_type": "レポートタイプ" + "sales": "Sales", + "date_range": "Select Date Range", + "to_date": "To Date", + "from_date": "From Date", + "report_type": "Report Type" }, "taxes": { - "taxes": "税金", - "to_date": "現在まで", - "from_date": "日付から", - "date_range": "日付範囲を選択" + "taxes": "Taxes", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" }, "errors": { - "required": "フィールドは必須項目です" + "required": "Field is required" }, "invoices": { - "invoice": "請求書", - "invoice_date": "請求書の日付", - "due_date": "期日", - "amount": "量", - "contact_name": "連絡先", - "status": "状態" + "invoice": "Invoice", + "invoice_date": "Invoice Date", + "due_date": "Due Date", + "amount": "Amount", + "contact_name": "Contact Name", + "status": "Status" }, "estimates": { - "estimate": "見積もり", - "estimate_date": "見積もり日", - "due_date": "期日", - "estimate_number": "見積もり番号", - "ref_number": "参照番号", - "amount": "量", - "contact_name": "連絡先", - "status": "状態" + "estimate": "Estimate", + "estimate_date": "Estimate Date", + "due_date": "Due Date", + "estimate_number": "Estimate Number", + "ref_number": "Ref Number", + "amount": "Amount", + "contact_name": "Contact Name", + "status": "Status" }, "expenses": { - "expenses": "経費", - "category": "カテゴリー", - "date": "日付", - "amount": "量", - "to_date": "現在まで", - "from_date": "日付から", - "date_range": "日付範囲を選択" + "expenses": "Expenses", + "category": "Category", + "date": "Date", + "amount": "Amount", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" } }, "settings": { "menu_title": { - "account_settings": "アカウント設定", - "company_information": "会社情報", - "customization": "カスタマイズ", - "preferences": "環境設定", - "notifications": "通知", - "tax_types": "税の種類", - "expense_category": "経費カテゴリ", - "update_app": "アプリを更新", - "backup": "バックアップ", - "file_disk": "ファイルディスク", - "custom_fields": "カスタムフィールド", - "payment_modes": "支払いモード", - "notes": "ノート" + "account_settings": "Account Settings", + "company_information": "Company Information", + "customization": "Customization", + "preferences": "Preferences", + "notifications": "Notifications", + "tax_types": "Tax Types", + "expense_category": "Expense Categories", + "update_app": "Update App", + "backup": "Backup", + "file_disk": "File Disk", + "custom_fields": "Custom Fields", + "payment_modes": "Payment Modes", + "notes": "Notes", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." }, - "title": "設定", - "setting": "設定|設定", - "general": "一般", - "language": "言語", - "primary_currency": "一次通貨", - "timezone": "タイムゾーン", - "date_format": "日付形式", + "title": "Settings", + "setting": "Settings | Settings", + "general": "General", + "language": "Language", + "primary_currency": "Primary Currency", + "timezone": "Time Zone", + "date_format": "Date Format", "currencies": { - "title": "通貨", - "currency": "通貨|通貨", - "currencies_list": "通貨リスト", - "select_currency": "通貨を選択", - "name": "名前", - "code": "コード", - "symbol": "シンボル", - "precision": "精度", - "thousand_separator": "サウザンドセパレーター", - "decimal_separator": "小数点記号", - "position": "ポジション", - "position_of_symbol": "シンボルの位置", - "right": "正しい", - "left": "左", - "action": "アクション", - "add_currency": "通貨を追加する" + "title": "Currencies", + "currency": "Currency | Currencies", + "currencies_list": "Currencies List", + "select_currency": "Select Currency", + "name": "Name", + "code": "Code", + "symbol": "Symbol", + "precision": "Precision", + "thousand_separator": "Thousand Separator", + "decimal_separator": "Decimal Separator", + "position": "Position", + "position_of_symbol": "Position Of Symbol", + "right": "Right", + "left": "Left", + "action": "Action", + "add_currency": "Add Currency" }, "mail": { - "host": "メールホスト", - "port": "メールポート", - "driver": "メールドライバー", - "secret": "秘密", - "mailgun_secret": "メールガンシークレット", - "mailgun_domain": "ドメイン", - "mailgun_endpoint": "Mailgunエンドポイント", - "ses_secret": "SESシークレット", - "ses_key": "SESキー", - "password": "メールパスワード", - "username": "メールユーザー名", - "mail_config": "メール設定", - "from_name": "メール名から", - "from_mail": "メールアドレスから", - "encryption": "メールの暗号化", - "mail_config_desc": "以下は、アプリからメールを送信するためのメールドライバーを構成するためのフォームです。 Sendgrid、SESなどのサードパーティプロバイダーを構成することもできます。" + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Mail Password", + "username": "Mail Username", + "mail_config": "Mail Configuration", + "from_name": "From Mail Name", + "from_mail": "From Mail Address", + "encryption": "Mail Encryption", + "mail_config_desc": "Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc." }, "pdf": { - "title": "PDF設定", - "footer_text": "フッターテキスト", - "pdf_layout": "PDFレイアウト" + "title": "PDF Setting", + "footer_text": "Footer Text", + "pdf_layout": "PDF Layout" }, "company_info": { - "company_info": "会社情報", - "company_name": "会社名", - "company_logo": "会社のロゴ", - "section_description": "Craterによって作成された請求書、見積もり、およびその他のドキュメントに表示される会社に関する情報。", - "phone": "電話", - "country": "国", - "state": "状態", - "city": "市", - "address": "住所", - "zip": "ジップ", - "save": "セーブ", - "updated_message": "会社情報が正常に更新されました" + "company_info": "Company info", + "company_name": "Company Name", + "company_logo": "Company Logo", + "section_description": "Information about your company that will be displayed on invoices, estimates and other documents created by Crater.", + "phone": "Phone", + "country": "Country", + "state": "State", + "city": "City", + "address": "Address", + "zip": "Zip", + "save": "Save", + "delete": "Delete", + "updated_message": "Company information updated successfully", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" }, "custom_fields": { - "title": "カスタムフィールド", - "section_description": "請求書、見積もりをカスタマイズする", - "add_custom_field": "カスタムフィールドの追加", - "edit_custom_field": "カスタムフィールドの編集", - "field_name": "フィールド名", - "label": "ラベル", - "type": "タイプ", - "name": "名前", - "required": "必須", - "placeholder": "プレースホルダー", - "help_text": "ヘルプテキスト", - "default_value": "デフォルト値", - "prefix": "プレフィックス", - "starting_number": "開始番号", - "model": "モデル", - "help_text_description": "ユーザーがこのカスタムフィールドの目的を理解できるように、テキストを入力してください。", - "suffix": "サフィックス", - "yes": "はい", - "no": "番号", - "order": "注文", - "custom_field_confirm_delete": "このカスタムフィールドを回復することはできません", - "already_in_use": "カスタムフィールドはすでに使用されています", - "deleted_message": "カスタムフィールドが正常に削除されました", - "options": "オプション", - "add_option": "オプションの追加", - "add_another_option": "別のオプションを追加する", - "sort_in_alphabetical_order": "アルファベット順に並べ替える", - "add_options_in_bulk": "オプションをまとめて追加する", - "use_predefined_options": "事前定義されたオプションを使用する", - "select_custom_date": "カスタム日付を選択", - "select_relative_date": "相対日付を選択", - "ticked_by_default": "デフォルトでチェックされています", - "updated_message": "カスタムフィールドが正常に更新されました", - "added_message": "カスタムフィールドが正常に追加されました" + "title": "Custom Fields", + "section_description": "Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.", + "add_custom_field": "Add Custom Field", + "edit_custom_field": "Edit Custom Field", + "field_name": "Field Name", + "label": "Label", + "type": "Type", + "name": "Name", + "slug": "Slug", + "required": "Required", + "placeholder": "Placeholder", + "help_text": "Help Text", + "default_value": "Default Value", + "prefix": "Prefix", + "starting_number": "Starting Number", + "model": "Model", + "help_text_description": "Enter some text to help users understand the purpose of this custom field.", + "suffix": "Suffix", + "yes": "Yes", + "no": "No", + "order": "Order", + "custom_field_confirm_delete": "You will not be able to recover this Custom Field", + "already_in_use": "Custom Field is already in use", + "deleted_message": "Custom Field deleted successfully", + "options": "options", + "add_option": "Add Options", + "add_another_option": "Add another option", + "sort_in_alphabetical_order": "Sort in Alphabetical Order", + "add_options_in_bulk": "Add options in bulk", + "use_predefined_options": "Use Predefined Options", + "select_custom_date": "Select Custom Date", + "select_relative_date": "Select Relative Date", + "ticked_by_default": "Ticked by default", + "updated_message": "Custom Field updated successfully", + "added_message": "Custom Field added successfully", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." }, "customization": { - "customization": "カスタマイズ", - "save": "セーブ", - "addresses": { - "title": "住所", - "section_description": "顧客の請求先住所と顧客の配送先住所の形式を設定できます(PDFでのみ表示)。", - "customer_billing_address": "顧客の請求先住所", - "customer_shipping_address": "お客様の配送先住所", - "company_address": "会社の住所", - "insert_fields": "フィールドを挿入", - "contact": "連絡先", - "address": "住所", - "display_name": "表示名", - "primary_contact_name": "主な連絡先名", - "email": "Eメール", - "website": "ウェブサイト", - "name": "名前", - "country": "国", - "state": "状態", - "city": "市", - "company_name": "会社名", - "address_street_1": "住所通り1", - "address_street_2": "アドレスストリート2", - "phone": "電話", - "zip_code": "郵便番号", - "address_setting_updated": "アドレス設定が正常に更新されました" - }, - "updated_message": "会社情報が正常に更新されました", + "customization": "customization", + "updated_message": "Company information updated successfully", + "save": "Save", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", "invoices": { - "title": "請求書", - "notes": "ノート", - "invoice_prefix": "請求書プレフィックス", - "default_invoice_email_body": "デフォルトの請求書メール本文", - "invoice_settings": "請求書の設定", - "autogenerate_invoice_number": "請求書番号の自動生成", - "autogenerate_invoice_number_desc": "新しい請求書を作成するたびに請求書番号を自動生成したくない場合は、これを無効にします。", - "invoice_email_attachment": "請求書を添付ファイルとして送信する", - "invoice_email_attachment_setting_description": "請求書を電子メールの添付ファイルとして送信する場合は、これを有効にします。メールの[請求書の表示]ボタンを有効にすると、表示されなくなることに注意してください。", - "enter_invoice_prefix": "請求書のプレフィックスを入力してください", - "terms_and_conditions": "規約と条件", - "company_address_format": "会社の住所形式", - "shipping_address_format": "配送先住所の形式", - "billing_address_format": "請求先住所の形式", - "invoice_settings_updated": "請求書設定が正常に更新されました" + "title": "Invoices", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", + "default_invoice_email_body": "Default Invoice Email Body", + "company_address_format": "Company Address Format", + "shipping_address_format": "Shipping Address Format", + "billing_address_format": "Billing Address Format", + "invoice_email_attachment": "Send invoices as attachments", + "invoice_email_attachment_setting_description": "Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." }, "estimates": { - "title": "見積り", - "estimate_prefix": "プレフィックスの見積もり", - "default_estimate_email_body": "デフォルトの見積もりメール本文", - "estimate_settings": "見積もりの設定", - "autogenerate_estimate_number": "見積もり番号の自動生成", - "estimate_setting_description": "新しい見積もりを作成するたびに見積もり番号を自動生成したくない場合は、これを無効にします。", - "estimate_email_attachment": "見積もりを添付ファイルとして送信する", - "estimate_email_attachment_setting_description": "見積もりを電子メールの添付ファイルとして送信する場合は、これを有効にします。有効にすると、メールの[見積もりを表示]ボタンが表示されなくなることに注意してください。", - "enter_estimate_prefix": "推定プレフィックスを入力します", - "estimate_setting_updated": "見積もり設定が正常に更新されました", - "company_address_format": "会社の住所形式", - "billing_address_format": "請求先住所の形式", - "shipping_address_format": "配送先住所の形式" + "title": "Estimates", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", + "default_estimate_email_body": "Default Estimate Email Body", + "company_address_format": "Company Address Format", + "shipping_address_format": "Shipping Address Format", + "billing_address_format": "Billing Address Format", + "estimate_email_attachment": "Send estimates as attachments", + "estimate_email_attachment_setting_description": "Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" }, "payments": { - "title": "支払い", - "description": "支払いの取引モード", - "payment_prefix": "支払いプレフィックス", - "default_payment_email_body": "デフォルトの支払いメール本文", - "payment_settings": "支払い設定", - "autogenerate_payment_number": "支払い番号の自動生成", - "payment_setting_description": "新しい支払いを作成するたびに支払い番号を自動生成したくない場合は、これを無効にします。", - "payment_email_attachment": "添付ファイルとして支払いを送信する", - "payment_email_attachment_setting_description": "領収書をメールの添付ファイルとして送信する場合は、これを有効にします。有効にすると、メールの[支払いの表示]ボタンが表示されなくなることに注意してください。", - "enter_payment_prefix": "支払いプレフィックスを入力してください", - "payment_setting_updated": "支払い設定が正常に更新されました", - "payment_modes": "支払いモード", - "add_payment_mode": "支払いモードの追加", - "edit_payment_mode": "支払いモードの編集", - "mode_name": "モード名", - "payment_mode_added": "支払いモードが追加されました", - "payment_mode_updated": "支払いモードが更新されました", - "payment_mode_confirm_delete": "この支払いモードを回復することはできません", - "already_in_use": "支払いモードはすでに使用されています", - "deleted_message": "支払いモードが正常に削除されました", - "company_address_format": "会社の住所形式", - "from_customer_address_format": "顧客の住所形式から" + "title": "Payments", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", + "default_payment_email_body": "Default Payment Email Body", + "company_address_format": "Company Address Format", + "from_customer_address_format": "From Customer Address Format", + "payment_email_attachment": "Send payments as attachments", + "payment_email_attachment_setting_description": "Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.", + "payment_settings_updated": "Payment Settings updated successfully" }, "items": { - "title": "アイテム", - "units": "単位", - "add_item_unit": "アイテムユニットを追加", - "edit_item_unit": "アイテムユニットの編集", - "unit_name": "ユニット名", - "item_unit_added": "アイテムユニットが追加されました", - "item_unit_updated": "アイテムユニットが更新されました", - "item_unit_confirm_delete": "このアイテムユニットを回復することはできません", - "already_in_use": "アイテムユニットはすでに使用されています", - "deleted_message": "アイテムユニットが正常に削除されました" + "title": "Items", + "units": "Units", + "add_item_unit": "Add Item Unit", + "edit_item_unit": "Edit Item Unit", + "unit_name": "Unit Name", + "item_unit_added": "Item Unit Added", + "item_unit_updated": "Item Unit Updated", + "item_unit_confirm_delete": "You will not be able to recover this Item unit", + "already_in_use": "Item Unit is already in use", + "deleted_message": "Item Unit deleted successfully" }, "notes": { - "title": "ノート", - "description": "メモを作成して請求書や見積もりに再利用することで時間を節約できます", - "notes": "ノート", - "type": "タイプ", - "add_note": "メモを追加", - "add_new_note": "新しいメモを追加", - "name": "名前", - "edit_note": "メモを編集", - "note_added": "メモが正常に追加されました", - "note_updated": "注正常に更新されました", - "note_confirm_delete": "このメモを復元することはできません", - "already_in_use": "ノートはすでに使用されています", - "deleted_message": "メモが正常に削除されました" + "title": "Notes", + "description": "Save time by creating notes and reusing them on your invoices, estimates & payments.", + "notes": "Notes", + "type": "Type", + "add_note": "Add Note", + "add_new_note": "Add New Note", + "name": "Name", + "edit_note": "Edit Note", + "note_added": "Note added successfully", + "note_updated": "Note Updated successfully", + "note_confirm_delete": "You will not be able to recover this Note", + "already_in_use": "Note is already in use", + "deleted_message": "Note deleted successfully" } }, "account_settings": { - "profile_picture": "プロフィールの写真", - "name": "名前", - "email": "Eメール", - "password": "パスワード", - "confirm_password": "パスワードを認証する", - "account_settings": "アカウント設定", - "save": "セーブ", - "section_description": "あなたはあなたの名前、電子メールを更新することができます", - "updated_message": "アカウント設定が正常に更新されました" + "profile_picture": "Profile Picture", + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password", + "account_settings": "Account Settings", + "save": "Save", + "section_description": "You can update your name, email & password using the form below.", + "updated_message": "Account Settings updated successfully" }, "user_profile": { - "name": "名前", - "email": "Eメール", - "password": "パスワード", - "confirm_password": "パスワードを認証する" + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password" }, "notification": { - "title": "通知", - "email": "に通知を送信する", - "description": "何かが変わったときにどのメール通知を受け取りたいですか?", - "invoice_viewed": "請求書を表示", - "invoice_viewed_desc": "顧客がクレーターダッシュボードを介して送信された請求書を表示したとき。", - "estimate_viewed": "閲覧した見積もり", - "estimate_viewed_desc": "顧客がクレーターダッシュボードを介して送信された見積もりを表示したとき。", - "save": "セーブ", - "email_save_message": "メールが正常に保存されました", - "please_enter_email": "メールアドレスを入力してください" + "title": "Notifications", + "email": "Send Notifications to", + "description": "Which email notifications would you like to receive when something changes?", + "invoice_viewed": "Invoice viewed", + "invoice_viewed_desc": "When your customer views the invoice sent via crater dashboard.", + "estimate_viewed": "Estimate viewed", + "estimate_viewed_desc": "When your customer views the estimate sent via crater dashboard.", + "save": "Save", + "email_save_message": "Email saved successfully", + "please_enter_email": "Please Enter Email" + }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." }, "tax_types": { - "title": "税の種類", - "add_tax": "税金を追加する", - "edit_tax": "税金の編集", - "description": "必要に応じて税金を追加または削除できます。クレーターは、請求書だけでなく、個々のアイテムに対する税金もサポートしています。", - "add_new_tax": "新しい税金を追加する", - "tax_settings": "税設定", - "tax_per_item": "アイテムごとの税金", - "tax_name": "税名", - "compound_tax": "複合税", - "percent": "パーセント", - "action": "アクション", - "tax_setting_description": "個々の請求書アイテムに税金を追加する場合は、これを有効にします。デフォルトでは、税金は請求書に直接追加されます。", - "created_message": "税タイプが正常に作成されました", - "updated_message": "税タイプが正常に更新されました", - "deleted_message": "税タイプが正常に削除されました", - "confirm_delete": "この税タイプを回復することはできません", - "already_in_use": "税金はすでに使用されています" + "title": "Tax Types", + "add_tax": "Add Tax", + "edit_tax": "Edit Tax", + "description": "You can add or Remove Taxes as you please. Crater supports Taxes on Individual Items as well as on the invoice.", + "add_new_tax": "Add New Tax", + "tax_settings": "Tax Settings", + "tax_per_item": "Tax Per Item", + "tax_name": "Tax Name", + "compound_tax": "Compound Tax", + "percent": "Percent", + "action": "Action", + "tax_setting_description": "Enable this if you want to add taxes to individual invoice items. By default, taxes are added directly to the invoice.", + "created_message": "Tax type created successfully", + "updated_message": "Tax type updated successfully", + "deleted_message": "Tax type deleted successfully", + "confirm_delete": "You will not be able to recover this Tax Type", + "already_in_use": "Tax is already in use" + }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" }, "expense_category": { - "title": "経費カテゴリ", - "action": "アクション", - "description": "経費エントリを追加するには、カテゴリが必要です。好みに応じて、これらのカテゴリを追加または削除できます。", - "add_new_category": "新しいカテゴリを追加", - "add_category": "カテゴリを追加", - "edit_category": "カテゴリの編集", - "category_name": "種別名", - "category_description": "説明", - "created_message": "経費カテゴリが正常に作成されました", - "deleted_message": "経費カテゴリが正常に削除されました", - "updated_message": "経費カテゴリが正常に更新されました", - "confirm_delete": "この経費カテゴリを回復することはできません", - "already_in_use": "カテゴリはすでに使用されています" + "title": "Expense Categories", + "action": "Action", + "description": "Categories are required for adding expense entries. You can Add or Remove these categories according to your preference.", + "add_new_category": "Add New Category", + "add_category": "Add Category", + "edit_category": "Edit Category", + "category_name": "Category Name", + "category_description": "Description", + "created_message": "Expense Category created successfully", + "deleted_message": "Expense category deleted successfully", + "updated_message": "Expense category updated successfully", + "confirm_delete": "You will not be able to recover this Expense Category", + "already_in_use": "Category is already in use" }, "preferences": { - "currency": "通貨", - "default_language": "既定の言語", - "time_zone": "タイムゾーン", - "fiscal_year": "会計年度", - "date_format": "日付形式", - "discount_setting": "割引設定", - "discount_per_item": "アイテムごとの割引", - "discount_setting_description": "個々の請求書アイテムに割引を追加する場合は、これを有効にします。デフォルトでは、割引は請求書に直接追加されます。", - "save": "セーブ", - "preference": "好み|環境設定", - "general_settings": "システムのデフォルト設定。", - "updated_message": "プリファレンスが正常に更新されました", - "select_language": "言語を選択する", - "select_time_zone": "タイムゾーンを選択", - "select_date_format": "日付形式の選択", - "select_financial_year": "会計年度を選択" + "currency": "Currency", + "default_language": "Default Language", + "time_zone": "Time Zone", + "fiscal_year": "Financial Year", + "date_format": "Date Format", + "discount_setting": "Discount Setting", + "discount_per_item": "Discount Per Item ", + "discount_setting_description": "Enable this if you want to add Discount to individual invoice items. By default, Discount is added directly to the invoice.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", + "save": "Save", + "preference": "Preference | Preferences", + "general_settings": "Default preferences for the system.", + "updated_message": "Preferences updated successfully", + "select_language": "Select Language", + "select_time_zone": "Select Time Zone", + "select_date_format": "Select Date Format", + "select_financial_year": "Select Financial Year", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" }, "update_app": { - "title": "アプリを更新", - "description": "下のボタンをクリックして新しい更新を確認することで、クレーターを簡単に更新できます。", - "check_update": "アップデートを確認する", - "avail_update": "新しいアップデートが利用可能", - "next_version": "次のバージョン", - "requirements": "要件", - "update": "今すぐアップデート", - "update_progress": "更新中...", - "progress_text": "ほんの数分かかります。更新が完了する前に、画面を更新したり、ウィンドウを閉じたりしないでください。", - "update_success": "アプリが更新されました!ブラウザウィンドウが自動的に再読み込みされるまでお待ちください。", - "latest_message": "利用可能なアップデートはありません!あなたは最新バージョンを使用しています。", - "current_version": "現行版", - "download_zip_file": "ZIPファイルをダウンロードする", - "unzipping_package": "パッケージの解凍", - "copying_files": "ファイルのコピー", - "deleting_files": "未使用ファイルの削除", - "running_migrations": "移行の実行", - "finishing_update": "更新の終了", - "update_failed": "アップデートに失敗しました", - "update_failed_text": "ごめんなさい!更新が失敗しました:{step} step" + "title": "Update App", + "description": "You can easily update Crater by checking for a new update by clicking the button below", + "check_update": "Check for updates", + "avail_update": "New Update available", + "next_version": "Next version", + "requirements": "Requirements", + "update": "Update Now", + "update_progress": "Update in progress...", + "progress_text": "It will just take a few minutes. Please do not refresh the screen or close the window before the update finishes", + "update_success": "App has been updated! Please wait while your browser window gets reloaded automatically.", + "latest_message": "No update available! You are on the latest version.", + "current_version": "Current Version", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "running_migrations": "Running Migrations", + "finishing_update": "Finishing Update", + "update_failed": "Update Failed", + "update_failed_text": "Sorry! Your update failed on : {step} step", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." }, "backup": { - "title": "バックアップ|バックアップ", - "description": "バックアップは、データベースのダンプとともに、指定したディレクトリ内のすべてのファイルを含むzipファイルです。", - "new_backup": "新しいバックアップを追加する", - "create_backup": "バックアップを作成する", - "select_backup_type": "バックアップタイプを選択します", - "backup_confirm_delete": "このバックアップを回復することはできません", - "path": "道", - "new_disk": "新しいディスク", - "created_at": "で作成された", - "size": "サイズ", - "dropbox": "ドロップボックス", - "local": "地元", - "healthy": "元気", - "amount_of_backups": "バックアップの量", - "newest_backups": "最新のバックアップ", - "used_storage": "使用済みストレージ", - "select_disk": "ディスクを選択", - "action": "アクション", - "deleted_message": "バックアップが正常に削除されました", - "created_message": "バックアップが正常に作成されました", - "invalid_disk_credentials": "選択したディスクの資格情報が無効です" + "title": "Backup | Backups", + "description": "The backup is a zipfile that contains all files in the directories you specify along with a dump of your database", + "new_backup": "Add New Backup", + "create_backup": "Create Backup", + "select_backup_type": "Select Backup Type", + "backup_confirm_delete": "You will not be able to recover this Backup", + "path": "path", + "new_disk": "New Disk", + "created_at": "created at", + "size": "size", + "dropbox": "dropbox", + "local": "local", + "healthy": "healthy", + "amount_of_backups": "amount of backups", + "newest_backups": "newest backups", + "used_storage": "used storage", + "select_disk": "Select Disk", + "action": "Action", + "deleted_message": "Backup deleted successfully", + "created_message": "Backup created successfully", + "invalid_disk_credentials": "Invalid credential of selected disk" }, "disk": { - "title": "ファイルディスク|ファイルディスク", - "description": "デフォルトでは、Craterはバックアップ、アバター、その他の画像ファイルを保存するためにローカルディスクを使用します。好みに応じて、DigitalOcean、S3、Dropboxなどの複数のディスクドライバーを構成できます。", - "created_at": "で作成された", - "dropbox": "ドロップボックス", - "name": "名前", - "driver": "運転者", - "disk_type": "タイプ", - "disk_name": "ディスク名", - "new_disk": "新しいディスクを追加する", - "filesystem_driver": "ファイルシステムドライバー", - "local_driver": "ローカルドライバー", - "local_root": "ローカルルート", - "public_driver": "パブリックドライバー", - "public_root": "パブリックルート", - "public_url": "パブリックURL", - "public_visibility": "パブリックビジビリティ", - "media_driver": "メディアドライバー", - "media_root": "メディアルート", - "aws_driver": "AWSドライバー", - "aws_key": "AWSキー", - "aws_secret": "AWSシークレット", - "aws_region": "AWSリージョン", - "aws_bucket": "AWSバケット", - "aws_root": "AWSルート", - "do_spaces_type": "スペースタイプを実行します", - "do_spaces_key": "スペースキーを実行します", - "do_spaces_secret": "スペースシークレットを行う", + "title": "File Disk | File Disks", + "description": "By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.", + "created_at": "created at", + "dropbox": "dropbox", + "name": "Name", + "driver": "Driver", + "disk_type": "Type", + "disk_name": "Disk Name", + "new_disk": "Add New Disk", + "filesystem_driver": "Filesystem Driver", + "local_driver": "local Driver", + "local_root": "local Root", + "public_driver": "Public Driver", + "public_root": "Public Root", + "public_url": "Public URL", + "public_visibility": "Public Visibility", + "media_driver": "Media Driver", + "media_root": "Media Root", + "aws_driver": "AWS Driver", + "aws_key": "AWS Key", + "aws_secret": "AWS Secret", + "aws_region": "AWS Region", + "aws_bucket": "AWS Bucket", + "aws_root": "AWS Root", + "do_spaces_type": "Do Spaces type", + "do_spaces_key": "Do Spaces key", + "do_spaces_secret": "Do Spaces Secret", "do_spaces_region": "Do Spaces Region", - "do_spaces_bucket": "スペースバケットを行う", - "do_spaces_endpoint": "スペースエンドポイントを実行", - "do_spaces_root": "スペースルートを実行します", - "dropbox_type": "Dropboxタイプ", - "dropbox_token": "Dropboxトークン", - "dropbox_key": "Dropboxキー", - "dropbox_secret": "Dropboxシークレット", - "dropbox_app": "Dropboxアプリ", - "dropbox_root": "Dropboxルート", - "default_driver": "デフォルトのドライバー", - "is_default": "デフォルトです", - "set_default_disk": "デフォルトディスクの設定", - "set_default_disk_confirm": "このディスクはデフォルトとして設定され、すべての新しいPDFがこのディスクに保存されます", - "success_set_default_disk": "ディスクがデフォルトとして正常に設定されました", - "save_pdf_to_disk": "PDFをディスクに保存", - "disk_setting_description": "各請求書のコピーを保存する場合は、これを有効にします。見積もり", - "select_disk": "ディスクを選択", - "disk_settings": "ディスク設定", - "confirm_delete": "既存のファイル", - "action": "アクション", - "edit_file_disk": "ファイルディスクの編集", - "success_create": "ディスクが正常に追加されました", - "success_update": "ディスクが正常に更新されました", - "error": "ディスクの追加に失敗しました", - "deleted_message": "ファイルディスクが正常に削除されました", - "disk_variables_save_successfully": "ディスクが正常に構成されました", - "disk_variables_save_error": "ディスク構成に失敗しました。", - "invalid_disk_credentials": "選択したディスクの資格情報が無効です" + "do_spaces_bucket": "Do Spaces Bucket", + "do_spaces_endpoint": "Do Spaces Endpoint", + "do_spaces_root": "Do Spaces Root", + "dropbox_type": "Dropbox Type", + "dropbox_token": "Dropbox Token", + "dropbox_key": "Dropbox Key", + "dropbox_secret": "Dropbox Secret", + "dropbox_app": "Dropbox App", + "dropbox_root": "Dropbox Root", + "default_driver": "Default Driver", + "is_default": "IS DEFAULT", + "set_default_disk": "Set Default Disk", + "set_default_disk_confirm": "This disk will be set as default and all the new PDFs will be saved on this disk", + "success_set_default_disk": "Disk set as default successfully", + "save_pdf_to_disk": "Save PDFs to Disk", + "disk_setting_description": " Enable this, if you wish to save a copy of each Invoice, Estimate & Payment Receipt PDF on your default disk automatically. Turning this option will decrease the load-time when viewing the PDFs.", + "select_disk": "Select Disk", + "disk_settings": "Disk Settings", + "confirm_delete": "Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater", + "action": "Action", + "edit_file_disk": "Edit File Disk", + "success_create": "Disk added successfully", + "success_update": "Disk updated successfully", + "error": "Disk addition failed", + "deleted_message": "File Disk deleted successfully", + "disk_variables_save_successfully": "Disk Configured Successfully", + "disk_variables_save_error": "Disk configuration failed.", + "invalid_disk_credentials": "Invalid credential of selected disk" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { - "account_info": "口座情報", - "account_info_desc": "以下の詳細は、メインの管理者アカウントを作成するために使用されます。また、ログイン後はいつでも詳細を変更できます。", - "name": "名前", - "email": "Eメール", - "password": "パスワード", - "confirm_password": "パスワードを認証する", - "save_cont": "セーブ", - "company_info": "会社情報", - "company_info_desc": "この情報は請求書に表示されます。これは後で設定ページで編集できることに注意してください。", - "company_name": "会社名", - "company_logo": "会社のロゴ", - "logo_preview": "ロゴプレビュー", - "preferences": "環境設定", - "preferences_desc": "システムのデフォルト設定。", - "country": "国", - "state": "状態", - "city": "市", - "address": "住所", - "street": "Street1 | 2丁目", - "phone": "電話", - "zip_code": "郵便番号", - "go_back": "戻る", - "currency": "通貨", - "language": "言語", - "time_zone": "タイムゾーン", - "fiscal_year": "会計年度", - "date_format": "日付形式", - "from_address": "差出人住所", - "username": "ユーザー名", - "next": "次", - "continue": "継続する", - "skip": "スキップ", + "account_info": "Account Information", + "account_info_desc": "Below details will be used to create the main Administrator account. Also you can change the details anytime after logging in.", + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password", + "save_cont": "Save & Continue", + "company_info": "Company Information", + "company_info_desc": "This information will be displayed on invoices. Note that you can edit this later on settings page.", + "company_name": "Company Name", + "company_logo": "Company Logo", + "logo_preview": "Logo Preview", + "preferences": "Company Preferences", + "preferences_desc": "Specify the default preferences for this company.", + "currency_set_alert": "The company's currency cannot be changed later.", + "country": "Country", + "state": "State", + "city": "City", + "address": "Address", + "street": "Street1 | Street2", + "phone": "Phone", + "zip_code": "Zip Code", + "go_back": "Go Back", + "currency": "Currency", + "language": "Language", + "time_zone": "Time Zone", + "fiscal_year": "Financial Year", + "date_format": "Date Format", + "from_address": "From Address", + "username": "Username", + "next": "Next", + "continue": "Continue", + "skip": "Skip", "database": { - "database": "サイトのURL", - "connection": "データベース接続", - "host": "データベースホスト", - "port": "データベースポート", - "password": "データベースパスワード", - "app_url": "アプリのURL", - "app_domain": "アプリドメイン", - "username": "データベースユーザー名", - "db_name": "データベース名", - "db_path": "データベースパス", - "desc": "サーバー上にデータベースを作成し、以下のフォームを使用して資格情報を設定します。" + "database": "Site URL & Database", + "connection": "Database Connection", + "host": "Database Host", + "port": "Database Port", + "password": "Database Password", + "app_url": "App URL", + "app_domain": "App Domain", + "username": "Database Username", + "db_name": "Database Name", + "db_path": "Database Path", + "desc": "Create a database on your server and set the credentials using the form below." }, "permissions": { - "permissions": "権限", - "permission_confirm_title": "続行してもよろしいですか?", - "permission_confirm_desc": "フォルダのアクセス許可の確認に失敗しました", - "permission_desc": "以下は、アプリが機能するために必要なフォルダーのアクセス許可のリストです。権限チェックに失敗した場合は、必ずフォルダの権限を更新してください。" + "permissions": "Permissions", + "permission_confirm_title": "Are you sure you want to continue?", + "permission_confirm_desc": "Folder permission check failed", + "permission_desc": "Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions." + }, + "verify_domain": { + "title": "Domain Verification", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Verify Now", + "success": "Domain Verify Successfully.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verify And Continue" }, "mail": { - "host": "メールホスト", - "port": "メールポート", - "driver": "メールドライバー", - "secret": "秘密", - "mailgun_secret": "メールガンシークレット", - "mailgun_domain": "ドメイン", - "mailgun_endpoint": "Mailgunエンドポイント", - "ses_secret": "SESシークレット", - "ses_key": "SESキー", - "password": "メールパスワード", - "username": "メールユーザー名", - "mail_config": "メール設定", - "from_name": "メール名から", - "from_mail": "メールアドレスから", - "encryption": "メールの暗号化", - "mail_config_desc": "以下は、アプリからメールを送信するためのメールドライバーを構成するためのフォームです。 Sendgrid、SESなどのサードパーティプロバイダーを構成することもできます。" + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Mail Password", + "username": "Mail Username", + "mail_config": "Mail Configuration", + "from_name": "From Mail Name", + "from_mail": "From Mail Address", + "encryption": "Mail Encryption", + "mail_config_desc": "Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc." }, "req": { - "system_req": "システム要求", - "php_req_version": "PHP(バージョン{version}が必要)", - "check_req": "要件を確認する", - "system_req_desc": "クレーターにはいくつかのサーバー要件があります。サーバーに必要なphpバージョンと以下に記載されているすべての拡張機能があることを確認してください。" + "system_req": "System Requirements", + "php_req_version": "Php (version {version} required)", + "check_req": "Check Requirements", + "system_req_desc": "Crater has a few server requirements. Make sure that your server has the required php version and all the extensions mentioned below." }, "errors": { - "migrate_failed": "移行に失敗しました", - "database_variables_save_error": "構成を.envファイルに書き込めません。ファイルのアクセス許可を確認してください", - "mail_variables_save_error": "電子メールの構成に失敗しました。", - "connection_failed": "データベース接続に失敗しました", - "database_should_be_empty": "データベースは空である必要があります" + "migrate_failed": "Migrate Failed", + "database_variables_save_error": "Cannot write configuration to .env file. Please check its file permissions", + "mail_variables_save_error": "Email configuration failed.", + "connection_failed": "Database connection failed", + "database_should_be_empty": "Database should be empty" }, "success": { - "mail_variables_save_successfully": "電子メールが正常に構成されました", - "database_variables_save_successfully": "データベースが正常に構成されました。" + "mail_variables_save_successfully": "Email configured successfully", + "database_variables_save_successfully": "Database configured successfully." } }, "validation": { - "invalid_phone": "無効な電話番号", - "invalid_url": "無効なURL(例:http://www.craterapp.com)", - "invalid_domain_url": "無効なURL(例:craterapp.com)", - "required": "フィールドは必須項目です", - "email_incorrect": "誤ったメール。", - "email_already_taken": "メールはすでに取られています。", - "email_does_not_exist": "指定されたメールアドレスを持つユーザーは存在しません", - "item_unit_already_taken": "このアイテムのユニット名はすでに使用されています", - "payment_mode_already_taken": "この支払いモード名はすでに使用されています", - "send_reset_link": "リセットリンクを送信する", - "not_yet": "未だに?もう一度送信してください", - "password_min_length": "パスワードには{count}文字を含める必要があります", - "name_min_length": "名前には少なくとも{count}文字が必要です。", - "enter_valid_tax_rate": "有効な税率を入力してください", - "numbers_only": "数字のみ。", - "characters_only": "文字のみ。", - "password_incorrect": "パスワードは同一である必要があります", - "password_length": "パスワードは{count}文字の長さである必要があります。", - "qty_must_greater_than_zero": "数量はゼロより大きくなければなりません。", - "price_greater_than_zero": "価格はゼロより大きくなければなりません。", - "payment_greater_than_zero": "支払いはゼロより大きくなければなりません。", - "payment_greater_than_due_amount": "入力された支払いは、この請求書の支払額を超えています。", - "quantity_maxlength": "数量は20桁を超えてはなりません。", - "price_maxlength": "価格は20桁を超えてはなりません。", - "price_minvalue": "価格は0より大きくする必要があります。", - "amount_maxlength": "金額は20桁を超えてはなりません。", - "amount_minvalue": "金額は0より大きくする必要があります。", - "description_maxlength": "説明は65,000文字を超えてはなりません。", - "subject_maxlength": "件名は100文字を超えてはなりません。", - "message_maxlength": "メッセージは255文字を超えてはなりません。", - "maximum_options_error": "選択された{max}オプションの最大数。まず、選択したオプションを削除して、別のオプションを選択します。", - "notes_maxlength": "メモは65,000文字を超えてはなりません。", - "address_maxlength": "アドレスは255文字を超えてはなりません。", - "ref_number_maxlength": "参照番号は255文字を超えてはなりません。", - "prefix_maxlength": "プレフィックスは5文字を超えてはなりません。", - "something_went_wrong": "何かがうまくいかなかった" + "invalid_phone": "Invalid Phone Number", + "invalid_url": "Invalid url (ex: http://www.craterapp.com)", + "invalid_domain_url": "Invalid url (ex: craterapp.com)", + "required": "Field is required", + "email_incorrect": "Incorrect Email.", + "email_already_taken": "The email has already been taken.", + "email_does_not_exist": "User with given email doesn't exist", + "item_unit_already_taken": "This item unit name has already been taken", + "payment_mode_already_taken": "This payment mode name has already been taken", + "send_reset_link": "Send Reset Link", + "not_yet": "Not yet? Send it again", + "password_min_length": "Password must contain {count} characters", + "name_min_length": "Name must have at least {count} letters.", + "prefix_min_length": "Prefix must have at least {count} letters.", + "enter_valid_tax_rate": "Enter valid tax rate", + "numbers_only": "Numbers Only.", + "characters_only": "Characters Only.", + "password_incorrect": "Passwords must be identical", + "password_length": "Password must be {count} character long.", + "qty_must_greater_than_zero": "Quantity must be greater than zero.", + "price_greater_than_zero": "Price must be greater than zero.", + "payment_greater_than_zero": "Payment must be greater than zero.", + "payment_greater_than_due_amount": "Entered Payment is more than due amount of this invoice.", + "quantity_maxlength": "Quantity should not be greater than 20 digits.", + "price_maxlength": "Price should not be greater than 20 digits.", + "price_minvalue": "Price should be greater than 0.", + "amount_maxlength": "Amount should not be greater than 20 digits.", + "amount_minvalue": "Amount should be greater than 0.", + "discount_maxlength": "Discount should not be greater than max discount", + "description_maxlength": "Description should not be greater than 255 characters.", + "subject_maxlength": "Subject should not be greater than 100 characters.", + "message_maxlength": "Message should not be greater than 255 characters.", + "maximum_options_error": "Maximum of {max} options selected. First remove a selected option to select another.", + "notes_maxlength": "Notes should not be greater than 65,000 characters.", + "address_maxlength": "Address should not be greater than 255 characters.", + "ref_number_maxlength": "Ref Number should not be greater than 255 characters.", + "prefix_maxlength": "Prefix should not be greater than 5 characters.", + "something_went_wrong": "something went wrong", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, - "pdf_estimate_label": "見積もり", - "pdf_estimate_number": "見積もり番号", - "pdf_estimate_date": "見積もり日", - "pdf_estimate_expire_date": "有効期限", - "pdf_invoice_label": "請求書", - "pdf_invoice_number": "請求書番号", - "pdf_invoice_date": "請求書の日付", - "pdf_invoice_due_date": "期日", - "pdf_notes": "ノート", - "pdf_items_label": "アイテム", - "pdf_quantity_label": "量", - "pdf_price_label": "価格", - "pdf_discount_label": "ディスカウント", - "pdf_amount_label": "量", - "pdf_subtotal": "小計", - "pdf_total": "合計", - "pdf_payment_label": "支払い", - "pdf_payment_receipt_label": "お支払いの領収書", - "pdf_payment_date": "支払期日", - "pdf_payment_number": "支払い番号", - "pdf_payment_mode": "支払いモード", - "pdf_payment_amount_received_label": "もらった分量", - "pdf_expense_report_label": "経費報告書", - "pdf_total_expenses_label": "総経費", - "pdf_profit_loss_label": "利益", - "pdf_sales_customers_label": "セールスカスタマーレポート", - "pdf_sales_items_label": "販売アイテムレポート", - "pdf_tax_summery_label": "税概要レポート", - "pdf_income_label": "所得", - "pdf_net_profit_label": "純利益", - "pdf_customer_sales_report": "販売レポート:顧客別", - "pdf_total_sales_label": "総売上高", - "pdf_item_sales_label": "販売レポート:アイテム別", - "pdf_tax_report_label": "税レポート", - "pdf_total_tax_label": "総税", - "pdf_tax_types_label": "税の種類", - "pdf_expenses_label": "経費", - "pdf_bill_to": "請求書送付先、", - "pdf_ship_to": "送り先、", - "pdf_received_from": "から受け取りました:", - "pdf_tax_label": "税" + "pdf_estimate_label": "Estimate", + "pdf_estimate_number": "Estimate Number", + "pdf_estimate_date": "Estimate Date", + "pdf_estimate_expire_date": "Expiry date", + "pdf_invoice_label": "Invoice", + "pdf_invoice_number": "Invoice Number", + "pdf_invoice_date": "Invoice Date", + "pdf_invoice_due_date": "Due date", + "pdf_notes": "Notes", + "pdf_items_label": "Items", + "pdf_quantity_label": "Quantity", + "pdf_price_label": "Price", + "pdf_discount_label": "Discount", + "pdf_amount_label": "Amount", + "pdf_subtotal": "Subtotal", + "pdf_total": "Total", + "pdf_payment_label": "Payment", + "pdf_payment_receipt_label": "PAYMENT RECEIPT", + "pdf_payment_date": "Payment Date", + "pdf_payment_number": "Payment Number", + "pdf_payment_mode": "Payment Mode", + "pdf_payment_amount_received_label": "Amount Received", + "pdf_expense_report_label": "EXPENSES REPORT", + "pdf_total_expenses_label": "TOTAL EXPENSE", + "pdf_profit_loss_label": "PROFIT & LOSS REPORT", + "pdf_sales_customers_label": "Sales Customer Report", + "pdf_sales_items_label": "Sales Item Report", + "pdf_tax_summery_label": "Tax Summary Report", + "pdf_income_label": "INCOME", + "pdf_net_profit_label": "NET PROFIT", + "pdf_customer_sales_report": "Sales Report: By Customer", + "pdf_total_sales_label": "TOTAL SALES", + "pdf_item_sales_label": "Sales Report: By Item", + "pdf_tax_report_label": "TAX REPORT", + "pdf_total_tax_label": "TOTAL TAX", + "pdf_tax_types_label": "Tax Types", + "pdf_expenses_label": "Expenses", + "pdf_bill_to": "Bill to,", + "pdf_ship_to": "Ship to,", + "pdf_received_from": "Received from:", + "pdf_tax_label": "Tax" } diff --git a/resources/scripts/locales/locales.js b/resources/scripts/locales/locales.js index 18a1ca8f6..b51a3a8f3 100644 --- a/resources/scripts/locales/locales.js +++ b/resources/scripts/locales/locales.js @@ -14,6 +14,8 @@ import lv from './lv.json' import sv from './sv.json' import sk from './sk.json' import vi from './vi.json' +import el from './el.json' +import hr from './hr.json' export default { en, @@ -31,5 +33,7 @@ export default { sv, sk, vi, - pl + pl, + el, + hr } diff --git a/resources/scripts/locales/lt.json b/resources/scripts/locales/lt.json new file mode 100644 index 000000000..67a40c4a6 --- /dev/null +++ b/resources/scripts/locales/lt.json @@ -0,0 +1,1521 @@ +{ + "navigation": { + "dashboard": "Valdymo panele", + "customers": "Klientai", + "items": "Elementai", + "invoices": "Sąskaitos", + "recurring-invoices": "Pasikartojančios sąskaitos", + "expenses": "Išlaidos", + "estimates": "Įverčiai", + "payments": "Mokėjimai", + "reports": "Ataskaitos", + "settings": "Nustatymai", + "logout": "Atsijungti", + "users": "Vartotojai", + "modules": "Modules" + }, + "general": { + "add_company": "Pridėti įmonę", + "view_pdf": "Peržiūrėti PDF", + "copy_pdf_url": "Kopijuoti PDF Nuorodą", + "download_pdf": "Atsiųsti PDF", + "save": "Išsaugoti", + "create": "Sukurti", + "cancel": "Atšaukti", + "update": "Atnaujinti", + "deselect": "Atžymėti", + "download": "Atsisiųsti", + "from_date": "Data nuo", + "to_date": "Data iki", + "from": "Nuo", + "to": "Kam", + "ok": "Gerai", + "yes": "Taip", + "no": "Ne", + "sort_by": "Rūšiuoti pagal", + "ascending": "Didėjančia tvarka", + "descending": "Mažėjančia tvarka", + "subject": "Tema", + "body": "Pagrindinė dalis", + "message": "Pranešimas", + "send": "Siųsti", + "preview": "Peržiūra", + "go_back": "Atgal", + "back_to_login": "Grįžti į prisijungimo puslapį?", + "home": "Pagrindinis", + "filter": "Filtras", + "delete": "Ištrinti", + "edit": "Redaguoti", + "view": "Peržiūrėti", + "add_new_item": "Pridėti objektą", + "clear_all": "Viską Išvalyti", + "showing": "Rodoma", + "of": "iš", + "actions": "Veiksmai", + "subtotal": "Viso", + "discount": "NUOLAIDA", + "fixed": "Pataisyta", + "percentage": "Procentas", + "tax": "MOKESTIS", + "total_amount": "VISO", + "bill_to": "Sąskaitos gavėjas", + "ship_to": "Siųsti į", + "due": "Iki", + "draft": "Juodraštis", + "sent": "Išsiųsta", + "all": "Visi", + "select_all": "Pažymėti viską", + "select_template": "Pasirinkti šabloną", + "choose_file": "Spauskite čia, kad pasirinkti failą", + "choose_template": "Pasirinkite šabloną", + "choose": "Pasirinkti", + "remove": "Pašalinti", + "select_a_status": "Pasirinkti būsena", + "select_a_tax": "Pasirinkite mokestį", + "search": "Paieška", + "are_you_sure": "Ar esate tikras?", + "list_is_empty": "Sąrašas yra tuščias.", + "no_tax_found": "Jokio mokesčio nerasta!", + "four_zero_four": "404", + "you_got_lost": "Turbūt pasiklydote!", + "go_home": "Eiti į pradžią", + "test_mail_conf": "Testuojamo Pašto konfigūracija", + "send_mail_successfully": "Laiškas išsiųstas sėkmingai", + "setting_updated": "Nustatymai atnaujinti sėkmingai", + "select_state": "Pasirinkti regioną", + "select_country": "Pasirinkite šalį", + "select_city": "Pasirinkite miestą", + "street_1": "Gatvė 1", + "street_2": "Gatvė 2", + "action_failed": "Nepavyko", + "retry": "Bandyti dar kartą", + "choose_note": "Pasirinkti žinutę", + "no_note_found": "Jokių žinučių nerasta", + "insert_note": "Terpti prierašą", + "copied_pdf_url_clipboard": "Nukopijuotas PDF url į iškarpinę!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Dokumentacija", + "do_you_wish_to_continue": "Ar norite tęsti?", + "note": "Užrašas", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" + }, + "dashboard": { + "select_year": "Pasirinkite metus", + "cards": { + "due_amount": "Mokėtina suma", + "customers": "Klientai", + "invoices": "Sąskaitos", + "estimates": "Įverčiai", + "payments": "Payments" + }, + "chart_info": { + "total_sales": "Pardavimai", + "total_receipts": "Kvitai", + "total_expense": "Išlaidos", + "net_income": "Grynasis pelnas", + "year": "Pasirinkite metus" + }, + "monthly_chart": { + "title": "Pardavimai ir išlaidos" + }, + "recent_invoices_card": { + "title": "Mokėtinos sąskaitos", + "due_on": "Mokėti iki", + "customer": "Klientas", + "amount_due": "Mokėtina suma", + "actions": "Veiksmai", + "view_all": "Rodyti visus" + }, + "recent_estimate_card": { + "title": "Naujausi įverčiai", + "date": "Data", + "customer": "Klientas", + "amount_due": "Mokėtina suma", + "actions": "Veiksmai", + "view_all": "Rodyti visus" + } + }, + "tax_types": { + "name": "Pavadinimas", + "description": "Aprašymas", + "percent": "Procentai", + "compound_tax": "Sudėtinis mokestis" + }, + "global_search": { + "search": "Paieška...", + "customers": "Klientai", + "users": "Vartotojai", + "no_results_found": "Rezultatų nerasta" + }, + "company_switcher": { + "label": "KEISTI ĮMONĘ", + "no_results_found": "Rezultatų nerasta", + "add_new_company": "Pridėti naują įmonę", + "new_company": "Nauja įmonė", + "created_message": "Kompanija sėkmingai įtraukta" + }, + "dateRange": { + "today": "Šiandien", + "this_week": "Šią savaitę", + "this_month": "Šį mėnesį", + "this_quarter": "Šis ketvirtis", + "this_year": "Šiais metais", + "previous_week": "Ankstesnė savaitė", + "previous_month": "Praėjusį mėnesį", + "previous_quarter": "Ankstesnis ketvirtis", + "previous_year": "Praėjusiais metais", + "custom": "Individuali parinktis" + }, + "customers": { + "title": "Klientai", + "prefix": "Priešdėlis", + "add_customer": "Pridėti klientą", + "contacts_list": "Klientų sąrašas", + "name": "Vardas", + "mail": "El. pašto adresas", + "statement": "Pareiškimas", + "display_name": "Rodomas vardas", + "primary_contact_name": "Kontakto pavadinimas", + "contact_name": "Kontaktinis vardas", + "amount_due": "Mokėtina suma", + "email": "El. paštas", + "address": "Adresas", + "phone": "Telefonas", + "website": "Svetainė", + "overview": "Apžvalga", + "invoice_prefix": "Sąskaitos serija", + "estimate_prefix": "Pasiūlymo serija", + "payment_prefix": "Mokėjimo serija", + "enable_portal": "Enable Portal", + "country": "Šalis", + "state": "Regionas", + "city": "Miestas", + "zip_code": "Pašto kodas", + "added_on": "Pridėta", + "action": "Veiksmas", + "password": "Slaptažodis", + "confirm_password": "Patvirtinkite slaptažodį", + "street_number": "Gatvės numeris", + "primary_currency": "Pagrindinė valiuta", + "description": "Aprašymas", + "add_new_customer": "Pridėti naują klientą", + "save_customer": "Išsaugoti klientą", + "update_customer": "Atnaujinti klientą", + "customer": "Klientas | Klientai", + "new_customer": "Naujas klientas", + "edit_customer": "Redaguoti klientą", + "basic_info": "Pagrindinė informacija", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", + "billing_address": "Mokėtojo adresas", + "shipping_address": "Pristatymo adresas", + "copy_billing_address": "Copy from Billing", + "no_customers": "Dar nėra klientų!", + "no_customers_found": "Pirkėjų nerasta!", + "no_contact": "No contact", + "no_contact_name": "No contact name", + "list_of_customers": "Šioje skiltyje bus klientų sąrašas.", + "primary_display_name": "Pagrindinis Rodomas Vardas", + "select_currency": "Pasirinkite valiutą", + "select_a_customer": "Pasirinkite klientą", + "type_or_click": "Type or click to select", + "new_transaction": "Nauja operacija", + "no_matching_customers": "Nėra atitinkančių klientų!", + "phone_number": "Telefono numeris", + "create_date": "Sukūrimo data", + "confirm_delete": "You will not be able to recover this customer and all the related Invoices, Estimates and Payments. | You will not be able to recover these customers and all the related Invoices, Estimates and Payments.", + "created_message": "Klientas sukurtas sėkmingai", + "updated_message": "Klientas atnaujintas sėkmingai", + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Klientas pašalintas sėkmingai | Klientai pašalinti sėkmingai", + "edit_currency_not_allowed": "Cannot change currency once transactions created." + }, + "items": { + "title": "Elementai", + "items_list": "Items List", + "name": "Pavadinimas", + "unit": "Vienetas", + "description": "Aprašymas", + "added_on": "Pridėta", + "price": "Kaina", + "date_of_creation": "Sukūrimo data", + "not_selected": "No item selected", + "action": "Veiksmas", + "add_item": "Add Item", + "save_item": "Save Item", + "update_item": "Update Item", + "item": "Item | Items", + "add_new_item": "Add New Item", + "new_item": "New Item", + "edit_item": "Edit Item", + "no_items": "No items yet!", + "list_of_items": "This section will contain the list of items.", + "select_a_unit": "pasirinkite vienetą", + "taxes": "Mokesčiai", + "item_attached_message": "Cannot delete an item which is already in use", + "confirm_delete": "You will not be able to recover this Item | You will not be able to recover these Items", + "created_message": "Item created successfully", + "updated_message": "Item updated successfully", + "deleted_message": "Item deleted successfully | Items deleted successfully" + }, + "estimates": { + "title": "Pasiūlymai", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", + "estimate": "Pasiūlymas | Pasiūlymai", + "estimates_list": "Pasiūlymų Sąrašas", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Apmokėta", + "unpaid": "Neapmokėta", + "customer": "KLIENTAS", + "ref_no": "REF NO.", + "number": "NUMERIS", + "amount_due": "AMOUNT DUE", + "partially_paid": "Dalinai apmokėta", + "total": "Iš viso", + "discount": "Nuolaida", + "sub_total": "Tarpinė suma", + "estimate_number": "Pasiūlymo numeris", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Pridėti elementą", + "date": "Data", + "due_date": "Due Date", + "expiry_date": "Galiojimo laikas", + "status": "Status", + "add_tax": "Pridėti mokestį", + "amount": "Amount", + "action": "Veiksmas", + "notes": "Pastabos", + "tax": "PVM", + "estimate_template": "Šablonas", + "convert_to_invoice": "Kovertuoti į Sąskaitą", + "mark_as_sent": "Pažymėti kaip išsiųstą", + "send_estimate": "Siųsti pasiūlymą", + "resend_estimate": "Siųsti pasiūlymą dar kartą", + "record_payment": "Record Payment", + "add_estimate": "Pridėti naują Pasiūlymą", + "save_estimate": "Išsaugoti Pasiūlymą", + "confirm_conversion": "This estimate will be used to create a new Invoice.", + "conversion_message": "Sąskaita sukurta sėkmingai", + "confirm_send_estimate": "Šitas pasiūlymas bus išsiųstas Klientui el. paštu", + "confirm_mark_as_sent": "This estimate will be marked as sent", + "confirm_mark_as_accepted": "This estimate will be marked as Accepted", + "confirm_mark_as_rejected": "This estimate will be marked as Rejected", + "no_matching_estimates": "Nėra atitinkančių pasiūlymų!", + "mark_as_sent_successfully": "Pasiūlymas pažymėtas kaip sėkmingai išsiųstas", + "send_estimate_successfully": "Pasiūlymas išsiųstas sėkmingai", + "errors": { + "required": "Laukas privalomas" + }, + "accepted": "Priimtas", + "rejected": "Atmesta", + "expired": "Expired", + "sent": "Išsiųsta", + "draft": "Juodraštis", + "viewed": "Viewed", + "declined": "Declined", + "new_estimate": "Naujas pasiūlymas", + "add_new_estimate": "Pridėti naują pasiūlymą", + "update_Estimate": "Atnaujinti pasiūlymą", + "edit_estimate": "Redaguoti pasiūlymą", + "items": "elementai", + "Estimate": "Estimate | Estimates", + "add_new_tax": "Pridėti naują mokestį", + "no_estimates": "Dar nėra Pasiūlymų!", + "list_of_estimates": "This section will contain the list of estimates.", + "mark_as_rejected": "Pažymėti kaip atmestą", + "mark_as_accepted": "Pažymėti kaip priimtą", + "marked_as_accepted_message": "Estimate marked as accepted", + "marked_as_rejected_message": "Estimate marked as rejected", + "confirm_delete": "You will not be able to recover this Estimate | You will not be able to recover these Estimates", + "created_message": "Estimate created successfully", + "updated_message": "Estimate updated successfully", + "deleted_message": "Estimate deleted successfully | Estimates deleted successfully", + "something_went_wrong": "something went wrong", + "item": { + "title": "Item Title", + "description": "Aprašymas", + "quantity": "Kiekis", + "price": "Kaina", + "discount": "Nuolaida", + "total": "Iš viso", + "total_discount": "Bendra nuolaida", + "sub_total": "Tarpinė suma", + "tax": "Mokesčiai", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + } + }, + "invoices": { + "title": "Sąskaitos", + "download": "Download", + "pay_invoice": "Pay Invoice", + "invoices_list": "Sąskaitų sąrašas", + "invoice_information": "Invoice Information", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "Visi", + "paid": "Apmokėta", + "unpaid": "Neapmokėta", + "viewed": "Peržiūrėta", + "overdue": "Overdue", + "completed": "Completed", + "customer": "KLIENTAS", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMERIS", + "amount_due": "AMOUNT DUE", + "partially_paid": "Dalinai apmokėta", + "total": "Iš viso", + "discount": "Nuolaida", + "sub_total": "Tarpinė suma", + "invoice": "Sąskaita | Sąskaitos", + "invoice_number": "Sąskaitos Numeris", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Pridėti elementą", + "date": "Data", + "due_date": "Due Date", + "status": "Būsena", + "add_tax": "Pridėti mokestį", + "amount": "Amount", + "action": "Veiksmas", + "notes": "Pastabos", + "view": "Peržiūrėti", + "send_invoice": "Siųsti Sąskaitą", + "resend_invoice": "Siųsti Sąskaitą dar kartą", + "invoice_template": "Sąskaitos šablonas", + "conversion_message": "Invoice cloned successful", + "template": "Pasirinkti šabloną", + "mark_as_sent": "Pažymėti kaip išsiųstą", + "confirm_send_invoice": "Šita sąskaita bus išsiųstas Klientui el. paštu", + "invoice_mark_as_sent": "This invoice will be marked as sent", + "confirm_mark_as_accepted": "This invoice will be marked as Accepted", + "confirm_mark_as_rejected": "This invoice will be marked as Rejected", + "confirm_send": "This invoice will be sent via email to the customer", + "invoice_date": "Sąskaitos Data", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Redaguoti Sąskaitą", + "new_invoice": "Nauja Sąskaita", + "save_invoice": "Išsaugoti Sąskaitą", + "update_invoice": "Atnaujinti Sąskaitą", + "add_new_tax": "Pridėti naują mokestį", + "no_invoices": "Dar nėra sąskaitų!", + "mark_as_rejected": "Pažymėti kaip atmestą", + "mark_as_accepted": "Pažymėti kaip priimtą", + "list_of_invoices": "Šioje skiltyje bus sąskaitų sąrašas.", + "select_invoice": "Pasirinkti Sąskaitą", + "no_matching_invoices": "Nėra atitinkančių sąskaitų!", + "mark_as_sent_successfully": "Sąskaita pažymėta kaip sėkmingai išsiųsta", + "invoice_sent_successfully": "Sąskaita išsiųsta sėkmingai", + "cloned_successfully": "Invoice cloned successfully", + "clone_invoice": "Clone Invoice", + "confirm_clone": "This invoice will be cloned into a new Invoice", + "item": { + "title": "Item Title", + "description": "Aprašymas", + "quantity": "Kiekis", + "price": "Kaina", + "discount": "Nuolaida", + "total": "Iš viso", + "total_discount": "Bendra nuolaida", + "sub_total": "Tarpinė suma", + "tax": "Mokesčiai", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "payment_attached_message": "One of the selected invoices already have a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal", + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Sąskaita sukurta sėkmingai", + "updated_message": "Sąskaita atnaujinta sėkmingai", + "deleted_message": "Sąskaita pašalinta sėkmingai | Sąskaitos pašalintos sėkmingai", + "marked_as_sent_message": "Sąskaita pažymėta kaip sėkmingai išsiųsta", + "something_went_wrong": "įvyko klaida", + "invalid_due_amount_message": "Total Invoice amount cannot be less than total paid amount for this Invoice. Please update the invoice or delete the associated payments to continue." + }, + "recurring_invoices": { + "title": "Pasikartojančios sąskaitos", + "invoices_list": "Pasikartojančių sąskaitų sąrašas", + "days": "{days} dienos", + "months": "{months} Month", + "years": "{years} Year", + "all": "Visi", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Viewed", + "overdue": "Overdue", + "active": "Active", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Data", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Kiekis", + "status": "Būsena", + "select_a_status": "Pasirinkti būsena", + "working": "Veikiantys", + "on_hold": "Užlaikytas", + "complete": "Užbaigtas", + "add_tax": "Pridėti mokestį", + "amount": "Kiekis", + "action": "Veiksmas", + "notes": "Pastabos", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, + "payments": { + "title": "Payments", + "payments_list": "Payments List", + "record_payment": "Record Payment", + "customer": "Customer", + "date": "Date", + "amount": "Amount", + "action": "Action", + "payment_number": "Payment Number", + "payment_mode": "Payment Mode", + "invoice": "Invoice", + "note": "Note", + "add_payment": "Add Payment", + "new_payment": "New Payment", + "edit_payment": "Edit Payment", + "view_payment": "View Payment", + "add_new_payment": "Add New Payment", + "send_payment_receipt": "Send Payment Receipt", + "send_payment": "Send Payment", + "save_payment": "Save Payment", + "update_payment": "Update Payment", + "payment": "Payment | Payments", + "no_payments": "No payments yet!", + "not_selected": "Not selected", + "no_invoice": "No invoice", + "no_matching_payments": "There are no matching payments!", + "list_of_payments": "This section will contain the list of payments.", + "select_payment_mode": "Select payment mode", + "confirm_mark_as_sent": "This estimate will be marked as sent", + "confirm_send_payment": "This payment will be sent via email to the customer", + "send_payment_successfully": "Payment sent successfully", + "something_went_wrong": "something went wrong", + "confirm_delete": "You will not be able to recover this Payment | You will not be able to recover these Payments", + "created_message": "Payment created successfully", + "updated_message": "Payment updated successfully", + "deleted_message": "Payment deleted successfully | Payments deleted successfully", + "invalid_amount_message": "Payment amount is invalid" + }, + "expenses": { + "title": "Išlaidos", + "expenses_list": "Išlaidų Sąrašas", + "select_a_customer": "Pasirinkite klientą", + "expense_title": "Pavadinimas", + "customer": "Klientas", + "currency": "Currency", + "contact": "Contact", + "category": "Category", + "from_date": "From Date", + "to_date": "To Date", + "expense_date": "Data", + "description": "Aprašymas", + "receipt": "Čekis", + "amount": "Amount", + "action": "Veiksmas", + "not_selected": "Nepasirinktas", + "note": "Pastaba", + "category_id": "Kategorijos Id", + "date": "Data", + "add_expense": "Pridėti išlaidą", + "add_new_expense": "Pridėti Naują Išlaidą", + "save_expense": "Išsaugoti išlaidą", + "update_expense": "Atnaujinti išlaidą", + "download_receipt": "Atsiųsti Išlaidą", + "edit_expense": "Redaguoti išlaidą", + "new_expense": "Nauja išlaida", + "expense": "Išlaida | Išlaidos", + "no_expenses": "Dar nėra išlaidų!", + "list_of_expenses": "This section will contain the list of expenses.", + "confirm_delete": "You will not be able to recover this Expense | You will not be able to recover these Expenses", + "created_message": "Išlaida sukurta sėkmingai", + "updated_message": "Išlaida atnaujinta sėkmingai", + "deleted_message": "Išlaida pašalinta sėkmingai | Išlaidos pašalintos sėkmingai", + "categories": { + "categories_list": "Kategorijų Sąrašas", + "title": "Pavadinimas", + "name": "Name", + "description": "Description", + "amount": "Amount", + "actions": "Actions", + "add_category": "Pridėti Kategoriją", + "new_category": "Nauja Kategorija", + "category": "Kategorija | Kategorijos", + "select_a_category": "Pasirinkite Kategoriją" + } + }, + "login": { + "email": "El. paštas", + "password": "Slaptažodis", + "forgot_password": "Pamiršote slaptažodį?", + "or_signIn_with": "arba prisijunkite su", + "login": "Prisijungti", + "register": "Užsiregistruoti", + "reset_password": "Atstatyti slaptažodį", + "password_reset_successfully": "Slaptažodžis atstatytas sėkmingai", + "enter_email": "Įveskite el. pašto adresą", + "enter_password": "Įveskite slaptažodį", + "retype_password": "Įvesikite slaptažodį dar kartą" + }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, + "users": { + "title": "Vartotojai", + "users_list": "Vartotojų sąrašas", + "name": "Name", + "description": "Description", + "added_on": "Added On", + "date_of_creation": "Date Of Creation", + "action": "Action", + "add_user": "Pridėti Vartotoją", + "save_user": "Išsaugoti Vartotoją", + "update_user": "Atnaujinti Vartotoją", + "user": "Vartotojas | Vartotojai", + "add_new_user": "Pridėti Naują Vartotoją", + "new_user": "Naujas Vartotojas", + "edit_user": "Redaguoti Vartotoją", + "no_users": "No users yet!", + "list_of_users": "This section will contain the list of users.", + "email": "El. paštas", + "phone": "Telefonas", + "password": "Slaptažodis", + "user_attached_message": "Cannot delete an item which is already in use", + "confirm_delete": "You will not be able to recover this User | You will not be able to recover these Users", + "created_message": "Vartotojas sukurtas sėkmingai", + "updated_message": "Vartotojas atnaujintas sėkmingai", + "deleted_message": "Vartotojas pašalintas sėkmingai | Vartotojai pašalinti sėkmingai", + "select_company_role": "Select Role for {company}", + "companies": "Įmonės" + }, + "reports": { + "title": "Ataskaita", + "from_date": "Data nuo", + "to_date": "Data iki", + "status": "Būsena", + "paid": "Apmokėta", + "unpaid": "Neapmokėta", + "download_pdf": "Atsiųsti PDF", + "view_pdf": "Peržiūrėti PDF", + "update_report": "Atnaujinti Ataskaitą", + "report": "Ataskaita | Ataskaitos", + "profit_loss": { + "profit_loss": "Profit & Loss", + "to_date": "Data iki", + "from_date": "Data nuo", + "date_range": "Select Date Range" + }, + "sales": { + "sales": "Pardavimai", + "date_range": "Select Date Range", + "to_date": "To Date", + "from_date": "From Date", + "report_type": "Report Type" + }, + "taxes": { + "taxes": "Taxes", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" + }, + "errors": { + "required": "Field is required" + }, + "invoices": { + "invoice": "Invoice", + "invoice_date": "Invoice Date", + "due_date": "Due Date", + "amount": "Amount", + "contact_name": "Contact Name", + "status": "Status" + }, + "estimates": { + "estimate": "Estimate", + "estimate_date": "Estimate Date", + "due_date": "Due Date", + "estimate_number": "Estimate Number", + "ref_number": "Ref Number", + "amount": "Amount", + "contact_name": "Contact Name", + "status": "Status" + }, + "expenses": { + "expenses": "Expenses", + "category": "Category", + "date": "Date", + "amount": "Amount", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" + } + }, + "settings": { + "menu_title": { + "account_settings": "Account Settings", + "company_information": "Company Information", + "customization": "Customization", + "preferences": "Nustatymai", + "notifications": "Pranešimai", + "tax_types": "Mokesčių tipai", + "expense_category": "Išlaidų Kategorijos", + "update_app": "Update App", + "backup": "Atsarginė kopija", + "file_disk": "File Disk", + "custom_fields": "Papildomai laukai", + "payment_modes": "Mokėjimo būdai", + "notes": "Pastabos", + "exchange_rate": "Valiutų kursas", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." + }, + "title": "Nustatymai", + "setting": "Nustatymai | Nustatymai", + "general": "Bendrieji nustatymai", + "language": "Kalba", + "primary_currency": "Pagrindinė valiuta", + "timezone": "Laiko zona", + "date_format": "Datos formatas", + "currencies": { + "title": "Valiutos", + "currency": "Valiuta | Valiutos", + "currencies_list": "Valiutų sąrašas", + "select_currency": "Pasirinkite valiutą", + "name": "Pavadinimas", + "code": "Kodas", + "symbol": "Simbolis", + "precision": "Tikslumas", + "thousand_separator": "Tūkstančių skyriklis", + "decimal_separator": "Decimal Separator", + "position": "Padėtis", + "position_of_symbol": "Simbolio padėtis", + "right": "Dešinė", + "left": "Kairė", + "action": "Veiksmas", + "add_currency": "Pridėti valiutą" + }, + "mail": { + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domenas", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Mail Password", + "username": "Mail Username", + "mail_config": "Mail Configuration", + "from_name": "From Mail Name", + "from_mail": "From Mail Address", + "encryption": "Mail Encryption", + "mail_config_desc": "Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc." + }, + "pdf": { + "title": "PDF nustatymai", + "footer_text": "Poraštės tekstas", + "pdf_layout": "PDF Išdėstymas" + }, + "company_info": { + "company_info": "Company info", + "company_name": "Imonės pavadinimas", + "company_logo": "Įmonės logotipas", + "section_description": "Information about your company that will be displayed on invoices, estimates and other documents created by Crater.", + "phone": "Telefonas", + "country": "Šalis", + "state": "State", + "city": "Miestas", + "address": "Adresas", + "zip": "Pašto kodas", + "save": "Išsaugoti", + "delete": "Ištrinti", + "updated_message": "Company information updated successfully", + "delete_company": "Ištrinti įmonę", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" + }, + "custom_fields": { + "title": "Custom Fields", + "section_description": "Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.", + "add_custom_field": "Pridėti pasirinktinį lauką", + "edit_custom_field": "Redaguoti pasirinktinį lauką", + "field_name": "Field Name", + "label": "Žyma", + "type": "Tipas", + "name": "Name", + "slug": "Slug", + "required": "Privalomas", + "placeholder": "Placeholder", + "help_text": "Help Text", + "default_value": "Default Value", + "prefix": "Prefix", + "starting_number": "Starting Number", + "model": "Modelis", + "help_text_description": "Enter some text to help users understand the purpose of this custom field.", + "suffix": "Suffix", + "yes": "Taip", + "no": "Ne", + "order": "Order", + "custom_field_confirm_delete": "You will not be able to recover this Custom Field", + "already_in_use": "Custom Field is already in use", + "deleted_message": "Custom Field deleted successfully", + "options": "options", + "add_option": "Pridėti Pasirinkimus", + "add_another_option": "Add another option", + "sort_in_alphabetical_order": "Sort in Alphabetical Order", + "add_options_in_bulk": "Add options in bulk", + "use_predefined_options": "Use Predefined Options", + "select_custom_date": "Select Custom Date", + "select_relative_date": "Select Relative Date", + "ticked_by_default": "Ticked by default", + "updated_message": "Custom Field updated successfully", + "added_message": "Custom Field added successfully", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." + }, + "customization": { + "customization": "customization", + "updated_message": "Company information updated successfully", + "save": "Išsaugoti", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Komponentas", + "Parameter": "Parametras", + "series": "Serija", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Skyriklis", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Datos formatas", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Formatas", + "sequence": "Seka", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sekos Ilgis", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sekos Ilgis", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", + "invoices": { + "title": "Sąskaitos", + "invoice_number_format": "Sąskaitos numerio formatas", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", + "default_invoice_email_body": "Default Invoice Email Body", + "company_address_format": "Company Address Format", + "shipping_address_format": "Shipping Address Format", + "billing_address_format": "Billing Address Format", + "invoice_email_attachment": "Send invoices as attachments", + "invoice_email_attachment_setting_description": "Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Leisti", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." + }, + "estimates": { + "title": "Estimates", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Galiojimo laikas", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", + "default_estimate_email_body": "Default Estimate Email Body", + "company_address_format": "Company Address Format", + "shipping_address_format": "Shipping Address Format", + "billing_address_format": "Billing Address Format", + "estimate_email_attachment": "Send estimates as attachments", + "estimate_email_attachment_setting_description": "Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "Nėra veiksmų", + "delete_estimate": "Ištrinti pasiūlymą", + "mark_estimate_as_accepted": "Mark estimate as accepted" + }, + "payments": { + "title": "Mokėjimai", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", + "default_payment_email_body": "Default Payment Email Body", + "company_address_format": "Company Address Format", + "from_customer_address_format": "From Customer Address Format", + "payment_email_attachment": "Send payments as attachments", + "payment_email_attachment_setting_description": "Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.", + "payment_settings_updated": "Payment Settings updated successfully" + }, + "items": { + "title": "Items", + "units": "Vienetai", + "add_item_unit": "Add Item Unit", + "edit_item_unit": "Edit Item Unit", + "unit_name": "Vieneto pavadinimas", + "item_unit_added": "Item Unit Added", + "item_unit_updated": "Item Unit Updated", + "item_unit_confirm_delete": "You will not be able to recover this Item unit", + "already_in_use": "Item Unit is already in use", + "deleted_message": "Item Unit deleted successfully" + }, + "notes": { + "title": "Pastabos", + "description": "Save time by creating notes and reusing them on your invoices, estimates & payments.", + "notes": "Pastabos", + "type": "Tipas", + "add_note": "Pridėti pastabą", + "add_new_note": "Pridėti Naują Pastabą", + "name": "Pavadinimas", + "edit_note": "Redaguoti Pastabą", + "note_added": "Pastaba pridėta sėkmingai", + "note_updated": "Pastaba atnaujinta sėkmingai", + "note_confirm_delete": "Jūs nebegalėsite atkurti šitos Pastabos", + "already_in_use": "Pastaba jau naudojama", + "deleted_message": "Pastaba pašalinta sėkmingai" + } + }, + "account_settings": { + "profile_picture": "Profilio nuotrauka", + "name": "Vardas", + "email": "El. paštas", + "password": "Slaptažodis", + "confirm_password": "Patvirtinti slaptažodį", + "account_settings": "Paskyros nustatymai", + "save": "Išsaugoti", + "section_description": "You can update your name, email & password using the form below.", + "updated_message": "Account Settings updated successfully" + }, + "user_profile": { + "name": "Vardas", + "email": "El. paštas", + "password": "Slaptažodis", + "confirm_password": "Patvirtinti slaptažodį" + }, + "notification": { + "title": "Pranešimai", + "email": "Siųsti pranešimus", + "description": "Which email notifications would you like to receive when something changes?", + "invoice_viewed": "Invoice viewed", + "invoice_viewed_desc": "When your customer views the invoice sent via crater dashboard.", + "estimate_viewed": "Estimate viewed", + "estimate_viewed_desc": "When your customer views the estimate sent via crater dashboard.", + "save": "Išsaugoti", + "email_save_message": "El. paštas išsaugotas sėkmingai", + "please_enter_email": "Įveskite el. paštą" + }, + "roles": { + "title": "Vaidmenys", + "description": "Manage the roles & permissions of this company", + "save": "Išsaugoti", + "add_new_role": "Pridėti naują vaidmenį", + "role_name": "Vaidmens pavadinimas", + "added_on": "Pridėta", + "add_role": "Pridėti veidmenį", + "edit_role": "Redaguoti vaidmenį", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Pažymėti viską", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Valiutų kursas", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API raktas", + "name": "Pavadinimas", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Valiutos Skaičiuoklė", + "server": "Serveris", + "url": "URL", + "active": "Aktyvus", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, + "tax_types": { + "title": "Mokesčių tipai", + "add_tax": "Pridėti mokestį", + "edit_tax": "Redaguoti mokestį", + "description": "You can add or Remove Taxes as you please. Crater supports Taxes on Individual Items as well as on the invoice.", + "add_new_tax": "Pridėti naują mokestį", + "tax_settings": "Mokesčių nustatymai", + "tax_per_item": "Tax Per Item", + "tax_name": "Mokesčio pavadinimas", + "compound_tax": "Sudėtinis mokestis", + "percent": "Procentai", + "action": "Veiksmas", + "tax_setting_description": "Enable this if you want to add taxes to individual invoice items. By default, taxes are added directly to the invoice.", + "created_message": "Tax type created successfully", + "updated_message": "Tax type updated successfully", + "deleted_message": "Tax type deleted successfully", + "confirm_delete": "You will not be able to recover this Tax Type", + "already_in_use": "Tax is already in use" + }, + "payment_modes": { + "title": "Mokėjimo būdai", + "description": "Modes of transaction for payments", + "add_payment_mode": "Pridėti Mokėjimo Būdą", + "edit_payment_mode": "Redaguoti Mokėjimo Būdą", + "mode_name": "Mode Name", + "payment_mode_added": "Mokėjimo Būdas pridėtas", + "payment_mode_updated": "Mokėjimo Būdas atnaujintas", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Mokėjimo Būdas jau naudojamas", + "deleted_message": "Mokėjimo Būdas sėkmingai pašalintas" + }, + "expense_category": { + "title": "Expense Categories", + "action": "Action", + "description": "Categories are required for adding expense entries. You can Add or Remove these categories according to your preference.", + "add_new_category": "Pridėti naują kategoriją", + "add_category": "Pridėti kategoriją", + "edit_category": "Redaguoti kategoriją", + "category_name": "Kategorijos pavadinimas", + "category_description": "Aprašymas", + "created_message": "Expense Category created successfully", + "deleted_message": "Expense category deleted successfully", + "updated_message": "Expense category updated successfully", + "confirm_delete": "You will not be able to recover this Expense Category", + "already_in_use": "Category is already in use" + }, + "preferences": { + "currency": "Valiuta", + "default_language": "Numatyta kalba", + "time_zone": "Laiko zona", + "fiscal_year": "Finansiniai metai", + "date_format": "Datos formatas", + "discount_setting": "Discount Setting", + "discount_per_item": "Discount Per Item ", + "discount_setting_description": "Enable this if you want to add Discount to individual invoice items. By default, Discount is added directly to the invoice.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", + "save": "Išsaugoti", + "preference": "Nustatymas | Nustatymai", + "general_settings": "Default preferences for the system.", + "updated_message": "Nustatymai atnaujinti sėkmingai", + "select_language": "Pasirinkite Kalbą", + "select_time_zone": "Pasirinkite Laiko Zoną", + "select_date_format": "Pasirinkite Datos Formatą", + "select_financial_year": "Select Financial Year", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Sukurti būseną", + "active": "Aktyvus", + "on_hold": "Užlaikytas", + "update_status": "Atnaujinti būseną", + "completed": "Užbaigtas", + "company_currency_unchangeable": "Įmonės valiuta negali būti pakeista" + }, + "update_app": { + "title": "Update App", + "description": "You can easily update Crater by checking for a new update by clicking the button below", + "check_update": "Tikrinti, ar yra atnaujinimų", + "avail_update": "Galimas naujas atnaujinimas", + "next_version": "Naujesnė versija", + "requirements": "Reikalavimai", + "update": "Atnaujinti dabar", + "update_progress": "Vyksta atnaujinimas...", + "progress_text": "It will just take a few minutes. Please do not refresh the screen or close the window before the update finishes", + "update_success": "App has been updated! Please wait while your browser window gets reloaded automatically.", + "latest_message": "No update available! You are on the latest version.", + "current_version": "Dabartinė versija", + "download_zip_file": "Atsisiųsti ZIP failą", + "unzipping_package": "Unzipping Package", + "copying_files": "Kopijuojami failai", + "deleting_files": "Deleting Unused files", + "running_migrations": "Running Migrations", + "finishing_update": "Finishing Update", + "update_failed": "Update Failed", + "update_failed_text": "Sorry! Your update failed on : {step} step", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." + }, + "backup": { + "title": "Backup | Backups", + "description": "The backup is a zipfile that contains all files in the directories you specify along with a dump of your database", + "new_backup": "Add New Backup", + "create_backup": "Kurti atsarginę kopiją", + "select_backup_type": "Select Backup Type", + "backup_confirm_delete": "You will not be able to recover this Backup", + "path": "path", + "new_disk": "Naujas diskas", + "created_at": "sukurta", + "size": "dydis", + "dropbox": "dropbox", + "local": "local", + "healthy": "healthy", + "amount_of_backups": "amount of backups", + "newest_backups": "newest backups", + "used_storage": "used storage", + "select_disk": "Pasirinkite Diską", + "action": "Veiksmas", + "deleted_message": "Atsarginė kopija sėkmingai ištrinta", + "created_message": "Atsarginė kopija sėkmingai sukurta", + "invalid_disk_credentials": "Invalid credential of selected disk" + }, + "disk": { + "title": "File Disk | File Disks", + "description": "By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.", + "created_at": "created at", + "dropbox": "dropbox", + "name": "Pavadinimas", + "driver": "Driver", + "disk_type": "Tipas", + "disk_name": "Disk Name", + "new_disk": "Add New Disk", + "filesystem_driver": "Filesystem Driver", + "local_driver": "local Driver", + "local_root": "local Root", + "public_driver": "Public Driver", + "public_root": "Public Root", + "public_url": "Public URL", + "public_visibility": "Public Visibility", + "media_driver": "Media Driver", + "media_root": "Media Root", + "aws_driver": "AWS Driver", + "aws_key": "AWS Key", + "aws_secret": "AWS Secret", + "aws_region": "AWS Region", + "aws_bucket": "AWS Bucket", + "aws_root": "AWS Root", + "do_spaces_type": "Do Spaces type", + "do_spaces_key": "Do Spaces key", + "do_spaces_secret": "Do Spaces Secret", + "do_spaces_region": "Do Spaces Region", + "do_spaces_bucket": "Do Spaces Bucket", + "do_spaces_endpoint": "Do Spaces Endpoint", + "do_spaces_root": "Do Spaces Root", + "dropbox_type": "Dropbox Type", + "dropbox_token": "Dropbox Token", + "dropbox_key": "Dropbox Key", + "dropbox_secret": "Dropbox Secret", + "dropbox_app": "Dropbox App", + "dropbox_root": "Dropbox Root", + "default_driver": "Default Driver", + "is_default": "IS DEFAULT", + "set_default_disk": "Set Default Disk", + "set_default_disk_confirm": "This disk will be set as default and all the new PDFs will be saved on this disk", + "success_set_default_disk": "Disk set as default successfully", + "save_pdf_to_disk": "Save PDFs to Disk", + "disk_setting_description": " Enable this, if you wish to save a copy of each Invoice, Estimate & Payment Receipt PDF on your default disk automatically. Turning this option will decrease the load-time when viewing the PDFs.", + "select_disk": "Select Disk", + "disk_settings": "Disk Settings", + "confirm_delete": "Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater", + "action": "Action", + "edit_file_disk": "Edit File Disk", + "success_create": "Disk added successfully", + "success_update": "Disk updated successfully", + "error": "Disk addition failed", + "deleted_message": "File Disk deleted successfully", + "disk_variables_save_successfully": "Disk Configured Successfully", + "disk_variables_save_error": "Disk configuration failed.", + "invalid_disk_credentials": "Invalid credential of selected disk" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." + } + }, + "wizard": { + "account_info": "Paskyros informacija", + "account_info_desc": "Below details will be used to create the main Administrator account. Also you can change the details anytime after logging in.", + "name": "Vardas", + "email": "El. paštas", + "password": "Slaptažodis", + "confirm_password": "Patvirtinti slaptažodį", + "save_cont": "Išsaugoti ir tęsti", + "company_info": "Įmonės informacija", + "company_info_desc": "This information will be displayed on invoices. Note that you can edit this later on settings page.", + "company_name": "Imonės pavadinimas", + "company_logo": "Įmonės logotipas", + "logo_preview": "Logo Preview", + "preferences": "Įmonės Nustatymai", + "preferences_desc": "Specify the default preferences for this company.", + "currency_set_alert": "The company's currency cannot be changed later.", + "country": "Country", + "state": "State", + "city": "City", + "address": "Address", + "street": "Street1 | Street2", + "phone": "Phone", + "zip_code": "Zip Code", + "go_back": "Go Back", + "currency": "Currency", + "language": "Language", + "time_zone": "Time Zone", + "fiscal_year": "Financial Year", + "date_format": "Date Format", + "from_address": "Iš adreso", + "username": "Vartotojo vardas", + "next": "Kitas", + "continue": "Tęsti", + "skip": "Praleisti", + "database": { + "database": "Site URL & Database", + "connection": "Database Connection", + "host": "Database Host", + "port": "Database Port", + "password": "Database Password", + "app_url": "App URL", + "app_domain": "App Domain", + "username": "Database Username", + "db_name": "Duomenų bazės pavadinimas", + "db_path": "Database Path", + "desc": "Create a database on your server and set the credentials using the form below." + }, + "permissions": { + "permissions": "Prieigos teisės", + "permission_confirm_title": "Ar tikrai norite tęsti?", + "permission_confirm_desc": "Folder permission check failed", + "permission_desc": "Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions." + }, + "verify_domain": { + "title": "Domain Verification", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Patvirtinti dabar", + "success": "Domain Verify Successfully.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verify And Continue" + }, + "mail": { + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Mail Password", + "username": "Mail Username", + "mail_config": "Mail Configuration", + "from_name": "From Mail Name", + "from_mail": "From Mail Address", + "encryption": "Mail Encryption", + "mail_config_desc": "Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc." + }, + "req": { + "system_req": "System Requirements", + "php_req_version": "Php (version {version} required)", + "check_req": "Check Requirements", + "system_req_desc": "Crater has a few server requirements. Make sure that your server has the required php version and all the extensions mentioned below." + }, + "errors": { + "migrate_failed": "Migrate Failed", + "database_variables_save_error": "Cannot write configuration to .env file. Please check its file permissions", + "mail_variables_save_error": "Email configuration failed.", + "connection_failed": "Database connection failed", + "database_should_be_empty": "Database should be empty" + }, + "success": { + "mail_variables_save_successfully": "Email configured successfully", + "database_variables_save_successfully": "Database configured successfully." + } + }, + "validation": { + "invalid_phone": "Invalid Phone Number", + "invalid_url": "Invalid url (ex: http://www.craterapp.com)", + "invalid_domain_url": "Invalid url (ex: craterapp.com)", + "required": "Field is required", + "email_incorrect": "Incorrect Email.", + "email_already_taken": "The email has already been taken.", + "email_does_not_exist": "Nėra vartotojo su tokiu el. pašto adresu", + "item_unit_already_taken": "This item unit name has already been taken", + "payment_mode_already_taken": "This payment mode name has already been taken", + "send_reset_link": "Siųsti atstatymo nuorodą", + "not_yet": "Not yet? Send it again", + "password_min_length": "Password must contain {count} characters", + "name_min_length": "Name must have at least {count} letters.", + "prefix_min_length": "Prefix must have at least {count} letters.", + "enter_valid_tax_rate": "Enter valid tax rate", + "numbers_only": "Numbers Only.", + "characters_only": "Characters Only.", + "password_incorrect": "Slaptažodžiai turi sutapti", + "password_length": "Password must be {count} character long.", + "qty_must_greater_than_zero": "Kiekis turi būti didesnis už nulį.", + "price_greater_than_zero": "Kaina turi būti didesnė už nulį.", + "payment_greater_than_zero": "Payment must be greater than zero.", + "payment_greater_than_due_amount": "Entered Payment is more than due amount of this invoice.", + "quantity_maxlength": "Quantity should not be greater than 20 digits.", + "price_maxlength": "Price should not be greater than 20 digits.", + "price_minvalue": "Kaina turi būti didesnė už nulį.", + "amount_maxlength": "Amount should not be greater than 20 digits.", + "amount_minvalue": "Amount should be greater than 0.", + "discount_maxlength": "Discount should not be greater than max discount", + "description_maxlength": "Description should not be greater than 255 characters.", + "subject_maxlength": "Subject should not be greater than 100 characters.", + "message_maxlength": "Message should not be greater than 255 characters.", + "maximum_options_error": "Maximum of {max} options selected. First remove a selected option to select another.", + "notes_maxlength": "Notes should not be greater than 65,000 characters.", + "address_maxlength": "Address should not be greater than 255 characters.", + "ref_number_maxlength": "Ref Number should not be greater than 255 characters.", + "prefix_maxlength": "Prefix should not be greater than 5 characters.", + "something_went_wrong": "įvyko klaida", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Neleidžiama", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" + }, + "pdf_estimate_label": "Pasiūlymas", + "pdf_estimate_number": "Pasiūlymo numeris", + "pdf_estimate_date": "Pasiūlymo data", + "pdf_estimate_expire_date": "Galiojimo laikas", + "pdf_invoice_label": "Sąskaita", + "pdf_invoice_number": "Invoice Number", + "pdf_invoice_date": "Invoice Date", + "pdf_invoice_due_date": "Due date", + "pdf_notes": "Pastabos", + "pdf_items_label": "Items", + "pdf_quantity_label": "Kiekis", + "pdf_price_label": "Kaina", + "pdf_discount_label": "Nuolaida", + "pdf_amount_label": "Amount", + "pdf_subtotal": "Subtotal", + "pdf_total": "Iš viso", + "pdf_payment_label": "Mokėjimas", + "pdf_payment_receipt_label": "PAYMENT RECEIPT", + "pdf_payment_date": "Mokėjimo data", + "pdf_payment_number": "Mokėjimo numeris", + "pdf_payment_mode": "Mokėjimo būdas", + "pdf_payment_amount_received_label": "Amount Received", + "pdf_expense_report_label": "EXPENSES REPORT", + "pdf_total_expenses_label": "TOTAL EXPENSE", + "pdf_profit_loss_label": "PROFIT & LOSS REPORT", + "pdf_sales_customers_label": "Sales Customer Report", + "pdf_sales_items_label": "Sales Item Report", + "pdf_tax_summery_label": "Tax Summary Report", + "pdf_income_label": "PAJAMOS", + "pdf_net_profit_label": "NET PROFIT", + "pdf_customer_sales_report": "Sales Report: By Customer", + "pdf_total_sales_label": "VISI PARDAVIMAI", + "pdf_item_sales_label": "Sales Report: By Item", + "pdf_tax_report_label": "TAX REPORT", + "pdf_total_tax_label": "TOTAL TAX", + "pdf_tax_types_label": "Mokesčių tipai", + "pdf_expenses_label": "Išlaidos", + "pdf_bill_to": "Bill to,", + "pdf_ship_to": "Siųsti į,", + "pdf_received_from": "Gauta nuo:", + "pdf_tax_label": "Tax" +} diff --git a/resources/scripts/locales/lv.json b/resources/scripts/locales/lv.json index f670915b4..a2a7f19c0 100644 --- a/resources/scripts/locales/lv.json +++ b/resources/scripts/locales/lv.json @@ -4,18 +4,20 @@ "customers": "Klienti", "items": "Preces", "invoices": "Rēķini", + "recurring-invoices": "Regulārie rēķini", "expenses": "Izdevumi", "estimates": "Aprēķini", "payments": "Maksājumi", "reports": "Atskaites", "settings": "Iestatījumi", "logout": "Iziet", - "users": "Lietotāji" + "users": "Lietotāji", + "modules": "Modules" }, "general": { "add_company": "Pievienot uzņēmumu", "view_pdf": "Apskatīt PDF", - "copy_pdf_url": "Kopēt PDF Url", + "copy_pdf_url": "Kopēt PDF saiti", "download_pdf": "Lejupielādēt PDF", "save": "Saglabāt", "create": "Izveidot", @@ -27,6 +29,9 @@ "to_date": "Datums līdz", "from": "No", "to": "Kam", + "ok": "Labi", + "yes": "Jā", + "no": "Nē", "sort_by": "Kārtot pēc", "ascending": "Augošā secībā", "descending": "Dilstošā secībā", @@ -34,6 +39,7 @@ "body": "Saturs", "message": "Ziņojums", "send": "Nosūtīt", + "preview": "Priekšskatītījums", "go_back": "Atpakaļ", "back_to_login": "Atpakaļ uz autorizāciju?", "home": "Sākums", @@ -54,12 +60,13 @@ "total_amount": "KOPĀ APMAKSAI", "bill_to": "Saņēmējs", "ship_to": "Piegādāt uz", - "due": "Due", + "due": "Līdz", "draft": "Melnraksts", "sent": "Nosūtīts", "all": "Visi", "select_all": "Iezīmēt visu", - "choose_file": "Speid šeit, lai izvēlētos failu", + "select_template": "Izvēlēties veidni", + "choose_file": "Spied šeit, lai izvēlētos failu", "choose_template": "Izvēlaties sagatavi", "choose": "Izvēlies", "remove": "Dzēst", @@ -84,7 +91,15 @@ "retry": "Atkārtot", "choose_note": "Izvēlieties piezīmi", "no_note_found": "Piezīmes nav atrastas", - "insert_note": "Ievietot piezīmi" + "insert_note": "Ievietot piezīmi", + "copied_pdf_url_clipboard": "Saglabāt PDF saiti!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Dokumenti", + "do_you_wish_to_continue": "Vai vēlies turpināt?", + "note": "Piezīme", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { "select_year": "Izvēlieties gadu", @@ -92,7 +107,8 @@ "due_amount": "Apmaksas summa", "customers": "Klienti", "invoices": "Rēķini", - "estimates": "Aprēķini" + "estimates": "Aprēķini", + "payments": "Payments" }, "chart_info": { "total_sales": "Pārdotais", @@ -125,7 +141,7 @@ "name": "Nosaukums", "description": "Apraksts", "percent": "Procenti", - "compound_tax": "Compound Tax" + "compound_tax": "Saliktie nodokļi" }, "global_search": { "search": "Meklēt...", @@ -133,13 +149,33 @@ "users": "Lietotāji", "no_results_found": "Nav atbilstošu rezultātu" }, + "company_switcher": { + "label": "NOMAINĪT UZŅĒMUMU", + "no_results_found": "Nekas netika atrasts", + "add_new_company": "Pievienot jaunu uzņēmumu", + "new_company": "Jauns uzņēmums", + "created_message": "Uzņēmums veiksmīgi pievienots" + }, + "dateRange": { + "today": "Šodien", + "this_week": "Šonedēļ", + "this_month": "Šomēnes", + "this_quarter": "Ceturksnī", + "this_year": "Šogad", + "previous_week": "Iepriekšējā nedēļa", + "previous_month": "Iepriekšējā mēnesī", + "previous_quarter": "Iepriekšējā ceturksnī", + "previous_year": "Iepriekšējā gadā", + "custom": "Pielāgots" + }, "customers": { "title": "Klienti", + "prefix": "Prefikss", "add_customer": "Pievienot klientu", "contacts_list": "Klientu saraksts", "name": "Vārds", "mail": "Pasts", - "statement": "Statement", + "statement": "Paziņojums", "display_name": "Nosaukums", "primary_contact_name": "Galvenā kontakta vārds", "contact_name": "Kontaktpersonas vārds", @@ -149,6 +185,9 @@ "phone": "Telefona numurs", "website": "Mājaslapa", "overview": "Pārskats", + "invoice_prefix": "Rēķina prefikss", + "estimate_prefix": "Aprēķinu prefikss", + "payment_prefix": "Maksājuma prefikss", "enable_portal": "Aktivizēt portālu", "country": "Valsts", "state": "Reģions", @@ -157,6 +196,7 @@ "added_on": "Pievienots", "action": "Darbība", "password": "Parole", + "confirm_password": "Apstipriniet paroli", "street_number": "Adrese", "primary_currency": "Primārā valūta", "description": "Apraksts", @@ -167,13 +207,17 @@ "new_customer": "Jauns klients", "edit_customer": "Rediģēt klientu", "basic_info": "Pamatinformācija", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", "billing_address": "Juridiskā adrese", "shipping_address": "Piegādes adrese", "copy_billing_address": "Kopēt no juridiskās adreses", "no_customers": "Pagaidām nav klientu!", "no_customers_found": "Klienti netika atrasti!", - "no_contact": "No contact", - "no_contact_name": "No contact name", + "no_contact": "Nav kontaktu", + "no_contact_name": "Nav kontaktvārda", "list_of_customers": "Šajā sadaļā būs klientu saraksts.", "primary_display_name": "Klienta nosaukums", "select_currency": "Izvēlieties valūtu", @@ -186,7 +230,9 @@ "confirm_delete": "Jūs nevarēsit atgūt šo klientu un visus saistītos rēķinus, aprēķinus un maksājumus.", "created_message": "Klients izveidots veiksmīgi", "updated_message": "Klients atjaunināts veiksmīgi", - "deleted_message": "Klients veiksmīgi izdzēsts" + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Klients veiksmīgi izdzēsts", + "edit_currency_not_allowed": "Nevar izmainīt valūtu, ja maksājums ir veikts." }, "items": { "title": "Preces", @@ -197,7 +243,7 @@ "added_on": "Pievienots", "price": "Cena", "date_of_creation": "Izveidošanas datums", - "not_selected": "No item selected", + "not_selected": "Nekas netika izvēlēts", "action": "Darbība", "add_item": "Pievienot", "save_item": "Saglabāt", @@ -218,6 +264,8 @@ }, "estimates": { "title": "Aprēķini", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", "estimate": "Aprēķins | Aprēķini", "estimates_list": "Aprēķinu saraksts", "days": "{days} Dienas", @@ -268,9 +316,11 @@ "required": "Šis lauks ir obligāts" }, "accepted": "Apstiprināts", - "rejected": "Rejected", + "rejected": "Noraidīts", + "expired": "Expired", "sent": "Nosūtīts", "draft": "Melnraksts", + "viewed": "Viewed", "declined": "Noraidīts", "new_estimate": "Jauns aprēķins", "add_new_estimate": "Pievienot jaunu aprēķinu", @@ -307,16 +357,19 @@ }, "invoices": { "title": "Rēķini", + "download": "Download", + "pay_invoice": "Pay Invoice", "invoices_list": "Rēķinu saraksts", + "invoice_information": "Invoice Information", "days": "{days} Dienas", "months": "{months} Mēnesis", "years": "{years} Gads", "all": "Visi", "paid": "Apmaksāts", "unpaid": "Neapmaksāts", - "viewed": "Viewed", - "overdue": "Overdue", - "completed": "Completed", + "viewed": "Apskatīts", + "overdue": "Kavēts", + "completed": "Pabeigts", "customer": "KLIENTS", "paid_status": "APMAKSAS STATUS", "ref_no": "REF NR.", @@ -342,10 +395,13 @@ "send_invoice": "Nosūtīt rēķinu", "resend_invoice": "Nosūtīt rēķinu atkārtoti", "invoice_template": "Rēķina sagatave", + "conversion_message": "Rēķins ir veiksmīgi nokopēts", "template": "Sagatave", "mark_as_sent": "Atzīmēt kā nosūtītu", "confirm_send_invoice": "Šis rēķins tiks nosūtīts klientam e-pastā", "invoice_mark_as_sent": "Rēķins tiks atzīmēts kā nosūtīts", + "confirm_mark_as_accepted": "Rēķins tiks atzīmēts kā apstiprināts", + "confirm_mark_as_rejected": "Rēķins tiks atzīmēts kā noraidīts", "confirm_send": "Šis rēķins tiks nosūtīts klientam e-pastā", "invoice_date": "Rēķina datums", "record_payment": "Izveidot maksājumu", @@ -357,6 +413,8 @@ "update_invoice": "Atjaunināt rēķinu", "add_new_tax": "Pievienot jaunu nodokli", "no_invoices": "Vēl nav rēķinu!", + "mark_as_rejected": "Atzīmēt kā noraidītu", + "mark_as_accepted": "Atzīmēt kā apstiprinātu", "list_of_invoices": "Šajā sadaļā būs rēķinu saraksts.", "select_invoice": "Izvēlaties rēķinu", "no_matching_invoices": "Netika atrasts neviens rēķins!", @@ -379,6 +437,7 @@ "select_an_item": "Rakstīt vai spiest, lai izvēlētos", "type_item_description": "Ievadiet preces/pakalpojuma aprakstu (nav obligāti)" }, + "payment_attached_message": "Vienam no atzīmētajiem rēķiniem jau ir pievienots maksājums. Pārliecinieties, ka pievienoti maksājumi ir izdzēsti", "confirm_delete": "Jūs nevarēsiet atgūt šo rēķinu | Jūs nevarēsiet atgūt šos rēķinus", "created_message": "Rēķins izveidots veiksmīgi", "updated_message": "Rēķins ir veiksmīgi atjaunināts", @@ -387,6 +446,115 @@ "something_went_wrong": "kaut kas nogāja greizi", "invalid_due_amount_message": "Rēķina kopējā summa nevar būt mazāka par kopējo apmaksāto summu. Lūdzu atjauniniet rēķinu vai dzēsiet piesaistītos maksājumus, lai turpinātu." }, + "recurring_invoices": { + "title": "Regulārie rēķini", + "invoices_list": "Regulāro rēķinu saraksts", + "days": "{days} Dienas", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Viewed", + "overdue": "Overdue", + "active": "Active", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Sākuma datums", + "due_date": "Rēķina apmaksas datumu", + "record_payment": "Izveidot maksājumu", + "add_new_invoice": "Pievienot jaunu regulāro rēķinu", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, "payments": { "title": "Maksājumi", "payments_list": "Maksājumu saraksts", @@ -431,6 +599,7 @@ "select_a_customer": "Izvēlēties klientu", "expense_title": "Nosaukums", "customer": "Klients", + "currency": "Currency", "contact": "Kontakti", "category": "Kategorija", "from_date": "Datums no", @@ -484,6 +653,51 @@ "enter_password": "Ievadiet paroli", "retype_password": "Atkārtoti ievadiet paroli" }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, "users": { "title": "Lietotāji", "users_list": "Lietotāju saraksts", @@ -508,7 +722,9 @@ "confirm_delete": "Jūs nevarēsiet atgūt šo lietotāju | Jūs nevarēsiet atgūt šos lietotājus", "created_message": "Lietotājs veiksmīgi izveidots", "updated_message": "Lietotājs veiksmīgi labots", - "deleted_message": "Lietotājs veiksmīgi izdzēsts" + "deleted_message": "Lietotājs veiksmīgi izdzēsts", + "select_company_role": "Select Role for {company}", + "companies": "Companies" }, "reports": { "title": "Atskaite", @@ -585,7 +801,12 @@ "file_disk": "Disks", "custom_fields": "Pielāgotie lauki", "payment_modes": "Apmaksas veidi", - "notes": "Piezīmes" + "notes": "Piezīmes", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." }, "title": "Iestatījumi", "setting": "Iestatījumi | Iestatījumi", @@ -647,7 +868,13 @@ "address": "Adrese", "zip": "Pasta indekss", "save": "Saglabāt", - "updated_message": "Uzņēmuma informācija veiksmīgi saglabāta" + "delete": "Delete", + "updated_message": "Uzņēmuma informācija veiksmīgi saglabāta", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" }, "custom_fields": { "title": "Pielāgotie lauki", @@ -658,6 +885,7 @@ "label": "Label", "type": "Type", "name": "Name", + "slug": "Slug", "required": "Required", "placeholder": "Placeholder", "help_text": "Help Text", @@ -683,85 +911,104 @@ "select_relative_date": "Select Relative Date", "ticked_by_default": "Ticked by default", "updated_message": "Custom Field updated successfully", - "added_message": "Custom Field added successfully" + "added_message": "Custom Field added successfully", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." }, "customization": { "customization": "pielāgošana", - "save": "Saglabāt", - "addresses": { - "title": "Adreses", - "section_description": "Jūs varat pielāgot klienta juridiskās adreses un piegādes adreses formātu. (Uzrādās PDF izdrukā). ", - "customer_billing_address": "Klienta norēķinu adrese", - "customer_shipping_address": "Klienta piegādes adrese", - "company_address": "Uzņēmuma adrese", - "insert_fields": "Pievienot lauku", - "contact": "Kontakti", - "address": "Adrese", - "display_name": "Nosaukums", - "primary_contact_name": "Galvenā kontakta vārds", - "email": "E-pasts", - "website": "Mājaslapa", - "name": "Nosaukums", - "country": "Valsts", - "state": "Reģions", - "city": "Pilsēta", - "company_name": "Uzņēmuma nosaukums", - "address_street_1": "Adrese 1", - "address_street_2": "Adrese 2", - "phone": "Telefona numurs", - "zip_code": "Pasta indekss", - "address_setting_updated": "Iestatījumi tika veiksmīgi atjaunināti" - }, "updated_message": "Uzņēmuma informācija veiksmīgi saglabāta", + "save": "Saglabāt", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", "invoices": { "title": "Rēķini", - "notes": "Piezīmes", - "invoice_prefix": "Rēķina prefikss", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", "default_invoice_email_body": "Default Invoice Email Body", - "invoice_settings": "Invoice Settings", - "autogenerate_invoice_number": "Automātiski ģenerēt rēķina numuru", - "autogenerate_invoice_number_desc": "Atspējojiet, ja nevēlaties automātiski ģenerēt rēķinu numurus katru reizi, kad izveidojat jaunu rēķinu.", - "enter_invoice_prefix": "Ievadiet rēķina prefiksu", - "terms_and_conditions": "Lietošanas noteikumi", "company_address_format": "Uzņēmuma adreses formāts", "shipping_address_format": "Piegādes adreses formāts", "billing_address_format": "Maksātāja / Uzņēmuma adreses formāts", - "invoice_settings_updated": "Rēķina iestatījumi ir veiksmīgi atjaunināti" + "invoice_email_attachment": "Send invoices as attachments", + "invoice_email_attachment_setting_description": "Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." }, "estimates": { "title": "Aprēķini", - "estimate_prefix": "Aprēķinu prefikss", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", "default_estimate_email_body": "Noklusējamais Aprēķina e-pasta saturs", - "estimate_settings": "Aprēķinu iestatījumi", - "autogenerate_estimate_number": "Automātiski ģenerēt Aprēķina numuru", - "estimate_setting_description": "Atspējojiet, ja nevēlaties automātiski ģenerēt Aprēķinu numurus katru reizi, kad izveidojat jaunu Aprēķinu.", - "enter_estimate_prefix": "Ievadiet Aprēķina prefiksu", - "estimate_setting_updated": "Aprēķina iestatījumi ir veiksmīgi atjaunināti", "company_address_format": "Uzņēmuma adreses formāts", + "shipping_address_format": "Piegādes adreses formāts", "billing_address_format": "Maksātāja / Uzņēmuma adreses formāts", - "shipping_address_format": "Piegādes adreses formāts" + "estimate_email_attachment": "Send estimates as attachments", + "estimate_email_attachment_setting_description": "Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" }, "payments": { "title": "Maksājumi", - "description": "Pārskaitījumu veidi, maksājumiem", - "payment_prefix": "Maksājuma prefikss", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", "default_payment_email_body": "Noklusējamais Maksājuma e-pasta saturs", - "payment_settings": "Maksājumu iestatījumi", - "autogenerate_payment_number": "Automātiski ģenerēt Maksājuma numuru", - "payment_setting_description": "Atspējojiet, ja nevēlaties automātiski ģenerēt Maksājuma numurus katru reizi, kad izveidojat jaunu Maksājumu.", - "enter_payment_prefix": "Ievadiet Maksājuma prefiksu", - "payment_setting_updated": "Maksājumu iestatījumi ir veiksmīgi atjaunināti", - "payment_modes": "Apmaksas veidi", - "add_payment_mode": "Pievienojiet apmaksas veidu", - "edit_payment_mode": "Labot maksājuma veidu", - "mode_name": "Veida nosaukums", - "payment_mode_added": "Pievienots maksāšanas veids", - "payment_mode_updated": "Labots maksāšanas veids", - "payment_mode_confirm_delete": "Jums nebūs iespējas atgūt šo Maksājuma veidu", - "already_in_use": "Maksājuma veids jau tiek izmantots", - "deleted_message": "Maksājuma veids veiksmīgi izdzēsts", "company_address_format": "Uzņēmuma adreses formāts", - "from_customer_address_format": "No Klienta adreses formāts" + "from_customer_address_format": "No Klienta adreses formāts", + "payment_email_attachment": "Send payments as attachments", + "payment_email_attachment_setting_description": "Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.", + "payment_settings_updated": "Payment Settings updated successfully" }, "items": { "title": "Preces", @@ -809,7 +1056,7 @@ "confirm_password": "Confirm Password" }, "notification": { - "title": "Notification", + "title": "Notifications", "email": "Send Notifications to", "description": "Which email notifications would you like to receive when something changes?", "invoice_viewed": "Invoice viewed", @@ -820,6 +1067,57 @@ "email_save_message": "Email saved successfully", "please_enter_email": "Please Enter Email" }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, "tax_types": { "title": "Tax Types", "add_tax": "Add Tax", @@ -839,6 +1137,18 @@ "confirm_delete": "Jums nebūs iespējas atgūt šo Nodokļa veidu", "already_in_use": "Nodoklis jau tiek izmantots" }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, "expense_category": { "title": "Izdevumu kategorijas", "action": "Darbība", @@ -863,6 +1173,8 @@ "discount_setting": "Atlaižu iestatījumi", "discount_per_item": "Atlaide par preci/pakalpojumu ", "discount_setting_description": "Iespējot šo, lai piešķirtu atlaides individuālām rēķina precēm. Pēc noklusējuma, atlaide tiek piemērota rēķinam.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", "save": "Saglabāt", "preference": "Iestatījumi | Iestatījumi", "general_settings": "Noklusējamie iestatījumi sistēmai.", @@ -870,7 +1182,14 @@ "select_language": "Izvēlieties valodu", "select_time_zone": "Izvēlaties laika joslu", "select_date_format": "Izvēlaties datuma formātu", - "select_financial_year": "Izvēlaties finanšu gadu" + "select_financial_year": "Izvēlaties finanšu gadu", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" }, "update_app": { "title": "Atjaunināt App", @@ -888,10 +1207,12 @@ "download_zip_file": "Lejupielādēt ZIP failu", "unzipping_package": "Atarhivē Zip failu", "copying_files": "Notiek failu kopēšana", + "deleting_files": "Deleting Unused files", "running_migrations": "Notiek migrācijas", "finishing_update": "Pabeidz atjauninājumu", "update_failed": "Atjaunināšana neizdevās", - "update_failed_text": "Atvainojiet! Jūsu atjauninājuma laikā notika kļūda: {step}. solī" + "update_failed_text": "Atvainojiet! Jūsu atjauninājuma laikā notika kļūda: {step}. solī", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." }, "backup": { "title": "Backup | Backups", @@ -957,6 +1278,7 @@ "default_driver": "Default Driver", "is_default": "IR NOKLUSĒJAMS", "set_default_disk": "Iestatiet noklusējuma disku", + "set_default_disk_confirm": "This disk will be set as default and all the new PDFs will be saved on this disk", "success_set_default_disk": "Disks ir veiksmīgi iestatīts kā noklusējums", "save_pdf_to_disk": "Saglabāt PDF uz diska", "disk_setting_description": " Iespējot šo, ja vēlaties lai katru rēķina, aprēķina un maksājuma izdrukas PDF kopiju saglabātu diskā. Šī opcija samazinās ielādēšanas laiku, kad apskatīsiet PDF.", @@ -972,6 +1294,18 @@ "disk_variables_save_successfully": "Disks konfigurēts veiksmīgi", "disk_variables_save_error": "Diska konfigurācija neveiksmīga.", "invalid_disk_credentials": "Nepareizi pieejas dati atzīmētajam diskam" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { @@ -989,6 +1323,7 @@ "logo_preview": "Logo", "preferences": "Iestatījumi", "preferences_desc": "Noklusējamie iestatījumi sistēmai.", + "currency_set_alert": "The company's currency cannot be changed later.", "country": "Valsts", "state": "Reģions", "city": "Pilsēta", @@ -1026,6 +1361,15 @@ "permission_confirm_desc": "Folder permission check failed", "permission_desc": "Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions." }, + "verify_domain": { + "title": "Domain Verification", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Verify Now", + "success": "Domain Verify Successfully.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verify And Continue" + }, "mail": { "host": "Mail Host", "port": "Mail Port", @@ -1076,6 +1420,7 @@ "not_yet": "Not yet? Send it again", "password_min_length": "Password must contain {count} characters", "name_min_length": "Name must have at least {count} letters.", + "prefix_min_length": "Prefix must have at least {count} letters.", "enter_valid_tax_rate": "Enter valid tax rate", "numbers_only": "Numbers Only.", "characters_only": "Characters Only.", @@ -1083,13 +1428,14 @@ "password_length": "Password must be {count} character long.", "qty_must_greater_than_zero": "Quantity must be greater than zero.", "price_greater_than_zero": "Price must be greater than zero.", - "payment_greater_than_zero": "Payment must be greater than zero.", + "payment_greater_than_zero": "Payment must be greater than zero.", "payment_greater_than_due_amount": "Entered Payment is more than due amount of this invoice.", "quantity_maxlength": "Quantity should not be greater than 20 digits.", "price_maxlength": "Price should not be greater than 20 digits.", "price_minvalue": "Price should be greater than 0.", "amount_maxlength": "Amount should not be greater than 20 digits.", "amount_minvalue": "Amount should be greater than 0.", + "discount_maxlength": "Discount should not be greater than max discount", "description_maxlength": "Description should not be greater than 255 characters.", "subject_maxlength": "Subject should not be greater than 100 characters.", "message_maxlength": "Message should not be greater than 255 characters.", @@ -1098,7 +1444,38 @@ "address_maxlength": "Address should not be greater than 255 characters.", "ref_number_maxlength": "Ref Number should not be greater than 255 characters.", "prefix_maxlength": "Prefix should not be greater than 5 characters.", - "something_went_wrong": "something went wrong" + "something_went_wrong": "something went wrong", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, "pdf_estimate_label": "Aprēķins", "pdf_estimate_number": "Aprēķina numurs", @@ -1140,5 +1517,5 @@ "pdf_bill_to": "Saņēmējs,", "pdf_ship_to": "Piegādes adrese,", "pdf_received_from": "Saņemts no:", - "pdf_tax_label": "Nodoklis" + "pdf_tax_label": "Tax" } diff --git a/resources/scripts/locales/nl.json b/resources/scripts/locales/nl.json index 2f0e3b22e..991a867de 100644 --- a/resources/scripts/locales/nl.json +++ b/resources/scripts/locales/nl.json @@ -4,13 +4,15 @@ "customers": "Klanten", "items": "Artikelen", "invoices": "Facturen", + "recurring-invoices": "Periodieke factuur", "expenses": "Uitgaven", "estimates": "Offertes", "payments": "Betalingen", "reports": "Rapporten", "settings": "Instellingen", "logout": "Uitloggen", - "users": "Gebruikers" + "users": "Gebruikers", + "modules": "Modules" }, "general": { "add_company": "Bedrijf toevoegen", @@ -19,21 +21,25 @@ "download_pdf": "Download PDF", "save": "Opslaan", "create": "Maak", - "cancel": "annuleren", + "cancel": "Annuleren", "update": "Bijwerken", - "deselect": "Maak de selectie ongedaan", - "download": "Downloaden", - "from_date": "Van datum", - "to_date": "Tot datum", - "from": "Van", - "to": "Naar", + "deselect": "Deselecteren", + "download": "Download", + "from_date": "Vanaf datum", + "to_date": "T/m datum", + "from": "Vanaf", + "to": "Naar.", + "ok": "Oké.", + "yes": "Ja.", + "no": "Nee.", "sort_by": "Sorteer op", "ascending": "Oplopend", "descending": "Aflopend", "subject": "Onderwerp", "body": "Inhoud", - "message": "Bericht", + "message": "Bericht.", "send": "Verstuur", + "preview": "Voorbeeld", "go_back": "Ga terug", "back_to_login": "Terug naar Inloggen?", "home": "Home", @@ -52,19 +58,18 @@ "percentage": "Percentage", "tax": "BELASTING", "total_amount": "TOTAALBEDRAG", - "bill_to": "Rekening naar", + "bill_to": "Factuur aan", "ship_to": "Verzend naar", "due": "Openstaand", "draft": "Concept", "sent": "Verzonden", "all": "Alles", "select_all": "Selecteer alles", + "select_template": "Sjabloon selecteren", "choose_file": "Klik hier om een bestand te kiezen", "choose_template": "Kies een sjabloon", "choose": "Kiezen", "remove": "Verwijderen", - "powered_by": "Mogelijk gemaakt door", - "bytefury": "Bytefury", "select_a_status": "Selecteer een status", "select_a_tax": "Selecteer een belasting", "search": "Zoeken", @@ -86,7 +91,15 @@ "retry": "Retr", "choose_note": "Kies notitie", "no_note_found": "Geen notitie gevonden", - "insert_note": "Notitie invoegen" + "insert_note": "Notitie invoegen", + "copied_pdf_url_clipboard": "PDF link naar klembord gekopieerd!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Documenten", + "do_you_wish_to_continue": "Wilt u Doorgaan?", + "note": "Notitie", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { "select_year": "Selecteer jaar", @@ -94,7 +107,8 @@ "due_amount": "Openstaand bedrag", "customers": "Klanten", "invoices": "Facturen", - "estimates": "Offertes" + "estimates": "Offertes", + "payments": "Payments" }, "chart_info": { "total_sales": "Verkoop", @@ -135,8 +149,28 @@ "users": "Gebruikers", "no_results_found": "Geen zoekresultaten" }, + "company_switcher": { + "label": "VERANDER BEDRIJF", + "no_results_found": "Geen resultaten gevonden", + "add_new_company": "Nieuw bedrijf toevoegen", + "new_company": "Nieuw bedrijf", + "created_message": "Bedrijf met succes aangemaakt" + }, + "dateRange": { + "today": "Vandaag", + "this_week": "Deze week", + "this_month": "Deze maand", + "this_quarter": "Dit kwartaal", + "this_year": "Dit jaar", + "previous_week": "Vorige week", + "previous_month": "Vorige maand", + "previous_quarter": "Vorig kwartaal", + "previous_year": "Vorig jaar", + "custom": "Aangepast" + }, "customers": { "title": "Klanten", + "prefix": "Voorvoegsel", "add_customer": "Klant toevoegen", "contacts_list": "Klantenlijst", "name": "Naam", @@ -151,6 +185,9 @@ "phone": "Telefoon", "website": "Website", "overview": "Overzicht", + "invoice_prefix": "Factuurvoorvoegsel", + "estimate_prefix": "Schatting voorvoegsel", + "payment_prefix": "Betalingsvoorvoegsel", "enable_portal": "Activeer Portaal", "country": "Land", "state": "Provincie", @@ -159,6 +196,7 @@ "added_on": "Toegevoegd", "action": "Actie", "password": "Wachtwoord", + "confirm_password": "Bevestig wachtwoord", "street_number": "Huisnummer", "primary_currency": "Primaire valuta", "description": "Omschrijving", @@ -169,13 +207,17 @@ "new_customer": "Nieuwe klant", "edit_customer": "Klant bewerken", "basic_info": "Basis informatie", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", "billing_address": "factuur adres", "shipping_address": "Verzendingsadres", "copy_billing_address": "Kopiëren van facturering", "no_customers": "Nog geen klanten!", "no_customers_found": "Geen klanten gevonden!", - "no_contact": "No contact", - "no_contact_name": "No contact name", + "no_contact": "Geen contact", + "no_contact_name": "Geen contactnaam", "list_of_customers": "Hier vind je jouw klanten terug.", "primary_display_name": "Primaire weergavenaam", "select_currency": "Selecteer valuta", @@ -188,7 +230,9 @@ "confirm_delete": "Deze klant en alle gerelateerde facturen, offertes en betalingen worden permanent verwijderd. | Deze klanten en alle gerelateerde facturen, offertes en betalingen worden permanent verwijderd.", "created_message": "Klant succesvol aangemaakt", "updated_message": "Klant succesvol geüpdatet", - "deleted_message": "Klant succesvol verwijderd | Klanten zijn succesvol verwijderd" + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Klant succesvol verwijderd | Klanten zijn succesvol verwijderd", + "edit_currency_not_allowed": "Kan valuta niet wijzigen zodra de transacties zijn aangemaakt." }, "items": { "title": "Artikelen", @@ -199,7 +243,7 @@ "added_on": "Toegevoegd", "price": "Prijs", "date_of_creation": "Datum van creatie", - "not_selected": "No item selected", + "not_selected": "Geen item geselecteerd", "action": "Actie", "add_item": "Voeg item toe", "save_item": "Item opslaan", @@ -220,6 +264,8 @@ }, "estimates": { "title": "Offertes", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", "estimate": "Offerte | Offertes", "estimates_list": "Lijst met offertes", "days": "{dagen} dagen", @@ -241,7 +287,7 @@ "contact": "Contact", "add_item": "Voeg een item toe", "date": "Datum", - "due_date": "Opleveringsdatum", + "due_date": "Vervaldatum", "expiry_date": "Vervaldatum", "status": "Status", "add_tax": "Belasting toevoegen", @@ -254,7 +300,7 @@ "mark_as_sent": "Markeren als verzonden", "send_estimate": "Verzend offerte", "resend_estimate": "Offerte opnieuw verzenden", - "record_payment": "Bestaling registreren", + "record_payment": "Betaling registreren", "add_estimate": "Offerte toevoegen", "save_estimate": "Bewaar offerte", "confirm_conversion": "Deze offerte wordt gebruikt om een nieuwe factuur te maken.", @@ -270,9 +316,11 @@ "required": "Veld is vereist" }, "accepted": "Geaccepteerd", - "rejected": "Rejected", + "rejected": "Afgewezen", + "expired": "Expired", "sent": "Verzonden", "draft": "Concept", + "viewed": "Viewed", "declined": "Geweigerd", "new_estimate": "Nieuwe offerte", "add_new_estimate": "Offerte toevoegen", @@ -309,16 +357,19 @@ }, "invoices": { "title": "Facturen", + "download": "Download", + "pay_invoice": "Pay Invoice", "invoices_list": "Facturenlijst", + "invoice_information": "Invoice Information", "days": "{dagen} dagen", "months": "{months} Maand", "years": "{jaar} jaar", "all": "Allemaal", "paid": "Betaald", "unpaid": "Onbetaald", - "viewed": "Viewed", - "overdue": "Overdue", - "completed": "Completed", + "viewed": "Bekeken", + "overdue": "Over tijd", + "completed": "Voltooid", "customer": "Klant", "paid_status": "Betaling", "ref_no": "REF NR.", @@ -334,7 +385,7 @@ "contact": "Contact", "add_item": "Voeg een item toe", "date": "Datum", - "due_date": "Opleveringsdatum", + "due_date": "Vervaldatum", "status": "Status", "add_tax": "Belasting toevoegen", "amount": "Bedrag", @@ -344,13 +395,16 @@ "send_invoice": "Factuur verzenden", "resend_invoice": "Factuur opnieuw verzenden", "invoice_template": "Factuursjabloon", + "conversion_message": "Factuur succesvol gekloond", "template": "Sjabloon", "mark_as_sent": "Markeer als verzonden", "confirm_send_invoice": "Deze factuur wordt via e-mail naar de klant gestuurd", "invoice_mark_as_sent": "Deze factuur wordt gemarkeerd als verzonden", + "confirm_mark_as_accepted": "Deze offerte wordt gemarkeerd als Geaccepteerd", + "confirm_mark_as_rejected": "Deze factuur wordt gemarkeerd als Afgewezen", "confirm_send": "Deze factuur wordt via e-mail naar de klant gestuurd", "invoice_date": "Factuur datum", - "record_payment": "Bestaling registreren", + "record_payment": "Betaling registreren", "add_new_invoice": "Nieuwe factuur toevoegen", "update_expense": "Onkosten bijwerken", "edit_invoice": "Factuur bewerken", @@ -359,6 +413,8 @@ "update_invoice": "Factuur bijwerken", "add_new_tax": "Nieuwe belasting toevoegen", "no_invoices": "Nog geen facturen!", + "mark_as_rejected": "Markeer als afgewezen", + "mark_as_accepted": "Markeer als geaccepteerd", "list_of_invoices": "Hier vind je jouw facturen terug.", "select_invoice": "Selecteer Factuur", "no_matching_invoices": "Er zijn geen overeenkomende facturen!", @@ -381,6 +437,7 @@ "select_an_item": "Typ of klik om een item te selecteren", "type_item_description": "Type Item Beschrijving (optioneel)" }, + "payment_attached_message": "Aan een van de geselecteerde facturen is al een betaling gekoppeld. Zorg ervoor dat u eerst de bijgevoegde betalingen verwijdert om door te gaan met de verwijdering", "confirm_delete": "Deze factuur wordt permanent verwijderd | Deze facturen worden permanent verwijderd", "created_message": "Factuur succesvol aangemaakt", "updated_message": "Factuur succesvol bijgewerkt", @@ -389,6 +446,115 @@ "something_went_wrong": "Er is iets fout gegaan", "invalid_due_amount_message": "Het totale factuurbedrag mag niet lager zijn dan het totale betaalde bedrag voor deze factuur. Werk de factuur bij of verwijder de bijbehorende betalingen om door te gaan." }, + "recurring_invoices": { + "title": "Periodieke facturen", + "invoices_list": "Periodieke facturen lijst", + "days": "{days} dagen", + "months": "{months} maanden", + "years": "{years} jaar", + "all": "Alles", + "paid": "Betaald", + "unpaid": "Onbetaald", + "viewed": "Bekeken", + "overdue": "Achterstallig", + "active": "Actief", + "completed": "Voltooid", + "customer": "KLANT", + "paid_status": "BETAALD STATUS", + "ref_no": "REF NR.", + "number": "NUMMER", + "amount_due": "Bedrag", + "partially_paid": "Gedeeltelijk betaald", + "total": "Totaal", + "discount": "Korting", + "sub_total": "Subtotaal", + "invoice": "Periodieke factuur / Periodieke facturen", + "invoice_number": "Periodieke facturen", + "next_invoice_date": "Volgende factuurdatum", + "ref_number": "Referentie nummer", + "contact": "Contact", + "add_item": "Item toevoegen", + "date": "Datum", + "limit_by": "Beperken door", + "limit_date": "Uiterste datum", + "limit_count": "Limiet aantal", + "count": "Aantal", + "status": "Status", + "select_a_status": "Selecteer een status", + "working": "Bezig", + "on_hold": "Niet actief", + "complete": "Voltooid", + "add_tax": "Belasting toevoegen", + "amount": "Bedrag", + "action": "Actie", + "notes": "Opmerkingen", + "view": "Bekijken", + "basic_info": "Basis informatie", + "send_invoice": "Verstuur periodieke factuur", + "auto_send": "Automatisch verzenden", + "resend_invoice": "Verstuur periodieke factuur opnieuw", + "invoice_template": "Periodieke factuur sjabloon", + "conversion_message": "Periodieke factuur succesvol gekopieerd", + "template": "Sjabloon", + "mark_as_sent": "Markeer als verzonden", + "confirm_send_invoice": "Deze periodieke factuur wordt via e-mail naar de klant gestuurd", + "invoice_mark_as_sent": "Deze periodieke factuur wordt gemarkeerd als verzonden", + "confirm_send": "Deze terugkerende factuur wordt via e-mail naar de klant gestuurd", + "starts_at": "Startdatum", + "due_date": "Vervaldatum factuur", + "record_payment": "Betaling registreren", + "add_new_invoice": "Nieuwe periodieke factuur toevoegen", + "update_expense": "Onkosten bijwerken", + "edit_invoice": "Periodieke factuur bewerken", + "new_invoice": "Nieuwe periodieke factuur toevoegen", + "send_automatically": "Automatisch verzenden", + "send_automatically_desc": "Schakel dit in als u de factuur automatisch aan de klant wilt sturen wanneer deze is aangemaakt.", + "save_invoice": "Bewaar periodieke factuur", + "update_invoice": "Periodieke factuur bewerken", + "add_new_tax": "Nieuwe btw toevoegen", + "no_invoices": "Nog geen periodieke facturen!", + "mark_as_rejected": "Markeer als afgewezen", + "mark_as_accepted": "Markeer als geaccepteerd", + "list_of_invoices": "Hier vind je de periodieke facturen terug.", + "select_invoice": "Selecteer Factuur", + "no_matching_invoices": "Er zijn geen overeenkomende periodieke facturen!", + "mark_as_sent_successfully": "Periodieke factuur gemarkeerd als succesvol verzonden", + "invoice_sent_successfully": "Periodieke factuur succesvol verzonden", + "cloned_successfully": "Terugkerende factuur succesvol gekopieerd", + "clone_invoice": "Kopieer periodieke factuur", + "confirm_clone": "Deze periodieke factuur wordt gekopieerd naar een nieuwe periodieke factuur", + "item": { + "title": "Item titel", + "description": "Beschrijving", + "quantity": "Aantal", + "price": "Prijs", + "discount": "Korting", + "total": "Totaal", + "total_discount": "Totale korting", + "sub_total": "Subtotaal", + "tax": "Btw", + "amount": "Bedrag", + "select_an_item": "Typ of klik om een item te selecteren", + "type_item_description": "Type item beschrijving (optioneel)" + }, + "frequency": { + "title": "Frequentie", + "select_frequency": "Frequentie selecteren", + "minute": "Minuut", + "hour": "Uur", + "day_month": "Dag van de maand", + "month": "Maand", + "day_week": "Dag van de week" + }, + "confirm_delete": "Deze factuur wordt permanent verwijderd | Deze facturen worden permanent verwijderd", + "created_message": "Terugkerende factuur succesvol gecreëerd", + "updated_message": "Terugkerende factuur succesvol bijgewerkt", + "deleted_message": "Periodieke factuur succesvol verwijderd | Periodieke facturen succesvol verwijderd", + "marked_as_sent_message": "Periodieke factuur gemarkeerd als succesvol verzonden", + "user_email_does_not_exist": "E-mailadres van gebruiker bestaat niet", + "something_went_wrong": "er is iets fout gegaan", + "invalid_due_amount_message": "Het totale factuurbedrag mag niet lager zijn dan het totale betaalde bedrag voor deze factuur. Werk de factuur bij of verwijder de bijbehorende betalingen om door te gaan." + }, "payments": { "title": "Betalingen", "payments_list": "Betalingslijst", @@ -412,8 +578,8 @@ "update_payment": "Betaling bijwerken", "payment": "Betaling | Betalingen", "no_payments": "Nog geen betalingen!", - "not_selected": "Not selected", - "no_invoice": "No invoice", + "not_selected": "Niet geselecteerd", + "no_invoice": "Geen factuur", "no_matching_payments": "Er zijn geen overeenkomende betalingen!", "list_of_payments": "Hier vind je jouw betalingen terug.", "select_payment_mode": "Selecteer betalingswijze", @@ -433,6 +599,7 @@ "select_a_customer": "Selecteer een klant", "expense_title": "Titel", "customer": "Klant", + "currency": "Valuta", "contact": "Contact", "category": "Categorie", "from_date": "Van datum", @@ -442,7 +609,7 @@ "receipt": "Bon", "amount": "Bedrag", "action": "Actie", - "not_selected": "Not selected", + "not_selected": "Niet geselecteerd", "note": "Notitie", "category_id": "Categorie ID", "date": "Uitgavendatum", @@ -486,6 +653,51 @@ "enter_password": "Voer wachtwoord in", "retype_password": "Geef nogmaals het wachtwoord" }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, "users": { "title": "Gebruikers", "users_list": "Gebruikerslijst", @@ -510,7 +722,9 @@ "confirm_delete": "Je kunt deze gebruiker later niet herstellen | Je kunt deze gebruikers later niet herstellen", "created_message": "Gebruiker succesvol aangemaakt", "updated_message": "Gebruiker met succes bijgewerkt", - "deleted_message": "Gebruiker succesvol verwijderd | Gebruikers succesvol verwijderd" + "deleted_message": "Gebruiker succesvol verwijderd | Gebruikers succesvol verwijderd", + "select_company_role": "Selecteer rol voor {company}", + "companies": "Bedrijven" }, "reports": { "title": "Verslag doen van", @@ -548,7 +762,7 @@ "invoices": { "invoice": "Factuur", "invoice_date": "Factuur datum", - "due_date": "Opleveringsdatum", + "due_date": "Vervaldatum", "amount": "Bedrag", "contact_name": "Contactnaam", "status": "Status" @@ -556,7 +770,7 @@ "estimates": { "estimate": "Offerte", "estimate_date": "Offerte Datum", - "due_date": "Opleveringsdatum", + "due_date": "Vervaldatum", "estimate_number": "Offerte nummer", "ref_number": "Referentie nummer", "amount": "Bedrag", @@ -587,7 +801,12 @@ "file_disk": "Bestandsopslag", "custom_fields": "Aangepaste velden", "payment_modes": "Betaalmethodes", - "notes": "Opmerkingen" + "notes": "Opmerkingen", + "exchange_rate": "Wisselkoers", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." }, "title": "Instellingen", "setting": "Instellingen | Instellingen", @@ -649,7 +868,13 @@ "address": "Adres", "zip": "Postcode", "save": "Opslaan", - "updated_message": "Bedrijfsinformatie succesvol bijgewerkt" + "delete": "Verwijderen", + "updated_message": "Bedrijfsinformatie succesvol bijgewerkt", + "delete_company": "Bedrijf verwijderen", + "delete_company_description": "Zodra u uw bedrijf verwijdert, verliest u alle gegevens en bestanden die eraan gekoppeld zijn.", + "are_you_absolutely_sure": "Weet u het zeker?", + "delete_company_modal_desc": "Deze actie kan niet ongedaan worden gemaakt. Dit zal {company} en alle bijbehorende gegevens permanent verwijderen.", + "delete_company_modal_label": "Typ {company} om te bevestigen" }, "custom_fields": { "title": "Aangepaste velden", @@ -660,12 +885,13 @@ "label": "Label", "type": "Type", "name": "Naam", + "slug": "Slug", "required": "Verplicht", "placeholder": "Tijdelijke plaatshouder", "help_text": "Hulp Text", "default_value": "Standaard waarde", "prefix": "Voorvoegsel", - "starting_number": "Starting Number", + "starting_number": "Startnummer", "model": "Model", "help_text_description": "Voer tekst in om gebruikers te helpen het doel van dit aangepaste veld te begrijpen.", "suffix": "Achtervoegsel", @@ -685,85 +911,104 @@ "select_relative_date": "Selecteer relatieve datum", "ticked_by_default": "Standaard aangevinkt", "updated_message": "Aangepast veld is succesvol aangepast", - "added_message": "Aangepast veld is succesvol toegevoegd" + "added_message": "Aangepast veld is succesvol toegevoegd", + "press_enter_to_add": "Druk op Enter om een nieuwe optie toe te voegen", + "model_in_use": "Kan model niet bijwerken voor velden die al in gebruik zijn.", + "type_in_use": "Kan type niet bijwerken voor velden die al in gebruik zijn." }, "customization": { "customization": "aanpassen", - "save": "Opslaan", - "addresses": { - "title": "Adressen", - "section_description": "U kunt het factuuradres van de klant en het verzendadres van de klant instellen (alleen weergegeven in PDF).", - "customer_billing_address": "Factuuradres van klant", - "customer_shipping_address": "Klant verzendadres", - "company_address": "bedrijfsadres", - "insert_fields": "Velden invoegen", - "contact": "Contact", - "address": "Adres", - "display_name": "Weergavenaam", - "primary_contact_name": "Naam primaire contactpersoon", - "email": "E-mail", - "website": "Website", - "name": "Naam", - "country": "Land", - "state": "Provincie", - "city": "Stad", - "company_name": "Bedrijfsnaam", - "address_street_1": "Adres Straat 1", - "address_street_2": "Adresstraat 2", - "phone": "Telefoon", - "zip_code": "Postcode", - "address_setting_updated": "Adresinstelling is bijgewerkt" - }, "updated_message": "Bedrijfsinformatie succesvol bijgewerkt", + "save": "Opslaan", + "insert_fields": "Velden invoegen", + "learn_custom_format": "Leer hoe je een aangepast formaat kunt gebruiken", + "add_new_component": "Component toevoegen", + "component": "Component", + "Parameter": "Parameter", + "series": "Reeksen", + "series_description": "Om een statische voorvoegsel/postfix zoals 'INV' in uw hele bedrijf in te stellen. Het ondersteunt tekenlengte tot 4 tekens.", + "series_param_label": "Serie Waarde", + "delimiter": "Scheidingsteken", + "delimiter_description": "Enkel teken voor het opgeven van de grens tussen 2 verschillende componenten. Standaard is het ingesteld op -", + "delimiter_param_label": "Scheidingsteken waarde", + "date_format": "Datumformaat", + "date_format_description": "Een lokaal datum- en tijdveld dat een formaatparameter accepteert. Het standaardformaat: 'Y' geeft het huidige jaar weer.", + "date_format_param_label": "Formaat", + "sequence": "Volgnummer", + "sequence_description": "Opeenvolgende nummering voor uw bedrijf. U kunt de lengte opgeven op de aangegeven parameter.", + "sequence_param_label": "Volgnummerlengte", + "customer_series": "Voorvoegsel", + "customer_series_description": "Om een andere voor- of achtervoegsel voor elke klant in te stellen.", + "customer_sequence": "Klantnummer", + "customer_sequence_description": "Een volgnummer voor elk van uw klanten.", + "customer_sequence_param_label": "Klantnummerlengte", + "random_sequence": "Willekeurige reeks", + "random_sequence_description": "Willekeurige alfanumerieke tekenreeks. U kunt de lengte opgeven op de aangegeven parameters.", + "random_sequence_param_label": "Volgnummerlengte", "invoices": { "title": "Facturen", - "notes": "Opmerkingen", - "invoice_prefix": "Factuurvoorvoegsel", + "invoice_number_format": "Factuurnummer indeling", + "invoice_number_format_description": "Wijzig hoe uw factuurnummer automatisch wordt gegenereerd bij het aanmaken van een nieuwe factuur.", + "preview_invoice_number": "Voorbeeldweergave factuurnummer indeling", + "due_date": "Vervaldatum", + "due_date_description": "Geef aan hoe de vervaldatum automatisch wordt ingesteld wanneer u een factuur aanmaakt.", + "due_date_days": "Factuur verlopen na dagen", + "set_due_date_automatically": "Vervaldatum automatisch vullen", + "set_due_date_automatically_description": "Schakel dit in als u automatisch een vervaldatum wilt instellen wanneer u een nieuwe factuur aanmaakt.", + "default_formats": "Standaard opmaak", + "default_formats_description": "Onderstaand formaat wordt gebruikt om de velden automatisch in te vullen bij het aanmaken van facturen.", "default_invoice_email_body": "Standaard factuur email text", - "invoice_settings": "Factuurinstellingen", - "autogenerate_invoice_number": "Factuurnummer automatisch genereren", - "autogenerate_invoice_number_desc": "Schakel dit uit als u niet automatisch factuurnummers wilt genereren telkens wanneer u een nieuwe factuur maakt.", - "enter_invoice_prefix": "Voer het factuurvoorvoegsel in", - "terms_and_conditions": "Voorwaarden", "company_address_format": "Bedrijfsadres format", "shipping_address_format": "Verzendadres format", "billing_address_format": "Factuuradres format", - "invoice_settings_updated": "Factuurinstelling succesvol bijgewerkt" + "invoice_email_attachment": "Stuur factuur als bijlage", + "invoice_email_attachment_setting_description": "Schakel dit in als u facturen als e-mailbijlage wilt verzenden. Houd er rekening mee dat de knop 'Factuur bekijken' in e-mails niet meer wordt weergegeven wanneer deze is ingeschakeld.", + "invoice_settings_updated": "Factuurinstelling succesvol bijgewerkt", + "retrospective_edits": "Retrospectieve bewerkingen", + "allow": "Toestaan", + "disable_on_invoice_partial_paid": "Uitschakelen nadat gedeeltelijke betaling is opgeslagen", + "disable_on_invoice_paid": "Uitschakelen nadat volledige betaling is opgenomen", + "disable_on_invoice_sent": "Uitschakelen nadat factuur is verzonden", + "retrospective_edits_description": " Op basis van de wetten van uw land of uw voorkeur, kunt u gebruikers beperken om afgeronde facturen te bewerken." }, "estimates": { "title": "Offertes", - "estimate_prefix": "Voorvoegsel schatten", + "estimate_number_format": "Offerte nummer formaat", + "estimate_number_format_description": "Aanpassen hoe uw offertes nummer automatisch wordt gegenereerd als u een nieuwe offerte aanmaakt.", + "preview_estimate_number": "Voorbeeld offertes nummer", + "expiry_date": "Vervaldatum", + "expiry_date_description": "Geef aan hoe de vervaldatum automatisch wordt ingesteld wanneer u een offerte aanmaakt.", + "expiry_date_days": "Offerte vervalt over dagen", + "set_expiry_date_automatically": "Automatisch vervaldatum instellen", + "set_expiry_date_automatically_description": "Schakel dit in als u automatisch de vervaldatum wilt instellen wanneer u een nieuwe schatting maakt.", + "default_formats": "Standaardformaat", + "default_formats_description": "Onderstaand formaten wordt gebruikt om de velden automatisch in te vullen bij het aanmaken van offerte.", "default_estimate_email_body": "Standaard offerte email text", - "estimate_settings": "Instellingen schatten", - "autogenerate_estimate_number": "Automatisch geschat nummer genereren", - "estimate_setting_description": "Schakel dit uit als u niet automatisch offertesaantallen wilt genereren telkens wanneer u een nieuwe offerte maakt.", - "enter_estimate_prefix": "Voer het prefixnummer in", - "estimate_setting_updated": "Instelling Offerte succesvol bijgewerkt", "company_address_format": "Bedrijfsadres format", + "shipping_address_format": "Verzendadres format", "billing_address_format": "Factuuradres Format", - "shipping_address_format": "Verzendadres format" + "estimate_email_attachment": "Stuur offerte als bijlage", + "estimate_email_attachment_setting_description": "Schakel dit in als u de offertes als e-mailbijlage wilt verzenden. Houd er rekening mee dat de knop 'Bekijk offerte' in e-mails niet meer wordt weergegeven wanneer deze is ingeschakeld.", + "estimate_settings_updated": "Instelling Offerte succesvol bijgewerkt", + "convert_estimate_options": "Offerte omzetten actie", + "convert_estimate_description": "Specificeer wat er gebeurt met de offerte nadat deze omgezet is naar een factuur.", + "no_action": "Geen handeling", + "delete_estimate": "Schatting verwijderen", + "mark_estimate_as_accepted": "Markeren offerte als geaccepteerd" }, "payments": { "title": "Betalingen", - "description": "Modes of transaction for payments", - "payment_prefix": "Betalingsvoorvoegsel", - "default_payment_email_body": "Default Payment Email Body", - "payment_settings": "Betalingsinstellingen", - "autogenerate_payment_number": "Betalingsnummer automatisch genereren", - "payment_setting_description": "Schakel dit uit als u niet elke keer dat u een nieuwe betaling aanmaakt, automatisch betalingsnummers wilt genereren.", - "enter_payment_prefix": "Voer het betalingsvoorvoegsel in", - "payment_setting_updated": "Betalingsinstelling geüpdatet", - "payment_modes": "Betaalmethodes", - "add_payment_mode": "Betaalmodus toevoegen", - "edit_payment_mode": "Betaalmodus bewerken", - "mode_name": "Mode naam", - "payment_mode_added": "Betaalwijze toegevoegd", - "payment_mode_updated": "Betalingsmodus bijgewerkt", - "payment_mode_confirm_delete": "U kunt deze betalingsmodus niet herstellen", - "already_in_use": "De betalingsmodus is al in gebruik", - "deleted_message": "Betaalwijze succesvol verwijderd", + "payment_number_format": "Betalingnummer formaat", + "payment_number_format_description": "Aanpassen hoe uw offertes nummer automatisch wordt gegenereerd als u een nieuwe offerte aanmaakt.", + "preview_payment_number": "Bekijk betalingsnummer", + "default_formats": "Standaard formaten", + "default_formats_description": "Onderstaande formaten worden gebruikt om de velden automatisch in te vullen bij het maken van betalingen.", + "default_payment_email_body": "Standaard format betalingsmail", "company_address_format": "Bedrijfsadres format", - "from_customer_address_format": "Van klant adres formaat" + "from_customer_address_format": "Van klant adres formaat", + "payment_email_attachment": "Stuur betaalbewijs als bijlage", + "payment_email_attachment_setting_description": "Schakel dit in als u de betalingsbewijzen als e-mailbijlage wilt verzenden. Houd er rekening mee dat de knop 'Betaling bekijken' in e-mails niet meer wordt weergegeven wanneer deze is ingeschakeld.", + "payment_settings_updated": "Betalingsinstelling geüpdatet" }, "items": { "title": "Artikelen", @@ -822,6 +1067,57 @@ "email_save_message": "E-mail succesvol opgeslagen", "please_enter_email": "Voer e-mailadres in" }, + "roles": { + "title": "Rollen", + "description": "Beheer de rollen en machtigingen van dit bedrijf", + "save": "Opslaan", + "add_new_role": "Nieuwe rol toevoegen", + "role_name": "Rol naam", + "added_on": "Toegevoegd op", + "add_role": "Rol toevoegen", + "edit_role": "Rol bewerken", + "name": "Naam", + "permission": "Machtiging Machtigingen", + "select_all": "Selecteer alles", + "none": "Geen", + "confirm_delete": "Dit rol wordt permanent verwijderd", + "created_message": "Rol succesvol gemaakt", + "updated_message": "Rol succesvol bijgewerkt", + "deleted_message": "Rol succesvol verwijderd", + "already_in_use": "Rol is reeds in gebruik" + }, + "exchange_rate": { + "exchange_rate": "Wisselkoers", + "title": "Problemen met wisselkoersen oplossen", + "description": "Voer de wisselkoers in van alle onderstaande valuta's om Crater te helpen de bedragen in {currency} goed te berekenen.", + "drivers": "Stuurprogramma 's", + "new_driver": "Voeg nieuwe provider toe", + "edit_driver": "Provider bewerken", + "select_driver": "Selecteer stuurprogramma", + "update": "selecteer wisselkoers ", + "providers_description": "Configureer hier uw wisselkoersaanbieders om de laatste wisselkoers voor transacties automatisch op te halen.", + "key": "API sleutel", + "name": "Naam", + "driver": "Stuurprogramma", + "is_default": "IS STANDAARD", + "currency": "Valuta's", + "exchange_rate_confirm_delete": "Dit stuurprogramma wordt permanent verwijderd", + "created_message": "Provider succesvol aangemaakt", + "updated_message": "Provider succesvol bijgewerkt", + "deleted_message": "Provider succesvol verwijderd", + "error": " U kunt de actieve stuurprogramma niet verwijderen", + "default_currency_error": "Deze valuta wordt al gebruikt in een van de Actieve Provider", + "exchange_help_text": "Voer de wisselkoers in om te converteren van {currency} naar {baseCurrency}", + "currency_freak": "Valuta Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Valuta omzetter", + "server": "Server", + "url": "URL", + "active": "Actief", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, "tax_types": { "title": "Belastingtypen", "add_tax": "Belasting toevoegen", @@ -841,6 +1137,18 @@ "confirm_delete": "Dit belastingtype wordt permanent verwijderd", "already_in_use": "Belasting al in gebruik" }, + "payment_modes": { + "title": "Betaalmethodes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Betaalwijze toegevoegd", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, "expense_category": { "title": "Onkostencategorieën", "action": "Actie", @@ -865,6 +1173,8 @@ "discount_setting": "Kortingsinstelling", "discount_per_item": "Korting per item", "discount_setting_description": "Schakel dit in als u korting wilt toevoegen aan afzonderlijke factuuritems. Standaard wordt korting rechtstreeks aan de factuur toegevoegd.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", "save": "Opslaan", "preference": "Voorkeur | Voorkeuren", "general_settings": "Standaardvoorkeuren voor het systeem.", @@ -872,7 +1182,14 @@ "select_language": "Selecteer taal", "select_time_zone": "Selecteer Tijdzone", "select_date_format": "Selecteer datum/tijdindeling", - "select_financial_year": "Selecteer financieel ja" + "select_financial_year": "Selecteer financieel ja", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "In wacht", + "update_status": "Updatestatus", + "completed": "Voltooid", + "company_currency_unchangeable": "Bedrijfsvaluta kan niet worden gewijzigd" }, "update_app": { "title": "App bijwerken", @@ -890,10 +1207,12 @@ "download_zip_file": "Download ZIP-bestand", "unzipping_package": "Pakket uitpakken", "copying_files": "Bestanden kopiëren", + "deleting_files": "Ongebruikte bestanden verwijderen", "running_migrations": "Migraties uitvoeren", "finishing_update": "Afwerking Update", "update_failed": "Update mislukt", - "update_failed_text": "Sorry! Je update is mislukt op: {step} step " + "update_failed_text": "Sorry! Je update is mislukt op: {step} step ", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." }, "backup": { "title": "Backup | Backups", @@ -928,15 +1247,15 @@ "disk_type": "Type", "disk_name": "Naam van de schijf", "new_disk": "Nieuwe schijf toevoegen", - "filesystem_driver": "Filesystem Driver", + "filesystem_driver": "Bestandssysteem locatie", "local_driver": "lokaal besturingsprogramma", - "local_root": "local Root", + "local_root": "locale schijf", "public_driver": "Publiek besturingsprogramma", - "public_root": "Public Root", + "public_root": "Openbare schijf", "public_url": "Publieke URL", "public_visibility": "Publieke zichtbaarheid", "media_driver": "Media stuurprogramma", - "media_root": "Media Root", + "media_root": "Media schijf", "aws_driver": "AWS Stuurprogramma", "aws_key": "AWS Sleutel", "aws_secret": "AWS Secret", @@ -959,6 +1278,7 @@ "default_driver": "Standaard stuurprogramma", "is_default": "IS STANDAARD", "set_default_disk": "Standaardschijf instellen", + "set_default_disk_confirm": "Deze schijf zal als standaard worden ingesteld en alle nieuwe PDF's worden opgeslagen op deze schijf", "success_set_default_disk": "Standaardschijf ingesteld", "save_pdf_to_disk": "PDF's opslaan op schijf", "disk_setting_description": " Schakel dit in als je een kopie van elke factuur, raming en betalingsbewijs automatisch op je standaard schijf wilt opslaan. Het inschakelen van deze optie zal de laadtijd verminderen wanneer de PDF's worden bekeken.", @@ -974,6 +1294,18 @@ "disk_variables_save_successfully": "Schijf geconfigureerd", "disk_variables_save_error": "Schijfconfiguratie mislukt.", "invalid_disk_credentials": "Ongeldige inloggegevens voor geselecteerde schijf" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { @@ -991,6 +1323,7 @@ "logo_preview": "Logo Voorbeeld", "preferences": "Voorkeuren", "preferences_desc": "Standaardvoorkeuren voor het systeem.", + "currency_set_alert": "The company's currency cannot be changed later.", "country": "Land", "state": "Provincie", "city": "Stad", @@ -1028,6 +1361,15 @@ "permission_confirm_desc": "Controle van maprechten is mislukt", "permission_desc": "Hieronder vindt u de lijst met mapmachtigingen die vereist zijn om de app te laten werken. Als de machtigingscontrole mislukt, moet u de mapmachtigingen bijwerken." }, + "verify_domain": { + "title": "Menselijke Verificatie", + "desc": "Crater maakt gebruik van sessie gebaseerde authenticatie die domeinverificatie vereist voor veiligheidsdoeleinden. Voer het domein in waarop u toegang zult krijgen tot uw webapplicatie.", + "app_domain": "App Domein", + "verify_now": "Nu verifiëren", + "success": "E-mailadres succesvol geverifieerd.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verifiëren en doorgaan" + }, "mail": { "host": "E-mail server", "port": "E-mail Poort", @@ -1066,8 +1408,8 @@ }, "validation": { "invalid_phone": "Ongeldig Telefoonnummer", - "invalid_url": "Ongeldige URL (bijvoorbeeld: http://www.craterapp.com))", - "invalid_domain_url": "Ongeldige URL (bijvoorbeeld: craterapp.com))", + "invalid_url": "Ongeldige URL (bijvoorbeeld: http://www.crater.com))", + "invalid_domain_url": "Ongeldige URL (bijvoorbeeld: crater.com))", "required": "Veld is verplicht", "email_incorrect": "Incorrecte Email.", "email_already_taken": "De email is al in gebruik.", @@ -1078,6 +1420,7 @@ "not_yet": "Nog niet? Stuur het opnieuw", "password_min_length": "Wachtwoord moet {count} tekens bevatten", "name_min_length": "Naam moet minimaal {count} letters bevatten.", + "prefix_min_length": "Prefix must have at least {count} letters.", "enter_valid_tax_rate": "Voer een geldig belastingtarief in", "numbers_only": "Alleen nummers.", "characters_only": "Alleen tekens.", @@ -1092,6 +1435,7 @@ "price_minvalue": "Prijs moet hoger zijn dan 0.", "amount_maxlength": "Bedrag mag niet groter zijn dan 20 cijfers.", "amount_minvalue": "Bedrag moet groter zijn dan 0.", + "discount_maxlength": "Discount should not be greater than max discount", "description_maxlength": "De beschrijving mag niet meer dan 255 tekens bevatten.", "subject_maxlength": "Het onderwerp mag niet meer dan 100 tekens bevatten.", "message_maxlength": "Bericht mag niet groter zijn dan 255 tekens.", @@ -1100,7 +1444,38 @@ "address_maxlength": "Adres mag niet groter zijn dan 255 tekens.", "ref_number_maxlength": "Ref-nummer mag niet groter zijn dan 255 tekens.", "prefix_maxlength": "Het voorvoegsel mag niet meer dan 5 tekens bevatten.", - "something_went_wrong": "Er is iets fout gegaan" + "something_went_wrong": "Er is iets fout gegaan", + "number_length_minvalue": "Het getal moet groter zijn dan 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Bedrijfsnaam moet overeenkomen met de opgegeven naam." + }, + "errors": { + "starter_plan": "Deze functie is beschikbaar vanaf het Starter abonnement!", + "invalid_provider_key": "Voer een geldige API-sleutel in.", + "estimate_number_used": "Dit offertenummer is reeds in gebruik.", + "invoice_number_used": "Dit factuurnummer is reeds in gebruik.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "Dit factuurnummer is reeds in gebruik.", + "name_already_taken": "Deze naam is reeds in gebruik.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Inloggegevens ongeldig.", + "not_allowed": "Niet toegestaan", + "login_invalid_credentials": "Deze gegevens zijn niet correct.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, "pdf_estimate_label": "Offerte", "pdf_estimate_number": "Offerte nummer", @@ -1109,7 +1484,7 @@ "pdf_invoice_label": "Factuur", "pdf_invoice_number": "Factuurnummer", "pdf_invoice_date": "Factuur datum", - "pdf_invoice_due_date": "Opleveringsdatum", + "pdf_invoice_due_date": "Vervaldatum", "pdf_notes": "Opmerkingen", "pdf_items_label": "Artikelen", "pdf_quantity_label": "Aantal stuks", @@ -1118,7 +1493,7 @@ "pdf_amount_label": "Bedrag", "pdf_subtotal": "Subtotaal", "pdf_total": "Totaal", - "pdf_payment_label": "Payment", + "pdf_payment_label": "Betaling", "pdf_payment_receipt_label": "Betalingsafschrift", "pdf_payment_date": "Betalingsdatum", "pdf_payment_number": "Betalingsnummer", @@ -1127,9 +1502,9 @@ "pdf_expense_report_label": "UITGAVEN RAPPORT", "pdf_total_expenses_label": "TOTALE UITGAVEN", "pdf_profit_loss_label": "WINST & VERLIES RAPPORT", - "pdf_sales_customers_label": "Sales Customer Report", - "pdf_sales_items_label": "Sales Item Report", - "pdf_tax_summery_label": "Tax Summary Report", + "pdf_sales_customers_label": "Klant verkoop rapport", + "pdf_sales_items_label": "Artikel verkooprapport", + "pdf_tax_summery_label": "Belastingoverzicht", "pdf_income_label": "INKOMEN", "pdf_net_profit_label": "NETTO WINST", "pdf_customer_sales_report": "Verkooprapport: per klant", @@ -1142,5 +1517,5 @@ "pdf_bill_to": "Rekening naar,", "pdf_ship_to": "Verzend naar,", "pdf_received_from": "Ontvangen van:", - "pdf_tax_label": "Tax" + "pdf_tax_label": "Btw" } diff --git a/resources/scripts/locales/pl.json b/resources/scripts/locales/pl.json index 3c3c0b823..8e8fb7cad 100644 --- a/resources/scripts/locales/pl.json +++ b/resources/scripts/locales/pl.json @@ -4,13 +4,15 @@ "customers": "Kontrahenci", "items": "Pozycje", "invoices": "Faktury", + "recurring-invoices": "Faktury cykliczne", "expenses": "Wydatki", "estimates": "Oferty", "payments": "Płatności", "reports": "Raporty", "settings": "Ustawienia", "logout": "Wyloguj", - "users": "Użytkownicy" + "users": "Użytkownicy", + "modules": "Modules" }, "general": { "add_company": "Dodaj firmę", @@ -27,6 +29,9 @@ "to_date": "Do daty", "from": "Od", "to": "Do", + "ok": "Ok", + "yes": "Tak", + "no": "Nie", "sort_by": "Sortuj według", "ascending": "Rosnąco", "descending": "Malejąco", @@ -34,6 +39,7 @@ "body": "Treść", "message": "Wiadomość", "send": "Wyślij", + "preview": "Podgląd", "go_back": "Wstecz", "back_to_login": "Wróć do logowania?", "home": "Strona główna", @@ -59,12 +65,11 @@ "sent": "Wysłano", "all": "Wszystko", "select_all": "Zaznacz wszystkie", + "select_template": "Wybierz Szablon", "choose_file": "Kliknij tutaj, aby wybrać plik", "choose_template": "Wybierz szablon", "choose": "Wybierz", "remove": "Usuń", - "powered_by": "Wspierane przez", - "bytefury": "Bytefury", "select_a_status": "Wybierz status", "select_a_tax": "Wybierz podatek", "search": "Wyszukaj", @@ -87,7 +92,14 @@ "choose_note": "Wybierz notatkę", "no_note_found": "Nie znaleziono notatki", "insert_note": "Wstaw notatkę", - "copied_pdf_url_clipboard": "Skopiowano adres URL pliku PDF do schowka!" + "copied_pdf_url_clipboard": "Skopiowano adres URL pliku PDF do schowka!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Dokumentacja", + "do_you_wish_to_continue": "Czy chcesz kontynuować?", + "note": "Uwaga", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { "select_year": "Wybierz rok", @@ -95,7 +107,8 @@ "due_amount": "Do zapłaty", "customers": "Kontrahenci", "invoices": "Faktury", - "estimates": "Oferty" + "estimates": "Oferty", + "payments": "Payments" }, "chart_info": { "total_sales": "Sprzedaż", @@ -104,9 +117,6 @@ "net_income": "Dochód netto", "year": "Wybierz rok" }, - "weekly_invoices": { - "title": "Faktury tygodniowe" - }, "monthly_chart": { "title": "Sprzedaż i wydatki" }, @@ -139,8 +149,28 @@ "users": "Użytkownicy", "no_results_found": "Nie znaleziono wyników" }, + "company_switcher": { + "label": "PRZEŁĄCZ PRZEDSIĘBIORSTWO", + "no_results_found": "Nie Znaleziono Wyników", + "add_new_company": "Dodaj nową firmę", + "new_company": "Nowa firma", + "created_message": "Firma utworzona pomyślnie" + }, + "dateRange": { + "today": "Dzisiaj", + "this_week": "Ten tydzień", + "this_month": "Ten miesiąc", + "this_quarter": "Ten kwartał", + "this_year": "Ten rok", + "previous_week": "Poprzedni Tydzień", + "previous_month": "Poprzedni miesiąc", + "previous_quarter": "Poprzedni kwartał", + "previous_year": "Poprzedni Rok", + "custom": "Custom" + }, "customers": { "title": "Kontrahenci", + "prefix": "Prefix", "add_customer": "Dodaj kontrahenta", "contacts_list": "Lista kontrahentów", "name": "Nazwa", @@ -155,6 +185,9 @@ "phone": "Telefon", "website": "Strona internetowa", "overview": "Przegląd", + "invoice_prefix": "Invoice Prefix", + "estimate_prefix": "Estimate Prefix", + "payment_prefix": "Payment Prefix", "enable_portal": "Włącz portal", "country": "Kraj", "state": "Województwo", @@ -163,6 +196,7 @@ "added_on": "Dodano dnia", "action": "Akcja", "password": "Hasła", + "confirm_password": "Confirm Password", "street_number": "Numer ulicy", "primary_currency": "Waluta główna", "description": "Opis", @@ -173,6 +207,10 @@ "new_customer": "Nowy kontrahent", "edit_customer": "Edytuj kontrahenta", "basic_info": "Podstawowe informacje", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", "billing_address": "Adres do faktury", "shipping_address": "Adres dostawy", "copy_billing_address": "Kopiuj z rachunku", @@ -192,7 +230,9 @@ "confirm_delete": "Nie będziesz w stanie odzyskać tego kontrahenta i wszystkich powiązanych faktur, ofert i płatności. | Nie będziesz w stanie odzyskać tych kontrahentów i wszystkich powiązanych faktur, ofert i płatności.", "created_message": "Kontrahent został utworzony poprawnie", "updated_message": "Kontrahent został zaktualizowany poprawnie", - "deleted_message": "Kontrahent został usunięty pomyślnie | Kontrahenci zostali usunięci pomyślnie" + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Kontrahent został usunięty pomyślnie | Kontrahenci zostali usunięci pomyślnie", + "edit_currency_not_allowed": "Cannot change currency once transactions created." }, "items": { "title": "Pozycje", @@ -224,6 +264,8 @@ }, "estimates": { "title": "Oferty", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", "estimate": "Oferta | Oferty", "estimates_list": "Lista ofert", "days": "{days} Dni", @@ -275,8 +317,10 @@ }, "accepted": "Zaakceptowano", "rejected": "Odrzucono", + "expired": "Expired", "sent": "Wysłano", "draft": "Wersja robocza", + "viewed": "Viewed", "declined": "Odrzucony", "new_estimate": "Nowa oferta", "add_new_estimate": "Dodaj nową ofertę", @@ -295,7 +339,6 @@ "created_message": "Oferta utworzona pomyślnie", "updated_message": "Oferta zaktualizowana pomyślnie", "deleted_message": "Oferta usunięta pomyślnie | Oferty usunięte pomyślnie", - "user_email_does_not_exist": "E-mail użytkownika nie istnieje", "something_went_wrong": "coś poszło nie tak", "item": { "title": "Tytuł pozycji", @@ -314,7 +357,10 @@ }, "invoices": { "title": "Faktury", + "download": "Download", + "pay_invoice": "Pay Invoice", "invoices_list": "Lista faktur", + "invoice_information": "Invoice Information", "days": "{days} Dni", "months": "{months} Miesiąc", "years": "{years} Rok", @@ -349,10 +395,13 @@ "send_invoice": "Wyślij fakturę", "resend_invoice": "Wyślij fakturę ponownie", "invoice_template": "Szablon faktury", + "conversion_message": "Invoice cloned successful", "template": "Szablon", "mark_as_sent": "Oznacz jako wysłane", "confirm_send_invoice": "Ta faktura zostanie wysłana pocztą elektroniczną do kontrahenta", "invoice_mark_as_sent": "Ta faktura zostanie oznaczona jako wysłana", + "confirm_mark_as_accepted": "This invoice will be marked as Accepted", + "confirm_mark_as_rejected": "This invoice will be marked as Rejected", "confirm_send": "Ta faktura zostanie wysłana pocztą elektroniczną do kontrahenta", "invoice_date": "Data faktury", "record_payment": "Zarejestruj płatność", @@ -364,11 +413,13 @@ "update_invoice": "Zaktualizuj fakturę", "add_new_tax": "Dodaj nowy podatek", "no_invoices": "Brak faktur!", + "mark_as_rejected": "Oznacz jako odrzuconą", + "mark_as_accepted": "Oznacz jako zaakceptowaną", "list_of_invoices": "Ta sekcja będzie zawierać listę faktur.", "select_invoice": "Wybierz fakturę", "no_matching_invoices": "Brak pasujących faktur!", "mark_as_sent_successfully": "Faktura oznaczona jako wysłana pomyślnie", - "send_invoice_successfully": "Faktura wysłana pomyślnie", + "invoice_sent_successfully": "Faktura wysłana pomyślnie", "cloned_successfully": "Faktura sklonowana pomyślnie", "clone_invoice": "Sklonuj fakturę", "confirm_clone": "Ta faktura zostanie sklonowana do nowej faktury", @@ -392,32 +443,117 @@ "updated_message": "Faktura została pomyślnie zaktualizowana", "deleted_message": "Faktura usunięta pomyślnie | Faktury usunięte pomyślnie", "marked_as_sent_message": "Faktura oznaczona jako wysłana pomyślnie", - "user_email_does_not_exist": "E-mail użytkownika nie istnieje", "something_went_wrong": "coś poszło nie tak", "invalid_due_amount_message": "Całkowita kwota faktury nie może być mniejsza niż całkowita kwota zapłacona za tę fakturę. Proszę zaktualizować fakturę lub usunąć powiązane płatności, aby kontynuować." }, - "credit_notes": { - "title": "Noty kredytowe", - "credit_notes_list": "Lista not kredytowych", - "credit_notes": "Noty kredytowe", + "recurring_invoices": { + "title": "Faktury cykliczne", + "invoices_list": "Recurring Invoices List", + "days": "{days} Dni", + "months": "{months} Month", + "years": "{years} Year", + "all": "Wszystkie", + "paid": "Zapłacone", + "unpaid": "Niezapłacone", + "viewed": "Przeglądane", + "overdue": "Zaległe", + "active": "Aktywne", + "completed": "Ukończone", + "customer": "KLIENT", + "paid_status": "STATUS PŁATNOŚCI", + "ref_no": "NR REF.", + "number": "NUMER", + "amount_due": "DO ZAPŁATY", + "partially_paid": "Częściowo Opłacona", + "total": "Razem", + "discount": "Rabat", + "sub_total": "Suma Pośrednia", + "invoice": "Faktura Cykliczna | Faktury Cykliczne", + "invoice_number": "Numer Faktury Cyklicznej", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Numer ref.", "contact": "Kontakt", + "add_item": "Add an Item", "date": "Data", - "amount": "Kwota", - "action": "Akcja", - "credit_number": "Numer kredytu", - "notes": "Notatki", - "confirm_delete": "Czy na pewno chcesz usunąć notatkę kredytową?", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Liczba", + "status": "Status", + "select_a_status": "Wybierz status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", "item": { - "title": "Tytuł pozycji", - "description": "Opis", - "quantity": "Ilość", - "price": "Cena", - "discount": "Rabat", - "total": "Razem", - "total_discount": "Rabat łącznie", - "sub_total": "Podsumowanie", - "tax": "Podatek" - } + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." }, "payments": { "title": "Płatności", @@ -450,7 +586,6 @@ "confirm_mark_as_sent": "Ta oferta zostanie oznaczona jako wysłana", "confirm_send_payment": "Ta płatność zostanie wysłana e-mailem do kontrahenta", "send_payment_successfully": "Płatność wysłana pomyślnie", - "user_email_does_not_exist": "E-mail użytkownika nie istnieje", "something_went_wrong": "coś poszło nie tak", "confirm_delete": "Nie będziesz w stanie odzyskać tej płatności | Nie będziesz w stanie odzyskać tych płatności", "created_message": "Płatność została pomyślnie utworzona", @@ -464,6 +599,7 @@ "select_a_customer": "Wybierz kontrahenta", "expense_title": "Tytuł", "customer": "Kontrahent", + "currency": "Currency", "contact": "Kontakt", "category": "Kategoria", "from_date": "Od daty", @@ -515,8 +651,52 @@ "password_reset_successfully": "Hasło zostało pomyślnie zresetowane", "enter_email": "Wprowadź adres e-mail", "enter_password": "Wprowadź hasło", - "retype_password": "Wprowadź hasło ponownie", - "login_placeholder": "mail@example.com" + "retype_password": "Wprowadź hasło ponownie" + }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" }, "users": { "title": "Użytkownicy", @@ -542,7 +722,9 @@ "confirm_delete": "Nie będziesz w stanie odzyskać tego użytkownika | Nie będziesz w stanie odzyskać tych użytkowników", "created_message": "Użytkownik został utworzony pomyślnie", "updated_message": "Użytkownik został zaktualizowany pomyślnie", - "deleted_message": "Użytkownik usunięty pomyślnie | Użytkownicy usunięci pomyślnie" + "deleted_message": "Użytkownik usunięty pomyślnie | Użytkownicy usunięci pomyślnie", + "select_company_role": "Select Role for {company}", + "companies": "Companies" }, "reports": { "title": "Raport", @@ -619,7 +801,12 @@ "file_disk": "Dysk plików", "custom_fields": "Pola niestandardowe", "payment_modes": "Rodzaje płatności", - "notes": "Notatki" + "notes": "Notatki", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." }, "title": "Ustawienia", "setting": "Ustawienia | Ustawienia", @@ -681,7 +868,13 @@ "address": "Adres", "zip": "Kod pocztowy", "save": "Zapisz", - "updated_message": "Informacje o firmie zostały pomyślnie zaktualizowane" + "delete": "Delete", + "updated_message": "Informacje o firmie zostały pomyślnie zaktualizowane", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" }, "custom_fields": { "title": "Pola niestandardowe", @@ -692,6 +885,7 @@ "label": "Etykieta", "type": "Typ", "name": "Nazwa", + "slug": "Slug", "required": "Wymagane", "placeholder": "Symbol zastępczy", "help_text": "Tekst pomocy", @@ -717,94 +911,104 @@ "select_relative_date": "Wybierz datę względną", "ticked_by_default": "Zaznaczone domyślnie", "updated_message": "Pole niestandardowe zostało zaktualizowane pomyślnie", - "added_message": "Pole niestandardowe zostało dodane pomyślnie" + "added_message": "Pole niestandardowe zostało dodane pomyślnie", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." }, "customization": { "customization": "dostosowywanie", - "save": "Zapisz", - "addresses": { - "title": "Adresy", - "section_description": "Możesz ustawić adres rozliczeniowy kontrahenta i format adresu dostawy kontrahenta (tylko w formacie PDF). ", - "customer_billing_address": "Adres rozliczeniowy kontrahenta", - "customer_shipping_address": "Adres dostawy kontrahenta", - "company_address": "Adres firmy", - "insert_fields": "Wstaw pola", - "contact": "Kontakt", - "address": "Adres", - "display_name": "Widoczna nazwa", - "primary_contact_name": "Główna osoba kontaktowa", - "email": "Email", - "website": "Strona internetowa", - "name": "Nazwa", - "country": "Kraj", - "state": "Województwo", - "city": "Miasto", - "company_name": "Nazwa firmy", - "address_street_1": "Ulica 1", - "address_street_2": "Ulica 2", - "phone": "Telefon", - "zip_code": "Kod pocztowy", - "address_setting_updated": "Ustawienia adresu zostały pomyślnie zaktualizowane" - }, "updated_message": "Informacje o firmie zostały pomyślnie zaktualizowane", + "save": "Zapisz", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", "invoices": { "title": "Faktury", - "notes": "Notatki", - "invoice_prefix": "Prefiks faktury", - "invoice_number_length": "Długość numeru faktury", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", "default_invoice_email_body": "Domyślny nagłówek e-maila faktury", - "invoice_settings": "Ustawienia faktury", - "autogenerate_invoice_number": "Automatycznie generuj numer faktury", - "invoice_setting_description": "Wyłącz to, jeśli nie chcesz automatycznie generować numerów faktur za każdym razem, gdy tworzysz nową fakturę.", - "invoice_email_attachment": "Wyślij faktury jako załączniki", - "invoice_email_attachment_setting_description": "Włącz to, jeśli chcesz wysyłać faktury jako załącznik e-mail. Pamiętaj, że przycisk 'Zobacz fakturę' w wiadomościach e-mail nie będzie już wyświetlany, gdy jest włączony.", - "enter_invoice_prefix": "Wprowadź prefiks faktury", - "terms_and_conditions": "Zasady i warunki", "company_address_format": "Format adresu firmy", "shipping_address_format": "Format adresu dostawy", "billing_address_format": "Format adresu do faktury", - "invoice_setting_updated": "Ustawienia faktury zostały pomyślnie zaktualizowane" + "invoice_email_attachment": "Wyślij faktury jako załączniki", + "invoice_email_attachment_setting_description": "Włącz to, jeśli chcesz wysyłać faktury jako załącznik e-mail. Pamiętaj, że przycisk 'Zobacz fakturę' w wiadomościach e-mail nie będzie już wyświetlany, gdy jest włączony.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." }, "estimates": { "title": "Oferty", - "estimate_prefix": "Prefiks oferty", - "estimate_number_length": "Długość numeru oferty", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", "default_estimate_email_body": "Domyślny nagłówek e-maila oferty", - "estimate_settings": "Ustawienia oferty", - "autogenerate_estimate_number": "Automatycznie generuj numer oferty", - "estimate_setting_description": "Wyłącz to, jeśli nie chcesz automatycznie generować numerów ofert za każdym razem, gdy tworzysz nową ofertę.", - "estimate_email_attachment": "Wyślij oferty jako załączniki", - "estimate_email_attachment_setting_description": "Włącz to, jeśli chcesz wysyłać oferty jako załącznik e-mail. Pamiętaj, że przycisk 'Zobacz ofertę' w wiadomościach e-mail nie będzie już wyświetlany, gdy jest włączony.", - "enter_estimate_prefix": "Wprowadź prefiks oferty", - "estimate_setting_updated": "Ustawienia oferty zostały pomyślnie zaktualizowane", "company_address_format": "Format adresu firmy", + "shipping_address_format": "Format adresu dostawy", "billing_address_format": "Format adresu do faktury", - "shipping_address_format": "Format adresu dostawy" + "estimate_email_attachment": "Wyślij oferty jako załączniki", + "estimate_email_attachment_setting_description": "Włącz to, jeśli chcesz wysyłać oferty jako załącznik e-mail. Pamiętaj, że przycisk 'Zobacz ofertę' w wiadomościach e-mail nie będzie już wyświetlany, gdy jest włączony.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" }, "payments": { "title": "Płatności", - "description": "Sposoby transakcji dla płatności", - "payment_prefix": "Prefiks płatności", - "payment_number_length": "Długość numeru płatności", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", "default_payment_email_body": "Domyślny nagłówek e-maila płatności", - "payment_settings": "Ustawienia płatności", - "autogenerate_payment_number": "Automatycznie generuj numer płatności", - "payment_setting_description": "Wyłącz to, jeśli nie chcesz automatycznie generować numerów płatności za każdym razem, gdy tworzysz nową płatność.", + "company_address_format": "Format adresu firmy", + "from_customer_address_format": "Format adresu nadawcy", "payment_email_attachment": "Wyślij płatności jako załączniki", "payment_email_attachment_setting_description": "Włącz to, jeśli chcesz wysyłać płatności jako załącznik e-mail. Pamiętaj, że przycisk 'Zobacz płatność' w wiadomościach e-mail nie będzie już wyświetlany, gdy jest włączony.", - "enter_payment_prefix": "Wprowadź prefiks płatności", - "payment_setting_updated": "Ustawienia płatności zostały pomyślnie zaktualizowane", - "payment_modes": "Rodzaje płatności", - "add_payment_mode": "Dodaj metodę płatności", - "edit_payment_mode": "Edytuj metodę płatności", - "mode_name": "Metoda płatności", - "payment_mode_added": "Dodano metodę płatności", - "payment_mode_updated": "Zaktualizowano metodę płatności", - "payment_mode_confirm_delete": "Nie będziesz w stanie odzyskać tej metody płatności", - "already_in_use": "Metoda płatności jest już w użyciu", - "deleted_message": "Metoda płatności została pomyślnie usunięta", - "company_address_format": "Format adresu firmy", - "from_customer_address_format": "Format adresu nadawcy" + "payment_settings_updated": "Payment Settings updated successfully" }, "items": { "title": "Pozycje", @@ -863,6 +1067,57 @@ "email_save_message": "Wiadomość zapisana pomyślnie", "please_enter_email": "Proszę wpisać adres e-mail" }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, "tax_types": { "title": "Rodzaje opodatkowania", "add_tax": "Dodaj podatek", @@ -882,6 +1137,18 @@ "confirm_delete": "Nie będziesz w stanie odzyskać tego typu podatku", "already_in_use": "Ten podatek jest w użyciu" }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, "expense_category": { "title": "Kategorie wydatków", "action": "Akcja", @@ -906,6 +1173,8 @@ "discount_setting": "Ustawienia rabatu", "discount_per_item": "Rabat na produkt ", "discount_setting_description": "Włącz to, jeśli chcesz dodać rabat do poszczególnych elementów faktury. Domyślnie rabat jest dodawany bezpośrednio do całej faktury.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", "save": "Zapisz", "preference": "Preferencje | Preferencje", "general_settings": "Domyślne ustawienia systemu.", @@ -913,7 +1182,14 @@ "select_language": "Wybierz język", "select_time_zone": "Ustaw strefę czasową", "select_date_format": "Wybierz format daty", - "select_financial_year": "Wybierz rok podatkowy" + "select_financial_year": "Wybierz rok podatkowy", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" }, "update_app": { "title": "Aktualizuj aplikację", @@ -935,7 +1211,8 @@ "running_migrations": "Uruchamianie migracji", "finishing_update": "Kończenie aktualizacji", "update_failed": "Aktualizacja nie powiodła się", - "update_failed_text": "Przepraszamy! Twoja aktualizacja nie powiodła się w kroku: {step}" + "update_failed_text": "Przepraszamy! Twoja aktualizacja nie powiodła się w kroku: {step}", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." }, "backup": { "title": "Kopia zapasowa | Kopie zapasowe", @@ -1017,6 +1294,18 @@ "disk_variables_save_successfully": "Dysk skonfigurowany pomyślnie", "disk_variables_save_error": "Konfiguracja dysku nieudana.", "invalid_disk_credentials": "Nieprawidłowe dane uwierzytelniające wybranego dysku" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { @@ -1034,6 +1323,7 @@ "logo_preview": "Podgląd loga", "preferences": "Preferencje", "preferences_desc": "Domyślne preferencje dla systemu.", + "currency_set_alert": "The company's currency cannot be changed later.", "country": "Kraj", "state": "Województwo", "city": "Miasto", @@ -1077,6 +1367,7 @@ "app_domain": "Domena aplikacji", "verify_now": "Potwierdź teraz", "success": "Pomyślnie zweryfikowano domenę.", + "failed": "Domain verification failed. Please enter valid domain name.", "verify_and_continue": "Weryfikuj i kontynuuj" }, "mail": { @@ -1105,7 +1396,6 @@ }, "errors": { "migrate_failed": "Migracja nie powiodła się", - "domain_verification_failed": "Weryfikacja domeny nie powiodła się", "database_variables_save_error": "Nie można zapisać konfiguracji do pliku .env. Proszę sprawdzić jego uprawnienia", "mail_variables_save_error": "Konfiguracja email nie powiodła się.", "connection_failed": "Błąd połączenia z bazą danych", @@ -1113,18 +1403,9 @@ }, "success": { "mail_variables_save_successfully": "Email został skonfigurowany pomyślnie", - "domain_variable_save_successfully": "Domena została skonfigurowana pomyślnie", "database_variables_save_successfully": "Baza danych została skonfigurowana poprawnie." } }, - "layout_login": { - "copyright_crater": "Copyright @ Crater - 2020", - "super_simple_invoicing": "Super proste fakturowanie", - "for_freelancer": "dla Freelancerów i", - "small_businesses": "Mikroprzedsiębiorstw ", - "crater_help": "Crater pomaga śledzić Twoje wydatki, zapisywać płatności i generować piękne", - "invoices_and_estimates": "faktury i oferty z możliwością wyboru wielu szablonów." - }, "validation": { "invalid_phone": "Nieprawidłowy numer telefonu", "invalid_url": "Nieprawidłowy adres url (np. http://www.crater.com)", @@ -1139,6 +1420,7 @@ "not_yet": "Jeszcze nie? Wyślij ponownie", "password_min_length": "Hasło musi zawierać co najmniej {count} znaków", "name_min_length": "Nazwa użytkownika musi zawierać co najmniej {count} znaków.", + "prefix_min_length": "Prefix must have at least {count} letters.", "enter_valid_tax_rate": "Wprowadź poprawną stawkę podatku", "numbers_only": "Tylko liczby.", "characters_only": "Tylko znaki.", @@ -1153,6 +1435,7 @@ "price_minvalue": "Cena powinna być większa niż 0.", "amount_maxlength": "Kwota nie powinna być większa niż 20 cyfr.", "amount_minvalue": "Kwota powinna być większa niż 0.", + "discount_maxlength": "Discount should not be greater than max discount", "description_maxlength": "Opis nie powinien przekraczać 65 000 znaków.", "subject_maxlength": "Temat nie powinien być dłuższy niż 100 znaków.", "message_maxlength": "Wiadomość nie powinna być dłuższa niż 255 znaków.", @@ -1162,7 +1445,37 @@ "ref_number_maxlength": "Numer referencyjny nie może być dłuższy niż 255 znaków.", "prefix_maxlength": "Prefiks nie powinien być dłuższy niż 5 znaków.", "something_went_wrong": "coś poszło nie tak", - "number_length_minvalue": "Długość numeru powinna być większa niż 0" + "number_length_minvalue": "Długość numeru powinna być większa niż 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, "pdf_estimate_label": "Oferta", "pdf_estimate_number": "Numer oferty", @@ -1203,5 +1516,6 @@ "pdf_expenses_label": "Wydatki", "pdf_bill_to": "Wystawiono dla", "pdf_ship_to": "Wysyłka do", - "pdf_received_from": "Otrzymane od:" + "pdf_received_from": "Otrzymane od:", + "pdf_tax_label": "Tax" } diff --git a/resources/scripts/locales/pt.json b/resources/scripts/locales/pt.json index 761aae117..8922f0738 100644 --- a/resources/scripts/locales/pt.json +++ b/resources/scripts/locales/pt.json @@ -4,21 +4,23 @@ "customers": "Clientes", "items": "Itens", "invoices": "Faturas", + "recurring-invoices": "Faturas Recorrentes", "expenses": "Despesas", "estimates": "Orçamentos", "payments": "Pagamentos", "reports": "Relatórios", "settings": "Configurações", "logout": "Encerrar sessão", - "users": "Users" + "users": "Usuários", + "modules": "Modules" }, "general": { - "add_company": "Add Company", + "add_company": "Adicionar Empresa", "view_pdf": "Ver PDF", - "copy_pdf_url": "Copy PDF Url", + "copy_pdf_url": "Copiar URL do PDF", "download_pdf": "Baixar PDF", "save": "Salvar", - "create": "Create", + "create": "Criar", "cancel": "Cancelar", "update": "Atualizar", "deselect": "Desmarcar", @@ -27,16 +29,20 @@ "to_date": "Até a Data", "from": "De", "to": "Para", + "ok": "Ok", + "yes": "Sim", + "no": "Não", "sort_by": "Ordenar por", "ascending": "Crescente", "descending": "Descendente", "subject": "Sujeita", "body": "Corpo", "message": "Mensagem", - "send": "Send", + "send": "Enviar", + "preview": "Pré-visualizar", "go_back": "Voltar", - "back_to_login": "Voltar ao Login", - "home": "Home", + "back_to_login": "Voltar ao Login?", + "home": "Painel", "filter": "Filtrar", "delete": "Excluir", "edit": "Editar", @@ -59,12 +65,11 @@ "sent": "Enviado", "all": "Todos", "select_all": "Selecionar tudo", - "choose_file": "Escolha um arquivo.", + "select_template": "Selecionar modelo", + "choose_file": "Clique aqui para escolher um arquivo", "choose_template": "Escolha um modelo", "choose": "Escolher", "remove": "Excluir", - "powered_by": "Distribuído por", - "bytefury": "Bytefury", "select_a_status": "Selecione um status", "select_a_tax": "Selecione um Imposto", "search": "Buscar", @@ -84,17 +89,26 @@ "street_2": "Rua # 2", "action_failed": "Ação: Falhou", "retry": "Atualização falhou", - "choose_note": "Choose Note", - "no_note_found": "No Note Found", - "insert_note": "Insert Note" + "choose_note": "Escolher Nota", + "no_note_found": "Nenhuma Nota Encontrada", + "insert_note": "Inserir Nota", + "copied_pdf_url_clipboard": "URL do PDF copiado para área de transferência!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Documentos", + "do_you_wish_to_continue": "Você deseja continuar?", + "note": "Observação", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { "select_year": "Selecione Ano", "cards": { - "due_amount": "Montante devido", + "due_amount": "Total Vencido", "customers": "Clientes", "invoices": "Faturas", - "estimates": "Orçamentos" + "estimates": "Orçamentos", + "payments": "Payments" }, "chart_info": { "total_sales": "Vendas", @@ -108,7 +122,7 @@ }, "recent_invoices_card": { "title": "Faturas vencidas", - "due_on": "vencido em", + "due_on": "Vencido em", "customer": "Cliente", "amount_due": "Valor Devido", "actions": "Ações", @@ -127,21 +141,41 @@ "name": "Nome", "description": "Descrição", "percent": "Porcentagem", - "compound_tax": "Imposto compuesto" + "compound_tax": "Imposto Composto" }, "global_search": { - "search": "Search...", + "search": "Buscar...", "customers": "Clientes", - "users": "Users", - "no_results_found": "No Results Found" + "users": "Usuários", + "no_results_found": "Nenhum Resultado Encontrado" + }, + "company_switcher": { + "label": "TROCAR EMPRESA", + "no_results_found": "Nenhum Resultado Encontrado", + "add_new_company": "Adicionar nova empresa", + "new_company": "Nova Empresa", + "created_message": "Empresa criada com sucesso" + }, + "dateRange": { + "today": "Hoje", + "this_week": "Esta Semana", + "this_month": "Este mês", + "this_quarter": "Este trimestre", + "this_year": "Este ano", + "previous_week": "Semana anterior", + "previous_month": "Mês anterior", + "previous_quarter": "Trimestre anterior", + "previous_year": "Ano Anterior", + "custom": "Personalizado" }, "customers": { "title": "Clientes", + "prefix": "Prefixo", "add_customer": "Adicionar cliente", "contacts_list": "Lista de clientes", "name": "Nome", - "mail": "Mail | Mails", - "statement": "Statement", + "mail": "Email | Emails", + "statement": "Declaração", "display_name": "Nome de exibição", "primary_contact_name": "Nome do contato principal", "contact_name": "Nome de Contato", @@ -150,15 +184,19 @@ "address": "Endereço", "phone": "Telefone", "website": "Site", - "overview": "Overview", - "enable_portal": "Enable Portal", + "overview": "Visão Geral", + "invoice_prefix": "Prefixo da fatura", + "estimate_prefix": "Orçamento Prefixo", + "payment_prefix": "Pagamento Prefixo", + "enable_portal": "Habilitar Portal", "country": "Pais", "state": "Estado", "city": "Cidade", - "zip_code": "Código postal", - "added_on": "Adicionado", + "zip_code": "CEP", + "added_on": "Adicionado em", "action": "Ação", "password": "Senha", + "confirm_password": "Confirmar Senha", "street_number": "Número", "primary_currency": "Moeda principal", "description": "Descrição", @@ -166,16 +204,20 @@ "save_customer": "Salvar cliente", "update_customer": "Atualizar cliente", "customer": "Cliente | Clientes", - "new_customer": "Novo cliente", - "edit_customer": "Editar cliente", - "basic_info": "Informação basica", + "new_customer": "Novo Cliente", + "edit_customer": "Editar Cliente", + "basic_info": "Informação Básica", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", "billing_address": "Endereço de cobrança", "shipping_address": "Endereço de entrega", - "copy_billing_address": "Cópia de faturamento", + "copy_billing_address": "Copiar Endereço de Faturamento", "no_customers": "Ainda não há clientes!", "no_customers_found": "Clientes não encontrados!", - "no_contact": "No contact", - "no_contact_name": "No contact name", + "no_contact": "Nenhum contato", + "no_contact_name": "Sem nome de contato", "list_of_customers": "Esta seção conterá a lista de clientes.", "primary_display_name": "Nome de exibição principal", "select_currency": "Selecione o tipo de moeda", @@ -185,10 +227,12 @@ "no_matching_customers": "Não há clientes correspondentes!", "phone_number": "Número de telefone", "create_date": "Criar Data", - "confirm_delete": "Você não poderá recuperar este cliente e todas as faturas, estimativas e pagamentos relacionados. | Você não poderá recuperar esses clientes e todas as faturas, estimativas e pagamentos relacionados.", + "confirm_delete": "Você não poderá recuperar este cliente e todas as faturas, orçamentos e pagamentos relacionados. | Você não poderá recuperar esses clientes e todas as faturas, estimativas e pagamentos relacionados.", "created_message": "Cliente criado com sucesso", "updated_message": "Cliente atualizado com sucesso", - "deleted_message": "Cliente excluído com sucesso | Clientes excluídos com sucesso" + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Cliente excluído com sucesso | Clientes excluídos com sucesso", + "edit_currency_not_allowed": "Não é possível alterar a moeda depois de criar transações." }, "items": { "title": "Itens", @@ -199,7 +243,7 @@ "added_on": "Adicionado", "price": "Preço", "date_of_creation": "Data de criação", - "not_selected": "No item selected", + "not_selected": "Nenhum item selecionado", "action": "Ação", "add_item": "Adicionar item", "save_item": "Salvar item", @@ -208,11 +252,11 @@ "add_new_item": "Adicionar novo item", "new_item": "Novo item", "edit_item": "Editar item", - "no_items": "Ainda não existe itens", + "no_items": "Ainda não existe itens!", "list_of_items": "Esta seção conterá a lista de itens.", - "select_a_unit": "Seleciona unidade", + "select_a_unit": "selecionar unidade", "taxes": "Impostos", - "item_attached_message": "Não é possível excluir um item que já está em uso.", + "item_attached_message": "Não é possível excluir um item que já está em uso", "confirm_delete": "Você não poderá recuperar este item | Você não poderá recuperar esses itens", "created_message": "Item criado com sucesso", "updated_message": "Item atualizado com sucesso", @@ -220,11 +264,13 @@ }, "estimates": { "title": "Orçamentos", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", "estimate": "Orçamento | Orçamentos", "estimates_list": "Lista de orçamentos", - "days": "{dias} dias", - "months": "{meses} Mês", - "years": "{Anos} Ano", + "days": "{days} Dias", + "months": "{months} Mês", + "years": "{years} Ano", "all": "Todos", "paid": "Pago", "unpaid": "Não pago", @@ -245,7 +291,7 @@ "expiry_date": "Data de expiração", "status": "Status", "add_tax": "Adicionar Imposto", - "amount": "Montante", + "amount": "Valor", "action": "Ação", "notes": "Observações", "tax": "Imposto", @@ -253,12 +299,12 @@ "convert_to_invoice": "Converter em fatura", "mark_as_sent": "Marcar como enviado", "send_estimate": "Enviar orçamento", - "resend_estimate": "Resend Estimate", + "resend_estimate": "Reenviar Orçamento", "record_payment": "Registro de pago", "add_estimate": "Adicionar orçamento", "save_estimate": "Salvar Orçamento", - "confirm_conversion": "Deseja converter este orçamento em uma fatura?", - "conversion_message": "Converção realizada com sucesso", + "confirm_conversion": "Esse orçamento será usado para criar uma nova Fatura.", + "conversion_message": "Fatura criada com sucesso", "confirm_send_estimate": "Este orçamento será enviado por email ao cliente", "confirm_mark_as_sent": "Este orçamento será marcado como enviado", "confirm_mark_as_accepted": "Este orçamento será marcado como Aceito", @@ -270,18 +316,20 @@ "required": "Campo obrigatório" }, "accepted": "Aceito", - "rejected": "Rejected", + "rejected": "Rejeitado", + "expired": "Expired", "sent": "Enviado", "draft": "Rascunho", + "viewed": "Viewed", "declined": "Rejeitado", "new_estimate": "Novo orçamento", "add_new_estimate": "Adicionar novo orçamento", "update_Estimate": "Atualizar orçamento", "edit_estimate": "Editar orçamento", - "items": "artículos", + "items": "itens", "Estimate": "Orçamento | Orçamentos", "add_new_tax": "Adicionar novo imposto", - "no_estimates": "Ainda não há orcamentos", + "no_estimates": "Ainda não há orçamentos ainda!", "list_of_estimates": "Esta seção contém a lista de orçamentos.", "mark_as_rejected": "Marcar como rejeitado", "mark_as_accepted": "Marcar como aceito", @@ -291,7 +339,7 @@ "created_message": "Orçamento criado com sucesso", "updated_message": "Orçamento atualizado com sucesso", "deleted_message": "Orçamento excluído com sucesso | Orçamentos excluídos com sucesso", - "something_went_wrong": "Algo deu errado", + "something_went_wrong": "algo deu errado", "item": { "title": "Titulo do item", "description": "Descrição", @@ -302,29 +350,32 @@ "total_discount": "Desconto total", "sub_total": "Subtotal", "tax": "Imposto", - "amount": "Montante", + "amount": "Valor", "select_an_item": "Escreva ou clique para selecionar um item", - "type_item_description": "Tipo Item Descrição (opcional)" + "type_item_description": "Descrição do Item (opcional)" } }, "invoices": { "title": "Faturas", + "download": "Download", + "pay_invoice": "Pay Invoice", "invoices_list": "Lista de faturas", - "days": "{dias} dias", - "months": "{meses} Mês", - "years": "{anos} Ano", + "invoice_information": "Invoice Information", + "days": "{days} dias", + "months": "{months} Mês", + "years": "{years} Ano", "all": "Todas", "paid": "Paga", "unpaid": "Não Paga", - "viewed": "Viewed", - "overdue": "Overdue", - "completed": "Completed", + "viewed": "Visualizado", + "overdue": "Atrasado", + "completed": "Concluído", "customer": "CLIENTE", "paid_status": "STATUS PAGAMENTO", - "ref_no": "REFERÊNCIA", + "ref_no": "REF NO.", "number": "NÚMERO", "amount_due": "VALOR DEVIDO", - "partially_paid": "Parcialmente pago", + "partially_paid": "Parcialmente Pago", "total": "Total", "discount": "Desconto", "sub_total": "Subtotal", @@ -332,22 +383,25 @@ "invoice_number": "Número da fatura", "ref_number": "Referência", "contact": "Contato", - "add_item": "Adicionar um item", + "add_item": "Adicionar um Item", "date": "Data", "due_date": "Data de Vencimento", "status": "Status", "add_tax": "Adicionar imposto", - "amount": "Montante", + "amount": "Valor", "action": "Ação", "notes": "Observações", "view": "Ver", "send_invoice": "Enviar Fatura", - "resend_invoice": "Resend Invoice", + "resend_invoice": "Reenviar Fatura", "invoice_template": "Modelo da Fatura", + "conversion_message": "Fatura clonada com sucesso", "template": "Modelo", "mark_as_sent": "Marcar como enviada", "confirm_send_invoice": "Esta fatura será enviada por e-mail ao cliente", "invoice_mark_as_sent": "Esta fatura será marcada como enviada", + "confirm_mark_as_accepted": "Esta fatura será marcada como Aceita", + "confirm_mark_as_rejected": "Esta fatura será marcada como Rejeitado", "confirm_send": "Esta fatura será enviada por e-mail ao cliente", "invoice_date": "Data da Fatura", "record_payment": "Gravar Pagamento", @@ -359,6 +413,8 @@ "update_invoice": "Atualizar Fatura", "add_new_tax": "Adicionar novo Imposto", "no_invoices": "Ainda não há faturas!", + "mark_as_rejected": "Marcada como rejeitada", + "mark_as_accepted": "Marcar como aceita", "list_of_invoices": "Esta seção conterá a lista de faturas.", "select_invoice": "Selecionar Fatura", "no_matching_invoices": "Não há faturas correspondentes!", @@ -375,29 +431,139 @@ "discount": "Desconto", "total": "Total", "total_discount": "Desconto Total", - "sub_total": "SubTotal", + "sub_total": "Subtotal", "tax": "Imposto", - "amount": "Montante", + "amount": "Valor", "select_an_item": "Digite ou clique para selecionar um item", - "type_item_description": "Tipo Descrição do item (opcional)" + "type_item_description": "Descrição do item (opcional)" }, + "payment_attached_message": "Uma das faturas selecionadas já possui um pagamento anexado. Certifique-se de excluir os pagamentos anexados primeiro, para continuar com a exclusão", "confirm_delete": "Você não poderá recuperar esta fatura | Você não poderá recuperar essas faturas", "created_message": "Fatura criada com sucesso", "updated_message": "Fatura atualizada com sucesso", "deleted_message": "Fatura excluída com sucesso | Faturas excluídas com sucesso", "marked_as_sent_message": "Fatura marcada como enviada com sucesso", - "something_went_wrong": "Algo deu errado", + "something_went_wrong": "algo deu errado", "invalid_due_amount_message": "O valor total da fatura não pode ser menor que o valor total pago para esta fatura. Atualize a fatura ou exclua os pagamentos associados para continuar." }, + "recurring_invoices": { + "title": "Faturas Recorrentes", + "invoices_list": "Lista de Faturas Recorrentes", + "days": "{days} Dias", + "months": "{months} Mês", + "years": "{years} Ano", + "all": "Todos", + "paid": "Pago", + "unpaid": "Não pago", + "viewed": "Visualizado", + "overdue": "Atrasado", + "active": "Ativo", + "completed": "Concluído", + "customer": "CLIENTE", + "paid_status": "STATUS PAGAMENTO", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Adicionar Novo Imposto", + "no_invoices": "Não há faturas recorrentes ainda!", + "mark_as_rejected": "Marcar como rejeitada", + "mark_as_accepted": "Marcar como aceito", + "list_of_invoices": "Esta seção conterá a lista de faturas recorrentes.", + "select_invoice": "Selecionar Fatura", + "no_matching_invoices": "Não há faturas recorrentes correspondentes!", + "mark_as_sent_successfully": "Fatura recorrente marcada como enviada com sucesso", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, "payments": { "title": "Pagamentos", "payments_list": "Lista de Pagamentos", "record_payment": "Gravar Pagamento", "customer": "Cliente", "date": "Data", - "amount": "Montante", + "amount": "Valor", "action": "Ação", - "payment_number": "Número do Pagamento", + "payment_number": "Número de Pagamento", "payment_mode": "Forma de Pagamento", "invoice": "Fatura", "note": "Observação", @@ -407,20 +573,20 @@ "view_payment": "Ver Pagamento", "add_new_payment": "Adicionar novo Pagamento", "send_payment_receipt": "Enviar recibo de pagamento", - "send_payment": "Mande o pagamento", + "send_payment": "Enviar Pagamento", "save_payment": "Salvar Pagamento", "update_payment": "Atualizar Pagamento", "payment": "Pagamento | Pagamentos", - "no_payments": "Ainda sem pagamentos!", - "not_selected": "Not selected", - "no_invoice": "No invoice", + "no_payments": "Não há pagamentos ainda!", + "not_selected": "Não selecionado", + "no_invoice": "Nenhuma fatura", "no_matching_payments": "Não há pagamentos correspondentes!", "list_of_payments": "Esta seção conterá a lista de pagamentos.", "select_payment_mode": "Selecione a forma de pagamento", "confirm_mark_as_sent": "Este orçamento será marcado como enviado", - "confirm_send_payment": "This payment will be sent via email to the customer", - "send_payment_successfully": "Payment sent successfully", - "something_went_wrong": "Algo deu errado", + "confirm_send_payment": "Este pagamento será enviado por e-mail para o cliente", + "send_payment_successfully": "Pagamento enviado com sucesso", + "something_went_wrong": "algo deu errado", "confirm_delete": "Você não poderá recuperar este Pagamento | Você não poderá recuperar esses Pagamentos", "created_message": "Pagamento criado com sucesso", "updated_message": "Pagamento atualizado com sucesso", @@ -433,16 +599,17 @@ "select_a_customer": "Selecione um cliente", "expense_title": "Título", "customer": "Cliente", + "currency": "Currency", "contact": "Contato", "category": "Categoria", "from_date": "A partir da Data", "to_date": "Até a Data", "expense_date": "Data", "description": "Descrição", - "receipt": "Receita", - "amount": "Montante", + "receipt": "Recibo", + "amount": "Valor", "action": "Ação", - "not_selected": "Not selected", + "not_selected": "Não selecionado", "note": "Observação", "category_id": "Categoria", "date": "Data da Despesa", @@ -450,7 +617,7 @@ "add_new_expense": "Adicionar Nova Despesa", "save_expense": "Salvar Despesa", "update_expense": "Atualizar Despesa", - "download_receipt": "Baixar Receita", + "download_receipt": "Baixar Recibo", "edit_expense": "Editar Despesa", "new_expense": "Nova Despesa", "expense": "Despesa | Despesas", @@ -465,7 +632,7 @@ "title": "Título", "name": "Nome", "description": "Descrição", - "amount": "Montante", + "amount": "Valor", "actions": "Ações", "add_category": "Adicionar Categoria", "new_category": "Nova Categoria", @@ -479,38 +646,85 @@ "forgot_password": "Esqueceu a senha?", "or_signIn_with": "ou Entre com", "login": "Entrar", - "register": "Registre-se", - "reset_password": "Resetar Senha", + "register": "Cadastre-se", + "reset_password": "Redefinir Senha", "password_reset_successfully": "Senha redefinida com sucesso", "enter_email": "Digite email", "enter_password": "Digite a senha", "retype_password": "Confirme a Senha" }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, "users": { - "title": "Users", - "users_list": "Users List", + "title": "Usuários", + "users_list": "Lista de Usuários", "name": "Nome", "description": "Descrição", "added_on": "Adicionado", "date_of_creation": "Data de criação", "action": "Ação", - "add_user": "Add User", - "save_user": "Save User", - "update_user": "Update User", - "user": "User | Users", - "add_new_user": "Add New User", - "new_user": "New User", - "edit_user": "Edit User", - "no_users": "No users yet!", - "list_of_users": "This section will contain the list of users.", + "add_user": "Adicionar Usuário", + "save_user": "Salvar Usuário", + "update_user": "Atualizar Usuário", + "user": "Usuário | Usuários", + "add_new_user": "Adicionar Novo Usuário", + "new_user": "Novo Usuário", + "edit_user": "Editar Usuário", + "no_users": "Nenhum usuário ainda!", + "list_of_users": "Esta seção conterá a lista de usuários.", "email": "Email", "phone": "Telefone", "password": "Senha", - "user_attached_message": "Não é possível excluir um item que já está em uso.", - "confirm_delete": "You will not be able to recover this User | You will not be able to recover these Users", - "created_message": "User created successfully", - "updated_message": "User updated successfully", - "deleted_message": "User deleted successfully | User deleted successfully" + "user_attached_message": "Não é possível excluir um item que já está em uso", + "confirm_delete": "Você não poderá recuperar este Usuário | Você não poderá recuperar esses Usuários", + "created_message": "Usuário criado com sucesso", + "updated_message": "Usuário atualizado com sucesso", + "deleted_message": "Usuário excluído com sucesso | Usuários excluídos com sucesso", + "select_company_role": "Select Role for {company}", + "companies": "Companies" }, "reports": { "title": "Relatório", @@ -524,7 +738,7 @@ "update_report": "Atualizar Relatório", "report": "Relatório | Relatórios", "profit_loss": { - "profit_loss": "Perda de lucro", + "profit_loss": "Lucro & Perda", "to_date": "Até a Data", "from_date": "A partir da Data", "date_range": "Selecionar período" @@ -549,7 +763,7 @@ "invoice": "Fatura", "invoice_date": "Data da Fatura", "due_date": "Data de Vencimento", - "amount": "Montante", + "amount": "Valor", "contact_name": "Nome de Contato", "status": "Status" }, @@ -559,7 +773,7 @@ "due_date": "Data de Vencimento", "estimate_number": "Número do Orçamento", "ref_number": "Referência", - "amount": "Montante", + "amount": "Valor", "contact_name": "Nome de Contato", "status": "Status" }, @@ -567,7 +781,7 @@ "expenses": "Despesas", "category": "Categoria", "date": "Data", - "amount": "Montante", + "amount": "Valor", "to_date": "Até a Data", "from_date": "A partir da Data", "date_range": "Selecionar período" @@ -584,16 +798,21 @@ "expense_category": "Categorias de Despesas", "update_app": "Atualizar Aplicativo", "backup": "Backup", - "file_disk": "File Disk", + "file_disk": "Disco de Arquivos", "custom_fields": "Os campos personalizados", - "payment_modes": "Payment Modes", - "notes": "Observações" + "payment_modes": "Meios de Pagamento", + "notes": "Observações", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." }, "title": "Configurações", "setting": "Configuração | Configurações", "general": "Geral", "language": "Idioma", - "primary_currency": "Moéda Principal", + "primary_currency": "Moeda Principal", "timezone": "Fuso horário", "date_format": "Formato de data", "currencies": { @@ -618,17 +837,17 @@ "host": "Host de Email", "port": "Porta de Email", "driver": "Driver do email", - "secret": "Segredo", - "mailgun_secret": "Mailgun Segredo", + "secret": "Senha", + "mailgun_secret": "Senha Mailgun", "mailgun_domain": "Domínio", "mailgun_endpoint": "Endpoint do Mailgun", - "ses_secret": "SES Segredo", - "ses_key": "SES Chave", + "ses_secret": "Senha SES", + "ses_key": "Chave SES", "password": "Senha do Email", "username": "Nome de Usuário do Email", "mail_config": "Configuração de Email", - "from_name": "Do Nome de Email", - "from_mail": "Do Endereço de Email", + "from_name": "Nome do Remetente", + "from_mail": "Endereço Email do Remetente", "encryption": "Criptografia de Email", "mail_config_desc": "Abaixo está o formulário para configurar o driver de email para enviar emails do aplicativo. Você também pode configurar provedores de terceiros como Sendgrid, SES etc." }, @@ -649,19 +868,26 @@ "address": "Endereço", "zip": "CEP", "save": "Salvar", - "updated_message": "Informações da Empresa atualizadas com sucesso" + "delete": "Delete", + "updated_message": "Informações da Empresa atualizadas com sucesso", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" }, "custom_fields": { "title": "Os campos personalizados", - "section_description": "Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.", + "section_description": "Personalize as suas Faturas, Orçamentos & Recibos de Pagamento com seus próprios campos. Certifique-se de usar os campos adicionais abaixo nos formatos de endereço na página de Configurações de Personalização.", "add_custom_field": "Adicionar campo personalizado", "edit_custom_field": "Editar campo personalizado", "field_name": "Nome do campo", "label": "Rótulo", "type": "Tipo", "name": "Nome", + "slug": "Slug", "required": "Requeridas", - "placeholder": "Placeholder", + "placeholder": "Dica de Preenchimento", "help_text": "Texto de ajuda", "default_value": "Valor padrão", "prefix": "Prefixo", @@ -669,7 +895,7 @@ "model": "Modelo", "help_text_description": "Digite algum texto para ajudar os usuários a entender a finalidade desse campo personalizado.", "suffix": "Sufixo", - "yes": "sim", + "yes": "Sim", "no": "Não", "order": "Ordem", "custom_field_confirm_delete": "Você não poderá recuperar este campo personalizado", @@ -680,117 +906,136 @@ "add_another_option": "Adicione outra opção", "sort_in_alphabetical_order": "Classificar em ordem alfabética", "add_options_in_bulk": "Adicionar opções em massa", - "use_predefined_options": "Use Predefined Options", + "use_predefined_options": "Usar Opções Predefinidas", "select_custom_date": "Selecionar data personalizada", "select_relative_date": "Selecionar data relativa", "ticked_by_default": "Marcado por padrão", "updated_message": "Campo personalizado atualizado com sucesso", - "added_message": "Campo personalizado adicionado com sucesso" + "added_message": "Campo personalizado adicionado com sucesso", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." }, "customization": { - "customization": "Personalizar", - "save": "Salvar", - "addresses": { - "title": "Endereço", - "section_description": "Você pode definir o endereço de cobrança do cliente e o formato do endereço de entrega do cliente (exibido apenas em PDF).", - "customer_billing_address": "Endereço de Cobrança do Cliente", - "customer_shipping_address": "Endereço de Entrega do Cliente", - "company_address": "Endereço da Empresa", - "insert_fields": "Inserir Campos", - "contact": "Contato", - "address": "Endereço", - "display_name": "Nome em Exibição", - "primary_contact_name": "Nome do Contato Principal", - "email": "Email", - "website": "Site", - "name": "Nome", - "country": "Pais", - "state": "Estado", - "city": "Cidade", - "company_name": "Nome da Empresa", - "address_street_1": "Endereço Rua 1", - "address_street_2": "Endereço Rua 2", - "phone": "Telefone", - "zip_code": "CEP", - "address_setting_updated": "Configuração de Endereço Atualizada com Sucesso" - }, + "customization": "personalização", "updated_message": "Informações da Empresa atualizadas com sucesso", + "save": "Salvar", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", "invoices": { "title": "Faturas", - "notes": "Notas", - "invoice_prefix": "Fatura Prefixo", - "default_invoice_email_body": "Default Invoice Email Body", - "invoice_settings": "Configrações da Fatura", - "autogenerate_invoice_number": "Gerar automaticamente o número da Fatura", - "autogenerate_invoice_number_desc": "Desative isso, se você não deseja gerar automaticamente números da Fatura sempre que criar uma nova.", - "enter_invoice_prefix": "Digite o prefixo da Fatura", - "terms_and_conditions": "Termos e Condições", - "company_address_format": "Company Address Format", - "shipping_address_format": "Shipping Address Format", - "billing_address_format": "Billing Address Format", - "invoice_settings_updated": "Configuração da Fatura atualizada com sucesso" + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", + "default_invoice_email_body": "Corpo Padrão de Email de Fatura", + "company_address_format": "Formato de Endereço de Empresa", + "shipping_address_format": "Formato de Endereço de Envio", + "billing_address_format": "Formato de Endereço de Faturamento", + "invoice_email_attachment": "Enviar faturas como anexos", + "invoice_email_attachment_setting_description": "Ative esta opção se quiser anexar faturas no e-mail. Lembrando que quando habilitado, o botão 'Ver fatura' nos e-mails não será mais exibido.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." }, "estimates": { "title": "Orçamentos", - "estimate_prefix": "Orçamento Prefixo", - "default_estimate_email_body": "Default Estimate Email Body", - "estimate_settings": "Configurações do Orçamento", - "autogenerate_estimate_number": "Gerar automaticamente o número do Orçamento", - "estimate_setting_description": "Desative isso, se você não deseja gerar automaticamente números do Orçamento sempre que criar um novo.", - "enter_estimate_prefix": "Digite o prefixo do Orçamento", - "estimate_setting_updated": "Configuração do Orçamento atualizada com sucesso", - "company_address_format": "Company Address Format", - "billing_address_format": "Billing Address Format", - "shipping_address_format": "Shipping Address Format" + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", + "default_estimate_email_body": "Corpo Padrão de Email de Orçamento", + "company_address_format": "Formato de Endereço de Empresa", + "shipping_address_format": "Formato de Endereço de Envio", + "billing_address_format": "Formato de Endereço de Faturamento", + "estimate_email_attachment": "Enviar orçamentos como anexos", + "estimate_email_attachment_setting_description": "Ative esta opção se quiser anexar orçamentos no e-mail. Lembrando que quando habilitado, o botão 'Ver orçamento' nos e-mails não será mais exibido.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" }, "payments": { "title": "Pagamentos", - "description": "Modes of transaction for payments", - "payment_prefix": "Pagamento Prefixo", - "default_payment_email_body": "Default Payment Email Body", - "payment_settings": "Configurações de Pagamento", - "autogenerate_payment_number": "Gerar automaticamente número do Pagamento", - "payment_setting_description": "Desative isso, se você não deseja gerar automaticamente números do Pagamento sempre que criar um novo.", - "enter_payment_prefix": "Digite o Prefixo do Pagamento", - "payment_setting_updated": "Configurações de Pagamento atualizada com sucesso", - "payment_modes": "Payment Modes", - "add_payment_mode": "Adicionar modo de pagamento", - "edit_payment_mode": "Editar modo de pagamento", - "mode_name": "Nome do modo", - "payment_mode_added": "Modo de pagamento adicionado", - "payment_mode_updated": "Modo de pagamento atualizado", - "payment_mode_confirm_delete": "Você não poderá recuperar este modo de pagamento", - "already_in_use": "O modo de pagamento já está em uso", - "deleted_message": "Modo de pagamento excluído com sucesso", - "company_address_format": "Company Address Format", - "from_customer_address_format": "From Customer Address Format" + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", + "default_payment_email_body": "Corpo Padrão de Email de Pagamento", + "company_address_format": "Formato de Endereço de Empresa", + "from_customer_address_format": "Formato de Endereço de Cliente Remetente", + "payment_email_attachment": "Enviar pagamentos como anexos", + "payment_email_attachment_setting_description": "Ative esta opção se quiser enviar em anexo os recibos de pagamento no e-mail. Lembrando que quando habilitado, o botão 'Ver Pagamento' nos e-mails não será mais exibido.", + "payment_settings_updated": "Payment Settings updated successfully" }, "items": { "title": "Itens", - "units": "unidades", + "units": "Unidades", "add_item_unit": "Adicionar unidade de item", "edit_item_unit": "Editar unidade de item", "unit_name": "Nome da unidade", - "item_unit_added": "Item Unit Added", - "item_unit_updated": "Item Unit Updated", + "item_unit_added": "Unidade de Item Adicionada", + "item_unit_updated": "Unidade de Item Atualizada", "item_unit_confirm_delete": "Você não poderá recuperar esta unidade de item", "already_in_use": "A unidade do item já está em uso", "deleted_message": "Unidade de item excluída com sucesso" }, "notes": { "title": "Observações", - "description": "Save time by creating notes and reusing them on your invoices, estimates & payments.", - "notes": "Observações", + "description": "Economize tempo criando notas e reutilizando-as nas suas faturas, orçamentos e pagamentos.", + "notes": "Notas", "type": "Tipo", - "add_note": "Add Note", - "add_new_note": "Add New Note", + "add_note": "Adicionar Nota", + "add_new_note": "Adicionar Nova Nota", "name": "Nome", - "edit_note": "Edit Note", - "note_added": "Note added successfully", - "note_updated": "Note Updated successfully", - "note_confirm_delete": "You will not be able to recover this Note", - "already_in_use": "Note is already in use", - "deleted_message": "Note deleted successfully" + "edit_note": "Editar Nota", + "note_added": "Nota adicionada com sucesso", + "note_updated": "Nota atualizada com sucesso", + "note_confirm_delete": "Você não poderá recuperar essa nota", + "already_in_use": "A nota já está em uso", + "deleted_message": "Nota excluída com sucesso" } }, "account_settings": { @@ -822,6 +1067,57 @@ "email_save_message": "E-mail salvo com sucesso", "please_enter_email": "Por favor digite um E-mail" }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, "tax_types": { "title": "Tipos de Impostos", "add_tax": "Adicionar Imposto", @@ -834,13 +1130,25 @@ "compound_tax": "Imposto Composto", "percent": "Porcentagem", "action": "Ação", - "tax_setting_description": "Habilite isso se desejar adicionar Impostos a itens da Fatura Idividualmente. Por padrão, os impostos são adicionados diretamente à Fatura.", + "tax_setting_description": "Habilite isso se desejar adicionar Impostos a itens da Fatura Individualmente. Por padrão, os impostos são adicionados diretamente à Fatura.", "created_message": "Tipo de Imposto criado com sucesso", "updated_message": "Tipo de Imposto Atualizado com sucesso", "deleted_message": "Tipo de Imposto Deletado com sucesso", "confirm_delete": "Você não poderá recuperar este tipo de Imposto", "already_in_use": "O Imposto já está em uso" }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, "expense_category": { "title": "Categoria de Despesa", "action": "Ação", @@ -858,29 +1166,38 @@ }, "preferences": { "currency": "Moeda", - "default_language": "Default Language", + "default_language": "Idioma padrão", "time_zone": "Fuso Horário", "fiscal_year": "Ano Financeiro", "date_format": "Formato da Data", "discount_setting": "Configuração de Desconto", "discount_per_item": "Desconto por Item ", "discount_setting_description": "Habilite isso se desejar adicionar desconto a itens de Fatura individualmente. Por padrão, o desconto é adicionado diretamente à Fatura.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", "save": "Salvar", "preference": "Preferência | Preferências", "general_settings": "Preferências padrão para o sistema.", "updated_message": "Preferências atualizadas com sucesso", "select_language": "Selecione um Idioma", "select_time_zone": "Selecione um fuso horário", - "select_date_format": "Select Date Format", - "select_financial_year": "Selecione o ano financeiro" + "select_date_format": "Selecionar um Formato de Data", + "select_financial_year": "Selecione o ano financeiro", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" }, "update_app": { "title": "Atualizar Aplicativo", - "description": "Você pode atualizar facilmente o Crater, verifique se hà novas atualizações, clicando no botão abaixo", + "description": "Você pode atualizar facilmente o Crater, verifique se há novas atualizações, clicando no botão abaixo", "check_update": "Verifique se há atualizações", "avail_update": "Nova atualização disponível", "next_version": "Próxima versão", - "requirements": "Requirements", + "requirements": "Requisitos", "update": "Atualizar agora", "update_progress": "Atualização em progresso...", "progress_text": "Levará apenas alguns minutos. Não atualize a tela ou feche a janela antes que a atualização seja concluída", @@ -890,90 +1207,105 @@ "download_zip_file": "Baixar arquivo ZIP", "unzipping_package": "Descompactando o pacote", "copying_files": "Copiando arquivos", + "deleting_files": "Excluindo arquivos não utilizados", "running_migrations": "Executando migrações", - "finishing_update": "Atualização de acabamento", + "finishing_update": "Acabando a Atualização", "update_failed": "Atualização falhou", - "update_failed_text": "Desculpa! Sua atualização falhou em: {step} step" + "update_failed_text": "Desculpa! Sua atualização falhou no passo: {step}", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." }, "backup": { "title": "Backup | Backups", - "description": "The backup is a zipfile that contains all files in the directories you specify along with a dump of your database", - "new_backup": "Add New Backup", - "create_backup": "Create Backup", - "select_backup_type": "Select Backup Type", - "backup_confirm_delete": "You will not be able to recover this Backup", - "path": "Caminho", + "description": "O backup é um arquivo zip que contém todos os arquivos nas pastas que você especificou juntamente com um arquivo de backup de sua base de dados", + "new_backup": "Adicionar Novo Backup", + "create_backup": "Criar Backup", + "select_backup_type": "Selecionar Tipo de Backup", + "backup_confirm_delete": "Você não poderá recuperar este backup", + "path": "caminho", "new_disk": "Novo disco", - "created_at": "Criado em", - "size": "Tamanho", - "dropbox": "DropBox", + "created_at": "criado em", + "size": "tamanho", + "dropbox": "dropbox", "local": "local", - "healthy": "healthy", - "amount_of_backups": "Quantidade de backups", - "newest_backups": "Backups mais recentes", - "used_storage": "used storage", - "select_disk": "Select Disk", + "healthy": "sem erros", + "amount_of_backups": "quantidade de backups", + "newest_backups": "backups mais recentes", + "used_storage": "armazenamento utilizado", + "select_disk": "Selecionar Disco", "action": "Ação", - "deleted_message": "Backup deleted successfully", - "created_message": "Backup created successfully", - "invalid_disk_credentials": "Invalid credential of selected disk" + "deleted_message": "Backup excluído com sucesso", + "created_message": "Backup criado com sucesso", + "invalid_disk_credentials": "Credencial inválida para o disco selecionado" }, "disk": { - "title": "File Disk | File Disks", - "description": "By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.", - "created_at": "Criado em", - "dropbox": "DropBox", + "title": "Disco de Arquivo | Discos de Arquivo", + "description": "Por padrão, o Crater usará o seu disco local para salvar os backups, avatar e outros arquivos de imagem. Você pode configurar mais de um drivers de disco como DigitalOcean, S3 e Dropbox de acordo com sua preferência.", + "created_at": "criado em", + "dropbox": "dropbox", "name": "Nome", "driver": "Driver", "disk_type": "Tipo", "disk_name": "Nome do disco", "new_disk": "Adicionar novo disco", - "filesystem_driver": "Filesystem Driver", - "local_driver": "local Driver", - "local_root": "local Root", - "public_driver": "Public Driver", - "public_root": "Public Root", - "public_url": "Public URL", - "public_visibility": "Public Visibility", - "media_driver": "Media Driver", - "media_root": "Media Root", + "filesystem_driver": "Driver de Sistema de Arquivo", + "local_driver": "Driver local", + "local_root": "Root local", + "public_driver": "Driver Público", + "public_root": "Root Público", + "public_url": "URL Pública", + "public_visibility": "Visibilidade Pública", + "media_driver": "Driver de Mídia", + "media_root": "Root de Mídia", "aws_driver": "Driver AWS", "aws_key": "Chave AWS", - "aws_secret": "Segredo AWS", + "aws_secret": "Senha AWS", "aws_region": "Região AWS", - "aws_bucket": "AWS Bucket", - "aws_root": "AWS Root", - "do_spaces_type": "Do Spaces type", - "do_spaces_key": "Do Spaces key", - "do_spaces_secret": "Do Spaces Secret", - "do_spaces_region": "Do Spaces Region", - "do_spaces_bucket": "Do Spaces Bucket", - "do_spaces_endpoint": "Do Spaces Endpoint", - "do_spaces_root": "Do Spaces Root", - "dropbox_type": "Dropbox Type", - "dropbox_token": "Dropbox Token", - "dropbox_key": "Dropbox Key", - "dropbox_secret": "Dropbox Secret", - "dropbox_app": "Dropbox App", - "dropbox_root": "Dropbox Root", - "default_driver": "Default Driver", - "is_default": "IS DEFAULT", - "set_default_disk": "Set Default Disk", - "success_set_default_disk": "Disk set as default successfully", - "save_pdf_to_disk": "Save PDFs to Disk", - "disk_setting_description": " Enable this, if you wish to save a copy of each Invoice, Estimate & Payment Receipt PDF on your default disk automatically. Turning this option will decrease the load-time when viewing the PDFs.", - "select_disk": "Select Disk", - "disk_settings": "Disk Settings", - "confirm_delete": "Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater", + "aws_bucket": "Bucket AWS", + "aws_root": "Root AWS", + "do_spaces_type": "Tipo de Spaces Do", + "do_spaces_key": "Chave de Spaces Do", + "do_spaces_secret": "Senha de Spaces Do", + "do_spaces_region": "Região de Spaces Do", + "do_spaces_bucket": "Bucket de Spaces Do", + "do_spaces_endpoint": "Endpoint de Spaces Do", + "do_spaces_root": "Root de Spaces Do", + "dropbox_type": "Tipo de Dropbox", + "dropbox_token": "Token Dropbox", + "dropbox_key": "Chave Dropbox", + "dropbox_secret": "Senha Dropbox", + "dropbox_app": "Aplicativo Dropbox", + "dropbox_root": "Root Dropbox", + "default_driver": "Driver Padrão", + "is_default": "ESTÁ PADRÃO", + "set_default_disk": "Definir Disco Padrão", + "set_default_disk_confirm": "Este disco será definido como padrão e todos os novos PDFs serão salvos neste disco", + "success_set_default_disk": "Disco definido como padrão com sucesso", + "save_pdf_to_disk": "Salvar PDFs no Disco", + "disk_setting_description": " Ative isso, se você deseja salvar uma cópia de cada PDF das Faturas, Orçamentos e Recibos de Pagamento em seu disco padrão, automaticamente. Habilitar esta opção diminuirá o tempo de carregamento ao visualizar os PDFs.", + "select_disk": "Selecionar Disco", + "disk_settings": "Configurações de Disco", + "confirm_delete": "Seus arquivos e pastas existentes no disco especificado não serão afetados, mas sua configuração de disco será excluída do Crater", "action": "Ação", - "edit_file_disk": "Edit File Disk", - "success_create": "Disk added successfully", - "success_update": "Disk updated successfully", - "error": "Disk addition failed", - "deleted_message": "File Disk deleted successfully", - "disk_variables_save_successfully": "Disk Configured Successfully", - "disk_variables_save_error": "Disk configuration failed.", - "invalid_disk_credentials": "Invalid credential of selected disk" + "edit_file_disk": "Editar Disco de Arquivos", + "success_create": "Disco adicionado com sucesso", + "success_update": "Disco atualizado com sucesso", + "error": "Falha na adição de disco", + "deleted_message": "Disco de arquivo excluído com sucesso", + "disk_variables_save_successfully": "Disco configurado com sucesso", + "disk_variables_save_error": "Configuração do disco falhou.", + "invalid_disk_credentials": "Credencial inválida para o disco selecionado" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { @@ -988,10 +1320,11 @@ "company_info_desc": "Esta informação será exibida nas Faturas. Observe que você pode editar isso mais tarde na página de configurações.", "company_name": "Nome da Empresa", "company_logo": "Logotipo da Empresa", - "logo_preview": "Previsualizar Logotipo", + "logo_preview": "Pré-visualizar Logotipo", "preferences": "Preferências", "preferences_desc": "Preferências padrão para o sistema.", - "country": "Pais", + "currency_set_alert": "The company's currency cannot be changed later.", + "country": "País", "state": "Estado", "city": "Cidade", "address": "Endereço", @@ -1016,10 +1349,10 @@ "port": "Porta da Base de Dados", "password": "Senha da Base de Dados", "app_url": "URL do Aplicativo", - "app_domain": "App Domain", + "app_domain": "Domínio do Aplicativo", "username": "Usuário da Base de Dados", "db_name": "Nome da Base de Dados", - "db_path": "Database Path", + "db_path": "Pasta do Banco de Dados", "desc": "Crie um Banco de Dados no seu servidor e defina as credenciais usando o formulário abaixo." }, "permissions": { @@ -1028,15 +1361,24 @@ "permission_confirm_desc": "Falha na verificação de permissão da pasta", "permission_desc": "Abaixo está a lista de permissões de pasta que são necessárias para que o aplicativo funcione. Se a verificação da permissão falhar, atualize as permissões da pasta." }, + "verify_domain": { + "title": "Verificação de Domínio", + "desc": "O Cratera usa a autenticação baseada na sessão que requer verificação de domínio para fins de segurança. Por favor, insira o domínio no qual você vai acessar seu aplicativo web.", + "app_domain": "Domínio do Aplicativo", + "verify_now": "Verificar Agora", + "success": "Domínio Verificado com Sucesso.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verificar e Continuar" + }, "mail": { "host": "Host do email", "port": "Porta do email", "driver": "Driver do email", - "secret": "Segredo", - "mailgun_secret": "Segredo do Mailgun", + "secret": "Senha", + "mailgun_secret": "Senha do Mailgun", "mailgun_domain": "Domínio", "mailgun_endpoint": "Endpoint do Mailgun", - "ses_secret": "Segredo do SES", + "ses_secret": "Senha do SES", "ses_key": "Chave SES", "password": "Senha do email", "username": "Nome do Usuário do email", @@ -1066,18 +1408,19 @@ }, "validation": { "invalid_phone": "Número de telefone inválido", - "invalid_url": "url inválidas (ex: http://www.craterapp.com)", - "invalid_domain_url": "url inválidas (ex: craterapp.com)", + "invalid_url": "URL inválida (ex: http://www.crater.com)", + "invalid_domain_url": "URL inválida (ex: crater.com)", "required": "Campo obrigatório", - "email_incorrect": "E-mail incorreto", - "email_already_taken": "O email já foi recebido.", + "email_incorrect": "E-mail incorreto.", + "email_already_taken": "O email já está em uso.", "email_does_not_exist": "O usuário com determinado email não existe", - "item_unit_already_taken": "This item unit name has already been taken", - "payment_mode_already_taken": "This payment mode name has already been taken", + "item_unit_already_taken": "Este nome de unidade de item já está em uso", + "payment_mode_already_taken": "Este meio de pagamento já foi utilizado", "send_reset_link": "Enviar link de redefinição", "not_yet": "Ainda não? Envie novamente", - "password_min_length": "A senha deve conter {count} caracteres", + "password_min_length": "A senha deve ter {count} caracteres", "name_min_length": "O nome deve ter pelo menos {count} letras.", + "prefix_min_length": "Prefix must have at least {count} letters.", "enter_valid_tax_rate": "Insira uma taxa de imposto válida", "numbers_only": "Apenas Números.", "characters_only": "Apenas Caracteres.", @@ -1090,57 +1433,89 @@ "quantity_maxlength": "A quantidade não deve exceder 20 dígitos.", "price_maxlength": "O preço não deve ser superior a 20 dígitos.", "price_minvalue": "O preço deve ser maior que 0.", - "amount_maxlength": "Montante não deve ser superior a 20 dígitos.", - "amount_minvalue": "Montante deve ser maior que zero", + "amount_maxlength": "Valor não deve ter mais de 20 dígitos.", + "amount_minvalue": "O valor deve ser maior que 0.", + "discount_maxlength": "Discount should not be greater than max discount", "description_maxlength": "A descrição não deve ter mais que 255 caracteres.", - "subject_maxlength": "Subject should not be greater than 100 characters.", - "message_maxlength": "Message should not be greater than 255 characters.", + "subject_maxlength": "O assunto não deve ter mais que 100 caracteres.", + "message_maxlength": "A mensagem não deve ter mais que 255 caracteres.", "maximum_options_error": "Máximo de {max} opções selecionadas. Primeiro remova uma opção selecionada para selecionar outra.", "notes_maxlength": "As anotações não devem ter mais que 255 caracteres.", "address_maxlength": "O endereço não deve ter mais que 255 caracteres.", "ref_number_maxlength": "O número de referência não deve ter mais que 255 caracteres.", "prefix_maxlength": "O prefixo não deve ter mais que 5 caracteres.", - "something_went_wrong": "Algo deu errado" + "something_went_wrong": "algo deu errado", + "number_length_minvalue": "O valor deve ser maior que 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, "pdf_estimate_label": "Orçamento", "pdf_estimate_number": "Numero do Orçamento", "pdf_estimate_date": "Data do Orçamento", - "pdf_estimate_expire_date": "Expiry date", + "pdf_estimate_expire_date": "Data de expiração", "pdf_invoice_label": "Fatura", "pdf_invoice_number": "Número da fatura", "pdf_invoice_date": "Data da Fatura", - "pdf_invoice_due_date": "Due date", + "pdf_invoice_due_date": "Data de Vencimento", "pdf_notes": "Observações", "pdf_items_label": "Itens", "pdf_quantity_label": "Quantidade", "pdf_price_label": "Preço", "pdf_discount_label": "Desconto", - "pdf_amount_label": "Montante", + "pdf_amount_label": "Valor", "pdf_subtotal": "Subtotal", "pdf_total": "Total", - "pdf_payment_label": "Payment", - "pdf_payment_receipt_label": "PAYMENT RECEIPT", - "pdf_payment_date": "Payment Date", + "pdf_payment_label": "Pagamento", + "pdf_payment_receipt_label": "RECIBO DE PAGAMENTO", + "pdf_payment_date": "Data de Pagamento", "pdf_payment_number": "Número do Pagamento", "pdf_payment_mode": "Forma de Pagamento", - "pdf_payment_amount_received_label": "Amount Received", - "pdf_expense_report_label": "EXPENSES REPORT", - "pdf_total_expenses_label": "TOTAL EXPENSE", - "pdf_profit_loss_label": "PROFIT & LOSS REPORT", - "pdf_sales_customers_label": "Sales Customer Report", - "pdf_sales_items_label": "Sales Item Report", - "pdf_tax_summery_label": "Tax Summary Report", - "pdf_income_label": "INCOME", - "pdf_net_profit_label": "NET PROFIT", - "pdf_customer_sales_report": "Sales Report: By Customer", - "pdf_total_sales_label": "TOTAL SALES", - "pdf_item_sales_label": "Sales Report: By Item", - "pdf_tax_report_label": "TAX REPORT", - "pdf_total_tax_label": "TOTAL TAX", + "pdf_payment_amount_received_label": "Valor Recebido", + "pdf_expense_report_label": "RELATÓRIO DE DESPESAS", + "pdf_total_expenses_label": "TOTAL DESPESAS", + "pdf_profit_loss_label": "RELATÓRIO LUCRO & PERDA", + "pdf_sales_customers_label": "Relatório de vendas cliente", + "pdf_sales_items_label": "Relatório de venda de itens", + "pdf_tax_summery_label": "Relatório resumido de imposto", + "pdf_income_label": "RENDA", + "pdf_net_profit_label": "LUCRO LÍQUIDO", + "pdf_customer_sales_report": "Relatório de Vendas: Por Cliente", + "pdf_total_sales_label": "VENDAS TOTAIS", + "pdf_item_sales_label": "Relatório de Vendas: Por Item", + "pdf_tax_report_label": "RELATÓRIO DE IMPOSTOS", + "pdf_total_tax_label": "IMPOSTOS TOTAIS", "pdf_tax_types_label": "Tipos de Impostos", "pdf_expenses_label": "Despesas", "pdf_bill_to": "Cobrar a,", "pdf_ship_to": "Envie a,", - "pdf_received_from": "Received from:", + "pdf_received_from": "Remetente:", "pdf_tax_label": "Tax" } diff --git a/resources/scripts/locales/ro.json b/resources/scripts/locales/ro.json new file mode 100644 index 000000000..9b35647cf --- /dev/null +++ b/resources/scripts/locales/ro.json @@ -0,0 +1,1521 @@ +{ + "navigation": { + "dashboard": "Tablou de bord", + "customers": "Clienţi", + "items": "Obiecte", + "invoices": "Facturi", + "recurring-invoices": "Facturi recurente", + "expenses": "Cheltuieli", + "estimates": "Estimări", + "payments": "Plaţi", + "reports": "Rapoarte", + "settings": "Setări", + "logout": "Deconectare", + "users": "Utilizatori", + "modules": "Modules" + }, + "general": { + "add_company": "Adaugă firmă", + "view_pdf": "Vizualizare PDF", + "copy_pdf_url": "Copiază URL-ul PDF", + "download_pdf": "Descarcă PDF-ul", + "save": "Salvează", + "create": "Crează", + "cancel": "Anulează", + "update": "Actualizează", + "deselect": "Deselectează", + "download": "Descarcă", + "from_date": "De la Data", + "to_date": "Până la Data", + "from": "De la", + "to": "Până la", + "ok": "Ok", + "yes": "Da", + "no": "Nu", + "sort_by": "Sortează după", + "ascending": "Crescător", + "descending": "Descrescător", + "subject": "Subiect", + "body": "Conţinut", + "message": "Mesaj", + "send": "Trimite", + "preview": "Previzualizare", + "go_back": "Înapoi", + "back_to_login": "Înapoi la Autentificare?", + "home": "Acasă", + "filter": "Filtrează", + "delete": "Șterge", + "edit": "Editează", + "view": "Vizualizează", + "add_new_item": "Adaugă element nou", + "clear_all": "Șterge Tot", + "showing": "Afișare", + "of": "din", + "actions": "Acţiuni", + "subtotal": "SUBTOTAL", + "discount": "REDUCERE", + "fixed": "Fix", + "percentage": "Procentaj", + "tax": "IMPOZIT", + "total_amount": "SUMA TOTALĂ", + "bill_to": "Client", + "ship_to": "Livrează la", + "due": "Scadență", + "draft": "Schiţă", + "sent": "Trimis", + "all": "Toate", + "select_all": "Selectaţi tot", + "select_template": "Selectați șablonul", + "choose_file": "Faceţi clic aici pentru a alege un fişier", + "choose_template": "Alegeți un șablon", + "choose": "Alegeți", + "remove": "Ștergeți", + "select_a_status": "Selectaţi un status", + "select_a_tax": "Selectați o taxă", + "search": "Caută", + "are_you_sure": "Sunteți sigur?", + "list_is_empty": "Lista este goală.", + "no_tax_found": "Nicio taxă găsită!", + "four_zero_four": "Mesaj de eroare 404", + "you_got_lost": "Hopa! Te-ai pierdut!", + "go_home": "Du-te la pagina principală", + "test_mail_conf": "Testează configurarea e-mailului", + "send_mail_successfully": "E-Mail trimis cu succes", + "setting_updated": "Setările au fost actualizate", + "select_state": "Selectează județul", + "select_country": "Selectează țara", + "select_city": "Selectează orașul", + "street_1": "Strada", + "street_2": "Strada (optional)", + "action_failed": "Acțiune eșuată", + "retry": "Reîncercați", + "choose_note": "Alegeți nota", + "no_note_found": "Nu s-a găsit nicio notă", + "insert_note": "Adaugă o notă", + "copied_pdf_url_clipboard": "URL-ul PDF copiat în clipboard!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Documentație", + "do_you_wish_to_continue": "Doriţi să continuaţi?", + "note": "Note", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" + }, + "dashboard": { + "select_year": "Selectați anul", + "cards": { + "due_amount": "Suma datorată", + "customers": "Clienţi", + "invoices": "Facturi", + "estimates": "Estimări", + "payments": "Payments" + }, + "chart_info": { + "total_sales": "Vânzări", + "total_receipts": "Chitanţe", + "total_expense": "Cheltuieli", + "net_income": "Venit net", + "year": "Selectați anul" + }, + "monthly_chart": { + "title": "Vânzări & Cheltuieli" + }, + "recent_invoices_card": { + "title": "Facturi scadente", + "due_on": "Scadent pe", + "customer": "Client", + "amount_due": "Suma datorată", + "actions": "Acţiuni", + "view_all": "Vezi tot" + }, + "recent_estimate_card": { + "title": "Estimări recente", + "date": "Dată", + "customer": "Client", + "amount_due": "Suma datorată", + "actions": "Acţiuni", + "view_all": "Vezi tot" + } + }, + "tax_types": { + "name": "Nume", + "description": "Descriere", + "percent": "Procent", + "compound_tax": "Impozite combinate" + }, + "global_search": { + "search": "Caută...", + "customers": "Clienţi", + "users": "Utilizatori", + "no_results_found": "Nu au fost găsite rezultate" + }, + "company_switcher": { + "label": "Schimbare Companie", + "no_results_found": "Nu au fost găsite rezultate", + "add_new_company": "Adăugați companie nouă", + "new_company": "Companie nouă", + "created_message": "Companie creată cu succes" + }, + "dateRange": { + "today": "Astăzi", + "this_week": "Săptămâna aceasta", + "this_month": "Luna aceasta", + "this_quarter": "Acest trimestru", + "this_year": "Acest an", + "previous_week": "Saptamana trecută", + "previous_month": "Luna trecută", + "previous_quarter": "Trimestrul precedent", + "previous_year": "Anul trecut", + "custom": "Particularizat" + }, + "customers": { + "title": "Clienţi", + "prefix": "Prefix", + "add_customer": "Adauga client", + "contacts_list": "Lista clienti", + "name": "Nume", + "mail": "Mail | E-mailuri", + "statement": "Declaraţie", + "display_name": "Nume afişat", + "primary_contact_name": "Nume persoană de contact principală", + "contact_name": "Nume persoană de contact", + "amount_due": "Suma datorată", + "email": "E-mail", + "address": "Adresă", + "phone": "Telefon", + "website": "Site web", + "overview": "Prezentare generală", + "invoice_prefix": "Prefix factură", + "estimate_prefix": "Prefix factură estimată", + "payment_prefix": "Prefix plată", + "enable_portal": "Activează Portal", + "country": "Țara", + "state": "Județ", + "city": "Oraș/Localitate", + "zip_code": "Cod Poştal", + "added_on": "Adăugat pe", + "action": "Acţiune", + "password": "Parola", + "confirm_password": "Confirmați parola", + "street_number": "Număr stradă", + "primary_currency": "Moneda principală", + "description": "Descriere", + "add_new_customer": "Adaugă un client nou", + "save_customer": "Salvare client", + "update_customer": "Actualizare client", + "customer": "Client | Clienți", + "new_customer": "Client Nou", + "edit_customer": "Modificare client", + "basic_info": "Informaţii de bază", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", + "billing_address": "Adresa de facturare", + "shipping_address": "Adresă de livrare", + "copy_billing_address": "Copiază de la datele de facturare", + "no_customers": "Nici un client momentan!", + "no_customers_found": "Nu a fost găsit nici un client!", + "no_contact": "Fără date de contact", + "no_contact_name": "Fără nume de contact", + "list_of_customers": "Această secţiune va conţine lista clienţilor.", + "primary_display_name": "Nume principal afișat", + "select_currency": "Selectați o moneda", + "select_a_customer": "Selectați un client", + "type_or_click": "Tastați sau faceți clic pentru a selecta", + "new_transaction": "Tranzacție nouă", + "no_matching_customers": "Nu există clienți corespunzători!", + "phone_number": "Număr de telefon", + "create_date": "Data creării", + "confirm_delete": "You will not be able to recover this customer and all the related Invoices, Estimates and Payments. | You will not be able to recover these customers and all the related Invoices, Estimates and Payments.", + "created_message": "Customer created successfully", + "updated_message": "Customer updated successfully", + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Customer deleted successfully | Customers deleted successfully", + "edit_currency_not_allowed": "Cannot change currency once transactions created." + }, + "items": { + "title": "Articole", + "items_list": "Lista de articole", + "name": "Nume", + "unit": "Unitate", + "description": "Descriere", + "added_on": "Adăugat pe", + "price": "Preț", + "date_of_creation": "Data Creării", + "not_selected": "Niciun articol nu este selectat", + "action": "Acţiune", + "add_item": "Adăugaţi articol", + "save_item": "Save Item", + "update_item": "Update Item", + "item": "Item | Items", + "add_new_item": "Add New Item", + "new_item": "New Item", + "edit_item": "Edit Item", + "no_items": "No items yet!", + "list_of_items": "This section will contain the list of items.", + "select_a_unit": "select unit", + "taxes": "Taxes", + "item_attached_message": "Cannot delete an item which is already in use", + "confirm_delete": "You will not be able to recover this Item | You will not be able to recover these Items", + "created_message": "Item created successfully", + "updated_message": "Item updated successfully", + "deleted_message": "Item deleted successfully | Items deleted successfully" + }, + "estimates": { + "title": "Estimări", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", + "estimate": "Estimate | Estimates", + "estimates_list": "Listă Estimări", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "Toate", + "paid": "Plătit", + "unpaid": "Neplătit", + "customer": "CLIENT", + "ref_no": "NR. REF", + "number": "NUMĂR", + "amount_due": "SUMA DE INCASAT", + "partially_paid": "Parțial plătit", + "total": "Total", + "discount": "Reducere", + "sub_total": "Subtotal", + "estimate_number": "Estimate Number", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "due_date": "Due Date", + "expiry_date": "Expiry Date", + "status": "Status", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "tax": "Tax", + "estimate_template": "Template", + "convert_to_invoice": "Convert to Invoice", + "mark_as_sent": "Mark as Sent", + "send_estimate": "Send Estimate", + "resend_estimate": "Resend Estimate", + "record_payment": "Record Payment", + "add_estimate": "Add Estimate", + "save_estimate": "Save Estimate", + "confirm_conversion": "This estimate will be used to create a new Invoice.", + "conversion_message": "Invoice created successful", + "confirm_send_estimate": "This estimate will be sent via email to the customer", + "confirm_mark_as_sent": "This estimate will be marked as sent", + "confirm_mark_as_accepted": "This estimate will be marked as Accepted", + "confirm_mark_as_rejected": "This estimate will be marked as Rejected", + "no_matching_estimates": "There are no matching estimates!", + "mark_as_sent_successfully": "Estimate marked as sent successfully", + "send_estimate_successfully": "Estimate sent successfully", + "errors": { + "required": "Field is required" + }, + "accepted": "Accepted", + "rejected": "Rejected", + "expired": "Expired", + "sent": "Sent", + "draft": "Draft", + "viewed": "Viewed", + "declined": "Declined", + "new_estimate": "New Estimate", + "add_new_estimate": "Add New Estimate", + "update_Estimate": "Update Estimate", + "edit_estimate": "Edit Estimate", + "items": "items", + "Estimate": "Estimate | Estimates", + "add_new_tax": "Add New Tax", + "no_estimates": "No estimates yet!", + "list_of_estimates": "This section will contain the list of estimates.", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "marked_as_accepted_message": "Estimate marked as accepted", + "marked_as_rejected_message": "Estimate marked as rejected", + "confirm_delete": "You will not be able to recover this Estimate | You will not be able to recover these Estimates", + "created_message": "Estimate created successfully", + "updated_message": "Estimate updated successfully", + "deleted_message": "Estimate deleted successfully | Estimates deleted successfully", + "something_went_wrong": "something went wrong", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + } + }, + "invoices": { + "title": "Invoices", + "download": "Download", + "pay_invoice": "Pay Invoice", + "invoices_list": "Invoices List", + "invoice_information": "Invoice Information", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Viewed", + "overdue": "Overdue", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Invoice | Invoices", + "invoice_number": "Invoice Number", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "due_date": "Due Date", + "status": "Status", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "send_invoice": "Send Invoice", + "resend_invoice": "Resend Invoice", + "invoice_template": "Invoice Template", + "conversion_message": "Invoice cloned successful", + "template": "Select Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This invoice will be marked as sent", + "confirm_mark_as_accepted": "This invoice will be marked as Accepted", + "confirm_mark_as_rejected": "This invoice will be marked as Rejected", + "confirm_send": "This invoice will be sent via email to the customer", + "invoice_date": "Invoice Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Invoice", + "new_invoice": "New Invoice", + "save_invoice": "Save Invoice", + "update_invoice": "Update Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching invoices!", + "mark_as_sent_successfully": "Invoice marked as sent successfully", + "invoice_sent_successfully": "Invoice sent successfully", + "cloned_successfully": "Invoice cloned successfully", + "clone_invoice": "Clone Invoice", + "confirm_clone": "This invoice will be cloned into a new Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "payment_attached_message": "One of the selected invoices already have a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal", + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Invoice created successfully", + "updated_message": "Invoice updated successfully", + "deleted_message": "Invoice deleted successfully | Invoices deleted successfully", + "marked_as_sent_message": "Invoice marked as sent successfully", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Invoice amount cannot be less than total paid amount for this Invoice. Please update the invoice or delete the associated payments to continue." + }, + "recurring_invoices": { + "title": "Recurring Invoices", + "invoices_list": "Recurring Invoices List", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Viewed", + "overdue": "Overdue", + "active": "Active", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, + "payments": { + "title": "Payments", + "payments_list": "Payments List", + "record_payment": "Record Payment", + "customer": "Customer", + "date": "Date", + "amount": "Amount", + "action": "Action", + "payment_number": "Payment Number", + "payment_mode": "Payment Mode", + "invoice": "Invoice", + "note": "Note", + "add_payment": "Add Payment", + "new_payment": "New Payment", + "edit_payment": "Edit Payment", + "view_payment": "View Payment", + "add_new_payment": "Add New Payment", + "send_payment_receipt": "Send Payment Receipt", + "send_payment": "Send Payment", + "save_payment": "Save Payment", + "update_payment": "Update Payment", + "payment": "Payment | Payments", + "no_payments": "No payments yet!", + "not_selected": "Not selected", + "no_invoice": "No invoice", + "no_matching_payments": "There are no matching payments!", + "list_of_payments": "This section will contain the list of payments.", + "select_payment_mode": "Select payment mode", + "confirm_mark_as_sent": "This estimate will be marked as sent", + "confirm_send_payment": "This payment will be sent via email to the customer", + "send_payment_successfully": "Payment sent successfully", + "something_went_wrong": "something went wrong", + "confirm_delete": "You will not be able to recover this Payment | You will not be able to recover these Payments", + "created_message": "Payment created successfully", + "updated_message": "Payment updated successfully", + "deleted_message": "Payment deleted successfully | Payments deleted successfully", + "invalid_amount_message": "Payment amount is invalid" + }, + "expenses": { + "title": "Expenses", + "expenses_list": "Expenses List", + "select_a_customer": "Select a customer", + "expense_title": "Title", + "customer": "Customer", + "currency": "Currency", + "contact": "Contact", + "category": "Category", + "from_date": "From Date", + "to_date": "To Date", + "expense_date": "Date", + "description": "Description", + "receipt": "Receipt", + "amount": "Amount", + "action": "Action", + "not_selected": "Not selected", + "note": "Note", + "category_id": "Category Id", + "date": "Date", + "add_expense": "Add Expense", + "add_new_expense": "Add New Expense", + "save_expense": "Save Expense", + "update_expense": "Update Expense", + "download_receipt": "Download Receipt", + "edit_expense": "Edit Expense", + "new_expense": "New Expense", + "expense": "Expense | Expenses", + "no_expenses": "No expenses yet!", + "list_of_expenses": "This section will contain the list of expenses.", + "confirm_delete": "You will not be able to recover this Expense | You will not be able to recover these Expenses", + "created_message": "Expense created successfully", + "updated_message": "Expense updated successfully", + "deleted_message": "Expense deleted successfully | Expenses deleted successfully", + "categories": { + "categories_list": "Categories List", + "title": "Title", + "name": "Name", + "description": "Description", + "amount": "Amount", + "actions": "Actions", + "add_category": "Add Category", + "new_category": "New Category", + "category": "Category | Categories", + "select_a_category": "Select a category" + } + }, + "login": { + "email": "Email", + "password": "Password", + "forgot_password": "Forgot Password?", + "or_signIn_with": "or Sign in with", + "login": "Login", + "register": "Register", + "reset_password": "Reset Password", + "password_reset_successfully": "Password Reset Successfully", + "enter_email": "Enter email", + "enter_password": "Enter Password", + "retype_password": "Retype Password" + }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, + "users": { + "title": "Users", + "users_list": "Users List", + "name": "Name", + "description": "Description", + "added_on": "Added On", + "date_of_creation": "Date Of Creation", + "action": "Action", + "add_user": "Add User", + "save_user": "Save User", + "update_user": "Update User", + "user": "User | Users", + "add_new_user": "Add New User", + "new_user": "New User", + "edit_user": "Edit User", + "no_users": "No users yet!", + "list_of_users": "This section will contain the list of users.", + "email": "Email", + "phone": "Phone", + "password": "Password", + "user_attached_message": "Cannot delete an item which is already in use", + "confirm_delete": "You will not be able to recover this User | You will not be able to recover these Users", + "created_message": "User created successfully", + "updated_message": "User updated successfully", + "deleted_message": "User deleted successfully | Users deleted successfully", + "select_company_role": "Select Role for {company}", + "companies": "Companies" + }, + "reports": { + "title": "Report", + "from_date": "From Date", + "to_date": "To Date", + "status": "Status", + "paid": "Paid", + "unpaid": "Unpaid", + "download_pdf": "Download PDF", + "view_pdf": "View PDF", + "update_report": "Update Report", + "report": "Report | Reports", + "profit_loss": { + "profit_loss": "Profit & Loss", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" + }, + "sales": { + "sales": "Sales", + "date_range": "Select Date Range", + "to_date": "To Date", + "from_date": "From Date", + "report_type": "Report Type" + }, + "taxes": { + "taxes": "Taxes", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" + }, + "errors": { + "required": "Field is required" + }, + "invoices": { + "invoice": "Invoice", + "invoice_date": "Invoice Date", + "due_date": "Due Date", + "amount": "Amount", + "contact_name": "Contact Name", + "status": "Status" + }, + "estimates": { + "estimate": "Estimate", + "estimate_date": "Estimate Date", + "due_date": "Due Date", + "estimate_number": "Estimate Number", + "ref_number": "Ref Number", + "amount": "Amount", + "contact_name": "Contact Name", + "status": "Status" + }, + "expenses": { + "expenses": "Expenses", + "category": "Category", + "date": "Date", + "amount": "Amount", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" + } + }, + "settings": { + "menu_title": { + "account_settings": "Account Settings", + "company_information": "Company Information", + "customization": "Customization", + "preferences": "Preferences", + "notifications": "Notifications", + "tax_types": "Tax Types", + "expense_category": "Expense Categories", + "update_app": "Update App", + "backup": "Backup", + "file_disk": "File Disk", + "custom_fields": "Custom Fields", + "payment_modes": "Payment Modes", + "notes": "Notes", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." + }, + "title": "Settings", + "setting": "Settings | Settings", + "general": "General", + "language": "Language", + "primary_currency": "Primary Currency", + "timezone": "Time Zone", + "date_format": "Date Format", + "currencies": { + "title": "Currencies", + "currency": "Currency | Currencies", + "currencies_list": "Currencies List", + "select_currency": "Select Currency", + "name": "Name", + "code": "Code", + "symbol": "Symbol", + "precision": "Precision", + "thousand_separator": "Thousand Separator", + "decimal_separator": "Decimal Separator", + "position": "Position", + "position_of_symbol": "Position Of Symbol", + "right": "Right", + "left": "Left", + "action": "Action", + "add_currency": "Add Currency" + }, + "mail": { + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Mail Password", + "username": "Mail Username", + "mail_config": "Mail Configuration", + "from_name": "From Mail Name", + "from_mail": "From Mail Address", + "encryption": "Mail Encryption", + "mail_config_desc": "Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc." + }, + "pdf": { + "title": "PDF Setting", + "footer_text": "Footer Text", + "pdf_layout": "PDF Layout" + }, + "company_info": { + "company_info": "Company info", + "company_name": "Company Name", + "company_logo": "Company Logo", + "section_description": "Information about your company that will be displayed on invoices, estimates and other documents created by Crater.", + "phone": "Phone", + "country": "Country", + "state": "State", + "city": "City", + "address": "Address", + "zip": "Zip", + "save": "Save", + "delete": "Delete", + "updated_message": "Company information updated successfully", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" + }, + "custom_fields": { + "title": "Custom Fields", + "section_description": "Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.", + "add_custom_field": "Add Custom Field", + "edit_custom_field": "Edit Custom Field", + "field_name": "Field Name", + "label": "Label", + "type": "Type", + "name": "Name", + "slug": "Slug", + "required": "Required", + "placeholder": "Placeholder", + "help_text": "Help Text", + "default_value": "Default Value", + "prefix": "Prefix", + "starting_number": "Starting Number", + "model": "Model", + "help_text_description": "Enter some text to help users understand the purpose of this custom field.", + "suffix": "Suffix", + "yes": "Yes", + "no": "No", + "order": "Order", + "custom_field_confirm_delete": "You will not be able to recover this Custom Field", + "already_in_use": "Custom Field is already in use", + "deleted_message": "Custom Field deleted successfully", + "options": "options", + "add_option": "Add Options", + "add_another_option": "Add another option", + "sort_in_alphabetical_order": "Sort in Alphabetical Order", + "add_options_in_bulk": "Add options in bulk", + "use_predefined_options": "Use Predefined Options", + "select_custom_date": "Select Custom Date", + "select_relative_date": "Select Relative Date", + "ticked_by_default": "Ticked by default", + "updated_message": "Custom Field updated successfully", + "added_message": "Custom Field added successfully", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." + }, + "customization": { + "customization": "customization", + "updated_message": "Company information updated successfully", + "save": "Save", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", + "invoices": { + "title": "Invoices", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", + "default_invoice_email_body": "Default Invoice Email Body", + "company_address_format": "Company Address Format", + "shipping_address_format": "Shipping Address Format", + "billing_address_format": "Billing Address Format", + "invoice_email_attachment": "Send invoices as attachments", + "invoice_email_attachment_setting_description": "Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." + }, + "estimates": { + "title": "Estimates", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", + "default_estimate_email_body": "Default Estimate Email Body", + "company_address_format": "Company Address Format", + "shipping_address_format": "Shipping Address Format", + "billing_address_format": "Billing Address Format", + "estimate_email_attachment": "Send estimates as attachments", + "estimate_email_attachment_setting_description": "Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" + }, + "payments": { + "title": "Payments", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", + "default_payment_email_body": "Default Payment Email Body", + "company_address_format": "Company Address Format", + "from_customer_address_format": "From Customer Address Format", + "payment_email_attachment": "Send payments as attachments", + "payment_email_attachment_setting_description": "Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.", + "payment_settings_updated": "Payment Settings updated successfully" + }, + "items": { + "title": "Items", + "units": "Units", + "add_item_unit": "Add Item Unit", + "edit_item_unit": "Edit Item Unit", + "unit_name": "Unit Name", + "item_unit_added": "Item Unit Added", + "item_unit_updated": "Item Unit Updated", + "item_unit_confirm_delete": "You will not be able to recover this Item unit", + "already_in_use": "Item Unit is already in use", + "deleted_message": "Item Unit deleted successfully" + }, + "notes": { + "title": "Notes", + "description": "Save time by creating notes and reusing them on your invoices, estimates & payments.", + "notes": "Notes", + "type": "Type", + "add_note": "Add Note", + "add_new_note": "Add New Note", + "name": "Name", + "edit_note": "Edit Note", + "note_added": "Note added successfully", + "note_updated": "Note Updated successfully", + "note_confirm_delete": "You will not be able to recover this Note", + "already_in_use": "Note is already in use", + "deleted_message": "Note deleted successfully" + } + }, + "account_settings": { + "profile_picture": "Profile Picture", + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password", + "account_settings": "Account Settings", + "save": "Save", + "section_description": "You can update your name, email & password using the form below.", + "updated_message": "Account Settings updated successfully" + }, + "user_profile": { + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password" + }, + "notification": { + "title": "Notifications", + "email": "Send Notifications to", + "description": "Which email notifications would you like to receive when something changes?", + "invoice_viewed": "Invoice viewed", + "invoice_viewed_desc": "When your customer views the invoice sent via crater dashboard.", + "estimate_viewed": "Estimate viewed", + "estimate_viewed_desc": "When your customer views the estimate sent via crater dashboard.", + "save": "Save", + "email_save_message": "Email saved successfully", + "please_enter_email": "Please Enter Email" + }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, + "tax_types": { + "title": "Tax Types", + "add_tax": "Add Tax", + "edit_tax": "Edit Tax", + "description": "You can add or Remove Taxes as you please. Crater supports Taxes on Individual Items as well as on the invoice.", + "add_new_tax": "Add New Tax", + "tax_settings": "Tax Settings", + "tax_per_item": "Tax Per Item", + "tax_name": "Tax Name", + "compound_tax": "Compound Tax", + "percent": "Percent", + "action": "Action", + "tax_setting_description": "Enable this if you want to add taxes to individual invoice items. By default, taxes are added directly to the invoice.", + "created_message": "Tax type created successfully", + "updated_message": "Tax type updated successfully", + "deleted_message": "Tax type deleted successfully", + "confirm_delete": "You will not be able to recover this Tax Type", + "already_in_use": "Tax is already in use" + }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, + "expense_category": { + "title": "Expense Categories", + "action": "Action", + "description": "Categories are required for adding expense entries. You can Add or Remove these categories according to your preference.", + "add_new_category": "Add New Category", + "add_category": "Add Category", + "edit_category": "Edit Category", + "category_name": "Category Name", + "category_description": "Description", + "created_message": "Expense Category created successfully", + "deleted_message": "Expense category deleted successfully", + "updated_message": "Expense category updated successfully", + "confirm_delete": "You will not be able to recover this Expense Category", + "already_in_use": "Category is already in use" + }, + "preferences": { + "currency": "Currency", + "default_language": "Default Language", + "time_zone": "Time Zone", + "fiscal_year": "Financial Year", + "date_format": "Date Format", + "discount_setting": "Discount Setting", + "discount_per_item": "Discount Per Item ", + "discount_setting_description": "Enable this if you want to add Discount to individual invoice items. By default, Discount is added directly to the invoice.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", + "save": "Save", + "preference": "Preference | Preferences", + "general_settings": "Default preferences for the system.", + "updated_message": "Preferences updated successfully", + "select_language": "Select Language", + "select_time_zone": "Select Time Zone", + "select_date_format": "Select Date Format", + "select_financial_year": "Select Financial Year", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" + }, + "update_app": { + "title": "Update App", + "description": "You can easily update Crater by checking for a new update by clicking the button below", + "check_update": "Check for updates", + "avail_update": "New Update available", + "next_version": "Next version", + "requirements": "Requirements", + "update": "Update Now", + "update_progress": "Update in progress...", + "progress_text": "It will just take a few minutes. Please do not refresh the screen or close the window before the update finishes", + "update_success": "App has been updated! Please wait while your browser window gets reloaded automatically.", + "latest_message": "No update available! You are on the latest version.", + "current_version": "Current Version", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "running_migrations": "Running Migrations", + "finishing_update": "Finishing Update", + "update_failed": "Update Failed", + "update_failed_text": "Sorry! Your update failed on : {step} step", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." + }, + "backup": { + "title": "Backup | Backups", + "description": "The backup is a zipfile that contains all files in the directories you specify along with a dump of your database", + "new_backup": "Add New Backup", + "create_backup": "Create Backup", + "select_backup_type": "Select Backup Type", + "backup_confirm_delete": "You will not be able to recover this Backup", + "path": "path", + "new_disk": "New Disk", + "created_at": "created at", + "size": "size", + "dropbox": "dropbox", + "local": "local", + "healthy": "healthy", + "amount_of_backups": "amount of backups", + "newest_backups": "newest backups", + "used_storage": "used storage", + "select_disk": "Select Disk", + "action": "Action", + "deleted_message": "Backup deleted successfully", + "created_message": "Backup created successfully", + "invalid_disk_credentials": "Invalid credential of selected disk" + }, + "disk": { + "title": "File Disk | File Disks", + "description": "By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.", + "created_at": "created at", + "dropbox": "dropbox", + "name": "Name", + "driver": "Driver", + "disk_type": "Type", + "disk_name": "Disk Name", + "new_disk": "Add New Disk", + "filesystem_driver": "Filesystem Driver", + "local_driver": "local Driver", + "local_root": "local Root", + "public_driver": "Public Driver", + "public_root": "Public Root", + "public_url": "Public URL", + "public_visibility": "Public Visibility", + "media_driver": "Media Driver", + "media_root": "Media Root", + "aws_driver": "AWS Driver", + "aws_key": "AWS Key", + "aws_secret": "AWS Secret", + "aws_region": "AWS Region", + "aws_bucket": "AWS Bucket", + "aws_root": "AWS Root", + "do_spaces_type": "Do Spaces type", + "do_spaces_key": "Do Spaces key", + "do_spaces_secret": "Do Spaces Secret", + "do_spaces_region": "Do Spaces Region", + "do_spaces_bucket": "Do Spaces Bucket", + "do_spaces_endpoint": "Do Spaces Endpoint", + "do_spaces_root": "Do Spaces Root", + "dropbox_type": "Dropbox Type", + "dropbox_token": "Dropbox Token", + "dropbox_key": "Dropbox Key", + "dropbox_secret": "Dropbox Secret", + "dropbox_app": "Dropbox App", + "dropbox_root": "Dropbox Root", + "default_driver": "Default Driver", + "is_default": "IS DEFAULT", + "set_default_disk": "Set Default Disk", + "set_default_disk_confirm": "This disk will be set as default and all the new PDFs will be saved on this disk", + "success_set_default_disk": "Disk set as default successfully", + "save_pdf_to_disk": "Save PDFs to Disk", + "disk_setting_description": " Enable this, if you wish to save a copy of each Invoice, Estimate & Payment Receipt PDF on your default disk automatically. Turning this option will decrease the load-time when viewing the PDFs.", + "select_disk": "Select Disk", + "disk_settings": "Disk Settings", + "confirm_delete": "Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater", + "action": "Action", + "edit_file_disk": "Edit File Disk", + "success_create": "Disk added successfully", + "success_update": "Disk updated successfully", + "error": "Disk addition failed", + "deleted_message": "File Disk deleted successfully", + "disk_variables_save_successfully": "Disk Configured Successfully", + "disk_variables_save_error": "Disk configuration failed.", + "invalid_disk_credentials": "Invalid credential of selected disk" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." + } + }, + "wizard": { + "account_info": "Account Information", + "account_info_desc": "Below details will be used to create the main Administrator account. Also you can change the details anytime after logging in.", + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password", + "save_cont": "Save & Continue", + "company_info": "Company Information", + "company_info_desc": "This information will be displayed on invoices. Note that you can edit this later on settings page.", + "company_name": "Company Name", + "company_logo": "Company Logo", + "logo_preview": "Logo Preview", + "preferences": "Company Preferences", + "preferences_desc": "Specify the default preferences for this company.", + "currency_set_alert": "The company's currency cannot be changed later.", + "country": "Country", + "state": "State", + "city": "City", + "address": "Address", + "street": "Street1 | Street2", + "phone": "Phone", + "zip_code": "Zip Code", + "go_back": "Go Back", + "currency": "Currency", + "language": "Language", + "time_zone": "Time Zone", + "fiscal_year": "Financial Year", + "date_format": "Date Format", + "from_address": "From Address", + "username": "Username", + "next": "Next", + "continue": "Continue", + "skip": "Skip", + "database": { + "database": "Site URL & Database", + "connection": "Database Connection", + "host": "Database Host", + "port": "Database Port", + "password": "Database Password", + "app_url": "App URL", + "app_domain": "App Domain", + "username": "Database Username", + "db_name": "Database Name", + "db_path": "Database Path", + "desc": "Create a database on your server and set the credentials using the form below." + }, + "permissions": { + "permissions": "Permissions", + "permission_confirm_title": "Are you sure you want to continue?", + "permission_confirm_desc": "Folder permission check failed", + "permission_desc": "Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions." + }, + "verify_domain": { + "title": "Domain Verification", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Verify Now", + "success": "Domain Verify Successfully.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verify And Continue" + }, + "mail": { + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Mail Password", + "username": "Mail Username", + "mail_config": "Mail Configuration", + "from_name": "From Mail Name", + "from_mail": "From Mail Address", + "encryption": "Mail Encryption", + "mail_config_desc": "Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc." + }, + "req": { + "system_req": "System Requirements", + "php_req_version": "Php (version {version} required)", + "check_req": "Check Requirements", + "system_req_desc": "Crater has a few server requirements. Make sure that your server has the required php version and all the extensions mentioned below." + }, + "errors": { + "migrate_failed": "Migrate Failed", + "database_variables_save_error": "Cannot write configuration to .env file. Please check its file permissions", + "mail_variables_save_error": "Email configuration failed.", + "connection_failed": "Database connection failed", + "database_should_be_empty": "Database should be empty" + }, + "success": { + "mail_variables_save_successfully": "Email configured successfully", + "database_variables_save_successfully": "Database configured successfully." + } + }, + "validation": { + "invalid_phone": "Invalid Phone Number", + "invalid_url": "Invalid url (ex: http://www.craterapp.com)", + "invalid_domain_url": "Invalid url (ex: craterapp.com)", + "required": "Field is required", + "email_incorrect": "Incorrect Email.", + "email_already_taken": "The email has already been taken.", + "email_does_not_exist": "User with given email doesn't exist", + "item_unit_already_taken": "This item unit name has already been taken", + "payment_mode_already_taken": "This payment mode name has already been taken", + "send_reset_link": "Send Reset Link", + "not_yet": "Not yet? Send it again", + "password_min_length": "Password must contain {count} characters", + "name_min_length": "Name must have at least {count} letters.", + "prefix_min_length": "Prefix must have at least {count} letters.", + "enter_valid_tax_rate": "Enter valid tax rate", + "numbers_only": "Numbers Only.", + "characters_only": "Characters Only.", + "password_incorrect": "Passwords must be identical", + "password_length": "Password must be {count} character long.", + "qty_must_greater_than_zero": "Quantity must be greater than zero.", + "price_greater_than_zero": "Price must be greater than zero.", + "payment_greater_than_zero": "Payment must be greater than zero.", + "payment_greater_than_due_amount": "Entered Payment is more than due amount of this invoice.", + "quantity_maxlength": "Quantity should not be greater than 20 digits.", + "price_maxlength": "Price should not be greater than 20 digits.", + "price_minvalue": "Price should be greater than 0.", + "amount_maxlength": "Amount should not be greater than 20 digits.", + "amount_minvalue": "Amount should be greater than 0.", + "discount_maxlength": "Discount should not be greater than max discount", + "description_maxlength": "Description should not be greater than 255 characters.", + "subject_maxlength": "Subject should not be greater than 100 characters.", + "message_maxlength": "Message should not be greater than 255 characters.", + "maximum_options_error": "Maximum of {max} options selected. First remove a selected option to select another.", + "notes_maxlength": "Notes should not be greater than 65,000 characters.", + "address_maxlength": "Address should not be greater than 255 characters.", + "ref_number_maxlength": "Ref Number should not be greater than 255 characters.", + "prefix_maxlength": "Prefix should not be greater than 5 characters.", + "something_went_wrong": "something went wrong", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" + }, + "pdf_estimate_label": "Estimate", + "pdf_estimate_number": "Estimate Number", + "pdf_estimate_date": "Estimate Date", + "pdf_estimate_expire_date": "Expiry date", + "pdf_invoice_label": "Invoice", + "pdf_invoice_number": "Invoice Number", + "pdf_invoice_date": "Invoice Date", + "pdf_invoice_due_date": "Due date", + "pdf_notes": "Notes", + "pdf_items_label": "Items", + "pdf_quantity_label": "Quantity", + "pdf_price_label": "Price", + "pdf_discount_label": "Discount", + "pdf_amount_label": "Amount", + "pdf_subtotal": "Subtotal", + "pdf_total": "Total", + "pdf_payment_label": "Payment", + "pdf_payment_receipt_label": "PAYMENT RECEIPT", + "pdf_payment_date": "Payment Date", + "pdf_payment_number": "Payment Number", + "pdf_payment_mode": "Payment Mode", + "pdf_payment_amount_received_label": "Amount Received", + "pdf_expense_report_label": "EXPENSES REPORT", + "pdf_total_expenses_label": "TOTAL EXPENSE", + "pdf_profit_loss_label": "PROFIT & LOSS REPORT", + "pdf_sales_customers_label": "Sales Customer Report", + "pdf_sales_items_label": "Sales Item Report", + "pdf_tax_summery_label": "Tax Summary Report", + "pdf_income_label": "INCOME", + "pdf_net_profit_label": "NET PROFIT", + "pdf_customer_sales_report": "Sales Report: By Customer", + "pdf_total_sales_label": "TOTAL SALES", + "pdf_item_sales_label": "Sales Report: By Item", + "pdf_tax_report_label": "TAX REPORT", + "pdf_total_tax_label": "TOTAL TAX", + "pdf_tax_types_label": "Tax Types", + "pdf_expenses_label": "Expenses", + "pdf_bill_to": "Bill to,", + "pdf_ship_to": "Ship to,", + "pdf_received_from": "Received from:", + "pdf_tax_label": "Tax" +} diff --git a/resources/scripts/locales/ru.json b/resources/scripts/locales/ru.json new file mode 100644 index 000000000..e15b29bfc --- /dev/null +++ b/resources/scripts/locales/ru.json @@ -0,0 +1,1521 @@ +{ + "navigation": { + "dashboard": "Главная", + "customers": "Клиенты", + "items": "Товары", + "invoices": "Счет-фактуры", + "recurring-invoices": "Recurring Invoices", + "expenses": "Расходы", + "estimates": "Заказы", + "payments": "Платежи", + "reports": "Отчёты", + "settings": "Настройки", + "logout": "Выйти", + "users": "Пользователи", + "modules": "Modules" + }, + "general": { + "add_company": "Добавить компанию", + "view_pdf": "Просмотр PDF", + "copy_pdf_url": "Скопировать ссылку на PDF", + "download_pdf": "Скачать PDF", + "save": "Сохранить", + "create": "Создать", + "cancel": "Отмена", + "update": "Обновить", + "deselect": "Очистить", + "download": "Скачать", + "from_date": "От даты", + "to_date": "До даты", + "from": "Отправитель", + "to": "Получатель", + "ok": "Ok", + "yes": "Yes", + "no": "No", + "sort_by": "Сортировать", + "ascending": "По возрастанию", + "descending": "По убыванию", + "subject": "Тема", + "body": "Содержание", + "message": "Сообщение", + "send": "Отправить", + "preview": "Preview", + "go_back": "Назад", + "back_to_login": "Вернуться к логину?", + "home": "Домой", + "filter": "Фильтр", + "delete": "Удалить", + "edit": "Редактировать", + "view": "Показать", + "add_new_item": "Добавить", + "clear_all": "Очистить", + "showing": "Показано", + "of": "из", + "actions": "Действия", + "subtotal": "ПРОМЕЖУТОЧНЫЙ ИТОГ", + "discount": "СКИДКА", + "fixed": "Фиксированный", + "percentage": "Проценты", + "tax": "НАЛОГ", + "total_amount": "ИТОГО", + "bill_to": "Выставить счёт", + "ship_to": "Доставить", + "due": "К оплате", + "draft": "Черновик", + "sent": "Отправлено", + "all": "Все", + "select_all": "Выбрать всё", + "select_template": "Select Template", + "choose_file": "Нажмите сюда чтобы выбрать файлы", + "choose_template": "Выберите шаблон", + "choose": "Выбор", + "remove": "Удалить", + "select_a_status": "Выбрать статус", + "select_a_tax": "Выбрать налог", + "search": "Поиск", + "are_you_sure": "Вы уверены?", + "list_is_empty": "Список пуст.", + "no_tax_found": "Налоги не найдены!", + "four_zero_four": "Ошибка 404", + "you_got_lost": "Упс! Мы потерялись!", + "go_home": "Домой", + "test_mail_conf": "Настройки тестового письма", + "send_mail_successfully": "Письмо отправлено", + "setting_updated": "Настройки сохранены", + "select_state": "Выберите область", + "select_country": "Выберите страну", + "select_city": "Выберите город", + "street_1": "Улица 1", + "street_2": "Улица 2", + "action_failed": "Действие закончилось неудачей!", + "retry": "Повторить", + "choose_note": "Выберите заметку", + "no_note_found": "Заметка не найдена", + "insert_note": "Вставить заметку", + "copied_pdf_url_clipboard": "Ссылка на PDF скопирована в буфер обмена!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Docs", + "do_you_wish_to_continue": "Do you wish to continue?", + "note": "Note", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" + }, + "dashboard": { + "select_year": "Выберите год", + "cards": { + "due_amount": "Сумма", + "customers": "Клиенты", + "invoices": "Счет-фактуры", + "estimates": "Заказы", + "payments": "Payments" + }, + "chart_info": { + "total_sales": "Продажи", + "total_receipts": "Счета", + "total_expense": "Расходы", + "net_income": "Чистый доход", + "year": "Выберите год" + }, + "monthly_chart": { + "title": "Доходы и расходы" + }, + "recent_invoices_card": { + "title": "Счета к оплате", + "due_on": "Дата", + "customer": "Клиент", + "amount_due": "Сумма к оплате", + "actions": "Действия", + "view_all": "Показать всё" + }, + "recent_estimate_card": { + "title": "Ожидающие заказы", + "date": "Дата", + "customer": "Клиент", + "amount_due": "Сумма", + "actions": "Действия", + "view_all": "Показать всё" + } + }, + "tax_types": { + "name": "Название", + "description": "Описание", + "percent": "Проценты", + "compound_tax": "Комплексный налог" + }, + "global_search": { + "search": "Поиск...", + "customers": "Клиенты", + "users": "Пользователи", + "no_results_found": "Ничего не найдено" + }, + "company_switcher": { + "label": "SWITCH COMPANY", + "no_results_found": "No Results Found", + "add_new_company": "Add new company", + "new_company": "New company", + "created_message": "Company created successfully" + }, + "dateRange": { + "today": "Today", + "this_week": "This Week", + "this_month": "This Month", + "this_quarter": "This Quarter", + "this_year": "This Year", + "previous_week": "Previous Week", + "previous_month": "Previous Month", + "previous_quarter": "Previous Quarter", + "previous_year": "Previous Year", + "custom": "Custom" + }, + "customers": { + "title": "Клиенты", + "prefix": "Prefix", + "add_customer": "Добавить клиента", + "contacts_list": "Список клиентов", + "name": "Имя", + "mail": "Письмо | Письма", + "statement": "Ведомость", + "display_name": "Отображать как", + "primary_contact_name": "Основной контакт", + "contact_name": "Имя контакта", + "amount_due": "Сумма", + "email": "Эл. почта", + "address": "Адрес", + "phone": "Телефон", + "website": "Сайт", + "overview": "Обзор", + "invoice_prefix": "Invoice Prefix", + "estimate_prefix": "Estimate Prefix", + "payment_prefix": "Payment Prefix", + "enable_portal": "Разрешить портал", + "country": "Страна", + "state": "Область", + "city": "Город", + "zip_code": "Почтовый индекс", + "added_on": "Добавлено", + "action": "Действие", + "password": "Пароль", + "confirm_password": "Confirm Password", + "street_number": "Номер дома", + "primary_currency": "Основная валюта", + "description": "Описание", + "add_new_customer": "Добавить клиента", + "save_customer": "Сохранить клиента", + "update_customer": "Сохранить клиента", + "customer": "Клиент | Клиенты", + "new_customer": "New Клиент", + "edit_customer": "Редактировать клиента", + "basic_info": "Основное", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", + "billing_address": "Адрес плательщика", + "shipping_address": "Адрес доставки", + "copy_billing_address": "Скопировать из биллинга", + "no_customers": "Список клиентов пуст!", + "no_customers_found": "Клиенты не найдены!", + "no_contact": "Контакт не указан", + "no_contact_name": "Пустое контактное имя", + "list_of_customers": "Этот раздел содержит список клиентов.", + "primary_display_name": "Основное имя", + "select_currency": "Выберите валюту", + "select_a_customer": "Выберите клиента", + "type_or_click": "Выберите клиента", + "new_transaction": "Новый перевод", + "no_matching_customers": "Клиенты не найдены!", + "phone_number": "Номер телефона", + "create_date": "Дата создания", + "confirm_delete": "Восстановление клиента вместе со всеми его оплатами, сметами и счетами-фактурами будет невозможно. | Восстановление клиентов вместе со всеми их оплатами, сметами и счетами-фактурами будет невозможно.", + "created_message": "Клиент добавлен", + "updated_message": "Клиент обновлён", + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Клиент удалён | Клиенты удалены", + "edit_currency_not_allowed": "Cannot change currency once transactions created." + }, + "items": { + "title": "Товары", + "items_list": "Список товаров", + "name": "Название", + "unit": "Ед.измерения", + "description": "Описание", + "added_on": "Добавлено", + "price": "Цена", + "date_of_creation": "Дата создания", + "not_selected": "Товар не выбран", + "action": "Действие", + "add_item": "Добавить товар", + "save_item": "Сохранить", + "update_item": "Сохранить", + "item": "Товар | Товары", + "add_new_item": "Добавить товар", + "new_item": "Новый товар", + "edit_item": "Редактировать", + "no_items": "Список пуст!", + "list_of_items": "Этот раздел содержит список товаров.", + "select_a_unit": "выберите товар", + "taxes": "Налоги", + "item_attached_message": "Нельзя удалить товар который используется", + "confirm_delete": "Восстановление товара будет невозможно | Восстановление товаров будет невозможно", + "created_message": "Товар создан", + "updated_message": "Товар обновлен", + "deleted_message": "Товар удален | Товары удалены" + }, + "estimates": { + "title": "Заказы", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", + "estimate": "Заказ | Заказы", + "estimates_list": "Список заказов", + "days": "{days} дней", + "months": "{months} месяцев", + "years": "{years} годиков", + "all": "Все", + "paid": "Оплачено", + "unpaid": "Не оплачено", + "customer": "КЛИЕНТ", + "ref_no": "СЕРИЙНИК", + "number": "НОМЕР", + "amount_due": "К ОПЛАТЕ", + "partially_paid": "Частично оплачен", + "total": "Итого", + "discount": "Скидка", + "sub_total": "Промежуточный итог", + "estimate_number": "Номер заказа", + "ref_number": "Серийный номер", + "contact": "Контакт", + "add_item": "Добавить", + "date": "Дата", + "due_date": "Дата создания", + "expiry_date": "Истекает", + "status": "Статус", + "add_tax": "Добавить налог", + "amount": "Сумма", + "action": "Действие", + "notes": "Заметки", + "tax": "Налог", + "estimate_template": "Шаблон", + "convert_to_invoice": "Конвертировать в счет", + "mark_as_sent": "Пометить как Отправленный", + "send_estimate": "Отправить заказ", + "resend_estimate": "Переотправить заказ", + "record_payment": "Добавить платёж", + "add_estimate": "Добавить заказ", + "save_estimate": "Сохранить заказ", + "confirm_conversion": "Эта смета будет использоваться для создания нового счета-фактуры.", + "conversion_message": "Счет-фактура успешно создан", + "confirm_send_estimate": "Эта смета будет отправлена клиенту по электронной почте", + "confirm_mark_as_sent": "Эта смета будет помечена как отправленная", + "confirm_mark_as_accepted": "Эта смета будет помечена как Принятая", + "confirm_mark_as_rejected": "Эта смета будет помечена как Отклоненная", + "no_matching_estimates": "Нет соответствующих смет!", + "mark_as_sent_successfully": "Смета помечена как успешно отправленная", + "send_estimate_successfully": "Смета успешно отправлена", + "errors": { + "required": "Обязательное поле" + }, + "accepted": "Принято", + "rejected": "Отклонено", + "expired": "Expired", + "sent": "Отправлено", + "draft": "Черновик", + "viewed": "Viewed", + "declined": "Отказано", + "new_estimate": "Новый заказ", + "add_new_estimate": "Добавить новый заказ", + "update_Estimate": "Обновить заказ", + "edit_estimate": "Редактировать заказ", + "items": "товары", + "Estimate": "Заказ | Заказы", + "add_new_tax": "Добавить новый налог", + "no_estimates": "Пока заказов нет!", + "list_of_estimates": "Этот раздел содержит список заказов.", + "mark_as_rejected": "Пометить как отклонённый", + "mark_as_accepted": "Пометить как принятый", + "marked_as_accepted_message": "Помечен как принятый", + "marked_as_rejected_message": "Помечен как отклонённый", + "confirm_delete": "Вы не сможете восстановить эту смету | Вы не сможете восстановить эти сметы", + "created_message": "Заказ успешно создан", + "updated_message": "Заказ успешно сохранён", + "deleted_message": "Заказ успешно удалён | Заказы успешно удалены", + "something_went_wrong": "что-то пошло не так", + "item": { + "title": "Название товара", + "description": "Описание", + "quantity": "Кол-во", + "price": "Цена", + "discount": "Скидка", + "total": "Итого", + "total_discount": "Общая скидка", + "sub_total": "Промежуточный итог", + "tax": "Налог", + "amount": "Сумма", + "select_an_item": "Выберите товар", + "type_item_description": "Описание товара (необязательно)" + } + }, + "invoices": { + "title": "Счет-фактуры", + "download": "Download", + "pay_invoice": "Pay Invoice", + "invoices_list": "Список счетов", + "invoice_information": "Invoice Information", + "days": "{days} дн.", + "months": "{months} мес.", + "years": "{years} г.", + "all": "Все", + "paid": "Оплачен", + "unpaid": "Неоплачен", + "viewed": "Просмотрен", + "overdue": "Просрочен", + "completed": "Выполнен", + "customer": "КЛИЕНТ", + "paid_status": "СТАТУС ПЛАТЕЖА", + "ref_no": "КОД.", + "number": "НОМЕР", + "amount_due": "К ОПЛАТЕ", + "partially_paid": "Частично оплачен", + "total": "Итого", + "discount": "Скидка", + "sub_total": "Промежуточный итог", + "invoice": "Счет-фактура | Счета", + "invoice_number": "Номер счета-фактуры", + "ref_number": "Серийный номер", + "contact": "Контакт", + "add_item": "Добавить элемент", + "date": "Дата", + "due_date": "Дата к оплате", + "status": "Статус", + "add_tax": "Добавить налог", + "amount": "Сумма", + "action": "Действие", + "notes": "Примечания", + "view": "Просмотр", + "send_invoice": "Отправить счёт", + "resend_invoice": "Повторно отправить счет", + "invoice_template": "Шаблон счета", + "conversion_message": "Invoice cloned successful", + "template": "Шаблон", + "mark_as_sent": "Пометить как отправленное", + "confirm_send_invoice": "Этот счет будет отправлен клиенту по электронной почте", + "invoice_mark_as_sent": "Этот счет будет помечен как отправленный", + "confirm_mark_as_accepted": "This invoice will be marked as Accepted", + "confirm_mark_as_rejected": "This invoice will be marked as Rejected", + "confirm_send": "Этот счет будет отправлен клиенту по электронной почте", + "invoice_date": "Дата счета-фактуры", + "record_payment": "Record Payment", + "add_new_invoice": "Добавить новый счёт", + "update_expense": "Обновить расходы", + "edit_invoice": "Редактировать счет-фактуру", + "new_invoice": "Новый счет-фактура", + "save_invoice": "Сохранить счет", + "update_invoice": "Обновить счет", + "add_new_tax": "Добавить новый налог", + "no_invoices": "Пока нет счетов!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "Этот раздел будет содержать список счетов-фактур.", + "select_invoice": "Выберите счет", + "no_matching_invoices": "Нет соответствующих счетов!", + "mark_as_sent_successfully": "Счет помечен как успешно отправленный", + "invoice_sent_successfully": "Invoice sent successfully", + "cloned_successfully": "Счет успешно клонирован", + "clone_invoice": "Клонировать счет", + "confirm_clone": "Этот счет будет клонирован в новый счет", + "item": { + "title": "Название товара", + "description": "Описание", + "quantity": "Кол-во", + "price": "Цена", + "discount": "Скидка", + "total": "Итого", + "total_discount": "Общая скидка", + "sub_total": "Промежуточный итог", + "tax": "Налог", + "amount": "Сумма", + "select_an_item": "Выберите товар", + "type_item_description": "Описание товара (необязательно)" + }, + "payment_attached_message": "One of the selected invoices already have a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal", + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Счет-фактура успешно создан", + "updated_message": "Счет-фактура успешно обновлен", + "deleted_message": "Счет успешно удален | Счета успешно удалены", + "marked_as_sent_message": "Счет помечен как успешно отправленный", + "something_went_wrong": "что-то пошло не так", + "invalid_due_amount_message": "Total Invoice amount cannot be less than total paid amount for this Invoice. Please update the invoice or delete the associated payments to continue." + }, + "recurring_invoices": { + "title": "Recurring Invoices", + "invoices_list": "Recurring Invoices List", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Viewed", + "overdue": "Overdue", + "active": "Active", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, + "payments": { + "title": "Платежи", + "payments_list": "Список платежей", + "record_payment": "Record Payment", + "customer": "Клиент", + "date": "Дата", + "amount": "Сумма", + "action": "Действие", + "payment_number": "Номер платежа", + "payment_mode": "Режим платежа", + "invoice": "Счет-фактура", + "note": "Примечание", + "add_payment": "Добавить платеж", + "new_payment": "Новый платеж", + "edit_payment": "Редактировать платеж", + "view_payment": "Показать платеж", + "add_new_payment": "Добавить новый платеж", + "send_payment_receipt": "Отправить квитанцию на оплату", + "send_payment": "Отправить платеж", + "save_payment": "Сохранить платеж", + "update_payment": "Обновить платеж", + "payment": "Платеж | Платежи", + "no_payments": "Пока платежей нет!", + "not_selected": "Ничего не выбрано", + "no_invoice": "Нет счета-фактуры", + "no_matching_payments": "Нет совпадающих платежей!", + "list_of_payments": "В этом разделе будет показан список платежей.", + "select_payment_mode": "Выберите способ оплаты", + "confirm_mark_as_sent": "Эта смета будет помечена как отправленная", + "confirm_send_payment": "Этот платеж будет отправлен клиенту по электронной почте", + "send_payment_successfully": "Платеж успешно отправлен", + "something_went_wrong": "Упс... что-то пошло не так", + "confirm_delete": "Вы не сможете восстановить этот платеж | Вы не сможете восстановить эти платежи", + "created_message": "Платеж успешно создан", + "updated_message": "Платеж успешно обновлен", + "deleted_message": "Платеж успешно удален | Платежи успешно удалены", + "invalid_amount_message": "Некорректная сумма платежа" + }, + "expenses": { + "title": "Расходы", + "expenses_list": "Список расходов", + "select_a_customer": "Выберите клиента", + "expense_title": "Заголовок", + "customer": "Клиент", + "currency": "Currency", + "contact": "Контакт", + "category": "Категория", + "from_date": "От даты", + "to_date": "До даты", + "expense_date": "Дата", + "description": "Описание", + "receipt": "Квитанция", + "amount": "Сумма", + "action": "Действие", + "not_selected": "Не выбрано", + "note": "Примечание", + "category_id": "Id категории", + "date": "Дата", + "add_expense": "Добавить расход", + "add_new_expense": "Добавить новый расход", + "save_expense": "Сохранить расход", + "update_expense": "Обновить расход", + "download_receipt": "Скачать чек", + "edit_expense": "Редактировать расход", + "new_expense": "Новый расход", + "expense": "Расход | Расходы", + "no_expenses": "No expenses yet!", + "list_of_expenses": "This section will contain the list of expenses.", + "confirm_delete": "You will not be able to recover this Expense | You will not be able to recover these Expenses", + "created_message": "Expense created successfully", + "updated_message": "Expense updated successfully", + "deleted_message": "Expense deleted successfully | Expenses deleted successfully", + "categories": { + "categories_list": "Список категорий", + "title": "Заголовок", + "name": "Название", + "description": "Описание", + "amount": "Сумма", + "actions": "Действия", + "add_category": "Добавить категорию", + "new_category": "Новая категория", + "category": "Категория | Категории", + "select_a_category": "Выберите категорию" + } + }, + "login": { + "email": "Эл. почта", + "password": "Пароль", + "forgot_password": "Забыли пароль?", + "or_signIn_with": "или войдите с помощью", + "login": "Вход", + "register": "Регистрация", + "reset_password": "Сброс пароля", + "password_reset_successfully": "Пароль успешно обновлен", + "enter_email": "Введите адрес электронной почты", + "enter_password": "Пароль", + "retype_password": "Повторите пароль" + }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, + "users": { + "title": "Пользователи", + "users_list": "Список пользователей", + "name": "Имя", + "description": "Описание", + "added_on": "Добавлен", + "date_of_creation": "Дата создания", + "action": "Действие", + "add_user": "Добавить пользователя", + "save_user": "Сохранить пользователя", + "update_user": "Обновить пользователя", + "user": "User | Пользователи", + "add_new_user": "Добавить нового пользователя", + "new_user": "Новый пользователь", + "edit_user": "Редактировать пользователя", + "no_users": "Еще нет пользователей!", + "list_of_users": "Этот раздел будет содержать список пользователей.", + "email": "Эл. почта", + "phone": "Телефон", + "password": "Пароль", + "user_attached_message": "Нельзя удалить элемент, который уже используется", + "confirm_delete": "Вы не сможете восстановить этого пользователя | Вы не сможете восстановить этих пользователей", + "created_message": "Пользователь успешно создан", + "updated_message": "Пользователь успешно обновлен", + "deleted_message": "Пользователь успешно удален | Пользователи успешно удалены", + "select_company_role": "Select Role for {company}", + "companies": "Companies" + }, + "reports": { + "title": "Отчёт", + "from_date": "От даты", + "to_date": "До даты", + "status": "Статус", + "paid": "Оплачен", + "unpaid": "Неоплачен", + "download_pdf": "Скачать PDF", + "view_pdf": "Показать PDF", + "update_report": "Обновить отчёт", + "report": "Отчёт | Отчёты", + "profit_loss": { + "profit_loss": "Доходы и расходы", + "to_date": "До даты", + "from_date": "От даты", + "date_range": "Выберите диапазон дат" + }, + "sales": { + "sales": "Продажи", + "date_range": "Выберите диапазон дат", + "to_date": "До даты", + "from_date": "От даты", + "report_type": "Тип отчёта" + }, + "taxes": { + "taxes": "Налоги", + "to_date": "До даты", + "from_date": "От даты", + "date_range": "Выберите диапазон дат" + }, + "errors": { + "required": "Обязательное поле" + }, + "invoices": { + "invoice": "Счет-фактура", + "invoice_date": "Дата счета-фактуры", + "due_date": "Дата к оплате", + "amount": "Сумма", + "contact_name": "Контактное лицо", + "status": "Статус" + }, + "estimates": { + "estimate": "Заказ", + "estimate_date": "Дата заказа", + "due_date": "Дата к оплате", + "estimate_number": "Номер заказа", + "ref_number": "Серийный номер", + "amount": "Сумма", + "contact_name": "Контактное лицо", + "status": "Статус" + }, + "expenses": { + "expenses": "Расходы", + "category": "Категория", + "date": "Дата", + "amount": "Сумма", + "to_date": "До даты", + "from_date": "От даты", + "date_range": "Выберите диапазон дат" + } + }, + "settings": { + "menu_title": { + "account_settings": "Настройки учётной записи", + "company_information": "Информация о компании", + "customization": "Настройки", + "preferences": "Установки", + "notifications": "Уведомления", + "tax_types": "Виды налогов", + "expense_category": "Категории расходов", + "update_app": "Обновить приложение", + "backup": "Резервное копирование", + "file_disk": "Диск", + "custom_fields": "Пользовательские поля", + "payment_modes": "Формы оплаты", + "notes": "Заметки", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." + }, + "title": "Настройки", + "setting": "Настройки | Настройки", + "general": "Общая информация", + "language": "Язык", + "primary_currency": "Основная валюта", + "timezone": "Часовой пояс", + "date_format": "Формат даты", + "currencies": { + "title": "Валюты", + "currency": "Валюта | Валюты", + "currencies_list": "Список валют", + "select_currency": "Выберите валюту", + "name": "Название", + "code": "Код", + "symbol": "Символ", + "precision": "Округление", + "thousand_separator": "Разделитель тысяч", + "decimal_separator": "Десятичный разделитель", + "position": "Расположение", + "position_of_symbol": "Расположение символа", + "right": "Справа", + "left": "Слева", + "action": "Действие", + "add_currency": "Добавить валюту" + }, + "mail": { + "host": "Почтовый сервер", + "port": "Порт", + "driver": "Сервис отправки почты", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Пароль", + "username": "Имя пользователя", + "mail_config": "Настройки почты", + "from_name": "От имени", + "from_mail": "От адреса", + "encryption": "Тип шифрования", + "mail_config_desc": "Ниже приведена форма настройки электронной почты для отправки писем из приложения. Вы также можете настроить сторонние сервисы отправки почты, такие как Sendgrid, SES и т.д. " + }, + "pdf": { + "title": "Настройки PDF", + "footer_text": "Текст нижнего колонтитула", + "pdf_layout": "Формат PDF" + }, + "company_info": { + "company_info": "Информация о компании", + "company_name": "Название компании", + "company_logo": "Символ компании", + "section_description": "Информация о вашей компании, которая будет отображаться на счетах, сметах и других документах, созданных системой Crater.", + "phone": "Телефон", + "country": "Страна", + "state": "Область", + "city": "Город", + "address": "Адрес", + "zip": "Индекс", + "save": "Сохранить", + "delete": "Delete", + "updated_message": "Информация о компании успешно обновлена", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" + }, + "custom_fields": { + "title": "Пользовательские поля", + "section_description": "Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.", + "add_custom_field": "Add Custom Field", + "edit_custom_field": "Edit Custom Field", + "field_name": "Field Name", + "label": "Метка", + "type": "Тип", + "name": "Название", + "slug": "Slug", + "required": "Required", + "placeholder": "Placeholder", + "help_text": "Справка", + "default_value": "Default Value", + "prefix": "Prefix", + "starting_number": "Starting Number", + "model": "Model", + "help_text_description": "Enter some text to help users understand the purpose of this custom field.", + "suffix": "Suffix", + "yes": "Да", + "no": "Нет", + "order": "Order", + "custom_field_confirm_delete": "You will not be able to recover this Custom Field", + "already_in_use": "Custom Field is already in use", + "deleted_message": "Custom Field deleted successfully", + "options": "параметры", + "add_option": "Add Options", + "add_another_option": "Add another option", + "sort_in_alphabetical_order": "Sort in Alphabetical Order", + "add_options_in_bulk": "Add options in bulk", + "use_predefined_options": "Use Predefined Options", + "select_custom_date": "Select Custom Date", + "select_relative_date": "Select Relative Date", + "ticked_by_default": "Ticked by default", + "updated_message": "Custom Field updated successfully", + "added_message": "Custom Field added successfully", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." + }, + "customization": { + "customization": "customization", + "updated_message": "Информация о компании успешно обновлена", + "save": "Сохранить", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", + "invoices": { + "title": "Счет-фактуры", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", + "default_invoice_email_body": "Тело письма счета по умолчанию", + "company_address_format": "Формат адреса компании", + "shipping_address_format": "Формат адреса доставки", + "billing_address_format": "Формат адреса для выставления счетов", + "invoice_email_attachment": "Отправить счета-фактуры как вложения", + "invoice_email_attachment_setting_description": "Включите, если вы хотите отправлять счета-фактуры как вложение по электронной почте. Пожалуйста, обратите внимание, что кнопка «Просмотр счета» в письмах больше не будет отображаться, если включено.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." + }, + "estimates": { + "title": "Сметы", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", + "default_estimate_email_body": "Тело письма сметы по умолчанию", + "company_address_format": "Company Address Format", + "shipping_address_format": "Shipping Address Format", + "billing_address_format": "Billing Address Format", + "estimate_email_attachment": "Send estimates as attachments", + "estimate_email_attachment_setting_description": "Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" + }, + "payments": { + "title": "Платежи", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", + "default_payment_email_body": "Default Payment Email Body", + "company_address_format": "Формат адреса компании", + "from_customer_address_format": "From Customer Address Format", + "payment_email_attachment": "Send payments as attachments", + "payment_email_attachment_setting_description": "Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.", + "payment_settings_updated": "Payment Settings updated successfully" + }, + "items": { + "title": "Товары", + "units": "Единицы измерения", + "add_item_unit": "Add Item Unit", + "edit_item_unit": "Edit Item Unit", + "unit_name": "Unit Name", + "item_unit_added": "Item Unit Added", + "item_unit_updated": "Item Unit Updated", + "item_unit_confirm_delete": "You will not be able to recover this Item unit", + "already_in_use": "Item Unit is already in use", + "deleted_message": "Item Unit deleted successfully" + }, + "notes": { + "title": "Заметки", + "description": "Save time by creating notes and reusing them on your invoices, estimates & payments.", + "notes": "Заметки", + "type": "Тип", + "add_note": "Add Note", + "add_new_note": "Add New Note", + "name": "Название", + "edit_note": "Edit Note", + "note_added": "Note added successfully", + "note_updated": "Note Updated successfully", + "note_confirm_delete": "You will not be able to recover this Note", + "already_in_use": "Note is already in use", + "deleted_message": "Note deleted successfully" + } + }, + "account_settings": { + "profile_picture": "Profile Picture", + "name": "Имя", + "email": "Email", + "password": "Пароль", + "confirm_password": "Confirm Пароль", + "account_settings": "Account Settings", + "save": "Сохранить", + "section_description": "You can update your name, email & password using the form below.", + "updated_message": "Account Settings updated successfully" + }, + "user_profile": { + "name": "Имя", + "email": "Email", + "password": "Пароль", + "confirm_password": "Подтвердить пароль" + }, + "notification": { + "title": "Notifications", + "email": "Send Notifications to", + "description": "Which email notifications would you like to receive when something changes?", + "invoice_viewed": "Счет просмотрен", + "invoice_viewed_desc": "Когда клиент просматривает счет, отправленный через панель управления.", + "estimate_viewed": "Estimate viewed", + "estimate_viewed_desc": "When your customer views the estimate sent via crater dashboard.", + "save": "Сохранить", + "email_save_message": "Email saved successfully", + "please_enter_email": "Введите Email" + }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, + "tax_types": { + "title": "Типы налогов", + "add_tax": "Добавить налог", + "edit_tax": "Редактировать налог", + "description": "You can add or Remove Taxes as you please. Crater supports Taxes on Individual Items as well as on the invoice.", + "add_new_tax": "Добавить новый налог", + "tax_settings": "Настройки налога", + "tax_per_item": "Налог за единицу", + "tax_name": "Название налога", + "compound_tax": "Compound Tax", + "percent": "Процент", + "action": "Действие", + "tax_setting_description": "Enable this if you want to add taxes to individual invoice items. By default, taxes are added directly to the invoice.", + "created_message": "Tax type created successfully", + "updated_message": "Tax type updated successfully", + "deleted_message": "Tax type deleted successfully", + "confirm_delete": "Восстановление типа налога будет невозможна", + "already_in_use": "Налог используется" + }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, + "expense_category": { + "title": "Категории расходов", + "action": "Действие", + "description": "Categories are required for adding expense entries. You can Add or Remove these categories according to your preference.", + "add_new_category": "Добавить новую категорию", + "add_category": "Добавить категорию", + "edit_category": "Редактировать категорию", + "category_name": "Название категории", + "category_description": "Описание", + "created_message": "Категория расходов создана", + "deleted_message": "Категория расходов удалена", + "updated_message": "Категория расходов обновлена", + "confirm_delete": "Восстановление категории расходов будет невозможна", + "already_in_use": "Категория расходов используется" + }, + "preferences": { + "currency": "Валюта", + "default_language": "Default Language", + "time_zone": "Часовой пояс", + "fiscal_year": "Financial Year", + "date_format": "Date Format", + "discount_setting": "Discount Setting", + "discount_per_item": "Discount Per Item ", + "discount_setting_description": "Enable this if you want to add Discount to individual invoice items. By default, Discount is added directly to the invoice.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", + "save": "Сохранить", + "preference": "Preference | Preferences", + "general_settings": "Default preferences for the system.", + "updated_message": "Preferences updated successfully", + "select_language": "Select Language", + "select_time_zone": "Выберите часовой пояс", + "select_date_format": "Select Date Format", + "select_financial_year": "Select Financial Year", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" + }, + "update_app": { + "title": "Update App", + "description": "You can easily update Crater by checking for a new update by clicking the button below", + "check_update": "Check for updates", + "avail_update": "New Update available", + "next_version": "Next version", + "requirements": "Requirements", + "update": "Update Now", + "update_progress": "Update in progress...", + "progress_text": "It will just take a few minutes. Please do not refresh the screen or close the window before the update finishes", + "update_success": "App has been updated! Please wait while your browser window gets reloaded automatically.", + "latest_message": "No update available! You are on the latest version.", + "current_version": "Current Version", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "running_migrations": "Running Migrations", + "finishing_update": "Finishing Update", + "update_failed": "Update Failed", + "update_failed_text": "Sorry! Your update failed on : {step} step", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." + }, + "backup": { + "title": "Backup | Backups", + "description": "The backup is a zipfile that contains all files in the directories you specify along with a dump of your database", + "new_backup": "Add New Backup", + "create_backup": "Create Backup", + "select_backup_type": "Select Backup Type", + "backup_confirm_delete": "You will not be able to recover this Backup", + "path": "path", + "new_disk": "New Disk", + "created_at": "created at", + "size": "size", + "dropbox": "dropbox", + "local": "local", + "healthy": "healthy", + "amount_of_backups": "amount of backups", + "newest_backups": "newest backups", + "used_storage": "used storage", + "select_disk": "Select Disk", + "action": "Действие", + "deleted_message": "Backup deleted successfully", + "created_message": "Backup created successfully", + "invalid_disk_credentials": "Invalid credential of selected disk" + }, + "disk": { + "title": "File Disk | File Disks", + "description": "By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.", + "created_at": "created at", + "dropbox": "dropbox", + "name": "Имя", + "driver": "Driver", + "disk_type": "Тип", + "disk_name": "Disk Name", + "new_disk": "Add New Disk", + "filesystem_driver": "Filesystem Driver", + "local_driver": "local Driver", + "local_root": "local Root", + "public_driver": "Public Driver", + "public_root": "Public Root", + "public_url": "Public URL", + "public_visibility": "Public Visibility", + "media_driver": "Media Driver", + "media_root": "Media Root", + "aws_driver": "AWS Driver", + "aws_key": "AWS Key", + "aws_secret": "AWS Secret", + "aws_region": "AWS Region", + "aws_bucket": "AWS Bucket", + "aws_root": "AWS Root", + "do_spaces_type": "Do Spaces type", + "do_spaces_key": "Do Spaces key", + "do_spaces_secret": "Do Spaces Secret", + "do_spaces_region": "Do Spaces Region", + "do_spaces_bucket": "Do Spaces Bucket", + "do_spaces_endpoint": "Do Spaces Endpoint", + "do_spaces_root": "Do Spaces Root", + "dropbox_type": "Dropbox Type", + "dropbox_token": "Dropbox Token", + "dropbox_key": "Dropbox Key", + "dropbox_secret": "Dropbox Secret", + "dropbox_app": "Dropbox App", + "dropbox_root": "Dropbox Root", + "default_driver": "Default Driver", + "is_default": "IS DEFAULT", + "set_default_disk": "Set Default Disk", + "set_default_disk_confirm": "This disk will be set as default and all the new PDFs will be saved on this disk", + "success_set_default_disk": "Disk set as default successfully", + "save_pdf_to_disk": "Save PDFs to Disk", + "disk_setting_description": " Enable this, if you wish to save a copy of each Invoice, Estimate & Payment Receipt PDF on your default disk automatically. Turning this option will decrease the load-time when viewing the PDFs.", + "select_disk": "Select Disk", + "disk_settings": "Disk Settings", + "confirm_delete": "Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater", + "action": "Действие", + "edit_file_disk": "Edit File Disk", + "success_create": "Disk added successfully", + "success_update": "Disk updated successfully", + "error": "Disk addition failed", + "deleted_message": "File Disk deleted successfully", + "disk_variables_save_successfully": "Disk Configured Successfully", + "disk_variables_save_error": "Disk configuration failed.", + "invalid_disk_credentials": "Invalid credential of selected disk" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." + } + }, + "wizard": { + "account_info": "Инфо по аккаунту", + "account_info_desc": "Below details will be used to create the main Administrator account. Also you can change the details anytime after logging in.", + "name": "Имя", + "email": "Email", + "password": "Пароль", + "confirm_password": "Подтверждение пароля", + "save_cont": "Сохранить и продолжить", + "company_info": "О компании", + "company_info_desc": "This information will be displayed on invoices. Note that you can edit this later on settings page.", + "company_name": "Название компании", + "company_logo": "Логотип компании", + "logo_preview": "Предпросмотр", + "preferences": "Настройки", + "preferences_desc": "Настройки системы по-умолчанию.", + "currency_set_alert": "The company's currency cannot be changed later.", + "country": "Страна", + "state": "Область", + "city": "Город", + "address": "Адрес", + "street": "Улица1 | Улица2", + "phone": "Телефон", + "zip_code": "Почтовый индекс", + "go_back": "Назад", + "currency": "Валюта", + "language": "Language", + "time_zone": "Часовой пояс", + "fiscal_year": "Финансовый год", + "date_format": "Формат даты", + "from_address": "Адрес", + "username": "Имя пользователя", + "next": "Далее", + "continue": "Продолжить", + "skip": "Пропустить", + "database": { + "database": "Site URL & Database", + "connection": "Database Connection", + "host": "Database Host", + "port": "Database Port", + "password": "Пароль к БД", + "app_url": "App URL", + "app_domain": "App Domain", + "username": "Database Username", + "db_name": "Database Name", + "db_path": "Database Path", + "desc": "Create a database on your server and set the credentials using the form below." + }, + "permissions": { + "permissions": "Permissions", + "permission_confirm_title": "Точно продолжить?", + "permission_confirm_desc": "Folder permission check failed", + "permission_desc": "Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions." + }, + "verify_domain": { + "title": "Domain Verification", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Verify Now", + "success": "Domain Verify Successfully.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verify And Continue" + }, + "mail": { + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Mail Password", + "username": "Mail Username", + "mail_config": "Mail Configuration", + "from_name": "From Mail Name", + "from_mail": "From Mail Address", + "encryption": "Mail Encryption", + "mail_config_desc": "Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc." + }, + "req": { + "system_req": "System Requirements", + "php_req_version": "Php (version {version} required)", + "check_req": "Check Requirements", + "system_req_desc": "Crater has a few server requirements. Make sure that your server has the required php version and all the extensions mentioned below." + }, + "errors": { + "migrate_failed": "Ошибка миграции", + "database_variables_save_error": "Cannot write configuration to .env file. Please check its file permissions", + "mail_variables_save_error": "Email configuration failed.", + "connection_failed": "Database connection failed", + "database_should_be_empty": "Database should be empty" + }, + "success": { + "mail_variables_save_successfully": "Email configured successfully", + "database_variables_save_successfully": "Database configured successfully." + } + }, + "validation": { + "invalid_phone": "Неправильный номер телефона", + "invalid_url": "Неправильный url (ex: http://www.crater.com)", + "invalid_domain_url": "Неправильный домен (ex: crater.com)", + "required": "Обязательное поле", + "email_incorrect": "Неправильный Email.", + "email_already_taken": "Email уже существует.", + "email_does_not_exist": "User with given email doesn't exist", + "item_unit_already_taken": "This item unit name has already been taken", + "payment_mode_already_taken": "This payment mode name has already been taken", + "send_reset_link": "Выслать ссылку для восстановления", + "not_yet": "Not yet? Send it again", + "password_min_length": "Password must contain {count} characters", + "name_min_length": "Name must have at least {count} letters.", + "prefix_min_length": "Prefix must have at least {count} letters.", + "enter_valid_tax_rate": "Неправильное значение налога", + "numbers_only": "Только цифры.", + "characters_only": "Только буквы.", + "password_incorrect": "Пароли должны совпадать", + "password_length": "Пароль должен быть {count} символов минимум.", + "qty_must_greater_than_zero": "Quantity must be greater than zero.", + "price_greater_than_zero": "Price must be greater than zero.", + "payment_greater_than_zero": "Payment must be greater than zero.", + "payment_greater_than_due_amount": "Entered Payment is more than due amount of this invoice.", + "quantity_maxlength": "Quantity should not be greater than 20 digits.", + "price_maxlength": "Price should not be greater than 20 digits.", + "price_minvalue": "Price should be greater than 0.", + "amount_maxlength": "Amount should not be greater than 20 digits.", + "amount_minvalue": "Amount should be greater than 0.", + "discount_maxlength": "Discount should not be greater than max discount", + "description_maxlength": "Description should not be greater than 255 characters.", + "subject_maxlength": "Тема должна быть не более 100 символов.", + "message_maxlength": "Message should not be greater than 255 characters.", + "maximum_options_error": "Maximum of {max} options selected. First remove a selected option to select another.", + "notes_maxlength": "Notes should not be greater than 65,000 characters.", + "address_maxlength": "Address should not be greater than 255 characters.", + "ref_number_maxlength": "Серийный номер should not be greater than 255 characters.", + "prefix_maxlength": "Prefix should not be greater than 5 characters.", + "something_went_wrong": "something went wrong", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" + }, + "pdf_estimate_label": "Заказ", + "pdf_estimate_number": "Номер заказа", + "pdf_estimate_date": "Дата заказа", + "pdf_estimate_expire_date": "Истекает", + "pdf_invoice_label": "Счет-фактура", + "pdf_invoice_number": "Номер счета-фактуры", + "pdf_invoice_date": "Дата счета-фактуры", + "pdf_invoice_due_date": "Дата к оплате", + "pdf_notes": "Заметки", + "pdf_items_label": "Записи", + "pdf_quantity_label": "Кол-во", + "pdf_price_label": "Цена", + "pdf_discount_label": "Скидка", + "pdf_amount_label": "Сумма", + "pdf_subtotal": "Промежуточный итог", + "pdf_total": "Итого", + "pdf_payment_label": "Платёж", + "pdf_payment_receipt_label": "КВИТАНЦИЯ ПЛАТЕЖА", + "pdf_payment_date": "Дата платежа", + "pdf_payment_number": "Номер платежа", + "pdf_payment_mode": "Режим платежа", + "pdf_payment_amount_received_label": "Сумма поступления", + "pdf_expense_report_label": "ОТЧЁТ РАСХОДОВ", + "pdf_total_expenses_label": "ВСЕГО РАСХОДОВ", + "pdf_profit_loss_label": "ОТЧЁТ ПО ДОХОДАМ И РАСХОДАМ", + "pdf_sales_customers_label": "Продажи по клиентам", + "pdf_sales_items_label": "Отчёт по продажам товаров", + "pdf_tax_summery_label": "Отчёт по налогам", + "pdf_income_label": "ДОХОД", + "pdf_net_profit_label": "ЧИСТЫЙ ДОХОД", + "pdf_customer_sales_report": "Отчёт продаж: По клиентам", + "pdf_total_sales_label": "ВСЕГО ПРОДАЖ", + "pdf_item_sales_label": "Отчёт продаж: По товарам", + "pdf_tax_report_label": "ОТЧЁТ ПО НАЛОГАМ", + "pdf_total_tax_label": "ВСЕГО НАЛОГОВ", + "pdf_tax_types_label": "Типы налогов", + "pdf_expenses_label": "Расходы", + "pdf_bill_to": "Адрес счёта,", + "pdf_ship_to": "Адрес доставки,", + "pdf_received_from": "Получено от:", + "pdf_tax_label": "Tax" +} diff --git a/resources/scripts/locales/sk.json b/resources/scripts/locales/sk.json index 1498a5a93..e7473b203 100644 --- a/resources/scripts/locales/sk.json +++ b/resources/scripts/locales/sk.json @@ -4,13 +4,15 @@ "customers": "Zákazníci", "items": "Položky", "invoices": "Faktúry", + "recurring-invoices": "Recurring Invoices", "expenses": "Výdaje", "estimates": "Cenové odhady", "payments": "Platby", "reports": "Reporty", "settings": "Nastavenia", "logout": "Odhlásiť sa", - "users": "Uživatelia" + "users": "Uživatelia", + "modules": "Modules" }, "general": { "add_company": "Pridať firmu", @@ -27,6 +29,9 @@ "to_date": "Do dátumu", "from": "Od", "to": "Pre", + "ok": "Ok", + "yes": "Yes", + "no": "No", "sort_by": "Zoradiť podľa", "ascending": "Vzostupne", "descending": "Zostupne", @@ -34,6 +39,7 @@ "body": "Telo textu", "message": "Správa", "send": "Odoslať", + "preview": "Preview", "go_back": "Späť", "back_to_login": "Späť na prihlásenie?", "home": "Domov", @@ -59,12 +65,11 @@ "sent": "Odoslané", "all": "Všetko", "select_all": "Vybrať všetky", + "select_template": "Select Template", "choose_file": "Kliknite sem pre vybratie súboru", "choose_template": "Vybrať vzhľad", "choose": "Vybrať", "remove": "Odstrániť", - "powered_by": "Beží na", - "bytefury": "Bytefury", "select_a_status": "Vyberte stav", "select_a_tax": "Vyberte daň", "search": "Hľadať", @@ -86,7 +91,15 @@ "retry": "Skúsiť znova", "choose_note": "Vyberte poznámku", "no_note_found": "Neboli nájdené žiadne poznámky", - "insert_note": "Vlož poznámku" + "insert_note": "Vlož poznámku", + "copied_pdf_url_clipboard": "Copied PDF url to clipboard!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Docs", + "do_you_wish_to_continue": "Do you wish to continue?", + "note": "Note", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { "select_year": "Vyberte rok", @@ -94,7 +107,8 @@ "due_amount": "Čiastka k zaplateniu", "customers": "Zákazníci", "invoices": "Faktúry", - "estimates": "Cenové odhady" + "estimates": "Cenové odhady", + "payments": "Payments" }, "chart_info": { "total_sales": "Predaje", @@ -135,8 +149,28 @@ "users": "Uživatelia", "no_results_found": "Neboli nájdené žiadne výsledky" }, + "company_switcher": { + "label": "SWITCH COMPANY", + "no_results_found": "No Results Found", + "add_new_company": "Add new company", + "new_company": "New company", + "created_message": "Company created successfully" + }, + "dateRange": { + "today": "Today", + "this_week": "This Week", + "this_month": "This Month", + "this_quarter": "This Quarter", + "this_year": "This Year", + "previous_week": "Previous Week", + "previous_month": "Previous Month", + "previous_quarter": "Previous Quarter", + "previous_year": "Previous Year", + "custom": "Custom" + }, "customers": { "title": "Zákazníci", + "prefix": "Prefix", "add_customer": "Pridať Zákazníka", "contacts_list": "Zoznam zákazníkov", "name": "Meno", @@ -151,6 +185,9 @@ "phone": "Telefón", "website": "Webové stránky", "overview": "Prehľad", + "invoice_prefix": "Invoice Prefix", + "estimate_prefix": "Estimate Prefix", + "payment_prefix": "Payment Prefix", "enable_portal": "Aktivovať portál", "country": "Krajina", "state": "Štát", @@ -159,6 +196,7 @@ "added_on": "Pridané Dňa", "action": "Akcia", "password": "Heslo", + "confirm_password": "Confirm Password", "street_number": "Číslo Ulice", "primary_currency": "Hlavná Mena", "description": "Popis", @@ -169,11 +207,17 @@ "new_customer": "Nový Zákazník", "edit_customer": "Upraviť Zákazníka", "basic_info": "Základné Informácie", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", "billing_address": "Fakturačná Adresa", "shipping_address": "Doručovacia Adresa", "copy_billing_address": "Kopírovať podľa Fakturačnej adresy", "no_customers": "Zatiaľ nebol pridaný žiadny zákazník!", "no_customers_found": "Nenájdení žiadni zákazníci!", + "no_contact": "No contact", + "no_contact_name": "No contact name", "list_of_customers": "Táto sekcia bude obsahovať zoznam zákazníkov.", "primary_display_name": "Hlavné meno pre zobrazenie", "select_currency": "Vyberte menu", @@ -186,7 +230,9 @@ "confirm_delete": "Nebudete môcť obnoviť tohto zákazníka ani žiadne faktúry, cenové odhady alebo platby s ním spojené. | Nebudete môcť obnoviť týchto zákazníkov ani žiadne faktúry, cenové odhady alebo platby s nimi spojené.", "created_message": "Zákazník úspešne vytvorený", "updated_message": "Zákazník úspešne aktualizovaný", - "deleted_message": "Zákazník úspešne odstránený | Zákazníci úspešne odstránení" + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Zákazník úspešne odstránený | Zákazníci úspešne odstránení", + "edit_currency_not_allowed": "Cannot change currency once transactions created." }, "items": { "title": "Položky", @@ -197,6 +243,7 @@ "added_on": "Pridané Dňa", "price": "Cena", "date_of_creation": "Dátum Vytvorenia", + "not_selected": "No item selected", "action": "Akcia", "add_item": "Pridať Položku", "save_item": "Uložiť Položku", @@ -217,6 +264,8 @@ }, "estimates": { "title": "Cenové odhady", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", "estimate": "Cenový odhad | Cenové odhady", "estimates_list": "Zoznam Cenových odhadov", "days": "{days} Dní", @@ -267,8 +316,11 @@ "required": "Pole je povinné" }, "accepted": "Prijátá", + "rejected": "Rejected", + "expired": "Expired", "sent": "Odoslaná", "draft": "Koncept", + "viewed": "Viewed", "declined": "Zrušený", "new_estimate": "Nový Cenový odhad", "add_new_estimate": "Pridať nový Cenový odhad", @@ -305,13 +357,19 @@ }, "invoices": { "title": "Faktúry", + "download": "Download", + "pay_invoice": "Pay Invoice", "invoices_list": "Zoznam Faktúr", + "invoice_information": "Invoice Information", "days": "{days} Ďeň", "months": "{months} Mesiac", "years": "{years} Rok", "all": "Všetko", "paid": "Zaplatené", "unpaid": "Nezaplatené", + "viewed": "Viewed", + "overdue": "Overdue", + "completed": "Completed", "customer": "ZÁKAZNÍK", "paid_status": "Stav platby", "ref_no": "REF Č.", @@ -337,10 +395,13 @@ "send_invoice": "Odoslať Faktúru", "resend_invoice": "Odoslať Faktúru Znovu", "invoice_template": "Vzhľad faktúry", + "conversion_message": "Invoice cloned successful", "template": "Vzhľad", "mark_as_sent": "Označiť ako odoslanú", "confirm_send_invoice": "Táto faktúra bude odoslaná zákazníkovi prostredníctvom e-mailu", "invoice_mark_as_sent": "Táto faktúra bude označená ako odoslaná", + "confirm_mark_as_accepted": "This invoice will be marked as Accepted", + "confirm_mark_as_rejected": "This invoice will be marked as Rejected", "confirm_send": "Táto faktúra bude odoslaná zákazníkovi prostredníctvom e-mailu", "invoice_date": "Dátum Vystavenia", "record_payment": "Zaznamenať Platbu", @@ -352,11 +413,13 @@ "update_invoice": "Upraviť Faktúru", "add_new_tax": "Pridať Novú Daň", "no_invoices": "Zatiaľ nemáte žiadné faktúry!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", "list_of_invoices": "Táto sekcia bude obsahovať zoznam faktúr", "select_invoice": "Vybrať Faktúru", "no_matching_invoices": "Nenašli sa žiadne faktúry!", "mark_as_sent_successfully": "Faktúra označená ako úspešne odoslaná", - "invoice_sent_successfully": "Faktúra bola úspešne odoslaná", + "invoice_sent_successfully": "Invoice sent successfully", "cloned_successfully": "Faktúra bola úspešne okopírovaná", "clone_invoice": "Kopírovať faktúru", "confirm_clone": "Faktúra bude okopírovaná do novej", @@ -374,6 +437,7 @@ "select_an_item": "Napíšte alebo vyberte položku", "type_item_description": "Popis položky (voliteľné)" }, + "payment_attached_message": "K jednej z vybraných faktúr už je pripojená platba. Nezabudnite najskôr vymazať priložené platby, aby ste mohli pokračovať v odstránení", "confirm_delete": "Túto faktúru nebude možné obnoviť | Tieto faktúry nebude možné obnoviť", "created_message": "Faktúra úspešne vytvorená", "updated_message": "Faktúra úspešne aktualizovaná", @@ -382,6 +446,115 @@ "something_went_wrong": "Niečo neprebehlo v poriadku, odskúšajte prosím znova.", "invalid_due_amount_message": "Celková suma faktúry nemôže byť nižšia ako celková suma zaplatená za túto faktúru. Ak chcete pokračovať, aktualizujte faktúru alebo odstráňte súvisiace platby." }, + "recurring_invoices": { + "title": "Recurring Invoices", + "invoices_list": "Recurring Invoices List", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Viewed", + "overdue": "Overdue", + "active": "Active", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, "payments": { "title": "Platby", "payments_list": "Zoznam Platieb", @@ -405,6 +578,8 @@ "update_payment": "Úpraviť Platbu", "payment": "Platba | Platby", "no_payments": "Zatiaľ nemáte žiadne platby!", + "not_selected": "Not selected", + "no_invoice": "No invoice", "no_matching_payments": "Nenašli sa žiadne platby spĺňajúce Vaše podmienky!", "list_of_payments": "Táto sekcia bude obsahovať zoznam platieb.", "select_payment_mode": "Vyberte spôsob platby", @@ -424,6 +599,7 @@ "select_a_customer": "Vyberte zákazníka", "expense_title": "Nadpis", "customer": "Zákazník", + "currency": "Currency", "contact": "Kontakt", "category": "Kategória", "from_date": "Od dátumu", @@ -433,6 +609,7 @@ "receipt": "Doklad o zaplatení", "amount": "Suma", "action": "Akcia", + "not_selected": "Not selected", "note": "Poznámka", "category_id": "ID kategórie", "date": "Dátum", @@ -476,6 +653,51 @@ "enter_password": "Zadajte heslo", "retype_password": "Znova zadajte heslo" }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, "users": { "title": "Uživatelia", "users_list": "Zoznam Užívateľov", @@ -500,7 +722,9 @@ "confirm_delete": "Nebude možné obnoviť tohto používateľa | Nebude možné obnoviť týchto používateľov", "created_message": "Užívateľ úspešne vytvorený", "updated_message": "Užívateľ úspešne aktualizovaná", - "deleted_message": "Užívateľ úspešne odstránený | Užívatelia úspešne odstránení" + "deleted_message": "Užívateľ úspešne odstránený | Užívatelia úspešne odstránení", + "select_company_role": "Select Role for {company}", + "companies": "Companies" }, "reports": { "title": "Reporty", @@ -577,7 +801,12 @@ "file_disk": "Súborový disk", "custom_fields": "Vlastné Polia", "payment_modes": "Spôsoby Platby", - "notes": "Poznámky" + "notes": "Poznámky", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." }, "title": "Nastavenia", "setting": "Nastavenia | Nastavenia", @@ -639,7 +868,13 @@ "address": "Adresa", "zip": "PSČ", "save": "Uložiť", - "updated_message": "Informácie o firme úspešne aktualizované" + "delete": "Delete", + "updated_message": "Informácie o firme úspešne aktualizované", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" }, "custom_fields": { "title": "Vlastné Polia", @@ -650,6 +885,7 @@ "label": "Značka", "type": "Typ", "name": "Názov", + "slug": "Slug", "required": "Povinné", "placeholder": "Umiestnenie", "help_text": "Pomocný Text", @@ -675,85 +911,104 @@ "select_relative_date": "Vybrať Relatívny Dátum", "ticked_by_default": "Predvolene označené", "updated_message": "Vlastné pole úspešne aktualizované", - "added_message": "Vlastne pole úspešne pridané" + "added_message": "Vlastne pole úspešne pridané", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." }, "customization": { "customization": "Prispôsobenie", - "save": "Uložiť", - "addresses": { - "title": "Adresy", - "section_description": "Môžete nastaviť formát fakturačnej a dodacej adresy zákazníka (Zobrazuje sa iba v PDF). ", - "customer_billing_address": "Zákazník - fakturačná adresa", - "customer_shipping_address": "Zákazník - doručovacia adresa", - "company_address": "Firemná adresa", - "insert_fields": "Vložiť polia", - "contact": "Kontakt", - "address": "Adresa", - "display_name": "Zobrazované Meno", - "primary_contact_name": "Meno Primárneho Kontaktu", - "email": "Email", - "website": "Webové stránky", - "name": "Názov", - "country": "Krajina", - "state": "Štát", - "city": "Mesto", - "company_name": "Názov firmy", - "address_street_1": "Adresa ulica 1", - "address_street_2": "Adresa ulica 2", - "phone": "Telefón", - "zip_code": "PSČ", - "address_setting_updated": "Nastavenia adresy úspešne aktualizované" - }, "updated_message": "Informácie o firme úspešne aktualizované", + "save": "Uložiť", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", "invoices": { "title": "Faktúry", - "notes": "Poznámky", - "invoice_prefix": "Predpona Faktúry", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", "default_invoice_email_body": "Prednastavené telo e-mailu faktúry", - "invoice_settings": "Nastavenia Faktúry", - "autogenerate_invoice_number": "Automaticky Vygenerovať Číslo Faktúry", - "autogenerate_invoice_number_desc": "Ak si neprajete automaticky generovať číslo novej faktúry, vypnite túto možnosť.", - "enter_invoice_prefix": "Zadajte predponu faktúry", - "terms_and_conditions": "Podmienky používania", "company_address_format": "Formát firemnej adresy", "shipping_address_format": "Formát doručovacej adresy", "billing_address_format": "Formát fakturačnej adresy", - "invoice_settings_updated": "Nastavenia faktúr boli úspešne aktualizované" + "invoice_email_attachment": "Send invoices as attachments", + "invoice_email_attachment_setting_description": "Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." }, "estimates": { "title": "Cenový odhad", - "estimate_prefix": "Predpona cenového odhadu", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", "default_estimate_email_body": "Prednastavené telo e-mailu cenového dohadu", - "estimate_settings": "Nastavenia cenových odhadov", - "autogenerate_estimate_number": "Automaticky generovať číslo cenového odhadu", - "estimate_setting_description": "Zakážte to, ak si neprajete automaticky generovať čísla cenovych odhadov zakaždým, keď vytvoríte nový odhad.", - "enter_estimate_prefix": "Vložte prepdonu cenového odhadu", - "estimate_setting_updated": "Nastavenia cenových odhadov úspešne aktualizované", "company_address_format": "Formát firemnej adresy", + "shipping_address_format": "Formát fakturačnej adresy", "billing_address_format": "Formát fakturačnej adresy", - "shipping_address_format": "Formát fakturačnej adresy" + "estimate_email_attachment": "Send estimates as attachments", + "estimate_email_attachment_setting_description": "Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" }, "payments": { "title": "Platby", - "description": "Možnosti platieb", - "payment_prefix": "Predpona platby", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", "default_payment_email_body": "Prednastavené telo e-mailu platby", - "payment_settings": "Nastavenia Platieb", - "autogenerate_payment_number": "Automaticky generovať číslo platby", - "payment_setting_description": "Zakážte to, ak si neprajete automaticky generovať čísla platieb zakaždým, keď vytvoríte novú platbu.", - "enter_payment_prefix": "Vložit Predponu Platby", - "payment_setting_updated": "Nastavenia platieb úspešne aktualizované", - "payment_modes": "Typy Platieb", - "add_payment_mode": "Pridať typ Platby", - "edit_payment_mode": "Upraviť typ Platby", - "mode_name": "Názov platby", - "payment_mode_added": "Typ Platby pridaný", - "payment_mode_updated": "Typ Platby aktualizovaný", - "payment_mode_confirm_delete": "Nebude môcť obnoviť typ platby", - "already_in_use": "Tento typ platby sa už používa", - "deleted_message": "Typ platby úspešne odstránený", "company_address_format": "Formát firemnej adresy", - "from_customer_address_format": "Z formátu adresy zákazníka" + "from_customer_address_format": "Z formátu adresy zákazníka", + "payment_email_attachment": "Send payments as attachments", + "payment_email_attachment_setting_description": "Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.", + "payment_settings_updated": "Payment Settings updated successfully" }, "items": { "title": "Položky", @@ -812,6 +1067,57 @@ "email_save_message": "E-mail bol úspešne uložený", "please_enter_email": "Zadajte e-mail" }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, "tax_types": { "title": "Typ daní", "add_tax": "Pridať daň", @@ -831,6 +1137,18 @@ "confirm_delete": "Nebudete môcť obnoviť daň", "already_in_use": "Daň už sa už požíva" }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, "expense_category": { "title": "Kategórie výdajov", "action": "Akcia", @@ -853,8 +1171,10 @@ "fiscal_year": "Fiškálny Rok", "date_format": "Formát Dátumu", "discount_setting": "Nastavenia Zľavy", - "discount_per_item": "Zľava pre každú Položku zvlášť", + "discount_per_item": "Zľava pre každú Položku zvlášť ", "discount_setting_description": "Túto možnosť povoľte, ak chcete pridať zľavu k jednotlivým položkám faktúry. Štandardne sa zľava pripočítava priamo k faktúre.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", "save": "Uložiť", "preference": "Preferencie | Preferencie", "general_settings": "Systémovo predvolené preferencie.", @@ -862,7 +1182,14 @@ "select_language": "Vyberte Jazyk", "select_time_zone": "Vyberte Časové Pásmo", "select_date_format": "Vybrať Formát Dátumu", - "select_financial_year": "Vyberte Fiškálny Rok" + "select_financial_year": "Vyberte Fiškálny Rok", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" }, "update_app": { "title": "Aktualizovať Aplikáciu", @@ -880,10 +1207,12 @@ "download_zip_file": "Stiahnuť ZIP súbor", "unzipping_package": "Rozbaliť balík", "copying_files": "Kopírovanie súborov", + "deleting_files": "Deleting Unused files", "running_migrations": "Prebieha Migrácia", "finishing_update": "Ukončovanie Aktualizácie", "update_failed": "Aktualizácia zlyhala!", - "update_failed_text": "Aktualizácia zlyhala na : {step} kroku" + "update_failed_text": "Aktualizácia zlyhala na : {step} kroku", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." }, "backup": { "title": "Záloha | Zálohy", @@ -949,6 +1278,7 @@ "default_driver": "Predvolený Driver", "is_default": "Je predvolený", "set_default_disk": "Nastaviť predvolený disk", + "set_default_disk_confirm": "This disk will be set as default and all the new PDFs will be saved on this disk", "success_set_default_disk": "Disk úspešne nastavený ako predvolený", "save_pdf_to_disk": "Ulož PDFs na Disk", "disk_setting_description": "Túto možnosť povoľte ak si chcete automaticky uložiť kópiu každého súboru PDF s fakturami, odhadmi a príjmami na predvolený disk. Použitím tejto možnosti skrátite dobu načítania pri prezeraní súborov PDF.", @@ -964,6 +1294,18 @@ "disk_variables_save_successfully": "Disk bol úspešne pridaný", "disk_variables_save_error": "Konfigurácia disku zlyhala.", "invalid_disk_credentials": "Neplatné prihlasovacie údaje pre Disk" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { @@ -981,6 +1323,7 @@ "logo_preview": "Náhľad loga", "preferences": "Preferencie", "preferences_desc": "Predvolené nastavenie systému.", + "currency_set_alert": "The company's currency cannot be changed later.", "country": "Krajina", "state": "Štát", "city": "Mesto", @@ -1018,6 +1361,15 @@ "permission_confirm_desc": "Nedostatočné oprávnenia na priečinky inštalácie", "permission_desc": "Nižšie je uvedený zoznam povolení priečinkov ktoré sú potrebné na fungovanie aplikácie. Ak kontrola povolení zlyhá nezabudnite aktualizovať povolenia priečinka." }, + "verify_domain": { + "title": "Domain Verification", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Verify Now", + "success": "Domain Verify Successfully.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verify And Continue" + }, "mail": { "host": "Mail Host", "port": "Mail Port", @@ -1056,8 +1408,8 @@ }, "validation": { "invalid_phone": "Zlé telefónné číslo", - "invalid_url": "Nesprávna URL adresa (ex: http://www.craterapp.com)", - "invalid_domain_url": "Nesprávna URL (ex: craterapp.com)", + "invalid_url": "Nesprávna URL adresa (ex: http://www.crater.com)", + "invalid_domain_url": "Nesprávna URL (ex: crater.com)", "required": "Povinné pole", "email_incorrect": "Zlý email.", "email_already_taken": "Email sa uz používa.", @@ -1068,6 +1420,7 @@ "not_yet": "Email ešte neprišiel? Znova odoslať", "password_min_length": "Heslo musí obsahovať {count} znaky", "name_min_length": "Meno musí mať minimálne {count} písmen.", + "prefix_min_length": "Prefix must have at least {count} letters.", "enter_valid_tax_rate": "Zadajte platnú sadzbu dane", "numbers_only": "Iba čísla.", "characters_only": "Iba znaky.", @@ -1082,6 +1435,7 @@ "price_minvalue": "Suma musi byť vyššia ako 0.", "amount_maxlength": "Čiastka by nemala obsahovať viac ako 20 číslic.", "amount_minvalue": "Čiastka musí byť vačšia ako 0.", + "discount_maxlength": "Discount should not be greater than max discount", "description_maxlength": "Popis nesmie obsahovať viac ako 255 znaokv.", "subject_maxlength": "Predmet nesmie obsahovať viac ako 100 znakov.", "message_maxlength": "Správa nesmie obsahovať viac ako 255 znakov.", @@ -1090,7 +1444,38 @@ "address_maxlength": "Adresa nesmie obsahovať viac ako 255 znakov", "ref_number_maxlength": "Referenčné čislo nesmie obsahovať viac ako 255 znakov", "prefix_maxlength": "Predpona nesmie mať viac ako 5 znakov.", - "something_went_wrong": "Niečo neprebehlo v poriadku, odskúšajte prosím znova." + "something_went_wrong": "Niečo neprebehlo v poriadku, odskúšajte prosím znova.", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, "pdf_estimate_label": "Cenový odhad", "pdf_estimate_number": "Číslo cenového odhadu", @@ -1108,6 +1493,7 @@ "pdf_amount_label": "Celkom", "pdf_subtotal": "Medzisúčet", "pdf_total": "Súčet", + "pdf_payment_label": "Payment", "pdf_payment_receipt_label": "Doklad o zaplatení", "pdf_payment_date": "Dátum platby", "pdf_payment_number": "Číslo platby", @@ -1116,6 +1502,9 @@ "pdf_expense_report_label": "Report výdajov", "pdf_total_expenses_label": "Celkové výdaje", "pdf_profit_loss_label": "Zisky a straty", + "pdf_sales_customers_label": "Sales Customer Report", + "pdf_sales_items_label": "Sales Item Report", + "pdf_tax_summery_label": "Tax Summary Report", "pdf_income_label": "Príjem", "pdf_net_profit_label": "Čistý príjem", "pdf_customer_sales_report": "Report predajov: Podľa zákazníkov", @@ -1128,5 +1517,5 @@ "pdf_bill_to": "Fakturovať,", "pdf_ship_to": "Doručiť,", "pdf_received_from": "Prijaté od:", - "pdf_tax_label": "daň" + "pdf_tax_label": "Tax" } diff --git a/resources/scripts/locales/sl.json b/resources/scripts/locales/sl.json new file mode 100644 index 000000000..19b702b91 --- /dev/null +++ b/resources/scripts/locales/sl.json @@ -0,0 +1,1521 @@ +{ + "navigation": { + "dashboard": "Nadzorna plošča", + "customers": "Stranke", + "items": "Izdelki", + "invoices": "Računi", + "recurring-invoices": "Ponavljajoči računi", + "expenses": "Stroški", + "estimates": "Predvideno", + "payments": "Plačila", + "reports": "Poročila", + "settings": "Nastavitve", + "logout": "Odjava", + "users": "Uporabniki", + "modules": "Modules" + }, + "general": { + "add_company": "Dodaj Podjetje", + "view_pdf": "Poglej PDF", + "copy_pdf_url": "Kopiraj PDF Url", + "download_pdf": "Naloži PDF", + "save": "Shrani", + "create": "Ustvari", + "cancel": "Prekliči", + "update": "Posodobi", + "deselect": "Prekliči izbor", + "download": "Prenesi", + "from_date": "Datum od", + "to_date": "Do datuma", + "from": "Od", + "to": "Do", + "ok": "V redu", + "yes": "Da", + "no": "Ne", + "sort_by": "Razvrsti po", + "ascending": "Naraščajoče", + "descending": "Padajoče", + "subject": "Naslov", + "body": "Vsebina", + "message": "Sporočilo", + "send": "Pošlji", + "preview": "Predogled", + "go_back": "Pojdi nazaj", + "back_to_login": "Nazaj na prijavo?", + "home": "Domov", + "filter": "Filter", + "delete": "Izbriši", + "edit": "Uredi", + "view": "Pogled", + "add_new_item": "Dodaj nov element", + "clear_all": "Počisti vse", + "showing": "Prikazujem", + "of": "od", + "actions": "Dejanja", + "subtotal": "SUBTOTAL", + "discount": "POPUST", + "fixed": "Fixed", + "percentage": "Procent", + "tax": "Davek", + "total_amount": "SKUPNI ZNESEK", + "bill_to": "Račun na", + "ship_to": "Poslano na", + "due": "Zapadlost", + "draft": "Osnutek", + "sent": "Poslano", + "all": "Vse", + "select_all": "Izberi vse", + "select_template": "Izberi predlogo", + "choose_file": "Kliknite tukaj, da izberete datoteko", + "choose_template": "Izberi predlogo", + "choose": "Izberi", + "remove": "Odstrani", + "select_a_status": "Izberite stanje", + "select_a_tax": "Izberi davek", + "search": "Išči", + "are_you_sure": "Ali ste prepričani?", + "list_is_empty": "Seznam je prazen.", + "no_tax_found": "Davka ni bilo mogoče najti!", + "four_zero_four": "404", + "you_got_lost": "Ups! Izgubili ste se!", + "go_home": "Pojdi domov", + "test_mail_conf": "Preskusite konfiguracijo e-pošte", + "send_mail_successfully": "E-pošta uspešno poslana", + "setting_updated": "Nastavitve uspešno posodobljene", + "select_state": "Izberite zvezno državo", + "select_country": "Izberite državo", + "select_city": "Izberite mesto", + "street_1": "Ulica 1", + "street_2": "Ulica 2", + "action_failed": "Postopek ni uspel", + "retry": "Poizkusi znova", + "choose_note": "Izberite Opombo", + "no_note_found": "Opomba ni bila najdena", + "insert_note": "Vstavi opombo", + "copied_pdf_url_clipboard": "Copied PDF url to clipboard!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Docs", + "do_you_wish_to_continue": "Do you wish to continue?", + "note": "Note", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" + }, + "dashboard": { + "select_year": "Izberite leto", + "cards": { + "due_amount": "Amount Due", + "customers": "Stranke", + "invoices": "Računi", + "estimates": "Estimates", + "payments": "Payments" + }, + "chart_info": { + "total_sales": "Sales", + "total_receipts": "Receipts", + "total_expense": "Stroški", + "net_income": "Neto prihodki", + "year": "Izberite leto" + }, + "monthly_chart": { + "title": "Sales & Expenses" + }, + "recent_invoices_card": { + "title": "Due Invoices", + "due_on": "Due On", + "customer": "Stranka", + "amount_due": "Amount Due", + "actions": "Dejanja", + "view_all": "Prikaži vse" + }, + "recent_estimate_card": { + "title": "Recent Estimates", + "date": "Date", + "customer": "Stranka", + "amount_due": "Amount Due", + "actions": "Actions", + "view_all": "Prikaži vse" + } + }, + "tax_types": { + "name": "Name", + "description": "Description", + "percent": "Percent", + "compound_tax": "Compound Tax" + }, + "global_search": { + "search": "Search...", + "customers": "Stranke", + "users": "Users", + "no_results_found": "No Results Found" + }, + "company_switcher": { + "label": "SWITCH COMPANY", + "no_results_found": "No Results Found", + "add_new_company": "Add new company", + "new_company": "New company", + "created_message": "Company created successfully" + }, + "dateRange": { + "today": "Today", + "this_week": "This Week", + "this_month": "This Month", + "this_quarter": "This Quarter", + "this_year": "This Year", + "previous_week": "Previous Week", + "previous_month": "Previous Month", + "previous_quarter": "Previous Quarter", + "previous_year": "Predhodnje Leto", + "custom": "Po meri" + }, + "customers": { + "title": "Stranke", + "prefix": "Predznak", + "add_customer": "Dodajte uporabnika", + "contacts_list": "Seznam uporabnikov", + "name": "Ime", + "mail": "E-pošta", + "statement": "Izjava", + "display_name": "Prikazano ime", + "primary_contact_name": "Glavni naziv", + "contact_name": "Naziv", + "amount_due": "Zapadli znesek", + "email": "E-pošta", + "address": "Naslov", + "phone": "Telefon", + "website": "Spletna stran", + "overview": "Pregled", + "invoice_prefix": "Predpona računa", + "estimate_prefix": "Predpona ocene", + "payment_prefix": "Predpona plačila", + "enable_portal": "Omogoči portal", + "country": "Država", + "state": "Območje", + "city": "Mesto", + "zip_code": "Poštna številka", + "added_on": "Dodano na", + "action": "Dejanje", + "password": "Geslo", + "confirm_password": "Potrdi geslo", + "street_number": "Številka ulice", + "primary_currency": "Primarna valuta", + "description": "Opis", + "add_new_customer": "Dodajte uporabnika", + "save_customer": "Shrani uporabnika", + "update_customer": "Posodobi uporabnika", + "customer": "Uporabnik | Uporabniki", + "new_customer": "Nov uporabnik", + "edit_customer": "Urejanje uporabnika", + "basic_info": "Osnovne informacije", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", + "billing_address": "Naslov prejemnika računa", + "shipping_address": "Naslov za dostavo", + "copy_billing_address": "Kopiraj iz računa", + "no_customers": "Strank še ni!", + "no_customers_found": "Strank še ni!", + "no_contact": "Ni stikov", + "no_contact_name": "Ni kontaktnega imena", + "list_of_customers": "Ta razdelek bo vseboval seznam strank.", + "primary_display_name": "Primarno prikazano ime", + "select_currency": "Izberi valuto", + "select_a_customer": "Izberi stranko", + "type_or_click": "Type or click to select", + "new_transaction": "New Transaction", + "no_matching_customers": "There are no matching customers!", + "phone_number": "Phone Number", + "create_date": "Ustvarjeno dne", + "confirm_delete": "You will not be able to recover this customer and all the related Invoices, Estimates and Payments. | You will not be able to recover these customers and all the related Invoices, Estimates and Payments.", + "created_message": "Customer created successfully", + "updated_message": "Customer updated successfully", + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Customer deleted successfully | Customers deleted successfully", + "edit_currency_not_allowed": "Cannot change currency once transactions created." + }, + "items": { + "title": "Items", + "items_list": "Items List", + "name": "Name", + "unit": "Unit", + "description": "Description", + "added_on": "Added On", + "price": "Price", + "date_of_creation": "Date Of Creation", + "not_selected": "No item selected", + "action": "Action", + "add_item": "Add Item", + "save_item": "Save Item", + "update_item": "Update Item", + "item": "Item | Items", + "add_new_item": "Add New Item", + "new_item": "New Item", + "edit_item": "Edit Item", + "no_items": "No items yet!", + "list_of_items": "This section will contain the list of items.", + "select_a_unit": "select unit", + "taxes": "Taxes", + "item_attached_message": "Cannot delete an item which is already in use", + "confirm_delete": "You will not be able to recover this Item | You will not be able to recover these Items", + "created_message": "Item created successfully", + "updated_message": "Item updated successfully", + "deleted_message": "Item deleted successfully | Items deleted successfully" + }, + "estimates": { + "title": "Estimates", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", + "estimate": "Estimate | Estimates", + "estimates_list": "Estimates List", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "customer": "CUSTOMER", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Delno plačano", + "total": "Skupaj", + "discount": "Popust", + "sub_total": "Vse skupaj", + "estimate_number": "Ocenjena vrednost", + "ref_number": "Referenčna številka", + "contact": "Kontakt", + "add_item": "Dodaj nov element", + "date": "Datum", + "due_date": "Datum zapadlosti", + "expiry_date": "Datum poteka", + "status": "Stanje", + "add_tax": "Dodaj davek", + "amount": "Količina", + "action": "Dejanje", + "notes": "Zapiski", + "tax": "Davek", + "estimate_template": "Predloga", + "convert_to_invoice": "Pretvori v račun", + "mark_as_sent": "Označi kot poslano", + "send_estimate": "Pošlji oceno", + "resend_estimate": "Ponovno pošlji oceno", + "record_payment": "Zapisno plačilo", + "add_estimate": "Dodaj oceno", + "save_estimate": "Shrani oceno", + "confirm_conversion": "Ta ocena bo uporabljena za ustvarjanje novega računa.", + "conversion_message": "Račun uspešno ustvarjen", + "confirm_send_estimate": "Ta ocena bo poslana po e-pošti stranki", + "confirm_mark_as_sent": "Ta ocena bo označena kot poslana", + "confirm_mark_as_accepted": "Ta ocena bo označena kot sprejeta", + "confirm_mark_as_rejected": "Ta ocena bo označena kot zavrnjena", + "no_matching_estimates": "Ni ustreznih ocen!", + "mark_as_sent_successfully": "Ocena je označena kot uspešno poslana", + "send_estimate_successfully": "Ocena uspešno poslana", + "errors": { + "required": "Polje je obvezno" + }, + "accepted": "Sprejeto", + "rejected": "Zavrnjen", + "expired": "Expired", + "sent": "Poslano", + "draft": "Osnutek", + "viewed": "Viewed", + "declined": "Zavrnjeno", + "new_estimate": "Nova ocena", + "add_new_estimate": "Dodaj novo oceno", + "update_Estimate": "Posodobi oceno", + "edit_estimate": "Uredi oceno", + "items": "izdelki", + "Estimate": "Ocena | Ocene", + "add_new_tax": "Dodaj nov davek", + "no_estimates": "Ocene še ni!", + "list_of_estimates": "Ta razdelek bo vseboval seznam ocen.", + "mark_as_rejected": "Označi kot zavrnjeno", + "mark_as_accepted": "Mark as accepted", + "marked_as_accepted_message": "Estimate marked as accepted", + "marked_as_rejected_message": "Estimate marked as rejected", + "confirm_delete": "You will not be able to recover this Estimate | You will not be able to recover these Estimates", + "created_message": "Estimate created successfully", + "updated_message": "Estimate updated successfully", + "deleted_message": "Estimate deleted successfully | Estimates deleted successfully", + "something_went_wrong": "something went wrong", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + } + }, + "invoices": { + "title": "Invoices", + "download": "Download", + "pay_invoice": "Pay Invoice", + "invoices_list": "Invoices List", + "invoice_information": "Invoice Information", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Ogledno", + "overdue": "Overdue", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Invoice | Invoices", + "invoice_number": "Invoice Number", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "due_date": "Due Date", + "status": "Status", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "Poglej", + "send_invoice": "Pošlji račun", + "resend_invoice": "Resend Invoice", + "invoice_template": "Invoice Template", + "conversion_message": "Invoice cloned successful", + "template": "Select Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This invoice will be marked as sent", + "confirm_mark_as_accepted": "This invoice will be marked as Accepted", + "confirm_mark_as_rejected": "This invoice will be marked as Rejected", + "confirm_send": "This invoice will be sent via email to the customer", + "invoice_date": "Invoice Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Invoice", + "new_invoice": "New Invoice", + "save_invoice": "Save Invoice", + "update_invoice": "Update Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching invoices!", + "mark_as_sent_successfully": "Invoice marked as sent successfully", + "invoice_sent_successfully": "Invoice sent successfully", + "cloned_successfully": "Invoice cloned successfully", + "clone_invoice": "Clone Invoice", + "confirm_clone": "This invoice will be cloned into a new Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "payment_attached_message": "One of the selected invoices already have a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal", + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Invoice created successfully", + "updated_message": "Invoice updated successfully", + "deleted_message": "Invoice deleted successfully | Invoices deleted successfully", + "marked_as_sent_message": "Invoice marked as sent successfully", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Invoice amount cannot be less than total paid amount for this Invoice. Please update the invoice or delete the associated payments to continue." + }, + "recurring_invoices": { + "title": "Recurring Invoices", + "invoices_list": "Recurring Invoices List", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Ogledno", + "overdue": "Overdue", + "active": "Active", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "Poglej", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, + "payments": { + "title": "Payments", + "payments_list": "Payments List", + "record_payment": "Record Payment", + "customer": "Customer", + "date": "Date", + "amount": "Amount", + "action": "Action", + "payment_number": "Payment Number", + "payment_mode": "Payment Mode", + "invoice": "Invoice", + "note": "Note", + "add_payment": "Add Payment", + "new_payment": "New Payment", + "edit_payment": "Edit Payment", + "view_payment": "Prikaži plačilo", + "add_new_payment": "Add New Payment", + "send_payment_receipt": "Send Payment Receipt", + "send_payment": "Send Payment", + "save_payment": "Save Payment", + "update_payment": "Update Payment", + "payment": "Payment | Payments", + "no_payments": "No payments yet!", + "not_selected": "Not selected", + "no_invoice": "No invoice", + "no_matching_payments": "There are no matching payments!", + "list_of_payments": "This section will contain the list of payments.", + "select_payment_mode": "Select payment mode", + "confirm_mark_as_sent": "This estimate will be marked as sent", + "confirm_send_payment": "This payment will be sent via email to the customer", + "send_payment_successfully": "Payment sent successfully", + "something_went_wrong": "something went wrong", + "confirm_delete": "You will not be able to recover this Payment | You will not be able to recover these Payments", + "created_message": "Payment created successfully", + "updated_message": "Payment updated successfully", + "deleted_message": "Payment deleted successfully | Payments deleted successfully", + "invalid_amount_message": "Payment amount is invalid" + }, + "expenses": { + "title": "Expenses", + "expenses_list": "Expenses List", + "select_a_customer": "Select a customer", + "expense_title": "Title", + "customer": "Customer", + "currency": "Currency", + "contact": "Contact", + "category": "Category", + "from_date": "From Date", + "to_date": "To Date", + "expense_date": "Date", + "description": "Description", + "receipt": "Receipt", + "amount": "Amount", + "action": "Action", + "not_selected": "Not selected", + "note": "Note", + "category_id": "Category Id", + "date": "Date", + "add_expense": "Add Expense", + "add_new_expense": "Add New Expense", + "save_expense": "Save Expense", + "update_expense": "Update Expense", + "download_receipt": "Download Receipt", + "edit_expense": "Edit Expense", + "new_expense": "New Expense", + "expense": "Expense | Expenses", + "no_expenses": "No expenses yet!", + "list_of_expenses": "This section will contain the list of expenses.", + "confirm_delete": "You will not be able to recover this Expense | You will not be able to recover these Expenses", + "created_message": "Expense created successfully", + "updated_message": "Expense updated successfully", + "deleted_message": "Expense deleted successfully | Expenses deleted successfully", + "categories": { + "categories_list": "Categories List", + "title": "Title", + "name": "Name", + "description": "Description", + "amount": "Amount", + "actions": "Actions", + "add_category": "Add Category", + "new_category": "New Category", + "category": "Category | Categories", + "select_a_category": "Select a category" + } + }, + "login": { + "email": "Email", + "password": "Password", + "forgot_password": "Forgot Password?", + "or_signIn_with": "or Sign in with", + "login": "Login", + "register": "Register", + "reset_password": "Reset Password", + "password_reset_successfully": "Password Reset Successfully", + "enter_email": "Enter email", + "enter_password": "Enter Password", + "retype_password": "Retype Password" + }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, + "users": { + "title": "Users", + "users_list": "Users List", + "name": "Name", + "description": "Description", + "added_on": "Added On", + "date_of_creation": "Date Of Creation", + "action": "Action", + "add_user": "Add User", + "save_user": "Save User", + "update_user": "Update User", + "user": "User | Users", + "add_new_user": "Add New User", + "new_user": "New User", + "edit_user": "Edit User", + "no_users": "No users yet!", + "list_of_users": "This section will contain the list of users.", + "email": "Email", + "phone": "Phone", + "password": "Password", + "user_attached_message": "Cannot delete an item which is already in use", + "confirm_delete": "You will not be able to recover this User | You will not be able to recover these Users", + "created_message": "User created successfully", + "updated_message": "User updated successfully", + "deleted_message": "User deleted successfully | Users deleted successfully", + "select_company_role": "Select Role for {company}", + "companies": "Companies" + }, + "reports": { + "title": "Report", + "from_date": "From Date", + "to_date": "To Date", + "status": "Status", + "paid": "Paid", + "unpaid": "Unpaid", + "download_pdf": "Download PDF", + "view_pdf": "Poglej PDF", + "update_report": "Update Report", + "report": "Report | Reports", + "profit_loss": { + "profit_loss": "Profit & Loss", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" + }, + "sales": { + "sales": "Sales", + "date_range": "Select Date Range", + "to_date": "To Date", + "from_date": "From Date", + "report_type": "Report Type" + }, + "taxes": { + "taxes": "Taxes", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" + }, + "errors": { + "required": "Field is required" + }, + "invoices": { + "invoice": "Invoice", + "invoice_date": "Invoice Date", + "due_date": "Due Date", + "amount": "Amount", + "contact_name": "Contact Name", + "status": "Status" + }, + "estimates": { + "estimate": "Estimate", + "estimate_date": "Estimate Date", + "due_date": "Due Date", + "estimate_number": "Estimate Number", + "ref_number": "Ref Number", + "amount": "Amount", + "contact_name": "Contact Name", + "status": "Status" + }, + "expenses": { + "expenses": "Expenses", + "category": "Category", + "date": "Date", + "amount": "Amount", + "to_date": "To Date", + "from_date": "From Date", + "date_range": "Select Date Range" + } + }, + "settings": { + "menu_title": { + "account_settings": "Account Settings", + "company_information": "Company Information", + "customization": "Customization", + "preferences": "Preferences", + "notifications": "Notifications", + "tax_types": "Tax Types", + "expense_category": "Expense Categories", + "update_app": "Update App", + "backup": "Backup", + "file_disk": "File Disk", + "custom_fields": "Custom Fields", + "payment_modes": "Payment Modes", + "notes": "Notes", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." + }, + "title": "Settings", + "setting": "Settings | Settings", + "general": "General", + "language": "Language", + "primary_currency": "Primary Currency", + "timezone": "Time Zone", + "date_format": "Date Format", + "currencies": { + "title": "Currencies", + "currency": "Currency | Currencies", + "currencies_list": "Currencies List", + "select_currency": "Select Currency", + "name": "Name", + "code": "Code", + "symbol": "Symbol", + "precision": "Precision", + "thousand_separator": "Thousand Separator", + "decimal_separator": "Decimal Separator", + "position": "Position", + "position_of_symbol": "Position Of Symbol", + "right": "Right", + "left": "Left", + "action": "Action", + "add_currency": "Add Currency" + }, + "mail": { + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Mail Password", + "username": "Mail Username", + "mail_config": "Mail Configuration", + "from_name": "From Mail Name", + "from_mail": "From Mail Address", + "encryption": "Mail Encryption", + "mail_config_desc": "Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc." + }, + "pdf": { + "title": "PDF Setting", + "footer_text": "Footer Text", + "pdf_layout": "PDF Layout" + }, + "company_info": { + "company_info": "Company info", + "company_name": "Company Name", + "company_logo": "Company Logo", + "section_description": "Information about your company that will be displayed on invoices, estimates and other documents created by Crater.", + "phone": "Phone", + "country": "Country", + "state": "State", + "city": "City", + "address": "Address", + "zip": "Zip", + "save": "Save", + "delete": "Delete", + "updated_message": "Company information updated successfully", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" + }, + "custom_fields": { + "title": "Custom Fields", + "section_description": "Customize your Invoices, Estimates & Payment Receipts with your own fields. Make sure to use the below added fields on the address formats on Customization settings page.", + "add_custom_field": "Add Custom Field", + "edit_custom_field": "Edit Custom Field", + "field_name": "Field Name", + "label": "Label", + "type": "Type", + "name": "Name", + "slug": "Slug", + "required": "Required", + "placeholder": "Placeholder", + "help_text": "Help Text", + "default_value": "Default Value", + "prefix": "Prefix", + "starting_number": "Starting Number", + "model": "Model", + "help_text_description": "Enter some text to help users understand the purpose of this custom field.", + "suffix": "Suffix", + "yes": "Yes", + "no": "No", + "order": "Order", + "custom_field_confirm_delete": "You will not be able to recover this Custom Field", + "already_in_use": "Custom Field is already in use", + "deleted_message": "Custom Field deleted successfully", + "options": "options", + "add_option": "Add Options", + "add_another_option": "Add another option", + "sort_in_alphabetical_order": "Sort in Alphabetical Order", + "add_options_in_bulk": "Add options in bulk", + "use_predefined_options": "Use Predefined Options", + "select_custom_date": "Select Custom Date", + "select_relative_date": "Select Relative Date", + "ticked_by_default": "Ticked by default", + "updated_message": "Custom Field updated successfully", + "added_message": "Custom Field added successfully", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." + }, + "customization": { + "customization": "customization", + "updated_message": "Company information updated successfully", + "save": "Save", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", + "invoices": { + "title": "Invoices", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Predogled številke računa", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", + "default_invoice_email_body": "Default Invoice Email Body", + "company_address_format": "Company Address Format", + "shipping_address_format": "Shipping Address Format", + "billing_address_format": "Billing Address Format", + "invoice_email_attachment": "Send invoices as attachments", + "invoice_email_attachment_setting_description": "Enable this if you want to send invoices as email attachment. Please note that 'View Invoice' button in emails will not be displayed anymore when enabled.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." + }, + "estimates": { + "title": "Estimates", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", + "default_estimate_email_body": "Default Estimate Email Body", + "company_address_format": "Company Address Format", + "shipping_address_format": "Shipping Address Format", + "billing_address_format": "Billing Address Format", + "estimate_email_attachment": "Send estimates as attachments", + "estimate_email_attachment_setting_description": "Enable this if you want to send the estimates as an email attachment. Please note that 'View Estimate' button in emails will not be displayed anymore when enabled.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" + }, + "payments": { + "title": "Payments", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", + "default_payment_email_body": "Default Payment Email Body", + "company_address_format": "Company Address Format", + "from_customer_address_format": "From Customer Address Format", + "payment_email_attachment": "Send payments as attachments", + "payment_email_attachment_setting_description": "Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.", + "payment_settings_updated": "Payment Settings updated successfully" + }, + "items": { + "title": "Items", + "units": "Units", + "add_item_unit": "Add Item Unit", + "edit_item_unit": "Edit Item Unit", + "unit_name": "Unit Name", + "item_unit_added": "Item Unit Added", + "item_unit_updated": "Item Unit Updated", + "item_unit_confirm_delete": "You will not be able to recover this Item unit", + "already_in_use": "Item Unit is already in use", + "deleted_message": "Item Unit deleted successfully" + }, + "notes": { + "title": "Notes", + "description": "Save time by creating notes and reusing them on your invoices, estimates & payments.", + "notes": "Notes", + "type": "Type", + "add_note": "Add Note", + "add_new_note": "Add New Note", + "name": "Name", + "edit_note": "Edit Note", + "note_added": "Note added successfully", + "note_updated": "Note Updated successfully", + "note_confirm_delete": "You will not be able to recover this Note", + "already_in_use": "Note is already in use", + "deleted_message": "Note deleted successfully" + } + }, + "account_settings": { + "profile_picture": "Profile Picture", + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password", + "account_settings": "Account Settings", + "save": "Save", + "section_description": "You can update your name, email & password using the form below.", + "updated_message": "Account Settings updated successfully" + }, + "user_profile": { + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password" + }, + "notification": { + "title": "Notifications", + "email": "Send Notifications to", + "description": "Which email notifications would you like to receive when something changes?", + "invoice_viewed": "Invoice viewed", + "invoice_viewed_desc": "When your customer views the invoice sent via crater dashboard.", + "estimate_viewed": "Estimate viewed", + "estimate_viewed_desc": "When your customer views the estimate sent via crater dashboard.", + "save": "Save", + "email_save_message": "Email saved successfully", + "please_enter_email": "Please Enter Email" + }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, + "tax_types": { + "title": "Tax Types", + "add_tax": "Add Tax", + "edit_tax": "Edit Tax", + "description": "You can add or Remove Taxes as you please. Crater supports Taxes on Individual Items as well as on the invoice.", + "add_new_tax": "Add New Tax", + "tax_settings": "Tax Settings", + "tax_per_item": "Tax Per Item", + "tax_name": "Tax Name", + "compound_tax": "Compound Tax", + "percent": "Percent", + "action": "Action", + "tax_setting_description": "Enable this if you want to add taxes to individual invoice items. By default, taxes are added directly to the invoice.", + "created_message": "Tax type created successfully", + "updated_message": "Tax type updated successfully", + "deleted_message": "Tax type deleted successfully", + "confirm_delete": "You will not be able to recover this Tax Type", + "already_in_use": "Tax is already in use" + }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, + "expense_category": { + "title": "Expense Categories", + "action": "Action", + "description": "Categories are required for adding expense entries. You can Add or Remove these categories according to your preference.", + "add_new_category": "Add New Category", + "add_category": "Add Category", + "edit_category": "Edit Category", + "category_name": "Category Name", + "category_description": "Description", + "created_message": "Expense Category created successfully", + "deleted_message": "Expense category deleted successfully", + "updated_message": "Expense category updated successfully", + "confirm_delete": "You will not be able to recover this Expense Category", + "already_in_use": "Category is already in use" + }, + "preferences": { + "currency": "Currency", + "default_language": "Default Language", + "time_zone": "Time Zone", + "fiscal_year": "Financial Year", + "date_format": "Date Format", + "discount_setting": "Discount Setting", + "discount_per_item": "Discount Per Item ", + "discount_setting_description": "Enable this if you want to add Discount to individual invoice items. By default, Discount is added directly to the invoice.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", + "save": "Save", + "preference": "Preference | Preferences", + "general_settings": "Default preferences for the system.", + "updated_message": "Preferences updated successfully", + "select_language": "Select Language", + "select_time_zone": "Select Time Zone", + "select_date_format": "Select Date Format", + "select_financial_year": "Select Financial Year", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" + }, + "update_app": { + "title": "Update App", + "description": "You can easily update Crater by checking for a new update by clicking the button below", + "check_update": "Check for updates", + "avail_update": "New Update available", + "next_version": "Next version", + "requirements": "Requirements", + "update": "Update Now", + "update_progress": "Update in progress...", + "progress_text": "It will just take a few minutes. Please do not refresh the screen or close the window before the update finishes", + "update_success": "App has been updated! Please wait while your browser window gets reloaded automatically.", + "latest_message": "No update available! You are on the latest version.", + "current_version": "Current Version", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "running_migrations": "Running Migrations", + "finishing_update": "Finishing Update", + "update_failed": "Update Failed", + "update_failed_text": "Sorry! Your update failed on : {step} step", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." + }, + "backup": { + "title": "Backup | Backups", + "description": "The backup is a zipfile that contains all files in the directories you specify along with a dump of your database", + "new_backup": "Add New Backup", + "create_backup": "Create Backup", + "select_backup_type": "Select Backup Type", + "backup_confirm_delete": "You will not be able to recover this Backup", + "path": "path", + "new_disk": "New Disk", + "created_at": "created at", + "size": "size", + "dropbox": "dropbox", + "local": "local", + "healthy": "healthy", + "amount_of_backups": "amount of backups", + "newest_backups": "newest backups", + "used_storage": "used storage", + "select_disk": "Select Disk", + "action": "Action", + "deleted_message": "Backup deleted successfully", + "created_message": "Backup created successfully", + "invalid_disk_credentials": "Invalid credential of selected disk" + }, + "disk": { + "title": "File Disk | File Disks", + "description": "By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.", + "created_at": "created at", + "dropbox": "dropbox", + "name": "Name", + "driver": "Driver", + "disk_type": "Type", + "disk_name": "Disk Name", + "new_disk": "Add New Disk", + "filesystem_driver": "Filesystem Driver", + "local_driver": "local Driver", + "local_root": "local Root", + "public_driver": "Public Driver", + "public_root": "Public Root", + "public_url": "Public URL", + "public_visibility": "Public Visibility", + "media_driver": "Media Driver", + "media_root": "Media Root", + "aws_driver": "AWS Driver", + "aws_key": "AWS Key", + "aws_secret": "AWS Secret", + "aws_region": "AWS Region", + "aws_bucket": "AWS Bucket", + "aws_root": "AWS Root", + "do_spaces_type": "Do Spaces type", + "do_spaces_key": "Do Spaces key", + "do_spaces_secret": "Do Spaces Secret", + "do_spaces_region": "Do Spaces Region", + "do_spaces_bucket": "Do Spaces Bucket", + "do_spaces_endpoint": "Do Spaces Endpoint", + "do_spaces_root": "Do Spaces Root", + "dropbox_type": "Dropbox Type", + "dropbox_token": "Dropbox Token", + "dropbox_key": "Dropbox Key", + "dropbox_secret": "Dropbox Secret", + "dropbox_app": "Dropbox App", + "dropbox_root": "Dropbox Root", + "default_driver": "Default Driver", + "is_default": "IS DEFAULT", + "set_default_disk": "Set Default Disk", + "set_default_disk_confirm": "This disk will be set as default and all the new PDFs will be saved on this disk", + "success_set_default_disk": "Disk set as default successfully", + "save_pdf_to_disk": "Save PDFs to Disk", + "disk_setting_description": " Enable this, if you wish to save a copy of each Invoice, Estimate & Payment Receipt PDF on your default disk automatically. Turning this option will decrease the load-time when viewing the PDFs.", + "select_disk": "Select Disk", + "disk_settings": "Disk Settings", + "confirm_delete": "Your existing files & folders in the specified disk will not be affected but your disk configuration will be deleted from Crater", + "action": "Action", + "edit_file_disk": "Edit File Disk", + "success_create": "Disk added successfully", + "success_update": "Disk updated successfully", + "error": "Disk addition failed", + "deleted_message": "File Disk deleted successfully", + "disk_variables_save_successfully": "Disk Configured Successfully", + "disk_variables_save_error": "Disk configuration failed.", + "invalid_disk_credentials": "Invalid credential of selected disk" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." + } + }, + "wizard": { + "account_info": "Account Information", + "account_info_desc": "Below details will be used to create the main Administrator account. Also you can change the details anytime after logging in.", + "name": "Name", + "email": "Email", + "password": "Password", + "confirm_password": "Confirm Password", + "save_cont": "Save & Continue", + "company_info": "Company Information", + "company_info_desc": "This information will be displayed on invoices. Note that you can edit this later on settings page.", + "company_name": "Company Name", + "company_logo": "Company Logo", + "logo_preview": "Logo Preview", + "preferences": "Company Preferences", + "preferences_desc": "Specify the default preferences for this company.", + "currency_set_alert": "The company's currency cannot be changed later.", + "country": "Country", + "state": "State", + "city": "City", + "address": "Address", + "street": "Street1 | Street2", + "phone": "Phone", + "zip_code": "Zip Code", + "go_back": "Go Back", + "currency": "Currency", + "language": "Language", + "time_zone": "Time Zone", + "fiscal_year": "Financial Year", + "date_format": "Date Format", + "from_address": "From Address", + "username": "Username", + "next": "Next", + "continue": "Continue", + "skip": "Skip", + "database": { + "database": "Site URL & Database", + "connection": "Database Connection", + "host": "Database Host", + "port": "Database Port", + "password": "Database Password", + "app_url": "App URL", + "app_domain": "App Domain", + "username": "Database Username", + "db_name": "Database Name", + "db_path": "Database Path", + "desc": "Create a database on your server and set the credentials using the form below." + }, + "permissions": { + "permissions": "Permissions", + "permission_confirm_title": "Are you sure you want to continue?", + "permission_confirm_desc": "Folder permission check failed", + "permission_desc": "Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions." + }, + "verify_domain": { + "title": "Domain Verification", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Verify Now", + "success": "Domain Verify Successfully.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verify And Continue" + }, + "mail": { + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Secret", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Mail Password", + "username": "Mail Username", + "mail_config": "Mail Configuration", + "from_name": "From Mail Name", + "from_mail": "From Mail Address", + "encryption": "Mail Encryption", + "mail_config_desc": "Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc." + }, + "req": { + "system_req": "System Requirements", + "php_req_version": "Php (version {version} required)", + "check_req": "Check Requirements", + "system_req_desc": "Crater has a few server requirements. Make sure that your server has the required php version and all the extensions mentioned below." + }, + "errors": { + "migrate_failed": "Migrate Failed", + "database_variables_save_error": "Cannot write configuration to .env file. Please check its file permissions", + "mail_variables_save_error": "Email configuration failed.", + "connection_failed": "Database connection failed", + "database_should_be_empty": "Database should be empty" + }, + "success": { + "mail_variables_save_successfully": "Email configured successfully", + "database_variables_save_successfully": "Database configured successfully." + } + }, + "validation": { + "invalid_phone": "Invalid Phone Number", + "invalid_url": "Invalid url (ex: http://www.craterapp.com)", + "invalid_domain_url": "Invalid url (ex: craterapp.com)", + "required": "Field is required", + "email_incorrect": "Incorrect Email.", + "email_already_taken": "The email has already been taken.", + "email_does_not_exist": "User with given email doesn't exist", + "item_unit_already_taken": "This item unit name has already been taken", + "payment_mode_already_taken": "This payment mode name has already been taken", + "send_reset_link": "Send Reset Link", + "not_yet": "Not yet? Send it again", + "password_min_length": "Password must contain {count} characters", + "name_min_length": "Name must have at least {count} letters.", + "prefix_min_length": "Prefix must have at least {count} letters.", + "enter_valid_tax_rate": "Enter valid tax rate", + "numbers_only": "Numbers Only.", + "characters_only": "Characters Only.", + "password_incorrect": "Passwords must be identical", + "password_length": "Password must be {count} character long.", + "qty_must_greater_than_zero": "Quantity must be greater than zero.", + "price_greater_than_zero": "Price must be greater than zero.", + "payment_greater_than_zero": "Payment must be greater than zero.", + "payment_greater_than_due_amount": "Entered Payment is more than due amount of this invoice.", + "quantity_maxlength": "Quantity should not be greater than 20 digits.", + "price_maxlength": "Price should not be greater than 20 digits.", + "price_minvalue": "Price should be greater than 0.", + "amount_maxlength": "Amount should not be greater than 20 digits.", + "amount_minvalue": "Amount should be greater than 0.", + "discount_maxlength": "Discount should not be greater than max discount", + "description_maxlength": "Description should not be greater than 255 characters.", + "subject_maxlength": "Subject should not be greater than 100 characters.", + "message_maxlength": "Message should not be greater than 255 characters.", + "maximum_options_error": "Maximum of {max} options selected. First remove a selected option to select another.", + "notes_maxlength": "Notes should not be greater than 65,000 characters.", + "address_maxlength": "Address should not be greater than 255 characters.", + "ref_number_maxlength": "Ref Number should not be greater than 255 characters.", + "prefix_maxlength": "Prefix should not be greater than 5 characters.", + "something_went_wrong": "something went wrong", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" + }, + "pdf_estimate_label": "Estimate", + "pdf_estimate_number": "Estimate Number", + "pdf_estimate_date": "Estimate Date", + "pdf_estimate_expire_date": "Expiry date", + "pdf_invoice_label": "Invoice", + "pdf_invoice_number": "Invoice Number", + "pdf_invoice_date": "Invoice Date", + "pdf_invoice_due_date": "Due date", + "pdf_notes": "Notes", + "pdf_items_label": "Items", + "pdf_quantity_label": "Quantity", + "pdf_price_label": "Price", + "pdf_discount_label": "Discount", + "pdf_amount_label": "Amount", + "pdf_subtotal": "Subtotal", + "pdf_total": "Total", + "pdf_payment_label": "Payment", + "pdf_payment_receipt_label": "PAYMENT RECEIPT", + "pdf_payment_date": "Payment Date", + "pdf_payment_number": "Payment Number", + "pdf_payment_mode": "Payment Mode", + "pdf_payment_amount_received_label": "Amount Received", + "pdf_expense_report_label": "EXPENSES REPORT", + "pdf_total_expenses_label": "TOTAL EXPENSE", + "pdf_profit_loss_label": "PROFIT & LOSS REPORT", + "pdf_sales_customers_label": "Sales Customer Report", + "pdf_sales_items_label": "Sales Item Report", + "pdf_tax_summery_label": "Tax Summary Report", + "pdf_income_label": "INCOME", + "pdf_net_profit_label": "NET PROFIT", + "pdf_customer_sales_report": "Sales Report: By Customer", + "pdf_total_sales_label": "TOTAL SALES", + "pdf_item_sales_label": "Sales Report: By Item", + "pdf_tax_report_label": "TAX REPORT", + "pdf_total_tax_label": "TOTAL TAX", + "pdf_tax_types_label": "Tax Types", + "pdf_expenses_label": "Expenses", + "pdf_bill_to": "Bill to,", + "pdf_ship_to": "Ship to,", + "pdf_received_from": "Received from:", + "pdf_tax_label": "Tax" +} diff --git a/resources/scripts/locales/sr.json b/resources/scripts/locales/sr.json index 9aa7dd7a1..c6f19fa19 100644 --- a/resources/scripts/locales/sr.json +++ b/resources/scripts/locales/sr.json @@ -4,13 +4,15 @@ "customers": "Klijenti", "items": "Stavke", "invoices": "Fakture", + "recurring-invoices": "Recurring Invoices", "expenses": "Rashodi", "estimates": "Profakture", "payments": "Uplate", "reports": "Izveštaji", "settings": "Podešavanja", "logout": "Odjavi se", - "users": "Korisnici" + "users": "Korisnici", + "modules": "Modules" }, "general": { "add_company": "Dodaj kompaniju", @@ -27,6 +29,9 @@ "to_date": "Do Datuma", "from": "Pošiljalac", "to": "Primalac", + "ok": "Ok", + "yes": "Yes", + "no": "No", "sort_by": "Rasporedi Po", "ascending": "Rastuće", "descending": "Opadajuće", @@ -34,6 +39,7 @@ "body": "Telo", "message": "Poruka", "send": "Pošalji", + "preview": "Preview", "go_back": "Idi nazad", "back_to_login": "Nazad na prijavu?", "home": "Početna", @@ -59,12 +65,11 @@ "sent": "Poslato", "all": "Sve", "select_all": "Izaberi sve", + "select_template": "Select Template", "choose_file": "Klikni ovde da izabereš fajl", "choose_template": "Izaberi šablon", "choose": "Izaberi", "remove": "Ukloni", - "powered_by": "Pokreće", - "bytefury": "Bytefury", "select_a_status": "Izaberi status", "select_a_tax": "Izaberi porez", "search": "Pretraga", @@ -87,7 +92,14 @@ "choose_note": "Odaberi napomenu", "no_note_found": "Ne postoje sačuvane napomene", "insert_note": "Unesi belešku", - "copied_pdf_url_clipboard": "Link do PDF fajla kopiran!" + "copied_pdf_url_clipboard": "Link do PDF fajla kopiran!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Docs", + "do_you_wish_to_continue": "Do you wish to continue?", + "note": "Note", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { "select_year": "Odaberi godinu", @@ -95,7 +107,8 @@ "due_amount": "Dužan iznos", "customers": "Klijenti", "invoices": "Fakture", - "estimates": "Profakture" + "estimates": "Profakture", + "payments": "Payments" }, "chart_info": { "total_sales": "Prodaja", @@ -136,8 +149,28 @@ "users": "Korisnici", "no_results_found": "Nema rezultata" }, + "company_switcher": { + "label": "SWITCH COMPANY", + "no_results_found": "No Results Found", + "add_new_company": "Add new company", + "new_company": "New company", + "created_message": "Company created successfully" + }, + "dateRange": { + "today": "Today", + "this_week": "This Week", + "this_month": "This Month", + "this_quarter": "This Quarter", + "this_year": "This Year", + "previous_week": "Previous Week", + "previous_month": "Previous Month", + "previous_quarter": "Previous Quarter", + "previous_year": "Previous Year", + "custom": "Custom" + }, "customers": { "title": "Klijenti", + "prefix": "Prefix", "add_customer": "Dodaj Klijenta", "contacts_list": "Lista klijenata", "name": "Naziv", @@ -147,11 +180,14 @@ "primary_contact_name": "Primarna kontakt osoba", "contact_name": "Naziv kontakt osobe", "amount_due": "Iznos dospeća", - "email": "Email", + "email": "E-mail", "address": "Adresa", "phone": "Telefon", "website": "Veb stranica", "overview": "Pregled", + "invoice_prefix": "Invoice Prefix", + "estimate_prefix": "Estimate Prefix", + "payment_prefix": "Payment Prefix", "enable_portal": "Uključi portal", "country": "Država", "state": "Savezna država", @@ -160,6 +196,7 @@ "added_on": "Datum dodavanja", "action": "Akcija", "password": "Šifra", + "confirm_password": "Confirm Password", "street_number": "Broj ulice", "primary_currency": "Primarna valuta", "description": "Opis", @@ -170,13 +207,17 @@ "new_customer": "Nov klijent", "edit_customer": "Izmeni klijenta", "basic_info": "Osnovne informacije", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", "billing_address": "Adresa za naplatu", "shipping_address": "Adresa za dostavu", "copy_billing_address": "Kopiraj iz adrese za naplatu", "no_customers": "Još uvek nema klijenata!", "no_customers_found": "Klijenti nisu pronađeni!", - "no_contact": "No contact", - "no_contact_name": "No contact name", + "no_contact": "Nema kontakta", + "no_contact_name": "Nema naziva kontakta", "list_of_customers": "Ova sekcija će da sadrži spisak klijenata.", "primary_display_name": "Primarni naziv koji se prikazuje", "select_currency": "Odaberi valutu", @@ -189,7 +230,9 @@ "confirm_delete": "Nećeš moći da povratiš ovog klijenta i sve njegove Fakture, Profakture i Uplate. | Nećeš moći da povratiš ove klijente i njihove Fakture, Profakture i Uplate.", "created_message": "Klijent uspešno kreiran", "updated_message": "Klijent uspešno ažuriran", - "deleted_message": "Klijent uspešno obrisan | Klijenti uspešno obrisani" + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Klijent uspešno obrisan | Klijenti uspešno obrisani", + "edit_currency_not_allowed": "Cannot change currency once transactions created." }, "items": { "title": "Stavke", @@ -200,7 +243,7 @@ "added_on": "Datum dodavanja", "price": "Cena", "date_of_creation": "Datum kreiranja", - "not_selected": "No item selected", + "not_selected": "Nije odabrana niti jedna stavka", "action": "Akcije", "add_item": "Dodaj Stavku", "save_item": "Sačuvaj Stavku", @@ -221,6 +264,8 @@ }, "estimates": { "title": "Profakture", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", "estimate": "Profaktura | Profakture", "estimates_list": "Lista profaktura", "days": "{days} Dan", @@ -271,9 +316,11 @@ "required": "Polje je obavezno" }, "accepted": "Prihvaćeno", - "rejected": "Rejected", + "rejected": "Odbijeno", + "expired": "Expired", "sent": "Poslato", "draft": "U izradi", + "viewed": "Viewed", "declined": "Odbijeno", "new_estimate": "Nova Profaktura", "add_new_estimate": "Dodaj novu Profakturu", @@ -310,16 +357,19 @@ }, "invoices": { "title": "Fakture", + "download": "Download", + "pay_invoice": "Pay Invoice", "invoices_list": "List Faktura", + "invoice_information": "Invoice Information", "days": "{days} dan", "months": "{months} Mesec", "years": "{years} Godina", "all": "Sve", "paid": "Plaćeno", "unpaid": "Neplaćeno", - "viewed": "Viewed", - "overdue": "Overdue", - "completed": "Completed", + "viewed": "Pogledano", + "overdue": "Nepodmireno", + "completed": "Završeno", "customer": "KLIJENT", "paid_status": "STATUS UPLATE", "ref_no": "POZIV NA BROJ", @@ -345,10 +395,13 @@ "send_invoice": "Pošalji Fakturu", "resend_invoice": "Ponovo pošalji Fakturu", "invoice_template": "Šablon Fakture", + "conversion_message": "Invoice cloned successful", "template": "Šablon", "mark_as_sent": "Označi kao Poslato", "confirm_send_invoice": "Ova Faktura će biti poslata putem Email-a klijentu", "invoice_mark_as_sent": "Ova Faktura će biti označena kao poslata", + "confirm_mark_as_accepted": "This invoice will be marked as Accepted", + "confirm_mark_as_rejected": "This invoice will be marked as Rejected", "confirm_send": "Ova Faktura će biti poslata putem Email-a klijentu", "invoice_date": "Datum Fakture", "record_payment": "Unesi Uplatu", @@ -360,11 +413,13 @@ "update_invoice": "Ažuriraj Fakturu", "add_new_tax": "Dodaj nov Porez", "no_invoices": "Još uvek nema Faktura!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", "list_of_invoices": "Ova sekcija će da sadrži spisak Faktura.", "select_invoice": "Odaberi Fakturu", "no_matching_invoices": "Ne postoje Fakture koje odgovaraju pretrazi!", "mark_as_sent_successfully": "Faktura uspešno označena kao Poslata", - "invoice_sent_successfully": "Faktura uspešno poslata", + "invoice_sent_successfully": "Invoice sent successfully", "cloned_successfully": "Uspešno napravljen duplikat Fakture", "clone_invoice": "Napravi duplikat", "confirm_clone": "Ova Faktura će biti duplikat nove Fakture", @@ -382,6 +437,7 @@ "select_an_item": "Unesi tekst ili klikni da izabereš", "type_item_description": "Unesi opis Stavke (nije obavezno)" }, + "payment_attached_message": "Jedna od odabranih faktura već ima uplatu povezanu sa njom. Obrišite prvo povezane uplate da bi nastavili sa brisanjem", "confirm_delete": "Nećeš moći da povratiš ovu Fakturu | Nećeš moći da povratiš ove Fakture", "created_message": "Faktura uspešno kreirana", "updated_message": "Faktura uspešno ažurirana", @@ -390,6 +446,115 @@ "something_went_wrong": "nešto je krenulo naopako", "invalid_due_amount_message": "Ukupan iznos za plaćanje u fakturi ne može biti manji od iznosa uplate za ovu fakturu. Molim Vas ažurirajte fakturu ili obrišite uplate koje su povezane sa ovom fakturom da bi nastavili." }, + "recurring_invoices": { + "title": "Recurring Invoices", + "invoices_list": "Recurring Invoices List", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Viewed", + "overdue": "Overdue", + "active": "Active", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, "payments": { "title": "Uplate", "payments_list": "Lista uplata", @@ -413,8 +578,8 @@ "update_payment": "Ažuriraj Uplatu", "payment": "Uplata | Uplate", "no_payments": "Još uvek nema uplata!", - "not_selected": "Not selected", - "no_invoice": "No invoice", + "not_selected": "Nema odabranih", + "no_invoice": "Nema računa", "no_matching_payments": "Ne postoje uplate koje odgovaraju pretrazi!", "list_of_payments": "Ova sekcija će da sadrži listu uplata.", "select_payment_mode": "Odaberi način plaćanja", @@ -434,6 +599,7 @@ "select_a_customer": "Odaberi klijenta", "expense_title": "Naslov", "customer": "Klijent", + "currency": "Currency", "contact": "Kontakt", "category": "Kategorija", "from_date": "Datum od", @@ -443,7 +609,7 @@ "receipt": "Račun", "amount": "Iznos", "action": "Akcija", - "not_selected": "Not selected", + "not_selected": "Nije odabrano", "note": "Napomena", "category_id": "ID kategorije", "date": "Datum", @@ -475,7 +641,7 @@ } }, "login": { - "email": "Email", + "email": "E-mail", "password": "Šifra", "forgot_password": "Zaboravili ste šifru?", "or_signIn_with": "ili se prijavite sa", @@ -487,6 +653,51 @@ "enter_password": "Unesi šifru", "retype_password": "Ponovo unesi šifru" }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, "users": { "title": "Korisnici", "users_list": "Lista korisnika", @@ -504,14 +715,16 @@ "edit_user": "Izmeni Korisnika", "no_users": "Još uvek nema korisnika!", "list_of_users": "Ova sekcija će da sadrži listu korisnika.", - "email": "Email", + "email": "E-mail", "phone": "Broj telefona", "password": "Šifra", "user_attached_message": "Ne možete obrisati stavku koja je već u upotrebi", "confirm_delete": "Nećeš moći da povratiš ovog Korisnika | Nećeš moći da povratiš ove Korisnike", "created_message": "Korisnik uspešno napravljen", "updated_message": "Korisnik uspešno ažuriran", - "deleted_message": "Korisnik uspešno obrisan | Korisnici uspešno obrisani" + "deleted_message": "Korisnik uspešno obrisan | Korisnici uspešno obrisani", + "select_company_role": "Select Role for {company}", + "companies": "Companies" }, "reports": { "title": "Izveštaj", @@ -588,7 +801,12 @@ "file_disk": "File Disk", "custom_fields": "Prilagođena polja", "payment_modes": "Način plaćanja", - "notes": "Napomene" + "notes": "Napomene", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." }, "title": "Podešavanja", "setting": "Podešavanje | Podešavanja", @@ -618,10 +836,10 @@ "mail": { "host": "Mail Host", "port": "Mail Port", - "driver": "Mail Driver", + "driver": "Mail drajver", "secret": "Šifra", "mailgun_secret": "Mailgun Šifra", - "mailgun_domain": "Domain", + "mailgun_domain": "Domen", "mailgun_endpoint": "Mailgun Endpoint", "ses_secret": "SES Šifra", "ses_key": "SES Ključ", @@ -650,7 +868,13 @@ "address": "Adresa", "zip": "Poštanski broj", "save": "Sačuvaj", - "updated_message": "Podaci o firmi uspešno sačuvani" + "delete": "Delete", + "updated_message": "Podaci o firmi uspešno sačuvani", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" }, "custom_fields": { "title": "Prilagođena polja", @@ -661,6 +885,7 @@ "label": "Oznaka", "type": "Tip", "name": "Naziv", + "slug": "Slug", "required": "Obavezno", "placeholder": "Opis polja (Placeholder)", "help_text": "Pomoćni tekst", @@ -686,85 +911,104 @@ "select_relative_date": "Odaberi relativan datum", "ticked_by_default": "Podrazumevano odabrano", "updated_message": "Prilagođeno polje uspešno ažurirano", - "added_message": "Prilagođeno polje uspešno dodato" + "added_message": "Prilagođeno polje uspešno dodato", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." }, "customization": { "customization": "prilagođavanje", - "save": "Sačuvaj", - "addresses": { - "title": "Adrese", - "section_description": "Možete podesiti format adrese klijenta za naplatu i adrese klijenta za dostavu (Prikazano samo u PDF-u)", - "customer_billing_address": "Adresa za naplatu klijentu", - "customer_shipping_address": "Adresa za dostavu klijentu", - "company_address": "Adresa Firme", - "insert_fields": "Dodaj Polja", - "contact": "Kontakt", - "address": "Adresa", - "display_name": "Naziv koji se prikazuje", - "primary_contact_name": "Primarna kontakt osoba", - "email": "Email", - "website": "Veb stranica", - "name": "Naziv", - "country": "Država", - "state": "Savezna Država", - "city": "Grad", - "company_name": "Naziv Firme", - "address_street_1": "Adresa 1", - "address_street_2": "Adresa 2", - "phone": "Telefon", - "zip_code": "Poštanski broj", - "address_setting_updated": "Podešavanje adrese uspešno ažurirano" - }, "updated_message": "Podaci o firmi su uspešno ažurirani", + "save": "Sačuvaj", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", "invoices": { "title": "Fakture", - "notes": "Napomene", - "invoice_prefix": "Prefiks faktura", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", "default_invoice_email_body": "Podrazumevan sadržaj email-a za Fakture", - "invoice_settings": "Podešavanje za fakture", - "autogenerate_invoice_number": "Automatski-generiši broj fakture", - "autogenerate_invoice_number_desc": "Onemogući ovo, Ako Vi ne želite da automatski-generišete broj fakture kada pravite novu fakturu.", - "enter_invoice_prefix": "Unesite prefiks fakture", - "terms_and_conditions": "Uslovi Korišćenja", "company_address_format": "Format adrese firme", "shipping_address_format": "Format adrese za dostavu firme", "billing_address_format": "Format adrese za naplatu firme", - "invoice_settings_updated": "Podešavanje za fakture je uspešno sačuvano" + "invoice_email_attachment": "Pošalji račun kao prilog", + "invoice_email_attachment_setting_description": "Omogućite ovo ako želite da šaljete fakture kao prilog e-pošte. Imajte na umu da dugme 'Prikaži fakturu' u e-porukama više neće biti prikazano kada je omogućeno.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." }, "estimates": { "title": "Profakture", - "estimate_prefix": "Prefiks profaktura", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", "default_estimate_email_body": "Podrazumevan sadržaj email-a za Profakture", - "estimate_settings": "Podešavanje za profakture", - "autogenerate_estimate_number": "Automatski-generiši broj profakture", - "estimate_setting_description": "Onemogući ovo, Ako Vi ne želite da automatski-generišete broj profakture kada pravite novu profakturu.", - "enter_estimate_prefix": "Unesite prefiks profakture", - "estimate_setting_updated": "Podešavanje za profakture je uspešno sačuvano", "company_address_format": "Format adrese firme", + "shipping_address_format": "Format adrese za dostavu firme", "billing_address_format": "Format adrese za naplatu firme", - "shipping_address_format": "Format adrese za dostavu firme" + "estimate_email_attachment": "Pošaljite procjene kao priloge", + "estimate_email_attachment_setting_description": "Omogućite ovo ako želite da pošaljete procjene kao prilog e-pošte. Imajte na umu da dugme 'Prikaži procjenu' u e-porukama više neće biti prikazano kada je omogućeno.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" }, "payments": { "title": "Uplate", - "description": "Način plaćanja", - "payment_prefix": "Prefiks uplata", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", "default_payment_email_body": "Podrazumevan sadržaj email-a za potvrdu o plaćanju (račun)", - "payment_settings": "Podešavanje za plaćanja", - "autogenerate_payment_number": "Automatski-generiši broj uplate", - "payment_setting_description": "Onemogući ovo, Ako ne želite da automatski-generišete broj uplate kada pravite novu uplatu.", - "enter_payment_prefix": "Unesite prefiks uplate", - "payment_setting_updated": "Podešavanje za plaćanja je uspešno sačuvano", - "payment_modes": "Način Plaćanja", - "add_payment_mode": "Dodaj način plaćanja", - "edit_payment_mode": "Izmeni način plaćanja", - "mode_name": "Način plaćanja", - "payment_mode_added": "Način plaćanja dodat", - "payment_mode_updated": "Način plaćanja ažuriran", - "payment_mode_confirm_delete": "Nećeš moći da povratiš ovaj Način Plaćanja", - "already_in_use": "Način plaćanja se već koristi", - "deleted_message": "Način plaćanja uspešno obrisan", "company_address_format": "Format adrese firme", - "from_customer_address_format": "Format adrese klijenta" + "from_customer_address_format": "Format adrese klijenta", + "payment_email_attachment": "Pošaljite uplate kao priloge", + "payment_email_attachment_setting_description": "Enable this if you want to send the payment receipts as an email attachment. Please note that 'View Payment' button in emails will not be displayed anymore when enabled.", + "payment_settings_updated": "Payment Settings updated successfully" }, "items": { "title": "Stavke", @@ -823,6 +1067,57 @@ "email_save_message": "Email uspešno sačuvan", "please_enter_email": "Molim Vas unesite E-mail" }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, "tax_types": { "title": "Tipovi Poreza", "add_tax": "Dodaj Porez", @@ -842,6 +1137,18 @@ "confirm_delete": "Nećete moći da povratite ovaj Tip Poreza", "already_in_use": "Porez se već koristi" }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, "expense_category": { "title": "Kategorija Rashoda", "action": "Akcija", @@ -866,6 +1173,8 @@ "discount_setting": "Podešavanja za popuste", "discount_per_item": "Popust po stavci", "discount_setting_description": "Izaberite ovo ako želite da dodajete Popust na individualne stavke. Podrazumevano ponašanje je da je Popust dodat direktno na fakturu.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", "save": "Sačuvaj", "preference": "Preferencija | Preferencije", "general_settings": "Podrazumevane preferencije za sistem", @@ -873,7 +1182,14 @@ "select_language": "Izaberi Jezik", "select_time_zone": "Izaberi Vremensku Zonu", "select_date_format": "Izaberi Format Datuma", - "select_financial_year": "Izaberi Finansijsku Godinu" + "select_financial_year": "Izaberi Finansijsku Godinu", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" }, "update_app": { "title": "Ažuriraj aplikaciju", @@ -895,7 +1211,8 @@ "running_migrations": "Migracije u toku", "finishing_update": "Završavanje ažuriranja", "update_failed": "Neuspešno ažuriranje", - "update_failed_text": "Žao mi je! Tvoje ažuriranje nije uspelo na koraku broj: {step} korak" + "update_failed_text": "Žao mi je! Tvoje ažuriranje nije uspelo na koraku broj: {step} korak", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." }, "backup": { "title": "Bekap | Bekapi", @@ -977,6 +1294,18 @@ "disk_variables_save_successfully": "Disk uspešno podešen", "disk_variables_save_error": "Podešavanje diska nije uspelo.", "invalid_disk_credentials": "Pogrešan kredencijal za disk koji je naveden" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { @@ -994,6 +1323,7 @@ "logo_preview": "Pregled logoa", "preferences": "Preference", "preferences_desc": "Podrazumevane Preference za sistem", + "currency_set_alert": "The company's currency cannot be changed later.", "country": "Država", "state": "Savezna Država", "city": "Grad", @@ -1031,6 +1361,15 @@ "permission_confirm_desc": "Provera dozvola za foldere nije uspela", "permission_desc": "U nastavku se nalazi lista dozvola za foldere koji su neophodni kako bi alikacija radila. Ukoliko provera dozvola ne uspe, ažuriraj svoju listu dozvola za te foldere." }, + "verify_domain": { + "title": "Domain Verification", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Verify Now", + "success": "Domain Verify Successfully.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verify And Continue" + }, "mail": { "host": "Mail Host", "port": "Mail Port", @@ -1069,8 +1408,8 @@ }, "validation": { "invalid_phone": "Pogrešan Broj Telefona", - "invalid_url": "Nevažeći URL (primer: http://www.craterapp.com)", - "invalid_domain_url": "Pogrešan URL (primer: craterapp.com)", + "invalid_url": "Nevažeći URL (primer: http://www.crater.com)", + "invalid_domain_url": "Pogrešan URL (primer: crater.com)", "required": "Obavezno polje", "email_incorrect": "Pogrešan E-mail", "email_already_taken": "Navedeni E-mail je zauzet", @@ -1081,6 +1420,7 @@ "not_yet": "Još uvek ništa? Pošalji ponovo", "password_min_length": "Šifra mora imati {count} karaktera", "name_min_length": "Naziv mora imati najmanje {count} slova", + "prefix_min_length": "Prefix must have at least {count} letters.", "enter_valid_tax_rate": "Unesite odgovarajuću poresku stopu", "numbers_only": "Mogu se unositi samo brojevi", "characters_only": "Mogu se unositi samo karakteri", @@ -1095,6 +1435,7 @@ "price_minvalue": "Cena mora biti veća od 0", "amount_maxlength": "Iznos ne može da ima više od 20 cifara", "amount_minvalue": "Iznos mora biti veći od 0", + "discount_maxlength": "Discount should not be greater than max discount", "description_maxlength": "Opis ne može da ima više od 65,000 karaktera", "subject_maxlength": "Predmet ne može da ima više od 100 karaktera", "message_maxlength": "Poruka ne može da ima više od 255 karaktera", @@ -1103,7 +1444,38 @@ "address_maxlength": "Adresa ne može da ima više od 255 karaktera", "ref_number_maxlength": "Poziv na broj ne može da ima više od 225 karaktera", "prefix_maxlength": "Prefiks ne može da ima više od 5 karaktera", - "something_went_wrong": "nešto je krenulo naopako" + "something_went_wrong": "nešto je krenulo naopako", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, "pdf_estimate_label": "Profaktura", "pdf_estimate_number": "Broj Profakture", diff --git a/resources/scripts/locales/sv.json b/resources/scripts/locales/sv.json index bbd8ffbf5..479be55e5 100644 --- a/resources/scripts/locales/sv.json +++ b/resources/scripts/locales/sv.json @@ -4,13 +4,15 @@ "customers": "Kunder", "items": "Artiklar", "invoices": "Fakturor", + "recurring-invoices": "Återkommande fakturor", "expenses": "Utgifter", "estimates": "Kostnadsförslag", "payments": "Betalningar", "reports": "Rapporter", "settings": "Inställningar", "logout": "Logga ut", - "users": "Användare" + "users": "Användare", + "modules": "Modules" }, "general": { "add_company": "Skapa företag", @@ -27,6 +29,9 @@ "to_date": "Till datum", "from": "Från", "to": "Till", + "ok": "Ok", + "yes": "Ja", + "no": "Nej", "sort_by": "Sortera på", "ascending": "Stigande", "descending": "Fallande", @@ -34,6 +39,7 @@ "body": "Innehåll", "message": "Meddelande", "send": "Skicka", + "preview": "Förhandsgranska", "go_back": "Tillbaka", "back_to_login": "Till inloggningssidan?", "home": "Hem", @@ -59,6 +65,7 @@ "sent": "Skickat", "all": "Alla", "select_all": "Välj alla", + "select_template": "Välj mall", "choose_file": "Klicka här för att välja fil", "choose_template": "Välj mall", "choose": "Välj", @@ -85,7 +92,14 @@ "choose_note": "Välj notering", "no_note_found": "Inga noteringar hittades", "insert_note": "Lägg till notering", - "copied_pdf_url_clipboard": "Url till PDF kopierades till urklipp!" + "copied_pdf_url_clipboard": "Url till PDF kopierades till urklipp!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Dokumentation", + "do_you_wish_to_continue": "Vill du fortsätta?", + "note": "Notering", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { "select_year": "Välj år", @@ -93,7 +107,8 @@ "due_amount": "Förfallet belopp", "customers": "Kunder", "invoices": "Fakturor", - "estimates": "Kostnadsförslag" + "estimates": "Kostnadsförslag", + "payments": "Payments" }, "chart_info": { "total_sales": "Försäljning", @@ -134,8 +149,28 @@ "users": "Användare", "no_results_found": "Hittade inga resultat" }, + "company_switcher": { + "label": "Byt företag", + "no_results_found": "Inga resultat hittades", + "add_new_company": "Lägg till nytt företag", + "new_company": "Nytt företag", + "created_message": "Företaget har skapats" + }, + "dateRange": { + "today": "Idag", + "this_week": "Denna vecka", + "this_month": "Denna månad", + "this_quarter": "Detta kvartal", + "this_year": "I år", + "previous_week": "Föregående vecka", + "previous_month": "Föregående månad", + "previous_quarter": "Föregående kvartal", + "previous_year": "Föregående år", + "custom": "Anpassad" + }, "customers": { "title": "Kunder", + "prefix": "Prefix", "add_customer": "Lägg till kund", "contacts_list": "Kundlista", "name": "Namn", @@ -150,6 +185,9 @@ "phone": "Telefon", "website": "Hemsida", "overview": "Översikt", + "invoice_prefix": "Prefix för fakturor", + "estimate_prefix": "Prefix för kostnadsförslag", + "payment_prefix": "Prefix för betalningar", "enable_portal": "Aktivera portal", "country": "Land", "state": "Kommun", @@ -158,6 +196,7 @@ "added_on": "Tillagd den", "action": "Handling", "password": "Lösenord", + "confirm_password": "Bekräfta lösenord", "street_number": "Gatnummer", "primary_currency": "Huvudvaluta", "description": "Beskrivning", @@ -168,13 +207,17 @@ "new_customer": "Ny kund", "edit_customer": "Ändra kund", "basic_info": "Information", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", "billing_address": "Fakturaadress", "shipping_address": "Leveransadress", "copy_billing_address": "Kopiera från faktura", "no_customers": "Inga kunder än!", "no_customers_found": "Hittade inga kunder!", - "no_contact": "No contact", - "no_contact_name": "No contact name", + "no_contact": "Inga kontakter", + "no_contact_name": "Kontaktnamn", "list_of_customers": "Här kommer det finnas en lista med kunder.", "primary_display_name": "Visningsnamn", "select_currency": "Välj valuta", @@ -187,7 +230,9 @@ "confirm_delete": "Du kommer inte kunna återställa denna kund eller några relaterade fakturor, kostnadsförslag eller betalningar. | Du kommer inte kunna återställa dessa kunder eller några relaterade fakturor, kostnadsförslag eller betalningar.", "created_message": "Kund skapades", "updated_message": "Kund uppdaterades", - "deleted_message": "Kund raderades | Kunder raderades" + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Kund raderades | Kunder raderades", + "edit_currency_not_allowed": "Kan inte ändra valuta när transaktioner har skapats." }, "items": { "title": "Artiklar", @@ -198,7 +243,7 @@ "added_on": "Tillagd den", "price": "Pris", "date_of_creation": "Skapandedatum", - "not_selected": "No item selected", + "not_selected": "Inga poster valda", "action": "Handling", "add_item": "Skapa artikel", "save_item": "Spara artikel", @@ -219,6 +264,8 @@ }, "estimates": { "title": "Kostnadsförslag", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", "estimate": "Kostnadsförslag | Kostnadsförslag", "estimates_list": "Lista med kostnadsförslag", "days": "{days} dagar", @@ -269,9 +316,11 @@ "required": "Fältet är tvingande" }, "accepted": "Accepterad", - "rejected": "Rejected", + "rejected": "Avvisad", + "expired": "Expired", "sent": "Skickat", "draft": "Utkast", + "viewed": "Viewed", "declined": "Avvisad", "new_estimate": "Nytt kostnadsförslag", "add_new_estimate": "Skapa nytt kostnadsförslag", @@ -308,16 +357,19 @@ }, "invoices": { "title": "Fakturor", + "download": "Download", + "pay_invoice": "Pay Invoice", "invoices_list": "Fakturor", + "invoice_information": "Invoice Information", "days": "{days} dagar", "months": "{months} månader", "years": "{years} år", "all": "Alla", "paid": "Betalda", "unpaid": "Obetalda", - "viewed": "Viewed", - "overdue": "Overdue", - "completed": "Completed", + "viewed": "Visade", + "overdue": "Förfallna", + "completed": "Slutförda", "customer": "KUNDER", "paid_status": "BETALSTATUS", "ref_no": "REF NR.", @@ -343,10 +395,13 @@ "send_invoice": "Skicka faktura", "resend_invoice": "Skicka faktura igen", "invoice_template": "Fakturamall", + "conversion_message": "Fakturan kopierades", "template": "Mall", "mark_as_sent": "Markera som skickad", "confirm_send_invoice": "Denna faktura skickas via epost till kunden", "invoice_mark_as_sent": "Denna faktura markeras som skickad", + "confirm_mark_as_accepted": "Denna faktura kommer att markeras som Godkänd", + "confirm_mark_as_rejected": "Denna faktura kommer att markeras som Avvisad", "confirm_send": "Denna faktura skickas via epost till kunden", "invoice_date": "Fakturadatum", "record_payment": "Registrera betalning", @@ -358,6 +413,8 @@ "update_invoice": "Uppdatera faktura", "add_new_tax": "Lägg till ny momssats", "no_invoices": "Inga fakturor än!", + "mark_as_rejected": "Markera som avvisad", + "mark_as_accepted": "Markera som godkänd", "list_of_invoices": "Här kommer det vara en lista med fakturor.", "select_invoice": "Välj faktura", "no_matching_invoices": "Inga matchande fakturor!", @@ -380,6 +437,7 @@ "select_an_item": "Skriv eller klicka för att välja artikel", "type_item_description": "Artikeltypsbeskrivning (frivillig)" }, + "payment_attached_message": "En av dom valda fakturorna har redan en betalning kopplad till sig. Du måste radera dom kopplade betalningarna först för att kunna fortsätta raderingen", "confirm_delete": "Du kommer inte kunna återställa denna faktura | Du kommer inte kunna återställa dessa fakturor", "created_message": "Faktura skapades", "updated_message": "Faktura uppdaterades", @@ -388,6 +446,115 @@ "something_went_wrong": "något blev fel", "invalid_due_amount_message": "Totalsumman för fakturan kan inte vara lägra än den betalda summan. Vänligen uppdatera fakturan eller radera dom kopplade betalningarna." }, + "recurring_invoices": { + "title": "Återkommande fakturor", + "invoices_list": "Återkommande fakturor", + "days": "{days} Dagar", + "months": "{months} Månader", + "years": "{years} År", + "all": "Alla", + "paid": "Betalda", + "unpaid": "Obetalda", + "viewed": "Visade", + "overdue": "Försenade", + "active": "Aktiva", + "completed": "Slutförda", + "customer": "KUND", + "paid_status": "BETALSTATUS", + "ref_no": "REF NR.", + "number": "NUMMER", + "amount_due": "FÖRFALLET BELOPP", + "partially_paid": "Delbetald", + "total": "Summa", + "discount": "Rabatt", + "sub_total": "Delsumma", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, "payments": { "title": "Betalningar", "payments_list": "Lista med betalningar", @@ -411,8 +578,8 @@ "update_payment": "Uppdatera betalning", "payment": "Betalning | Betalningar", "no_payments": "Inga betalningar än!", - "not_selected": "Not selected", - "no_invoice": "No invoice", + "not_selected": "Ej markerad", + "no_invoice": "Ingen faktura", "no_matching_payments": "Inga matchande betalningar!", "list_of_payments": "Här kommer listan med betalningar finnas.", "select_payment_mode": "Välj betalningssätt", @@ -432,6 +599,7 @@ "select_a_customer": "Välj en kund", "expense_title": "Titel", "customer": "Kund", + "currency": "Currency", "contact": "Kontakt", "category": "Kategori", "from_date": "Från datum", @@ -441,7 +609,7 @@ "receipt": "Kvitto", "amount": "Summa", "action": "Handling", - "not_selected": "Not selected", + "not_selected": "Ej markerad", "note": "Notering", "category_id": "Kategorins ID", "date": "Datum", @@ -485,6 +653,51 @@ "enter_password": "Skriv in lösenord", "retype_password": "Skriv lösenordet igen" }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, "users": { "title": "Användare", "users_list": "Användare", @@ -509,7 +722,9 @@ "confirm_delete": "Du kommer inte kunna återställa denna användare | Du kommer inte kunna återställa dessa användare", "created_message": "Användare skapades", "updated_message": "Användare uppdaterades", - "deleted_message": "Användaren raderades | Användarna raderades" + "deleted_message": "Användaren raderades | Användarna raderades", + "select_company_role": "Select Role for {company}", + "companies": "Companies" }, "reports": { "title": "Rapport", @@ -586,7 +801,12 @@ "file_disk": "File Disk", "custom_fields": "Anpassade fält", "payment_modes": "Betalmetoder", - "notes": "Noteringar" + "notes": "Noteringar", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." }, "title": "Inställningar", "setting": "Inställningar | Inställningar", @@ -648,7 +868,13 @@ "address": "Adress", "zip": "Postnr", "save": "Spara", - "updated_message": "Företagsinformation uppdaterad" + "delete": "Delete", + "updated_message": "Företagsinformation uppdaterad", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" }, "custom_fields": { "title": "Anpassade fält", @@ -659,6 +885,7 @@ "label": "Etikett", "type": "Typ", "name": "Namn", + "slug": "Slug", "required": "Tvingad", "placeholder": "Placeholder", "help_text": "Hjälptext", @@ -684,85 +911,104 @@ "select_relative_date": "Välj relativt datum", "ticked_by_default": "Ikryssad från start", "updated_message": "Anpassat fält uppdaterades", - "added_message": "Anpassat fält skapat" + "added_message": "Anpassat fält skapat", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." }, "customization": { "customization": "Anpassning", - "save": "Spara", - "addresses": { - "title": "Adresser", - "section_description": "Du kan formatera kundens faktura- och leveransadress (Visas enbart i PDF-en). ", - "customer_billing_address": "Kunds fakturaadress", - "customer_shipping_address": "Kunds leveransadress", - "company_address": "Företagsadress", - "insert_fields": "Lägg till fält", - "contact": "Kontakt", - "address": "Adress", - "display_name": "Visningsnamn", - "primary_contact_name": "Huvudkontakts namn", - "email": "Epost", - "website": "Hemsida", - "name": "Namn", - "country": "Lan", - "state": "Kommun", - "city": "Stad", - "company_name": "Företagsnamn", - "address_street_1": "Gatuadress 1", - "address_street_2": "Gatuadress 2", - "phone": "Telefon", - "zip_code": "Postnummer", - "address_setting_updated": "Inställningar för adress uppdaterades" - }, "updated_message": "Företagsinformation uppdaterades", + "save": "Spara", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", "invoices": { "title": "Fakturor", - "notes": "Noteringar", - "invoice_prefix": "Prefix för fakturor", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", "default_invoice_email_body": "Standardtext för faktura", - "invoice_settings": "Fakturainställningar", - "autogenerate_invoice_number": "Generera fakturanummer automatiskt", - "autogenerate_invoice_number_desc": "Inaktivera detta dom du inte vill att det automatiskt ska genereras ett nytt fakturanummer vid skapande av faktura.", - "enter_invoice_prefix": "Skriv prefix för faktura", - "terms_and_conditions": "Villkor", "company_address_format": "Formatering av företagsadress", "shipping_address_format": "Formatering av leveransadress", "billing_address_format": "Formatering av fakturaadress", - "invoice_settings_updated": "Fakturainställningar uppdaterades" + "invoice_email_attachment": "Skicka fakturor som bilagor", + "invoice_email_attachment_setting_description": "Aktivera detta om du vill skicka fakturor som e-postbilaga. Observera att knappen \"Visa faktura\" i e-post inte längre kommer att visas när den är aktiverad.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." }, "estimates": { "title": "Kostnadsförslag", - "estimate_prefix": "Prefix för kostnadsförslag", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", "default_estimate_email_body": "Standardtext för kostnadsförslag", - "estimate_settings": "Kostnadsförslagsinställningar", - "autogenerate_estimate_number": "Generera kostnadsförslagsnummer automatiskt", - "estimate_setting_description": "Inaktivera detta dom du inte vill att det automatiskt ska genereras ett nytt kostnadsförslagsnummer vid skapande av kostnadsförslag.", - "enter_estimate_prefix": "Skriv prefix för kostnadsförslag", - "estimate_setting_updated": "Kostnadsförslagsinställningar uppdaterades", "company_address_format": "Formatering av företagsadress", + "shipping_address_format": "Formatering av leveransadress", "billing_address_format": "Formatering av fakturaadress", - "shipping_address_format": "Formatering av leveransadress" + "estimate_email_attachment": "Send estimates as attachments", + "estimate_email_attachment_setting_description": "Aktivera detta om du vill skicka offerterna som en e-postbilaga. Observera att knappen \"Visa offert\" i e-post inte längre kommer att visas när den är aktiverad.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" }, "payments": { "title": "Betalningar", - "description": "Överföringstyper för betalningar", - "payment_prefix": "Prefix för betalningar", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", "default_payment_email_body": "Standardtext för betalningar", - "payment_settings": "Betalningsinställningar", - "autogenerate_payment_number": "Generera betalningsnummer automatiskt", - "payment_setting_description": "Inaktivera detta dom du inte vill att det automatiskt ska genereras ett nytt betalningssnummer vid skapande av betalning.", - "enter_payment_prefix": "Skriv prefix för kostnadsförslag", - "payment_setting_updated": "Betalningsinställningar uppdaterades", - "payment_modes": "Betalningssätt", - "add_payment_mode": "Lägg till betalningssätt", - "edit_payment_mode": "Ändra betalningssätt", - "mode_name": "Typnamn", - "payment_mode_added": "Betalningssätt tillagd", - "payment_mode_updated": "Betalningssätt uppdaterat", - "payment_mode_confirm_delete": "Du kommer inte kunna återställa denna betalningsmetod", - "already_in_use": "Betalningssättet används", - "deleted_message": "Betalningssätt raderades", "company_address_format": "Format för företagsadress", - "from_customer_address_format": "Format för kundens från-adress" + "from_customer_address_format": "Format för kundens från-adress", + "payment_email_attachment": "Skicka betalningar som bilagor", + "payment_email_attachment_setting_description": "Aktivera detta om du vill skicka betalningskvitton som en e-postbilaga. Observera att knappen \"Visa betalning\" i e-post inte längre kommer att visas när den är aktiverad.", + "payment_settings_updated": "Payment Settings updated successfully" }, "items": { "title": "Artiklar", @@ -821,6 +1067,57 @@ "email_save_message": "Epost sparades", "please_enter_email": "Skriv in epostadress" }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, "tax_types": { "title": "Momssatser", "add_tax": "Lägg till moms", @@ -840,6 +1137,18 @@ "confirm_delete": "Du kommer inte kunna återställa denna Momssats", "already_in_use": "Momssats används" }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, "expense_category": { "title": "Kategorier för utgifter", "action": "Handling", @@ -864,6 +1173,8 @@ "discount_setting": "Rabattinställningar", "discount_per_item": "Rabatt per artikel ", "discount_setting_description": "Aktivera detta om du vill kunna lägga rabatt på enskilda fakturaartiklar. Rabatt ges som standard på hela fakturan.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", "save": "Spara", "preference": "Preferens | Preferenser", "general_settings": "Standardpreferenser för systemet.", @@ -871,7 +1182,14 @@ "select_language": "Välj språk", "select_time_zone": "Välj tidszon", "select_date_format": "Välj datumformat", - "select_financial_year": "Välj räkenskapsår" + "select_financial_year": "Välj räkenskapsår", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" }, "update_app": { "title": "Uppdatera applikationen", @@ -889,10 +1207,12 @@ "download_zip_file": "Ladda ner ZIP-fil", "unzipping_package": "Zippar upp paket", "copying_files": "Kopierar filer", + "deleting_files": "Tar bort oanvända filer", "running_migrations": "Kör migreringar", "finishing_update": "Avslutar uppdateringen", "update_failed": "Uppdatering misslyckades", - "update_failed_text": "Uppdateringen misslyckades på steg : {step} step" + "update_failed_text": "Uppdateringen misslyckades på steg : {step} step", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." }, "backup": { "title": "Säkerhetskopiering | Säkerhetskopieringar", @@ -974,6 +1294,18 @@ "disk_variables_save_successfully": "Diskinställningar sparades", "disk_variables_save_error": "Något gick fel vid sparning av diskinställningar", "invalid_disk_credentials": "Felaktiga uppgifter vid val av disk" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { @@ -991,6 +1323,7 @@ "logo_preview": "Förhandsvisning av logga", "preferences": "Inställningar", "preferences_desc": "Standardinställningar för systemet.", + "currency_set_alert": "The company's currency cannot be changed later.", "country": "Land", "state": "Kommun", "city": "Stad", @@ -1028,6 +1361,15 @@ "permission_confirm_desc": "Fel behörigheter vid kontroll på katalogen", "permission_desc": "Nedan är en lista på katalogrättigheter som krävs för att denna app ska fungera. Om behörighetskontrollen misslyckas, uppdatera behörigheterna för katalogerna." }, + "verify_domain": { + "title": "Domain Verification", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Verify Now", + "success": "Domain Verify Successfully.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verify And Continue" + }, "mail": { "host": "Värdadress till epost", "port": "Port till epost", @@ -1066,8 +1408,8 @@ }, "validation": { "invalid_phone": "Felaktigt telefonnummer", - "invalid_url": "Felaktig url (ex: http://www.craterapp.com)", - "invalid_domain_url": "Felaktig url (ex: craterapp.com)", + "invalid_url": "Felaktig url (ex: http://www.crater.com)", + "invalid_domain_url": "Felaktig url (ex: crater.com)", "required": "Fältet är tvingande", "email_incorrect": "Felaktig epostadress.", "email_already_taken": "Denna epostadress finns redan.", @@ -1078,6 +1420,7 @@ "not_yet": "Inte än? Skicka igen", "password_min_length": "Lösenordet måste innehålla {count} tecken", "name_min_length": "Namn måste ha minst {count} bokstäver.", + "prefix_min_length": "Prefix must have at least {count} letters.", "enter_valid_tax_rate": "Skriv in tillåten momssats", "numbers_only": "Endast siffror.", "characters_only": "Endast bokstäver.", @@ -1092,6 +1435,7 @@ "price_minvalue": "Pris måste vara större än 0.", "amount_maxlength": "Belopp kan inte vara större än 20 siffror.", "amount_minvalue": "Belopp måste vara större än 9.", + "discount_maxlength": "Discount should not be greater than max discount", "description_maxlength": "Beskrivning får inte innehålla fler än 255 tecken.", "subject_maxlength": "Ämne får inte innehålla fler än 100 tecken.", "message_maxlength": "Meddelande får inte innehålla fler än 255 tecken.", @@ -1100,7 +1444,38 @@ "address_maxlength": "Adress kan inte vara större än 255 tecken.", "ref_number_maxlength": "Referensnummer kan inte vara större än 255 tecken.", "prefix_maxlength": "Prefix kan inte vara större än 5 tecken.", - "something_went_wrong": "något blev fel" + "something_went_wrong": "något blev fel", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, "pdf_estimate_label": "Kostnadsförslag", "pdf_estimate_number": "Kostnadsförslagsnummer", diff --git a/resources/scripts/locales/tr.json b/resources/scripts/locales/tr.json new file mode 100644 index 000000000..fcc057227 --- /dev/null +++ b/resources/scripts/locales/tr.json @@ -0,0 +1,1521 @@ +{ + "navigation": { + "dashboard": "Kontrol paneli", + "customers": "Müşteriler", + "items": "Ürünler", + "invoices": "Faturalar", + "recurring-invoices": "Recurring Invoices", + "expenses": "Harcamalar", + "estimates": "Proformalar", + "payments": "Ödemeler", + "reports": "Raporlar", + "settings": "Ayarlar", + "logout": "Çıkış yap", + "users": "Kullanıcılar", + "modules": "Modules" + }, + "general": { + "add_company": "Firma ekle", + "view_pdf": "PDF görüntüle", + "copy_pdf_url": "PDF bağlantısını kopyala", + "download_pdf": "PDF indir", + "save": "Kaydet", + "create": "Oluştur", + "cancel": "İptal", + "update": "Güncelle", + "deselect": "Seçimi kaldır", + "download": "İndir", + "from_date": "Başlangıç tarihi", + "to_date": "Bitiş tarihi", + "from": "Gönderen", + "to": "Alıcı", + "ok": "Ok", + "yes": "Yes", + "no": "No", + "sort_by": "Sıralama ölçütü", + "ascending": "Artan", + "descending": "Azalan", + "subject": "Konu", + "body": "Gövde", + "message": "Mesaj", + "send": "Gönder", + "preview": "Preview", + "go_back": "Geri dön", + "back_to_login": "Giriş sayfasına dönülsün mü?", + "home": "Ana sayfa", + "filter": "Filtrele", + "delete": "Sil", + "edit": "Düzenle", + "view": "Görüntüle", + "add_new_item": "Yeni Öğe Ekle", + "clear_all": "Tümünü Sil", + "showing": "Gösteriliyor", + "of": "'un", + "actions": "Eylemler", + "subtotal": "ARA TOPLAM", + "discount": "İSKONTO", + "fixed": "Sabit", + "percentage": "Yüzde", + "tax": "VERGİ", + "total_amount": "TOPLAM", + "bill_to": "Fatura Adresi", + "ship_to": "Sevkiyat Adresi", + "due": "Son Tarih", + "draft": "Taslak", + "sent": "Gönderildi", + "all": "Tümü", + "select_all": "Hepsini Seç", + "select_template": "Select Template", + "choose_file": "Bir dosya seçmek için buraya tıklayın", + "choose_template": "Bir şablon seçin", + "choose": "Seç", + "remove": "Kaldır", + "select_a_status": "Bir durum seçin", + "select_a_tax": "Vergi Seçiniz", + "search": "Ara", + "are_you_sure": "Emin misiniz?", + "list_is_empty": "Liste boş.", + "no_tax_found": "Vergi bulunmadı!", + "four_zero_four": "404", + "you_got_lost": "Tüh! Kayboldunuz!", + "go_home": "Anasayfa", + "test_mail_conf": "E-posta kurulumunu dene", + "send_mail_successfully": "E-posta başarıyla gönderildi", + "setting_updated": "Ayarlar başarıyla güncellendi", + "select_state": "İl Seçiniz", + "select_country": "Ülke Seçin", + "select_city": "Şehir Seçin", + "street_1": "Adres 1", + "street_2": "Adres 2", + "action_failed": "Eylem Başarısız", + "retry": "Yeniden Dene", + "choose_note": "Not Seçin", + "no_note_found": "Not Bulunamadı", + "insert_note": "Not Ekle", + "copied_pdf_url_clipboard": "PDF bağlantısı panoya kopyalandı!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Docs", + "do_you_wish_to_continue": "Do you wish to continue?", + "note": "Note", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" + }, + "dashboard": { + "select_year": "Yılı seçin", + "cards": { + "due_amount": "Ödenmesi gereken tutar", + "customers": "Müşteriler", + "invoices": "Faturalar", + "estimates": "Proformalar", + "payments": "Payments" + }, + "chart_info": { + "total_sales": "Satışlar", + "total_receipts": "Faturalar", + "total_expense": "Giderler", + "net_income": "Net Gelir", + "year": "Yılı seçin" + }, + "monthly_chart": { + "title": "Satışlar ve Giderler" + }, + "recent_invoices_card": { + "title": "Ödenecek Faturalar", + "due_on": "Bitiş Tarihi", + "customer": "Müşteri", + "amount_due": "Ödenmesi gereken tutar", + "actions": "Eylemler", + "view_all": "Hepsini görüntüle" + }, + "recent_estimate_card": { + "title": "Son proformalar", + "date": "Tarih", + "customer": "Müşteri", + "amount_due": "Ödenmesi gereken tutar", + "actions": "Eylemler", + "view_all": "Hepsini görüntüle" + } + }, + "tax_types": { + "name": "İsim", + "description": "Açıklama", + "percent": "Yüzde", + "compound_tax": "Vergi dahil" + }, + "global_search": { + "search": "Ara...", + "customers": "Müşteriler", + "users": "Kullanıcılar", + "no_results_found": "Hiçbir sonuç bulunamadı" + }, + "company_switcher": { + "label": "SWITCH COMPANY", + "no_results_found": "No Results Found", + "add_new_company": "Add new company", + "new_company": "New company", + "created_message": "Company created successfully" + }, + "dateRange": { + "today": "Today", + "this_week": "This Week", + "this_month": "This Month", + "this_quarter": "This Quarter", + "this_year": "This Year", + "previous_week": "Previous Week", + "previous_month": "Previous Month", + "previous_quarter": "Previous Quarter", + "previous_year": "Previous Year", + "custom": "Custom" + }, + "customers": { + "title": "Müşteriler", + "prefix": "Prefix", + "add_customer": "Müşteri ekle", + "contacts_list": "Müşteri listesi", + "name": "İsim", + "mail": "E-posta | E-postalar", + "statement": "Durum", + "display_name": "Görünen isim", + "primary_contact_name": "Birincil iletişim kurulacak kişi ismi", + "contact_name": "İletişim kurulacak kişi ismi", + "amount_due": "Ödenmesi gereken tutar", + "email": "E-posta", + "address": "Adres", + "phone": "Telefon", + "website": "Web sitesi", + "overview": "Özet", + "invoice_prefix": "Invoice Prefix", + "estimate_prefix": "Estimate Prefix", + "payment_prefix": "Payment Prefix", + "enable_portal": "Portalı etkinleştir", + "country": "Ülke", + "state": "İl", + "city": "İlçe", + "zip_code": "Posta kodu", + "added_on": "Eklenme tarihi", + "action": "Eylem", + "password": "Parola", + "confirm_password": "Confirm Password", + "street_number": "Sokak ve numara", + "primary_currency": "Ana para birimi", + "description": "Açıklama", + "add_new_customer": "Yeni müşteri ekle", + "save_customer": "Müşteriyi kaydet", + "update_customer": "Müşteriyi güncelle", + "customer": "Müşteri | Müşteriler", + "new_customer": "Yeni müşteri", + "edit_customer": "Müşteriyi düzenle", + "basic_info": "Temel bilgiler", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", + "billing_address": "Fatura Adresi", + "shipping_address": "Teslimat Adresi", + "copy_billing_address": "Faturadan Kopyala", + "no_customers": "Daha müşteri yok!", + "no_customers_found": "Müşteri bulunamadı!", + "no_contact": "Bağlantı yok", + "no_contact_name": "Bağlantı adı yok", + "list_of_customers": "Bu bölüm müşteri listesini bulunduracaktır.", + "primary_display_name": "Ana kullanıcı adı", + "select_currency": "Para birimi seç", + "select_a_customer": "Müşteri seç", + "type_or_click": "Seçmek için yazın veya tıklayın", + "new_transaction": "Yeni İşlem", + "no_matching_customers": "Eşleşen müşteri yok!", + "phone_number": "Telefon numarası", + "create_date": "Oluşturma Tarihi", + "confirm_delete": "Bu müşteri ve ilgili tüm Fatura, Proformalar ve ödemeleri geri getiremeyeceksiniz. | Bu müşteriler ve ilgili tüm Fatura, Proformalar ve ödemeleri geri getiremeyeceksiniz.", + "created_message": "Müşteri başarıyla oluşturuldu", + "updated_message": "Müşteri başarıyla güncellendi", + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Müşteri başarıyla silindi | Müşteriler başarıyla silindi", + "edit_currency_not_allowed": "Cannot change currency once transactions created." + }, + "items": { + "title": "Öğeler", + "items_list": "Öğe listesi", + "name": "İsim", + "unit": "Birim", + "description": "Açıklama", + "added_on": "Eklenme tarihi", + "price": "Fiyat", + "date_of_creation": "Oluşturma tarihi", + "not_selected": "Seçilmiş öğe yok", + "action": "Eylem", + "add_item": "Öğe ekle", + "save_item": "Öğeyi kaydet", + "update_item": "Öğeleri güncelle", + "item": "Öğe | Öğeler", + "add_new_item": "Yeni Öğe Ekle", + "new_item": "Yeni Öğe", + "edit_item": "Öğeyi Düzenle", + "no_items": "Daha öğe yok!", + "list_of_items": "Bu bölüm öğelerin listesini bulunduracaktır.", + "select_a_unit": "birim seçin", + "taxes": "Vergiler", + "item_attached_message": "Kullanımda bulunan öğe silinemez", + "confirm_delete": "Bu Öğeyi silerseniz geri alamayacaksınız | Bu Öğeleri silerseniz geri alamayacaksınız", + "created_message": "Öğe başarıyla oluşturuldu", + "updated_message": "Öğe başarıyla güncellendi", + "deleted_message": "Öğe başarıyla silindi | Öğeler başarıyla silindi" + }, + "estimates": { + "title": "Proformalar", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", + "estimate": "Proforma | Proformalar", + "estimates_list": "Proforma Listesi", + "days": "{days} Günler", + "months": "{months} Ay", + "years": "{years} Yıl", + "all": "Tümü", + "paid": "Ödendi", + "unpaid": "Ödenmedi", + "customer": "MÜŞTERİ", + "ref_no": "REF NO.", + "number": "SAYI", + "amount_due": "ÖDENMESİ GEREKEN TUTAR", + "partially_paid": "Kısmen ödendi", + "total": "Toplam", + "discount": "İskonto", + "sub_total": "Ara toplam", + "estimate_number": "Proforma numarası", + "ref_number": "Referans numarası", + "contact": "İletişim", + "add_item": "Öğe ekle", + "date": "Tarih", + "due_date": "Ödeme tarihi", + "expiry_date": "Son geçerlilik tarihi", + "status": "Durum", + "add_tax": "Vergi ekle", + "amount": "Tutar", + "action": "Eylem", + "notes": "Notlar", + "tax": "Vergi", + "estimate_template": "Şablon", + "convert_to_invoice": "Faturaya çevir", + "mark_as_sent": "Gönderildi olarak işaretle", + "send_estimate": "Proformayı gönder", + "resend_estimate": "Proformayı tekrar gönder", + "record_payment": "Ödemeyi kaydet", + "add_estimate": "Proforma ekle", + "save_estimate": "Proformayı kaydet", + "confirm_conversion": "Bu proforma, yeni bir fatura oluşturmak için kullanılacak.", + "conversion_message": "Fatura başarıyla oluşturuldu", + "confirm_send_estimate": "Bu proforma müşteriye e-posta ile gönderilecek", + "confirm_mark_as_sent": "Bu proforma gönderildi olarak işaretlenecek", + "confirm_mark_as_accepted": "Bu proforma \"Onaylandı\" olarak işaretlenecek", + "confirm_mark_as_rejected": "Bu proforma \"Reddedildi\" olarak işaretlenecek", + "no_matching_estimates": "Eşleşen proforma yok!", + "mark_as_sent_successfully": "Proforma başarıyla gönderildi olarak işaretlendi", + "send_estimate_successfully": "Proforma başarıyla gönderildi", + "errors": { + "required": "Bu alan zorunludur" + }, + "accepted": "Onaylandı", + "rejected": "Reddedildi", + "expired": "Expired", + "sent": "Gönderildi", + "draft": "Taslak", + "viewed": "Viewed", + "declined": "Reddedildi", + "new_estimate": "Yeni proforma", + "add_new_estimate": "Yeni proforma ekle", + "update_Estimate": "Proformayı güncelle", + "edit_estimate": "Proformayı düzenle", + "items": "ürünler", + "Estimate": "Proforma | Proformalar", + "add_new_tax": "Yeni vergi ekle", + "no_estimates": "Daha proforma yok!", + "list_of_estimates": "Bu bölüm proformaların listesini bulunduracaktır.", + "mark_as_rejected": "Reddedildi olarak işaretle", + "mark_as_accepted": "Kabul edildi olarak işaretle", + "marked_as_accepted_message": "Proformayı kabul edildi olarak işaretle", + "marked_as_rejected_message": "Proforma reddedildi olarak işaretle", + "confirm_delete": "Bu Proformayı geri getiremeyeceksiniz | Bu Proformaları geri getiremeyeceksiniz", + "created_message": "Proforma başarıyla oluşturuldu", + "updated_message": "Proforma başarıyla güncellendi", + "deleted_message": "Proforma başarıyla silindi | Proformalar başarıyla silindi", + "something_went_wrong": "bir şeyler ters gitti", + "item": { + "title": "Öğe Başlığı", + "description": "Tanım", + "quantity": "Miktar", + "price": "Fiyat", + "discount": "İskonto", + "total": "Toplam", + "total_discount": "Toplam iskonto", + "sub_total": "Ara toplam", + "tax": "Vergi", + "amount": "Tutar", + "select_an_item": "Ürün seçmek için yazın ya da tıklayın", + "type_item_description": "Ürün açıklaması ekleyin (isteğe bağlı)" + } + }, + "invoices": { + "title": "Faturalar", + "download": "Download", + "pay_invoice": "Pay Invoice", + "invoices_list": "Fatura Listesi", + "invoice_information": "Invoice Information", + "days": "{days} Günler", + "months": "{months} Ay", + "years": "{years} Yıl", + "all": "Tümü", + "paid": "Ödendi", + "unpaid": "Ödenmemiş", + "viewed": "Bakıldı", + "overdue": "Vadesi Geçmiş", + "completed": "Tamamlandı", + "customer": "MÜŞTERİ", + "paid_status": "ÖDEME DURUMU", + "ref_no": "REF NO.", + "number": "SAYI", + "amount_due": "ÖDENMESİ GEREKEN TUTAR", + "partially_paid": "Kısmen ödendi", + "total": "Toplam", + "discount": "İskonto", + "sub_total": "Ara toplam", + "invoice": "Fatura | Faturalar", + "invoice_number": "Fatura numarası", + "ref_number": "Referans numarası", + "contact": "İletişim", + "add_item": "Öğe ekle", + "date": "Tarih", + "due_date": "Ödeme tarihi", + "status": "Durum", + "add_tax": "Vergi ekle", + "amount": "Tutar", + "action": "Eylem", + "notes": "Notlar", + "view": "Görüntüle", + "send_invoice": "Faturayı gönder", + "resend_invoice": "Faturayı tekrar gönder", + "invoice_template": "Fatura şablonu", + "conversion_message": "Invoice cloned successful", + "template": "Şablon", + "mark_as_sent": "Gönderildi olarak işaretle", + "confirm_send_invoice": "Bu fatura müşteriye e-posta ile gönderilecek", + "invoice_mark_as_sent": "Bu fatura gönderildi olarak işaretlenecek", + "confirm_mark_as_accepted": "This invoice will be marked as Accepted", + "confirm_mark_as_rejected": "This invoice will be marked as Rejected", + "confirm_send": "Bu fatura müşteriye e-posta ile gönderilecek", + "invoice_date": "Fatura tarihi", + "record_payment": "Ödeme ekle", + "add_new_invoice": "Yeni fatura ekle", + "update_expense": "Harcamayı güncelle", + "edit_invoice": "Faturayı düzenle", + "new_invoice": "Yeni fatura", + "save_invoice": "Faturayı kaydet", + "update_invoice": "Faturayı güncelle", + "add_new_tax": "Yeni vergi ekle", + "no_invoices": "Henüz fatura yok!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "Bu bölümde faturaların listesi bulunmaktadır.", + "select_invoice": "Faturayı seç", + "no_matching_invoices": "Eşleşen fatura yok!", + "mark_as_sent_successfully": "Fatura başarıyla gönderildi olarak işaretlendi", + "invoice_sent_successfully": "Invoice sent successfully", + "cloned_successfully": "Fatura başarıyla klonlandı", + "clone_invoice": "Faturayı klonla", + "confirm_clone": "Bu fatura yeni bir fatura olarak klonlanacak", + "item": { + "title": "Ürün başlığı", + "description": "Açıklama", + "quantity": "Miktar", + "price": "Fiyat", + "discount": "İskonto", + "total": "Toplam", + "total_discount": "Toplam iskonto", + "sub_total": "Ara toplam", + "tax": "Vergi", + "amount": "Tutar", + "select_an_item": "Ürün seçmek için yazın ya da tıklayın", + "type_item_description": "Ürün açıklaması ekleyin (isteğe bağlı)" + }, + "payment_attached_message": "Halihazırda seçilen faturalardan biri ile ilişkili bir ödeme var. Kaldırmaya devam etmeden önce ilişkili ödemenin silindiğinden emin olun", + "confirm_delete": "Bu Faturayı silerseniz geri alamayacaksınız | Bu Faturaları silerseniz geri alamayacaksınız", + "created_message": "Fatura başarıyla oluşturuldu", + "updated_message": "Fatura başarıyla güncellendi", + "deleted_message": "Fatura başarıyla silindi | Faturalar başarıyla silindi", + "marked_as_sent_message": "Fatura başarıyla gönderildi olarak işaretlendi", + "something_went_wrong": "bir şeyler ters gitti", + "invalid_due_amount_message": "Toplam Fatura bedeli bu fatura için olan toplam ödemeden az olamaz. Lütfen devam etmek için faturayı güncelleyin veya ilişkili ödemeyi silin." + }, + "recurring_invoices": { + "title": "Recurring Invoices", + "invoices_list": "Recurring Invoices List", + "days": "{days} Days", + "months": "{months} Month", + "years": "{years} Year", + "all": "All", + "paid": "Paid", + "unpaid": "Unpaid", + "viewed": "Viewed", + "overdue": "Overdue", + "active": "Active", + "completed": "Completed", + "customer": "CUSTOMER", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, + "payments": { + "title": "Ödemeler", + "payments_list": "Ödeme listesi", + "record_payment": "Ödeme ekle", + "customer": "Müşteri", + "date": "Tarih", + "amount": "Tutar", + "action": "Eylem", + "payment_number": "Ödeme numarası", + "payment_mode": "Ödeme Yöntemi", + "invoice": "Fatura", + "note": "Not", + "add_payment": "Ödeme Ekle", + "new_payment": "Yeni Ödeme", + "edit_payment": "Ödemeyi düzenle", + "view_payment": "Ödemeyi Göster", + "add_new_payment": "Ödeme Ekle", + "send_payment_receipt": "Ödeme Fişi Gönder", + "send_payment": "Ödemeyi Gönder", + "save_payment": "Ödemeyi Kaydet", + "update_payment": "Ödemeyi Güncelle", + "payment": "Ödeme | Ödemeler", + "no_payments": "Henüz ödeme yok!", + "not_selected": "Seçili değil", + "no_invoice": "Fatura yok", + "no_matching_payments": "Eşleşen ödeme yok!", + "list_of_payments": "Bu bölüm ödemelerin listesini bulunduracaktır.", + "select_payment_mode": "Ödeme yöntemini seçin", + "confirm_mark_as_sent": "Bu proforma gönderildi olarak işaretlenecek", + "confirm_send_payment": "Bu ödeme müşteriye e-postayla gönderilecek", + "send_payment_successfully": "Ödeme başarıyla gönderildi", + "something_went_wrong": "bir şeyler ters gitti", + "confirm_delete": "Bu ödemeyi silerseniz geri alamayacaksınız | Bu ödemeleri silerseniz geri alamayacaksınız", + "created_message": "Ödeme başarıyla oluşturuldu", + "updated_message": "Ödeme başarıyla güncellendi", + "deleted_message": "Ödeme başarıyla silindi | Ödemeler başarıyla silindi", + "invalid_amount_message": "Ödeme tutarı geçersiz" + }, + "expenses": { + "title": "Harcamalar", + "expenses_list": "Harcama listesi", + "select_a_customer": "Müşteri seç", + "expense_title": "Başlık", + "customer": "Müşteri", + "currency": "Currency", + "contact": "İletişim", + "category": "Kategori", + "from_date": "Başlangıç tarihi", + "to_date": "Bitiş tarihi", + "expense_date": "Tarih", + "description": "Açıklama", + "receipt": "Makbuz", + "amount": "Tutar", + "action": "Eylem", + "not_selected": "Seçili değil", + "note": "Not", + "category_id": "Kategori ID", + "date": "Tarih", + "add_expense": "Harcama ekle", + "add_new_expense": "Yeni harcama ekle", + "save_expense": "Harcamayı kaydet", + "update_expense": "Harcamayı güncelle", + "download_receipt": "Makbuzu indir", + "edit_expense": "Harcamayı düzenle", + "new_expense": "Yeni harcama", + "expense": "Harcama | Harcamalar", + "no_expenses": "Henüz harcama yok!", + "list_of_expenses": "Bu bölümde harcamaların listesi bulunmaktadır.", + "confirm_delete": "Bu harcamayı silerseniz geri alamayacaksınız | Bu harcamaları silerseniz geri alamayacaksınız", + "created_message": "Harcama başarıyla oluşturuldu", + "updated_message": "Harcama başarıyla güncellendi", + "deleted_message": "Harcama başarıyla silindi | Harcamalar başarıyla silindi", + "categories": { + "categories_list": "Kategori listesi", + "title": "Başlık", + "name": "İsim", + "description": "Açıklama", + "amount": "Tutar", + "actions": "Eylemler", + "add_category": "Kategori ekle", + "new_category": "Yeni kategori", + "category": "Kategori | Kategoriler", + "select_a_category": "Kategori seç" + } + }, + "login": { + "email": "E-posta", + "password": "Parola", + "forgot_password": "Parolanızı mı Unuttunuz?", + "or_signIn_with": "ya da şununla oturum aç", + "login": "Giriş Yap", + "register": "Kayıt Ol", + "reset_password": "Parolayı sıfırla", + "password_reset_successfully": "Parola Sıfırlama Başarılı", + "enter_email": "E-posta girin", + "enter_password": "Parola Girin", + "retype_password": "Parolanızı Yeniden Girin" + }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, + "users": { + "title": "Kullanıcılar", + "users_list": "Kullanıcı Listesi", + "name": "İsim", + "description": "Tanım", + "added_on": "Eklendiği tarih", + "date_of_creation": "Oluşturma tarihi", + "action": "Eylem", + "add_user": "Kullanıcı Ekle", + "save_user": "Kullanıcıyı Kaydet", + "update_user": "Kullanıcı Güncelle", + "user": "Kullanıcı | Kullanıcılar", + "add_new_user": "Yeni Kullanıcı Ekle", + "new_user": "Yeni Kullanıcı", + "edit_user": "Kullanıcıyı Düzenle", + "no_users": "Henüz kullanıcı yok!", + "list_of_users": "Bu bölüm kullanıcıların listesini bulunduracaktır.", + "email": "Eposta", + "phone": "Telefon", + "password": "Parola", + "user_attached_message": "Kullanımda bulunan öğe silinemez", + "confirm_delete": "Bu kullanıcıyı geri getiremeyeceksiniz | Bu kullanıcıları geri getiremeyeceksiniz", + "created_message": "Kullanıcı başarıyla oluşturuldu", + "updated_message": "Kullanıcı başarıyla güncellendi", + "deleted_message": "Kullanıcı başarıyla silindi | Kullanıcılar başarıyla silindi", + "select_company_role": "Select Role for {company}", + "companies": "Companies" + }, + "reports": { + "title": "Bildir", + "from_date": "Başlangıç tarihi", + "to_date": "Bitiş tarihi", + "status": "Durum", + "paid": "Ödendi", + "unpaid": "Ödenmemiş", + "download_pdf": "PDF indir", + "view_pdf": "PDF Görüntüle", + "update_report": "Raporu Güncelle", + "report": "Rapor | Raporlar", + "profit_loss": { + "profit_loss": "Kar ve zarar", + "to_date": "Bitiş tarihi", + "from_date": "Başlangıç tarihi", + "date_range": "Tarih aralığı seç" + }, + "sales": { + "sales": "Satışlar", + "date_range": "Tarih aralığı seç", + "to_date": "Bitiş tarihi", + "from_date": "Başlangıç tarihi", + "report_type": "Rapor türü" + }, + "taxes": { + "taxes": "Vergiler", + "to_date": "Bitiş tarihi", + "from_date": "Başlangıç tarihi", + "date_range": "Tarih aralığı seç" + }, + "errors": { + "required": "Bu alan zorunludur" + }, + "invoices": { + "invoice": "Fatura", + "invoice_date": "Fatura tarihi", + "due_date": "Ödeme tarihi", + "amount": "Tutar", + "contact_name": "İletişim kurulacak kişi", + "status": "Durum" + }, + "estimates": { + "estimate": "Proforma", + "estimate_date": "Proforma tarihi", + "due_date": "Ödeme tarihi", + "estimate_number": "Proforma numarası", + "ref_number": "Referans numarası", + "amount": "Tutar", + "contact_name": "İletişim kurulacak kişi", + "status": "Durum" + }, + "expenses": { + "expenses": "Harcamalar", + "category": "Kategori", + "date": "Tarih", + "amount": "Tutar", + "to_date": "Bitiş tarihi", + "from_date": "Başlangıç tarihi", + "date_range": "Tarih aralığı seç" + } + }, + "settings": { + "menu_title": { + "account_settings": "Hesap ayarları", + "company_information": "Şirket bilgileri", + "customization": "Özelleştirme", + "preferences": "Tercihler", + "notifications": "Bildirimler", + "tax_types": "Vergi türleri", + "expense_category": "Harcama kategorileri", + "update_app": "Uygulamayı güncelle", + "backup": "Yedekleme", + "file_disk": "Dosya diski", + "custom_fields": "Özel alanlar", + "payment_modes": "Ödeme yöntemleri", + "notes": "Notlar", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." + }, + "title": "Ayarlar", + "setting": "Ayarlar | Ayarlar", + "general": "Genel", + "language": "Dil", + "primary_currency": "Ana para birimi", + "timezone": "Zaman dilimi", + "date_format": "Tarih Biçimi", + "currencies": { + "title": "Para Birimleri", + "currency": "Para birimi | Para birimleri", + "currencies_list": "Para birimleri Listesi", + "select_currency": "Para Birimini Seçin", + "name": "Ad", + "code": "Kod", + "symbol": "Sembol", + "precision": "Hassasiyet", + "thousand_separator": "Binlik Ayracı", + "decimal_separator": "Ondalık Ayracı", + "position": "Konum", + "position_of_symbol": "Simgelerin Konumları", + "right": "Sağ", + "left": "Sol", + "action": "Eylem", + "add_currency": "Para birimi Ekle" + }, + "mail": { + "host": "Posta Sunucusu", + "port": "Posta Sunucu Portu", + "driver": "Posta Sürücüsü", + "secret": "Sır", + "mailgun_secret": "Mailgun Sırrı", + "mailgun_domain": "Alan Adı", + "mailgun_endpoint": "Mailgun Uçnoktası", + "ses_secret": "SES Sırrı", + "ses_key": "Ses Anahtarı", + "password": "Posta Parolası", + "username": "Posta Kullanıcı Adı", + "mail_config": "Posta Konfigürasyonu", + "from_name": "Gönderen Mail Adı", + "from_mail": "Gönderen Posta Adresi", + "encryption": "Mail Şifrelemesi", + "mail_config_desc": "Uygulamadan E-posta göndermek için E-posta sürücüsünü yapılandırma formu aşağıdadır. Sendgrid, SES vb. gibi üçüncü taraf sağlayıcıları da yapılandırabilirsiniz." + }, + "pdf": { + "title": "PDF Ayarları", + "footer_text": "Altbilgi Metni", + "pdf_layout": "PDF Biçimi" + }, + "company_info": { + "company_info": "Şirket bilgileri", + "company_name": "Firma Adı", + "company_logo": "Şirket logosu", + "section_description": "Crater tarafından oluşturulacak faturaların, proformaların ve diğer evrakların üzerinde görünecek şirket bilgileriniz.", + "phone": "Telefon", + "country": "Ülke", + "state": "Eyalet", + "city": "Şehir", + "address": "Adres", + "zip": "Posta Numarası", + "save": "Kaydet", + "delete": "Delete", + "updated_message": "Şirket bilgileri başarıyla güncellendi", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" + }, + "custom_fields": { + "title": "Özel alanlar", + "section_description": "Faturalarınızı, Tahminlerinizi & Ödeme Makbuzlarınızı kendi alanlarınızla özelleştirin. Özelleştirme ayarları sayfasındaki adres biçimlerinde aşağıda eklenen alanları kullandığınızdan emin olun.", + "add_custom_field": "Özel alan ekle", + "edit_custom_field": "Özel alanı düzenle", + "field_name": "Alan ismi", + "label": "Etiket", + "type": "Tür", + "name": "İsim", + "slug": "Slug", + "required": "Zorunlu", + "placeholder": "Yer tutucu", + "help_text": "Yardım metni", + "default_value": "Varsayılan değer", + "prefix": "Ön ek", + "starting_number": "Başlangıç no", + "model": "Model", + "help_text_description": "Kullanıcıların bu alanın ne işe yaradığını anlayabilmeleri için bir şeyler yazın.", + "suffix": "Son ek", + "yes": "Evet", + "no": "Hayır", + "order": "Sıralama", + "custom_field_confirm_delete": "Eğer bu özel alanı silerseniz geri alamayacaksınız", + "already_in_use": "Özel alan zaten kullanılıyor", + "deleted_message": "Özel alan başarıyla silindi", + "options": "seçenekler", + "add_option": "Seçenek ekle", + "add_another_option": "Başka bir seçenek ekle", + "sort_in_alphabetical_order": "Alfabetik olarak sırala", + "add_options_in_bulk": "Toplu seçenek ekle", + "use_predefined_options": "Önceden tanımlanmış seçenekleri kullan", + "select_custom_date": "Özel tarih seç", + "select_relative_date": "Bağıntılı Tarih Seçin", + "ticked_by_default": "Varsayılan olarak işaretli", + "updated_message": "Özel alan başarıyla güncellendi", + "added_message": "Özel alan başarıyla eklendi", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." + }, + "customization": { + "customization": "özelleştirme", + "updated_message": "Şirket bilgileri başarıyla güncellendi", + "save": "Kaydet", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", + "invoices": { + "title": "Faturalar", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", + "default_invoice_email_body": "Varsayılan Fatura E-posta Gövdesi", + "company_address_format": "Firma Adres Formatı", + "shipping_address_format": "Gönderim Adres Formatı", + "billing_address_format": "Fatura Adres Formatı", + "invoice_email_attachment": "Faturaları ek olarak gönderin", + "invoice_email_attachment_setting_description": "Faturaları e-posta eki olarak göndermek istiyorsanız bunu etkinleştirin. Lütfen, etkinleştirildiğinde e-postalardaki 'Faturayı Görüntüle' düğmesinin artık görüntülenmeyeceğini unutmayın.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." + }, + "estimates": { + "title": "Proformalar", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", + "default_estimate_email_body": "Varsayılan Proforma E-posta Gövdesi", + "company_address_format": "Firma Adres Formatı", + "shipping_address_format": "Gönderim Adres Formatı", + "billing_address_format": "Fatura Adres Formatı", + "estimate_email_attachment": "Proformaları ek olarak gönderin", + "estimate_email_attachment_setting_description": "Proformaları e-posta eki olarak göndermek istiyorsanız bunu etkinleştirin. Lütfen, etkinleştirildiğinde e-postalardaki 'Proformayı Görüntüle' düğmesinin artık görüntülenmeyeceğini unutmayın.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" + }, + "payments": { + "title": "Ödemeler", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", + "default_payment_email_body": "Varsayılan Ödeme E-posta Gövdesi", + "company_address_format": "Firma adresi biçimi", + "from_customer_address_format": "Müşteri Adres Formatı", + "payment_email_attachment": "Ödemeleri ek olarak gönderin", + "payment_email_attachment_setting_description": "Ödemeleri e-posta eki olarak göndermek istiyorsanız bunu etkinleştirin. Lütfen, etkinleştirildiğinde e-postalardaki 'Ödemeyi Görüntüle' düğmesinin artık görüntülenmeyeceğini unutmayın.", + "payment_settings_updated": "Payment Settings updated successfully" + }, + "items": { + "title": "Ürünler", + "units": "Birimler", + "add_item_unit": "Birim ekle", + "edit_item_unit": "Birimleri düzenle", + "unit_name": "Birim adı", + "item_unit_added": "Birim eklendi", + "item_unit_updated": "Birim güncellendi", + "item_unit_confirm_delete": "Eğer bu birimi silerseniz geri alamayacaksınız", + "already_in_use": "Birim zaten mevcut", + "deleted_message": "Birim başarıyla silindi" + }, + "notes": { + "title": "Notlar", + "description": "Notlar oluşturarak ve faturalar, proformalar & ödemeler üzerinde tekrar kullanarak zamandan kazanın.", + "notes": "Notlar", + "type": "Tür", + "add_note": "Not ekle", + "add_new_note": "Yeni not ekle", + "name": "İsim", + "edit_note": "Notu düzenle", + "note_added": "Not başarıyla eklendi", + "note_updated": "Not başarıyla güncellendi", + "note_confirm_delete": "Eğer bu notu silerseniz geri alamayacaksınız", + "already_in_use": "Not zaten mevcut", + "deleted_message": "Not başarıyla silindi" + } + }, + "account_settings": { + "profile_picture": "Profil resmi", + "name": "İsim", + "email": "E-posta", + "password": "Parola", + "confirm_password": "Parolayı doğrula", + "account_settings": "Hesap ayarları", + "save": "Kaydet", + "section_description": "Aşağıdaki formdan isminizi, e-postanızı ve parolanızı güncelleyebilirsiniz.", + "updated_message": "Hesap ayarları başarıyla güncellendi" + }, + "user_profile": { + "name": "İsim", + "email": "E-posta", + "password": "Parola", + "confirm_password": "Parolayı doğrula" + }, + "notification": { + "title": "Bildirim", + "email": "Bildirimleri şuna gönder:", + "description": "Bir değişiklik olduğunda hangi e-posta bildirimlerini almak istersiniz?", + "invoice_viewed": "Fatura görüntülendi", + "invoice_viewed_desc": "Müşteriniz crater panosu aracılığıyla gönderilen faturayı görüntülediğinde.", + "estimate_viewed": "Proforma görüntülendi", + "estimate_viewed_desc": "Müşteriniz crater panosu aracılığıyla gönderilen proformayı görüntülediğinde.", + "save": "Kaydet", + "email_save_message": "E-posta başarıyla kaydedildi", + "please_enter_email": "Lütfen E-posta Adresi Girin" + }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, + "tax_types": { + "title": "Vergi Türleri", + "add_tax": "Vergi Ekle", + "edit_tax": "Vergi Düzenle", + "description": "Vergileri istediğiniz gibi ekleyebilir veya kaldırabilirsiniz. Crater, Faturanın yanı sıra Bireysel Öğelerdeki Vergileri de destekler.", + "add_new_tax": "Yeni Vergi Ekle", + "tax_settings": "Vergi Ayarları", + "tax_per_item": "Öğe Başı Vergi", + "tax_name": "Vergi Adı", + "compound_tax": "Bileşik Vergi", + "percent": "Yüzde", + "action": "Eylem", + "tax_setting_description": "Bireysel fatura kalemlerine vergi eklemek istiyorsanız bunu etkinleştirin. Varsayılan olarak vergiler doğrudan faturaya eklenir.", + "created_message": "Vergi tipi başarıyla oluşturuldu", + "updated_message": "Vergi tipi başarıyla güncellendi", + "deleted_message": "Vergi tipi başarıyla silindi", + "confirm_delete": "Bu Vergi Tipini geri alamayacaksın", + "already_in_use": "Vergi zaten kullanımda" + }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, + "expense_category": { + "title": "Gider Kategorileri", + "action": "Eylem", + "description": "Gider girdileri oluşturmak için kategoriler gereklidir. Tercihinize göre bu kategorileri ekleyebilir veya silebilirsiniz.", + "add_new_category": "Yeni Kategori Ekle", + "add_category": "Kategori Ekle", + "edit_category": "Kategori Düzenle", + "category_name": "Kategori Adı", + "category_description": "Açıklama", + "created_message": "Gider Kategorisi başarıyla oluşturuldu", + "deleted_message": "Gider Kategorisi kategorisi başarıyla silindi", + "updated_message": "Gider Kategorisi başarıyla güncellendi", + "confirm_delete": "Bu Gider Kategorisini geri alamayacaksın", + "already_in_use": "Kategori zaten kullanımda" + }, + "preferences": { + "currency": "Para Birimi", + "default_language": "Varsayılan Dil", + "time_zone": "Zaman Dilimi", + "fiscal_year": "Finansal Yıl", + "date_format": "Tarih Biçimi", + "discount_setting": "İndirim Ayarı", + "discount_per_item": "Öğe Başı İndirim ", + "discount_setting_description": "Bireysel fatura kalemlerine İndirim eklemek istiyorsanız bunu etkinleştirin. Varsayılan olarak, İndirim doğrudan faturaya eklenir.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", + "save": "Kaydet", + "preference": "Tercih | Tercihler", + "general_settings": "Sistem için varsayılan tercihler.", + "updated_message": "Tercihler başarıyla güncellendi", + "select_language": "Dil Seçin", + "select_time_zone": "Saat Dilimini Seçin", + "select_date_format": "Tarih Biçimini Seçin", + "select_financial_year": "Finansal Yılı Seçin", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" + }, + "update_app": { + "title": "Uygulamayı Güncelle", + "description": "Aşağıdaki butona tıklayarak yeni bir güncelleme olup olmadığını kontrol ederek Crater'ı kolayca güncelleyebilirsiniz", + "check_update": "Güncellemeleri kontrol et", + "avail_update": "Yeni Güncelleştirme Mevcut", + "next_version": "Sonraki versiyon", + "requirements": "Gereksinimler", + "update": "Şimdi Güncelleştir", + "update_progress": "Güncelleme sürüyor...", + "progress_text": "Sadece birkaç dakika sürecek. Lütfen güncelleştirme bitmeden ekranı yenilemeyin veya pencereyi kapatmayın", + "update_success": "Uygulama güncellendi! Tarayıcı pencereniz otomatik olarak yeniden yüklenirken lütfen bekleyin.", + "latest_message": "Mevcut güncelleştirme yok! En son sürümü kullanıyorsunuz.", + "current_version": "Şu Anki Sürüm", + "download_zip_file": "ZIP dosyasını indir", + "unzipping_package": "ZIP Paketi açılıyor", + "copying_files": "Dosyalar Kopyalanıyor", + "deleting_files": "Kullanılmayan dosyalar siliniyor", + "running_migrations": "Migration'lar çalıştırılıyor", + "finishing_update": "Güncelleme tamamlanıyor", + "update_failed": "Güncelleştirme Başarısız", + "update_failed_text": "Üzgünüz! Güncelleştirmeniz :{step} adımında başarısız oldu", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." + }, + "backup": { + "title": "Yedek | Yedekler", + "description": "Yedekleme, veritabanınızın dökümü ile birlikte belirttiğiniz dizinlerdeki tüm dosyaları içeren bir ZIP dosyasıdır", + "new_backup": "Yeni Yedek Ekle", + "create_backup": "Yedek Oluştur", + "select_backup_type": "Yedek Tipini Seçin", + "backup_confirm_delete": "Bu Yedeği geri alamayacaksın", + "path": "yol", + "new_disk": "Yeni Disk", + "created_at": "oluşturulma tarihi", + "size": "boyut", + "dropbox": "dosya Yönetimi", + "local": "lokal", + "healthy": "sağlıklı", + "amount_of_backups": "yedekleme miktarı", + "newest_backups": "en son yedek", + "used_storage": "kullanılan depolama", + "select_disk": "Diski Seçin", + "action": "Eylem", + "deleted_message": "Yedekleme, başarılı bir şekilde kaldırıldı", + "created_message": "Yedekleme, başarılı bir şekilde oluşturuldu", + "invalid_disk_credentials": "Seçili diskin kimlik bilgisi geçersiz" + }, + "disk": { + "title": "Dosya Diski | Dosya Diskleri", + "description": "By default, Crater will use your local disk for saving backups, avatar and other image files. You can configure more than one disk drivers like DigitalOcean, S3 and Dropbox according to your preference.", + "created_at": "oluşturulma tarihi", + "dropbox": "dropbox", + "name": "Ad", + "driver": "Driver", + "disk_type": "Tip", + "disk_name": "Disk İsmi", + "new_disk": "Yeni Disk Ekle", + "filesystem_driver": "Filesystem Driver", + "local_driver": "local Driver", + "local_root": "local Root", + "public_driver": "Public Driver", + "public_root": "Public Root", + "public_url": "Public URL", + "public_visibility": "Public Visibility", + "media_driver": "Media Driver", + "media_root": "Media Root", + "aws_driver": "AWS Driver", + "aws_key": "AWS Key", + "aws_secret": "AWS Secret", + "aws_region": "AWS Region", + "aws_bucket": "AWS Bucket", + "aws_root": "AWS Root", + "do_spaces_type": "Do Spaces type", + "do_spaces_key": "Do Spaces key", + "do_spaces_secret": "Do Spaces Secret", + "do_spaces_region": "Do Spaces Region", + "do_spaces_bucket": "Do Spaces Bucket", + "do_spaces_endpoint": "Do Spaces Endpoint", + "do_spaces_root": "Do Spaces Root", + "dropbox_type": "Dropbox Type", + "dropbox_token": "Dropbox Token", + "dropbox_key": "Dropbox Key", + "dropbox_secret": "Dropbox Secret", + "dropbox_app": "Dropbox App", + "dropbox_root": "Dropbox Root", + "default_driver": "Varsayılan Sürücü", + "is_default": "VARSAYILAN", + "set_default_disk": "Varsayılan Diski Ayarla", + "set_default_disk_confirm": "Bu disk varsayılan olarak ayarlanacak ve tüm yeni PDF'ler bu diske kaydedilecek", + "success_set_default_disk": "Disk başarıyla varsayılan olarak ayarlandı", + "save_pdf_to_disk": "PDF'leri Diske kaydet", + "disk_setting_description": " Her Fatura, Tahmin & Ödeme Makbuzu PDF'sinin bir kopyasını varsayılan diskinize otomatik olarak kaydetmek istiyorsanız bunu etkinleştirin. Bu seçeneğin aktif edilmesi, PDF'leri görüntülerken yükleme süresini azaltacaktır.", + "select_disk": "Diski Seçin", + "disk_settings": "Disk Ayarları", + "confirm_delete": "Belirtilen diskteki mevcut dosya ve klasörleriniz etkilenmeyecek ancak disk yapılandırmanız Crater'den silinecek", + "action": "Eylem", + "edit_file_disk": "Dosya Diskini Düzenle", + "success_create": "Disk başarıyla eklendi", + "success_update": "Disk başarıyla güncellendi", + "error": "Disk ekleme başarısız", + "deleted_message": "Dosya Diski başarıyla silindi", + "disk_variables_save_successfully": "Disk Başarıyla Konfigüre Edildi", + "disk_variables_save_error": "Disk konfigürasyonu başarısız.", + "invalid_disk_credentials": "Seçili diskin geçersiz kimlik bilgisi" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." + } + }, + "wizard": { + "account_info": "Hesap Bilgisi", + "account_info_desc": "Ana Yönetici hesabını oluşturmak için aşağıdaki ayrıntılar kullanılacaktır. Ayrıca, giriş yaptıktan sonra ayrıntıları istediğiniz zaman değiştirebilirsiniz.", + "name": "İsim", + "email": "E-posta", + "password": "Parola", + "confirm_password": "Parolayı doğrula", + "save_cont": "Kaydet ve Devam et", + "company_info": "Şirket Bilgileri", + "company_info_desc": "Bu bilgiler faturalarda gösterilecektir. Bunu daha sonra ayarlar sayfasında düzenleyebileceğinizi unutmayın.", + "company_name": "Şirket Adı", + "company_logo": "Şirket Logosu", + "logo_preview": "Logo Önizlemesi", + "preferences": "Tercihler", + "preferences_desc": "Sistem için varsayılan tercihler.", + "currency_set_alert": "The company's currency cannot be changed later.", + "country": "Ülke", + "state": "Eyalet", + "city": "İl", + "address": "Adres", + "street": "Sokak1 | Sokak2", + "phone": "Telefon", + "zip_code": "Posta Kodu", + "go_back": "Geri Git", + "currency": "Para Birimi", + "language": "Dil", + "time_zone": "Zaman Dilimi", + "fiscal_year": "Finansal Yıl", + "date_format": "Tarih Biçimi", + "from_address": "Gönderen Adresi", + "username": "Kullanıcı Adı", + "next": "Next", + "continue": "Continue", + "skip": "Skip", + "database": { + "database": "Site URL & Database", + "connection": "Database Connection", + "host": "Database Host", + "port": "Database Port", + "password": "Veritabanı Parolası", + "app_url": "App URL", + "app_domain": "App Domain", + "username": "Database Username", + "db_name": "Database Name", + "db_path": "Database Path", + "desc": "Create a database on your server and set the credentials using the form below." + }, + "permissions": { + "permissions": "Permissions", + "permission_confirm_title": "Are you sure you want to continue?", + "permission_confirm_desc": "Folder permission check failed", + "permission_desc": "Below is the list of folder permissions which are required in order for the app to work. If the permission check fails, make sure to update your folder permissions." + }, + "verify_domain": { + "title": "Domain Doğrulaması", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Verify Now", + "success": "Domain Doğrulaması Başarılı.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Doğrula ve Devam Et" + }, + "mail": { + "host": "Mail Host", + "port": "Mail Port", + "driver": "Mail Driver", + "secret": "Gizli", + "mailgun_secret": "Mailgun Secret", + "mailgun_domain": "Domain", + "mailgun_endpoint": "Mailgun Endpoint", + "ses_secret": "SES Secret", + "ses_key": "SES Key", + "password": "Posta Parolası", + "username": "Mail Username", + "mail_config": "Mail Configuration", + "from_name": "From Mail Name", + "from_mail": "From Mail Address", + "encryption": "Mail Encryption", + "mail_config_desc": "Below is the form for Configuring Email driver for sending emails from the app. You can also configure third party providers like Sendgrid, SES etc." + }, + "req": { + "system_req": "System Requirements", + "php_req_version": "Php (version {version} required)", + "check_req": "Check Requirements", + "system_req_desc": "Crater has a few server requirements. Make sure that your server has the required php version and all the extensions mentioned below." + }, + "errors": { + "migrate_failed": "Migrate Failed", + "database_variables_save_error": "Cannot write configuration to .env file. Please check its file permissions", + "mail_variables_save_error": "Email configuration failed.", + "connection_failed": "Veri tabanı bağlantısı başarısız", + "database_should_be_empty": "Veritabanı boş olmalı" + }, + "success": { + "mail_variables_save_successfully": "E-posta başarıyla konfigüre edildi", + "database_variables_save_successfully": "Veritabanı başarıyla konfigüre edildi." + } + }, + "validation": { + "invalid_phone": "Invalid Phone Number", + "invalid_url": "Invalid url (ex: http://www.craterapp.com)", + "invalid_domain_url": "Invalid url (ex: craterapp.com)", + "required": "Field is required", + "email_incorrect": "Yanlış Email.", + "email_already_taken": "The email has already been taken.", + "email_does_not_exist": "User with given email doesn't exist", + "item_unit_already_taken": "This item unit name has already been taken", + "payment_mode_already_taken": "This payment mode name has already been taken", + "send_reset_link": "Send Reset Link", + "not_yet": "Not yet? Send it again", + "password_min_length": "Parola en az {count} karakter içermelidir", + "name_min_length": "Name must have at least {count} letters.", + "prefix_min_length": "Prefix must have at least {count} letters.", + "enter_valid_tax_rate": "Enter valid tax rate", + "numbers_only": "Numbers Only.", + "characters_only": "Characters Only.", + "password_incorrect": "Parola ile onayı aynı olmalı", + "password_length": "Parola en az {count} karakter uzunluğunda olmalıdır.", + "qty_must_greater_than_zero": "Quantity must be greater than zero.", + "price_greater_than_zero": "Price must be greater than zero.", + "payment_greater_than_zero": "Payment must be greater than zero.", + "payment_greater_than_due_amount": "Entered Payment is more than due amount of this invoice.", + "quantity_maxlength": "Quantity should not be greater than 20 digits.", + "price_maxlength": "Price should not be greater than 20 digits.", + "price_minvalue": "Price should be greater than 0.", + "amount_maxlength": "Amount should not be greater than 20 digits.", + "amount_minvalue": "Amount should be greater than 0.", + "discount_maxlength": "Discount should not be greater than max discount", + "description_maxlength": "Description should not be greater than 255 characters.", + "subject_maxlength": "Subject should not be greater than 100 characters.", + "message_maxlength": "Message should not be greater than 255 characters.", + "maximum_options_error": "Maximum of {max} options selected. First remove a selected option to select another.", + "notes_maxlength": "Notes should not be greater than 65,000 characters.", + "address_maxlength": "Address should not be greater than 255 characters.", + "ref_number_maxlength": "Ref Number should not be greater than 255 characters.", + "prefix_maxlength": "Prefix should not be greater than 5 characters.", + "something_went_wrong": "something went wrong", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" + }, + "pdf_estimate_label": "Estimate", + "pdf_estimate_number": "Estimate Number", + "pdf_estimate_date": "Estimate Date", + "pdf_estimate_expire_date": "Expiry date", + "pdf_invoice_label": "Invoice", + "pdf_invoice_number": "Invoice Number", + "pdf_invoice_date": "Invoice Date", + "pdf_invoice_due_date": "Due date", + "pdf_notes": "Notes", + "pdf_items_label": "Items", + "pdf_quantity_label": "Quantity", + "pdf_price_label": "Price", + "pdf_discount_label": "Discount", + "pdf_amount_label": "Amount", + "pdf_subtotal": "Subtotal", + "pdf_total": "Total", + "pdf_payment_label": "Payment", + "pdf_payment_receipt_label": "PAYMENT RECEIPT", + "pdf_payment_date": "Payment Date", + "pdf_payment_number": "Payment Number", + "pdf_payment_mode": "Payment Mode", + "pdf_payment_amount_received_label": "Amount Received", + "pdf_expense_report_label": "EXPENSES REPORT", + "pdf_total_expenses_label": "TOTAL EXPENSE", + "pdf_profit_loss_label": "PROFIT & LOSS REPORT", + "pdf_sales_customers_label": "Sales Customer Report", + "pdf_sales_items_label": "Sales Item Report", + "pdf_tax_summery_label": "Tax Summary Report", + "pdf_income_label": "INCOME", + "pdf_net_profit_label": "NET PROFIT", + "pdf_customer_sales_report": "Sales Report: By Customer", + "pdf_total_sales_label": "TOTAL SALES", + "pdf_item_sales_label": "Sales Report: By Item", + "pdf_tax_report_label": "TAX REPORT", + "pdf_total_tax_label": "TOTAL TAX", + "pdf_tax_types_label": "Tax Types", + "pdf_expenses_label": "Expenses", + "pdf_bill_to": "Bill to,", + "pdf_ship_to": "Ship to,", + "pdf_received_from": "Received from:", + "pdf_tax_label": "Tax" +} diff --git a/resources/scripts/locales/vi.json b/resources/scripts/locales/vi.json index 560b70f16..462d26d0c 100644 --- a/resources/scripts/locales/vi.json +++ b/resources/scripts/locales/vi.json @@ -4,13 +4,15 @@ "customers": "Khách hàng", "items": "Mặt hàng", "invoices": "Hóa đơn", + "recurring-invoices": "Hóa đơn định kỳ", "expenses": "Chi phí", "estimates": "Ước tính", "payments": "Thanh toán", "reports": "Báo cáo", "settings": "Cài đặt", "logout": "Đăng xuất", - "users": "Người dùng" + "users": "Người dùng", + "modules": "Modules" }, "general": { "add_company": "Thêm công ty", @@ -18,15 +20,18 @@ "copy_pdf_url": "Sao chép Url PDF", "download_pdf": "tải PDF", "save": "Tiết kiệm", - "create": "Tạo mới", + "create": "Tạo nên", "cancel": "Huỷ bỏ", "update": "Cập nhật", "deselect": "Bỏ chọn", "download": "Tải xuống", "from_date": "Từ ngày", - "to_date": "Đến ngày", + "to_date": "Đến nay", "from": "Từ", "to": "Đến", + "ok": "OK", + "yes": "Đúng", + "no": "Không", "sort_by": "Sắp xếp theo", "ascending": "Tăng dần", "descending": "Giảm dần", @@ -34,12 +39,13 @@ "body": "Thân hình", "message": "Thông điệp", "send": "Gửi", + "preview": "Xem trước", "go_back": "Quay lại", "back_to_login": "Quay lại đăng nhập?", "home": "Trang Chủ", "filter": "Bộ lọc", "delete": "Xóa bỏ", - "edit": "Chỉnh sửa", + "edit": "Biên tập", "view": "Lượt xem", "add_new_item": "Thêm mục mới", "clear_all": "Làm sạch tất cả", @@ -52,19 +58,18 @@ "percentage": "Phần trăm", "tax": "THUẾ", "total_amount": "TỔNG CỘNG", - "bill_to": "Giao từ", - "ship_to": "Giao tới", + "bill_to": "Hoa đơn để", + "ship_to": "Tàu", "due": "Đến hạn", "draft": "Bản nháp", - "sent": "Gửi", + "sent": "Gởi", "all": "Tất cả", "select_all": "Chọn tất cả", + "select_template": "Chọn Template", "choose_file": "Bấm vào đây để chọn một tập tin", "choose_template": "Chọn một mẫu", "choose": "Chọn", - "remove": "Gỡ", - "powered_by": "Được cung cấp bởi", - "bytefury": "Bytefury", + "remove": "Tẩy", "select_a_status": "Chọn một trạng thái", "select_a_tax": "Chọn thuế", "search": "Tìm kiếm", @@ -82,12 +87,19 @@ "select_city": "Lựa chọn thành phố", "street_1": "đường số 1", "street_2": "Đường 2", - "action_failed": "Đã thất bại", + "action_failed": "Diễn: Đã thất bại", "retry": "Thử lại", "choose_note": "Chọn Ghi chú", "no_note_found": "Không tìm thấy ghi chú", "insert_note": "Chèn ghi chú", - "copied_pdf_url_clipboard": "Đã sao chép url PDF vào khay nhớ tạm!" + "copied_pdf_url_clipboard": "Đã sao chép url PDF vào khay nhớ tạm!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "Tài liệu", + "do_you_wish_to_continue": "Bạn có muốn tiếp tục không?", + "note": "Ghi chú", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" }, "dashboard": { "select_year": "Chọn năm", @@ -95,7 +107,8 @@ "due_amount": "Số tiền đến hạn", "customers": "Khách hàng", "invoices": "Hóa đơn", - "estimates": "Ước tính" + "estimates": "Ước tính", + "payments": "Payments" }, "chart_info": { "total_sales": "Bán hàng", @@ -126,7 +139,7 @@ }, "tax_types": { "name": "Tên", - "description": "Miêu tả", + "description": "Sự miêu tả", "percent": "Phần trăm", "compound_tax": "Thuế tổng hợp" }, @@ -136,8 +149,28 @@ "users": "Người dùng", "no_results_found": "Không tìm thấy kết quả nào" }, + "company_switcher": { + "label": "Đổi doanh nghiệp", + "no_results_found": "Không tìm thấy kết quả nào", + "add_new_company": "Thêm doanh nghiệp", + "new_company": "Doanh nghiệp mới", + "created_message": "Khởi tạo doanh nghiệp thành công" + }, + "dateRange": { + "today": "Hôm nay", + "this_week": "Tuần này", + "this_month": "Tháng này", + "this_quarter": "Quý này", + "this_year": "Năm nay", + "previous_week": "Tuần trước", + "previous_month": "Tháng trước", + "previous_quarter": "Quý trước", + "previous_year": "Năm trước", + "custom": "Tuỳ chỉnh" + }, "customers": { "title": "Khách hàng", + "prefix": "Tiền tố", "add_customer": "Thêm khách hàng", "contacts_list": "Danh sách khách hàng", "name": "Tên", @@ -150,8 +183,11 @@ "email": "E-mail", "address": "Địa chỉ", "phone": "Điện thoại", - "website": "Website", - "overview": "Tổng quan", + "website": "Trang mạng", + "overview": "Tổng quat", + "invoice_prefix": "Tiền tố hóa đơn", + "estimate_prefix": "Tiền tố ước tính", + "payment_prefix": "Tiền tố thanh toán", "enable_portal": "Bật Cổng thông tin", "country": "Quốc gia", "state": "Tiểu bang", @@ -160,9 +196,10 @@ "added_on": "Đã thêm vào", "action": "Hoạt động", "password": "Mật khẩu", + "confirm_password": "Xác nhận mật khẩu", "street_number": "Số đường", "primary_currency": "Tiền tệ chính", - "description": "Miêu tả", + "description": "Sự miêu tả", "add_new_customer": "Thêm khách hàng mới", "save_customer": "Lưu khách hàng", "update_customer": "Cập nhật khách hàng", @@ -170,6 +207,10 @@ "new_customer": "Khách hàng mới", "edit_customer": "Chỉnh sửa khách hàng", "basic_info": "Thông tin cơ bản", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", "billing_address": "Địa chỉ thanh toán", "shipping_address": "Địa chỉ giao hàng", "copy_billing_address": "Sao chép từ thanh toán", @@ -189,14 +230,16 @@ "confirm_delete": "Bạn sẽ không thể khôi phục khách hàng này và tất cả các Hóa đơn, Ước tính và Thanh toán có liên quan. | Bạn sẽ không thể khôi phục những khách hàng này và tất cả các Hóa đơn, Ước tính và Thanh toán có liên quan.", "created_message": "Khách hàng được tạo thành công", "updated_message": "Đã cập nhật khách hàng thành công", - "deleted_message": "Đã xóa khách hàng thành công | Đã xóa khách hàng thành công" + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "Đã xóa khách hàng thành công | Đã xóa khách hàng thành công", + "edit_currency_not_allowed": "Không thể đổi tiền tệ khi bản dịch đã được tạo." }, "items": { "title": "Mặt hàng", "items_list": "Danh sách mặt hàng", "name": "Tên", "unit": "Đơn vị", - "description": "Miêu tả", + "description": "Sự miêu tả", "added_on": "Đã thêm vào", "price": "Giá bán", "date_of_creation": "Ngày tạo", @@ -207,7 +250,7 @@ "update_item": "Cập nhật mặt hàng", "item": "Mặt hàng | Mặt hàng", "add_new_item": "Thêm mục mới", - "new_item": "Sản phẩm mới", + "new_item": "Vật phẩm mới", "edit_item": "Chỉnh sửa mục", "no_items": "Chưa có mặt hàng nào!", "list_of_items": "Phần này sẽ chứa danh sách các mục.", @@ -221,25 +264,27 @@ }, "estimates": { "title": "Ước tính", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", "estimate": "Ước tính | Ước tính", "estimates_list": "Danh sách ước tính", "days": "{days} Ngày", - "months": "{months} tháng", - "years": "{years} Năm", + "months": "{tháng} tháng", + "years": "{năm} Năm", "all": "Tất cả", "paid": "Đã thanh toán", "unpaid": "Chưa thanh toán", "customer": "KHÁCH HÀNG", - "ref_no": "SỐ THAM CHIẾU.", + "ref_no": "REF KHÔNG.", "number": "CON SỐ", - "amount_due": "SỐ TIỀN THANH TOÁN", + "amount_due": "SỐ TIỀN ĐÚNG", "partially_paid": "Thanh toán một phần", "total": "Toàn bộ", "discount": "Giảm giá", "sub_total": "Tổng phụ", "estimate_number": "Số ước tính", "ref_number": "Số REF", - "contact": "Liên hệ", + "contact": "Tiếp xúc", "add_item": "Thêm một mặt hàng", "date": "Ngày", "due_date": "Ngày đáo hạn", @@ -268,12 +313,14 @@ "mark_as_sent_successfully": "Ước tính được đánh dấu là đã gửi thành công", "send_estimate_successfully": "Ước tính đã được gửi thành công", "errors": { - "required": "Trường không được bỏ trống." + "required": "Lĩnh vực được yêu cầu" }, "accepted": "Đã được chấp nhận", "rejected": "Từ chối", - "sent": "Gửi", + "expired": "Expired", + "sent": "Gởi", "draft": "Bản nháp", + "viewed": "Viewed", "declined": "Suy giảm", "new_estimate": "Ước tính mới", "add_new_estimate": "Thêm ước tính mới", @@ -292,10 +339,10 @@ "created_message": "Ước tính được tạo thành công", "updated_message": "Đã cập nhật ước tính thành công", "deleted_message": "Đã xóa ước tính thành công | Đã xóa ước tính thành công", - "something_went_wrong": "Có gì đó không ổn", + "something_went_wrong": "có gì đó không ổn", "item": { "title": "Danh mục", - "description": "Miêu tả", + "description": "Sự miêu tả", "quantity": "Định lượng", "price": "Giá bán", "discount": "Giảm giá", @@ -310,10 +357,13 @@ }, "invoices": { "title": "Hóa đơn", + "download": "Download", + "pay_invoice": "Pay Invoice", "invoices_list": "Danh sách hóa đơn", + "invoice_information": "Invoice Information", "days": "{days} Ngày", - "months": "{months} tháng", - "years": "{years} Năm", + "months": "{tháng} tháng", + "years": "{năm} Năm", "all": "Tất cả", "paid": "Đã thanh toán", "unpaid": "Chưa thanh toán", @@ -322,9 +372,9 @@ "completed": "Đã hoàn thành", "customer": "KHÁCH HÀNG", "paid_status": "TRẠNG THÁI ĐÃ TRẢ TIỀN", - "ref_no": "SỐ THAM CHIẾU.", - "number": "SỐ", - "amount_due": "SỐ TIỀN THANH TOÁN", + "ref_no": "REF KHÔNG.", + "number": "CON SỐ", + "amount_due": "SỐ TIỀN ĐÚNG", "partially_paid": "Thanh toán một phần", "total": "Toàn bộ", "discount": "Giảm giá", @@ -332,7 +382,7 @@ "invoice": "Hóa đơn | Hóa đơn", "invoice_number": "Số hóa đơn", "ref_number": "Số REF", - "contact": "Liên hệ", + "contact": "Tiếp xúc", "add_item": "Thêm một mặt hàng", "date": "Ngày", "due_date": "Ngày đáo hạn", @@ -345,10 +395,13 @@ "send_invoice": "Gửi hóa đơn", "resend_invoice": "Gửi lại hóa đơn", "invoice_template": "Mẫu hóa đơn", + "conversion_message": "Hóa đơn được sao chép thành công", "template": "Bản mẫu", "mark_as_sent": "Đánh dấu là đã gửi", "confirm_send_invoice": "Hóa đơn này sẽ được gửi qua email cho khách hàng", "invoice_mark_as_sent": "Hóa đơn này sẽ được đánh dấu là đã gửi", + "confirm_mark_as_accepted": "Hóa đơn này sẽ được đánh dấu là Đã chấp nhận", + "confirm_mark_as_rejected": "Hóa đơn này sẽ được đánh dấu là Đã từ chối", "confirm_send": "Hóa đơn này sẽ được gửi qua email cho khách hàng", "invoice_date": "Ngày lập hóa đơn", "record_payment": "Ghi lại Thanh toán", @@ -360,6 +413,8 @@ "update_invoice": "Cập nhật hóa đơn", "add_new_tax": "Thêm thuế mới", "no_invoices": "Chưa có hóa đơn!", + "mark_as_rejected": "Đánh dấu là bị từ chối", + "mark_as_accepted": "Đánh dấu là đã chấp nhận", "list_of_invoices": "Phần này sẽ chứa danh sách các hóa đơn.", "select_invoice": "Chọn hóa đơn", "no_matching_invoices": "Không có hóa đơn phù hợp!", @@ -370,7 +425,7 @@ "confirm_clone": "Hóa đơn này sẽ được sao chép vào một Hóa đơn mới", "item": { "title": "Danh mục", - "description": "Miêu tả", + "description": "Sự miêu tả", "quantity": "Định lượng", "price": "Giá bán", "discount": "Giảm giá", @@ -382,6 +437,7 @@ "select_an_item": "Nhập hoặc nhấp để chọn một mục", "type_item_description": "Loại Mục Mô tả (tùy chọn)" }, + "payment_attached_message": "Một trong các hóa đơn được chọn đã có một khoản thanh toán được đính kèm. Đảm bảo xóa các khoản thanh toán đính kèm trước để tiếp tục xóa", "confirm_delete": "Bạn sẽ không thể khôi phục Hóa đơn này | Bạn sẽ không thể khôi phục các Hóa đơn này", "created_message": "Hóa đơn đã được tạo thành công", "updated_message": "Đã cập nhật hóa đơn thành công", @@ -390,6 +446,115 @@ "something_went_wrong": "có gì đó không ổn", "invalid_due_amount_message": "Tổng số tiền trên Hóa đơn không được nhỏ hơn tổng số tiền đã thanh toán cho Hóa đơn này. Vui lòng cập nhật hóa đơn hoặc xóa các khoản thanh toán liên quan để tiếp tục." }, + "recurring_invoices": { + "title": "Hóa đơn định kỳ", + "invoices_list": "Hóa đơn định kỳ", + "days": "{days} Ngày", + "months": "{months} Tháng", + "years": "{years} Năm", + "all": "Tất cả", + "paid": "Đã thanh toán", + "unpaid": "Chưa thanh toán", + "viewed": "Đã xem", + "overdue": "Quá hạn", + "active": "Hoạt động", + "completed": "Hoàn thành", + "customer": "KHÁCH HÀNG", + "paid_status": "PAID STATUS", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Cập nhật Hóa đơn định kỳ", + "add_new_tax": "Thêm thuế mới", + "no_invoices": "Chưa có Hóa đơn định kỳ nào!", + "mark_as_rejected": "Đánh dấu là bị từ chối", + "mark_as_accepted": "Đánh dấu là đã chấp nhận", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, "payments": { "title": "Thanh toán", "payments_list": "Danh sách thanh toán", @@ -398,7 +563,7 @@ "date": "Ngày", "amount": "Số tiền", "action": "Hoạt động", - "payment_number": "Mã Số Thanh Toán", + "payment_number": "Số tiền phải trả", "payment_mode": "Phương thức thanh toán", "invoice": "Hóa đơn", "note": "Ghi chú", @@ -421,7 +586,7 @@ "confirm_mark_as_sent": "Ước tính này sẽ được đánh dấu là đã gửi", "confirm_send_payment": "Khoản thanh toán này sẽ được gửi qua email cho khách hàng", "send_payment_successfully": "Thanh toán đã được gửi thành công", - "something_went_wrong": "Có gì đó không ổn", + "something_went_wrong": "có gì đó không ổn", "confirm_delete": "Bạn sẽ không thể khôi phục Thanh toán này | Bạn sẽ không thể khôi phục các Khoản thanh toán này", "created_message": "Thanh toán được tạo thành công", "updated_message": "Đã cập nhật thanh toán thành công", @@ -434,12 +599,13 @@ "select_a_customer": "Chọn một khách hàng", "expense_title": "Tiêu đề", "customer": "khách hàng", - "contact": "Liên hệ", + "currency": "Currency", + "contact": "Tiếp xúc", "category": "thể loại", "from_date": "Từ ngày", - "to_date": "Đến ngày", + "to_date": "Đến nay", "expense_date": "Ngày", - "description": "Miêu tả", + "description": "Sự miêu tả", "receipt": "Biên lai", "amount": "Số tiền", "action": "Hoạt động", @@ -465,7 +631,7 @@ "categories_list": "Danh sách hạng mục", "title": "Tiêu đề", "name": "Tên", - "description": "Miêu tả", + "description": "Sự miêu tả", "amount": "Số tiền", "actions": "Hành động", "add_category": "thêm thể loại", @@ -487,11 +653,56 @@ "enter_password": "Nhập mật khẩu", "retype_password": "Gõ lại mật khẩu" }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, "users": { "title": "Người dùng", "users_list": "Danh sách người dùng", "name": "Tên", - "description": "Miêu tả", + "description": "Sự miêu tả", "added_on": "Đã thêm vào", "date_of_creation": "Ngày tạo", "action": "Hoạt động", @@ -501,7 +712,7 @@ "user": "Người dùng | Người dùng", "add_new_user": "Thêm người dùng mới", "new_user": "Người dùng mới", - "edit_user": "Chỉnh sửa gười dùng", + "edit_user": "Người dùng biên tập", "no_users": "Chưa có người dùng nào!", "list_of_users": "Phần này sẽ chứa danh sách người dùng.", "email": "E-mail", @@ -511,35 +722,37 @@ "confirm_delete": "Bạn sẽ không thể khôi phục Người dùng này | Bạn sẽ không thể khôi phục những Người dùng này", "created_message": "Người dùng đã được tạo thành công", "updated_message": "Đã cập nhật người dùng thành công", - "deleted_message": "Đã xóa người dùng thành công | Đã xóa người dùng thành công" + "deleted_message": "Đã xóa người dùng thành công | Đã xóa người dùng thành công", + "select_company_role": "Select Role for {company}", + "companies": "Companies" }, "reports": { "title": "Báo cáo", "from_date": "Từ ngày", - "to_date": "Đến ngày", + "to_date": "Đến nay", "status": "Trạng thái", "paid": "Đã thanh toán", "unpaid": "Chưa thanh toán", - "download_pdf": "Tải PDF", + "download_pdf": "tải PDF", "view_pdf": "Xem PDF", "update_report": "Cập nhật báo cáo", "report": "Báo cáo | Báo cáo", "profit_loss": { "profit_loss": "Lợi nhuận", - "to_date": "Đến ngày", + "to_date": "Đến nay", "from_date": "Từ ngày", "date_range": "Chọn phạm vi ngày" }, "sales": { "sales": "Bán hàng", "date_range": "Chọn phạm vi ngày", - "to_date": "Đến ngày", + "to_date": "Đến nay", "from_date": "Từ ngày", "report_type": "Loại báo cáo" }, "taxes": { "taxes": "Thuế", - "to_date": "Đến ngày", + "to_date": "Đến nay", "from_date": "Từ ngày", "date_range": "Chọn phạm vi ngày" }, @@ -569,7 +782,7 @@ "category": "thể loại", "date": "Ngày", "amount": "Số tiền", - "to_date": "Đến ngày", + "to_date": "Đến nay", "from_date": "Từ ngày", "date_range": "Chọn phạm vi ngày" } @@ -588,7 +801,12 @@ "file_disk": "Đĩa tệp", "custom_fields": "Trường tùy chỉnh", "payment_modes": "Phương thức thanh toán", - "notes": "Ghi chú" + "notes": "Ghi chú", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." }, "title": "Cài đặt", "setting": "Cài đặt | Cài đặt", @@ -619,11 +837,11 @@ "host": "Máy chủ Thư", "port": "Cổng thư", "driver": "Trình điều khiển Thư", - "secret": "Khóa", - "mailgun_secret": "Khóa Mailgun", + "secret": "Bí mật", + "mailgun_secret": "Bí mật Mailgun", "mailgun_domain": "Miền", "mailgun_endpoint": "Điểm cuối của Mailgun", - "ses_secret": "Khóa SES", + "ses_secret": "Bí mật SES", "ses_key": "Khóa SES", "password": "Mật khẩu thư", "username": "Tên người dùng thư", @@ -649,8 +867,14 @@ "city": "Tp.", "address": "Địa chỉ", "zip": "Zip", - "save": "Lưu", - "updated_message": "Thông tin công ty được cập nhật thành công" + "save": "Tiết kiệm", + "delete": "Delete", + "updated_message": "Thông tin công ty được cập nhật thành công", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" }, "custom_fields": { "title": "Trường tùy chỉnh", @@ -661,6 +885,7 @@ "label": "Nhãn", "type": "Kiểu", "name": "Tên", + "slug": "Slug", "required": "Cần thiết", "placeholder": "Trình giữ chỗ", "help_text": "Văn bản trợ giúp", @@ -686,91 +911,104 @@ "select_relative_date": "Chọn ngày tương đối", "ticked_by_default": "Được đánh dấu theo mặc định", "updated_message": "Đã cập nhật trường tùy chỉnh thành công", - "added_message": "Trường tùy chỉnh đã được thêm thành công" + "added_message": "Trường tùy chỉnh đã được thêm thành công", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." }, "customization": { "customization": "sự tùy biến", - "save": "Tiết kiệm", - "addresses": { - "title": "Địa chỉ", - "section_description": "Bạn có thể đặt Định dạng Địa chỉ Thanh toán của Khách hàng và Địa chỉ Giao hàng của Khách hàng (Chỉ hiển thị dưới dạng PDF).", - "customer_billing_address": "Địa chỉ thanh toán của khách hàng", - "customer_shipping_address": "Địa chỉ giao hàng của khách hàng", - "company_address": "địa chỉ công ty", - "insert_fields": "Chèn trường", - "contact": "Liên hệ", - "address": "Địa chỉ", - "display_name": "Tên hiển thị", - "primary_contact_name": "Tên liên hệ chính", - "email": "E-mail", - "website": "Website", - "name": "Tên", - "country": "Quốc gia", - "state": "Tiểu bang", - "city": "Tp.", - "company_name": "Tên công ty", - "address_street_1": "Địa chỉ Đường 1", - "address_street_2": "Địa chỉ Đường 2", - "phone": "Điện thoại", - "zip_code": "Mã Bưu Chính", - "address_setting_updated": "Đã cập nhật cài đặt địa chỉ thành công" - }, "updated_message": "Thông tin công ty được cập nhật thành công", + "save": "Tiết kiệm", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", "invoices": { "title": "Hóa đơn", - "notes": "Ghi chú", - "invoice_prefix": "Tiền tố hóa đơn", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", "default_invoice_email_body": "Nội dung email hóa đơn mặc định", - "invoice_settings": "Cài đặt hóa đơn", - "autogenerate_invoice_number": "Tự động tạo số hóa đơn", - "autogenerate_invoice_number_desc": "Tắt tính năng này, Nếu bạn không muốn tự động tạo số hóa đơn mỗi khi bạn tạo hóa đơn mới.", - "invoice_email_attachment": "Gửi hóa đơn dưới dạng tệp đính kèm", - "invoice_email_attachment_setting_description": "Bật tính năng này nếu bạn muốn gửi hóa đơn dưới dạng tệp đính kèm email. Xin lưu ý rằng nút 'Xem Hóa đơn' trong email sẽ không được hiển thị nữa khi được bật.", - "enter_invoice_prefix": "Nhập tiền tố hóa đơn", - "terms_and_conditions": "Các điều khoản và điều kiện", "company_address_format": "Định dạng địa chỉ công ty", "shipping_address_format": "Định dạng địa chỉ giao hàng", "billing_address_format": "Định dạng địa chỉ thanh toán", - "invoice_settings_updated": "Đã cập nhật cài đặt hóa đơn thành công" + "invoice_email_attachment": "Gửi hóa đơn dưới dạng tệp đính kèm", + "invoice_email_attachment_setting_description": "Bật tính năng này nếu bạn muốn gửi hóa đơn dưới dạng tệp đính kèm email. Xin lưu ý rằng nút 'Xem Hóa đơn' trong email sẽ không được hiển thị nữa khi được bật.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." }, "estimates": { "title": "Ước tính", - "estimate_prefix": "Tiền tố ước tính", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", "default_estimate_email_body": "Nội dung Email Ước tính Mặc định", - "estimate_settings": "Cài đặt ước tính", - "autogenerate_estimate_number": "Tự động tạo số ước tính", - "estimate_setting_description": "Tắt tính năng này, nếu bạn không muốn tự động tạo số ước tính mỗi khi bạn tạo ước tính mới.", - "estimate_email_attachment": "Gửi ước tính dưới dạng tệp đính kèm", - "estimate_email_attachment_setting_description": "Bật tính năng này nếu bạn muốn gửi ước tính dưới dạng tệp đính kèm email. Xin lưu ý rằng nút 'Xem Ước tính' trong email sẽ không được hiển thị nữa khi được bật.", - "enter_estimate_prefix": "Nhập tiền tố estmiate", - "estimate_setting_updated": "Đã cập nhật cài đặt ước tính thành công", "company_address_format": "Định dạng địa chỉ công ty", + "shipping_address_format": "Định dạng địa chỉ giao hàng", "billing_address_format": "Định dạng địa chỉ thanh toán", - "shipping_address_format": "Định dạng địa chỉ giao hàng" + "estimate_email_attachment": "Gửi ước tính dưới dạng tệp đính kèm", + "estimate_email_attachment_setting_description": "Bật tính năng này nếu bạn muốn gửi ước tính dưới dạng tệp đính kèm email. Xin lưu ý rằng nút 'Xem Ước tính' trong email sẽ không được hiển thị nữa khi được bật.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" }, "payments": { "title": "Thanh toán", - "description": "Các phương thức giao dịch thanh toán", - "payment_prefix": "Tiền tố thanh toán", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", "default_payment_email_body": "Nội dung Email Thanh toán Mặc định", - "payment_settings": "Cài đặt thanh toán", - "autogenerate_payment_number": "Tự động tạo số thanh toán", - "payment_setting_description": "Tắt tính năng này, nếu bạn không muốn tự động tạo số thanh toán mỗi khi bạn tạo một khoản thanh toán mới.", + "company_address_format": "Định dạng địa chỉ công ty", + "from_customer_address_format": "Từ định dạng địa chỉ khách hàng", "payment_email_attachment": "Gửi thanh toán dưới dạng tệp đính kèm", "payment_email_attachment_setting_description": "Bật tính năng này nếu bạn muốn gửi biên nhận thanh toán dưới dạng tệp đính kèm email. Xin lưu ý rằng nút 'Xem Thanh toán' trong email sẽ không được hiển thị nữa khi được bật.", - "enter_payment_prefix": "Nhập tiền tố thanh toán", - "payment_setting_updated": "Đã cập nhật cài đặt thanh toán thành công", - "payment_modes": "Phương thức thanh toán", - "add_payment_mode": "Thêm phương thức thanh toán", - "edit_payment_mode": "Chỉnh sửa Phương thức Thanh toán", - "mode_name": "Tên chế độ", - "payment_mode_added": "Phương thức thanh toán đã được thêm", - "payment_mode_updated": "Đã cập nhật phương thức thanh toán", - "payment_mode_confirm_delete": "Bạn sẽ không thể khôi phục Phương thức thanh toán này", - "already_in_use": "Phương thức thanh toán đã được sử dụng", - "deleted_message": "Phương thức thanh toán đã được xóa thành công", - "company_address_format": "Định dạng địa chỉ công ty", - "from_customer_address_format": "Từ định dạng địa chỉ khách hàng" + "payment_settings_updated": "Payment Settings updated successfully" }, "items": { "title": "Mặt hàng", @@ -807,7 +1045,7 @@ "password": "Mật khẩu", "confirm_password": "Xác nhận mật khẩu", "account_settings": "Cài đặt tài khoản", - "save": "Lưu", + "save": "Tiết kiệm", "section_description": "Bạn có thể cập nhật tên, email của mình", "updated_message": "Đã cập nhật cài đặt tài khoản thành công" }, @@ -825,10 +1063,61 @@ "invoice_viewed_desc": "Khi khách hàng của bạn xem hóa đơn được gửi qua bảng điều khiển miệng núi lửa.", "estimate_viewed": "Ước tính đã xem", "estimate_viewed_desc": "Khi khách hàng của bạn xem ước tính được gửi qua bảng điều khiển miệng núi lửa.", - "save": "Lưu", + "save": "Tiết kiệm", "email_save_message": "Email đã được lưu thành công", "please_enter_email": "Vui lòng nhập Email" }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, "tax_types": { "title": "Các loại thuế", "add_tax": "Thêm thuế", @@ -848,6 +1137,18 @@ "confirm_delete": "Bạn sẽ không thể khôi phục Loại thuế này", "already_in_use": "Thuế đã được sử dụng" }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, "expense_category": { "title": "Hạng mục Chi phí", "action": "Hoạt động", @@ -856,7 +1157,7 @@ "add_category": "thêm thể loại", "edit_category": "Chỉnh sửa danh mục", "category_name": "tên danh mục", - "category_description": "Miêu tả", + "category_description": "Sự miêu tả", "created_message": "Danh mục Chi phí đã được tạo thành công", "deleted_message": "Đã xóa thành công danh mục chi phí", "updated_message": "Đã cập nhật danh mục chi phí thành công", @@ -872,14 +1173,23 @@ "discount_setting": "Cài đặt chiết khấu", "discount_per_item": "Giảm giá cho mỗi mặt hàng", "discount_setting_description": "Bật tính năng này nếu bạn muốn thêm Giảm giá vào các mặt hàng hóa đơn riêng lẻ. Theo mặc định, Giảm giá được thêm trực tiếp vào hóa đơn.", - "save": "Lưu", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", + "save": "Tiết kiệm", "preference": "Sở thích | Sở thích", "general_settings": "Tùy chọn mặc định cho hệ thống.", "updated_message": "Đã cập nhật thành công các tùy chọn", "select_language": "Chọn ngôn ngữ", "select_time_zone": "Chọn múi giờ", "select_date_format": "Chọn định dạng ngày", - "select_financial_year": "Chọn năm tài chính" + "select_financial_year": "Chọn năm tài chính", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" }, "update_app": { "title": "Cập nhật ứng dụng", @@ -901,7 +1211,8 @@ "running_migrations": "Chạy di cư", "finishing_update": "Cập nhật kết thúc", "update_failed": "Cập nhật không thành công", - "update_failed_text": "Lấy làm tiếc! Cập nhật của bạn không thành công vào: bước {step}" + "update_failed_text": "Lấy làm tiếc! Cập nhật của bạn không thành công vào: bước {step}", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." }, "backup": { "title": "Sao lưu | Sao lưu", @@ -947,7 +1258,7 @@ "media_root": "Gốc phương tiện", "aws_driver": "Trình điều khiển AWS", "aws_key": "Khóa AWS", - "aws_secret": "Khóa AWS", + "aws_secret": "Bí mật AWS", "aws_region": "Khu vực AWS", "aws_bucket": "Nhóm AWS", "aws_root": "Gốc AWS", @@ -961,7 +1272,7 @@ "dropbox_type": "Loại hộp chứa", "dropbox_token": "Mã thông báo Dropbox", "dropbox_key": "Khóa Dropbox", - "dropbox_secret": "Khóa Dropbox", + "dropbox_secret": "Bí mật Dropbox", "dropbox_app": "Ứng dụng Dropbox", "dropbox_root": "Gốc Dropbox", "default_driver": "Trình điều khiển mặc định", @@ -983,6 +1294,18 @@ "disk_variables_save_successfully": "Đã cấu hình đĩa thành công", "disk_variables_save_error": "Cấu hình đĩa không thành công.", "invalid_disk_credentials": "Thông tin đăng nhập không hợp lệ của đĩa đã chọn" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." } }, "wizard": { @@ -992,7 +1315,7 @@ "email": "E-mail", "password": "Mật khẩu", "confirm_password": "Xác nhận mật khẩu", - "save_cont": "Lưu", + "save_cont": "Tiết kiệm", "company_info": "Thông tin công ty", "company_info_desc": "Thông tin này sẽ được hiển thị trên hóa đơn. Lưu ý rằng bạn có thể chỉnh sửa điều này sau trên trang cài đặt.", "company_name": "Tên công ty", @@ -1000,6 +1323,7 @@ "logo_preview": "Xem trước Logo", "preferences": "Sở thích", "preferences_desc": "Tùy chọn mặc định cho hệ thống.", + "currency_set_alert": "The company's currency cannot be changed later.", "country": "Quốc gia", "state": "Tiểu bang", "city": "Tp.", @@ -1037,15 +1361,24 @@ "permission_confirm_desc": "Kiểm tra quyền thư mục không thành công", "permission_desc": "Dưới đây là danh sách các quyền đối với thư mục được yêu cầu để ứng dụng hoạt động. Nếu kiểm tra quyền không thành công, hãy đảm bảo cập nhật quyền thư mục của bạn." }, + "verify_domain": { + "title": "Domain Verification", + "desc": "Crater uses Session based authentication which requires domain verification for security purposes. Please enter the domain on which you will be accessing your web application.", + "app_domain": "App Domain", + "verify_now": "Verify Now", + "success": "Domain Verify Successfully.", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "Verify And Continue" + }, "mail": { "host": "Máy chủ Thư", "port": "Cổng thư", "driver": "Trình điều khiển Thư", - "secret": "Khóa", - "mailgun_secret": "Khóa Mailgun", + "secret": "Bí mật", + "mailgun_secret": "Bí mật Mailgun", "mailgun_domain": "Miền", "mailgun_endpoint": "Điểm cuối của Mailgun", - "ses_secret": "Khóa SES", + "ses_secret": "Bí mật SES", "ses_key": "Khóa SES", "password": "Mật khẩu thư", "username": "Tên người dùng thư", @@ -1057,7 +1390,7 @@ }, "req": { "system_req": "yêu cầu hệ thống", - "php_req_version": "Php (version {version} required)", + "php_req_version": "Php (bắt buộc phải có phiên bản {version})", "check_req": "Kiểm tra yêu cầu", "system_req_desc": "Crater có một số yêu cầu máy chủ. Đảm bảo rằng máy chủ của bạn có phiên bản php bắt buộc và tất cả các phần mở rộng được đề cập bên dưới." }, @@ -1075,8 +1408,8 @@ }, "validation": { "invalid_phone": "Số điện thoại không hợp lệ", - "invalid_url": "Url không hợp lệ (ví dụ: http://www.craterapp.com)", - "invalid_domain_url": "Url không hợp lệ (ví dụ: craterapp.com)", + "invalid_url": "Url không hợp lệ (ví dụ: http://www.crater.com)", + "invalid_domain_url": "Url không hợp lệ (ví dụ: crater.com)", "required": "Lĩnh vực được yêu cầu", "email_incorrect": "Email không chính xác.", "email_already_taken": "Lá thư đã được lấy đi.", @@ -1087,6 +1420,7 @@ "not_yet": "Chưa? Gửi lại", "password_min_length": "Mật khẩu phải chứa {count} ký tự", "name_min_length": "Tên phải có ít nhất {count} chữ cái.", + "prefix_min_length": "Prefix must have at least {count} letters.", "enter_valid_tax_rate": "Nhập thuế suất hợp lệ", "numbers_only": "Chỉ số.", "characters_only": "Chỉ nhân vật.", @@ -1101,6 +1435,7 @@ "price_minvalue": "Giá phải lớn hơn 0.", "amount_maxlength": "Số tiền không được lớn hơn 20 chữ số.", "amount_minvalue": "Số tiền phải lớn hơn 0.", + "discount_maxlength": "Discount should not be greater than max discount", "description_maxlength": "Mô tả không được lớn hơn 65.000 ký tự.", "subject_maxlength": "Chủ đề không được lớn hơn 100 ký tự.", "message_maxlength": "Tin nhắn không được lớn hơn 255 ký tự.", @@ -1109,7 +1444,38 @@ "address_maxlength": "Địa chỉ không được lớn hơn 255 ký tự.", "ref_number_maxlength": "Số tham chiếu không được lớn hơn 255 ký tự.", "prefix_maxlength": "Tiền tố không được lớn hơn 5 ký tự.", - "something_went_wrong": "có gì đó không ổn" + "something_went_wrong": "có gì đó không ổn", + "number_length_minvalue": "Number length should be greater than 0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" }, "pdf_estimate_label": "Ước tính", "pdf_estimate_number": "Số ước tính", @@ -1141,15 +1507,15 @@ "pdf_tax_summery_label": "Báo cáo Tóm tắt Thuế", "pdf_income_label": "THU NHẬP = EARNINGS", "pdf_net_profit_label": "LỢI NHUẬN RÒNG", - "pdf_customer_sales_report": "Báo cáo bán hàng: Theo khách hàng", + "pdf_customer_sales_report": "Báo cáo bán hàng: Bởi khách hàng", "pdf_total_sales_label": "TỔNG DOANH SỐ BÁN HÀNG", "pdf_item_sales_label": "Báo cáo bán hàng: Theo mặt hàng", "pdf_tax_report_label": "BÁO CÁO THUẾ", "pdf_total_tax_label": "TỔNG THUẾ", "pdf_tax_types_label": "Các loại thuế", "pdf_expenses_label": "Chi phí", - "pdf_bill_to": "Xuất từ,", - "pdf_ship_to": "Chuyển tới,", - "pdf_received_from": "Nhận từ:", - "pdf_tax_label": "Thuế" + "pdf_bill_to": "Hoa đơn để,", + "pdf_ship_to": "Tàu,", + "pdf_received_from": "Nhận được tư:", + "pdf_tax_label": "Tax" } diff --git a/resources/scripts/locales/zh.json b/resources/scripts/locales/zh.json new file mode 100644 index 000000000..64b970dda --- /dev/null +++ b/resources/scripts/locales/zh.json @@ -0,0 +1,1521 @@ +{ + "navigation": { + "dashboard": "控制面板", + "customers": "客户", + "items": "商品", + "invoices": "發票", + "recurring-invoices": "定期發票", + "expenses": "支出", + "estimates": "報價", + "payments": "付款", + "reports": "報告", + "settings": "設定", + "logout": "登出", + "users": "使用者", + "modules": "Modules" + }, + "general": { + "add_company": "新增公司", + "view_pdf": "查閱PDF", + "copy_pdf_url": "複製PDF位址", + "download_pdf": "下載 PDF", + "save": "儲存", + "create": "新增", + "cancel": "取消", + "update": "更新", + "deselect": "取消選取", + "download": "下載", + "from_date": "啟始日", + "to_date": "終止日", + "from": "從", + "to": "至", + "ok": "好", + "yes": "確定", + "no": "否", + "sort_by": "排序方式", + "ascending": "遞增", + "descending": "遞減", + "subject": "主題", + "body": "內文", + "message": "訊息", + "send": "傳送", + "preview": "預覽", + "go_back": "返回", + "back_to_login": "返回登入?", + "home": "首頁", + "filter": "篩選", + "delete": "刪除", + "edit": "編輯", + "view": "瀏覽", + "add_new_item": "新增商品", + "clear_all": "全部清除", + "showing": "顯示", + "of": "的", + "actions": "操作", + "subtotal": "小計", + "discount": "折扣", + "fixed": "固定", + "percentage": "百分比", + "tax": "稅項", + "total_amount": "總額", + "bill_to": "帳單地址", + "ship_to": "配送地址", + "due": "到期", + "draft": "草稿", + "sent": "已傳送", + "all": "全部", + "select_all": "選擇全部", + "select_template": "選擇範本", + "choose_file": "點擊這此選擇檔案", + "choose_template": "選擇模板", + "choose": "選擇", + "remove": "移除", + "select_a_status": "選擇狀態", + "select_a_tax": "選擇稅項", + "search": "搜尋", + "are_you_sure": "是否確定?", + "list_is_empty": "清單為空.", + "no_tax_found": "沒有找到稅項!", + "four_zero_four": "404", + "you_got_lost": "不好! 發生問題了!", + "go_home": "返回首頁", + "test_mail_conf": "測試郵寄配置", + "send_mail_successfully": "郵件傳送成功", + "setting_updated": "成功更新設定", + "select_state": "請選擇市區", + "select_country": "請選國家", + "select_city": "選擇城市", + "street_1": "街道1", + "street_2": "街道2", + "action_failed": "操作失敗", + "retry": "重試", + "choose_note": "選擇備註", + "no_note_found": "沒有找到備註", + "insert_note": "插入備註", + "copied_pdf_url_clipboard": "複製PDF位址到剪貼簿!", + "copied_url_clipboard": "Copied url to clipboard!", + "docs": "文檔", + "do_you_wish_to_continue": "你確定要繼續?", + "note": "備註", + "pay_invoice": "Pay Invoice", + "login_successfully": "Logged in successfully!", + "logged_out_successfully": "Logged out successfully" + }, + "dashboard": { + "select_year": "選擇年份", + "cards": { + "due_amount": "應付金額", + "customers": "客户", + "invoices": "發票", + "estimates": "報價", + "payments": "Payments" + }, + "chart_info": { + "total_sales": "銷售", + "total_receipts": "收據", + "total_expense": "支出", + "net_income": "淨收入", + "year": "選擇年份" + }, + "monthly_chart": { + "title": "銷售及支出" + }, + "recent_invoices_card": { + "title": "逾期發票", + "due_on": "到期時間", + "customer": "客户", + "amount_due": "應付金額", + "actions": "操作", + "view_all": "檢視全部" + }, + "recent_estimate_card": { + "title": "最近報價", + "date": "日期", + "customer": "客户", + "amount_due": "應付金額", + "actions": "操作", + "view_all": "檢視全部" + } + }, + "tax_types": { + "name": "名稱", + "description": "詳情", + "percent": "百分比", + "compound_tax": "複合稅" + }, + "global_search": { + "search": "搜尋...", + "customers": "客户", + "users": "使用者", + "no_results_found": "找不到相符的結果" + }, + "company_switcher": { + "label": "切換至其他公司", + "no_results_found": "未找到結果", + "add_new_company": "新增公司", + "new_company": "新公司", + "created_message": "新增公司成功。" + }, + "dateRange": { + "today": "今天", + "this_week": "這週", + "this_month": "這個月", + "this_quarter": "本季度", + "this_year": "今年", + "previous_week": "上一週", + "previous_month": "上個月", + "previous_quarter": "上一季", + "previous_year": "去年", + "custom": "自訂" + }, + "customers": { + "title": "客户", + "prefix": "前置字串", + "add_customer": "新增客户", + "contacts_list": "客户列表", + "name": "名稱", + "mail": "電郵", + "statement": "對帳單", + "display_name": "顯示名稱", + "primary_contact_name": "主要聯絡人", + "contact_name": "聯絡人名稱", + "amount_due": "應付金額", + "email": "電子郵件", + "address": "地址", + "phone": "電話", + "website": "網址", + "overview": "概述", + "invoice_prefix": "發票號碼前綴", + "estimate_prefix": "估價前輟", + "payment_prefix": "付款前輟", + "enable_portal": "啟用傳送門", + "country": "國家", + "state": "州", + "city": "城市", + "zip_code": "郵遞區號", + "added_on": "增加於", + "action": "操作", + "password": "密碼", + "confirm_password": "確認密碼", + "street_number": "街道編號", + "primary_currency": "主要貨幣", + "description": "詳情", + "add_new_customer": "增加新的客戶", + "save_customer": "保存客戶", + "update_customer": "更新客戶", + "customer": "客戶|客戶", + "new_customer": "新客戶", + "edit_customer": "編輯客戶", + "basic_info": "基本資料", + "portal_access": "Portal Access", + "portal_access_text": "Would you like to allow this customer to login to the Customer Portal?", + "portal_access_url": "Customer Portal Login URL", + "portal_access_url_help": "Please copy & forward the above given URL to your customer for providing access.", + "billing_address": "帳單地址", + "shipping_address": "送貨地址", + "copy_billing_address": "由帳單複製", + "no_customers": "沒有設定客戶!", + "no_customers_found": "找不到客戶!", + "no_contact": "沒有聯絡人", + "no_contact_name": "沒有聯絡人名稱", + "list_of_customers": "這部份包含客戶列表", + "primary_display_name": "主要顯示名稱", + "select_currency": "選擇貨幣", + "select_a_customer": "選擇客戶", + "type_or_click": "輸入或點擊去選擇", + "new_transaction": "新交易", + "no_matching_customers": "沒有符合的客戶!", + "phone_number": "電話號碼", + "create_date": "建立日期", + "confirm_delete": "你將不能夠還原此客戶, 以及此客戶相關的發票, 報價及付款. | 你將不能夠還原此客戶, 以及此客戶相關的發票, 報價及付款.", + "created_message": "成功新增客戶", + "updated_message": "成功更新客戶", + "address_updated_message": "Address Information Updated succesfully", + "deleted_message": "成功刪除客戶 | 成功刪除客戶", + "edit_currency_not_allowed": "交易一旦創建後就不能改變貨幣!" + }, + "items": { + "title": "商品", + "items_list": "商品列表", + "name": "名稱", + "unit": "單位", + "description": "詳情", + "added_on": "增加於", + "price": "價格", + "date_of_creation": "創建日期", + "not_selected": "未選擇任何商品", + "action": "操作", + "add_item": "新增商品", + "save_item": "保存商品", + "update_item": "更新商品", + "item": "商品 | 商品", + "add_new_item": "新增商品", + "new_item": "新商品", + "edit_item": "編輯商品", + "no_items": "沒有設置商品!", + "list_of_items": "這部份包含商品列表.", + "select_a_unit": "選擇單位", + "taxes": "税", + "item_attached_message": "已使用的商品不允許刪除.", + "confirm_delete": "你將不能夠還原此商品 | 你將不能夠還原此商品", + "created_message": "成功刪除商品", + "updated_message": "成功更新商品", + "deleted_message": "成功刪除商品 | 成功刪除商品" + }, + "estimates": { + "title": "報價", + "accept_estimate": "Accept Estimate", + "reject_estimate": "Reject Estimate", + "estimate": "報價 | 報價", + "estimates_list": "報價列表", + "days": "{days} 天", + "months": "{months} 月", + "years": "{years} 年", + "all": "全部", + "paid": "已付款", + "unpaid": "未付款", + "customer": "客戶", + "ref_no": "相關號碼", + "number": "數字", + "amount_due": "應付金額", + "partially_paid": "部分支付", + "total": "總共", + "discount": "折扣", + "sub_total": "小計", + "estimate_number": "報價單", + "ref_number": "相關號碼", + "contact": "聯絡", + "add_item": "加入商品", + "date": "日期", + "due_date": "截止日期", + "expiry_date": "到期日", + "status": "狀態", + "add_tax": "新增稅項", + "amount": "總額", + "action": "操作", + "notes": "備註", + "tax": "稅", + "estimate_template": "模板", + "convert_to_invoice": "轉移成發票", + "mark_as_sent": "標記為已傳送", + "send_estimate": "傳送報價", + "resend_estimate": "重新傳送報價", + "record_payment": "紀錄付款", + "add_estimate": "新增報價", + "save_estimate": "保存報價", + "confirm_conversion": "此報價會用作建立新的發票", + "conversion_message": "成功新增發票", + "confirm_send_estimate": "此報價將會由電郵發送到客戶", + "confirm_mark_as_sent": "此報價將會標示為已傳送", + "confirm_mark_as_accepted": "此報價將會標示為接受", + "confirm_mark_as_rejected": "此報價將會標示為不接受", + "no_matching_estimates": "沒有符合的報價!", + "mark_as_sent_successfully": "報價已標示為成功傳送", + "send_estimate_successfully": "成功傳送報價", + "errors": { + "required": "此欄位為必需" + }, + "accepted": "已接受", + "rejected": "已拒絕", + "expired": "Expired", + "sent": "傳送", + "draft": "草稿", + "viewed": "Viewed", + "declined": "拒絕", + "new_estimate": "新報價", + "add_new_estimate": "新增報價", + "update_Estimate": "更新報價", + "edit_estimate": "編輯報價", + "items": "商品", + "Estimate": "報價 | 報價", + "add_new_tax": "新增稅項", + "no_estimates": "沒有價價!", + "list_of_estimates": "這部份包含報價列表", + "mark_as_rejected": "標記為已拒絕", + "mark_as_accepted": "標記為已接受", + "marked_as_accepted_message": "報價標記為已接受", + "marked_as_rejected_message": "報價標記為已拒絕", + "confirm_delete": "你將不能夠還原此報價 | 你將不能夠還原這些報價", + "created_message": "成功新增報價", + "updated_message": "成功更新報價", + "deleted_message": "成功刪除報價 | 成功刪除報價", + "something_went_wrong": "有地方出錯了", + "item": { + "title": "商品標題", + "description": "詳情", + "quantity": "數量", + "price": "價格", + "discount": "折扣", + "total": "總共", + "total_discount": "總折扣", + "sub_total": "小計", + "tax": "稅", + "amount": "總額", + "select_an_item": "輸入或點擊去選擇商品", + "type_item_description": "商品詳情(可選)" + } + }, + "invoices": { + "title": "發票", + "download": "Download", + "pay_invoice": "Pay Invoice", + "invoices_list": "發票列表", + "invoice_information": "Invoice Information", + "days": "{days} 天", + "months": "{months} 月", + "years": "{years} 年", + "all": "全部", + "paid": "已付款", + "unpaid": "未付款", + "viewed": "已查看", + "overdue": "逾期", + "completed": "已完成", + "customer": "客戶", + "paid_status": "付款狀態", + "ref_no": "相關號碼", + "number": "數字", + "amount_due": "應付金額", + "partially_paid": "部分支付", + "total": "總共", + "discount": "折扣", + "sub_total": "小計", + "invoice": "發票 | 發票", + "invoice_number": "發票號碼", + "ref_number": "相關號碼", + "contact": "聯絡", + "add_item": "加入商品", + "date": "日期", + "due_date": "截止日期", + "status": "狀態", + "add_tax": "加入稅項", + "amount": "總額", + "action": "操作", + "notes": "備註", + "view": "瀏覽", + "send_invoice": "傳送發票", + "resend_invoice": "重新傳送發票", + "invoice_template": "發票範本", + "conversion_message": "成功複製發票", + "template": "範本", + "mark_as_sent": "標記為已傳送", + "confirm_send_invoice": "此發票將會由電郵發送到客戶", + "invoice_mark_as_sent": "此發票將會標示為已傳送", + "confirm_mark_as_accepted": "此發票將會標示為已接受", + "confirm_mark_as_rejected": "此發票將會標示為已拒絕", + "confirm_send": "此發票將會由電郵發送到客戶", + "invoice_date": "發票日期", + "record_payment": "紀錄付款", + "add_new_invoice": "新增發票", + "update_expense": "更新支出", + "edit_invoice": "編輯發票", + "new_invoice": "新發票", + "save_invoice": "保存發票", + "update_invoice": "更新發票", + "add_new_tax": "新增稅項", + "no_invoices": "沒有發票!", + "mark_as_rejected": "標記為已拒絕", + "mark_as_accepted": "標記為已接受", + "list_of_invoices": "這部份包含發票列表.", + "select_invoice": "選擇發票", + "no_matching_invoices": "沒有符合的發票!", + "mark_as_sent_successfully": "發票已標示為成功傳送", + "invoice_sent_successfully": "成功傳送發票", + "cloned_successfully": "成功複製發票", + "clone_invoice": "複製發票", + "confirm_clone": "此發票將會複製到新的發票", + "item": { + "title": "商品標題", + "description": "詳情", + "quantity": "數量", + "price": "價格", + "discount": "折扣", + "total": "總共", + "total_discount": "總折扣", + "sub_total": "小計", + "tax": "稅", + "amount": "總額", + "select_an_item": "輸入或點擊去選擇商品", + "type_item_description": "輸入商品描述 (可選)" + }, + "payment_attached_message": "有發票已經付支. 請先將關連的支付刪除, 然後再執行一次.", + "confirm_delete": "你將不能夠還原此發票 | 你將不能夠還原這些發票", + "created_message": "成功新增發票", + "updated_message": "成功更新發票", + "deleted_message": "成功刪除發票 | 成功刪除發票", + "marked_as_sent_message": "發票已標示為成功傳送", + "something_went_wrong": "出現錯誤", + "invalid_due_amount_message": "發票總額不能少於支付總額. 請更新發票或刪除相關支付再繼續." + }, + "recurring_invoices": { + "title": "定期發票", + "invoices_list": "定期發票表", + "days": "{days} 天", + "months": "{months} 月", + "years": "{years} 年", + "all": "全選", + "paid": "已付款", + "unpaid": "未付款", + "viewed": "已查看", + "overdue": "逾期", + "active": "生效", + "completed": "已完成", + "customer": "客戶", + "paid_status": "付款狀態", + "ref_no": "REF NO.", + "number": "NUMBER", + "amount_due": "AMOUNT DUE", + "partially_paid": "Partially Paid", + "total": "Total", + "discount": "Discount", + "sub_total": "Sub Total", + "invoice": "Recurring Invoice | Recurring Invoices", + "invoice_number": "Recurring Invoice Number", + "next_invoice_date": "Next Invoice Date", + "ref_number": "Ref Number", + "contact": "Contact", + "add_item": "Add an Item", + "date": "Date", + "limit_by": "Limit by", + "limit_date": "Limit Date", + "limit_count": "Limit Count", + "count": "Count", + "status": "Status", + "select_a_status": "Select a status", + "working": "Working", + "on_hold": "On Hold", + "complete": "Completed", + "add_tax": "Add Tax", + "amount": "Amount", + "action": "Action", + "notes": "Notes", + "view": "View", + "basic_info": "Basic Info", + "send_invoice": "Send Recurring Invoice", + "auto_send": "Auto Send", + "resend_invoice": "Resend Recurring Invoice", + "invoice_template": "Recurring Invoice Template", + "conversion_message": "Recurring Invoice cloned successful", + "template": "Template", + "mark_as_sent": "Mark as sent", + "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", + "invoice_mark_as_sent": "This recurring invoice will be marked as sent", + "confirm_send": "This recurring invoice will be sent via email to the customer", + "starts_at": "Start Date", + "due_date": "Invoice Due Date", + "record_payment": "Record Payment", + "add_new_invoice": "Add New Recurring Invoice", + "update_expense": "Update Expense", + "edit_invoice": "Edit Recurring Invoice", + "new_invoice": "New Recurring Invoice", + "send_automatically": "Send Automatically", + "send_automatically_desc": "Enable this, if you would like to send the invoice automatically to the customer when its created.", + "save_invoice": "Save Recurring Invoice", + "update_invoice": "Update Recurring Invoice", + "add_new_tax": "Add New Tax", + "no_invoices": "No Recurring Invoices yet!", + "mark_as_rejected": "Mark as rejected", + "mark_as_accepted": "Mark as accepted", + "list_of_invoices": "This section will contain the list of recurring invoices.", + "select_invoice": "Select Invoice", + "no_matching_invoices": "There are no matching recurring invoices!", + "mark_as_sent_successfully": "Recurring Invoice marked as sent successfully", + "invoice_sent_successfully": "Recurring Invoice sent successfully", + "cloned_successfully": "Recurring Invoice cloned successfully", + "clone_invoice": "Clone Recurring Invoice", + "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "item": { + "title": "Item Title", + "description": "Description", + "quantity": "Quantity", + "price": "Price", + "discount": "Discount", + "total": "Total", + "total_discount": "Total Discount", + "sub_total": "Sub Total", + "tax": "Tax", + "amount": "Amount", + "select_an_item": "Type or click to select an item", + "type_item_description": "Type Item Description (optional)" + }, + "frequency": { + "title": "Frequency", + "select_frequency": "Select Frequency", + "minute": "Minute", + "hour": "Hour", + "day_month": "Day of month", + "month": "Month", + "day_week": "Day of week" + }, + "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", + "created_message": "Recurring Invoice created successfully", + "updated_message": "Recurring Invoice updated successfully", + "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", + "marked_as_sent_message": "Recurring Invoice marked as sent successfully", + "user_email_does_not_exist": "User email does not exist", + "something_went_wrong": "something went wrong", + "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + }, + "payments": { + "title": "付款", + "payments_list": "付款清單", + "record_payment": "紀錄付款", + "customer": "客户", + "date": "日期", + "amount": "總額", + "action": "操作", + "payment_number": "付款號碼", + "payment_mode": "支付模式", + "invoice": "發票", + "note": "備註", + "add_payment": "加入付款", + "new_payment": "新付款", + "edit_payment": "編輯付款", + "view_payment": "檢視付款", + "add_new_payment": "新增付款", + "send_payment_receipt": "傳送付款收據", + "send_payment": "發送付款", + "save_payment": "保存付款", + "update_payment": "更新付款", + "payment": "付款 | 付款", + "no_payments": "沒有付款", + "not_selected": "未選取", + "no_invoice": "沒有發票", + "no_matching_payments": "沒有符合的付款!", + "list_of_payments": "這部份包含付款列表.", + "select_payment_mode": "選擇付款模式", + "confirm_mark_as_sent": "此報價將會標示為已傳送", + "confirm_send_payment": "此付款將會由電郵發送到客戶", + "send_payment_successfully": "成功傳送付款", + "something_went_wrong": "出現錯誤", + "confirm_delete": "你將不能夠還原此付款 | 你將不能夠還原這些付款", + "created_message": "成功新增付款", + "updated_message": "成功更新付款", + "deleted_message": "成功刪除付款 | 成功刪除付款", + "invalid_amount_message": "付款金額有誤" + }, + "expenses": { + "title": "支出", + "expenses_list": "支出列表", + "select_a_customer": "選擇客戶", + "expense_title": "標題", + "customer": "客戶", + "currency": "Currency", + "contact": "聯絡", + "category": "分類", + "from_date": "啟始日", + "to_date": "終止日", + "expense_date": "日期", + "description": "詳情", + "receipt": "收據", + "amount": "總額", + "action": "操作", + "not_selected": "未選取", + "note": "備註", + "category_id": "分類 Id", + "date": "日期", + "add_expense": "加入支出", + "add_new_expense": "新增支出", + "save_expense": "保存支出", + "update_expense": "更新支出", + "download_receipt": "下載收據", + "edit_expense": "編輯支出", + "new_expense": "新支出", + "expense": "支出 | 支出", + "no_expenses": "沒有支出!", + "list_of_expenses": "這部份包含支出列表", + "confirm_delete": "你將不能夠還原此支出 | 你將不能夠還原這些支出", + "created_message": "成功新增支出", + "updated_message": "成功更新支出", + "deleted_message": "成功刪除支出 | 成功刪除支出", + "categories": { + "categories_list": "分類列表", + "title": "標題", + "name": "名稱", + "description": "詳情", + "amount": "總額", + "actions": "操作", + "add_category": "加入分類", + "new_category": "新分類", + "category": "分類 | 分類", + "select_a_category": "選擇一個分類" + } + }, + "login": { + "email": "電郵", + "password": "密碼", + "forgot_password": "忘記密碼?", + "or_signIn_with": "或登錄", + "login": "登入", + "register": "註冊", + "reset_password": "重設密碼", + "password_reset_successfully": "密碼已成功重設。", + "enter_email": "輸入電郵", + "enter_password": "輸入密碼", + "retype_password": "重新輸入密碼" + }, + "modules": { + "buy_now": "Buy Now", + "install": "Install", + "price": "Price", + "download_zip_file": "Download ZIP file", + "unzipping_package": "Unzipping Package", + "copying_files": "Copying Files", + "deleting_files": "Deleting Unused files", + "completing_installation": "Completing Installation", + "update_failed": "Update Failed", + "install_success": "Module has been installed successfully!", + "customer_reviews": "Reviews", + "license": "License", + "faq": "FAQ", + "monthly": "Monthly", + "yearly": "Yearly", + "updated": "Updated", + "version": "Version", + "disable": "Disable", + "module_disabled": "Module Disabled", + "enable": "Enable", + "module_enabled": "Module Enabled", + "update_to": "Update To", + "module_updated": "Module Updated Successfully!", + "title": "Modules", + "module": "Module | Modules", + "api_token": "API token", + "invalid_api_token": "Invalid API Token.", + "other_modules": "Other Modules", + "view_all": "View All", + "no_reviews_found": "There are no reviews for this module yet!", + "module_not_purchased": "Module Not Purchased", + "module_not_found": "Module Not Found", + "version_not_supported": "This module version doesn't support the current version of Crater", + "last_updated": "Last Updated On", + "connect_installation": "Connect your installation", + "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", + "view_module": "View Module", + "update_available": "Update Available", + "purchased": "Purchased", + "installed": "Installed", + "no_modules_installed": "No Modules Installed Yet!", + "disable_warning": "All the settings for this particular will be reverted.", + "what_you_get": "What you get" + }, + "users": { + "title": "用戶", + "users_list": "用戶列表", + "name": "名稱", + "description": "詳情", + "added_on": "增加於", + "date_of_creation": "創建日期", + "action": "操作", + "add_user": "加入用戶", + "save_user": "保存用戶", + "update_user": "更新用戶", + "user": "用戶 | 用戶", + "add_new_user": "新增用戶", + "new_user": "新用戶", + "edit_user": "編輯用戶", + "no_users": "沒有用戶", + "list_of_users": "這部份包含用戶列表.", + "email": "電郵", + "phone": "電話", + "password": "密碼", + "user_attached_message": "已使用的商品不允許刪除.", + "confirm_delete": "你將不能夠還原此用戶 | 你將不能夠還原這些用戶", + "created_message": "成功刪除用戶", + "updated_message": "成功更新用戶", + "deleted_message": "成功刪除用戶 | 成功刪除用戶", + "select_company_role": "Select Role for {company}", + "companies": "Companies" + }, + "reports": { + "title": "報告", + "from_date": "啟始日", + "to_date": "終止日", + "status": "狀態", + "paid": "已付款", + "unpaid": "未付款", + "download_pdf": "下載 PDF", + "view_pdf": "查閱PDF", + "update_report": "更新報告", + "report": "報告 | 報告", + "profit_loss": { + "profit_loss": "營利及虧損", + "to_date": "終止日", + "from_date": "啟始日", + "date_range": "請選擇日期範圍" + }, + "sales": { + "sales": "銷售", + "date_range": "請選擇日期範圍", + "to_date": "終止日", + "from_date": "啟始日", + "report_type": "報告類型" + }, + "taxes": { + "taxes": "税項", + "to_date": "終止日", + "from_date": "啟始日", + "date_range": "請選擇日期範圍" + }, + "errors": { + "required": "此欄位為必需" + }, + "invoices": { + "invoice": "發票", + "invoice_date": "發票日期", + "due_date": "截止日期", + "amount": "總額", + "contact_name": "聯絡人名稱", + "status": "狀態" + }, + "estimates": { + "estimate": "報價", + "estimate_date": "報價日期", + "due_date": "截止日期", + "estimate_number": "報價單", + "ref_number": "相關號碼", + "amount": "總額", + "contact_name": "聯絡人名稱", + "status": "狀態" + }, + "expenses": { + "expenses": "支出", + "category": "分類", + "date": "日期", + "amount": "總額", + "to_date": "終止日", + "from_date": "啟始日", + "date_range": "請選擇日期範圍" + } + }, + "settings": { + "menu_title": { + "account_settings": "帳戶設定", + "company_information": "公司資料", + "customization": "個人化", + "preferences": "偏好設定", + "notifications": "通知", + "tax_types": "稅收類型", + "expense_category": "支出類別", + "update_app": "更新 App", + "backup": "備份", + "file_disk": "檔案磁碟", + "custom_fields": "自定欄位", + "payment_modes": "付款方式", + "notes": "備註", + "exchange_rate": "Exchange Rate", + "address_information": "Address Information" + }, + "address_information": { + "section_description": " You can update Your Address information using form below." + }, + "title": "設定", + "setting": "設定 | 設定", + "general": "一般", + "language": "語言", + "primary_currency": "主要貨幣", + "timezone": "時區", + "date_format": "日期格式", + "currencies": { + "title": "貨幣", + "currency": "貨幣 | 貨幣", + "currencies_list": "貨幣列表", + "select_currency": "選擇貨幣", + "name": "名稱", + "code": "碼", + "symbol": "符號", + "precision": "精確度", + "thousand_separator": "千位分隔符", + "decimal_separator": "小數分隔符", + "position": "位置", + "position_of_symbol": "符號位置", + "right": "右", + "left": "左", + "action": "操作", + "add_currency": "加入貨幣" + }, + "mail": { + "host": "電郵主機", + "port": "電郵端口", + "driver": "電郵驅動", + "secret": "金鑰", + "mailgun_secret": "Mailgun 金鑰", + "mailgun_domain": "網域", + "mailgun_endpoint": "Mailgun \bendpoint", + "ses_secret": "SES 金鑰", + "ses_key": "SES 匙", + "password": "郵件密碼", + "username": "郵件登入名稱", + "mail_config": "郵件設定", + "from_name": "郵件傳送名稱", + "from_mail": "郵件傳送地址", + "encryption": "郵件加密", + "mail_config_desc": "下列可以設定外送郵件設置. 你亦可使用第三方的郵件服務如Sendgrid, SES 等." + }, + "pdf": { + "title": "PDF設定", + "footer_text": "頁尾文字", + "pdf_layout": "PDF \b佈局" + }, + "company_info": { + "company_info": "公司資訊", + "company_name": "公司名稱", + "company_logo": "公司Logo", + "section_description": "公司的資料會顯示在發票, 報價及其他文件上.", + "phone": "電話", + "country": "國家", + "state": "縣/市", + "city": "城市", + "address": "地址", + "zip": "郵遞區號", + "save": "儲存", + "delete": "Delete", + "updated_message": "成功更新公司資料", + "delete_company": "Delete Company", + "delete_company_description": "Once you delete your company, you will lose all the data and files associated with it permanently.", + "are_you_absolutely_sure": "Are you absolutely sure?", + "delete_company_modal_desc": "This action cannot be undone. This will permanently delete {company} and all of its associated data.", + "delete_company_modal_label": "Please type {company} to confirm" + }, + "custom_fields": { + "title": "自定欄位", + "section_description": "自訂你的發票, 報價及付款收據欄位. 請確定以下在自訂欄位頁裡新增的欄位是地址格式.", + "add_custom_field": "加入自訂欄位", + "edit_custom_field": "編輯自訂欄位", + "field_name": "欄位名稱", + "label": "標籤", + "type": "類型", + "name": "名稱", + "slug": "Slug", + "required": "必填", + "placeholder": "Placeholder", + "help_text": "說明文字", + "default_value": "默認值", + "prefix": "前置", + "starting_number": "起始號碼", + "model": "模式", + "help_text_description": "請為此欄位輸入幫助說明.", + "suffix": "後綴名", + "yes": "是", + "no": "否", + "order": "訂單", + "custom_field_confirm_delete": "你將無法恢復此欄位", + "already_in_use": "此自訂欄位已在使用", + "deleted_message": "成功刪除自訂欄位", + "options": "選項", + "add_option": "加入選項", + "add_another_option": "加入另一個選項", + "sort_in_alphabetical_order": "以字母作排序", + "add_options_in_bulk": "批量加入選項", + "use_predefined_options": "使用預定義選項", + "select_custom_date": "選擇自訂日期", + "select_relative_date": "選擇相關日期", + "ticked_by_default": "預設已選擇", + "updated_message": "成功更新自訂欄位", + "added_message": "成功新增自訂欄位", + "press_enter_to_add": "Press enter to add new option", + "model_in_use": "Cannot update model for fields which are already in use.", + "type_in_use": "Cannot update type for fields which are already in use." + }, + "customization": { + "customization": "個人化", + "updated_message": "成功更新公司資料", + "save": "儲存", + "insert_fields": "Insert Fields", + "learn_custom_format": "Learn how to use custom format", + "add_new_component": "Add New Component", + "component": "Component", + "Parameter": "Parameter", + "series": "Series", + "series_description": "To set a static prefix/postfix like 'INV' across your company. It supports character length of up to 6 chars.", + "series_param_label": "Series Value", + "delimiter": "Delimiter", + "delimiter_description": "Single character for specifying the boundary between 2 separate components. By default its set to -", + "delimiter_param_label": "Delimiter Value", + "date_format": "Date Format", + "date_format_description": "A local date and time field which accepts a format parameter. The default format: 'Y' renders the current year.", + "date_format_param_label": "Format", + "sequence": "Sequence", + "sequence_description": "Consecutive sequence of numbers across your company. You can specify the length on the given parameter.", + "sequence_param_label": "Sequence Length", + "customer_series": "Customer Series", + "customer_series_description": "To set a different prefix/postfix for each customer.", + "customer_sequence": "Customer Sequence", + "customer_sequence_description": "Consecutive sequence of numbers for each of your customer.", + "customer_sequence_param_label": "Sequence Length", + "random_sequence": "Random Sequence", + "random_sequence_description": "Random alphanumeric string. You can specify the length on the given parameter.", + "random_sequence_param_label": "Sequence Length", + "invoices": { + "title": "發票", + "invoice_number_format": "Invoice Number Format", + "invoice_number_format_description": "Customize how your invoice number gets generated automatically when you create a new invoice.", + "preview_invoice_number": "Preview Invoice Number", + "due_date": "Due Date", + "due_date_description": "Specify how due date is automatically set when you create an invoice.", + "due_date_days": "Invoice Due after days", + "set_due_date_automatically": "Set Due Date Automatically", + "set_due_date_automatically_description": "Enable this if you wish to set due date automatically when you create a new invoice.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on invoice creation.", + "default_invoice_email_body": "預設發票電郵內容", + "company_address_format": "公司地址格式", + "shipping_address_format": "送貨地址格式", + "billing_address_format": "帳單地址格式", + "invoice_email_attachment": "以附件形式傳送發票", + "invoice_email_attachment_setting_description": "啟用此項, 如果你要以附件形式傳送發票. 如選擇此項, 「檢視發票」按扭將不會在電郵中顯示.", + "invoice_settings_updated": "Invoice Settings updated successfully", + "retrospective_edits": "Retrospective Edits", + "allow": "Allow", + "disable_on_invoice_partial_paid": "Disable after partial payment is recorded", + "disable_on_invoice_paid": "Disable after full payment is recorded", + "disable_on_invoice_sent": "Disable after invoice is sent", + "retrospective_edits_description": " Based on your country's laws or your preference, you can restrict users from editing finalised invoices." + }, + "estimates": { + "title": "報價", + "estimate_number_format": "Estimate Number Format", + "estimate_number_format_description": "Customize how your estimate number gets generated automatically when you create a new estimate.", + "preview_estimate_number": "Preview Estimate Number", + "expiry_date": "Expiry Date", + "expiry_date_description": "Specify how expiry date is automatically set when you create an estimate.", + "expiry_date_days": "Estimate Expires after days", + "set_expiry_date_automatically": "Set Expiry Date Automatically", + "set_expiry_date_automatically_description": "Enable this if you wish to set expiry date automatically when you create a new estimate.", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on estimate creation.", + "default_estimate_email_body": "預設報價電郵內容", + "company_address_format": "公司地址格式", + "shipping_address_format": "送貨地址格式", + "billing_address_format": "帳單地址格式", + "estimate_email_attachment": "以附件形式傳送報價", + "estimate_email_attachment_setting_description": "啟用此項, 如果你要以附件形式傳送報價. 如選擇此項, 「檢視報價」按扭將不會在電郵中顯示.", + "estimate_settings_updated": "Estimate Settings updated successfully", + "convert_estimate_options": "Estimate Convert Action", + "convert_estimate_description": "Specify what happens to the estimate after it gets converted to an invoice.", + "no_action": "No action", + "delete_estimate": "Delete estimate", + "mark_estimate_as_accepted": "Mark estimate as accepted" + }, + "payments": { + "title": "付款", + "payment_number_format": "Payment Number Format", + "payment_number_format_description": "Customize how your payment number gets generated automatically when you create a new payment.", + "preview_payment_number": "Preview Payment Number", + "default_formats": "Default Formats", + "default_formats_description": "Below given formats are used to fill up the fields automatically on payment creation.", + "default_payment_email_body": "預設付款電郵內容", + "company_address_format": "公司地址格式", + "from_customer_address_format": "客戶地址格式", + "payment_email_attachment": "以附件形式傳送付款", + "payment_email_attachment_setting_description": "啟用此項, 如果你要以附件形式傳送付款收據. 如選擇此項, 「檢視付款」按扭將不會在電郵中顯示.", + "payment_settings_updated": "Payment Settings updated successfully" + }, + "items": { + "title": "商品", + "units": "單位", + "add_item_unit": "加入商品單位", + "edit_item_unit": "編輯商品單位", + "unit_name": "單位名稱", + "item_unit_added": "已新增商品單位", + "item_unit_updated": "已更新商品單位", + "item_unit_confirm_delete": "你將無法恢復此商品單位", + "already_in_use": "商品單位已在使用", + "deleted_message": "成功刪除商品單位" + }, + "notes": { + "title": "備註", + "description": "保存備註可在發票, 報價和付款上重覆使用.", + "notes": "備註", + "type": "類型", + "add_note": "加入備註", + "add_new_note": "新增備註", + "name": "名稱", + "edit_note": "編輯備註", + "note_added": "成功加入備註", + "note_updated": "成功更新備註", + "note_confirm_delete": "你將無法恢復此備註", + "already_in_use": "此備註已在使用", + "deleted_message": "成功刪除備註" + } + }, + "account_settings": { + "profile_picture": "用戶個人相片", + "name": "名稱", + "email": "電郵", + "password": "密碼", + "confirm_password": "確認密碼", + "account_settings": "帳戶設定", + "save": "儲存", + "section_description": "你可在以下更新你的名稱, 電郵及密碼.", + "updated_message": "成功更新帳戶設定" + }, + "user_profile": { + "name": "名稱", + "email": "電郵", + "password": "密碼", + "confirm_password": "確認密碼" + }, + "notification": { + "title": "通知", + "email": "發送通知給", + "description": "請輸入接收通知的電郵", + "invoice_viewed": "已檢視的發票", + "invoice_viewed_desc": "客戶於何時閱讀發票", + "estimate_viewed": "報價已讀", + "estimate_viewed_desc": "客戶於何時閱讀報價", + "save": "儲存", + "email_save_message": "成功保存郵件", + "please_enter_email": "請輸入電郵" + }, + "roles": { + "title": "Roles", + "description": "Manage the roles & permissions of this company", + "save": "Save", + "add_new_role": "Add New Role", + "role_name": "Role Name", + "added_on": "Added on", + "add_role": "Add Role", + "edit_role": "Edit Role", + "name": "Name", + "permission": "Permission | Permissions", + "select_all": "Select All", + "none": "None", + "confirm_delete": "You will not be able to recover this Role", + "created_message": "Role created successfully", + "updated_message": "Role updated successfully", + "deleted_message": "Role deleted successfully", + "already_in_use": "Role is already in use" + }, + "exchange_rate": { + "exchange_rate": "Exchange Rate", + "title": "Fix Currency Exchange issues", + "description": "Please enter exchange rate of all the currencies mentioned below to help Crater properly calculate the amounts in {currency}.", + "drivers": "Drivers", + "new_driver": "Add New Provider", + "edit_driver": "Edit Provider", + "select_driver": "Select Driver", + "update": "select exchange rate ", + "providers_description": "Configure your exchange rate providers here to automatically fetch the latest exchange rate on transactions.", + "key": "API Key", + "name": "Name", + "driver": "Driver", + "is_default": "IS DEFAULT", + "currency": "Currencies", + "exchange_rate_confirm_delete": "You will not be able to recover this driver", + "created_message": "Provider Created successfully", + "updated_message": "Provider Updated Successfully", + "deleted_message": "Provider Deleted Successfully", + "error": " You cannot Delete Active Driver", + "default_currency_error": "This currency is already used in one of the Active Provider", + "exchange_help_text": "Enter exchange rate to convert from {currency} to {baseCurrency}", + "currency_freak": "Currency Freak", + "currency_layer": "Currency Layer", + "open_exchange_rate": "Open Exchange Rate", + "currency_converter": "Currency Converter", + "server": "Server", + "url": "URL", + "active": "Active", + "currency_help_text": "This provider will only be used on above selected currencies", + "currency_in_used": "The following currencies are already active on another provider. Please remove these currencies from selection to activate this provider again." + }, + "tax_types": { + "title": "稅收類型", + "add_tax": "加入稅項", + "edit_tax": "編輯稅項", + "description": "你可以新增或移除稅項. Crater支持獨立稅項.", + "add_new_tax": "新增稅項", + "tax_settings": "稅項設定", + "tax_per_item": "商品稅項", + "tax_name": "稅項名稱", + "compound_tax": "複合稅", + "percent": "百分比", + "action": "操作", + "tax_setting_description": "啟用此項, 如果你要將稅項以每個獨立商品計算. 預設稅項以整單發票計算.", + "created_message": "成功新增稅項類型", + "updated_message": "成功更新稅項類型", + "deleted_message": "成功刪除稅項類型", + "confirm_delete": "你將無法恢復此稅項類型", + "already_in_use": "此稅項已在使用" + }, + "payment_modes": { + "title": "Payment Modes", + "description": "Modes of transaction for payments", + "add_payment_mode": "Add Payment Mode", + "edit_payment_mode": "Edit Payment Mode", + "mode_name": "Mode Name", + "payment_mode_added": "Payment Mode Added", + "payment_mode_updated": "Payment Mode Updated", + "payment_mode_confirm_delete": "You will not be able to recover this Payment Mode", + "already_in_use": "Payment Mode is already in use", + "deleted_message": "Payment Mode deleted successfully" + }, + "expense_category": { + "title": "支出類別", + "action": "操作", + "description": "新增支出需要類別. 請先新增或移除類別.", + "add_new_category": "新增類別", + "add_category": "加入分類", + "edit_category": "編輯分類", + "category_name": "分類名稱", + "category_description": "詳情", + "created_message": "成功新增支出分類", + "deleted_message": "成功刪除支出分類", + "updated_message": "成功更新支出分類", + "confirm_delete": "你將無法恢復此支出分類", + "already_in_use": "此分類已在使用" + }, + "preferences": { + "currency": "貨幣", + "default_language": "預設語言", + "time_zone": "時區", + "fiscal_year": "財政年度", + "date_format": "日期格式", + "discount_setting": "折扣設定", + "discount_per_item": "商品折扣", + "discount_setting_description": "啟用此項, 如果你要將折扣以每個獨立商品計算. 預設折扣以整單發票計算.", + "expire_public_links": "Automatically Expire Public Links", + "expire_setting_description": "Specify whether you would like to expire all the links sent by application to view invoices, estimates & payments, etc after a specified duration.", + "save": "儲存", + "preference": "偏好設定 | 偏好設定", + "general_settings": "系統預設偏好設定", + "updated_message": "成功更新偏好設定", + "select_language": "選取語言", + "select_time_zone": "選取時區", + "select_date_format": "選擇日期格式", + "select_financial_year": "選擇財政年度", + "recurring_invoice_status": "Recurring Invoice Status", + "create_status": "Create Status", + "active": "Active", + "on_hold": "On Hold", + "update_status": "Update Status", + "completed": "Completed", + "company_currency_unchangeable": "Company currency cannot be changed" + }, + "update_app": { + "title": "更新 App", + "description": "你可以點擊下方按鈕更新Crater", + "check_update": "檢查更新", + "avail_update": "有新更新可用", + "next_version": "下一版本", + "requirements": "要求", + "update": "立即更新", + "update_progress": "正在更新。。。", + "progress_text": "這會花費數分鐘. 請不要刷新螢幕或關閉視窗, 請耐心等待直至更新完成.", + "update_success": "App 已完成更新! 請等待直至你的視窗自動刷新.", + "latest_message": "沒有可用的更新。您正執行最新版的程式。", + "current_version": "當前版本", + "download_zip_file": "下載ZIP檔案", + "unzipping_package": "解壓檔案", + "copying_files": "複製文件", + "deleting_files": "刪除沒用文件中", + "running_migrations": "正在執行整合", + "finishing_update": "正完成更新", + "update_failed": "更新失敗", + "update_failed_text": "抱歉! 你的更新在這步驟中失敗: {step} step", + "update_warning": "All of the application files and default template files will be overwritten when you update the application using this utility. Please take a backup of your templates & database before updating." + }, + "backup": { + "title": "備份 | 備份", + "description": "此備份是ZIP壓縮檔, 包含所有檔案及數據庫資料", + "new_backup": "新增備份", + "create_backup": "建立備份", + "select_backup_type": "選擇備份類型", + "backup_confirm_delete": "你將無法恢復此備份", + "path": "路徑", + "new_disk": "新碰碟", + "created_at": "建立於", + "size": "大小", + "dropbox": "Dropbox", + "local": "本地", + "healthy": "健康", + "amount_of_backups": "備份大小", + "newest_backups": "最新的備份", + "used_storage": "使用的空間", + "select_disk": "選擇磁碟", + "action": "操作", + "deleted_message": "成功刪除備份", + "created_message": "成功新增備份", + "invalid_disk_credentials": "選擇的磁碟權限有誤" + }, + "disk": { + "title": "檔案磁碟 | 檔案磁碟", + "description": "預設Crater會使用你本機作為資料備份. 你可設定多於一個磁碟如DigialOcean, S3 及 Dropbox.", + "created_at": "建立於", + "dropbox": "Dropbox", + "name": "名稱", + "driver": "驅動", + "disk_type": "類型", + "disk_name": "磁碟名稱", + "new_disk": "加入新的磁碟", + "filesystem_driver": "檔案系統驅動", + "local_driver": "本地驅動", + "local_root": "本地Root", + "public_driver": "公共驅動", + "public_root": "公共Root", + "public_url": "公共URL", + "public_visibility": "公共可見", + "media_driver": "媒體驅動", + "media_root": "媒體Root", + "aws_driver": "AWS驅動", + "aws_key": "AWS匙", + "aws_secret": "AWS金鑰", + "aws_region": "AWS區域", + "aws_bucket": "AWS Bucket", + "aws_root": "AWS Root", + "do_spaces_type": "Do Space 類型", + "do_spaces_key": "Do Space 匙", + "do_spaces_secret": "Do Spaces 金鑰", + "do_spaces_region": "Do Spaces 區域", + "do_spaces_bucket": "Do Spaces Bucket", + "do_spaces_endpoint": "Do Spaces 端點", + "do_spaces_root": "Do Spaces Root", + "dropbox_type": "Dropbox 類型", + "dropbox_token": "Dropbox 令牌", + "dropbox_key": "Dropbox 匙", + "dropbox_secret": "Dropbox 金鑰", + "dropbox_app": "Dropbox應用", + "dropbox_root": "Dropbox Root", + "default_driver": "預設驅動", + "is_default": "是預設", + "set_default_disk": "設為預設磁碟", + "set_default_disk_confirm": "此磁碟將會設為預設, 所有PDF將會保存到此磁碟", + "success_set_default_disk": "成功預設磁碟", + "save_pdf_to_disk": "保存PDF到磁碟", + "disk_setting_description": "啟動此項, 如果你想自動保存發票, 報價及付款收據的PDF備份到你預設的磁碟. 啟用此選項將會減慢你打開檢視PDF的速度.", + "select_disk": "選擇磁碟", + "disk_settings": "磁碟設定", + "confirm_delete": "你原來的檔案及資料夾將不受影響, 但你磁碟的設定將會刪除", + "action": "操作", + "edit_file_disk": "編輯檔案磁碟", + "success_create": "成功新增磁碟", + "success_update": "成功更新磁碟", + "error": "新增磁碟失敗", + "deleted_message": "成功刪除磁碟", + "disk_variables_save_successfully": "成功設定磁碟", + "disk_variables_save_error": "設定磁碟失敗", + "invalid_disk_credentials": "選擇的磁碟權限有誤" + }, + "taxations": { + "add_billing_address": "Enter Billing Address", + "add_shipping_address": "Enter Shipping Address", + "add_company_address": "Enter Company Address", + "modal_description": "The information below is required in order to fetch sales tax.", + "add_address": "Add Address for fetching sales tax.", + "address_placeholder": "Example: 123, My Street", + "city_placeholder": "Example: Los Angeles", + "state_placeholder": "Example: CA", + "zip_placeholder": "Example: 90024", + "invalid_address": "Please provide valid address details." + } + }, + "wizard": { + "account_info": "帳號資料", + "account_info_desc": "以下詳情將會用作建立主要管理員帳戶. 你可以在登入後隨時修改.", + "name": "名稱", + "email": "電郵", + "password": "密碼", + "confirm_password": "確認密碼", + "save_cont": "儲存並繼續", + "company_info": "公司資料", + "company_info_desc": "此資料會在發票上顯示. 你可以稍後在設定頁修改.", + "company_name": "公司名稱", + "company_logo": "公司Logo", + "logo_preview": "預覽 Logo", + "preferences": "偏好設定", + "preferences_desc": "系統預設偏好設定", + "currency_set_alert": "The company's currency cannot be changed later.", + "country": "國家", + "state": "縣/市", + "city": "城市", + "address": "地址", + "street": "地址1 | 地址2", + "phone": "電話", + "zip_code": "郵遞區號", + "go_back": "返回", + "currency": "貨幣", + "language": "語言", + "time_zone": "時區", + "fiscal_year": "財政年度", + "date_format": "日期格式", + "from_address": "寄件人地址", + "username": "使用者名稱", + "next": "下一個", + "continue": "繼續", + "skip": "略過", + "database": { + "database": "網址及數據庫", + "connection": "資料庫連線", + "host": "數據庫伺服器\b", + "port": "數據庫伺服器端口", + "password": "資料庫密碼", + "app_url": "App 網址", + "app_domain": "App 網域名稱", + "username": "數據庫用戶名", + "db_name": "資料庫名稱", + "db_path": "資料庫位置", + "desc": "在以下伺服器上建立數據庫及設定信用" + }, + "permissions": { + "permissions": "權限", + "permission_confirm_title": "你確定要繼續嗎?", + "permission_confirm_desc": "資料夾權限檢測失敗", + "permission_desc": "請開放以下資料夾的權限讓App繼續. 如果\b檢測失敗, 請更新資料夾權限." + }, + "verify_domain": { + "title": "域名驗證", + "desc": "Crater使用的會話驗證因安全考量需要域名\b核實. 請輸入你的域名以便你存取你應用.", + "app_domain": "App 網域名稱", + "verify_now": "立即檢驗", + "success": "成功驗證域名", + "failed": "Domain verification failed. Please enter valid domain name.", + "verify_and_continue": "驗證及繼續" + }, + "mail": { + "host": "電郵主機", + "port": "電郵端口", + "driver": "電郵驅動", + "secret": "金鑰", + "mailgun_secret": "Mailgun 金鑰", + "mailgun_domain": "網域", + "mailgun_endpoint": "Mailgun \bendpoint", + "ses_secret": "SES 金鑰", + "ses_key": "SES 匙", + "password": "郵件密碼", + "username": "郵件登入名稱", + "mail_config": "郵件設定", + "from_name": "郵件傳送名稱", + "from_mail": "郵件傳送地址", + "encryption": "郵件加密", + "mail_config_desc": "下列可以設定外送郵件設置. 你亦可使用第三方的郵件服務如Sendgrid, SES 等." + }, + "req": { + "system_req": "系統需求", + "php_req_version": "最小的php版本(需要{version})", + "check_req": "檢查需求", + "system_req_desc": "Crater對伺服器有少許需求. 請檢查以下的php版本及\b擴展是否吻合." + }, + "errors": { + "migrate_failed": "遷移失敗", + "database_variables_save_error": "未能寫入設定到 .env 檔案. 請檢查檔案權限", + "mail_variables_save_error": "電郵設定失敗", + "connection_failed": "數據庫連接失敗", + "database_should_be_empty": "數據庫應為空" + }, + "success": { + "mail_variables_save_successfully": "成功設定電郵", + "database_variables_save_successfully": "成功設定數據庫" + } + }, + "validation": { + "invalid_phone": "無效的電話號碼", + "invalid_url": "無較URL(ex: http://www.crater.com)", + "invalid_domain_url": "無較URL(ex: crater.com)", + "required": "此欄位為必需", + "email_incorrect": "電郵錯誤", + "email_already_taken": "此電郵已被使用", + "email_does_not_exist": "沒有使用此電子郵件的用戶", + "item_unit_already_taken": "此商品單位已經被使用.", + "payment_mode_already_taken": "此付款方式名稱已經被使用.", + "send_reset_link": "發送重設連結", + "not_yet": "沒有收到? 再次傳送", + "password_min_length": "密碼必須包含 {count} 字元", + "name_min_length": "名稱必須包含 {count} 字元", + "prefix_min_length": "Prefix must have at least {count} letters.", + "enter_valid_tax_rate": "輸入正確稅率", + "numbers_only": "只可使用數字", + "characters_only": "只可使用字母", + "password_incorrect": "密碼必須相同", + "password_length": "密碼必須至少為 {count} 個字元長度", + "qty_must_greater_than_zero": "數量必須是大於零", + "price_greater_than_zero": "價格必須大於零", + "payment_greater_than_zero": "付款必須大於零", + "payment_greater_than_due_amount": "輸入的付款大於發票的總額", + "quantity_maxlength": "數量不應大於20個位", + "price_maxlength": "單價不應大於20個位", + "price_minvalue": "單價應大於零", + "amount_maxlength": "總額不應大於20個位", + "amount_minvalue": "總額應大於零", + "discount_maxlength": "Discount should not be greater than max discount", + "description_maxlength": "詳情不應大於65000個字元", + "subject_maxlength": "主題不應大於100個字元", + "message_maxlength": "訊息不應大於255個字元", + "maximum_options_error": "超過最多可使用的 {max} 選項. 請先移除一些選項再選.", + "notes_maxlength": "備註不應大於65,000個字元", + "address_maxlength": "地址不應大於255個字元", + "ref_number_maxlength": "相關號碼不應大於255個字元", + "prefix_maxlength": "前輟不應大於5個字元", + "something_went_wrong": "出現錯誤", + "number_length_minvalue": "數值必須大於0", + "at_least_one_ability": "Please select atleast one Permission.", + "valid_driver_key": "Please enter a valid {driver} key.", + "valid_exchange_rate": "Please enter a valid exchange rate.", + "company_name_not_same": "Company name must match with given name." + }, + "errors": { + "starter_plan": "This feature is available on Starter plan and onwards!", + "invalid_provider_key": "Please Enter Valid Provider API Key.", + "estimate_number_used": "The estimate number has already been taken.", + "invoice_number_used": "The invoice number has already been taken.", + "payment_attached": "This invoice already has a payment attached to it. Make sure to delete the attached payments first in order to go ahead with the removal.", + "payment_number_used": "The payment number has already been taken.", + "name_already_taken": "The name has already been taken.", + "receipt_does_not_exist": "Receipt does not exist.", + "customer_cannot_be_changed_after_payment_is_added": "Customer cannot be change after payment is added", + "invalid_credentials": "Invalid Credentials.", + "not_allowed": "Not Allowed", + "login_invalid_credentials": "These credentials do not match our records.", + "enter_valid_cron_format": "Please enter a valid cron format", + "email_could_not_be_sent": "Email could not be sent to this email address.", + "invalid_address": "Please enter a valid address.", + "invalid_key": "Please enter valid key.", + "invalid_state": "Please enter a valid state.", + "invalid_city": "Please enter a valid city.", + "invalid_postal_code": "Please enter a valid zip.", + "invalid_format": "Please enter valid query string format.", + "api_error": "Server not responding.", + "feature_not_enabled": "Feature not enabled.", + "request_limit_met": "Api request limit exceeded.", + "address_incomplete": "Incomplete Address" + }, + "pdf_estimate_label": "報價", + "pdf_estimate_number": "報價單號", + "pdf_estimate_date": "報價日期", + "pdf_estimate_expire_date": "有效日期", + "pdf_invoice_label": "發票", + "pdf_invoice_number": "發票號碼", + "pdf_invoice_date": "發票日期", + "pdf_invoice_due_date": "截止日期", + "pdf_notes": "備註", + "pdf_items_label": "商品", + "pdf_quantity_label": "數量", + "pdf_price_label": "價格", + "pdf_discount_label": "折扣", + "pdf_amount_label": "總額", + "pdf_subtotal": "小計", + "pdf_total": "總共", + "pdf_payment_label": "付款", + "pdf_payment_receipt_label": "付款收據", + "pdf_payment_date": "付款日期", + "pdf_payment_number": "付款號碼", + "pdf_payment_mode": "付款方式", + "pdf_payment_amount_received_label": "收到的金額", + "pdf_expense_report_label": "支出報告", + "pdf_total_expenses_label": "支出總額", + "pdf_profit_loss_label": "營利及虧損報告", + "pdf_sales_customers_label": "銷售客戶報告", + "pdf_sales_items_label": "銷售商品報告", + "pdf_tax_summery_label": "稅項總結報告", + "pdf_income_label": "收入", + "pdf_net_profit_label": "淨收入", + "pdf_customer_sales_report": "銷售報告: 以客戶", + "pdf_total_sales_label": "總銷售", + "pdf_item_sales_label": "銷售報告: 以商品", + "pdf_tax_report_label": "稅項報告", + "pdf_total_tax_label": "稅項總額", + "pdf_tax_types_label": "稅收類型", + "pdf_expenses_label": "支出", + "pdf_bill_to": "帳單地址,", + "pdf_ship_to": "送貨地址,", + "pdf_received_from": "接收自", + "pdf_tax_label": "Tax" +}